@luck-design-biz/luckda 0.0.22-3 → 0.0.22-5
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/LICENSE +21 -21
- package/README.md +40 -40
- package/es/components/Builder/index.js +1 -1
- package/es/components/LdGrid/index.js +4 -4
- package/es/components/LdGridForm/index.less +7 -7
- package/es/components/LdRuntimeCom/index.js +42 -0
- package/es/components/LdTree/index.less +36 -36
- package/es/helper/action.js +6 -6
- package/es/helper/form.js +14 -14
- package/es/helper/index.less +7 -7
- package/es/index.js +1 -0
- package/es/lowcode/constants/api-url.js +3 -0
- package/es/lowcode/constants/event-topics.js +31 -0
- package/es/lowcode/constants/index.js +12 -0
- package/es/lowcode/engine/factory/DataFactory.js +1 -0
- package/es/lowcode/engine/factory/panel-item-factory/DynamicStrategy.js +60 -0
- package/es/lowcode/engine/factory/panel-item-factory/SegmentedStrategy.js +32 -0
- package/es/lowcode/engine/factory/panel-item-factory/SelectStrategy.js +32 -0
- package/es/lowcode/engine/factory/panel-item-factory/Strategy.js +21 -0
- package/es/lowcode/engine/factory/panel-item-factory/StringStrategy.js +32 -0
- package/es/lowcode/engine/factory/panel-item-factory/SwitchStrategy.js +32 -0
- package/es/lowcode/engine/factory/panel-item-factory/index.js +40 -0
- package/es/lowcode/engine/meta/box.props.default.json +10 -0
- package/es/lowcode/engine/meta/box.props.json +40 -0
- package/es/lowcode/engine/meta/button.props.default.json +16 -0
- package/es/lowcode/engine/meta/button.props.json +117 -0
- package/es/lowcode/engine/meta/cardlist.props.default.json +18 -0
- package/es/lowcode/engine/meta/cardlist.props.json +144 -0
- package/es/lowcode/engine/meta/components-list.json +128 -0
- package/es/lowcode/engine/meta/dialog.props.default.json +19 -0
- package/es/lowcode/engine/meta/dialog.props.json +121 -0
- package/es/lowcode/engine/meta/drawer.props.default.json +18 -0
- package/es/lowcode/engine/meta/drawer.props.json +144 -0
- package/es/lowcode/engine/meta/form.props.default.json +13 -0
- package/es/lowcode/engine/meta/form.props.json +117 -0
- package/es/lowcode/engine/meta/iframe.props.default.json +11 -0
- package/es/lowcode/engine/meta/iframe.props.json +32 -0
- package/es/lowcode/engine/meta/image.props.default.json +16 -0
- package/es/lowcode/engine/meta/image.props.json +114 -0
- package/es/lowcode/engine/meta/imex.props.default.json +12 -0
- package/es/lowcode/engine/meta/imex.props.json +82 -0
- package/es/lowcode/engine/meta/js-editor/auto-complete.json +29 -0
- package/es/lowcode/engine/meta/jsx.props.default.json +10 -0
- package/es/lowcode/engine/meta/jsx.props.json +25 -0
- package/es/lowcode/engine/meta/layout.props.default.json +13 -0
- package/es/lowcode/engine/meta/layout.props.json +108 -0
- package/es/lowcode/engine/meta/link.props.default.json +14 -0
- package/es/lowcode/engine/meta/link.props.json +112 -0
- package/es/lowcode/engine/meta/section.props.default.json +17 -0
- package/es/lowcode/engine/meta/section.props.json +108 -0
- package/es/lowcode/engine/meta/split.props.default.json +13 -0
- package/es/lowcode/engine/meta/split.props.json +72 -0
- package/es/lowcode/engine/meta/table.props.default.json +18 -0
- package/es/lowcode/engine/meta/table.props.json +162 -0
- package/es/lowcode/engine/meta/tabs.props.default.json +18 -0
- package/es/lowcode/engine/meta/tabs.props.json +141 -0
- package/es/lowcode/engine/meta/text.props.default.json +12 -0
- package/es/lowcode/engine/meta/text.props.json +66 -0
- package/es/lowcode/engine/meta/tree.props.default.json +17 -0
- package/es/lowcode/engine/meta/tree.props.json +157 -0
- package/es/lowcode/engine/provider/ContextProvider.js +165 -0
- package/es/lowcode/engine/provider/EventBusProvider.js +120 -0
- package/es/lowcode/engine/tools/dataProcess.js +263 -0
- package/es/lowcode/engine/tools/helper.js +4 -0
- package/es/lowcode/engine/tools/lcid.js +16 -0
- package/es/lowcode/index.js +3 -0
- package/es/lowcode/painter/Components.js +104 -0
- package/es/lowcode/painter/Design.js +210 -0
- package/es/lowcode/painter/I18n.js +202 -0
- package/es/lowcode/painter/Outline.js +208 -0
- package/es/lowcode/painter/Panel.js +195 -0
- package/es/lowcode/painter/Ribbon.js +142 -0
- package/es/lowcode/painter/components/PanelItem.js +35 -0
- package/es/lowcode/painter/components/PopConfirm.js +20 -0
- package/es/lowcode/painter/components/PopForm.js +71 -0
- package/es/lowcode/painter/components/RuleInput.js +105 -0
- package/es/lowcode/painter/components/SortBox.js +92 -0
- package/es/lowcode/painter/components/TabEditor.js +88 -0
- package/es/lowcode/painter/components/code-editor/BaseEditor.js +49 -0
- package/es/lowcode/painter/components/code-editor/JSEditor.js +77 -0
- package/es/lowcode/painter/components/code-editor/index.js +2 -0
- package/es/lowcode/painter/index.js +45 -0
- package/es/lowcode/painter/panel-section/Icon.js +48 -0
- package/es/lowcode/painter/panel-section/IconSelector.js +139 -0
- package/es/lowcode/painter/panel-section/LayoutRatio.js +140 -0
- package/es/lowcode/painter/panel-section/TabItems.js +238 -0
- package/es/lowcode/painter/services/I18n.js +85 -0
- package/es/lowcode/painter/style/components.less +90 -0
- package/es/lowcode/painter/style/design.less +82 -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 +6 -0
- package/es/lowcode/painter/style/layout-ratio.less +51 -0
- package/es/lowcode/painter/style/outline.less +28 -0
- package/es/lowcode/painter/style/panel-item.less +22 -0
- package/es/lowcode/painter/style/panel.less +119 -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/radio.less +24 -0
- package/es/lowcode/painter/style/ribbon.less +5 -0
- package/es/lowcode/painter/style/rule-input.less +13 -0
- package/es/lowcode/painter/style/tabeditor.less +90 -0
- package/es/lowcode/painter/style/tabitems.less +90 -0
- package/es/lowcode/view/Canvas.js +135 -0
- package/es/lowcode/view/Loading.js +23 -0
- package/es/lowcode/view/Page.js +251 -0
- package/es/lowcode/view/index.js +18 -0
- package/es/lowcode/view/lc-components/Box/index.js +24 -0
- package/es/lowcode/view/lc-components/Box/meta.json +40 -0
- package/es/lowcode/view/lc-components/Button/index.js +37 -0
- package/es/lowcode/view/lc-components/Button/meta.json +117 -0
- package/es/lowcode/view/lc-components/CardList/index.js +20 -0
- package/es/lowcode/view/lc-components/CardList/meta.json +144 -0
- package/es/lowcode/view/lc-components/Dialog/index.js +61 -0
- package/es/lowcode/view/lc-components/Dialog/index.less +3 -0
- package/es/lowcode/view/lc-components/Dialog/meta.json +121 -0
- package/es/lowcode/view/lc-components/Drawer/index.js +62 -0
- package/es/lowcode/view/lc-components/Drawer/meta.json +144 -0
- package/es/lowcode/view/lc-components/Drawer/style.less +7 -0
- package/es/lowcode/view/lc-components/Form/index.js +20 -0
- package/es/lowcode/view/lc-components/Form/meta.json +117 -0
- package/es/lowcode/view/lc-components/Iframe/index.js +20 -0
- package/es/lowcode/view/lc-components/Iframe/meta.json +32 -0
- package/es/lowcode/view/lc-components/ImEx/index.js +20 -0
- package/es/lowcode/view/lc-components/ImEx/meta.json +82 -0
- package/es/lowcode/view/lc-components/Image/index.js +20 -0
- package/es/lowcode/view/lc-components/Image/meta.json +114 -0
- package/es/lowcode/view/lc-components/JSX/index.js +20 -0
- package/es/lowcode/view/lc-components/JSX/meta.json +25 -0
- package/es/lowcode/view/lc-components/Layout/index.js +98 -0
- package/es/lowcode/view/lc-components/Layout/index.less +9 -0
- package/es/lowcode/view/lc-components/Layout/meta.json +108 -0
- package/es/lowcode/view/lc-components/Link/index.js +20 -0
- package/es/lowcode/view/lc-components/Link/meta.json +112 -0
- package/es/lowcode/view/lc-components/Section/index.js +34 -0
- package/es/lowcode/view/lc-components/Section/meta.json +108 -0
- package/es/lowcode/view/lc-components/Split/index.js +21 -0
- package/es/lowcode/view/lc-components/Split/meta.json +72 -0
- package/es/lowcode/view/lc-components/Table/index.js +23 -0
- package/es/lowcode/view/lc-components/Table/meta.json +162 -0
- package/es/lowcode/view/lc-components/Tabs/index.js +21 -0
- package/es/lowcode/view/lc-components/Tabs/meta.json +141 -0
- package/es/lowcode/view/lc-components/Text/index.js +23 -0
- package/es/lowcode/view/lc-components/Text/meta.json +66 -0
- package/es/lowcode/view/lc-components/Tree/index.js +20 -0
- package/es/lowcode/view/lc-components/Tree/meta.json +157 -0
- package/es/lowcode/view/lc-components/Wrapper.js +52 -0
- package/es/lowcode/view/style/canvas.less +5 -0
- package/es/lowcode/view/style/loading.less +84 -0
- package/es/lowcode/view/style/page.less +5 -0
- package/es/upload/Form/gridForm.js +24 -6
- package/es/upload/Form/index.less +7 -7
- package/es/upload/FormItem/index.js +30 -18
- package/es/utils/form.js +22 -22
- package/es/utils/grid.js +2 -2
- package/lib/components/Builder/index.js +1 -1
- package/lib/components/LdGrid/index.js +4 -4
- package/lib/components/LdGridForm/index.less +7 -7
- package/lib/components/LdRuntimeCom/index.js +49 -0
- package/lib/components/LdTree/index.less +36 -36
- package/lib/helper/action.js +6 -6
- package/lib/helper/form.js +14 -14
- package/lib/helper/index.less +7 -7
- package/lib/index.js +9 -1
- package/lib/lowcode/constants/api-url.js +9 -0
- package/lib/lowcode/constants/event-topics.js +37 -0
- package/lib/lowcode/constants/index.js +18 -0
- package/lib/lowcode/engine/factory/DataFactory.js +3 -0
- package/lib/lowcode/engine/factory/panel-item-factory/DynamicStrategy.js +73 -0
- package/lib/lowcode/engine/factory/panel-item-factory/SegmentedStrategy.js +38 -0
- package/lib/lowcode/engine/factory/panel-item-factory/SelectStrategy.js +38 -0
- package/lib/lowcode/engine/factory/panel-item-factory/Strategy.js +27 -0
- package/lib/lowcode/engine/factory/panel-item-factory/StringStrategy.js +38 -0
- package/lib/lowcode/engine/factory/panel-item-factory/SwitchStrategy.js +38 -0
- package/lib/lowcode/engine/factory/panel-item-factory/index.js +46 -0
- package/lib/lowcode/engine/meta/box.props.default.json +10 -0
- package/lib/lowcode/engine/meta/box.props.json +40 -0
- package/lib/lowcode/engine/meta/button.props.default.json +16 -0
- package/lib/lowcode/engine/meta/button.props.json +117 -0
- package/lib/lowcode/engine/meta/cardlist.props.default.json +18 -0
- package/lib/lowcode/engine/meta/cardlist.props.json +144 -0
- package/lib/lowcode/engine/meta/components-list.json +128 -0
- package/lib/lowcode/engine/meta/dialog.props.default.json +19 -0
- package/lib/lowcode/engine/meta/dialog.props.json +121 -0
- package/lib/lowcode/engine/meta/drawer.props.default.json +18 -0
- package/lib/lowcode/engine/meta/drawer.props.json +144 -0
- package/lib/lowcode/engine/meta/form.props.default.json +13 -0
- package/lib/lowcode/engine/meta/form.props.json +117 -0
- package/lib/lowcode/engine/meta/iframe.props.default.json +11 -0
- package/lib/lowcode/engine/meta/iframe.props.json +32 -0
- package/lib/lowcode/engine/meta/image.props.default.json +16 -0
- package/lib/lowcode/engine/meta/image.props.json +114 -0
- package/lib/lowcode/engine/meta/imex.props.default.json +12 -0
- package/lib/lowcode/engine/meta/imex.props.json +82 -0
- package/lib/lowcode/engine/meta/js-editor/auto-complete.json +29 -0
- package/lib/lowcode/engine/meta/jsx.props.default.json +10 -0
- package/lib/lowcode/engine/meta/jsx.props.json +25 -0
- package/lib/lowcode/engine/meta/layout.props.default.json +13 -0
- package/lib/lowcode/engine/meta/layout.props.json +108 -0
- package/lib/lowcode/engine/meta/link.props.default.json +14 -0
- package/lib/lowcode/engine/meta/link.props.json +112 -0
- package/lib/lowcode/engine/meta/section.props.default.json +17 -0
- package/lib/lowcode/engine/meta/section.props.json +108 -0
- package/lib/lowcode/engine/meta/split.props.default.json +13 -0
- package/lib/lowcode/engine/meta/split.props.json +72 -0
- package/lib/lowcode/engine/meta/table.props.default.json +18 -0
- package/lib/lowcode/engine/meta/table.props.json +162 -0
- package/lib/lowcode/engine/meta/tabs.props.default.json +18 -0
- package/lib/lowcode/engine/meta/tabs.props.json +141 -0
- package/lib/lowcode/engine/meta/text.props.default.json +12 -0
- package/lib/lowcode/engine/meta/text.props.json +66 -0
- package/lib/lowcode/engine/meta/tree.props.default.json +17 -0
- package/lib/lowcode/engine/meta/tree.props.json +157 -0
- package/lib/lowcode/engine/provider/ContextProvider.js +173 -0
- package/lib/lowcode/engine/provider/EventBusProvider.js +128 -0
- package/lib/lowcode/engine/tools/dataProcess.js +277 -0
- package/lib/lowcode/engine/tools/helper.js +11 -0
- package/lib/lowcode/engine/tools/lcid.js +22 -0
- package/lib/lowcode/index.js +20 -0
- package/lib/lowcode/painter/Components.js +112 -0
- package/lib/lowcode/painter/Design.js +218 -0
- package/lib/lowcode/painter/I18n.js +209 -0
- package/lib/lowcode/painter/Outline.js +216 -0
- package/lib/lowcode/painter/Panel.js +203 -0
- package/lib/lowcode/painter/Ribbon.js +150 -0
- package/lib/lowcode/painter/components/PanelItem.js +41 -0
- package/lib/lowcode/painter/components/PopConfirm.js +26 -0
- package/lib/lowcode/painter/components/PopForm.js +77 -0
- package/lib/lowcode/painter/components/RuleInput.js +112 -0
- package/lib/lowcode/painter/components/SortBox.js +99 -0
- package/lib/lowcode/painter/components/TabEditor.js +94 -0
- package/lib/lowcode/painter/components/code-editor/BaseEditor.js +57 -0
- package/lib/lowcode/painter/components/code-editor/JSEditor.js +88 -0
- package/lib/lowcode/painter/components/code-editor/index.js +20 -0
- package/lib/lowcode/painter/index.js +54 -0
- package/lib/lowcode/painter/panel-section/Icon.js +54 -0
- package/lib/lowcode/painter/panel-section/IconSelector.js +146 -0
- package/lib/lowcode/painter/panel-section/LayoutRatio.js +148 -0
- package/lib/lowcode/painter/panel-section/TabItems.js +246 -0
- package/lib/lowcode/painter/services/I18n.js +95 -0
- package/lib/lowcode/painter/style/components.less +90 -0
- package/lib/lowcode/painter/style/design.less +82 -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 +6 -0
- package/lib/lowcode/painter/style/layout-ratio.less +51 -0
- package/lib/lowcode/painter/style/outline.less +28 -0
- package/lib/lowcode/painter/style/panel-item.less +22 -0
- package/lib/lowcode/painter/style/panel.less +119 -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/radio.less +24 -0
- package/lib/lowcode/painter/style/ribbon.less +5 -0
- package/lib/lowcode/painter/style/rule-input.less +13 -0
- package/lib/lowcode/painter/style/tabeditor.less +90 -0
- package/lib/lowcode/painter/style/tabitems.less +90 -0
- package/lib/lowcode/view/Canvas.js +150 -0
- package/lib/lowcode/view/Loading.js +30 -0
- package/lib/lowcode/view/Page.js +259 -0
- package/lib/lowcode/view/index.js +25 -0
- package/lib/lowcode/view/lc-components/Box/index.js +32 -0
- package/lib/lowcode/view/lc-components/Box/meta.json +40 -0
- package/lib/lowcode/view/lc-components/Button/index.js +45 -0
- package/lib/lowcode/view/lc-components/Button/meta.json +117 -0
- package/lib/lowcode/view/lc-components/CardList/index.js +28 -0
- package/lib/lowcode/view/lc-components/CardList/meta.json +144 -0
- package/lib/lowcode/view/lc-components/Dialog/index.js +69 -0
- package/lib/lowcode/view/lc-components/Dialog/index.less +3 -0
- package/lib/lowcode/view/lc-components/Dialog/meta.json +121 -0
- package/lib/lowcode/view/lc-components/Drawer/index.js +70 -0
- package/lib/lowcode/view/lc-components/Drawer/meta.json +144 -0
- package/lib/lowcode/view/lc-components/Drawer/style.less +7 -0
- package/lib/lowcode/view/lc-components/Form/index.js +28 -0
- package/lib/lowcode/view/lc-components/Form/meta.json +117 -0
- package/lib/lowcode/view/lc-components/Iframe/index.js +28 -0
- package/lib/lowcode/view/lc-components/Iframe/meta.json +32 -0
- package/lib/lowcode/view/lc-components/ImEx/index.js +28 -0
- package/lib/lowcode/view/lc-components/ImEx/meta.json +82 -0
- package/lib/lowcode/view/lc-components/Image/index.js +28 -0
- package/lib/lowcode/view/lc-components/Image/meta.json +114 -0
- package/lib/lowcode/view/lc-components/JSX/index.js +28 -0
- package/lib/lowcode/view/lc-components/JSX/meta.json +25 -0
- package/lib/lowcode/view/lc-components/Layout/index.js +106 -0
- package/lib/lowcode/view/lc-components/Layout/index.less +9 -0
- package/lib/lowcode/view/lc-components/Layout/meta.json +108 -0
- package/lib/lowcode/view/lc-components/Link/index.js +28 -0
- package/lib/lowcode/view/lc-components/Link/meta.json +112 -0
- package/lib/lowcode/view/lc-components/Section/index.js +42 -0
- package/lib/lowcode/view/lc-components/Section/meta.json +108 -0
- package/lib/lowcode/view/lc-components/Split/index.js +29 -0
- package/lib/lowcode/view/lc-components/Split/meta.json +72 -0
- package/lib/lowcode/view/lc-components/Table/index.js +31 -0
- package/lib/lowcode/view/lc-components/Table/meta.json +162 -0
- package/lib/lowcode/view/lc-components/Tabs/index.js +29 -0
- package/lib/lowcode/view/lc-components/Tabs/meta.json +141 -0
- package/lib/lowcode/view/lc-components/Text/index.js +31 -0
- package/lib/lowcode/view/lc-components/Text/meta.json +66 -0
- package/lib/lowcode/view/lc-components/Tree/index.js +28 -0
- package/lib/lowcode/view/lc-components/Tree/meta.json +157 -0
- package/lib/lowcode/view/lc-components/Wrapper.js +59 -0
- package/lib/lowcode/view/style/canvas.less +5 -0
- package/lib/lowcode/view/style/loading.less +84 -0
- package/lib/lowcode/view/style/page.less +5 -0
- package/lib/upload/Form/gridForm.js +22 -4
- package/lib/upload/Form/index.less +7 -7
- package/lib/upload/FormItem/index.js +29 -17
- package/lib/utils/form.js +22 -22
- package/lib/utils/grid.js +2 -2
- package/lowcode.js +1 -0
- package/package.json +163 -151
- package/upload.js +1 -1
- package/utils.js +1 -1
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
2
|
+
import _regeneratorRuntime from "@babel/runtime/helpers/esm/regeneratorRuntime";
|
|
3
|
+
import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
|
|
4
|
+
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
|
5
|
+
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
|
6
|
+
var _getDvaApp;
|
|
7
|
+
import React, { useState } from 'react';
|
|
8
|
+
import { getDvaApp } from 'umi';
|
|
9
|
+
import { useAsyncEffect, useCreation } from 'ahooks';
|
|
10
|
+
import { GridTable } from 'luck-design';
|
|
11
|
+
import { reduce, remove, cloneDeep, debounce } from 'lodash';
|
|
12
|
+
import { Input, Button, Icon } from 'luck-design/antd';
|
|
13
|
+
import { formatMessage } from '@luck-design-biz/base/utils';
|
|
14
|
+
import lcid from "../engine/tools/lcid";
|
|
15
|
+
import { readAllLang, doAddLang, doUpdateLang, doDeleteLang } from "./services/I18n";
|
|
16
|
+
import { useMemoizedFn } from 'ahooks';
|
|
17
|
+
var Search = Input.Search;
|
|
18
|
+
var _getDvaApp$_store = (_getDvaApp = getDvaApp()) === null || _getDvaApp === void 0 ? void 0 : _getDvaApp._store,
|
|
19
|
+
dispatch = _getDvaApp$_store.dispatch;
|
|
20
|
+
var getLangKey = function getLangKey() {
|
|
21
|
+
return "app.lowcode.".concat(lcid());
|
|
22
|
+
};
|
|
23
|
+
var formatDataFunc = function formatDataFunc(data) {
|
|
24
|
+
return _objectSpread(_objectSpread({}, data), reduce(data.languages, function (ret, value, key) {
|
|
25
|
+
ret[key] = value;
|
|
26
|
+
return ret;
|
|
27
|
+
}, {}));
|
|
28
|
+
};
|
|
29
|
+
var I18n = function I18n() {
|
|
30
|
+
var _useState = useState([]),
|
|
31
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
32
|
+
langList = _useState2[0],
|
|
33
|
+
setLangList = _useState2[1];
|
|
34
|
+
var _useState3 = useState([]),
|
|
35
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
36
|
+
dataSource = _useState4[0],
|
|
37
|
+
setDataSource = _useState4[1];
|
|
38
|
+
useAsyncEffect( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
|
|
39
|
+
var _langList;
|
|
40
|
+
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
41
|
+
while (1) switch (_context.prev = _context.next) {
|
|
42
|
+
case 0:
|
|
43
|
+
_context.next = 2;
|
|
44
|
+
return dispatch({
|
|
45
|
+
type: 'global/getDatadic',
|
|
46
|
+
payload: {
|
|
47
|
+
snamealias: 'base_lang'
|
|
48
|
+
},
|
|
49
|
+
format: function format(list, detail) {
|
|
50
|
+
return list.map(function (id) {
|
|
51
|
+
return {
|
|
52
|
+
title: detail[id].sname,
|
|
53
|
+
field: detail[id].sfactvalue,
|
|
54
|
+
editable: true,
|
|
55
|
+
filter: false
|
|
56
|
+
};
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
});
|
|
60
|
+
case 2:
|
|
61
|
+
_langList = _context.sent;
|
|
62
|
+
setLangList(_langList);
|
|
63
|
+
doQuery();
|
|
64
|
+
case 5:
|
|
65
|
+
case "end":
|
|
66
|
+
return _context.stop();
|
|
67
|
+
}
|
|
68
|
+
}, _callee);
|
|
69
|
+
})), []);
|
|
70
|
+
var doQuery = useMemoizedFn(function () {
|
|
71
|
+
var value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
72
|
+
readAllLang(_objectSpread(_objectSpread({}, value), {}, {
|
|
73
|
+
classifyKey: '__LOWCODE__'
|
|
74
|
+
})).then(function (res) {
|
|
75
|
+
var code = res.code,
|
|
76
|
+
list = res.list,
|
|
77
|
+
detail = res.detail;
|
|
78
|
+
if (code === 1) setDataSource(list.map(function (id) {
|
|
79
|
+
return formatDataFunc(detail[id]);
|
|
80
|
+
}));
|
|
81
|
+
});
|
|
82
|
+
});
|
|
83
|
+
var actionsColumn = useCreation(function () {
|
|
84
|
+
return {
|
|
85
|
+
width: 60,
|
|
86
|
+
getActions: function getActions() {
|
|
87
|
+
return [{
|
|
88
|
+
wanted: 'update',
|
|
89
|
+
title: /*#__PURE__*/React.createElement(Icon, {
|
|
90
|
+
type: "copy"
|
|
91
|
+
}),
|
|
92
|
+
action: function action(_data) {
|
|
93
|
+
var data = {
|
|
94
|
+
languages: reduce(langList, function (result, value) {
|
|
95
|
+
result[value.field] = _data[value.field];
|
|
96
|
+
return result;
|
|
97
|
+
}, {})
|
|
98
|
+
};
|
|
99
|
+
handleAdd(data);
|
|
100
|
+
}
|
|
101
|
+
}, {
|
|
102
|
+
wanted: 'delete',
|
|
103
|
+
title: /*#__PURE__*/React.createElement(Icon, {
|
|
104
|
+
type: "delete"
|
|
105
|
+
}),
|
|
106
|
+
confirm: {
|
|
107
|
+
title: formatMessage({
|
|
108
|
+
id: 'app.base.confirm.delete'
|
|
109
|
+
})
|
|
110
|
+
},
|
|
111
|
+
action: handleDelete
|
|
112
|
+
}];
|
|
113
|
+
}
|
|
114
|
+
};
|
|
115
|
+
}, [langList]);
|
|
116
|
+
var handleAdd = useMemoizedFn(function () {
|
|
117
|
+
var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
118
|
+
var addItems = _objectSpread(_objectSpread({}, data), {}, {
|
|
119
|
+
langKey: getLangKey(),
|
|
120
|
+
classifyKey: '__LOWCODE__'
|
|
121
|
+
});
|
|
122
|
+
doAddLang({}, addItems).then(function (res) {
|
|
123
|
+
var code = res.code,
|
|
124
|
+
list = res.list,
|
|
125
|
+
detail = res.detail;
|
|
126
|
+
if (code === 1) setDataSource([formatDataFunc(detail[list[0]])].concat(dataSource));
|
|
127
|
+
});
|
|
128
|
+
});
|
|
129
|
+
var handleValueChange = useMemoizedFn(function (field, newValue, oldValue, record) {
|
|
130
|
+
doUpdateLang({}, {
|
|
131
|
+
classifyKey: '__LOWCODE__',
|
|
132
|
+
langKey: record.langKey,
|
|
133
|
+
indocno: record.indocno,
|
|
134
|
+
languages: _objectSpread(_objectSpread({}, reduce(langList, function (result, value) {
|
|
135
|
+
result[value.field] = record[value.field];
|
|
136
|
+
return result;
|
|
137
|
+
}, {})), {}, _defineProperty({}, field, newValue))
|
|
138
|
+
});
|
|
139
|
+
});
|
|
140
|
+
var handleDelete = useMemoizedFn(function (data) {
|
|
141
|
+
doDeleteLang({}, {
|
|
142
|
+
delList: [{
|
|
143
|
+
indocno: data.indocno
|
|
144
|
+
}]
|
|
145
|
+
}).then(function (_ref2) {
|
|
146
|
+
var code = _ref2.code;
|
|
147
|
+
if (code === 1) {
|
|
148
|
+
var _data = cloneDeep(dataSource);
|
|
149
|
+
remove(_data, function (n) {
|
|
150
|
+
return n.indocno === data.indocno;
|
|
151
|
+
});
|
|
152
|
+
setDataSource(_data);
|
|
153
|
+
}
|
|
154
|
+
;
|
|
155
|
+
});
|
|
156
|
+
});
|
|
157
|
+
var handleSearch = debounce(doQuery, 300);
|
|
158
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
159
|
+
style: {
|
|
160
|
+
height: '100%',
|
|
161
|
+
padding: '16px 24px'
|
|
162
|
+
}
|
|
163
|
+
}, /*#__PURE__*/React.createElement(Search, {
|
|
164
|
+
placeholder: formatMessage({
|
|
165
|
+
id: 'luckda.lowcode.painter.I18n.search',
|
|
166
|
+
label: '搜索文案'
|
|
167
|
+
}),
|
|
168
|
+
onChange: function onChange(e) {
|
|
169
|
+
return handleSearch({
|
|
170
|
+
value: e.target.value
|
|
171
|
+
});
|
|
172
|
+
},
|
|
173
|
+
style: {
|
|
174
|
+
width: '100%'
|
|
175
|
+
},
|
|
176
|
+
allowClear: true
|
|
177
|
+
}), /*#__PURE__*/React.createElement(Button, {
|
|
178
|
+
type: "primary",
|
|
179
|
+
ghost: true,
|
|
180
|
+
size: "small",
|
|
181
|
+
style: {
|
|
182
|
+
margin: '16px 0'
|
|
183
|
+
},
|
|
184
|
+
onClick: function onClick() {
|
|
185
|
+
return handleAdd();
|
|
186
|
+
}
|
|
187
|
+
}, formatMessage({
|
|
188
|
+
id: 'luckda.lowcode.painter.I18n.add',
|
|
189
|
+
label: '新增文案'
|
|
190
|
+
})), /*#__PURE__*/React.createElement(GridTable, {
|
|
191
|
+
height: 480,
|
|
192
|
+
columns: langList,
|
|
193
|
+
dataSource: dataSource,
|
|
194
|
+
renderIndex: false,
|
|
195
|
+
showStatusBar: false,
|
|
196
|
+
actionsColumn: actionsColumn,
|
|
197
|
+
onValueChange: handleValueChange,
|
|
198
|
+
operates: ['add', 'update', 'delete'],
|
|
199
|
+
bordered: false
|
|
200
|
+
}));
|
|
201
|
+
};
|
|
202
|
+
export default I18n;
|
|
@@ -0,0 +1,208 @@
|
|
|
1
|
+
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
2
|
+
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
3
|
+
import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
|
|
4
|
+
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
|
5
|
+
var _excluded = ["props", "children"];
|
|
6
|
+
import React, { useRef, useState, useEffect } from 'react';
|
|
7
|
+
import { useMemoizedFn, useDeepCompareLayoutEffect, useLatest } from 'ahooks';
|
|
8
|
+
import { uniq, split, reduce } from 'lodash';
|
|
9
|
+
import classNames from 'classnames';
|
|
10
|
+
import { Card, Tree, Icon } from 'luck-design/antd';
|
|
11
|
+
import { formatMessage } from '@luck-design-biz/base/utils';
|
|
12
|
+
import { useLDContext } from "../engine/provider/ContextProvider";
|
|
13
|
+
import { CELL_KEY } from "../constants";
|
|
14
|
+
import { getPathById } from "../engine/tools/dataProcess";
|
|
15
|
+
import styles from "./style/outline.less";
|
|
16
|
+
var TreeNode = Tree.TreeNode;
|
|
17
|
+
var PAGE_CELL = [CELL_KEY.PAGE_HEADER, CELL_KEY.PAGE_CONTENT, CELL_KEY.PAGE_FOOTER];
|
|
18
|
+
var Outline = function Outline(_ref) {
|
|
19
|
+
var open = _ref.open;
|
|
20
|
+
var openModal = useRef(void 0);
|
|
21
|
+
var clickBySelf = useRef(false);
|
|
22
|
+
var context = useLDContext();
|
|
23
|
+
var _useState = useState(null),
|
|
24
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
25
|
+
pageAndModal = _useState2[0],
|
|
26
|
+
setPageAndModal = _useState2[1];
|
|
27
|
+
var _useState3 = useState(null),
|
|
28
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
29
|
+
selectedKey = _useState4[0],
|
|
30
|
+
setSelectedKey = _useState4[1];
|
|
31
|
+
var _useState5 = useState([]),
|
|
32
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
33
|
+
modalExpandedKeys = _useState6[0],
|
|
34
|
+
setModalExpandedKeys = _useState6[1];
|
|
35
|
+
var _useState7 = useState([]),
|
|
36
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
|
37
|
+
pageExpandedKeys = _useState8[0],
|
|
38
|
+
setPageExpandedKeys = _useState8[1];
|
|
39
|
+
var latestModalExpandedKeysRef = useLatest(modalExpandedKeys);
|
|
40
|
+
var lastPageExpandedKeysRef = useLatest(pageExpandedKeys);
|
|
41
|
+
useEffect(function () {
|
|
42
|
+
var _id = context.$subscriber(context.topics.COMPONENT_ACTIVE).on(function (payload) {
|
|
43
|
+
setSelectedKey(payload.id);
|
|
44
|
+
if (clickBySelf.current) {
|
|
45
|
+
clickBySelf.current = false;
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
if (openModal.current) {
|
|
49
|
+
setModalExpandedKeys(uniq([].concat(_toConsumableArray(latestModalExpandedKeysRef.current), _toConsumableArray(split(getPathById(context.pageData, payload.id), '/')))));
|
|
50
|
+
} else {
|
|
51
|
+
setPageExpandedKeys(uniq([].concat(_toConsumableArray(lastPageExpandedKeysRef.current), _toConsumableArray(split(getPathById(context.pageData, payload.id), '/')))));
|
|
52
|
+
}
|
|
53
|
+
}).watch();
|
|
54
|
+
return function () {
|
|
55
|
+
context.$unsubscriber(context.topics.COMPONENT_ACTIVE, _id);
|
|
56
|
+
};
|
|
57
|
+
}, [context.pageData]);
|
|
58
|
+
var handleSelect = function handleSelect(_key) {
|
|
59
|
+
clickBySelf.current = true;
|
|
60
|
+
context.$publisher(context.topics.COMPONENT_ACTIVE, _key ? {
|
|
61
|
+
id: _key,
|
|
62
|
+
cellNode: context.componentMap.get(_key).dom
|
|
63
|
+
} : null);
|
|
64
|
+
};
|
|
65
|
+
var handleOpenModal = useMemoizedFn(function (_key) {
|
|
66
|
+
var _comp = context.componentMap.get(_key);
|
|
67
|
+
var _prevComp = openModal.current ? context.componentMap.get(openModal.current) : null;
|
|
68
|
+
_prevComp === null || _prevComp === void 0 || _prevComp.api.doClose();
|
|
69
|
+
_comp.api.doOpen();
|
|
70
|
+
openModal.current = _key;
|
|
71
|
+
});
|
|
72
|
+
var render = useMemoizedFn(function (_ref2) {
|
|
73
|
+
var props = _ref2.props,
|
|
74
|
+
children = _ref2.children,
|
|
75
|
+
childrenMap = _objectWithoutProperties(_ref2, _excluded);
|
|
76
|
+
if (props) {
|
|
77
|
+
return /*#__PURE__*/React.createElement(TreeNode, {
|
|
78
|
+
icon: /*#__PURE__*/React.createElement(Icon, {
|
|
79
|
+
type: "layout"
|
|
80
|
+
}),
|
|
81
|
+
title: props.name,
|
|
82
|
+
key: props.id
|
|
83
|
+
}, (children === null || children === void 0 ? void 0 : children.length) && children.map(function (_id) {
|
|
84
|
+
return render(childrenMap[_id]);
|
|
85
|
+
}));
|
|
86
|
+
}
|
|
87
|
+
return (children || []).map(function (_id) {
|
|
88
|
+
return render(childrenMap[_id]);
|
|
89
|
+
});
|
|
90
|
+
});
|
|
91
|
+
useDeepCompareLayoutEffect(function () {
|
|
92
|
+
if (!context.pageData) {
|
|
93
|
+
return;
|
|
94
|
+
}
|
|
95
|
+
var _reduce = reduce(context.pageData.children, function (result, _id) {
|
|
96
|
+
var resultKey = PAGE_CELL.includes(_id) ? 'page' : 'modal';
|
|
97
|
+
result[resultKey][_id] = context.pageData[_id];
|
|
98
|
+
if (!result[resultKey].children) {
|
|
99
|
+
result[resultKey].children = [];
|
|
100
|
+
}
|
|
101
|
+
result[resultKey].children.push(_id);
|
|
102
|
+
return result;
|
|
103
|
+
}, {
|
|
104
|
+
page: {},
|
|
105
|
+
modal: {}
|
|
106
|
+
}),
|
|
107
|
+
page = _reduce.page,
|
|
108
|
+
modal = _reduce.modal;
|
|
109
|
+
setPageAndModal({
|
|
110
|
+
page: render(page),
|
|
111
|
+
modal: render(modal)
|
|
112
|
+
});
|
|
113
|
+
}, [context.pageData]);
|
|
114
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
115
|
+
className: styles['lc-painter-outline']
|
|
116
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
117
|
+
className: classNames(styles['page-node'], _defineProperty({}, styles['page-node-active'], selectedKey === CELL_KEY.PAGE_ROOT)),
|
|
118
|
+
onClick: function onClick() {
|
|
119
|
+
return handleSelect(CELL_KEY.PAGE_ROOT);
|
|
120
|
+
}
|
|
121
|
+
}, /*#__PURE__*/React.createElement(Icon, {
|
|
122
|
+
type: "layout"
|
|
123
|
+
}), /*#__PURE__*/React.createElement("span", {
|
|
124
|
+
style: {
|
|
125
|
+
marginLeft: 5
|
|
126
|
+
}
|
|
127
|
+
}, formatMessage({
|
|
128
|
+
id: 'luckda.lowcode.page',
|
|
129
|
+
label: '页面'
|
|
130
|
+
}))), /*#__PURE__*/React.createElement(Card, {
|
|
131
|
+
size: "small",
|
|
132
|
+
type: "inner",
|
|
133
|
+
hoverable: true,
|
|
134
|
+
title: formatMessage({
|
|
135
|
+
id: 'luckda.lowcode.model',
|
|
136
|
+
label: '模态视图层'
|
|
137
|
+
}),
|
|
138
|
+
style: {
|
|
139
|
+
margin: 5
|
|
140
|
+
},
|
|
141
|
+
bodyStyle: {
|
|
142
|
+
padding: 0
|
|
143
|
+
}
|
|
144
|
+
}, /*#__PURE__*/React.createElement(Tree, {
|
|
145
|
+
showLine: true,
|
|
146
|
+
showIcon: true,
|
|
147
|
+
blockNode: true,
|
|
148
|
+
switcherIcon: /*#__PURE__*/React.createElement(Icon, {
|
|
149
|
+
type: "down"
|
|
150
|
+
}),
|
|
151
|
+
selectedKeys: [selectedKey],
|
|
152
|
+
onSelect: function onSelect(_ref3, _ref4) {
|
|
153
|
+
var _ref5 = _slicedToArray(_ref3, 1),
|
|
154
|
+
_key = _ref5[0];
|
|
155
|
+
var selected = _ref4.selected,
|
|
156
|
+
node = _ref4.node;
|
|
157
|
+
if (selected && node.props.pos.split('-').length === 2) {
|
|
158
|
+
handleOpenModal(_key);
|
|
159
|
+
handleSelect(_key);
|
|
160
|
+
} else if (!selected && node.props.pos.split('-').length === 2) {
|
|
161
|
+
var _comp = context.componentMap.get(openModal.current);
|
|
162
|
+
_comp.api.doClose();
|
|
163
|
+
openModal.current = void 0;
|
|
164
|
+
handleSelect(null);
|
|
165
|
+
} else {
|
|
166
|
+
handleSelect(node.props.eventKey);
|
|
167
|
+
var _split = split(getPathById(context.pageData, node.props.eventKey), '/'),
|
|
168
|
+
_split2 = _slicedToArray(_split, 1),
|
|
169
|
+
parentModal = _split2[0];
|
|
170
|
+
if (!openModal.current || openModal.current !== parentModal) {
|
|
171
|
+
handleOpenModal(parentModal);
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
},
|
|
175
|
+
expandedKeys: modalExpandedKeys,
|
|
176
|
+
onExpand: function onExpand(_keys, _ref6) {
|
|
177
|
+
var expanded = _ref6.expanded,
|
|
178
|
+
node = _ref6.node;
|
|
179
|
+
if (expanded && node.props.pos.split('-').length === 2) {
|
|
180
|
+
handleSelect(null);
|
|
181
|
+
handleOpenModal(node.props.eventKey);
|
|
182
|
+
}
|
|
183
|
+
setModalExpandedKeys(_keys);
|
|
184
|
+
}
|
|
185
|
+
}, pageAndModal === null || pageAndModal === void 0 ? void 0 : pageAndModal.modal)), open && /*#__PURE__*/React.createElement(Tree, {
|
|
186
|
+
showLine: true,
|
|
187
|
+
showIcon: true,
|
|
188
|
+
blockNode: true,
|
|
189
|
+
switcherIcon: /*#__PURE__*/React.createElement(Icon, {
|
|
190
|
+
type: "down"
|
|
191
|
+
}),
|
|
192
|
+
selectedKeys: [selectedKey],
|
|
193
|
+
onSelect: function onSelect(_ref7, _ref8) {
|
|
194
|
+
var _ref9 = _slicedToArray(_ref7, 1),
|
|
195
|
+
_key = _ref9[0];
|
|
196
|
+
var node = _ref8.node;
|
|
197
|
+
if (openModal.current) {
|
|
198
|
+
var _prevComp = context.componentMap.get(openModal.current);
|
|
199
|
+
_prevComp.api.doClose();
|
|
200
|
+
openModal.current = void 0;
|
|
201
|
+
}
|
|
202
|
+
handleSelect(node.props.eventKey);
|
|
203
|
+
},
|
|
204
|
+
expandedKeys: pageExpandedKeys,
|
|
205
|
+
onExpand: setPageExpandedKeys
|
|
206
|
+
}, pageAndModal === null || pageAndModal === void 0 ? void 0 : pageAndModal.page));
|
|
207
|
+
};
|
|
208
|
+
export default Outline;
|
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
2
|
+
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
|
3
|
+
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
|
4
|
+
import React, { useRef, useState, useEffect, useLayoutEffect } from 'react';
|
|
5
|
+
import { useBoolean, useCreation, useMemoizedFn } from 'ahooks';
|
|
6
|
+
import { Breadcrumb, Drawer, Icon } from 'luck-design/antd';
|
|
7
|
+
import classNames from 'classnames';
|
|
8
|
+
import { startsWith, takeRight, cloneDeep } from 'lodash';
|
|
9
|
+
import { useLDContext } from "../engine/provider/ContextProvider";
|
|
10
|
+
import PanelItem from "./components/PanelItem";
|
|
11
|
+
import PanelItemFactory from "../engine/factory/panel-item-factory";
|
|
12
|
+
import { modifyById } from "../engine/tools/dataProcess";
|
|
13
|
+
import styles from "./style/panel.less";
|
|
14
|
+
var _TAB_LIST_ = [{
|
|
15
|
+
title: '属性',
|
|
16
|
+
key: 'attrs'
|
|
17
|
+
}, {
|
|
18
|
+
title: '样式',
|
|
19
|
+
key: 'styles'
|
|
20
|
+
}, {
|
|
21
|
+
title: '高级',
|
|
22
|
+
key: 'advance'
|
|
23
|
+
}];
|
|
24
|
+
var Panel = function Panel() {
|
|
25
|
+
var _nextRef$current, _nextRef$current2;
|
|
26
|
+
var activeTabRef = useRef(null);
|
|
27
|
+
var underLineRef = useRef(null);
|
|
28
|
+
var nextRef = useRef(null);
|
|
29
|
+
var factory = useRef(new PanelItemFactory());
|
|
30
|
+
var _useState = useState(null),
|
|
31
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
32
|
+
activeNode = _useState2[0],
|
|
33
|
+
setActiveNode = _useState2[1];
|
|
34
|
+
var _useState3 = useState('attrs'),
|
|
35
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
36
|
+
activeTabKey = _useState4[0],
|
|
37
|
+
setActiveTabKey = _useState4[1];
|
|
38
|
+
var _useBoolean = useBoolean(false),
|
|
39
|
+
_useBoolean2 = _slicedToArray(_useBoolean, 2),
|
|
40
|
+
open = _useBoolean2[0],
|
|
41
|
+
_useBoolean2$ = _useBoolean2[1],
|
|
42
|
+
setTrue = _useBoolean2$.setTrue,
|
|
43
|
+
setFalse = _useBoolean2$.setFalse;
|
|
44
|
+
var context = useLDContext();
|
|
45
|
+
var handleChange = useMemoizedFn(function (_ref) {
|
|
46
|
+
var field = _ref.field,
|
|
47
|
+
value = _ref.value;
|
|
48
|
+
console.log('handleChange', activeNode, field, value);
|
|
49
|
+
var cloneData = cloneDeep(context.pageData);
|
|
50
|
+
modifyById(cloneData, activeNode.node.id, _objectSpread(_objectSpread({}, activeNode.node), {}, _defineProperty({}, field, value)));
|
|
51
|
+
context._setPageData(cloneData);
|
|
52
|
+
setFalse();
|
|
53
|
+
});
|
|
54
|
+
var renderPanelItems = useMemoizedFn(function (items) {
|
|
55
|
+
return items.map(function (item) {
|
|
56
|
+
var Comp = factory.current.getPanelItemFor(startsWith(item.type, '_') ? 'dynamic' : item.type, item.type);
|
|
57
|
+
return /*#__PURE__*/React.createElement(PanelItem, {
|
|
58
|
+
key: item.key,
|
|
59
|
+
label: item.name
|
|
60
|
+
}, Comp && /*#__PURE__*/React.createElement(Comp, {
|
|
61
|
+
field: item.key,
|
|
62
|
+
value: activeNode.node[item.key],
|
|
63
|
+
next: function next() {
|
|
64
|
+
if (!item.next) return;
|
|
65
|
+
nextRef.current = {
|
|
66
|
+
name: item.next.name,
|
|
67
|
+
NextComp: renderPanelItems(item.next.props)
|
|
68
|
+
};
|
|
69
|
+
setTrue();
|
|
70
|
+
},
|
|
71
|
+
options: item.options,
|
|
72
|
+
disabled: item.disabled,
|
|
73
|
+
onChange: handleChange,
|
|
74
|
+
size: "small"
|
|
75
|
+
}));
|
|
76
|
+
});
|
|
77
|
+
});
|
|
78
|
+
var PropsComps = useCreation(function () {
|
|
79
|
+
var _meta;
|
|
80
|
+
try {
|
|
81
|
+
_meta = require("../engine/meta/".concat(activeNode.node.component.toLowerCase(), ".props.json"));
|
|
82
|
+
} catch (e) {
|
|
83
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null);
|
|
84
|
+
}
|
|
85
|
+
return renderPanelItems(_meta.props);
|
|
86
|
+
}, [activeNode]);
|
|
87
|
+
useEffect(function () {
|
|
88
|
+
if (!open) {
|
|
89
|
+
nextRef.current = null;
|
|
90
|
+
}
|
|
91
|
+
}, [open]);
|
|
92
|
+
useEffect(function () {
|
|
93
|
+
var _id = context.$subscriber(context.topics.COMPONENT_ACTIVE).on(function (payload) {
|
|
94
|
+
if (!payload.id) {
|
|
95
|
+
setActiveNode(null);
|
|
96
|
+
return;
|
|
97
|
+
}
|
|
98
|
+
var component = context.componentMap.get(payload.id);
|
|
99
|
+
var _component$api$getSel = component.api.getSelfAndParentLCData(),
|
|
100
|
+
node = _component$api$getSel.node;
|
|
101
|
+
var levelNodes = takeRight(component.api.getLevelNodes(), 4);
|
|
102
|
+
setActiveNode({
|
|
103
|
+
node: node.props,
|
|
104
|
+
level: levelNodes
|
|
105
|
+
});
|
|
106
|
+
}).watch();
|
|
107
|
+
return function () {
|
|
108
|
+
context.$unsubscriber(context.topics.COMPONENT_ACTIVE, _id);
|
|
109
|
+
};
|
|
110
|
+
}, [context.pageData]);
|
|
111
|
+
useLayoutEffect(function () {
|
|
112
|
+
underLineRef.current.style.left = "".concat(activeTabRef.current.offsetLeft + activeTabRef.current.offsetWidth / 2 - 10, "px");
|
|
113
|
+
}, [activeTabKey, !!activeNode]);
|
|
114
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
115
|
+
className: styles['lc-painter-panel']
|
|
116
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
117
|
+
className: classNames(styles['lc-painter-panel-topbar'], _defineProperty({}, styles.hidden, !activeNode))
|
|
118
|
+
}, /*#__PURE__*/React.createElement(Breadcrumb, {
|
|
119
|
+
separator: ">",
|
|
120
|
+
style: {
|
|
121
|
+
fontSize: 12
|
|
122
|
+
}
|
|
123
|
+
}, activeNode === null || activeNode === void 0 ? void 0 : activeNode.level.map(function (_ref2) {
|
|
124
|
+
var id = _ref2.id,
|
|
125
|
+
name = _ref2.name;
|
|
126
|
+
return /*#__PURE__*/React.createElement(Breadcrumb.Item, {
|
|
127
|
+
key: id,
|
|
128
|
+
className: classNames(_defineProperty({}, styles['active-node-level'], id !== activeNode.node.id)),
|
|
129
|
+
onMouseEnter: function onMouseEnter() {
|
|
130
|
+
if (id === activeNode.node.id) return;
|
|
131
|
+
context.$publisher(context.topics.COMPONENT_HOVER, {
|
|
132
|
+
id: id,
|
|
133
|
+
cellNode: context.componentMap.get(id).dom
|
|
134
|
+
});
|
|
135
|
+
},
|
|
136
|
+
onMouseLeave: function onMouseLeave() {
|
|
137
|
+
if (id === activeNode.node.id) return;
|
|
138
|
+
context.$publisher(context.topics.COMPONENT_HOVER, null);
|
|
139
|
+
},
|
|
140
|
+
onClick: function onClick() {
|
|
141
|
+
if (id === activeNode.node.id) return;
|
|
142
|
+
context.$publisher(context.topics.COMPONENT_ACTIVE, {
|
|
143
|
+
id: id,
|
|
144
|
+
cellNode: context.componentMap.get(id).dom
|
|
145
|
+
});
|
|
146
|
+
}
|
|
147
|
+
}, name);
|
|
148
|
+
}))), /*#__PURE__*/React.createElement("div", {
|
|
149
|
+
className: classNames(styles['lc-painter-panel-tabbar'], _defineProperty({}, styles.hidden, !activeNode))
|
|
150
|
+
}, /*#__PURE__*/React.createElement("ul", {
|
|
151
|
+
className: styles.headerList
|
|
152
|
+
}, _TAB_LIST_.map(function (_item) {
|
|
153
|
+
return /*#__PURE__*/React.createElement("li", {
|
|
154
|
+
key: _item.key,
|
|
155
|
+
ref: activeTabKey === _item.key ? activeTabRef : null,
|
|
156
|
+
className: classNames(_defineProperty({}, styles.actived, activeTabKey === _item.key)),
|
|
157
|
+
onClick: function onClick() {
|
|
158
|
+
return setActiveTabKey(_item.key);
|
|
159
|
+
}
|
|
160
|
+
}, _item.title);
|
|
161
|
+
})), /*#__PURE__*/React.createElement("div", {
|
|
162
|
+
ref: underLineRef,
|
|
163
|
+
className: styles.underline
|
|
164
|
+
})), activeTabKey === _TAB_LIST_[0].key && /*#__PURE__*/React.createElement("div", {
|
|
165
|
+
className: classNames(styles['lc-painter-panel-content'], _defineProperty({}, styles.hidden, !activeNode))
|
|
166
|
+
}, PropsComps, /*#__PURE__*/React.createElement(Drawer, {
|
|
167
|
+
visible: open,
|
|
168
|
+
width: 320,
|
|
169
|
+
mask: false,
|
|
170
|
+
closable: false,
|
|
171
|
+
getContainer: false,
|
|
172
|
+
destroyOnClose: true,
|
|
173
|
+
style: {
|
|
174
|
+
position: 'absolute'
|
|
175
|
+
},
|
|
176
|
+
bodyStyle: {
|
|
177
|
+
padding: 0,
|
|
178
|
+
height: '100%'
|
|
179
|
+
}
|
|
180
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
181
|
+
className: styles['next-content']
|
|
182
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
183
|
+
className: styles['next-content-header'],
|
|
184
|
+
onClick: setFalse
|
|
185
|
+
}, /*#__PURE__*/React.createElement(Icon, {
|
|
186
|
+
type: "left"
|
|
187
|
+
}), (_nextRef$current = nextRef.current) === null || _nextRef$current === void 0 ? void 0 : _nextRef$current.name, /*#__PURE__*/React.createElement(Icon, {
|
|
188
|
+
type: "close"
|
|
189
|
+
})), /*#__PURE__*/React.createElement("div", {
|
|
190
|
+
className: styles['next-content-body']
|
|
191
|
+
}, (_nextRef$current2 = nextRef.current) === null || _nextRef$current2 === void 0 ? void 0 : _nextRef$current2.NextComp)))), activeTabKey === _TAB_LIST_[1].key && /*#__PURE__*/React.createElement("div", null, "\u6837\u5F0F\u9762\u677F"), activeTabKey === _TAB_LIST_[2].key && /*#__PURE__*/React.createElement("div", null, "\u9AD8\u7EA7\u9762\u677F"), /*#__PURE__*/React.createElement("div", {
|
|
192
|
+
className: classNames(styles['lc-painter-panel-empty'], _defineProperty({}, styles.hidden, !!activeNode))
|
|
193
|
+
}, "\u8BF7\u5728\u5DE6\u4FA7\u753B\u5E03\u9009\u4E2D\u8282\u70B9"));
|
|
194
|
+
};
|
|
195
|
+
export default Panel;
|