@tmagic/editor 1.2.0-beta.15 → 1.2.0-beta.16

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.
@@ -10,6 +10,7 @@ import Gesto from 'gesto';
10
10
  import { isPop, getNodePath, isNumber, isPage, toLine, datetimeFormatter, removeClassNameByClassName } from '@tmagic/utils';
11
11
  import { EventEmitter } from 'events';
12
12
  import { DEFAULT_EVENTS, DEFAULT_METHODS } from '@tmagic/core';
13
+ import { MForm } from '@tmagic/form';
13
14
  import KeyController from 'keycon';
14
15
 
15
16
  const __default__$t = defineComponent({
@@ -3108,7 +3109,9 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
3108
3109
  const curFormConfig = ref([]);
3109
3110
  const services = inject("services");
3110
3111
  const node = computed(() => services?.editorService.get("node"));
3111
- const propsPanelSize = computed(() => services?.uiService.get("propsPanelSize") || "small");
3112
+ const propsPanelSize = computed(
3113
+ () => services?.uiService.get("propsPanelSize") || "small"
3114
+ );
3112
3115
  const stage = computed(() => services?.editorService.get("stage"));
3113
3116
  const init = async () => {
3114
3117
  if (!node.value) {
@@ -3141,19 +3144,19 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
3141
3144
  };
3142
3145
  expose({ submit });
3143
3146
  return (_ctx, _cache) => {
3144
- const _component_m_form = resolveComponent("m-form");
3145
3147
  return openBlock(), createElementBlock("div", _hoisted_1$a, [
3146
3148
  renderSlot(_ctx.$slots, "props-panel-header"),
3147
- createVNode(_component_m_form, {
3149
+ (openBlock(), createBlock(unref(MForm), {
3148
3150
  ref_key: "configForm",
3149
3151
  ref: configForm,
3152
+ key: unref(node)?.type,
3150
3153
  class: normalizeClass(`m-editor-props-panel ${unref(propsPanelSize)}`),
3151
3154
  "popper-class": `m-editor-props-panel-popper ${unref(propsPanelSize)}`,
3152
3155
  size: unref(propsPanelSize),
3153
3156
  "init-values": values.value,
3154
3157
  config: curFormConfig.value,
3155
3158
  onChange: submit
3156
- }, null, 8, ["class", "popper-class", "size", "init-values", "config"])
3159
+ }, null, 8, ["class", "popper-class", "size", "init-values", "config"]))
3157
3160
  ]);
3158
3161
  };
3159
3162
  }
@@ -4356,35 +4359,27 @@ const _sfc_main$a = /* @__PURE__ */ defineComponent({
4356
4359
  await expandNodes();
4357
4360
  setTreeKeyStatus();
4358
4361
  });
4359
- const layerPanel = ref();
4360
4362
  const mouseenterHandler = () => {
4361
- layerPanel.value?.focus();
4363
+ tree.value?.$el.focus();
4362
4364
  };
4363
4365
  const mouseleaveHandler = () => {
4364
- layerPanel.value?.blur();
4365
- if (selectedIds.value.length === 1)
4366
- isMultiSelectStatus.value = false;
4366
+ tree.value?.$el.blur();
4367
+ isMultiSelectStatus.value = false;
4367
4368
  };
4368
4369
  let keycon;
4369
4370
  onMounted(() => {
4370
- layerPanel.value?.addEventListener("mouseenter", mouseenterHandler);
4371
- layerPanel.value?.addEventListener("mouseleave", mouseleaveHandler);
4372
- keycon = new KeyController(layerPanel.value);
4371
+ keycon = new KeyController(tree.value?.$el);
4373
4372
  const isMac = /mac os x/.test(navigator.userAgent.toLowerCase());
4374
4373
  const ctrl = isMac ? "meta" : "ctrl";
4375
4374
  keycon.keydown(ctrl, (e) => {
4376
4375
  e.inputEvent.preventDefault();
4377
4376
  isMultiSelectStatus.value = true;
4378
- }).on("blur", () => {
4379
- isMultiSelectStatus.value = false;
4380
4377
  }).keyup(ctrl, (e) => {
4381
4378
  e.inputEvent.preventDefault();
4382
4379
  isMultiSelectStatus.value = false;
4383
4380
  });
4384
4381
  });
4385
4382
  onUnmounted(() => {
4386
- layerPanel.value?.removeEventListener("mouseenter", mouseenterHandler);
4387
- layerPanel.value?.removeEventListener("mouseleave", mouseleaveHandler);
4388
4383
  keycon.destroy();
4389
4384
  });
4390
4385
  const clicked = ref(false);
@@ -4441,79 +4436,77 @@ const _sfc_main$a = /* @__PURE__ */ defineComponent({
4441
4436
  menu.value?.show(event);
4442
4437
  };
4443
4438
  return (_ctx, _cache) => {
4444
- return openBlock(), createElementBlock("div", {
4445
- ref_key: "layerPanel",
4446
- ref: layerPanel
4447
- }, [
4448
- createVNode(unref(TMagicScrollbar), { class: "magic-editor-layer-panel" }, {
4449
- default: withCtx(() => [
4450
- renderSlot(_ctx.$slots, "layer-panel-header"),
4451
- createVNode(unref(TMagicInput), {
4452
- modelValue: filterText.value,
4453
- "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => filterText.value = $event),
4454
- class: "search-input",
4455
- size: "small",
4456
- placeholder: "\u8F93\u5165\u5173\u952E\u5B57\u8FDB\u884C\u8FC7\u6EE4",
4457
- clearable: "",
4458
- "prefix-icon": unref(Search),
4459
- onChange: filterTextChangeHandler
4460
- }, null, 8, ["modelValue", "prefix-icon"]),
4461
- unref(values).length ? (openBlock(), createBlock(unref(TMagicTree), {
4462
- key: 0,
4463
- class: "magic-editor-layer-tree",
4464
- ref_key: "tree",
4465
- ref: tree,
4466
- "node-key": "id",
4467
- "empty-text": "\u9875\u9762\u7A7A\u8361\u8361\u7684",
4468
- draggable: "",
4469
- "default-expanded-keys": unref(defaultExpandedKeys),
4470
- load: loadItems,
4471
- data: unref(values),
4472
- "default-expand-all": true,
4473
- "expand-on-click-node": false,
4474
- "highlight-current": true,
4475
- props: {
4476
- children: "items"
4477
- },
4478
- "filter-node-method": filterNode,
4479
- "allow-drop": allowDrop,
4480
- "show-checkbox": isMultiSelectStatus.value || unref(selectedIds).length > 1,
4481
- onNodeClick: clickHandler,
4482
- onNodeContextmenu: contextmenu,
4483
- onNodeDragEnd: handleDragEnd,
4484
- onNodeCollapse: handleCollapse,
4485
- onNodeExpand: handleExpand,
4486
- onCheck: multiClickHandler,
4487
- onMousedown: toggleClickFlag,
4488
- onMouseup: toggleClickFlag
4489
- }, {
4490
- default: withCtx(({ node, data }) => [
4491
- createElementVNode("div", {
4492
- id: data.id,
4493
- class: normalizeClass(["cus-tree-node", { "cus-tree-node-hover": canHighlight(data) }]),
4494
- onMouseenter: ($event) => unref(highlightHandler)(data)
4495
- }, [
4496
- renderSlot(_ctx.$slots, "layer-node-content", {
4497
- node,
4498
- data
4499
- }, () => [
4500
- createElementVNode("span", null, toDisplayString(`${data.name} (${data.id})`), 1)
4501
- ])
4502
- ], 42, _hoisted_1$4)
4503
- ]),
4504
- _: 3
4505
- }, 8, ["default-expanded-keys", "data", "show-checkbox"])) : createCommentVNode("", true),
4506
- (openBlock(), createBlock(Teleport, { to: "body" }, [
4507
- createVNode(_sfc_main$b, {
4508
- ref_key: "menu",
4509
- ref: menu,
4510
- "layer-content-menu": __props.layerContentMenu
4511
- }, null, 8, ["layer-content-menu"])
4512
- ]))
4513
- ]),
4514
- _: 3
4515
- })
4516
- ], 512);
4439
+ return openBlock(), createBlock(unref(TMagicScrollbar), { class: "magic-editor-layer-panel" }, {
4440
+ default: withCtx(() => [
4441
+ renderSlot(_ctx.$slots, "layer-panel-header"),
4442
+ createVNode(unref(TMagicInput), {
4443
+ modelValue: filterText.value,
4444
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => filterText.value = $event),
4445
+ class: "search-input",
4446
+ size: "small",
4447
+ placeholder: "\u8F93\u5165\u5173\u952E\u5B57\u8FDB\u884C\u8FC7\u6EE4",
4448
+ clearable: "",
4449
+ "prefix-icon": unref(Search),
4450
+ onChange: filterTextChangeHandler
4451
+ }, null, 8, ["modelValue", "prefix-icon"]),
4452
+ unref(values).length ? (openBlock(), createBlock(unref(TMagicTree), {
4453
+ key: 0,
4454
+ tabindex: "-1",
4455
+ class: "magic-editor-layer-tree",
4456
+ ref_key: "tree",
4457
+ ref: tree,
4458
+ "node-key": "id",
4459
+ "empty-text": "\u9875\u9762\u7A7A\u8361\u8361\u7684",
4460
+ draggable: "",
4461
+ "default-expanded-keys": unref(defaultExpandedKeys),
4462
+ load: loadItems,
4463
+ data: unref(values),
4464
+ "default-expand-all": true,
4465
+ "expand-on-click-node": false,
4466
+ "highlight-current": true,
4467
+ props: {
4468
+ children: "items"
4469
+ },
4470
+ "filter-node-method": filterNode,
4471
+ "allow-drop": allowDrop,
4472
+ "show-checkbox": isMultiSelectStatus.value || unref(selectedIds).length > 1,
4473
+ onNodeClick: clickHandler,
4474
+ onNodeContextmenu: contextmenu,
4475
+ onNodeDragEnd: handleDragEnd,
4476
+ onNodeCollapse: handleCollapse,
4477
+ onNodeExpand: handleExpand,
4478
+ onCheck: multiClickHandler,
4479
+ onMousedown: toggleClickFlag,
4480
+ onMouseup: toggleClickFlag,
4481
+ onMouseenter: mouseenterHandler,
4482
+ onMouseleave: mouseleaveHandler
4483
+ }, {
4484
+ default: withCtx(({ node, data }) => [
4485
+ createElementVNode("div", {
4486
+ id: data.id,
4487
+ class: normalizeClass(["cus-tree-node", { "cus-tree-node-hover": canHighlight(data) }]),
4488
+ onMouseenter: ($event) => unref(highlightHandler)(data)
4489
+ }, [
4490
+ renderSlot(_ctx.$slots, "layer-node-content", {
4491
+ node,
4492
+ data
4493
+ }, () => [
4494
+ createElementVNode("span", null, toDisplayString(`${data.name} (${data.id})`), 1)
4495
+ ])
4496
+ ], 42, _hoisted_1$4)
4497
+ ]),
4498
+ _: 3
4499
+ }, 8, ["default-expanded-keys", "data", "show-checkbox"])) : createCommentVNode("", true),
4500
+ (openBlock(), createBlock(Teleport, { to: "body" }, [
4501
+ createVNode(_sfc_main$b, {
4502
+ ref_key: "menu",
4503
+ ref: menu,
4504
+ "layer-content-menu": __props.layerContentMenu
4505
+ }, null, 8, ["layer-content-menu"])
4506
+ ]))
4507
+ ]),
4508
+ _: 3
4509
+ });
4517
4510
  };
4518
4511
  }
4519
4512
  });