Merge branch 'polyfill/vision' of gitlab.alibaba-inc.com:ali-lowcode/ali-lowcode-engine into polyfill/vision

This commit is contained in:
mario.gk 2020-05-05 18:16:18 +08:00
commit b05da1e0ec
6 changed files with 41 additions and 24 deletions

View File

@ -20,6 +20,7 @@ import { IconComponent } from './icons/component';
import { IconRemove } from './icons/remove';
import { IconClone } from './icons/clone';
import { ReactElement } from 'react';
import { IconHidden } from './icons/hidden';
function ensureAList(list?: string | string[]): string[] | null {
if (!list) {
@ -341,6 +342,20 @@ const builtinComponentActions: ComponentAction[] = [
},
important: true,
},
{
name: 'hide',
content: {
icon: IconHidden,
title: intlNode('hide'),
action(node: Node) {
node.getExtraProp('hidden', true)?.setValue(true);
},
},
condition: (node: Node) => {
return node.componentMeta.isModal;
},
important: true,
},
];
export function removeBuiltinComponentAction(name: string) {

View File

@ -1,6 +1,7 @@
{
"copy": "Copy",
"remove": "Remove",
"hide": "Hide",
"Condition Group": "Condition Group",
"No opened document": "No opened document, open some document to editing"
}

View File

@ -1,6 +1,7 @@
{
"copy": "复制",
"remove": "删除",
"hide": "隐藏",
"Condition Group": "条件组",
"No opened document": "没有打开的页面,请选择页面打开编辑"
}

View File

@ -183,8 +183,12 @@ export default function(metadata: TransformedComponentMetadata): TransformedComp
items: [
{
name: '___condition',
title: { type: 'i18n', 'zh-CN': '条件显示', 'en-US': 'Condition' },
setter: 'ExpressionSetter',
title: { type: 'i18n', 'zh-CN': '是否渲染', 'en-US': 'Condition' },
setter: [{
componentName: 'BoolSetter',
}, {
componentName: 'VariableSetter'
}],
},
{
name: '#loop',
@ -193,27 +197,14 @@ export default function(metadata: TransformedComponentMetadata): TransformedComp
{
name: '___loop',
title: { type: 'i18n', 'zh-CN': '循环数据', 'en-US': 'Loop Data' },
setter: {
componentName: 'MixinSetter',
setter: [{
componentName: 'JsonSetter',
props: {
// TODO:
setters: [
{
componentName: 'JSONSetter',
props: {
mode: 'popup',
placeholder: { type: 'i18n', 'zh-CN': '编辑数据', 'en-US': 'Edit Data' },
},
},
{
componentName: 'ExpressionSetter',
props: {
placeholder: { type: 'i18n', 'zh-CN': '绑定数据', 'en-US': 'Bind Data' },
},
},
],
label: { type: 'i18n', 'zh-CN': '编辑数据', 'en-US': 'Edit Data'},
},
},
}, {
componentName: 'VariableSetter'
}],
},
{
name: '___loopArgs.0',
@ -237,8 +228,12 @@ export default function(metadata: TransformedComponentMetadata): TransformedComp
},
{
name: 'key',
title: 'Key',
setter: 'ExpressionSetter',
title: '循环 Key',
setter: [{
componentName: 'StringSetter',
}, {
componentName: 'VariableSetter'
}],
},
],
},

View File

@ -126,7 +126,7 @@ export default class TreeTitle extends Component<{
)}
</div>
{isCNode && isNodeParent && <HideBtn treeNode={treeNode} />}
{isCNode && isNodeParent && <LockBtn treeNode={treeNode} />}
{/*isCNode && isNodeParent && <LockBtn treeNode={treeNode} />*/}
</div>
);
}

View File

@ -228,6 +228,11 @@ export default class BaseEngine extends PureComponent {
let Comp = components[schema.componentName] || Div;
console.info('node schema', schema, engine.props);
if (schema.hidden) {
return null;
}
if (schema.loop !== undefined) {
return this.__createLoopVirtualDom(
{