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