diff --git a/packages/designer/src/designer/setting/utils.js b/packages/designer/src/designer/setting/utils.js index 991918c54..59085e5f4 100644 --- a/packages/designer/src/designer/setting/utils.js +++ b/packages/designer/src/designer/setting/utils.js @@ -37,9 +37,9 @@ export class Transducer { if (Array.isArray(setter)) { setter = setter[0]; } else if (isValidElement(setter) && setter.type.displayName === 'MixedSetter') { - setter = setter.props.setters[0]; + setter = setter.props?.setters?.[0]; } else if (typeof setter === 'object' && setter.componentName === 'MixedSetter') { - setter = setter.props.setters?.[0]; + setter = setter.props?.setters?.[0]; } if (isSetterConfig(setter)) { diff --git a/packages/editor-setters/src/index.tsx b/packages/editor-setters/src/index.tsx index 474aad89f..4f649a842 100644 --- a/packages/editor-setters/src/index.tsx +++ b/packages/editor-setters/src/index.tsx @@ -4,6 +4,7 @@ import ExpressionSetter from './expression-setter'; import ColorSetter from './color-setter'; import JsonSetter from './json-setter'; import EventsSetter from './events-setter'; +import MixedSetter from './mixed-setter'; export const StringSetter = { component: Input, @@ -29,7 +30,12 @@ export const DateYearSetter = DatePicker.YearPicker; export const DateMonthSetter = DatePicker.MonthPicker; export const DateRangeSetter = DatePicker.RangePicker; -export { ExpressionSetter, EventsSetter }; +export { + ExpressionSetter, + EventsSetter, + JsonSetter, + MixedSetter, +}; const builtinSetters: any = { StringSetter, @@ -51,6 +57,7 @@ const builtinSetters: any = { EventsSetter, ColorSetter, JsonSetter, + MixedSetter, }; registerSetter(builtinSetters); diff --git a/packages/editor-setters/src/mixed-setter/index.scss b/packages/editor-setters/src/mixed-setter/index.scss new file mode 100644 index 000000000..9a9e3f086 --- /dev/null +++ b/packages/editor-setters/src/mixed-setter/index.scss @@ -0,0 +1,13 @@ +// mixed +.lowcode-setter-mixed > * { + vertical-align: middle; +} +.lowcode-setter-mixed { + width: 86%; +} +.lowcode-setter-mixed .next-input { + width: 100%; +} +.lowcode-setter-mixed .next-select-trigger { + width: 100%; +} \ No newline at end of file diff --git a/packages/editor-setters/src/mixin-setter/index.tsx b/packages/editor-setters/src/mixed-setter/index.tsx similarity index 96% rename from packages/editor-setters/src/mixin-setter/index.tsx rename to packages/editor-setters/src/mixed-setter/index.tsx index a77664758..a41427dc1 100644 --- a/packages/editor-setters/src/mixin-setter/index.tsx +++ b/packages/editor-setters/src/mixed-setter/index.tsx @@ -8,8 +8,8 @@ import { generateI18n } from './locale/utils'; import zhCN from './locale/zh-CN'; import './index.scss'; -export default class Mixin extends PureComponent { - static displayName = 'Mixin'; +export default class Mixed extends PureComponent { + static displayName = 'Mixed'; static propTypes = { locale: PropTypes.string, messages: PropTypes.object, @@ -147,7 +147,7 @@ export default class Mixin extends PureComponent { let TargetNode = this.typeMap[this.state.type]?.component || 'div'; let targetProps = this.typeMap[this.state.type]?.props || {}; let tarStyle = { position: 'relative', ...style }; - let classes = classNames(className, 'lowcode-setter-mixin'); + let classes = classNames(className, 'lowcode-setter-mixed'); return (
diff --git a/packages/editor-setters/src/mixin-setter/locale/utils.js b/packages/editor-setters/src/mixed-setter/locale/utils.js similarity index 100% rename from packages/editor-setters/src/mixin-setter/locale/utils.js rename to packages/editor-setters/src/mixed-setter/locale/utils.js diff --git a/packages/editor-setters/src/mixin-setter/locale/zh-CN.js b/packages/editor-setters/src/mixed-setter/locale/zh-CN.js similarity index 100% rename from packages/editor-setters/src/mixin-setter/locale/zh-CN.js rename to packages/editor-setters/src/mixed-setter/locale/zh-CN.js diff --git a/packages/editor-setters/src/mixin-setter/index.scss b/packages/editor-setters/src/mixin-setter/index.scss deleted file mode 100644 index 5e793311c..000000000 --- a/packages/editor-setters/src/mixin-setter/index.scss +++ /dev/null @@ -1,13 +0,0 @@ -// mixin -.lowcode-setter-mixin > * { - vertical-align: middle; -} -.lowcode-setter-mixin { - width: 86%; -} -.lowcode-setter-mixin .next-input { - width: 100%; -} -.lowcode-setter-mixin .next-select-trigger { - width: 100%; -} \ No newline at end of file