@luck-design-biz/luckda 0.0.23 → 0.0.24-2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/components/Builder/index.js +6 -4
- package/es/components/LdFormList/index.js +1 -4
- package/es/components/LdGrid/index.js +12 -3
- package/es/lowcode/constants/api-url.js +292 -1
- package/es/lowcode/constants/event-topics.js +14 -1
- package/es/lowcode/engine/factory/panel-item-factory/DynamicStrategy.js +60 -0
- package/es/lowcode/engine/factory/panel-item-factory/GroupStrategy.js +32 -0
- package/es/lowcode/engine/factory/panel-item-factory/NumberStrategy.js +32 -0
- package/es/lowcode/engine/factory/panel-item-factory/SegmentedStrategy.js +32 -0
- package/es/lowcode/engine/factory/panel-item-factory/SelectStrategy.js +53 -0
- package/es/lowcode/engine/factory/panel-item-factory/Strategy.js +21 -0
- package/es/lowcode/engine/factory/panel-item-factory/StringStrategy.js +51 -0
- package/es/lowcode/engine/factory/panel-item-factory/SwitchStrategy.js +42 -0
- package/es/lowcode/engine/factory/panel-item-factory/index.js +44 -0
- package/es/lowcode/engine/meta/box.props.default.json +12 -0
- package/es/lowcode/engine/meta/box.props.json +42 -0
- package/es/lowcode/engine/meta/button.props.default.json +15 -7
- package/es/lowcode/engine/meta/{components/button.json → button.props.json} +126 -103
- package/es/lowcode/engine/meta/cardlist.props.default.json +17 -9
- package/es/lowcode/engine/meta/{components/card-list.json → cardlist.props.json} +143 -142
- package/es/lowcode/engine/meta/components-list.json +127 -121
- package/es/lowcode/engine/meta/dialog.props.default.json +19 -0
- package/{lib/lowcode/engine/meta/components/modal.json → es/lowcode/engine/meta/dialog.props.json} +120 -119
- package/es/lowcode/engine/meta/drawer.props.default.json +17 -9
- package/{lib/lowcode/engine/meta/components/drawer.json → es/lowcode/engine/meta/drawer.props.json} +143 -142
- package/es/lowcode/engine/meta/form.props.default.json +12 -4
- package/{lib/lowcode/engine/meta/components/form.json → es/lowcode/engine/meta/form.props.json} +116 -115
- package/es/lowcode/engine/meta/iframe.props.default.json +10 -2
- package/es/lowcode/engine/meta/{components/iframe.json → iframe.props.json} +31 -30
- package/es/lowcode/engine/meta/image.props.default.json +15 -7
- package/es/lowcode/engine/meta/{components/image.json → image.props.json} +113 -112
- package/es/lowcode/engine/meta/imex.props.default.json +11 -3
- package/{lib/lowcode/engine/meta/components/imex.json → es/lowcode/engine/meta/imex.props.json} +81 -80
- package/es/lowcode/engine/meta/js-editor/auto-complete.json +29 -0
- package/es/lowcode/engine/meta/jsx.props.default.json +10 -1
- package/es/lowcode/engine/meta/{components/jsx.json → jsx.props.json} +24 -23
- package/es/lowcode/engine/meta/layout.props.default.json +12 -4
- package/{lib/lowcode/engine/meta/components/layout.json → es/lowcode/engine/meta/layout.props.json} +107 -106
- package/es/lowcode/engine/meta/link.props.default.json +13 -5
- package/{lib/lowcode/engine/meta/components/link.json → es/lowcode/engine/meta/link.props.json} +111 -110
- package/es/lowcode/engine/meta/section.props.default.json +16 -8
- package/{lib/lowcode/engine/meta/components/section.json → es/lowcode/engine/meta/section.props.json} +107 -106
- package/es/lowcode/engine/meta/split.props.default.json +12 -4
- package/es/lowcode/engine/meta/{components/split.json → split.props.json} +71 -70
- package/es/lowcode/engine/meta/table.props.default.json +29 -9
- package/es/lowcode/engine/meta/table.props.json +236 -0
- package/es/lowcode/engine/meta/tabs.props.default.json +17 -9
- package/es/lowcode/engine/meta/{components/tabs.json → tabs.props.json} +140 -139
- package/es/lowcode/engine/meta/text.props.default.json +11 -3
- package/{lib/lowcode/engine/meta/components/text.json → es/lowcode/engine/meta/text.props.json} +65 -64
- package/es/lowcode/engine/meta/tree.props.default.json +16 -8
- package/es/lowcode/engine/meta/{components/tree.json → tree.props.json} +156 -155
- package/es/lowcode/engine/provider/ContextProvider.js +46 -41
- package/es/lowcode/engine/provider/EventBusProvider.js +2 -2
- package/es/lowcode/engine/tools/dataProcess.js +85 -8
- package/es/lowcode/engine/tools/helper.js +68 -0
- package/es/lowcode/engine/tools/usePromiseState.js +24 -0
- package/es/lowcode/index.js +3 -1
- package/es/lowcode/painter/Design.js +40 -85
- package/es/lowcode/painter/DesignOperator.js +271 -0
- package/es/lowcode/painter/DesignToolbar.js +91 -0
- package/es/lowcode/painter/I18n.js +202 -2
- package/es/lowcode/painter/Outline.js +63 -54
- package/es/lowcode/painter/Panel.js +239 -2
- package/es/lowcode/painter/Ribbon.js +61 -55
- package/es/lowcode/painter/components/Collapse.js +90 -0
- package/es/lowcode/painter/components/ColorInput.js +125 -0
- package/es/lowcode/painter/components/ListEditor.js +89 -0
- package/es/lowcode/painter/components/NumberInput.js +148 -0
- package/es/lowcode/painter/components/PanelItem.js +83 -11
- package/es/lowcode/painter/components/PopConfirm.js +23 -0
- package/es/lowcode/painter/components/PopForm.js +71 -0
- package/es/lowcode/painter/components/RuleInput.js +9 -7
- package/es/lowcode/painter/components/SortBox.js +92 -0
- package/es/lowcode/painter/components/actions-editor/ActionEditor.js +147 -0
- package/es/lowcode/painter/components/actions-editor/index.js +170 -0
- package/es/lowcode/painter/components/code-editor/BaseEditor.js +96 -0
- package/es/lowcode/painter/components/code-editor/CssEditor.js +41 -0
- package/es/lowcode/painter/components/code-editor/FullScreenEditor.js +87 -0
- package/es/lowcode/painter/components/code-editor/JSEditor.js +106 -0
- package/es/lowcode/painter/components/code-editor/index.js +2 -0
- package/es/lowcode/painter/index.js +33 -3
- package/es/lowcode/painter/panel-section/ButtonType.js +39 -0
- package/es/lowcode/painter/panel-section/DataSetSelector.js +61 -0
- package/es/lowcode/painter/panel-section/Icon.js +48 -0
- package/es/lowcode/painter/panel-section/IconSelector.js +134 -0
- package/es/lowcode/painter/panel-section/LayoutRatio.js +57 -49
- package/es/lowcode/painter/panel-section/StylePanel/BackGround.js +61 -0
- package/es/lowcode/painter/panel-section/StylePanel/Border.js +150 -0
- package/es/lowcode/painter/panel-section/StylePanel/BorderRadius.js +87 -0
- package/es/lowcode/painter/panel-section/StylePanel/BorderRadiusSelector.js +66 -0
- package/es/lowcode/painter/panel-section/StylePanel/BorderSelector.js +66 -0
- package/es/lowcode/painter/panel-section/StylePanel/Display.js +296 -0
- package/es/lowcode/painter/panel-section/StylePanel/DisplaySvg.js +543 -0
- package/es/lowcode/painter/panel-section/StylePanel/Font.js +162 -0
- package/es/lowcode/painter/panel-section/StylePanel/FontEditor.js +386 -0
- package/es/lowcode/painter/panel-section/StylePanel/GapSelector.js +78 -0
- package/es/lowcode/painter/panel-section/StylePanel/HighLightPanel.js +23 -0
- package/es/lowcode/painter/panel-section/StylePanel/HighLigthtSpan.js +20 -0
- package/es/lowcode/painter/panel-section/StylePanel/HightLightSvg.js +23 -0
- package/es/lowcode/painter/panel-section/StylePanel/MainPanel.js +96 -0
- package/es/lowcode/painter/panel-section/StylePanel/Margin.js +60 -0
- package/es/lowcode/painter/panel-section/StylePanel/Opacity.js +50 -0
- package/es/lowcode/painter/panel-section/StylePanel/Padding.js +61 -0
- package/es/lowcode/painter/panel-section/StylePanel/Pointer.js +41 -0
- package/es/lowcode/painter/panel-section/StylePanel/Shadow.js +216 -0
- package/es/lowcode/painter/panel-section/StylePanel/Size.js +53 -0
- package/es/lowcode/painter/panel-section/StylePanel/StyleContext.js +148 -0
- package/es/lowcode/painter/panel-section/StylePanel/StyleRow.js +16 -0
- package/es/lowcode/painter/panel-section/StylePanel/WidthHeight.js +51 -0
- package/es/lowcode/painter/panel-section/StylePanel/index.js +29 -0
- package/es/lowcode/painter/panel-section/TabItems.js +207 -0
- package/es/lowcode/painter/panel-section/TableActions.js +19 -0
- package/es/lowcode/painter/panel-section/TableZebra.js +14 -0
- package/es/lowcode/painter/panel-section/WidthHeight.js +39 -0
- package/es/lowcode/painter/services/I18n.js +85 -0
- package/es/lowcode/painter/style/actions-editor.less +16 -0
- package/es/lowcode/painter/style/border-editor.less +36 -0
- package/es/lowcode/painter/style/border-radius-selector.less +43 -0
- package/es/lowcode/painter/style/border-selector.less +40 -0
- package/es/lowcode/painter/style/button-type.less +5 -0
- package/es/lowcode/painter/style/collapse.less +22 -0
- package/es/lowcode/painter/style/color-input.less +19 -0
- package/es/lowcode/painter/style/design.less +116 -5
- package/es/lowcode/painter/style/display.less +17 -0
- package/es/lowcode/painter/style/font-editor.less +9 -0
- package/es/lowcode/painter/style/fullscreen-editor.less +17 -0
- package/es/lowcode/painter/style/icon-selector.less +22 -0
- package/es/lowcode/painter/style/icon.less +11 -0
- package/es/lowcode/painter/style/index.less +0 -1
- package/es/lowcode/painter/style/layout-ratio.less +1 -1
- package/es/lowcode/painter/style/list-editor.less +59 -0
- package/es/lowcode/painter/style/number-input.less +17 -0
- package/es/lowcode/painter/style/outline.less +2 -0
- package/es/lowcode/painter/style/panel-item.less +45 -12
- package/es/lowcode/painter/style/panel.less +124 -0
- package/es/lowcode/painter/style/pop-confirm.less +10 -0
- package/es/lowcode/painter/style/pop-form.less +20 -0
- package/es/lowcode/painter/style/ribbon.less +1 -0
- package/es/lowcode/painter/style/style-panel.less +37 -0
- package/es/lowcode/painter/style/tabitems.less +90 -0
- package/es/lowcode/view/Canvas.js +79 -70
- package/es/lowcode/view/Page.js +10 -28
- package/es/lowcode/view/index.js +5 -6
- package/es/lowcode/view/lc-components/Box/FunctionDesign.js +20 -0
- package/es/lowcode/view/lc-components/Box/FunctionLive.js +9 -0
- package/es/lowcode/view/lc-components/Box/index.js +22 -5
- package/es/lowcode/view/lc-components/Box/index.less +15 -0
- package/es/lowcode/view/lc-components/Box/meta.json +42 -0
- package/es/lowcode/view/lc-components/Button/FunctionDesign.js +21 -0
- package/es/lowcode/view/lc-components/Button/FunctionLive.js +9 -0
- package/es/lowcode/view/lc-components/Button/index.js +75 -7
- package/es/lowcode/view/lc-components/Button/meta.json +127 -0
- package/es/lowcode/view/lc-components/Button/style.less +3 -0
- package/es/lowcode/view/lc-components/CardList/FunctionDesign.js +9 -0
- package/es/lowcode/view/lc-components/CardList/FunctionLive.js +9 -0
- package/{lib/lowcode/engine/meta/components/table.json → es/lowcode/view/lc-components/CardList/meta.json} +11 -28
- package/es/lowcode/view/lc-components/Dialog/FunctionDesign.js +54 -0
- package/es/lowcode/view/lc-components/Dialog/FunctionLive.js +9 -0
- package/es/lowcode/view/lc-components/Dialog/index.js +20 -11
- package/es/lowcode/view/lc-components/Dialog/index.less +1 -1
- package/es/lowcode/view/lc-components/Dialog/meta.json +121 -0
- package/es/lowcode/view/lc-components/Drawer/FunctionDesign.js +20 -0
- package/es/lowcode/view/lc-components/Drawer/FunctionLive.js +9 -0
- package/es/lowcode/view/lc-components/Drawer/index.js +22 -9
- package/es/lowcode/view/lc-components/Drawer/index.less +7 -0
- package/es/lowcode/view/lc-components/Drawer/meta.json +144 -0
- package/es/lowcode/view/lc-components/Form/FunctionDesign.js +9 -0
- package/es/lowcode/view/lc-components/Form/FunctionLive.js +9 -0
- package/es/lowcode/view/lc-components/Form/meta.json +117 -0
- package/es/lowcode/view/lc-components/Iframe/FunctionDesign.js +9 -0
- package/es/lowcode/view/lc-components/Iframe/FunctionLive.js +9 -0
- package/es/lowcode/view/lc-components/Iframe/meta.json +32 -0
- package/es/lowcode/view/lc-components/ImEx/FunctionDesign.js +9 -0
- package/es/lowcode/view/lc-components/ImEx/FunctionLive.js +9 -0
- package/es/lowcode/view/lc-components/ImEx/meta.json +82 -0
- package/es/lowcode/view/lc-components/Image/FunctionDesign.js +9 -0
- package/es/lowcode/view/lc-components/Image/FunctionLive.js +9 -0
- package/es/lowcode/view/lc-components/Image/meta.json +114 -0
- package/es/lowcode/view/lc-components/JSX/FunctionDesign.js +9 -0
- package/es/lowcode/view/lc-components/JSX/FunctionLive.js +9 -0
- package/es/lowcode/view/lc-components/JSX/meta.json +25 -0
- package/es/lowcode/view/lc-components/Layout/FunctionDesign.js +75 -0
- package/es/lowcode/view/lc-components/Layout/FunctionLive.js +15 -0
- package/es/lowcode/view/lc-components/Layout/index.js +40 -7
- package/es/lowcode/view/lc-components/Layout/index.less +5 -0
- package/es/lowcode/view/lc-components/Layout/meta.json +108 -0
- package/es/lowcode/view/lc-components/Link/FunctionDesign.js +9 -0
- package/es/lowcode/view/lc-components/Link/FunctionLive.js +9 -0
- package/es/lowcode/view/lc-components/Link/meta.json +112 -0
- package/es/lowcode/view/lc-components/Section/FunctionDesign.js +9 -0
- package/es/lowcode/view/lc-components/Section/FunctionLive.js +9 -0
- package/es/lowcode/view/lc-components/Section/meta.json +108 -0
- package/es/lowcode/view/lc-components/Split/FunctionDesign.js +9 -0
- package/es/lowcode/view/lc-components/Split/FunctionLive.js +9 -0
- package/es/lowcode/view/lc-components/Split/meta.json +72 -0
- package/es/lowcode/view/lc-components/Table/FunctionDesign.js +18 -0
- package/es/lowcode/view/lc-components/Table/FunctionLive.js +9 -0
- package/es/lowcode/view/lc-components/Table/index.js +229 -9
- package/es/lowcode/view/lc-components/Table/meta.json +225 -0
- package/es/lowcode/view/lc-components/Tabs/FunctionDesign.js +9 -0
- package/es/lowcode/view/lc-components/Tabs/FunctionLive.js +9 -0
- package/es/lowcode/view/lc-components/Tabs/meta.json +141 -0
- package/es/lowcode/view/lc-components/Text/FunctionDesign.js +9 -0
- package/es/lowcode/view/lc-components/Text/FunctionLive.js +9 -0
- package/es/lowcode/view/lc-components/Text/meta.json +66 -0
- package/es/lowcode/view/lc-components/Tree/FunctionDesign.js +9 -0
- package/es/lowcode/view/lc-components/Tree/FunctionLive.js +9 -0
- package/es/lowcode/view/lc-components/Tree/meta.json +157 -0
- package/es/lowcode/view/lc-components/Wrapper.js +32 -23
- package/es/lowcode/view/style/page.less +0 -1
- package/es/upload/Form/gridForm.js +1 -1
- package/es/utils/grid.js +4 -3
- package/lib/components/Builder/index.js +5 -3
- package/lib/components/LdFormList/index.js +1 -5
- package/lib/components/LdGrid/index.js +12 -3
- package/lib/lowcode/constants/api-url.js +294 -2
- package/lib/lowcode/constants/event-topics.js +15 -2
- package/lib/lowcode/engine/factory/panel-item-factory/DynamicStrategy.js +73 -0
- package/lib/lowcode/engine/factory/panel-item-factory/GroupStrategy.js +38 -0
- package/lib/lowcode/engine/factory/panel-item-factory/NumberStrategy.js +38 -0
- package/lib/lowcode/engine/factory/panel-item-factory/SegmentedStrategy.js +38 -0
- package/lib/lowcode/engine/factory/panel-item-factory/SelectStrategy.js +59 -0
- package/lib/lowcode/engine/factory/panel-item-factory/Strategy.js +27 -0
- package/lib/lowcode/engine/factory/panel-item-factory/StringStrategy.js +57 -0
- package/lib/lowcode/engine/factory/panel-item-factory/SwitchStrategy.js +48 -0
- package/lib/lowcode/engine/factory/panel-item-factory/index.js +50 -0
- package/lib/lowcode/engine/meta/box.props.default.json +12 -0
- package/lib/lowcode/engine/meta/box.props.json +42 -0
- package/lib/lowcode/engine/meta/button.props.default.json +15 -7
- package/lib/lowcode/engine/meta/{components/button.json → button.props.json} +126 -103
- package/lib/lowcode/engine/meta/cardlist.props.default.json +17 -9
- package/lib/lowcode/engine/meta/{components/card-list.json → cardlist.props.json} +143 -142
- package/lib/lowcode/engine/meta/components-list.json +127 -121
- package/lib/lowcode/engine/meta/dialog.props.default.json +19 -0
- package/{es/lowcode/engine/meta/components/modal.json → lib/lowcode/engine/meta/dialog.props.json} +120 -119
- package/lib/lowcode/engine/meta/drawer.props.default.json +17 -9
- package/{es/lowcode/engine/meta/components/drawer.json → lib/lowcode/engine/meta/drawer.props.json} +143 -142
- package/lib/lowcode/engine/meta/form.props.default.json +12 -4
- package/{es/lowcode/engine/meta/components/form.json → lib/lowcode/engine/meta/form.props.json} +116 -115
- package/lib/lowcode/engine/meta/iframe.props.default.json +10 -2
- package/lib/lowcode/engine/meta/{components/iframe.json → iframe.props.json} +31 -30
- package/lib/lowcode/engine/meta/image.props.default.json +15 -7
- package/lib/lowcode/engine/meta/{components/image.json → image.props.json} +113 -112
- package/lib/lowcode/engine/meta/imex.props.default.json +11 -3
- package/{es/lowcode/engine/meta/components/imex.json → lib/lowcode/engine/meta/imex.props.json} +81 -80
- package/lib/lowcode/engine/meta/js-editor/auto-complete.json +29 -0
- package/lib/lowcode/engine/meta/jsx.props.default.json +10 -1
- package/lib/lowcode/engine/meta/{components/jsx.json → jsx.props.json} +24 -23
- package/lib/lowcode/engine/meta/layout.props.default.json +12 -4
- package/{es/lowcode/engine/meta/components/layout.json → lib/lowcode/engine/meta/layout.props.json} +107 -106
- package/lib/lowcode/engine/meta/link.props.default.json +13 -5
- package/{es/lowcode/engine/meta/components/link.json → lib/lowcode/engine/meta/link.props.json} +111 -110
- package/lib/lowcode/engine/meta/section.props.default.json +16 -8
- package/{es/lowcode/engine/meta/components/section.json → lib/lowcode/engine/meta/section.props.json} +107 -106
- package/lib/lowcode/engine/meta/split.props.default.json +12 -4
- package/lib/lowcode/engine/meta/{components/split.json → split.props.json} +71 -70
- package/lib/lowcode/engine/meta/table.props.default.json +29 -9
- package/lib/lowcode/engine/meta/table.props.json +236 -0
- package/lib/lowcode/engine/meta/tabs.props.default.json +17 -9
- package/lib/lowcode/engine/meta/{components/tabs.json → tabs.props.json} +140 -139
- package/lib/lowcode/engine/meta/text.props.default.json +11 -3
- package/{es/lowcode/engine/meta/components/text.json → lib/lowcode/engine/meta/text.props.json} +65 -64
- package/lib/lowcode/engine/meta/tree.props.default.json +16 -8
- package/lib/lowcode/engine/meta/{components/tree.json → tree.props.json} +156 -155
- package/lib/lowcode/engine/provider/ContextProvider.js +46 -41
- package/lib/lowcode/engine/provider/EventBusProvider.js +2 -2
- package/lib/lowcode/engine/tools/dataProcess.js +86 -8
- package/lib/lowcode/engine/tools/helper.js +70 -0
- package/lib/lowcode/engine/tools/usePromiseState.js +31 -0
- package/lib/lowcode/index.js +5 -1
- package/lib/lowcode/painter/Design.js +39 -84
- package/lib/lowcode/painter/DesignOperator.js +278 -0
- package/lib/lowcode/painter/DesignToolbar.js +99 -0
- package/lib/lowcode/painter/I18n.js +203 -2
- package/lib/lowcode/painter/Outline.js +62 -53
- package/lib/lowcode/painter/Panel.js +238 -1
- package/lib/lowcode/painter/Ribbon.js +63 -64
- package/lib/lowcode/painter/components/Collapse.js +97 -0
- package/lib/lowcode/painter/components/ColorInput.js +132 -0
- package/lib/lowcode/painter/components/ListEditor.js +95 -0
- package/lib/lowcode/painter/components/NumberInput.js +155 -0
- package/lib/lowcode/painter/components/PanelItem.js +84 -11
- package/lib/lowcode/painter/components/PopConfirm.js +29 -0
- package/lib/lowcode/painter/components/PopForm.js +77 -0
- package/lib/lowcode/painter/components/RuleInput.js +9 -7
- package/lib/lowcode/painter/components/SortBox.js +99 -0
- package/lib/lowcode/painter/components/actions-editor/ActionEditor.js +155 -0
- package/lib/lowcode/painter/components/actions-editor/index.js +178 -0
- package/lib/lowcode/painter/components/code-editor/BaseEditor.js +103 -0
- package/lib/lowcode/painter/components/code-editor/CssEditor.js +48 -0
- package/lib/lowcode/painter/components/code-editor/FullScreenEditor.js +94 -0
- package/lib/lowcode/painter/components/code-editor/JSEditor.js +117 -0
- package/lib/lowcode/painter/components/code-editor/index.js +20 -0
- package/lib/lowcode/painter/index.js +35 -3
- package/lib/lowcode/painter/panel-section/ButtonType.js +46 -0
- package/lib/lowcode/painter/panel-section/DataSetSelector.js +69 -0
- package/lib/lowcode/painter/panel-section/Icon.js +54 -0
- package/lib/lowcode/painter/panel-section/IconSelector.js +141 -0
- package/lib/lowcode/painter/panel-section/LayoutRatio.js +56 -48
- package/lib/lowcode/painter/panel-section/StylePanel/BackGround.js +68 -0
- package/lib/lowcode/painter/panel-section/StylePanel/Border.js +158 -0
- package/lib/lowcode/painter/panel-section/StylePanel/BorderRadius.js +95 -0
- package/lib/lowcode/painter/panel-section/StylePanel/BorderRadiusSelector.js +73 -0
- package/lib/lowcode/painter/panel-section/StylePanel/BorderSelector.js +73 -0
- package/lib/lowcode/painter/panel-section/StylePanel/Display.js +303 -0
- package/lib/lowcode/painter/panel-section/StylePanel/DisplaySvg.js +550 -0
- package/lib/lowcode/painter/panel-section/StylePanel/Font.js +170 -0
- package/lib/lowcode/painter/panel-section/StylePanel/FontEditor.js +392 -0
- package/lib/lowcode/painter/panel-section/StylePanel/GapSelector.js +85 -0
- package/lib/lowcode/painter/panel-section/StylePanel/HighLightPanel.js +29 -0
- package/lib/lowcode/painter/panel-section/StylePanel/HighLigthtSpan.js +26 -0
- package/lib/lowcode/painter/panel-section/StylePanel/HightLightSvg.js +29 -0
- package/lib/lowcode/painter/panel-section/StylePanel/MainPanel.js +103 -0
- package/lib/lowcode/painter/panel-section/StylePanel/Margin.js +67 -0
- package/lib/lowcode/painter/panel-section/StylePanel/Opacity.js +57 -0
- package/lib/lowcode/painter/panel-section/StylePanel/Padding.js +68 -0
- package/lib/lowcode/painter/panel-section/StylePanel/Pointer.js +48 -0
- package/lib/lowcode/painter/panel-section/StylePanel/Shadow.js +224 -0
- package/lib/lowcode/painter/panel-section/StylePanel/Size.js +59 -0
- package/lib/lowcode/painter/panel-section/StylePanel/StyleContext.js +159 -0
- package/lib/lowcode/painter/panel-section/StylePanel/StyleRow.js +22 -0
- package/lib/lowcode/painter/panel-section/StylePanel/WidthHeight.js +58 -0
- package/lib/lowcode/painter/panel-section/StylePanel/index.js +35 -0
- package/lib/lowcode/painter/panel-section/TabItems.js +215 -0
- package/lib/lowcode/painter/panel-section/TableActions.js +26 -0
- package/lib/lowcode/painter/panel-section/TableZebra.js +21 -0
- package/lib/lowcode/painter/panel-section/WidthHeight.js +46 -0
- package/lib/lowcode/painter/services/I18n.js +95 -0
- package/lib/lowcode/painter/style/actions-editor.less +16 -0
- package/lib/lowcode/painter/style/border-editor.less +36 -0
- package/lib/lowcode/painter/style/border-radius-selector.less +43 -0
- package/lib/lowcode/painter/style/border-selector.less +40 -0
- package/lib/lowcode/painter/style/button-type.less +5 -0
- package/lib/lowcode/painter/style/collapse.less +22 -0
- package/lib/lowcode/painter/style/color-input.less +19 -0
- package/lib/lowcode/painter/style/design.less +116 -5
- package/lib/lowcode/painter/style/display.less +17 -0
- package/lib/lowcode/painter/style/font-editor.less +9 -0
- package/lib/lowcode/painter/style/fullscreen-editor.less +17 -0
- package/lib/lowcode/painter/style/icon-selector.less +22 -0
- package/lib/lowcode/painter/style/icon.less +11 -0
- package/lib/lowcode/painter/style/index.less +0 -1
- package/lib/lowcode/painter/style/layout-ratio.less +1 -1
- package/lib/lowcode/painter/style/list-editor.less +59 -0
- package/lib/lowcode/painter/style/number-input.less +17 -0
- package/lib/lowcode/painter/style/outline.less +2 -0
- package/lib/lowcode/painter/style/panel-item.less +45 -12
- package/lib/lowcode/painter/style/panel.less +124 -0
- package/lib/lowcode/painter/style/pop-confirm.less +10 -0
- package/lib/lowcode/painter/style/pop-form.less +20 -0
- package/lib/lowcode/painter/style/ribbon.less +1 -0
- package/lib/lowcode/painter/style/style-panel.less +37 -0
- package/lib/lowcode/painter/style/tabitems.less +90 -0
- package/lib/lowcode/view/Canvas.js +84 -75
- package/lib/lowcode/view/Page.js +9 -27
- package/lib/lowcode/view/index.js +5 -6
- package/lib/lowcode/view/lc-components/Box/FunctionDesign.js +27 -0
- package/lib/lowcode/view/lc-components/Box/FunctionLive.js +16 -0
- package/lib/lowcode/view/lc-components/Box/index.js +23 -6
- package/lib/lowcode/view/lc-components/Box/index.less +15 -0
- package/lib/lowcode/view/lc-components/Box/meta.json +42 -0
- package/lib/lowcode/view/lc-components/Button/FunctionDesign.js +28 -0
- package/lib/lowcode/view/lc-components/Button/FunctionLive.js +16 -0
- package/lib/lowcode/view/lc-components/Button/index.js +76 -8
- package/lib/lowcode/view/lc-components/Button/meta.json +127 -0
- package/lib/lowcode/view/lc-components/Button/style.less +3 -0
- package/lib/lowcode/view/lc-components/CardList/FunctionDesign.js +16 -0
- package/lib/lowcode/view/lc-components/CardList/FunctionLive.js +16 -0
- package/{es/lowcode/engine/meta/components/table.json → lib/lowcode/view/lc-components/CardList/meta.json} +11 -28
- package/lib/lowcode/view/lc-components/Dialog/FunctionDesign.js +62 -0
- package/lib/lowcode/view/lc-components/Dialog/FunctionLive.js +16 -0
- package/lib/lowcode/view/lc-components/Dialog/index.js +20 -11
- package/lib/lowcode/view/lc-components/Dialog/index.less +1 -1
- package/lib/lowcode/view/lc-components/Dialog/meta.json +121 -0
- package/lib/lowcode/view/lc-components/Drawer/FunctionDesign.js +27 -0
- package/lib/lowcode/view/lc-components/Drawer/FunctionLive.js +16 -0
- package/lib/lowcode/view/lc-components/Drawer/index.js +22 -9
- package/lib/lowcode/view/lc-components/Drawer/index.less +7 -0
- package/lib/lowcode/view/lc-components/Drawer/meta.json +144 -0
- package/lib/lowcode/view/lc-components/Form/FunctionDesign.js +16 -0
- package/lib/lowcode/view/lc-components/Form/FunctionLive.js +16 -0
- package/lib/lowcode/view/lc-components/Form/meta.json +117 -0
- package/lib/lowcode/view/lc-components/Iframe/FunctionDesign.js +16 -0
- package/lib/lowcode/view/lc-components/Iframe/FunctionLive.js +16 -0
- package/lib/lowcode/view/lc-components/Iframe/meta.json +32 -0
- package/lib/lowcode/view/lc-components/ImEx/FunctionDesign.js +16 -0
- package/lib/lowcode/view/lc-components/ImEx/FunctionLive.js +16 -0
- package/lib/lowcode/view/lc-components/ImEx/meta.json +82 -0
- package/lib/lowcode/view/lc-components/Image/FunctionDesign.js +16 -0
- package/lib/lowcode/view/lc-components/Image/FunctionLive.js +16 -0
- package/lib/lowcode/view/lc-components/Image/meta.json +114 -0
- package/lib/lowcode/view/lc-components/JSX/FunctionDesign.js +16 -0
- package/lib/lowcode/view/lc-components/JSX/FunctionLive.js +16 -0
- package/lib/lowcode/view/lc-components/JSX/meta.json +25 -0
- package/lib/lowcode/view/lc-components/Layout/FunctionDesign.js +82 -0
- package/lib/lowcode/view/lc-components/Layout/FunctionLive.js +22 -0
- package/lib/lowcode/view/lc-components/Layout/index.js +41 -8
- package/lib/lowcode/view/lc-components/Layout/index.less +5 -0
- package/lib/lowcode/view/lc-components/Layout/meta.json +108 -0
- package/lib/lowcode/view/lc-components/Link/FunctionDesign.js +16 -0
- package/lib/lowcode/view/lc-components/Link/FunctionLive.js +16 -0
- package/lib/lowcode/view/lc-components/Link/meta.json +112 -0
- package/lib/lowcode/view/lc-components/Section/FunctionDesign.js +16 -0
- package/lib/lowcode/view/lc-components/Section/FunctionLive.js +16 -0
- package/lib/lowcode/view/lc-components/Section/meta.json +108 -0
- package/lib/lowcode/view/lc-components/Split/FunctionDesign.js +16 -0
- package/lib/lowcode/view/lc-components/Split/FunctionLive.js +16 -0
- package/lib/lowcode/view/lc-components/Split/meta.json +72 -0
- package/lib/lowcode/view/lc-components/Table/FunctionDesign.js +25 -0
- package/lib/lowcode/view/lc-components/Table/FunctionLive.js +16 -0
- package/lib/lowcode/view/lc-components/Table/index.js +228 -8
- package/lib/lowcode/view/lc-components/Table/meta.json +225 -0
- package/lib/lowcode/view/lc-components/Tabs/FunctionDesign.js +16 -0
- package/lib/lowcode/view/lc-components/Tabs/FunctionLive.js +16 -0
- package/lib/lowcode/view/lc-components/Tabs/meta.json +141 -0
- package/lib/lowcode/view/lc-components/Text/FunctionDesign.js +16 -0
- package/lib/lowcode/view/lc-components/Text/FunctionLive.js +16 -0
- package/lib/lowcode/view/lc-components/Text/meta.json +66 -0
- package/lib/lowcode/view/lc-components/Tree/FunctionDesign.js +16 -0
- package/lib/lowcode/view/lc-components/Tree/FunctionLive.js +16 -0
- package/lib/lowcode/view/lc-components/Tree/meta.json +157 -0
- package/lib/lowcode/view/lc-components/Wrapper.js +30 -21
- package/lib/lowcode/view/style/page.less +0 -1
- package/lib/upload/Form/gridForm.js +1 -1
- package/lib/utils/grid.js +6 -5
- package/package.json +15 -6
- package/es/lowcode/engine/meta/modal.props.default.json +0 -11
- package/es/lowcode/engine/tools/lcid.js +0 -16
- package/es/lowcode/painter/panel-section/Radio.js +0 -58
- package/lib/lowcode/engine/meta/modal.props.default.json +0 -11
- package/lib/lowcode/engine/tools/lcid.js +0 -22
- package/lib/lowcode/painter/panel-section/Radio.js +0 -65
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.PopFormItemRight = exports.PopFormItemLeft = exports.PopFormItem = exports.PopForm = void 0;
|
|
8
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
|
+
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
10
|
+
var _react = _interopRequireDefault(require("react"));
|
|
11
|
+
var _popForm = _interopRequireDefault(require("../style/pop-form.less"));
|
|
12
|
+
var _excluded = ["children"],
|
|
13
|
+
_excluded2 = ["children"],
|
|
14
|
+
_excluded3 = ["children"],
|
|
15
|
+
_excluded4 = ["children"];
|
|
16
|
+
/**
|
|
17
|
+
* PopForm 是一个为弹出式表单布局提供容器的组件,它使用特定的样式来组织表单内容。
|
|
18
|
+
*
|
|
19
|
+
* @param {Object} props - 组件的 props。
|
|
20
|
+
* @param {ReactNode} props.children - 组件内包含的子元素。
|
|
21
|
+
* @param {Object} rest - 传递给组件的其余属性,这些属性将直接传递给根 div 元素。
|
|
22
|
+
*/
|
|
23
|
+
var PopForm = exports.PopForm = function PopForm(_ref) {
|
|
24
|
+
var children = _ref.children,
|
|
25
|
+
rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
26
|
+
return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({
|
|
27
|
+
className: _popForm.default['lc-painter-panel-section-components-popform']
|
|
28
|
+
}, rest), children);
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* PopFormItem 是 PopForm 组件的一个子项,用于包装表单的每个独立字段。
|
|
33
|
+
* 它提供了一致的布局和样式封装,用于表单项的展示。
|
|
34
|
+
*
|
|
35
|
+
* @param {Object} props - 组件的 props。
|
|
36
|
+
* @param {ReactNode} props.children - 组件内包含的子元素。
|
|
37
|
+
* @param {Object} rest - 传递给组件的其余属性,这些属性将直接传递给根 div 元素。
|
|
38
|
+
*/
|
|
39
|
+
var PopFormItem = exports.PopFormItem = function PopFormItem(_ref2) {
|
|
40
|
+
var children = _ref2.children,
|
|
41
|
+
rest = (0, _objectWithoutProperties2.default)(_ref2, _excluded2);
|
|
42
|
+
return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({
|
|
43
|
+
className: _popForm.default['item']
|
|
44
|
+
}, rest), children);
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* PopFormItemLeft 是 PopFormItem 的子组件,用于展示表单项的标签或标题部分。
|
|
49
|
+
* 它通常用于放置字段名或说明性文本。
|
|
50
|
+
*
|
|
51
|
+
* @param {Object} props - 组件的 props。
|
|
52
|
+
* @param {ReactNode} props.children - 组件内包含的子元素。
|
|
53
|
+
* @param {Object} rest - 传递给组件的其余属性,这些属性将直接传递给根 div 元素。
|
|
54
|
+
*/
|
|
55
|
+
var PopFormItemLeft = exports.PopFormItemLeft = function PopFormItemLeft(_ref3) {
|
|
56
|
+
var children = _ref3.children,
|
|
57
|
+
rest = (0, _objectWithoutProperties2.default)(_ref3, _excluded3);
|
|
58
|
+
return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({
|
|
59
|
+
className: _popForm.default['left']
|
|
60
|
+
}, rest), children);
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* PopFormItemRight 是 PopFormItem 的子组件,用于包含表单项的输入字段。
|
|
65
|
+
* 它是表单项布局中用于用户输入的部分,可以容纳各种类型的输入控件。
|
|
66
|
+
*
|
|
67
|
+
* @param {Object} props - 组件的 props。
|
|
68
|
+
* @param {ReactNode} props.children - 组件内包含的子元素。
|
|
69
|
+
* @param {Object} rest - 传递给组件的其余属性,这些属性将直接传递给根 div 元素。
|
|
70
|
+
*/
|
|
71
|
+
var PopFormItemRight = exports.PopFormItemRight = function PopFormItemRight(_ref4) {
|
|
72
|
+
var children = _ref4.children,
|
|
73
|
+
rest = (0, _objectWithoutProperties2.default)(_ref4, _excluded4);
|
|
74
|
+
return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({
|
|
75
|
+
className: _popForm.default['right']
|
|
76
|
+
}, rest), children);
|
|
77
|
+
};
|
|
@@ -7,13 +7,16 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
});
|
|
8
8
|
exports.default = void 0;
|
|
9
9
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
10
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
10
11
|
var _createForOfIteratorHelper2 = _interopRequireDefault(require("@babel/runtime/helpers/createForOfIteratorHelper"));
|
|
11
12
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
12
13
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
13
14
|
var _react = _interopRequireWildcard(require("react"));
|
|
15
|
+
var _ahooks = require("ahooks");
|
|
14
16
|
var _antd = require("luck-design/antd");
|
|
17
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
|
15
18
|
var _ruleInput = _interopRequireDefault(require("../style/rule-input.less"));
|
|
16
|
-
var _excluded = ["onValueChange", "rules", "value"];
|
|
19
|
+
var _excluded = ["onValueChange", "rules", "value", "defaultValue"];
|
|
17
20
|
/**
|
|
18
21
|
* 带校验功能的输入组件。
|
|
19
22
|
*
|
|
@@ -49,8 +52,9 @@ var _default = exports.default = /*#__PURE__*/(0, _react.forwardRef)(function (_
|
|
|
49
52
|
var onValueChange = _ref.onValueChange,
|
|
50
53
|
rules = _ref.rules,
|
|
51
54
|
value = _ref.value,
|
|
55
|
+
defaultValue = _ref.defaultValue,
|
|
52
56
|
rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
53
|
-
var _useState = (0, _react.useState)(value),
|
|
57
|
+
var _useState = (0, _react.useState)(value || defaultValue),
|
|
54
58
|
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
55
59
|
inputValue = _useState2[0],
|
|
56
60
|
setInputValue = _useState2[1]; // 托管输入值的状态
|
|
@@ -60,7 +64,7 @@ var _default = exports.default = /*#__PURE__*/(0, _react.forwardRef)(function (_
|
|
|
60
64
|
setErr = _useState4[1];
|
|
61
65
|
|
|
62
66
|
// 使用useEffect钩子监听value的变化
|
|
63
|
-
(0,
|
|
67
|
+
(0, _ahooks.useUpdateEffect)(function () {
|
|
64
68
|
setInputValue(value);
|
|
65
69
|
setErr(null);
|
|
66
70
|
}, [value]);
|
|
@@ -92,16 +96,14 @@ var _default = exports.default = /*#__PURE__*/(0, _react.forwardRef)(function (_
|
|
|
92
96
|
onValueChange(e, value);
|
|
93
97
|
} else {
|
|
94
98
|
setErr(error);
|
|
95
|
-
console.
|
|
99
|
+
console.error(error);
|
|
96
100
|
}
|
|
97
101
|
};
|
|
98
|
-
var className = _ruleInput.default['lc-painter-components-ruleinput'];
|
|
99
|
-
if (err) className += ' ' + _ruleInput.default['err'];
|
|
100
102
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_antd.Tooltip, {
|
|
101
103
|
title: err,
|
|
102
104
|
visible: err
|
|
103
105
|
}, /*#__PURE__*/_react.default.createElement(_antd.Input, (0, _extends2.default)({
|
|
104
|
-
className:
|
|
106
|
+
className: (0, _classnames.default)(_ruleInput.default['lc-painter-components-ruleinput'], (0, _defineProperty2.default)({}, _ruleInput.default.err, !!err)),
|
|
105
107
|
size: "small",
|
|
106
108
|
value: inputValue // 绑定输入值
|
|
107
109
|
,
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
4
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.SortItem = exports.SortBox = void 0;
|
|
9
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
10
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
+
var _core = require("@dnd-kit/core");
|
|
12
|
+
var _sortable = require("@dnd-kit/sortable");
|
|
13
|
+
var _utilities = require("@dnd-kit/utilities");
|
|
14
|
+
/**
|
|
15
|
+
* SortBox 是一个使用 dnd-kit 实现拖拽排序的组件。
|
|
16
|
+
* 它允许子元素通过拖拽操作来重新排序,并在排序操作完成后通过 onChange 回调传递新的排序结果。
|
|
17
|
+
*
|
|
18
|
+
* @param {Object} props 组件的 props。
|
|
19
|
+
* @param {Array} props.datas 初始排序的数据数组,通常包含用于排序的唯一标识符。
|
|
20
|
+
* @param {ReactNode} props.children 组件的子元素,通常是需要进行排序的元素集合。
|
|
21
|
+
* @param {Function} props.onChange 当排序操作完成时触发的回调函数,参数为重新排序后的数据数组。
|
|
22
|
+
* @param {Function} [props.strategy=verticalListSortingStrategy] 用于排序的策略。默认为垂直列表排序策略。
|
|
23
|
+
*
|
|
24
|
+
* @returns {ReactNode} 返回一个配置了 DndContext 和 SortableContext 的 React 组件结构。
|
|
25
|
+
*/
|
|
26
|
+
var SortBox = exports.SortBox = function SortBox(_ref) {
|
|
27
|
+
var datas = _ref.datas,
|
|
28
|
+
children = _ref.children,
|
|
29
|
+
onChange = _ref.onChange,
|
|
30
|
+
strategy = _ref.strategy;
|
|
31
|
+
var _useState = (0, _react.useState)(datas),
|
|
32
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
33
|
+
items = _useState2[0],
|
|
34
|
+
setItems = _useState2[1];
|
|
35
|
+
var sortStrategy = strategy !== null && strategy !== void 0 ? strategy : _sortable.verticalListSortingStrategy;
|
|
36
|
+
(0, _react.useEffect)(function () {
|
|
37
|
+
setItems(datas);
|
|
38
|
+
}, [datas]);
|
|
39
|
+
function handleDragEnd(event) {
|
|
40
|
+
var active = event.active,
|
|
41
|
+
over = event.over;
|
|
42
|
+
if (active.id !== over.id) {
|
|
43
|
+
setItems(function (items) {
|
|
44
|
+
var oldIndex = items.indexOf(active.id);
|
|
45
|
+
var newIndex = items.indexOf(over.id);
|
|
46
|
+
var newSortItem = (0, _sortable.arrayMove)(items, oldIndex, newIndex);
|
|
47
|
+
if (onChange) onChange(newSortItem);
|
|
48
|
+
return newSortItem;
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
return /*#__PURE__*/_react.default.createElement(_core.DndContext, {
|
|
53
|
+
onDragEnd: handleDragEnd
|
|
54
|
+
}, /*#__PURE__*/_react.default.createElement(_sortable.SortableContext, {
|
|
55
|
+
strategy: sortStrategy,
|
|
56
|
+
items: items
|
|
57
|
+
}, children));
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
/**
|
|
61
|
+
* SortItem 组件是一个使用 dnd-kit 实现的可排序项。它通过 useSortable 钩子来提供拖拽功能,
|
|
62
|
+
* 并将必要的属性和监听器传递给其子元素,使得子元素可拖拽。
|
|
63
|
+
*
|
|
64
|
+
* @param {Object} props - 组件的 props。
|
|
65
|
+
* @param {string} props.id - 该排序项的唯一标识符,用于识别不同的可排序元素。
|
|
66
|
+
* @param {ReactNode} props.children - 该组件的子元素。通常是你希望使之可拖拽的元素。
|
|
67
|
+
* SortItem 会将拖拽相关的 props 注入到这个子元素中。
|
|
68
|
+
*
|
|
69
|
+
* @returns {ReactNode} 返回一个增强后的 React 元素,此元素集成了拖拽功能。
|
|
70
|
+
* 它基于原 children 元素,附加了用于拖拽的属性和样式。
|
|
71
|
+
*/
|
|
72
|
+
var SortItem = exports.SortItem = function SortItem(_ref2) {
|
|
73
|
+
var id = _ref2.id,
|
|
74
|
+
children = _ref2.children;
|
|
75
|
+
var _useSortable = (0, _sortable.useSortable)({
|
|
76
|
+
id: id
|
|
77
|
+
}),
|
|
78
|
+
attributes = _useSortable.attributes,
|
|
79
|
+
listeners = _useSortable.listeners,
|
|
80
|
+
setNodeRef = _useSortable.setNodeRef,
|
|
81
|
+
transform = _useSortable.transform,
|
|
82
|
+
transition = _useSortable.transition,
|
|
83
|
+
setActivatorNodeRef = _useSortable.setActivatorNodeRef;
|
|
84
|
+
var style = {
|
|
85
|
+
transform: _utilities.CSS.Transform.toString(transform),
|
|
86
|
+
transition: transition
|
|
87
|
+
};
|
|
88
|
+
var childWithProps = /*#__PURE__*/_react.default.cloneElement(children, {
|
|
89
|
+
key: id,
|
|
90
|
+
attributes: attributes,
|
|
91
|
+
listeners: listeners,
|
|
92
|
+
setNodeRef: setNodeRef,
|
|
93
|
+
transform: transform,
|
|
94
|
+
transition: transition,
|
|
95
|
+
setActivatorNodeRef: setActivatorNodeRef,
|
|
96
|
+
style: style
|
|
97
|
+
});
|
|
98
|
+
return childWithProps;
|
|
99
|
+
};
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = void 0;
|
|
9
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
10
|
+
var _ahooks = require("ahooks");
|
|
11
|
+
var _antd = require("luck-design/antd");
|
|
12
|
+
var _lodash = require("lodash");
|
|
13
|
+
var _PopConfirm = _interopRequireDefault(require("../../components/PopConfirm"));
|
|
14
|
+
var _PopForm = require("../../components/PopForm");
|
|
15
|
+
var _JSEditor = _interopRequireDefault(require("../../components/code-editor/JSEditor"));
|
|
16
|
+
var _FullScreenEditor = _interopRequireDefault(require("../../components/code-editor/FullScreenEditor"));
|
|
17
|
+
var _utils = require("@luck-design-biz/base/utils");
|
|
18
|
+
var _actionsEditor = _interopRequireDefault(require("../../style/actions-editor.less"));
|
|
19
|
+
var _I18N_PREFIX_ = 'luckda.lowcode.painter.panel-section.actionEditor';
|
|
20
|
+
var _SERIAL_EFFECT_OPTIONS_ = [{
|
|
21
|
+
label: (0, _utils.formatMessage)({
|
|
22
|
+
id: "".concat(_I18N_PREFIX_, ".hidden"),
|
|
23
|
+
label: '隐藏'
|
|
24
|
+
}),
|
|
25
|
+
value: 'hidden'
|
|
26
|
+
}, {
|
|
27
|
+
label: (0, _utils.formatMessage)({
|
|
28
|
+
id: "".concat(_I18N_PREFIX_, ".disable"),
|
|
29
|
+
label: '禁用'
|
|
30
|
+
}),
|
|
31
|
+
value: 'disable'
|
|
32
|
+
}];
|
|
33
|
+
var _RISK_LEVEL_OPTIONS_ = [{
|
|
34
|
+
label: (0, _utils.formatMessage)({
|
|
35
|
+
id: "".concat(_I18N_PREFIX_, ".default"),
|
|
36
|
+
label: '一般'
|
|
37
|
+
}),
|
|
38
|
+
value: 'default'
|
|
39
|
+
}, {
|
|
40
|
+
label: (0, _utils.formatMessage)({
|
|
41
|
+
id: "".concat(_I18N_PREFIX_, ".danger"),
|
|
42
|
+
label: '危险'
|
|
43
|
+
}),
|
|
44
|
+
value: 'danger'
|
|
45
|
+
}, {
|
|
46
|
+
label: (0, _utils.formatMessage)({
|
|
47
|
+
id: "".concat(_I18N_PREFIX_, ".destroy"),
|
|
48
|
+
label: '毁灭'
|
|
49
|
+
}),
|
|
50
|
+
value: 'destroy'
|
|
51
|
+
}];
|
|
52
|
+
var ActionEditor = function ActionEditor(_ref) {
|
|
53
|
+
var action = _ref.action,
|
|
54
|
+
onChange = _ref.onChange;
|
|
55
|
+
var editorRef = (0, _react.useRef)();
|
|
56
|
+
var valueRef = (0, _react.useRef)((0, _lodash.cloneDeep)(action));
|
|
57
|
+
var handleCodeChange = (0, _react.useRef)((0, _lodash.debounce)(function (code) {
|
|
58
|
+
valueRef.current.actionCode = code;
|
|
59
|
+
onChange(valueRef.current);
|
|
60
|
+
}, 400));
|
|
61
|
+
var handleChange = (0, _ahooks.useMemoizedFn)(function (field, value) {
|
|
62
|
+
valueRef.current[field] = value;
|
|
63
|
+
onChange(valueRef.current);
|
|
64
|
+
});
|
|
65
|
+
var handOnEditorLoad = (0, _ahooks.useMemoizedFn)(function () {
|
|
66
|
+
editorRef.current.editor.setValue(action.actionCode);
|
|
67
|
+
});
|
|
68
|
+
return /*#__PURE__*/_react.default.createElement(_PopForm.PopForm, null, /*#__PURE__*/_react.default.createElement(_PopForm.PopFormItem, null, /*#__PURE__*/_react.default.createElement(_PopForm.PopFormItemLeft, null, (0, _utils.formatMessage)({
|
|
69
|
+
id: "".concat(_I18N_PREFIX_, ".name"),
|
|
70
|
+
label: '名称'
|
|
71
|
+
})), /*#__PURE__*/_react.default.createElement(_PopForm.PopFormItemRight, null, /*#__PURE__*/_react.default.createElement(_antd.Input, {
|
|
72
|
+
size: "small",
|
|
73
|
+
defaultValue: action.name,
|
|
74
|
+
onChange: function onChange(e) {
|
|
75
|
+
return handleChange('name', e.target.value);
|
|
76
|
+
},
|
|
77
|
+
placeholder: (0, _utils.formatMessage)({
|
|
78
|
+
id: "".concat(_I18N_PREFIX_, ".name.placeholder"),
|
|
79
|
+
label: '请输入行为名称'
|
|
80
|
+
})
|
|
81
|
+
}))), /*#__PURE__*/_react.default.createElement(_PopForm.PopFormItem, null, /*#__PURE__*/_react.default.createElement(_PopForm.PopFormItemLeft, null, (0, _utils.formatMessage)({
|
|
82
|
+
id: "".concat(_I18N_PREFIX_, ".serial"),
|
|
83
|
+
label: '资源串'
|
|
84
|
+
})), /*#__PURE__*/_react.default.createElement(_PopForm.PopFormItemRight, null, /*#__PURE__*/_react.default.createElement(_antd.Input, {
|
|
85
|
+
size: "small",
|
|
86
|
+
defaultValue: action.serial,
|
|
87
|
+
onChange: function onChange(e) {
|
|
88
|
+
return handleChange('serial', e.target.value);
|
|
89
|
+
},
|
|
90
|
+
placeholder: (0, _utils.formatMessage)({
|
|
91
|
+
id: "".concat(_I18N_PREFIX_, ".serial.placeholder"),
|
|
92
|
+
label: '请输入行为名称'
|
|
93
|
+
})
|
|
94
|
+
}))), /*#__PURE__*/_react.default.createElement(_PopForm.PopFormItem, null, /*#__PURE__*/_react.default.createElement(_PopForm.PopFormItemLeft, null, (0, _utils.formatMessage)({
|
|
95
|
+
id: "".concat(_I18N_PREFIX_, ".serialEffect"),
|
|
96
|
+
label: '越权效果'
|
|
97
|
+
})), /*#__PURE__*/_react.default.createElement(_PopForm.PopFormItemRight, null, /*#__PURE__*/_react.default.createElement(_antd.Segmented, {
|
|
98
|
+
size: "small",
|
|
99
|
+
options: _SERIAL_EFFECT_OPTIONS_,
|
|
100
|
+
value: action.serialEffect,
|
|
101
|
+
onChange: function onChange(value) {
|
|
102
|
+
return handleChange('serialEffect', value);
|
|
103
|
+
}
|
|
104
|
+
}))), /*#__PURE__*/_react.default.createElement(_PopForm.PopFormItem, null, /*#__PURE__*/_react.default.createElement(_PopForm.PopFormItemLeft, null, (0, _utils.formatMessage)({
|
|
105
|
+
id: "".concat(_I18N_PREFIX_, ".serialEffect"),
|
|
106
|
+
label: '风险等级'
|
|
107
|
+
})), /*#__PURE__*/_react.default.createElement(_PopForm.PopFormItemRight, null, /*#__PURE__*/_react.default.createElement(_antd.Segmented, {
|
|
108
|
+
size: "small",
|
|
109
|
+
options: _RISK_LEVEL_OPTIONS_,
|
|
110
|
+
value: action.riskLevel,
|
|
111
|
+
onChange: function onChange(value) {
|
|
112
|
+
return handleChange('riskLevel', value);
|
|
113
|
+
}
|
|
114
|
+
}))), /*#__PURE__*/_react.default.createElement(_PopForm.PopFormItem, null, /*#__PURE__*/_react.default.createElement(_PopForm.PopFormItemLeft, null, (0, _utils.formatMessage)({
|
|
115
|
+
id: "".concat(_I18N_PREFIX_, ".actionPool"),
|
|
116
|
+
label: '行为池'
|
|
117
|
+
})), /*#__PURE__*/_react.default.createElement(_PopForm.PopFormItemRight, {
|
|
118
|
+
style: {
|
|
119
|
+
position: 'relative'
|
|
120
|
+
}
|
|
121
|
+
}, /*#__PURE__*/_react.default.createElement(_antd.Select, {
|
|
122
|
+
size: "small",
|
|
123
|
+
mode: "multiple",
|
|
124
|
+
className: _actionsEditor.default['action-pool-selector'],
|
|
125
|
+
defaultValue: action.actionPool,
|
|
126
|
+
onChange: function onChange(value) {
|
|
127
|
+
return handleChange('actionPool', value);
|
|
128
|
+
}
|
|
129
|
+
}, /*#__PURE__*/_react.default.createElement(_antd.Select.Option, {
|
|
130
|
+
value: "jack"
|
|
131
|
+
}, "Jack"), /*#__PURE__*/_react.default.createElement(_antd.Select.Option, {
|
|
132
|
+
value: "lucy"
|
|
133
|
+
}, "Lucy"), /*#__PURE__*/_react.default.createElement(_antd.Select.Option, {
|
|
134
|
+
value: "yiminghe"
|
|
135
|
+
}, "Yiminghe")), /*#__PURE__*/_react.default.createElement(_antd.Tooltip, {
|
|
136
|
+
title: (0, _utils.formatMessage)({
|
|
137
|
+
id: 'luckda.lowcode.painter.coder',
|
|
138
|
+
label: '编码器'
|
|
139
|
+
})
|
|
140
|
+
}, /*#__PURE__*/_react.default.createElement(_PopConfirm.default, {
|
|
141
|
+
placement: "top",
|
|
142
|
+
title: /*#__PURE__*/_react.default.createElement(_FullScreenEditor.default, {
|
|
143
|
+
ref: editorRef,
|
|
144
|
+
EditorComponent: _JSEditor.default,
|
|
145
|
+
width: "640px",
|
|
146
|
+
height: "300px",
|
|
147
|
+
onChange: handleCodeChange.current,
|
|
148
|
+
onLoad: handOnEditorLoad
|
|
149
|
+
})
|
|
150
|
+
}, /*#__PURE__*/_react.default.createElement(_antd.Icon, {
|
|
151
|
+
type: "code",
|
|
152
|
+
className: _actionsEditor.default['action-pool-coder']
|
|
153
|
+
}))))));
|
|
154
|
+
};
|
|
155
|
+
var _default = exports.default = ActionEditor;
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
4
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = void 0;
|
|
9
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
10
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
+
var _ahooks = require("ahooks");
|
|
12
|
+
var _antd = require("luck-design/antd");
|
|
13
|
+
var _lodash = require("lodash");
|
|
14
|
+
var _ActionEditor = _interopRequireDefault(require("./ActionEditor"));
|
|
15
|
+
var _PanelItem = _interopRequireDefault(require("../PanelItem"));
|
|
16
|
+
var _SortBox = require("../../components/SortBox");
|
|
17
|
+
var _ListEditor = require("../../components/ListEditor");
|
|
18
|
+
var _PopConfirm = _interopRequireDefault(require("../../components/PopConfirm"));
|
|
19
|
+
var _utils = require("@luck-design-biz/base/utils");
|
|
20
|
+
var _helper = require("../../../engine/tools/helper");
|
|
21
|
+
var _actionsEditor = _interopRequireDefault(require("../../style/actions-editor.less"));
|
|
22
|
+
var _I18N_PREFIX_ = 'luckda.lowcode.painter.panel-section.actionsEditor';
|
|
23
|
+
var _DISPLAY_OPTIONS_ = [{
|
|
24
|
+
label: (0, _utils.formatMessage)({
|
|
25
|
+
id: "".concat(_I18N_PREFIX_, ".button"),
|
|
26
|
+
label: '按钮'
|
|
27
|
+
}),
|
|
28
|
+
value: 'button'
|
|
29
|
+
}, {
|
|
30
|
+
label: (0, _utils.formatMessage)({
|
|
31
|
+
id: "".concat(_I18N_PREFIX_, ".text"),
|
|
32
|
+
label: '文本'
|
|
33
|
+
}),
|
|
34
|
+
value: 'text'
|
|
35
|
+
}];
|
|
36
|
+
var ActionsEditor = function ActionsEditor(_ref) {
|
|
37
|
+
var defaultValue = _ref.defaultValue,
|
|
38
|
+
onChange = _ref.onChange;
|
|
39
|
+
var valueRef = (0, _react.useRef)((0, _lodash.cloneDeep)(defaultValue));
|
|
40
|
+
var _useReducer = (0, _react.useReducer)(_helper.listReducer, defaultValue.todoList || []),
|
|
41
|
+
_useReducer2 = (0, _slicedToArray2.default)(_useReducer, 2),
|
|
42
|
+
todoList = _useReducer2[0],
|
|
43
|
+
dispatch = _useReducer2[1];
|
|
44
|
+
var handleAdd = (0, _ahooks.useMemoizedFn)(function () {
|
|
45
|
+
dispatch({
|
|
46
|
+
type: 'add',
|
|
47
|
+
payload: {
|
|
48
|
+
id: (0, _utils.suid)(),
|
|
49
|
+
name: "\u64CD\u4F5C".concat(todoList.length + 1),
|
|
50
|
+
serial: void 0,
|
|
51
|
+
serialEffect: 'hidden',
|
|
52
|
+
riskLevel: 'default',
|
|
53
|
+
actionPool: [],
|
|
54
|
+
actionCode: void 0
|
|
55
|
+
},
|
|
56
|
+
callback: function callback(newActions) {
|
|
57
|
+
valueRef.current.todoList = newActions;
|
|
58
|
+
onChange(valueRef.current);
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
});
|
|
62
|
+
var handleSortChange = (0, _ahooks.useMemoizedFn)(function (sortItems) {
|
|
63
|
+
dispatch({
|
|
64
|
+
type: 'sort',
|
|
65
|
+
payload: sortItems,
|
|
66
|
+
callback: function callback(newActions) {
|
|
67
|
+
valueRef.current.todoList = newActions;
|
|
68
|
+
onChange(valueRef.current);
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
});
|
|
72
|
+
var handleValueChange = (0, _ahooks.useMemoizedFn)(function (field, value) {
|
|
73
|
+
if (field === 'action') {
|
|
74
|
+
dispatch({
|
|
75
|
+
type: 'edit',
|
|
76
|
+
payload: {
|
|
77
|
+
id: value.id,
|
|
78
|
+
data: value
|
|
79
|
+
},
|
|
80
|
+
callback: function callback(newActions) {
|
|
81
|
+
valueRef.current.todoList = newActions;
|
|
82
|
+
}
|
|
83
|
+
});
|
|
84
|
+
} else {
|
|
85
|
+
valueRef.current[field] = value;
|
|
86
|
+
}
|
|
87
|
+
onChange(valueRef.current);
|
|
88
|
+
});
|
|
89
|
+
var renderItemRight = (0, _ahooks.useMemoizedFn)(function (action) {
|
|
90
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_antd.Tooltip, {
|
|
91
|
+
title: (0, _utils.formatMessage)({
|
|
92
|
+
id: 'luckda.lowcode.painter.edit',
|
|
93
|
+
label: '编辑'
|
|
94
|
+
})
|
|
95
|
+
}, /*#__PURE__*/_react.default.createElement(_PopConfirm.default, {
|
|
96
|
+
placement: "left",
|
|
97
|
+
title: /*#__PURE__*/_react.default.createElement(_ActionEditor.default, {
|
|
98
|
+
action: action,
|
|
99
|
+
onChange: function onChange(value) {
|
|
100
|
+
return handleValueChange('action', value);
|
|
101
|
+
}
|
|
102
|
+
})
|
|
103
|
+
}, /*#__PURE__*/_react.default.createElement(_antd.Icon, {
|
|
104
|
+
type: "edit",
|
|
105
|
+
style: {
|
|
106
|
+
marginRight: '8px',
|
|
107
|
+
cursor: 'pointer'
|
|
108
|
+
}
|
|
109
|
+
}))), /*#__PURE__*/_react.default.createElement(_antd.Tooltip, {
|
|
110
|
+
title: (0, _utils.formatMessage)({
|
|
111
|
+
id: 'luckda.lowcode.painter.delete',
|
|
112
|
+
label: '删除'
|
|
113
|
+
})
|
|
114
|
+
}, /*#__PURE__*/_react.default.createElement(_antd.Icon, {
|
|
115
|
+
type: "delete",
|
|
116
|
+
style: {
|
|
117
|
+
marginRight: '8px',
|
|
118
|
+
cursor: 'pointer'
|
|
119
|
+
}
|
|
120
|
+
})));
|
|
121
|
+
});
|
|
122
|
+
return /*#__PURE__*/_react.default.createElement("div", {
|
|
123
|
+
className: _actionsEditor.default['lc-painter-panel-section-components-actionsEditor']
|
|
124
|
+
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
125
|
+
style: {
|
|
126
|
+
width: '100%',
|
|
127
|
+
padding: '0 16px'
|
|
128
|
+
}
|
|
129
|
+
}, /*#__PURE__*/_react.default.createElement(_PanelItem.default, {
|
|
130
|
+
suppressPadding: true,
|
|
131
|
+
label: (0, _utils.formatMessage)({
|
|
132
|
+
id: "".concat(_I18N_PREFIX_, ".display"),
|
|
133
|
+
label: '展现形式'
|
|
134
|
+
})
|
|
135
|
+
}, /*#__PURE__*/_react.default.createElement(_antd.Segmented, {
|
|
136
|
+
size: "small",
|
|
137
|
+
options: _DISPLAY_OPTIONS_,
|
|
138
|
+
defaultValue: defaultValue.display,
|
|
139
|
+
onChange: function onChange(value) {
|
|
140
|
+
return handleValueChange('display', value);
|
|
141
|
+
}
|
|
142
|
+
})), /*#__PURE__*/_react.default.createElement(_PanelItem.default, {
|
|
143
|
+
suppressPadding: true,
|
|
144
|
+
label: (0, _utils.formatMessage)({
|
|
145
|
+
id: "".concat(_I18N_PREFIX_, ".max"),
|
|
146
|
+
label: '最大显示数'
|
|
147
|
+
})
|
|
148
|
+
}, /*#__PURE__*/_react.default.createElement(_antd.InputNumber, {
|
|
149
|
+
size: "small",
|
|
150
|
+
defaultValue: defaultValue.max,
|
|
151
|
+
onChange: function onChange(value) {
|
|
152
|
+
return handleValueChange('max', value);
|
|
153
|
+
}
|
|
154
|
+
})), /*#__PURE__*/_react.default.createElement(_SortBox.SortBox, {
|
|
155
|
+
datas: todoList.map(function (_ref2) {
|
|
156
|
+
var id = _ref2.id;
|
|
157
|
+
return id;
|
|
158
|
+
}),
|
|
159
|
+
onChange: handleSortChange
|
|
160
|
+
}, /*#__PURE__*/_react.default.createElement(_ListEditor.ListEditor, {
|
|
161
|
+
addText: (0, _utils.formatMessage)({
|
|
162
|
+
id: "".concat(_I18N_PREFIX_, ".add"),
|
|
163
|
+
label: '添加操作'
|
|
164
|
+
}),
|
|
165
|
+
handleAdd: handleAdd
|
|
166
|
+
}, todoList.map(function (action) {
|
|
167
|
+
return /*#__PURE__*/_react.default.createElement(_SortBox.SortItem, {
|
|
168
|
+
key: action.id,
|
|
169
|
+
id: action.id
|
|
170
|
+
}, /*#__PURE__*/_react.default.createElement(_ListEditor.ListEditorItem, {
|
|
171
|
+
left: /*#__PURE__*/_react.default.createElement("span", null, action.name),
|
|
172
|
+
right: renderItemRight(action),
|
|
173
|
+
item: action,
|
|
174
|
+
dispatch: dispatch
|
|
175
|
+
}));
|
|
176
|
+
})))));
|
|
177
|
+
};
|
|
178
|
+
var _default = exports.default = ActionsEditor;
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = void 0;
|
|
9
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
10
|
+
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
11
|
+
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
12
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
13
|
+
var monaco = _interopRequireWildcard(require("monaco-editor"));
|
|
14
|
+
var _excluded = ["onChange", "isFullscreen"],
|
|
15
|
+
_excluded2 = ["children", "language", "options"];
|
|
16
|
+
/**
|
|
17
|
+
* BaseEditor 组件是一个封装了 monaco 编辑器的 React 组件,支持前向 ref 引用。
|
|
18
|
+
* 该组件允许用户编辑代码,并在代码发生变更时触发回调函数。
|
|
19
|
+
* 它还支持通过 props 控制编辑器的语言、选项以及是否全屏显示。
|
|
20
|
+
*
|
|
21
|
+
* @component
|
|
22
|
+
* @example
|
|
23
|
+
* const handleEditorChange = (newValue, event) => {
|
|
24
|
+
* console.log('Editor content changed: ', newValue);
|
|
25
|
+
* };
|
|
26
|
+
* <BaseEditor
|
|
27
|
+
* language="javascript"
|
|
28
|
+
* onChange={handleEditorChange}
|
|
29
|
+
* isFullscreen={false}
|
|
30
|
+
* width="600px"
|
|
31
|
+
* height="400px"
|
|
32
|
+
* >
|
|
33
|
+
* {`function sayHello() {\n console.log('Hello, World!');\n}`}
|
|
34
|
+
* </BaseEditor>
|
|
35
|
+
*
|
|
36
|
+
* @param {Object} props - 组件的属性。
|
|
37
|
+
* @param {Function} props.onChange - 当编辑器内容变更时调用的函数。接收最新的编辑器内容和事件对象作为参数。
|
|
38
|
+
* @param {boolean} props.isFullscreen - 控制编辑器是否全屏显示。
|
|
39
|
+
* @param {string} [props.language='javascript'] - 设置编辑器的编程语言,默认为 'javascript'。
|
|
40
|
+
* @param {Object} [props.options={}] - 用于自定义编辑器的选项。
|
|
41
|
+
* @param {React.ReactNode} children - 子组件,通常是编辑器的初始代码。
|
|
42
|
+
* @param {string} [props.width] - 编辑器的宽度,默认为 '100%'。
|
|
43
|
+
* @param {string} [props.height] - 编辑器的高度,默认为 '100%'。
|
|
44
|
+
* @param {Object} rest - 传递给 div 容器的其它属性。
|
|
45
|
+
* @param {React.Ref} ref - React ref 引用,用于外部组件调用编辑器实例的方法。
|
|
46
|
+
*
|
|
47
|
+
* @returns {ReactElement} 返回一个 React 元素,其中包含了一个配置好的 monaco 编辑器实例。
|
|
48
|
+
*/
|
|
49
|
+
var BaseEditor = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
|
|
50
|
+
var onChange = _ref.onChange,
|
|
51
|
+
isFullscreen = _ref.isFullscreen,
|
|
52
|
+
props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
53
|
+
var children = props.children,
|
|
54
|
+
_props$language = props.language,
|
|
55
|
+
language = _props$language === void 0 ? 'javascript' : _props$language,
|
|
56
|
+
_props$options = props.options,
|
|
57
|
+
options = _props$options === void 0 ? {} : _props$options,
|
|
58
|
+
rest = (0, _objectWithoutProperties2.default)(props, _excluded2);
|
|
59
|
+
var editorRef = (0, _react.useRef)(null);
|
|
60
|
+
var editorInstance = (0, _react.useRef)(null);
|
|
61
|
+
|
|
62
|
+
// 初始化编辑器实例
|
|
63
|
+
(0, _react.useEffect)(function () {
|
|
64
|
+
if (editorRef.current) {
|
|
65
|
+
var code = _react.default.Children.toArray(children).join('').trim();
|
|
66
|
+
editorInstance.current = monaco.editor.create(editorRef.current, (0, _objectSpread2.default)({
|
|
67
|
+
value: code,
|
|
68
|
+
language: language,
|
|
69
|
+
automaticLayout: true
|
|
70
|
+
}, options));
|
|
71
|
+
editorInstance.current.onDidChangeModelContent(function (event) {
|
|
72
|
+
if (onChange) onChange(editorInstance.current.getValue(), event);
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
return function () {
|
|
76
|
+
var _editorInstance$curre;
|
|
77
|
+
return (_editorInstance$curre = editorInstance.current) === null || _editorInstance$curre === void 0 ? void 0 : _editorInstance$curre.dispose();
|
|
78
|
+
};
|
|
79
|
+
}, [children, language, options]);
|
|
80
|
+
|
|
81
|
+
// 使用 ref 暴露组件方法
|
|
82
|
+
(0, _react.useImperativeHandle)(ref, function () {
|
|
83
|
+
return {
|
|
84
|
+
get editor() {
|
|
85
|
+
return editorInstance.current;
|
|
86
|
+
}
|
|
87
|
+
};
|
|
88
|
+
});
|
|
89
|
+
|
|
90
|
+
// 根据是否全屏来设置编辑器的样式
|
|
91
|
+
var editorStyle = isFullscreen ? {
|
|
92
|
+
width: '100vw',
|
|
93
|
+
height: '100vh'
|
|
94
|
+
} : {
|
|
95
|
+
width: props.width || '100%',
|
|
96
|
+
height: props.height || '100%'
|
|
97
|
+
};
|
|
98
|
+
return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({
|
|
99
|
+
ref: editorRef,
|
|
100
|
+
style: editorStyle
|
|
101
|
+
}, rest));
|
|
102
|
+
});
|
|
103
|
+
var _default = exports.default = /*#__PURE__*/_react.default.memo(BaseEditor);
|