diff --git a/packages/yunti-ui-lowcode-materials/lowcode/Affix/meta.ts b/packages/yunti-ui-lowcode-materials/lowcode/Affix/meta.ts new file mode 100644 index 0000000..4800545 --- /dev/null +++ b/packages/yunti-ui-lowcode-materials/lowcode/Affix/meta.ts @@ -0,0 +1,126 @@ +import { IPublicTypeComponentMetadata } from '@alilc/lowcode-types'; + +import { COMMON_CONFIGURE_PROPS } from '../utils'; +import { AffixSnippets } from './snippets'; + +const AffixMetaInfo: IPublicTypeComponentMetadata = { + componentName: 'Affix', + title: 'Affix', + docUrl: '', + screenshot: '', + devMode: 'proCode', + npm: { + package: '@yuntijs/ui-lowcode-materials', + version: '{{version}}', + exportName: 'Affix', + destructuring: true, + subName: '', + }, + configure: { + props: [ + ...COMMON_CONFIGURE_PROPS, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'offsetTop', + 'zh-CN': '距离窗口顶部达到指定偏移量后触发 ', + }, + tip: 'offsetTop | Triggered when the specified offset is reached from the top of the window', + }, + name: 'offsetTop', + description: 'Triggered when the specified offset is reached from the top of the window', + setter: { + componentName: 'NumberSetter', + isRequired: false, + initialValue: 0, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'offsetBottom', + 'zh-CN': '距离窗口底部达到指定偏移量后触发', + }, + tip: 'offsetBottom | Triggered when the specified offset is reached from the bottom of the window', + }, + name: 'offsetBottom', + description: 'Triggered when the specified offset is reached from the bottom of the window', + setter: { + componentName: 'NumberSetter', + isRequired: false, + initialValue: 0, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'target', + 'zh-CN': '监听其滚动事件的元素', + }, + tip: 'target | Set the element that Affix needs to listen to its scroll event, the value is a function that returns the corresponding DOM element', + }, + name: 'target', + description: + 'Set the element that Affix needs to listen to its scroll event, the value is a function that returns the corresponding DOM element', + setter: { + componentName: 'FunctionSetter', + isRequired: false, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'prefixCls', + 'zh-CN': 'prefixCls', + }, + }, + name: 'prefixCls', + setter: { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'rootClassName', + 'zh-CN': 'rootClassName', + }, + }, + name: 'rootClassName', + setter: { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + }, + ], + supports: { + loop: true, + condition: true, + style: true, + className: true, + events: [ + { + name: 'onChange', + description: '固定状态改变时触发的回调函数', + template: + "onChange(affixed, ${extParams}){\n// 固定状态改变时触发的回调函数 \nconsole.log('onChange', affixed);}", + }, + ], + }, + component: {}, + }, + category: '其他', +}; + +export const AffixMeta = { + ...AffixMetaInfo, + snippets: AffixSnippets, +}; diff --git a/packages/yunti-ui-lowcode-materials/lowcode/Affix/snippets.ts b/packages/yunti-ui-lowcode-materials/lowcode/Affix/snippets.ts new file mode 100644 index 0000000..ecfe127 --- /dev/null +++ b/packages/yunti-ui-lowcode-materials/lowcode/Affix/snippets.ts @@ -0,0 +1,24 @@ +import { IPublicTypeSnippet } from '@alilc/lowcode-types'; + +export const AffixSnippets: IPublicTypeSnippet[] = [ + { + title: '固钉(Affix)', + screenshot: '', + schema: { + componentName: 'Affix', + props: { + __component_name: 'Affix', + offsetTop: 120, + children: [ + { + componentName: 'Button', + props: { + __component_name: 'Button', + children: 'Affix Top', + }, + }, + ], + }, + }, + }, +]; diff --git a/packages/yunti-ui-lowcode-materials/lowcode/Anchor/meta.ts b/packages/yunti-ui-lowcode-materials/lowcode/Anchor/meta.ts new file mode 100644 index 0000000..d41a9ff --- /dev/null +++ b/packages/yunti-ui-lowcode-materials/lowcode/Anchor/meta.ts @@ -0,0 +1,378 @@ +import { IPublicTypeComponentMetadata } from '@alilc/lowcode-types'; + +import { COMMON_CONFIGURE_PROPS } from '../utils'; +import { AnchorSnippets } from './snippets'; + +const AnchorMetaInfo: IPublicTypeComponentMetadata = { + componentName: 'Anchor', + title: 'Anchor', + docUrl: '', + screenshot: '', + devMode: 'proCode', + npm: { + package: '@yuntijs/ui-lowcode-materials', + version: '{{version}}', + exportName: 'Anchor', + destructuring: true, + subName: '', + }, + configure: { + props: [ + ...COMMON_CONFIGURE_PROPS, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'prefixCls', + 'zh-CN': 'prefixCls', + }, + }, + name: 'prefixCls', + setter: { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'rootClassName', + 'zh-CN': 'rootClassName', + }, + }, + name: 'rootClassName', + setter: { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'children', + 'zh-CN': 'children', + }, + tip: 'children | @deprecated Please use `items` instead.', + }, + name: 'children', + description: '@deprecated Please use `items` instead.', + setter: { + componentName: 'SlotSetter', + props: { + mode: 'node', + }, + isRequired: false, + initialValue: { + type: 'JSSlot', + value: [], + }, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'offsetTop', + 'zh-CN': '距离窗口顶部达到指定偏移量后触发', + }, + }, + name: 'offsetTop', + setter: { + componentName: 'NumberSetter', + isRequired: false, + initialValue: 0, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'bounds', + 'zh-CN': '锚点区域边界', + }, + }, + name: 'bounds', + setter: { + componentName: 'NumberSetter', + isRequired: false, + initialValue: 0, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'affix', + 'zh-CN': '固定模式', + }, + }, + name: 'affix', + setter: { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'showInkInFixed', + 'zh-CN': '是否显示小方块', + }, + }, + name: 'showInkInFixed', + setter: { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'getContainer', + 'zh-CN': '指定滚动的容器', + }, + }, + name: 'getContainer', + setter: { + componentName: 'FunctionSetter', + isRequired: false, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'getCurrentAnchor', + 'zh-CN': '自定义高亮的锚点', + }, + tip: 'getCurrentAnchor | Return customize highlight anchor', + }, + name: 'getCurrentAnchor', + description: 'Return customize highlight anchor', + setter: { + componentName: 'FunctionSetter', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'targetOffset', + 'zh-CN': '锚点滚动偏移量', + }, + tip: "targetOffset | Scroll to target offset value, if none, it's offsetTop prop value or 0.", + }, + name: 'targetOffset', + description: "Scroll to target offset value, if none, it's offsetTop prop value or 0.", + setter: { + componentName: 'NumberSetter', + isRequired: false, + initialValue: 0, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'items', + 'zh-CN': 'items', + }, + }, + name: 'items', + setter: { + componentName: 'ArraySetter', + props: { + itemSetter: { + componentName: 'ObjectSetter', + props: { + config: { + items: [ + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'key', + 'zh-CN': 'key', + }, + }, + name: 'key', + setter: { + componentName: 'MixedSetter', + props: { + setters: [ + { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + { + componentName: 'NumberSetter', + isRequired: false, + initialValue: 0, + }, + ], + }, + isRequired: true, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'href', + 'zh-CN': 'href', + }, + }, + name: 'href', + setter: { + componentName: 'StringSetter', + isRequired: true, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'title', + 'zh-CN': 'title', + }, + }, + name: 'title', + setter: { + componentName: 'StringSetter', + isRequired: true, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'children', + 'zh-CN': 'children', + }, + }, + name: 'children', + setter: { + componentName: 'ArraySetter', + props: { + itemSetter: { + componentName: 'ObjectSetter', + props: { + config: { + extraSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + }, + isRequired: false, + initialValue: {}, + }, + }, + initialValue: [], + }, + }, + ], + extraSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + }, + }, + }, + initialValue: [], + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'direction', + 'zh-CN': '方向', + }, + }, + name: 'direction', + setter: { + componentName: 'RadioGroupSetter', + props: { + dataSource: [ + { + label: 'vertical', + value: 'vertical', + }, + { + label: 'horizontal', + value: 'horizontal', + }, + ], + options: [ + { + label: 'vertical', + value: 'vertical', + }, + { + label: 'horizontal', + value: 'horizontal', + }, + ], + }, + initialValue: 'vertical', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'replace', + 'zh-CN': '替换 href', + }, + }, + name: 'replace', + setter: { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + }, + ], + supports: { + loop: true, + condition: true, + className: true, + style: true, + events: [ + { + name: 'onClick', + description: '点击事件', + template: "onClick(e, link, ${extParams}){ \nconsole.log('onClick', e, link);}", + }, + { + name: 'onChange', + description: '监听锚点链接改变', + template: + "onChange(currentActiveLink, ${extParams}){ \nconsole.log('onChange', currentActiveLink);}", + }, + ], + }, + component: { + isContainer: true, + }, + }, + category: '导航', +}; + +export const AnchorMeta = { + ...AnchorMetaInfo, + snippets: AnchorSnippets, +}; diff --git a/packages/yunti-ui-lowcode-materials/lowcode/Anchor/snippets.ts b/packages/yunti-ui-lowcode-materials/lowcode/Anchor/snippets.ts new file mode 100644 index 0000000..f760abb --- /dev/null +++ b/packages/yunti-ui-lowcode-materials/lowcode/Anchor/snippets.ts @@ -0,0 +1,31 @@ +import { IPublicTypeSnippet } from '@alilc/lowcode-types'; + +export const AnchorSnippets: IPublicTypeSnippet[] = [ + { + title: '锚点(Anchor)', + screenshot: '', + schema: { + componentName: 'Anchor', + props: { + __component_name: 'Anchor', + items: [ + { + key: 'part-1', + href: '#part-1', + title: 'Part 1', + }, + { + key: 'part-2', + href: '#part-2', + title: 'Part 2', + }, + { + key: 'part-3', + href: '#part-3', + title: 'Part 3', + }, + ], + }, + }, + }, +]; diff --git a/packages/yunti-ui-lowcode-materials/lowcode/App/meta.ts b/packages/yunti-ui-lowcode-materials/lowcode/App/meta.ts new file mode 100644 index 0000000..00a14b0 --- /dev/null +++ b/packages/yunti-ui-lowcode-materials/lowcode/App/meta.ts @@ -0,0 +1,481 @@ +import { IPublicTypeComponentMetadata } from '@alilc/lowcode-types'; + +import { COMMON_CONFIGURE_PROPS } from '../utils'; +import { AppSnippets } from './snippets'; + +const AppMetaInfo: IPublicTypeComponentMetadata = { + componentName: 'App', + title: 'App', + docUrl: '', + screenshot: '', + devMode: 'proCode', + npm: { + package: '@yuntijs/ui-lowcode-materials', + version: '{{version}}', + exportName: 'App', + destructuring: true, + subName: '', + }, + configure: { + props: [ + ...COMMON_CONFIGURE_PROPS, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'rootClassName', + 'zh-CN': 'rootClassName', + }, + }, + name: 'rootClassName', + setter: { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'prefixCls', + 'zh-CN': 'prefixCls', + }, + }, + name: 'prefixCls', + setter: { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'component', + 'zh-CN': 'component', + }, + }, + name: 'component', + setter: { + componentName: 'MixedSetter', + props: { + setters: [ + { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + { + componentName: 'ObjectSetter', + props: { + config: { + extraSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + }, + isRequired: false, + initialValue: {}, + }, + { + componentName: 'RadioGroupSetter', + props: { + dataSource: [ + { + label: 'false', + value: false, + }, + ], + options: [ + { + label: 'false', + value: false, + }, + ], + }, + initialValue: false, + }, + ], + }, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'message', + 'zh-CN': 'message', + }, + }, + name: 'message', + setter: { + componentName: 'ObjectSetter', + props: { + config: { + items: [ + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'top', + 'zh-CN': 'top', + }, + }, + name: 'top', + setter: { + componentName: 'NumberSetter', + isRequired: false, + initialValue: 0, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'duration', + 'zh-CN': 'duration', + }, + }, + name: 'duration', + setter: { + componentName: 'NumberSetter', + isRequired: false, + initialValue: 0, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'prefixCls', + 'zh-CN': 'prefixCls', + }, + }, + name: 'prefixCls', + setter: { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'getContainer', + 'zh-CN': 'getContainer', + }, + }, + name: 'getContainer', + setter: { + componentName: 'FunctionSetter', + isRequired: false, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'transitionName', + 'zh-CN': 'transitionName', + }, + }, + name: 'transitionName', + setter: { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'maxCount', + 'zh-CN': 'maxCount', + }, + }, + name: 'maxCount', + setter: { + componentName: 'NumberSetter', + isRequired: false, + initialValue: 0, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'rtl', + 'zh-CN': 'rtl', + }, + }, + name: 'rtl', + setter: { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + }, + ], + extraSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + }, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'notification', + 'zh-CN': 'notification', + }, + }, + name: 'notification', + setter: { + componentName: 'ObjectSetter', + props: { + config: { + items: [ + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'top', + 'zh-CN': 'top', + }, + }, + name: 'top', + setter: { + componentName: 'NumberSetter', + isRequired: false, + initialValue: 0, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'bottom', + 'zh-CN': 'bottom', + }, + }, + name: 'bottom', + setter: { + componentName: 'NumberSetter', + isRequired: false, + initialValue: 0, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'prefixCls', + 'zh-CN': 'prefixCls', + }, + }, + name: 'prefixCls', + setter: { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'getContainer', + 'zh-CN': 'getContainer', + }, + }, + name: 'getContainer', + setter: { + componentName: 'FunctionSetter', + isRequired: false, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'placement', + 'zh-CN': 'placement', + }, + }, + name: 'placement', + setter: { + componentName: 'SelectSetter', + props: { + dataSource: [ + { + label: 'bottomLeft', + value: 'bottomLeft', + }, + { + label: 'bottomRight', + value: 'bottomRight', + }, + { + label: 'topLeft', + value: 'topLeft', + }, + { + label: 'topRight', + value: 'topRight', + }, + { + label: 'top', + value: 'top', + }, + { + label: 'bottom', + value: 'bottom', + }, + ], + options: [ + { + label: 'bottomLeft', + value: 'bottomLeft', + }, + { + label: 'bottomRight', + value: 'bottomRight', + }, + { + label: 'topLeft', + value: 'topLeft', + }, + { + label: 'topRight', + value: 'topRight', + }, + { + label: 'top', + value: 'top', + }, + { + label: 'bottom', + value: 'bottom', + }, + ], + }, + initialValue: 'bottomLeft', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'maxCount', + 'zh-CN': 'maxCount', + }, + }, + name: 'maxCount', + setter: { + componentName: 'NumberSetter', + isRequired: false, + initialValue: 0, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'rtl', + 'zh-CN': 'rtl', + }, + }, + name: 'rtl', + setter: { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'stack', + 'zh-CN': 'stack', + }, + }, + name: 'stack', + setter: { + componentName: 'MixedSetter', + props: { + setters: [ + { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + { + componentName: 'ObjectSetter', + props: { + config: { + items: [ + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'threshold', + 'zh-CN': 'threshold', + }, + }, + name: 'threshold', + setter: { + componentName: 'NumberSetter', + isRequired: false, + initialValue: 0, + }, + }, + ], + extraSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + }, + }, + ], + }, + }, + }, + ], + extraSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + }, + }, + }, + ], + supports: { + loop: true, + condition: true, + style: true, + className: true, + }, + component: {}, + }, + category: '其他', +}; + +export const AppMeta = { + ...AppMetaInfo, + snippets: AppSnippets, +}; diff --git a/packages/yunti-ui-lowcode-materials/lowcode/App/snippets.ts b/packages/yunti-ui-lowcode-materials/lowcode/App/snippets.ts new file mode 100644 index 0000000..08df304 --- /dev/null +++ b/packages/yunti-ui-lowcode-materials/lowcode/App/snippets.ts @@ -0,0 +1,23 @@ +import { IPublicTypeSnippet } from '@alilc/lowcode-types'; + +export const AppSnippets: IPublicTypeSnippet[] = [ + { + title: '包裹组件(App)', + screenshot: '', + schema: { + componentName: 'App', + props: { + __component_name: 'App', + children: [ + { + componentName: 'Button', + props: { + __component_name: 'Button', + children: 'App', + }, + }, + ], + }, + }, + }, +]; diff --git a/packages/yunti-ui-lowcode-materials/lowcode/AutoComplete/meta.ts b/packages/yunti-ui-lowcode-materials/lowcode/AutoComplete/meta.ts new file mode 100644 index 0000000..2da6d3f --- /dev/null +++ b/packages/yunti-ui-lowcode-materials/lowcode/AutoComplete/meta.ts @@ -0,0 +1,2396 @@ +import { IPublicTypeComponentMetadata } from '@alilc/lowcode-types'; + +import { COMMON_CONFIGURE_PROPS } from '../utils'; +import { AutoCompleteSnippets } from './snippets'; + +const AutoCompleteMetaInfo: IPublicTypeComponentMetadata = { + componentName: '自动完成(AutoComplete)', + title: 'AutoComplete', + docUrl: '', + screenshot: '', + devMode: 'proCode', + npm: { + package: '@yuntijs/ui-lowcode-materials', + version: '{{version}}', + exportName: 'AutoComplete', + destructuring: true, + subName: '', + }, + configure: { + props: [ + ...COMMON_CONFIGURE_PROPS, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'dataSource', + 'zh-CN': 'dataSource', + }, + tip: 'dataSource | @deprecated Please use `options` instead', + }, + name: 'dataSource', + description: '@deprecated Please use `options` instead', + setter: { + componentName: 'ArraySetter', + props: { + itemSetter: { + componentName: 'MixedSetter', + props: { + setters: [ + { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + { + componentName: 'NumberSetter', + isRequired: false, + initialValue: 0, + }, + { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + { + componentName: 'ObjectSetter', + props: { + config: { + extraSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + }, + isRequired: false, + initialValue: {}, + }, + { + componentName: 'ObjectSetter', + props: { + config: { + items: [ + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'T', + 'zh-CN': 'T', + }, + }, + name: 'T', + setter: { + componentName: 'MixedSetter', + isRequired: true, + props: {}, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': '__@iterator', + 'zh-CN': '__@iterator', + }, + }, + name: '__@iterator', + setter: { + componentName: 'FunctionSetter', + isRequired: true, + }, + }, + ], + extraSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + }, + }, + { + componentName: 'ObjectSetter', + props: { + config: { + items: [ + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'value', + 'zh-CN': 'value', + }, + }, + name: 'value', + setter: { + componentName: 'StringSetter', + isRequired: true, + initialValue: '', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'text', + 'zh-CN': 'text', + }, + }, + name: 'text', + setter: { + componentName: 'StringSetter', + isRequired: true, + initialValue: '', + }, + }, + ], + extraSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + }, + }, + ], + }, + }, + }, + initialValue: [], + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'status', + 'zh-CN': 'status', + }, + }, + name: 'status', + setter: { + componentName: 'RadioGroupSetter', + props: { + dataSource: [ + { + label: 'warning', + value: 'warning', + }, + { + label: 'error', + value: 'error', + }, + ], + options: [ + { + label: 'warning', + value: 'warning', + }, + { + label: 'error', + value: 'error', + }, + ], + }, + initialValue: '', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'popupClassName', + 'zh-CN': 'popupClassName', + }, + }, + name: 'popupClassName', + setter: { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'dropdownClassName', + 'zh-CN': 'dropdownClassName', + }, + tip: 'dropdownClassName | @deprecated Please use `popupClassName` instead', + }, + name: 'dropdownClassName', + description: '@deprecated Please use `popupClassName` instead', + setter: { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'dropdownMatchSelectWidth', + 'zh-CN': 'dropdownMatchSelectWidth', + }, + tip: 'dropdownMatchSelectWidth | @deprecated Please use `popupMatchSelectWidth` instead', + }, + name: 'dropdownMatchSelectWidth', + description: '@deprecated Please use `popupMatchSelectWidth` instead', + setter: { + componentName: 'MixedSetter', + props: { + setters: [ + { + componentName: 'NumberSetter', + isRequired: false, + initialValue: 0, + }, + { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + ], + }, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'popupMatchSelectWidth', + 'zh-CN': 'popupMatchSelectWidth', + }, + }, + name: 'popupMatchSelectWidth', + setter: { + componentName: 'MixedSetter', + props: { + setters: [ + { + componentName: 'NumberSetter', + isRequired: false, + initialValue: 0, + }, + { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + ], + }, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'onChange', + 'zh-CN': 'onChange', + }, + }, + name: 'onChange', + setter: { + componentName: 'FunctionSetter', + isRequired: false, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'prefixCls', + 'zh-CN': 'prefixCls', + }, + }, + name: 'prefixCls', + setter: { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'rootClassName', + 'zh-CN': 'rootClassName', + }, + }, + name: 'rootClassName', + setter: { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'direction', + 'zh-CN': 'direction', + }, + }, + name: 'direction', + setter: { + componentName: 'RadioGroupSetter', + props: { + dataSource: [ + { + label: 'ltr', + value: 'ltr', + }, + { + label: 'rtl', + value: 'rtl', + }, + ], + options: [ + { + label: 'ltr', + value: 'ltr', + }, + { + label: 'rtl', + value: 'rtl', + }, + ], + }, + initialValue: 'ltr', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'id', + 'zh-CN': 'id', + }, + }, + name: 'id', + setter: { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'searchValue', + 'zh-CN': 'searchValue', + }, + }, + name: 'searchValue', + setter: { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'autoClearSearchValue', + 'zh-CN': 'autoClearSearchValue', + }, + }, + name: 'autoClearSearchValue', + setter: { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'title', + 'zh-CN': 'title', + }, + }, + name: 'title', + setter: { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'showSearch', + 'zh-CN': 'showSearch', + }, + }, + name: 'showSearch', + setter: { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'tagRender', + 'zh-CN': 'tagRender', + }, + }, + name: 'tagRender', + setter: { + componentName: 'FunctionSetter', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'maxLength', + 'zh-CN': 'maxLength', + }, + }, + name: 'maxLength', + setter: { + componentName: 'NumberSetter', + isRequired: false, + initialValue: 0, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'tabIndex', + 'zh-CN': 'tabIndex', + }, + }, + name: 'tabIndex', + setter: { + componentName: 'NumberSetter', + isRequired: false, + initialValue: 0, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'autoFocus', + 'zh-CN': 'autoFocus', + }, + }, + name: 'autoFocus', + setter: { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'notFoundContent', + 'zh-CN': 'notFoundContent', + }, + }, + name: 'notFoundContent', + setter: { + componentName: 'SlotSetter', + props: { + mode: 'node', + }, + isRequired: false, + initialValue: { + type: 'JSSlot', + value: [], + }, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'placeholder', + 'zh-CN': 'placeholder', + }, + }, + name: 'placeholder', + setter: { + componentName: 'SlotSetter', + props: { + mode: 'node', + }, + isRequired: false, + initialValue: { + type: 'JSSlot', + value: [], + }, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'onClear', + 'zh-CN': 'onClear', + }, + }, + name: 'onClear', + setter: { + componentName: 'FunctionSetter', + isRequired: false, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'choiceTransitionName', + 'zh-CN': 'choiceTransitionName', + }, + }, + name: 'choiceTransitionName', + setter: { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'disabled', + 'zh-CN': 'disabled', + }, + }, + name: 'disabled', + setter: { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'open', + 'zh-CN': 'open', + }, + }, + name: 'open', + setter: { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'defaultOpen', + 'zh-CN': 'defaultOpen', + }, + }, + name: 'defaultOpen', + setter: { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'getInputElement', + 'zh-CN': 'getInputElement', + }, + tip: 'getInputElement | @private Internal usage. Do not use in your production.', + }, + name: 'getInputElement', + description: '@private Internal usage. Do not use in your production.', + setter: { + componentName: 'FunctionSetter', + isRequired: false, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'getRawInputElement', + 'zh-CN': 'getRawInputElement', + }, + tip: 'getRawInputElement | @private Internal usage. Do not use in your production.', + }, + name: 'getRawInputElement', + description: '@private Internal usage. Do not use in your production.', + setter: { + componentName: 'FunctionSetter', + isRequired: false, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'maxTagTextLength', + 'zh-CN': 'maxTagTextLength', + }, + }, + name: 'maxTagTextLength', + setter: { + componentName: 'NumberSetter', + isRequired: false, + initialValue: 0, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'maxTagCount', + 'zh-CN': 'maxTagCount', + }, + }, + name: 'maxTagCount', + setter: { + componentName: 'MixedSetter', + props: { + setters: [ + { + componentName: 'NumberSetter', + isRequired: false, + initialValue: 0, + }, + { + componentName: 'RadioGroupSetter', + props: { + dataSource: [ + { + label: 'responsive', + value: 'responsive', + }, + ], + options: [ + { + label: 'responsive', + value: 'responsive', + }, + ], + }, + initialValue: 'responsive', + }, + ], + }, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'maxTagPlaceholder', + 'zh-CN': 'maxTagPlaceholder', + }, + }, + name: 'maxTagPlaceholder', + setter: { + componentName: 'MixedSetter', + props: { + setters: [ + { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + { + componentName: 'NumberSetter', + isRequired: false, + initialValue: 0, + }, + { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + { + componentName: 'ObjectSetter', + props: { + config: { + extraSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + }, + isRequired: false, + initialValue: {}, + }, + { + componentName: 'ObjectSetter', + props: { + config: { + items: [ + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'T', + 'zh-CN': 'T', + }, + }, + name: 'T', + setter: { + componentName: 'MixedSetter', + isRequired: true, + props: {}, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': '__@iterator', + 'zh-CN': '__@iterator', + }, + }, + name: '__@iterator', + setter: { + componentName: 'FunctionSetter', + isRequired: true, + }, + }, + ], + extraSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + }, + }, + { + componentName: 'FunctionSetter', + }, + ], + }, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'tokenSeparators', + 'zh-CN': 'tokenSeparators', + }, + }, + name: 'tokenSeparators', + setter: { + componentName: 'ArraySetter', + props: { + itemSetter: { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + }, + initialValue: [], + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'allowClear', + 'zh-CN': 'allowClear', + }, + }, + name: 'allowClear', + setter: { + componentName: 'MixedSetter', + props: { + setters: [ + { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + { + componentName: 'ObjectSetter', + props: { + config: { + items: [ + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'clearIcon', + 'zh-CN': 'clearIcon', + }, + }, + name: 'clearIcon', + setter: { + componentName: 'MixedSetter', + props: { + setters: [ + { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + { + componentName: 'NumberSetter', + isRequired: false, + initialValue: 0, + }, + { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + { + componentName: 'ObjectSetter', + props: { + config: { + extraSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + }, + isRequired: false, + initialValue: {}, + }, + { + componentName: 'ObjectSetter', + props: { + config: { + items: [ + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'T', + 'zh-CN': 'T', + }, + }, + name: 'T', + setter: { + componentName: 'MixedSetter', + isRequired: true, + props: {}, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': '__@iterator', + 'zh-CN': '__@iterator', + }, + }, + name: '__@iterator', + setter: { + componentName: 'FunctionSetter', + isRequired: true, + }, + }, + ], + extraSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + }, + }, + { + componentName: 'FunctionSetter', + }, + ], + }, + }, + }, + ], + extraSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + }, + }, + ], + }, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'suffixIcon', + 'zh-CN': 'suffixIcon', + }, + }, + name: 'suffixIcon', + setter: { + componentName: 'SlotSetter', + props: { + mode: 'node', + }, + isRequired: false, + initialValue: { + type: 'JSSlot', + value: [], + }, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'clearIcon', + 'zh-CN': 'clearIcon', + }, + tip: 'clearIcon | Clear all icon', + }, + name: 'clearIcon', + description: 'Clear all icon', + setter: { + componentName: 'MixedSetter', + props: { + setters: [ + { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + { + componentName: 'NumberSetter', + isRequired: false, + initialValue: 0, + }, + { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + { + componentName: 'ObjectSetter', + props: { + config: { + extraSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + }, + isRequired: false, + initialValue: {}, + }, + { + componentName: 'ObjectSetter', + props: { + config: { + items: [ + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'T', + 'zh-CN': 'T', + }, + }, + name: 'T', + setter: { + componentName: 'MixedSetter', + isRequired: true, + props: {}, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': '__@iterator', + 'zh-CN': '__@iterator', + }, + }, + name: '__@iterator', + setter: { + componentName: 'FunctionSetter', + isRequired: true, + }, + }, + ], + extraSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + }, + }, + { + componentName: 'FunctionSetter', + }, + ], + }, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'removeIcon', + 'zh-CN': 'removeIcon', + }, + tip: 'removeIcon | Selector remove icon', + }, + name: 'removeIcon', + description: 'Selector remove icon', + setter: { + componentName: 'MixedSetter', + props: { + setters: [ + { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + { + componentName: 'NumberSetter', + isRequired: false, + initialValue: 0, + }, + { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + { + componentName: 'ObjectSetter', + props: { + config: { + extraSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + }, + isRequired: false, + initialValue: {}, + }, + { + componentName: 'ObjectSetter', + props: { + config: { + items: [ + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'T', + 'zh-CN': 'T', + }, + }, + name: 'T', + setter: { + componentName: 'MixedSetter', + isRequired: true, + props: {}, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': '__@iterator', + 'zh-CN': '__@iterator', + }, + }, + name: '__@iterator', + setter: { + componentName: 'FunctionSetter', + isRequired: true, + }, + }, + ], + extraSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + }, + }, + { + componentName: 'FunctionSetter', + }, + ], + }, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'animation', + 'zh-CN': 'animation', + }, + }, + name: 'animation', + setter: { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'transitionName', + 'zh-CN': 'transitionName', + }, + }, + name: 'transitionName', + setter: { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'dropdownStyle', + 'zh-CN': 'dropdownStyle', + }, + }, + name: 'dropdownStyle', + setter: { + componentName: 'ObjectSetter', + props: { + config: { + extraSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + }, + isRequired: false, + initialValue: {}, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'dropdownRender', + 'zh-CN': 'dropdownRender', + }, + }, + name: 'dropdownRender', + setter: { + componentName: 'FunctionSetter', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'dropdownAlign', + 'zh-CN': 'dropdownAlign', + }, + }, + name: 'dropdownAlign', + setter: { + componentName: 'ObjectSetter', + props: { + config: { + items: [ + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'points', + 'zh-CN': 'points', + }, + }, + name: 'points', + setter: { + componentName: 'ArraySetter', + props: { + itemSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + initialValue: [], + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': '_experimental', + 'zh-CN': '_experimental', + }, + }, + name: '_experimental', + setter: { + componentName: 'ObjectSetter', + props: { + config: { + extraSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + }, + isRequired: false, + initialValue: {}, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'offset', + 'zh-CN': 'offset', + }, + }, + name: 'offset', + setter: { + componentName: 'ArraySetter', + props: { + itemSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + initialValue: [], + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'targetOffset', + 'zh-CN': 'targetOffset', + }, + }, + name: 'targetOffset', + setter: { + componentName: 'ArraySetter', + props: { + itemSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + initialValue: [], + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'overflow', + 'zh-CN': 'overflow', + }, + }, + name: 'overflow', + setter: { + componentName: 'ObjectSetter', + props: { + config: { + items: [ + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'adjustX', + 'zh-CN': 'adjustX', + }, + }, + name: 'adjustX', + setter: { + componentName: 'MixedSetter', + props: { + setters: [ + { + componentName: 'NumberSetter', + isRequired: false, + initialValue: 0, + }, + { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + ], + }, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'adjustY', + 'zh-CN': 'adjustY', + }, + }, + name: 'adjustY', + setter: { + componentName: 'MixedSetter', + props: { + setters: [ + { + componentName: 'NumberSetter', + isRequired: false, + initialValue: 0, + }, + { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + ], + }, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'shiftX', + 'zh-CN': 'shiftX', + }, + }, + name: 'shiftX', + setter: { + componentName: 'MixedSetter', + props: { + setters: [ + { + componentName: 'NumberSetter', + isRequired: false, + initialValue: 0, + }, + { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + ], + }, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'shiftY', + 'zh-CN': 'shiftY', + }, + }, + name: 'shiftY', + setter: { + componentName: 'MixedSetter', + props: { + setters: [ + { + componentName: 'NumberSetter', + isRequired: false, + initialValue: 0, + }, + { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + ], + }, + }, + }, + ], + extraSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + }, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'autoArrow', + 'zh-CN': 'autoArrow', + }, + }, + name: 'autoArrow', + setter: { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'htmlRegion', + 'zh-CN': 'htmlRegion', + }, + }, + name: 'htmlRegion', + setter: { + componentName: 'RadioGroupSetter', + props: { + dataSource: [ + { + label: 'visible', + value: 'visible', + }, + { + label: 'scroll', + value: 'scroll', + }, + { + label: 'visibleFirst', + value: 'visibleFirst', + }, + ], + options: [ + { + label: 'visible', + value: 'visible', + }, + { + label: 'scroll', + value: 'scroll', + }, + { + label: 'visibleFirst', + value: 'visibleFirst', + }, + ], + }, + initialValue: 'visible', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'dynamicInset', + 'zh-CN': 'dynamicInset', + }, + }, + name: 'dynamicInset', + setter: { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'useCssRight', + 'zh-CN': 'useCssRight', + }, + }, + name: 'useCssRight', + setter: { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'useCssBottom', + 'zh-CN': 'useCssBottom', + }, + }, + name: 'useCssBottom', + setter: { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'useCssTransform', + 'zh-CN': 'useCssTransform', + }, + }, + name: 'useCssTransform', + setter: { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'ignoreShake', + 'zh-CN': 'ignoreShake', + }, + }, + name: 'ignoreShake', + setter: { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + }, + ], + extraSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + }, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'placement', + 'zh-CN': 'placement', + }, + }, + name: 'placement', + setter: { + componentName: 'SelectSetter', + props: { + dataSource: [ + { + label: 'bottomLeft', + value: 'bottomLeft', + }, + { + label: 'bottomRight', + value: 'bottomRight', + }, + { + label: 'topLeft', + value: 'topLeft', + }, + { + label: 'topRight', + value: 'topRight', + }, + ], + options: [ + { + label: 'bottomLeft', + value: 'bottomLeft', + }, + { + label: 'bottomRight', + value: 'bottomRight', + }, + { + label: 'topLeft', + value: 'topLeft', + }, + { + label: 'topRight', + value: 'topRight', + }, + ], + }, + initialValue: 'bottomLeft', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'builtinPlacements', + 'zh-CN': 'builtinPlacements', + }, + }, + name: 'builtinPlacements', + setter: { + componentName: 'ObjectSetter', + props: { + config: { + extraSetter: { + componentName: 'ObjectSetter', + props: { + config: { + items: [], + extraSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + }, + isRequired: false, + }, + }, + }, + initialValue: {}, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'getPopupContainer', + 'zh-CN': 'getPopupContainer', + }, + }, + name: 'getPopupContainer', + setter: { + componentName: 'FunctionSetter', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'showAction', + 'zh-CN': 'showAction', + }, + }, + name: 'showAction', + setter: { + componentName: 'ArraySetter', + props: { + itemSetter: { + componentName: 'RadioGroupSetter', + props: { + dataSource: [ + { + label: 'focus', + value: 'focus', + }, + { + label: 'click', + value: 'click', + }, + ], + options: [ + { + label: 'focus', + value: 'focus', + }, + { + label: 'click', + value: 'click', + }, + ], + }, + initialValue: 'focus', + }, + }, + initialValue: [], + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'backfill', + 'zh-CN': 'backfill', + }, + }, + name: 'backfill', + setter: { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'fieldNames', + 'zh-CN': 'fieldNames', + }, + }, + name: 'fieldNames', + setter: { + componentName: 'ObjectSetter', + props: { + config: { + items: [ + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'value', + 'zh-CN': 'value', + }, + }, + name: 'value', + setter: { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'label', + 'zh-CN': 'label', + }, + }, + name: 'label', + setter: { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'groupLabel', + 'zh-CN': 'groupLabel', + }, + }, + name: 'groupLabel', + setter: { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'options', + 'zh-CN': 'options', + }, + }, + name: 'options', + setter: { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + }, + ], + extraSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + }, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'inputValue', + 'zh-CN': 'inputValue', + }, + tip: 'inputValue | @deprecated Use `searchValue` instead', + }, + name: 'inputValue', + description: '@deprecated Use `searchValue` instead', + setter: { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'onSelect', + 'zh-CN': 'onSelect', + }, + }, + name: 'onSelect', + setter: { + componentName: 'FunctionSetter', + isRequired: false, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'onDeselect', + 'zh-CN': 'onDeselect', + }, + }, + name: 'onDeselect', + setter: { + componentName: 'FunctionSetter', + isRequired: false, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'filterOption', + 'zh-CN': 'filterOption', + }, + tip: 'filterOption | In Select, `false` means do nothing.', + }, + name: 'filterOption', + description: 'In Select, `false` means do nothing.', + setter: { + componentName: 'MixedSetter', + props: { + setters: [ + { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + { + componentName: 'FunctionSetter', + isRequired: false, + }, + ], + }, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'filterSort', + 'zh-CN': 'filterSort', + }, + }, + name: 'filterSort', + setter: { + componentName: 'FunctionSetter', + isRequired: false, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'optionFilterProp', + 'zh-CN': 'optionFilterProp', + }, + }, + name: 'optionFilterProp', + setter: { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'options', + 'zh-CN': 'options', + }, + }, + name: 'options', + setter: { + componentName: 'ArraySetter', + props: { + itemSetter: { + componentName: 'ObjectSetter', + props: { + config: { + extraSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + }, + isRequired: false, + initialValue: {}, + }, + }, + initialValue: [], + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'optionRender', + 'zh-CN': 'optionRender', + }, + }, + name: 'optionRender', + setter: { + componentName: 'FunctionSetter', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'defaultActiveFirstOption', + 'zh-CN': 'defaultActiveFirstOption', + }, + }, + name: 'defaultActiveFirstOption', + setter: { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'virtual', + 'zh-CN': 'virtual', + }, + }, + name: 'virtual', + setter: { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'listHeight', + 'zh-CN': 'listHeight', + }, + }, + name: 'listHeight', + setter: { + componentName: 'NumberSetter', + isRequired: false, + initialValue: 0, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'listItemHeight', + 'zh-CN': 'listItemHeight', + }, + }, + name: 'listItemHeight', + setter: { + componentName: 'NumberSetter', + isRequired: false, + initialValue: 0, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'menuItemSelectedIcon', + 'zh-CN': 'menuItemSelectedIcon', + }, + }, + name: 'menuItemSelectedIcon', + setter: { + componentName: 'MixedSetter', + props: { + setters: [ + { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + { + componentName: 'NumberSetter', + isRequired: false, + initialValue: 0, + }, + { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + { + componentName: 'ObjectSetter', + props: { + config: { + extraSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + }, + isRequired: false, + initialValue: {}, + }, + { + componentName: 'ObjectSetter', + props: { + config: { + items: [ + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'T', + 'zh-CN': 'T', + }, + }, + name: 'T', + setter: { + componentName: 'MixedSetter', + isRequired: true, + props: {}, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': '__@iterator', + 'zh-CN': '__@iterator', + }, + }, + name: '__@iterator', + setter: { + componentName: 'FunctionSetter', + isRequired: true, + }, + }, + ], + extraSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + }, + }, + { + componentName: 'FunctionSetter', + }, + ], + }, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'value', + 'zh-CN': 'value', + }, + }, + name: 'value', + setter: { + componentName: 'ObjectSetter', + props: { + config: { + extraSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + }, + isRequired: false, + initialValue: {}, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'defaultValue', + 'zh-CN': 'defaultValue', + }, + }, + name: 'defaultValue', + setter: { + componentName: 'ObjectSetter', + props: { + config: { + extraSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + }, + isRequired: false, + initialValue: {}, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'size', + 'zh-CN': 'size', + }, + }, + name: 'size', + setter: { + componentName: 'RadioGroupSetter', + props: { + dataSource: [ + { + label: 'small', + value: 'small', + }, + { + label: 'middle', + value: 'middle', + }, + { + label: 'large', + value: 'large', + }, + ], + options: [ + { + label: 'small', + value: 'small', + }, + { + label: 'middle', + value: 'middle', + }, + { + label: 'large', + value: 'large', + }, + ], + }, + initialValue: 'small', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'bordered', + 'zh-CN': 'bordered', + }, + }, + name: 'bordered', + setter: { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'showArrow', + 'zh-CN': 'showArrow', + }, + tip: 'showArrow | @deprecated `showArrow` is deprecated which will be removed in next major version. It will be a', + }, + name: 'showArrow', + description: + '@deprecated `showArrow` is deprecated which will be removed in next major version. It will be a', + setter: { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'ref', + 'zh-CN': 'ref', + }, + }, + name: 'ref', + setter: { + componentName: 'MixedSetter', + props: { + setters: [ + { + componentName: 'FunctionSetter', + }, + { + componentName: 'ObjectSetter', + props: { + config: { + extraSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + }, + isRequired: false, + initialValue: {}, + }, + ], + }, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'key', + 'zh-CN': 'key', + }, + }, + name: 'key', + setter: { + componentName: 'MixedSetter', + props: { + setters: [ + { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + { + componentName: 'NumberSetter', + isRequired: false, + initialValue: 0, + }, + ], + }, + }, + }, + ], + supports: { + loop: true, + condition: true, + style: true, + className: true, + events: [ + { + name: 'onClick', + description: 'onClick', + template: "onClick(event,${extParams}){ \nconsole.log('onClick,event);}", + }, + { + name: 'onSearch', + description: 'onSearch', + template: "onSearch(value,${extParams}){ \nconsole.log('onSearch,value);}", + }, + { + name: 'onDropdownVisibleChange', + description: 'onDropdownVisibleChange', + template: + "onDropdownVisibleChange(open,${extParams}){ \nconsole.log('onDropdownVisibleChange,open);}", + }, + { + name: 'onBlur', + description: 'onBlur', + template: "onBlur(event,${extParams}){ \nconsole.log('onBlur,event);}", + }, + { + name: 'onFocus', + description: 'onFocus', + template: "onFocus(event,${extParams}){ \nconsole.log('onFocus,event);}", + }, + { + name: 'onKeyUp', + description: 'onKeyUp', + template: "onKeyUp(event,${extParams}){ \nconsole.log('onKeyUp,event);}", + }, + { + name: 'onKeyDown', + description: 'onKeyDown', + template: "onKeyDown(event,${extParams}){ \nconsole.log('onKeyDown,event);}", + }, + { + name: 'onMouseDown', + description: 'onMouseDown', + template: "onMouseDown(event,${extParams}){ \nconsole.log('onMouseDown,event);}", + }, + { + name: 'onPopupScroll', + description: 'onPopupScroll', + template: "onPopupScroll(event,${extParams}){ \nconsole.log('onPopupScroll,event);}", + }, + { + name: 'onInputKeyDown', + description: 'onInputKeyDown', + template: "onInputKeyDown(event,${extParams}){ \nconsole.log('onInputKeyDown,event);}", + }, + { + name: 'onMouseEnter', + description: 'onMouseEnter', + template: "onMouseEnter(event,${extParams}){ \nconsole.log('onMouseEnter,event);}", + }, + { + name: 'onMouseLeave', + description: 'onMouseLeave', + template: "onMouseLeave(event,${extParams}){ \nconsole.log('onMouseLeave,event);}", + }, + ], + }, + component: {}, + }, + category: '数据输入', +}; + +export const AutoCompleteMeta = { + ...AutoCompleteMetaInfo, + snippets: AutoCompleteSnippets, +}; diff --git a/packages/yunti-ui-lowcode-materials/lowcode/AutoComplete/snippets.ts b/packages/yunti-ui-lowcode-materials/lowcode/AutoComplete/snippets.ts new file mode 100644 index 0000000..e38e5cb --- /dev/null +++ b/packages/yunti-ui-lowcode-materials/lowcode/AutoComplete/snippets.ts @@ -0,0 +1,15 @@ +import { IPublicTypeSnippet } from '@alilc/lowcode-types'; + +export const AutoCompleteSnippets: IPublicTypeSnippet[] = [ + { + title: 'AutoComplete', + screenshot: '', + schema: { + componentName: 'AutoComplete', + props: { + __component_name: 'AutoComplete', + placeholder: '请输入', + }, + }, + }, +]; diff --git a/packages/yunti-ui-lowcode-materials/lowcode/Avatar/meta.ts b/packages/yunti-ui-lowcode-materials/lowcode/Avatar/meta.ts new file mode 100644 index 0000000..b6d7a81 --- /dev/null +++ b/packages/yunti-ui-lowcode-materials/lowcode/Avatar/meta.ts @@ -0,0 +1,434 @@ +import { IPublicTypeComponentMetadata } from '@alilc/lowcode-types'; + +import { COMMON_CONFIGURE_PROPS } from '../utils'; +import { AvatarSnippets } from './snippets'; + +const AvatarMetaInfo: IPublicTypeComponentMetadata = { + componentName: 'Avatar', + title: 'Avatar', + docUrl: '', + screenshot: '', + devMode: 'proCode', + npm: { + package: '@yuntijs/ui-lowcode-materials', + version: '{{version}}', + exportName: 'Avatar', + destructuring: true, + subName: '', + }, + configure: { + props: [ + ...COMMON_CONFIGURE_PROPS, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'shape', + 'zh-CN': 'shape', + }, + tip: 'shape | Shape of avatar, options: `circle`, `square`', + }, + name: 'shape', + description: 'Shape of avatar, options: `circle`, `square`', + setter: { + componentName: 'RadioGroupSetter', + props: { + dataSource: [ + { + label: 'circle', + value: 'circle', + }, + { + label: 'square', + value: 'square', + }, + ], + options: [ + { + label: 'circle', + value: 'circle', + }, + { + label: 'square', + value: 'square', + }, + ], + }, + initialValue: 'circle', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'size', + 'zh-CN': 'size', + }, + }, + name: 'size', + setter: { + componentName: 'MixedSetter', + props: { + setters: [ + { + componentName: 'NumberSetter', + isRequired: false, + initialValue: 0, + }, + { + componentName: 'ObjectSetter', + props: { + config: { + extraSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + }, + isRequired: false, + initialValue: {}, + }, + { + componentName: 'RadioGroupSetter', + props: { + dataSource: [ + { + label: 'small', + value: 'small', + }, + { + label: 'large', + value: 'large', + }, + { + label: 'default', + value: 'default', + }, + ], + options: [ + { + label: 'small', + value: 'small', + }, + { + label: 'large', + value: 'large', + }, + { + label: 'default', + value: 'default', + }, + ], + }, + initialValue: 'small', + }, + ], + }, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'gap', + 'zh-CN': 'gap', + }, + }, + name: 'gap', + setter: { + componentName: 'NumberSetter', + isRequired: false, + initialValue: 0, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'src', + 'zh-CN': 'src', + }, + tip: 'src | Src of image avatar', + }, + name: 'src', + description: 'Src of image avatar', + setter: { + componentName: 'SlotSetter', + props: { + mode: 'node', + }, + isRequired: false, + initialValue: { + type: 'JSSlot', + value: [], + }, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'srcSet', + 'zh-CN': 'srcSet', + }, + tip: 'srcSet | Srcset of image avatar', + }, + name: 'srcSet', + description: 'Srcset of image avatar', + setter: { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'draggable', + 'zh-CN': 'draggable', + }, + }, + name: 'draggable', + setter: { + componentName: 'MixedSetter', + props: { + setters: [ + { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + { + componentName: 'RadioGroupSetter', + props: { + dataSource: [ + { + label: 'true', + value: 'true', + }, + { + label: 'false', + value: 'false', + }, + ], + options: [ + { + label: 'true', + value: 'true', + }, + { + label: 'false', + value: 'false', + }, + ], + }, + initialValue: 'true', + }, + ], + }, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'icon', + 'zh-CN': 'icon', + }, + tip: 'icon | Icon to be used in avatar', + }, + name: 'icon', + description: 'Icon to be used in avatar', + setter: { + componentName: 'SlotSetter', + props: { + mode: 'node', + }, + isRequired: false, + initialValue: { + type: 'JSSlot', + value: [], + }, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'prefixCls', + 'zh-CN': 'prefixCls', + }, + }, + name: 'prefixCls', + setter: { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'rootClassName', + 'zh-CN': 'rootClassName', + }, + }, + name: 'rootClassName', + setter: { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'alt', + 'zh-CN': 'alt', + }, + }, + name: 'alt', + setter: { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'crossOrigin', + 'zh-CN': 'crossOrigin', + }, + }, + name: 'crossOrigin', + setter: { + componentName: 'RadioGroupSetter', + props: { + dataSource: [ + { + label: 'anonymous', + value: 'anonymous', + }, + { + label: 'use-credentials', + value: 'use-credentials', + }, + ], + options: [ + { + label: 'anonymous', + value: 'anonymous', + }, + { + label: 'use-credentials', + value: 'use-credentials', + }, + ], + }, + initialValue: '', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'onError', + 'zh-CN': 'onError', + }, + }, + name: 'onError', + setter: { + componentName: 'FunctionSetter', + isRequired: false, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'ref', + 'zh-CN': 'ref', + }, + }, + name: 'ref', + setter: { + componentName: 'MixedSetter', + props: { + setters: [ + { + componentName: 'FunctionSetter', + }, + { + componentName: 'ObjectSetter', + props: { + config: { + extraSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + }, + isRequired: false, + initialValue: {}, + }, + ], + }, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'key', + 'zh-CN': 'key', + }, + }, + name: 'key', + setter: { + componentName: 'MixedSetter', + props: { + setters: [ + { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + { + componentName: 'NumberSetter', + isRequired: false, + initialValue: 0, + }, + ], + }, + }, + }, + ], + supports: { + loop: true, + condition: true, + style: true, + className: true, + events: [ + { + name: 'onClick', + description: 'onClick', + template: "onClick(e,${extParams}){ \nconsole.log('onClick,e);}", + }, + ], + }, + component: {}, + }, + category: '数据展示', +}; + +export const AvatarMeta = { + ...AvatarMetaInfo, + snippets: AvatarSnippets, +}; diff --git a/packages/yunti-ui-lowcode-materials/lowcode/Avatar/snippets.ts b/packages/yunti-ui-lowcode-materials/lowcode/Avatar/snippets.ts new file mode 100644 index 0000000..4b9493c --- /dev/null +++ b/packages/yunti-ui-lowcode-materials/lowcode/Avatar/snippets.ts @@ -0,0 +1,14 @@ +import { IPublicTypeSnippet } from '@alilc/lowcode-types'; + +export const AvatarSnippets: IPublicTypeSnippet[] = [ + { + title: '头像(Avatar)', + screenshot: '', + schema: { + componentName: 'Avatar', + props: { + __component_name: 'Avatar', + }, + }, + }, +]; diff --git a/packages/yunti-ui-lowcode-materials/lowcode/Button/meta.ts b/packages/yunti-ui-lowcode-materials/lowcode/Button/meta.ts new file mode 100644 index 0000000..838a266 --- /dev/null +++ b/packages/yunti-ui-lowcode-materials/lowcode/Button/meta.ts @@ -0,0 +1,508 @@ +import { IPublicTypeComponentMetadata } from '@alilc/lowcode-types'; + +import { COMMON_CONFIGURE_PROPS } from '../utils'; +import { ButtonSnippets } from './snippets'; + +const ButtonMetaInfo: IPublicTypeComponentMetadata = { + componentName: 'Button', + title: 'Button', + docUrl: '', + screenshot: '', + devMode: 'proCode', + npm: { + package: '@yuntijs/ui-lowcode-materials', + version: '{{version}}', + exportName: 'Button', + destructuring: true, + subName: '', + }, + configure: { + props: [ + ...COMMON_CONFIGURE_PROPS, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'href', + 'zh-CN': '跳转的地址', + }, + }, + name: 'href', + setter: { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'htmlType', + 'zh-CN': '原生 type 值', + }, + }, + name: 'htmlType', + setter: { + componentName: 'RadioGroupSetter', + props: { + dataSource: [ + { + label: 'submit', + value: 'submit', + }, + { + label: 'reset', + value: 'reset', + }, + { + label: 'button', + value: 'button', + }, + ], + options: [ + { + label: 'submit', + value: 'submit', + }, + { + label: 'reset', + value: 'reset', + }, + { + label: 'button', + value: 'button', + }, + ], + }, + initialValue: 'submit', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'type', + 'zh-CN': '类型', + }, + }, + name: 'type', + setter: { + componentName: 'SelectSetter', + props: { + dataSource: [ + { + label: 'link', + value: 'link', + }, + { + label: 'text', + value: 'text', + }, + { + label: 'default', + value: 'default', + }, + { + label: 'primary', + value: 'primary', + }, + { + label: 'dashed', + value: 'dashed', + }, + ], + options: [ + { + label: 'link', + value: 'link', + }, + { + label: 'text', + value: 'text', + }, + { + label: 'default', + value: 'default', + }, + { + label: 'primary', + value: 'primary', + }, + { + label: 'dashed', + value: 'dashed', + }, + ], + }, + initialValue: 'link', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'icon', + 'zh-CN': '图标', + }, + }, + name: 'icon', + setter: { + componentName: 'SlotSetter', + props: { + mode: 'node', + }, + isRequired: false, + initialValue: { + type: 'JSSlot', + value: [], + }, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'shape', + 'zh-CN': '形状', + }, + }, + name: 'shape', + setter: { + componentName: 'RadioGroupSetter', + props: { + dataSource: [ + { + label: 'circle', + value: 'circle', + }, + { + label: 'default', + value: 'default', + }, + { + label: 'round', + value: 'round', + }, + ], + options: [ + { + label: 'circle', + value: 'circle', + }, + { + label: 'default', + value: 'default', + }, + { + label: 'round', + value: 'round', + }, + ], + }, + initialValue: 'default', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'size', + 'zh-CN': '大小', + }, + }, + name: 'size', + setter: { + componentName: 'RadioGroupSetter', + props: { + dataSource: [ + { + label: 'small', + value: 'small', + }, + { + label: 'middle', + value: 'middle', + }, + { + label: 'large', + value: 'large', + }, + ], + options: [ + { + label: 'small', + value: 'small', + }, + { + label: 'middle', + value: 'middle', + }, + { + label: 'large', + value: 'large', + }, + ], + }, + initialValue: 'small', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'disabled', + 'zh-CN': '禁用', + }, + }, + name: 'disabled', + setter: { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'loading', + 'zh-CN': '加载中', + }, + }, + name: 'loading', + setter: { + componentName: 'MixedSetter', + props: { + setters: [ + { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + ], + }, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'prefixCls', + 'zh-CN': 'prefixCls', + }, + }, + name: 'prefixCls', + setter: { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'rootClassName', + 'zh-CN': 'rootClassName', + }, + }, + name: 'rootClassName', + setter: { + componentName: 'StringSetter', + isRequired: false, + initialValue: '', + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'ghost', + 'zh-CN': '幽灵属性', + }, + }, + name: 'ghost', + setter: { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'danger', + 'zh-CN': '危险', + }, + }, + name: 'danger', + setter: { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'block', + 'zh-CN': '按钮宽度调整为其父宽度的选项', + }, + }, + name: 'block', + setter: { + componentName: 'BoolSetter', + isRequired: false, + initialValue: false, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'target', + 'zh-CN': '相当于 a 链接的 target 属性,href 存在时生效', + }, + }, + name: 'target', + setter: { + componentName: 'MixedSetter', + props: { + setters: [ + { + componentName: 'ObjectSetter', + props: { + config: { + extraSetter: { + componentName: 'MixedSetter', + isRequired: false, + props: {}, + }, + }, + }, + isRequired: false, + initialValue: {}, + }, + { + componentName: 'SelectSetter', + props: { + dataSource: [ + { + label: '_self', + value: '_self', + }, + { + label: '_blank', + value: '_blank', + }, + { + label: '_parent', + value: '_parent', + }, + { + label: '_top', + value: '_top', + }, + ], + options: [ + { + label: '_self', + value: '_self', + }, + { + label: '_blank', + value: '_blank', + }, + { + label: '_parent', + value: '_parent', + }, + { + label: '_top', + value: '_top', + }, + ], + }, + initialValue: '_self', + }, + ], + }, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'autoInsertSpace', + 'zh-CN': '汉字之间有空格', + }, + }, + name: 'autoInsertSpace', + setter: { + componentName: 'BoolSetter', + isRequired: false, + initialValue: true, + }, + }, + { + title: { + label: { + 'type': 'i18n', + 'en-US': 'iconPosition', + 'zh-CN': '图标位置', + }, + }, + name: 'iconPosition', + setter: { + componentName: 'RadioGroupSetter', + props: { + dataSource: [ + { + label: 'start', + value: 'start', + }, + { + label: 'end', + value: 'end', + }, + ], + options: [ + { + label: 'start', + value: 'start', + }, + { + label: 'end', + value: 'end', + }, + ], + }, + initialValue: 'start', + }, + }, + ], + supports: { + loop: true, + condition: true, + className: true, + style: true, + events: [ + { + name: 'onClick', + description: '点击按钮时的回调', + template: "onClick(e, ${extParams}){\n// 点击按钮时的回调 \nconsole.log('onChange', e);}", + }, + ], + }, + component: {}, + }, + category: '通用', +}; + +export const ButtonMeta = { + ...ButtonMetaInfo, + snippets: ButtonSnippets, +}; diff --git a/packages/yunti-ui-lowcode-materials/lowcode/Button/snippets.ts b/packages/yunti-ui-lowcode-materials/lowcode/Button/snippets.ts new file mode 100644 index 0000000..8b9506b --- /dev/null +++ b/packages/yunti-ui-lowcode-materials/lowcode/Button/snippets.ts @@ -0,0 +1,47 @@ +import { IPublicTypeSnippet } from '@alilc/lowcode-types'; + +export const ButtonSnippets: IPublicTypeSnippet[] = [ + { + title: '主按钮', + schema: { + componentName: 'Button', + props: { + __component_name: 'Button', + type: 'primary', + children: '创建', + icon: { + type: 'JSSlot', + value: [], + }, + }, + }, + }, + { + title: '次级按钮', + schema: { + componentName: 'Button', + props: { + __component_name: 'Button', + children: '刷新', + icon: { + type: 'JSSlot', + value: [], + }, + }, + }, + }, + { + title: '删除按钮', + schema: { + componentName: 'Button', + props: { + __component_name: 'Button', + type: 'dashed', + icon: { + type: 'JSSlot', + value: [], + }, + }, + }, + }, +]; diff --git a/packages/yunti-ui-lowcode-materials/lowcode/meta.ts b/packages/yunti-ui-lowcode-materials/lowcode/meta.ts index 8cbb6ec..248cb4d 100644 --- a/packages/yunti-ui-lowcode-materials/lowcode/meta.ts +++ b/packages/yunti-ui-lowcode-materials/lowcode/meta.ts @@ -1,5 +1,11 @@ import pkgJson from '../package.json'; +import { AffixMeta } from './Affix/meta'; import { AlertMeta } from './Alert/meta'; +import { AnchorMeta } from './Anchor/meta'; +import { AppMeta } from './App/meta'; +import { AutoCompleteMeta } from './AutoComplete/meta'; +import { AvatarMeta } from './Avatar/meta'; +import { ButtonMeta } from './Button/meta'; import { MonacoDiffEditorMeta, MonacoEditorMeta } from './MonacoEditor/meta'; import { SliderInputMeta } from './SliderInput/meta'; import { TreeMeta } from './Tree/meta'; @@ -9,7 +15,13 @@ const components = [ MonacoEditorMeta, MonacoDiffEditorMeta, SliderInputMeta, + AffixMeta, AlertMeta, + AnchorMeta, + AppMeta, + AutoCompleteMeta, + AvatarMeta, + ButtonMeta, ].map(c => { if (c.npm) { c.npm.version = pkgJson.version;