@tmagic/editor 1.0.0-rc.6 → 1.0.0-rc.9

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.
Files changed (82) hide show
  1. package/dist/style.css +3 -0
  2. package/dist/tmagic-editor.es.js +93 -91
  3. package/dist/tmagic-editor.es.js.map +1 -1
  4. package/dist/tmagic-editor.umd.js +92 -92
  5. package/dist/tmagic-editor.umd.js.map +1 -1
  6. package/dist/types/src/Editor.vue.d.ts +17 -1
  7. package/dist/types/src/fields/Code.vue.d.ts +4 -4
  8. package/dist/types/src/fields/CodeLink.vue.d.ts +1 -3
  9. package/dist/types/src/layouts/PropsPanel.vue.d.ts +2 -4
  10. package/dist/types/src/layouts/workspace/Workspace.vue.d.ts +3 -31
  11. package/dist/types/src/services/history.d.ts +1 -18
  12. package/dist/types/src/services/props.d.ts +8 -2
  13. package/dist/types/src/type.d.ts +9 -0
  14. package/dist/types/src/utils/editor.d.ts +0 -6
  15. package/dist/types/src/utils/props.d.ts +8 -1
  16. package/package.json +11 -20
  17. package/src/Editor.vue +21 -8
  18. package/src/layouts/workspace/Stage.vue +11 -31
  19. package/src/layouts/workspace/Workspace.vue +2 -28
  20. package/src/services/editor.ts +1 -2
  21. package/src/services/props.ts +62 -7
  22. package/src/theme/workspace.scss +4 -0
  23. package/src/type.ts +10 -0
  24. package/src/utils/editor.ts +1 -50
  25. package/src/utils/props.ts +30 -7
  26. package/LICENSE +0 -5432
  27. package/coverage/clover.xml +0 -1615
  28. package/coverage/coverage-final.json +0 -36
  29. package/coverage/lcov-report/base.css +0 -224
  30. package/coverage/lcov-report/block-navigation.js +0 -87
  31. package/coverage/lcov-report/favicon.png +0 -0
  32. package/coverage/lcov-report/index.html +0 -206
  33. package/coverage/lcov-report/prettify.css +0 -1
  34. package/coverage/lcov-report/prettify.js +0 -2
  35. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  36. package/coverage/lcov-report/sorter.js +0 -196
  37. package/coverage/lcov-report/src/Editor.vue.html +0 -853
  38. package/coverage/lcov-report/src/components/ContentMenu.vue.html +0 -505
  39. package/coverage/lcov-report/src/components/Icon.vue.html +0 -172
  40. package/coverage/lcov-report/src/components/ScrollViewer.vue.html +0 -283
  41. package/coverage/lcov-report/src/components/ToolButton.vue.html +0 -772
  42. package/coverage/lcov-report/src/components/index.html +0 -161
  43. package/coverage/lcov-report/src/index.html +0 -131
  44. package/coverage/lcov-report/src/layouts/AddPageBox.vue.html +0 -214
  45. package/coverage/lcov-report/src/layouts/Framework.vue.html +0 -343
  46. package/coverage/lcov-report/src/layouts/NavMenu.vue.html +0 -208
  47. package/coverage/lcov-report/src/layouts/PropsPanel.vue.html +0 -319
  48. package/coverage/lcov-report/src/layouts/Resizer.vue.html +0 -268
  49. package/coverage/lcov-report/src/layouts/index.html +0 -176
  50. package/coverage/lcov-report/src/layouts/sidebar/ComponentListPanel.vue.html +0 -358
  51. package/coverage/lcov-report/src/layouts/sidebar/LayerMenu.vue.html +0 -430
  52. package/coverage/lcov-report/src/layouts/sidebar/LayerPanel.vue.html +0 -775
  53. package/coverage/lcov-report/src/layouts/sidebar/Sidebar.vue.html +0 -226
  54. package/coverage/lcov-report/src/layouts/sidebar/TabPane.vue.html +0 -289
  55. package/coverage/lcov-report/src/layouts/sidebar/index.html +0 -176
  56. package/coverage/lcov-report/src/layouts/workspace/PageBar.vue.html +0 -718
  57. package/coverage/lcov-report/src/layouts/workspace/Stage.vue.html +0 -766
  58. package/coverage/lcov-report/src/layouts/workspace/ViewerMenu.vue.html +0 -577
  59. package/coverage/lcov-report/src/layouts/workspace/Workspace.vue.html +0 -649
  60. package/coverage/lcov-report/src/layouts/workspace/index.html +0 -161
  61. package/coverage/lcov-report/src/services/BaseService.ts.html +0 -643
  62. package/coverage/lcov-report/src/services/componentList.ts.html +0 -229
  63. package/coverage/lcov-report/src/services/editor.ts.html +0 -2167
  64. package/coverage/lcov-report/src/services/events.ts.html +0 -331
  65. package/coverage/lcov-report/src/services/history.ts.html +0 -478
  66. package/coverage/lcov-report/src/services/index.html +0 -206
  67. package/coverage/lcov-report/src/services/props.ts.html +0 -415
  68. package/coverage/lcov-report/src/services/ui.ts.html +0 -580
  69. package/coverage/lcov-report/src/type.ts.html +0 -850
  70. package/coverage/lcov-report/src/utils/compose.ts.html +0 -184
  71. package/coverage/lcov-report/src/utils/config.ts.html +0 -172
  72. package/coverage/lcov-report/src/utils/editor.ts.html +0 -850
  73. package/coverage/lcov-report/src/utils/index.html +0 -221
  74. package/coverage/lcov-report/src/utils/index.ts.html +0 -151
  75. package/coverage/lcov-report/src/utils/logger.ts.html +0 -226
  76. package/coverage/lcov-report/src/utils/props.ts.html +0 -796
  77. package/coverage/lcov-report/src/utils/scroll-viewer.ts.html +0 -733
  78. package/coverage/lcov-report/src/utils/undo-redo.ts.html +0 -313
  79. package/coverage/lcov.info +0 -3893
  80. package/dist/types/src/components/ToolButton.vue.d.ts +0 -46
  81. package/dist/types/src/fields/UISelect.vue.d.ts +0 -35
  82. package/dist/types/src/layouts/workspace/PageBar.vue.d.ts +0 -18
@@ -139,7 +139,7 @@
139
139
  }
140
140
  var CodeLink = /* @__PURE__ */ _export_sfc(_sfc_main$l, [["render", _sfc_render$l]]);
141
141
 
142
- var UISelect_vue_vue_type_style_index_0_lang = '';
142
+ var UISelect_vue_vue_type_style_index_0_lang = /* #__PURE__ */ (() => ".m-fields-ui-select {\n cursor: pointer;\n}\n.m-fields-ui-select i {\n margin-right: 3px;\n}\n.m-fields-ui-select span {\n color: #2882e0;\n}")();
143
143
 
144
144
  const _sfc_main$k = vue.defineComponent({
145
145
  name: "m-fields-ui-select",
@@ -645,7 +645,7 @@
645
645
 
646
646
  class Props extends BaseService {
647
647
  constructor() {
648
- super(["setPropsConfig", "getPropsConfig", "setPropsValue", "getPropsValue"]);
648
+ super(["setPropsConfig", "getPropsConfig", "setPropsValue", "getPropsValue", "createId", "setNewItemId"]);
649
649
  this.state = vue.reactive({
650
650
  propsConfigMap: {},
651
651
  propsValueMap: {}
@@ -684,12 +684,44 @@
684
684
  }
685
685
  return value;
686
686
  }
687
+ const data = lodashEs.cloneDeep(defaultValue);
688
+ await this.setNewItemId(data);
687
689
  return {
688
- ...getDefaultPropsValue(type),
689
- ...lodashEs.mergeWith(lodashEs.cloneDeep(this.state.propsValueMap[type] || {}), lodashEs.cloneDeep(defaultValue))
690
+ ...getDefaultPropsValue(type, await this.createId(type)),
691
+ ...lodashEs.mergeWith(lodashEs.cloneDeep(this.state.propsValueMap[type] || {}), data)
690
692
  };
691
693
  }
694
+ async createId(type) {
695
+ return `${type}_${lodashEs.random(1e4, false)}`;
696
+ }
697
+ async setNewItemId(config, parent) {
698
+ const oldId = config.id;
699
+ config.id = await this.createId(config.type || "component");
700
+ if (utils.isPop(config) && parent?.type === schema.NodeType.PAGE) {
701
+ updatePopId(oldId, config.id, parent);
702
+ }
703
+ if (config.items && Array.isArray(config.items)) {
704
+ for (const item of config.items) {
705
+ await this.setNewItemId(item, config);
706
+ }
707
+ }
708
+ }
692
709
  }
710
+ const updatePopId = (oldId, popId, pageConfig) => {
711
+ pageConfig.items?.forEach((config) => {
712
+ if (config.pop === oldId) {
713
+ config.pop = popId;
714
+ return;
715
+ }
716
+ if (config.popId === oldId) {
717
+ config.popId = popId;
718
+ return;
719
+ }
720
+ if (Array.isArray(config.items)) {
721
+ updatePopId(oldId, popId, config);
722
+ }
723
+ });
724
+ };
693
725
  var propsService = new Props();
694
726
 
695
727
  var LayerOffset = /* @__PURE__ */ ((LayerOffset2) => {
@@ -710,7 +742,6 @@
710
742
  })(Keys || {});
711
743
 
712
744
  const COPY_STORAGE_KEY = "$MagicEditorCopyData";
713
- const generateId = (type) => `${type}_${lodashEs.random(1e4, false)}`;
714
745
  const getPageList = (app) => {
715
746
  if (app.items && Array.isArray(app.items)) {
716
747
  return app.items.filter((item) => item.type === schema.NodeType.PAGE);
@@ -730,32 +761,6 @@
730
761
  return pageName;
731
762
  };
732
763
  const generatePageNameByApp = (app) => generatePageName(getPageNameList(getPageList(app)));
733
- const updatePopId = (oldId, popId, pageConfig) => {
734
- pageConfig.items?.forEach((config) => {
735
- if (config.pop === oldId) {
736
- config.pop = popId;
737
- return;
738
- }
739
- if (config.popId === oldId) {
740
- config.popId = popId;
741
- return;
742
- }
743
- if (Array.isArray(config.items)) {
744
- updatePopId(oldId, popId, config);
745
- }
746
- });
747
- };
748
- const setNewItemId = (config, parent) => {
749
- const oldId = config.id;
750
- config.id = generateId(config.type || "component");
751
- config.name = `${config.name?.replace(/_(\d+)$/, "")}_${config.id}`;
752
- if (utils.isPop(config) && parent?.type === schema.NodeType.PAGE) {
753
- updatePopId(oldId, config.id, parent);
754
- }
755
- if (config.items && Array.isArray(config.items)) {
756
- config.items.forEach((item) => setNewItemId(item, config));
757
- }
758
- };
759
764
  const isFixed = (node) => node.style?.position === "fixed";
760
765
  const getNodeIndex = (node, parent) => {
761
766
  const items = parent?.items || [];
@@ -1154,7 +1159,7 @@
1154
1159
  console.error(e);
1155
1160
  return;
1156
1161
  }
1157
- setNewItemId(config, this.get("root"));
1162
+ await propsService.setNewItemId(config, this.get("root"));
1158
1163
  if (config.style) {
1159
1164
  config.style = {
1160
1165
  ...config.style,
@@ -1484,6 +1489,21 @@
1484
1489
  text: "\u7C97\u7EC6"
1485
1490
  }
1486
1491
  ]
1492
+ },
1493
+ {
1494
+ type: "fieldset",
1495
+ legend: "\u53D8\u5F62",
1496
+ name: "transform",
1497
+ items: [
1498
+ {
1499
+ name: "rotate",
1500
+ text: "\u65CB\u8F6C\u89D2\u5EA6"
1501
+ },
1502
+ {
1503
+ name: "scale",
1504
+ text: "\u7F29\u653E"
1505
+ }
1506
+ ]
1487
1507
  }
1488
1508
  ]
1489
1509
  }
@@ -1544,12 +1564,18 @@
1544
1564
  }
1545
1565
  ];
1546
1566
  const DEFAULT_CONFIG = fillConfig([]);
1547
- const getDefaultPropsValue = (type) => ({
1567
+ const getDefaultPropsValue = (type, id) => ["page", "container"].includes(type) ? {
1548
1568
  type,
1549
- id: generateId(type),
1569
+ id,
1570
+ style: {},
1571
+ name: type,
1572
+ items: []
1573
+ } : {
1574
+ type,
1575
+ id,
1550
1576
  style: {},
1551
1577
  name: type
1552
- });
1578
+ };
1553
1579
 
1554
1580
  const _sfc_main$i = vue.defineComponent({
1555
1581
  components: { Plus: icons.Plus },
@@ -3386,25 +3412,9 @@
3386
3412
  ViewerMenu,
3387
3413
  ScrollViewer
3388
3414
  },
3389
- props: {
3390
- render: {
3391
- type: Function
3392
- },
3393
- runtimeUrl: String,
3394
- autoScrollIntoView: Boolean,
3395
- canSelect: {
3396
- type: Function,
3397
- default: (el) => Boolean(el.id)
3398
- },
3399
- moveableOptions: {
3400
- type: [Object, Function],
3401
- default: () => (core) => ({
3402
- container: core?.renderer?.contentWindow?.document.getElementById("app")
3403
- })
3404
- }
3405
- },
3406
- setup(props) {
3415
+ setup() {
3407
3416
  const services = vue.inject("services");
3417
+ const stageOptions = vue.inject("stageOptions");
3408
3418
  const stageWrap = vue.ref();
3409
3419
  const stageContainer = vue.ref();
3410
3420
  const menu = vue.ref();
@@ -3421,22 +3431,23 @@
3421
3431
  return;
3422
3432
  if (!stageContainer.value)
3423
3433
  return;
3424
- if (!(props.runtimeUrl || props.render) || !root.value)
3434
+ if (!(stageOptions?.runtimeUrl || stageOptions?.render) || !root.value)
3425
3435
  return;
3426
3436
  stage = new StageCore__default["default"]({
3427
- render: props.render,
3428
- runtimeUrl: props.runtimeUrl,
3437
+ render: stageOptions.render,
3438
+ runtimeUrl: stageOptions.runtimeUrl,
3429
3439
  zoom: zoom.value,
3430
- autoScrollIntoView: props.autoScrollIntoView,
3440
+ autoScrollIntoView: stageOptions.autoScrollIntoView,
3431
3441
  canSelect: (el, event, stop) => {
3432
- const elCanSelect = props.canSelect(el);
3442
+ const elCanSelect = stageOptions.canSelect(el);
3433
3443
  if (uiSelectMode.value && elCanSelect && event.type === "mousedown") {
3434
3444
  document.dispatchEvent(new CustomEvent("ui-select", { detail: el }));
3435
3445
  return stop();
3436
3446
  }
3437
3447
  return elCanSelect;
3438
3448
  },
3439
- moveableOptions: props.moveableOptions
3449
+ moveableOptions: stageOptions.moveableOptions,
3450
+ updateDragEl: stageOptions.updateDragEl
3440
3451
  });
3441
3452
  services?.editorService.set("stage", vue.markRaw(stage));
3442
3453
  stage?.mount(stageContainer.value);
@@ -3563,19 +3574,6 @@
3563
3574
  PageBar,
3564
3575
  MagicStage
3565
3576
  },
3566
- props: {
3567
- runtimeUrl: String,
3568
- autoScrollIntoView: Boolean,
3569
- render: {
3570
- type: Function
3571
- },
3572
- moveableOptions: {
3573
- type: [Object, Function]
3574
- },
3575
- canSelect: {
3576
- type: Function
3577
- }
3578
- },
3579
3577
  setup() {
3580
3578
  const services = vue.inject("services");
3581
3579
  const workspace = vue.ref();
@@ -3686,13 +3684,8 @@
3686
3684
  const _component_page_bar = vue.resolveComponent("page-bar");
3687
3685
  return vue.openBlock(), vue.createElementBlock("div", _hoisted_1, [
3688
3686
  (vue.openBlock(), vue.createBlock(_component_magic_stage, {
3689
- key: _ctx.page?.id,
3690
- "runtime-url": _ctx.runtimeUrl,
3691
- "auto-scroll-into-view": _ctx.autoScrollIntoView,
3692
- render: _ctx.render,
3693
- "moveable-options": _ctx.moveableOptions,
3694
- "can-select": _ctx.canSelect
3695
- }, null, 8, ["runtime-url", "auto-scroll-into-view", "render", "moveable-options", "can-select"])),
3687
+ key: _ctx.page?.id
3688
+ })),
3696
3689
  vue.renderSlot(_ctx.$slots, "workspace-content"),
3697
3690
  vue.createVNode(_component_page_bar, null, {
3698
3691
  "page-bar-title": vue.withCtx(({ page }) => [
@@ -3891,13 +3884,17 @@
3891
3884
  default: () => ({})
3892
3885
  },
3893
3886
  moveableOptions: {
3894
- type: [Object, Function]
3887
+ type: [Object, Function],
3888
+ default: () => (core) => ({
3889
+ container: core?.renderer?.contentWindow?.document.getElementById("app")
3890
+ })
3895
3891
  },
3896
3892
  defaultSelected: {
3897
3893
  type: [Number, String]
3898
3894
  },
3899
3895
  canSelect: {
3900
- type: Function
3896
+ type: Function,
3897
+ default: (el) => Boolean(el.id)
3901
3898
  },
3902
3899
  stageRect: {
3903
3900
  type: [String, Object]
@@ -3905,6 +3902,9 @@
3905
3902
  codeOptions: {
3906
3903
  type: Object,
3907
3904
  default: () => ({})
3905
+ },
3906
+ updateDragEl: {
3907
+ type: Function
3908
3908
  }
3909
3909
  },
3910
3910
  emits: ["props-panel-mounted", "update:modelValue"],
@@ -3956,6 +3956,14 @@
3956
3956
  vue.provide("services", services);
3957
3957
  vue.provide("layerContentMenu", props.layerContentMenu);
3958
3958
  vue.provide("stageContentMenu", props.stageContentMenu);
3959
+ vue.provide("stageOptions", vue.reactive({
3960
+ runtimeUrl: props.runtimeUrl,
3961
+ autoScrollIntoView: props.autoScrollIntoView,
3962
+ render: props.render,
3963
+ moveableOptions: props.moveableOptions,
3964
+ canSelect: props.canSelect,
3965
+ updateDragEl: props.updateDragEl
3966
+ }));
3959
3967
  return services;
3960
3968
  }
3961
3969
  });
@@ -3978,13 +3986,7 @@
3978
3986
  ]),
3979
3987
  workspace: vue.withCtx(() => [
3980
3988
  vue.renderSlot(_ctx.$slots, "workspace", {}, () => [
3981
- vue.createVNode(_component_workspace, {
3982
- "runtime-url": _ctx.runtimeUrl,
3983
- "auto-scroll-into-view": _ctx.autoScrollIntoView,
3984
- render: _ctx.render,
3985
- "moveable-options": _ctx.moveableOptions,
3986
- "can-select": _ctx.canSelect
3987
- }, {
3989
+ vue.createVNode(_component_workspace, null, {
3988
3990
  "workspace-content": vue.withCtx(() => [
3989
3991
  vue.renderSlot(_ctx.$slots, "workspace-content", { editorService: _ctx.editorService })
3990
3992
  ]),
@@ -3995,7 +3997,7 @@
3995
3997
  vue.renderSlot(_ctx.$slots, "page-bar-popover", { page })
3996
3998
  ]),
3997
3999
  _: 3
3998
- }, 8, ["runtime-url", "auto-scroll-into-view", "render", "moveable-options", "can-select"])
4000
+ })
3999
4001
  ])
4000
4002
  ]),
4001
4003
  propsPanel: vue.withCtx(() => [
@@ -4014,7 +4016,7 @@
4014
4016
  }
4015
4017
  var Editor = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
4016
4018
 
4017
- var index$1 = '';
4019
+ var index$1 = /* #__PURE__ */ (() => ".m-editor-nav-menu {\n display: flex;\n z-index: 5;\n -webkit-box-pack: justify;\n justify-content: space-between;\n -webkit-box-align: center;\n align-items: center;\n background-color: #ffffff;\n font-size: 19.2px;\n color: #070303;\n font-weight: 400;\n box-sizing: border-box;\n margin: 0px;\n flex: 0 0 35px;\n border-bottom: 1px solid #d8dee8;\n}\n.m-editor-nav-menu > div {\n display: flex;\n height: 100%;\n z-index: 1;\n align-items: center;\n}\n.m-editor-nav-menu .menu-center {\n justify-content: center;\n}\n.m-editor-nav-menu .menu-right {\n justify-content: flex-end;\n}\n.m-editor-nav-menu .menu-item {\n flex-direction: row;\n -webkit-box-align: center;\n align-items: center;\n vertical-align: middle;\n font-size: 14px;\n line-height: 1;\n height: 100%;\n color: rgba(255, 255, 255, 0.7);\n box-sizing: inherit;\n z-index: 1;\n display: flex !important;\n transition: all 0.3s ease 0s;\n border-bottom: 2px solid transparent;\n margin: 0;\n}\n.m-editor-nav-menu .menu-item .is-disabled {\n opacity: 0.5;\n}\n.m-editor-nav-menu .menu-item .is-text {\n padding: 5px;\n}\n.m-editor-nav-menu .menu-item .is-text,\n.m-editor-nav-menu .menu-item i {\n color: #070303;\n}\n.m-editor-nav-menu .menu-item .icon {\n display: flex;\n -webkit-box-align: center;\n align-items: center;\n height: 100%;\n padding: 0px 8px;\n}\n.m-editor-nav-menu .menu-item .menu-item-text {\n color: #070303;\n}\n.m-editor {\n display: flex;\n flex-direction: column;\n width: 100%;\n}\n.m-editor-content {\n width: 100%;\n height: calc(100% - 35px);\n display: flex;\n justify-self: space-between;\n}\n.m-editor-framework-center {\n position: relative;\n transform: translateZ(0);\n flex: 1;\n}\n.m-editor-framework-left {\n background-color: #ffffff;\n}\n.m-editor-framework-center .el-scrollbar__view {\n height: 100%;\n min-height: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n}\n.m-editor-empty-panel {\n display: flex;\n flex: 1;\n justify-content: center;\n align-items: center;\n flex-direction: column;\n height: calc(100% - 32px);\n}\n.m-editor-empty-content {\n display: flex;\n justify-content: space-evenly;\n flex-direction: row;\n width: 100%;\n}\n.m-editor-empty-button {\n border: 3px solid rgba(0, 0, 0, 0.2);\n padding: 10px 40px;\n color: rgba(0, 0, 0, 0.6);\n cursor: pointer;\n}\n.m-editor-empty-button i {\n height: 180px;\n line-height: 180px;\n font-size: 100px;\n}\n.m-editor-empty-button p {\n text-align: center;\n font-size: 20px;\n margin-top: 5px;\n}\n.m-editor-empty-button:hover {\n border-color: #2882e0;\n color: #2882e0;\n}\n.m-editor-sidebar {\n height: 100%;\n}\n.m-editor-sidebar.el-tabs--left .el-tabs__header {\n background: #2882e0;\n border: 0;\n}\n.m-editor-sidebar.el-tabs--left .el-tabs__header.is-left {\n width: 40px;\n margin-right: 0;\n}\n.m-editor-sidebar.el-tabs--left .el-tabs__header .el-tabs__nav-wrap {\n margin: 0;\n}\n.m-editor-sidebar.el-tabs--left .el-tabs__header .el-tabs__nav {\n border: 0;\n border-radius: 0;\n}\n.m-editor-sidebar.el-tabs--left .el-tabs__header .tab-label {\n margin-left: 2px;\n}\n.m-editor-sidebar.el-tabs--left .el-tabs__header .el-tabs__item.is-left {\n line-height: 15px;\n border: 0;\n height: auto;\n padding: 8px;\n color: rgb(255, 255, 255);\n box-sizing: border-box;\n}\n.m-editor-sidebar.el-tabs--left .el-tabs__header .el-tabs__item.is-left.is-left.is-active {\n background: #ffffff;\n border: 0;\n}\n.m-editor-sidebar.el-tabs--left .el-tabs__header .el-tabs__item.is-left.is-left.is-active i {\n color: #353140;\n}\n.m-editor-sidebar.el-tabs--left .el-tabs__header .el-tabs__item.is-left.is-left.is-active .magic-editor-tab-panel-title {\n color: #353140;\n}\n.m-editor-sidebar.el-tabs--left .el-tabs__header .el-tabs__item.is-left.is-left:first-child {\n border-right: 0;\n}\n.m-editor-sidebar.el-tabs--left .el-tabs__header i {\n font-size: 25px;\n color: rgba(255, 255, 255, 0.6);\n}\n.m-editor-sidebar.el-tabs--left .el-tabs__header i:hover {\n color: rgb(255, 255, 255);\n}\n.m-editor-sidebar.el-tabs--left .el-tabs__header .magic-editor-tab-panel-title {\n font-size: 12px;\n white-space: normal;\n}\n.m-editor-sidebar .el-scrollbar {\n height: 100%;\n}\n.m-editor-sidebar .el-tree {\n min-height: 100%;\n}\n.m-editor-sidebar .fold-icon {\n position: absolute;\n bottom: 8px;\n left: 0px;\n width: 45px;\n padding-left: 8px;\n color: #fff;\n font-size: 32px;\n opacity: 0.8;\n cursor: pointer;\n}\n.m-editor-sidebar .fold-icon:hover {\n background: rgba(0, 0, 0, 0.2);\n}\n.m-editor-sidebar .el-tabs__content,\n.m-editor-sidebar .el-tab-pane {\n height: 100%;\n}\n.magic-editor-layer-panel {\n background: #ffffff;\n}\n.magic-editor-layer-panel .search-input {\n background: #ffffff;\n color: #bbbbbb;\n padding: 10px;\n position: absolute;\n top: 0;\n left: 0;\n z-index: 1;\n}\n.magic-editor-layer-panel .search-input .el-input__suffix {\n padding: 10px 5px;\n}\n.magic-editor-layer-panel .node-content {\n flex: 1;\n display: flex;\n width: 100%;\n}\n.magic-editor-layer-panel .node-content > div {\n width: 8px;\n}\n.magic-editor-layer-panel .node-content > span {\n width: calc(100% - 68px);\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.magic-editor-layer-panel .node-content > i {\n margin-right: 10px;\n font-size: 20px;\n}\n.magic-editor-layer-panel .node-content > i.lock {\n color: #bbb;\n}\n.magic-editor-layer-panel,\n.magic-editor-layer-panel .el-tree {\n background-color: #ffffff;\n color: #313a40;\n}\n.magic-editor-layer-panel .el-tree--highlight-current .el-tree-node.is-current > .el-tree-node__content {\n background-color: #2882e0;\n color: #fff;\n}\n.magic-editor-layer-panel .cus-tree-node {\n width: 100%;\n overflow: hidden;\n}\n.magic-editor-layer-panel .cus-tree-node-hover {\n background-color: #f3f5f9;\n width: 100%;\n}\n.magic-editor-layer-panel .el-tree-node:focus > .el-tree-node__content {\n background-color: #2882e0;\n color: #fff;\n}\n.ui-tree-tip {\n width: 100%;\n height: 25px;\n margin-left: 10px;\n background: #ffffff;\n font-style: italic;\n color: #555554;\n position: absolute;\n top: 40px;\n left: 0;\n z-index: 1;\n}\n.ui-component-panel {\n height: 100%;\n border-top: 0 !important;\n margin-top: 50px;\n background-color: #ffffff;\n}\n.ui-component-panel .search-input {\n background: #f8fbff;\n color: #bbbbbb;\n padding: 10px;\n position: absolute;\n top: 0;\n left: 0;\n box-sizing: border-box;\n z-index: 1;\n}\n.ui-component-panel .search-input .el-input__prefix {\n padding: 10px;\n}\n.ui-component-panel .search-input .el-input__suffix {\n padding: 10px 5px;\n}\n.ui-component-panel .el-collapse-item > div:first-of-type {\n border-bottom: 1px solid #d9dbdd;\n margin-bottom: 10px;\n}\n.ui-component-panel .el-collapse-item__header {\n background: #ffffff;\n color: #070303;\n height: 25px;\n line-height: 25px;\n padding-left: 10px;\n font-size: 12px;\n}\n.ui-component-panel .el-collapse-item__header i {\n margin-right: 5px;\n font-size: 14px;\n}\n.ui-component-panel .el-collapse-item__wrap {\n background: #ffffff;\n border-bottom: 0;\n}\n.ui-component-panel .el-collapse-item__wrap .el-collapse-item__content {\n padding: 10px;\n display: flex;\n flex-wrap: wrap;\n}\n.ui-component-panel .el-collapse-item__wrap .component-item {\n display: flex;\n overflow: hidden;\n text-overflow: ellipsis;\n margin: 5px 10px;\n box-sizing: border-box;\n color: #070303;\n flex-direction: column;\n width: 42px;\n cursor: pointer;\n}\n.ui-component-panel .el-collapse-item__wrap .component-item i {\n font-size: 20px;\n background: #fff;\n height: 40px;\n width: 40px;\n line-height: 40px;\n border-radius: 5px;\n color: #909090;\n border: 1px solid #d9dbdd;\n display: flex;\n justify-content: space-evenly;\n align-items: center;\n margin-bottom: 5px;\n}\n.ui-component-panel .el-collapse-item__wrap .component-item i:hover {\n background: #2882e0;\n color: #fff;\n border-color: #4e8be1;\n}\n.ui-component-panel .el-collapse-item__wrap .component-item span {\n font-size: 12px;\n text-align: center;\n}\n.ui-component-panel .el-collapse-item__wrap .component-item .el-tooltip {\n width: 50px;\n height: 30px;\n line-height: 15px;\n display: block;\n white-space: normal;\n margin: 0;\n}\n.m-editor-resizer {\n border-left: 1px solid transparent;\n border-right: 1px solid transparent;\n width: 8px;\n margin: 0 -5px;\n height: 100%;\n opacity: 0.9;\n background: padding-box #d8dee8;\n box-sizing: border-box;\n cursor: col-resize;\n z-index: 1;\n}\n.m-editor-resizer:hover {\n border-color: #d8dee8;\n}\n.m-editor-resizer .icon-container {\n visibility: hidden;\n opacity: 0;\n transition: opacity 0.4s;\n width: 20px;\n height: 120px;\n line-height: 120px;\n text-align: center;\n background: #d8dee8;\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n cursor: pointer;\n}\n.m-editor-resizer .icon-container.position-left {\n transform: translate(calc(-100% - 4px), -50%);\n}\n.m-editor-resizer .icon-container.position-right {\n transform: translate(calc(100% + 4px), -50%);\n}\n.m-editor-resizer .icon {\n color: #fff;\n font-size: 18px;\n}\n.magic-editor-resizer:hover .icon-container {\n visibility: visible;\n opacity: 1;\n}\n.m-editor-workspace {\n height: 100%;\n width: 100%;\n user-select: none;\n}\n.m-editor-workspace:focus-visible {\n outline: 0;\n}\n.m-editor-page-bar {\n position: fixed;\n bottom: 0;\n left: 0;\n display: flex;\n width: 100%;\n height: 32px;\n line-height: 32px;\n color: #070303;\n background-color: #f3f3f3;\n border-top: 1px solid #d9dbdd;\n z-index: 2;\n overflow: hidden;\n}\n.m-editor-page-bar-items {\n display: flex;\n transition: transform 0.3s;\n}\n.m-editor-page-bar-item {\n padding: 0 10px;\n cursor: pointer;\n border-right: 1px solid #d9dbdd;\n display: flex;\n justify-items: center;\n align-items: center;\n background-color: #f3f3f3;\n}\n.m-editor-page-bar-item.active {\n background-color: #fff;\n cursor: text;\n}\n.m-editor-page-bar-item.active .m-editor-page-bar-menu-icon {\n cursor: pointer;\n}\n.m-editor-page-bar-item-icon {\n position: relative;\n z-index: 1;\n}\n.m-editor-page-bar-item-title {\n max-width: 150px;\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n}\n.page-bar-popover.el-popper.el-popover {\n padding: 10px 0;\n}\n.page-bar-popover .menu-item {\n cursor: pointer;\n transition: all 0.2s ease 0s;\n padding: 5px 14px;\n}\n.page-bar-popover .menu-item .el-button--text,\n.page-bar-popover .menu-item i {\n color: #070303;\n}\n.page-bar-popover .menu-item:hover {\n background-color: #f3f5f9;\n}\n.m-editor-props-panel {\n padding: 0 10px;\n}\n.m-editor-props-panel.small .el-form-item__label {\n font-size: 12px;\n}\n.m-editor-props-panel.small .m-fieldset legend {\n font-size: 12px;\n}\n.m-editor-props-panel.small .el-tabs__item {\n font-size: 12px;\n}\n.m-editor-props-panel .el-input__wrapper {\n border-radius: 0;\n}\n.m-editor-props-panel-popper.small span,\n.m-editor-props-panel-popper.small a,\n.m-editor-props-panel-popper.small p {\n font-size: 12px;\n}\n.magic-editor-content-menu {\n position: fixed;\n font-size: 12px;\n background: #fff;\n box-shadow: 0 2px 8px 2px rgba(68, 73, 77, 0.16);\n z-index: 9999;\n transform-origin: 0% 0%;\n font-weight: 600;\n padding: 4px 0px;\n overflow: auto;\n max-height: 100%;\n}\n.magic-editor-content-menu .menu-item {\n color: #333;\n display: flex;\n -webkit-box-align: center;\n align-items: center;\n cursor: pointer;\n min-width: 140px;\n transition: all 0.2s ease 0s;\n padding: 5px 14px;\n border-left: 2px solid transparent;\n}\n.magic-editor-content-menu .menu-item .el-button {\n width: 100%;\n justify-content: flex-start;\n}\n.magic-editor-content-menu .menu-item .el-button--text,\n.magic-editor-content-menu .menu-item i {\n color: #070303;\n}\n.magic-editor-content-menu .menu-item.divider {\n padding: 0 14px;\n}\n.magic-editor-content-menu .menu-item.divider .el-divider {\n margin: 0;\n}\n.magic-editor-content-menu .menu-item:hover {\n background-color: #f3f5f9;\n}\n.m-editor-stage {\n position: relative;\n width: 100%;\n height: calc(100% - 32px);\n overflow: hidden;\n display: flex;\n justify-content: center;\n align-items: center;\n}\n.m-editor-stage-container {\n width: 100%;\n height: 100%;\n z-index: 0;\n position: relative;\n border: 1px solid #d9dbdd;\n transition: transform 0.3s;\n box-sizing: content-box;\n}\n.m-editor-stage-container::-webkit-scrollbar {\n width: 0 !important;\n}\n.magic-code-editor {\n width: 100%;\n}\n.magic-code-editor .margin {\n margin: 0;\n}")();
4018
4020
 
4019
4021
  const defaultInstallOpt = {};
4020
4022
  var index = {
@@ -4049,7 +4051,6 @@
4049
4051
  exports.error = error;
4050
4052
  exports.eventsService = eventsService;
4051
4053
  exports.fillConfig = fillConfig;
4052
- exports.generateId = generateId;
4053
4054
  exports.generatePageName = generatePageName;
4054
4055
  exports.generatePageNameByApp = generatePageNameByApp;
4055
4056
  exports.getConfig = getConfig;
@@ -4065,7 +4066,6 @@
4065
4066
  exports.propsService = propsService;
4066
4067
  exports.setConfig = setConfig;
4067
4068
  exports.setLayout = setLayout;
4068
- exports.setNewItemId = setNewItemId;
4069
4069
  exports.toRelative = toRelative;
4070
4070
  exports.uiService = uiService;
4071
4071
  exports.warn = warn;