Merge pull request #566 from alibaba/feat/add-methods

Feat/add methods
This commit is contained in:
林熠 2022-05-31 10:18:44 +08:00 committed by GitHub
commit b8f35c504e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 31 additions and 6 deletions

View File

@ -40,7 +40,9 @@ export class LowCodePluginManager implements ILowCodePluginManager {
isEngineVersionMatched(versionExp: string): boolean {
const engineVersion = engineConfig.get('ENGINE_VERSION');
return semverSatisfies(engineVersion, versionExp);
// ref: https://github.com/npm/node-semver#functions
// 1.0.1-beta should match '^1.0.0'
return semverSatisfies(engineVersion, versionExp, { includePrerelease: true });
}
/**

View File

@ -17,7 +17,7 @@ function getVersion() {
const [_, version, beta] = match;
return beta && beta.endsWith('beta') ? `${version}(beta)` : version;
return beta && beta.endsWith('beta') ? `${version}-beta` : version;
}
const releaseVersion = getVersion();

View File

@ -84,6 +84,10 @@ export default class ComponentMeta {
return this[componentMetaSymbol].prototype;
}
get availableActions() {
return this[componentMetaSymbol].availableActions;
}
/**
* npm
* @param npm

View File

@ -68,6 +68,10 @@ export default class DocumentModel {
return this[documentSymbol].id;
}
set id(id) {
this[documentSymbol].id = id;
}
/**
* project
* @returns
@ -157,8 +161,8 @@ export default class DocumentModel {
copy?: boolean | undefined,
) {
const node = this[documentSymbol].insertNode(
parent[nodeSymbol] as any,
thing?.[nodeSymbol],
parent[nodeSymbol] ? parent[nodeSymbol] : parent,
thing?.[nodeSymbol] ? thing[nodeSymbol] : thing,
at,
copy,
);
@ -204,7 +208,7 @@ export default class DocumentModel {
* document hover
*/
onChangeDetecting(fn: (node: Node) => void) {
this[documentSymbol].designer.detecting.onDetectingChange((node: InnerNode) => {
return this[documentSymbol].designer.detecting.onDetectingChange((node: InnerNode) => {
fn(Node.create(node)!);
});
}
@ -213,7 +217,7 @@ export default class DocumentModel {
* document
*/
onChangeSelection(fn: (ids: string[]) => void) {
this[documentSymbol].selection.onSelectionChange((ids: string[]) => {
return this[documentSymbol].selection.onSelectionChange((ids: string[]) => {
fn(ids);
});
}

View File

@ -43,6 +43,13 @@ export default class Prop {
return Node.create(this[propSymbol].getNode());
}
/**
* return the slot node (only if the current prop represents a slot)
*/
get slotNode(): Node | null {
return Node.create(this[propSymbol].slotNode);
}
/**
* judge if it is a prop or not
*/

View File

@ -3,6 +3,7 @@ import { CompositeValue, FieldConfig } from '@alilc/lowcode-types';
import { settingPropEntrySymbol } from './symbols';
import Node from './node';
import SettingTopEntry from './setting-top-entry';
import ComponentMeta from './component-meta';
export default class SettingPropEntry {
private readonly [settingPropEntrySymbol]: SettingField;
@ -89,6 +90,13 @@ export default class SettingPropEntry {
return this[settingPropEntrySymbol].isSettingField;
}
/**
* componentMeta
*/
get componentMeta(): ComponentMeta | null {
return ComponentMeta.create(this[settingPropEntrySymbol].componentMeta);
}
/**
* key
* @param key