@gct-paas/word 0.1.73-patch.4 → 0.1.73-patch.6

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/dist/index.es.js CHANGED
@@ -1,4 +1,4 @@
1
- /*! @gct-paas/word v0.1.73-patch.4 */
1
+ /*! @gct-paas/word v0.1.73-patch.6 */
2
2
  import { Fragment, Suspense, Teleport, Transition, TransitionGroup, cloneVNode, computed, createApp, createBlock, createCommentVNode, createElementBlock, createElementVNode, createSlots, createStaticVNode, createTextVNode, createVNode, defineAsyncComponent, defineComponent, getCurrentInstance, getCurrentScope, guardReactiveProps, h, inject, isRef, isVNode, markRaw, mergeModels, mergeProps, nextTick, normalizeClass, normalizeProps, normalizeStyle, onBeforeMount, onBeforeUnmount, onMounted, onScopeDispose, onUnmounted, openBlock, provide, reactive, readonly, ref, render, renderList, renderSlot, resolveComponent, resolveDynamicComponent, shallowRef, toDisplayString, toRaw, toRef, toValue, unref, useCssVars, useModel, useSlots, vModelText, vShow, watch, watchEffect, withCtx, withDirectives, withKeys, withModifiers } from "vue";
3
3
  import FloatingVue, { PopperWrapper } from "floating-vue";
4
4
  import VueKonva from "vue-konva";
@@ -666,7 +666,7 @@ var init_utils$4 = __esmMin((() => {
666
666
  }));
667
667
  //#endregion
668
668
  //#region src/base/calendar/src/time.vue?vue&type=script&setup=true&lang.ts
669
- var _hoisted_1$165, _hoisted_2$104, _hoisted_3$82, _hoisted_4$60, _hoisted_5$49, time_vue_vue_type_script_setup_true_lang_default;
669
+ var _hoisted_1$165, _hoisted_2$104, _hoisted_3$82, _hoisted_4$60, _hoisted_5$48, time_vue_vue_type_script_setup_true_lang_default;
670
670
  var init_time_vue_vue_type_script_setup_true_lang = __esmMin((() => {
671
671
  init_utils$4();
672
672
  init_base$2();
@@ -675,7 +675,7 @@ var init_time_vue_vue_type_script_setup_true_lang = __esmMin((() => {
675
675
  _hoisted_2$104 = { class: "scrollbar-container" };
676
676
  _hoisted_3$82 = ["onClick"];
677
677
  _hoisted_4$60 = { class: "gct-time-footer" };
678
- _hoisted_5$49 = { class: "gct-right-btns" };
678
+ _hoisted_5$48 = { class: "gct-right-btns" };
679
679
  time_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
680
680
  __name: "time",
681
681
  props: {
@@ -841,7 +841,7 @@ var init_time_vue_vue_type_script_setup_true_lang = __esmMin((() => {
841
841
  }), 128))]), createElementVNode("div", _hoisted_4$60, [createElementVNode("div", {
842
842
  class: "gct-now-btn",
843
843
  onClick: nowDay
844
- }, "此刻"), createElementVNode("div", _hoisted_5$49, [__props.showClearBtn && __props.modelValue ? (openBlock(), createBlock(unref(button_default), {
844
+ }, "此刻"), createElementVNode("div", _hoisted_5$48, [__props.showClearBtn && __props.modelValue ? (openBlock(), createBlock(unref(button_default), {
845
845
  key: 0,
846
846
  class: "gct-sure-btn",
847
847
  size: "small",
@@ -879,7 +879,7 @@ var init_time = __esmMin((() => {
879
879
  }));
880
880
  //#endregion
881
881
  //#region src/base/calendar/src/calendar.vue?vue&type=script&setup=true&name=calendar&lang.ts
882
- var _hoisted_1$164, _hoisted_2$103, _hoisted_3$81, _hoisted_4$59, _hoisted_5$48, _hoisted_6$30, _hoisted_7$25, _hoisted_8$19, _hoisted_9$13, _hoisted_10$11, _hoisted_11$8, _hoisted_12$7, calendar_vue_vue_type_script_setup_true_name_calendar_lang_default;
882
+ var _hoisted_1$164, _hoisted_2$103, _hoisted_3$81, _hoisted_4$59, _hoisted_5$47, _hoisted_6$30, _hoisted_7$25, _hoisted_8$19, _hoisted_9$13, _hoisted_10$11, _hoisted_11$8, _hoisted_12$7, calendar_vue_vue_type_script_setup_true_name_calendar_lang_default;
883
883
  var init_calendar_vue_vue_type_script_setup_true_name_calendar_lang = __esmMin((() => {
884
884
  init_base$2();
885
885
  init_time();
@@ -888,7 +888,7 @@ var init_calendar_vue_vue_type_script_setup_true_name_calendar_lang = __esmMin((
888
888
  _hoisted_2$103 = { class: "gct-dtp-date" };
889
889
  _hoisted_3$81 = { class: "gct-dtp-header" };
890
890
  _hoisted_4$59 = { class: "text" };
891
- _hoisted_5$48 = { class: "gct-dtp-head" };
891
+ _hoisted_5$47 = { class: "gct-dtp-head" };
892
892
  _hoisted_6$30 = { class: "gct-dtp-rows-wrapper" };
893
893
  _hoisted_7$25 = ["onClick"];
894
894
  _hoisted_8$19 = { class: "dtp-day-label" };
@@ -1059,7 +1059,7 @@ var init_calendar_vue_vue_type_script_setup_true_name_calendar_lang = __esmMin((
1059
1059
  onClick: withModifiers(nextMonth, ["stop"])
1060
1060
  })
1061
1061
  ]),
1062
- createElementVNode("div", _hoisted_5$48, [(openBlock(true), createElementBlock(Fragment, null, renderList(weekdayShort.value, (d) => {
1062
+ createElementVNode("div", _hoisted_5$47, [(openBlock(true), createElementBlock(Fragment, null, renderList(weekdayShort.value, (d) => {
1063
1063
  return openBlock(), createElementBlock("div", {
1064
1064
  class: "day head",
1065
1065
  key: d
@@ -1111,17 +1111,17 @@ var init_calendar_vue_vue_type_script_setup_true_name_calendar_lang = __esmMin((
1111
1111
  });
1112
1112
  }));
1113
1113
  //#endregion
1114
- //#region src/base/calendar/src/calendar.vue?vue&type=style&index=0&scoped=b11c16c5&lang.less
1115
- var init_calendar_vue_vue_type_style_index_0_scoped_b11c16c5_lang = __esmMin((() => {}));
1114
+ //#region src/base/calendar/src/calendar.vue?vue&type=style&index=0&scoped=3ad083f2&lang.less
1115
+ var init_calendar_vue_vue_type_style_index_0_scoped_3ad083f2_lang = __esmMin((() => {}));
1116
1116
  //#endregion
1117
1117
  //#region src/base/calendar/src/calendar.vue
1118
1118
  var calendar_default;
1119
1119
  var init_calendar$1 = __esmMin((() => {
1120
1120
  init_calendar_vue_vue_type_script_setup_true_name_calendar_lang();
1121
1121
  init_calendar_vue_vue_type_script_setup_true_name_calendar_lang();
1122
- init_calendar_vue_vue_type_style_index_0_scoped_b11c16c5_lang();
1122
+ init_calendar_vue_vue_type_style_index_0_scoped_3ad083f2_lang();
1123
1123
  init__plugin_vue_export_helper();
1124
- calendar_default = /*#__PURE__*/ _plugin_vue_export_helper_default(calendar_vue_vue_type_script_setup_true_name_calendar_lang_default, [["__scopeId", "data-v-b11c16c5"]]);
1124
+ calendar_default = /*#__PURE__*/ _plugin_vue_export_helper_default(calendar_vue_vue_type_script_setup_true_name_calendar_lang_default, [["__scopeId", "data-v-3ad083f2"]]);
1125
1125
  }));
1126
1126
  //#endregion
1127
1127
  //#region src/base/calendar/index.ts
@@ -1335,7 +1335,7 @@ var init_dropdown$1 = __esmMin((() => {
1335
1335
  }));
1336
1336
  //#endregion
1337
1337
  //#region src/base/dropdown/src/dropdown-basic-select.vue?vue&type=script&setup=true&name=dropdown-basic-select&lang.ts
1338
- var _hoisted_1$161, _hoisted_2$101, _hoisted_3$79, _hoisted_4$58, _hoisted_5$47, _hoisted_6$29, _hoisted_7$24, _hoisted_8$18, _hoisted_9$12, _hoisted_10$10, dropdown_basic_select_vue_vue_type_script_setup_true_name_dropdown_basic_select_lang_default;
1338
+ var _hoisted_1$161, _hoisted_2$101, _hoisted_3$79, _hoisted_4$58, _hoisted_5$46, _hoisted_6$29, _hoisted_7$24, _hoisted_8$18, _hoisted_9$12, _hoisted_10$10, dropdown_basic_select_vue_vue_type_script_setup_true_name_dropdown_basic_select_lang_default;
1339
1339
  var init_dropdown_basic_select_vue_vue_type_script_setup_true_name_dropdown_basic_select_lang = __esmMin((() => {
1340
1340
  init_dropdown$1();
1341
1341
  init_base$2();
@@ -1346,7 +1346,7 @@ var init_dropdown_basic_select_vue_vue_type_script_setup_true_name_dropdown_basi
1346
1346
  class: "group-label"
1347
1347
  };
1348
1348
  _hoisted_4$58 = ["onClick"];
1349
- _hoisted_5$47 = { class: "option-label" };
1349
+ _hoisted_5$46 = { class: "option-label" };
1350
1350
  _hoisted_6$29 = { class: "option-right" };
1351
1351
  _hoisted_7$24 = {
1352
1352
  key: 1,
@@ -1473,7 +1473,7 @@ var init_dropdown_basic_select_vue_vue_type_script_setup_true_name_dropdown_basi
1473
1473
  disabled: !item.showTip
1474
1474
  }, {
1475
1475
  popper: withCtx(() => [createTextVNode(toDisplayString(item.tip || item.label), 1)]),
1476
- default: withCtx(() => [createElementVNode("span", _hoisted_5$47, toDisplayString(item.label), 1)]),
1476
+ default: withCtx(() => [createElementVNode("span", _hoisted_5$46, toDisplayString(item.label), 1)]),
1477
1477
  _: 2
1478
1478
  }, 1032, ["disabled"]),
1479
1479
  createElementVNode("div", _hoisted_6$29, [withDirectives(createVNode(unref(icon_default), {
@@ -1829,7 +1829,7 @@ var init_icon = __esmMin((() => {
1829
1829
  }));
1830
1830
  //#endregion
1831
1831
  //#region src/base/image-upload/src/image-upload.vue?vue&type=script&setup=true&lang.ts
1832
- var _hoisted_1$157, _hoisted_2$97, _hoisted_3$75, _hoisted_4$57, _hoisted_5$46, _hoisted_6$28, _hoisted_7$23, image_upload_vue_vue_type_script_setup_true_lang_default;
1832
+ var _hoisted_1$157, _hoisted_2$97, _hoisted_3$75, _hoisted_4$57, _hoisted_5$45, _hoisted_6$28, _hoisted_7$23, image_upload_vue_vue_type_script_setup_true_lang_default;
1833
1833
  var init_image_upload_vue_vue_type_script_setup_true_lang = __esmMin((() => {
1834
1834
  init_base$2();
1835
1835
  _hoisted_1$157 = {
@@ -1839,7 +1839,7 @@ var init_image_upload_vue_vue_type_script_setup_true_lang = __esmMin((() => {
1839
1839
  _hoisted_2$97 = ["src"];
1840
1840
  _hoisted_3$75 = { class: "upload-img-mask" };
1841
1841
  _hoisted_4$57 = { class: "tip-text" };
1842
- _hoisted_5$46 = {
1842
+ _hoisted_5$45 = {
1843
1843
  key: 2,
1844
1844
  class: "upload-loading"
1845
1845
  };
@@ -1923,7 +1923,7 @@ var init_image_upload_vue_vue_type_script_setup_true_lang = __esmMin((() => {
1923
1923
  key: 1,
1924
1924
  class: "upload-tip",
1925
1925
  onClick: handleUploadClick
1926
- }, [createElementVNode("div", null, [_cache[1] || (_cache[1] = createElementVNode("i", { class: "iconfont icon-tupian_wudaima" }, null, -1)), createElementVNode("div", _hoisted_4$57, toDisplayString(__props.tip), 1)])])), loading.value ? (openBlock(), createElementBlock("div", _hoisted_5$46, [..._cache[2] || (_cache[2] = [createElementVNode("i", { class: "iconfont icon-gongzuotai_gongshi" }, null, -1)])])) : createCommentVNode("", true)], 4),
1926
+ }, [createElementVNode("div", null, [_cache[1] || (_cache[1] = createElementVNode("i", { class: "iconfont icon-tupian_wudaima" }, null, -1)), createElementVNode("div", _hoisted_4$57, toDisplayString(__props.tip), 1)])])), loading.value ? (openBlock(), createElementBlock("div", _hoisted_5$45, [..._cache[2] || (_cache[2] = [createElementVNode("i", { class: "iconfont icon-gongzuotai_gongshi" }, null, -1)])])) : createCommentVNode("", true)], 4),
1927
1927
  createElementVNode("input", {
1928
1928
  ref_key: "inputRef",
1929
1929
  ref: inputRef,
@@ -1962,7 +1962,7 @@ var init_image_upload = __esmMin((() => {
1962
1962
  }));
1963
1963
  //#endregion
1964
1964
  //#region src/base/input/src/input.vue?vue&type=script&setup=true&lang.ts
1965
- var _hoisted_1$156, _hoisted_2$96, _hoisted_3$74, _hoisted_4$56, _hoisted_5$45, _hoisted_6$27, _hoisted_7$22, input_vue_vue_type_script_setup_true_lang_default;
1965
+ var _hoisted_1$156, _hoisted_2$96, _hoisted_3$74, _hoisted_4$56, _hoisted_5$44, _hoisted_6$27, _hoisted_7$22, input_vue_vue_type_script_setup_true_lang_default;
1966
1966
  var init_input_vue_vue_type_script_setup_true_lang = __esmMin((() => {
1967
1967
  init_base$2();
1968
1968
  _hoisted_1$156 = {
@@ -1990,7 +1990,7 @@ var init_input_vue_vue_type_script_setup_true_lang = __esmMin((() => {
1990
1990
  key: 2,
1991
1991
  class: "gct-input-count"
1992
1992
  };
1993
- _hoisted_5$45 = { key: 0 };
1993
+ _hoisted_5$44 = { key: 0 };
1994
1994
  _hoisted_6$27 = {
1995
1995
  key: 3,
1996
1996
  class: "gct-input-suffix"
@@ -2205,7 +2205,7 @@ var init_input_vue_vue_type_script_setup_true_lang = __esmMin((() => {
2205
2205
  color: "rgba(0, 0, 0, 0.25)",
2206
2206
  size: "14"
2207
2207
  })]))])) : createCommentVNode("", true),
2208
- props.showCount ? (openBlock(), createElementBlock("span", _hoisted_4$56, [createTextVNode(toDisplayString(countValue.value), 1), props.maxLength ? (openBlock(), createElementBlock("span", _hoisted_5$45, " / " + toDisplayString(props.maxLength), 1)) : createCommentVNode("", true)])) : createCommentVNode("", true),
2208
+ props.showCount ? (openBlock(), createElementBlock("span", _hoisted_4$56, [createTextVNode(toDisplayString(countValue.value), 1), props.maxLength ? (openBlock(), createElementBlock("span", _hoisted_5$44, " / " + toDisplayString(props.maxLength), 1)) : createCommentVNode("", true)])) : createCommentVNode("", true),
2209
2209
  props.suffix ? (openBlock(), createElementBlock("span", _hoisted_6$27, [createElementVNode("span", _hoisted_7$22, toDisplayString(__props.suffix), 1)])) : createCommentVNode("", true)
2210
2210
  ], 2)], 6);
2211
2211
  };
@@ -2561,7 +2561,7 @@ var init_core$1 = __esmMin((() => {
2561
2561
  }));
2562
2562
  //#endregion
2563
2563
  //#region src/base/input/src/input-number.vue?vue&type=script&setup=true&lang.ts
2564
- var _hoisted_1$155, _hoisted_2$95, _hoisted_3$73, _hoisted_4$55, _hoisted_5$44, input_number_vue_vue_type_script_setup_true_lang_default;
2564
+ var _hoisted_1$155, _hoisted_2$95, _hoisted_3$73, _hoisted_4$55, _hoisted_5$43, input_number_vue_vue_type_script_setup_true_lang_default;
2565
2565
  var init_input_number_vue_vue_type_script_setup_true_lang = __esmMin((() => {
2566
2566
  init_base$2();
2567
2567
  init_core$1();
@@ -2584,7 +2584,7 @@ var init_input_number_vue_vue_type_script_setup_true_lang = __esmMin((() => {
2584
2584
  key: 2,
2585
2585
  class: "gct-input-number-suffix"
2586
2586
  };
2587
- _hoisted_5$44 = { class: "gct-input-number-suffix-text" };
2587
+ _hoisted_5$43 = { class: "gct-input-number-suffix-text" };
2588
2588
  input_number_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
2589
2589
  __name: "input-number",
2590
2590
  props: {
@@ -2831,7 +2831,7 @@ var init_input_number_vue_vue_type_script_setup_true_lang = __esmMin((() => {
2831
2831
  color: "#64748b",
2832
2832
  size: "12"
2833
2833
  })], 2)])) : createCommentVNode("", true),
2834
- props.suffix ? (openBlock(), createElementBlock("span", _hoisted_4$55, [createElementVNode("span", _hoisted_5$44, toDisplayString(__props.suffix), 1)])) : createCommentVNode("", true)
2834
+ props.suffix ? (openBlock(), createElementBlock("span", _hoisted_4$55, [createElementVNode("span", _hoisted_5$43, toDisplayString(__props.suffix), 1)])) : createCommentVNode("", true)
2835
2835
  ], 2);
2836
2836
  };
2837
2837
  }
@@ -3344,6 +3344,10 @@ var init_ModalRoot_vue_vue_type_script_setup_true_lang = __esmMin((() => {
3344
3344
  type: Boolean,
3345
3345
  default: void 0
3346
3346
  },
3347
+ readonly: {
3348
+ type: Boolean,
3349
+ default: false
3350
+ },
3347
3351
  onConfirm: {},
3348
3352
  onConfirmContinue: {},
3349
3353
  onCancel: {}
@@ -3364,6 +3368,13 @@ var init_ModalRoot_vue_vue_type_script_setup_true_lang = __esmMin((() => {
3364
3368
  y: 0
3365
3369
  });
3366
3370
  let contextConfirmFn = null;
3371
+ const mergedBodyProps = computed(() => {
3372
+ var _props$bodyProps;
3373
+ return {
3374
+ ...props.bodyProps || {},
3375
+ readonly: props.readonly || ((_props$bodyProps = props.bodyProps) === null || _props$bodyProps === void 0 ? void 0 : _props$bodyProps.readonly)
3376
+ };
3377
+ });
3367
3378
  const showMaskLayer = computed(() => {
3368
3379
  if (props.showMask !== void 0) return props.showMask;
3369
3380
  return !props.draggable;
@@ -3456,6 +3467,10 @@ var init_ModalRoot_vue_vue_type_script_setup_true_lang = __esmMin((() => {
3456
3467
  }
3457
3468
  };
3458
3469
  const handleConfirmClick = async () => {
3470
+ if (props.readonly) {
3471
+ close();
3472
+ return;
3473
+ }
3459
3474
  const confirmFn = contextConfirmFn || props.onConfirm;
3460
3475
  if (!confirmFn) {
3461
3476
  close();
@@ -3515,15 +3530,15 @@ var init_ModalRoot_vue_vue_type_script_setup_true_lang = __esmMin((() => {
3515
3530
  version: "v2"
3516
3531
  })])) : createCommentVNode("", true)], 34),
3517
3532
  createElementVNode("section", {
3518
- class: "modal-body",
3533
+ class: normalizeClass(["modal-body", { "is-readonly": __props.readonly }]),
3519
3534
  style: normalizeStyle(bodyStyle.value)
3520
3535
  }, [(openBlock(), createBlock(resolveDynamicComponent(__props.body), mergeProps({
3521
3536
  ref_key: "bodyRef",
3522
3537
  ref: bodyRef,
3523
3538
  modalContext
3524
- }, __props.bodyProps), null, 16))], 4),
3539
+ }, mergedBodyProps.value), null, 16))], 6),
3525
3540
  __props.showFooter ? (openBlock(), createElementBlock("footer", _hoisted_4$53, [
3526
- __props.showCancel ? (openBlock(), createBlock(unref(button_default), {
3541
+ __props.showCancel && !__props.readonly ? (openBlock(), createBlock(unref(button_default), {
3527
3542
  key: 0,
3528
3543
  disabled: loading.value,
3529
3544
  onClick: unref(handleCancelClick)
@@ -3531,7 +3546,7 @@ var init_ModalRoot_vue_vue_type_script_setup_true_lang = __esmMin((() => {
3531
3546
  default: withCtx(() => [createTextVNode(toDisplayString(__props.cancelText), 1)]),
3532
3547
  _: 1
3533
3548
  }, 8, ["disabled", "onClick"])) : createCommentVNode("", true),
3534
- props.showConfirmContinue ? (openBlock(), createBlock(unref(button_default), {
3549
+ props.showConfirmContinue && !__props.readonly ? (openBlock(), createBlock(unref(button_default), {
3535
3550
  key: 1,
3536
3551
  type: "primary",
3537
3552
  disabled: loading.value,
@@ -3542,14 +3557,18 @@ var init_ModalRoot_vue_vue_type_script_setup_true_lang = __esmMin((() => {
3542
3557
  _: 1
3543
3558
  }, 8, ["disabled", "loading"])) : createCommentVNode("", true),
3544
3559
  createVNode(unref(button_default), {
3545
- type: "primary",
3560
+ type: __props.readonly ? "default" : "primary",
3546
3561
  disabled: loading.value,
3547
3562
  loading: loading.value,
3548
3563
  onClick: handleConfirmClick
3549
3564
  }, {
3550
- default: withCtx(() => [createTextVNode(toDisplayString(__props.confirmText), 1)]),
3565
+ default: withCtx(() => [createTextVNode(toDisplayString(__props.readonly ? "关闭" : __props.confirmText), 1)]),
3551
3566
  _: 1
3552
- }, 8, ["disabled", "loading"])
3567
+ }, 8, [
3568
+ "type",
3569
+ "disabled",
3570
+ "loading"
3571
+ ])
3553
3572
  ])) : createCommentVNode("", true)
3554
3573
  ], 6)], 6)) : createCommentVNode("", true)]),
3555
3574
  _: 1
@@ -3559,17 +3578,17 @@ var init_ModalRoot_vue_vue_type_script_setup_true_lang = __esmMin((() => {
3559
3578
  });
3560
3579
  }));
3561
3580
  //#endregion
3562
- //#region src/base/modal/src/ModalRoot.vue?vue&type=style&index=0&scoped=9c01f8ec&lang.less
3563
- var init_ModalRoot_vue_vue_type_style_index_0_scoped_9c01f8ec_lang = __esmMin((() => {}));
3581
+ //#region src/base/modal/src/ModalRoot.vue?vue&type=style&index=0&scoped=697dc7d8&lang.less
3582
+ var init_ModalRoot_vue_vue_type_style_index_0_scoped_697dc7d8_lang = __esmMin((() => {}));
3564
3583
  //#endregion
3565
3584
  //#region src/base/modal/src/ModalRoot.vue
3566
3585
  var ModalRoot_default;
3567
3586
  var init_ModalRoot = __esmMin((() => {
3568
3587
  init_ModalRoot_vue_vue_type_script_setup_true_lang();
3569
3588
  init_ModalRoot_vue_vue_type_script_setup_true_lang();
3570
- init_ModalRoot_vue_vue_type_style_index_0_scoped_9c01f8ec_lang();
3589
+ init_ModalRoot_vue_vue_type_style_index_0_scoped_697dc7d8_lang();
3571
3590
  init__plugin_vue_export_helper();
3572
- ModalRoot_default = /*#__PURE__*/ _plugin_vue_export_helper_default(ModalRoot_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-9c01f8ec"]]);
3591
+ ModalRoot_default = /*#__PURE__*/ _plugin_vue_export_helper_default(ModalRoot_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-697dc7d8"]]);
3573
3592
  }));
3574
3593
  //#endregion
3575
3594
  //#region src/base/modal/src/index.ts
@@ -4911,14 +4930,14 @@ var init_segment_slider = __esmMin((() => {
4911
4930
  }));
4912
4931
  //#endregion
4913
4932
  //#region src/base/select/src/basic-select.vue?vue&type=script&setup=true&name=dropdown-basic-select&lang.ts
4914
- var _hoisted_1$146, _hoisted_2$90, _hoisted_3$68, _hoisted_4$52, _hoisted_5$43, _hoisted_6$26, _hoisted_7$21, _hoisted_8$17, basic_select_vue_vue_type_script_setup_true_name_dropdown_basic_select_lang_default;
4933
+ var _hoisted_1$146, _hoisted_2$90, _hoisted_3$68, _hoisted_4$52, _hoisted_5$42, _hoisted_6$26, _hoisted_7$21, _hoisted_8$17, basic_select_vue_vue_type_script_setup_true_name_dropdown_basic_select_lang_default;
4915
4934
  var init_basic_select_vue_vue_type_script_setup_true_name_dropdown_basic_select_lang = __esmMin((() => {
4916
4935
  init_base$2();
4917
4936
  _hoisted_1$146 = { class: "popper-container" };
4918
4937
  _hoisted_2$90 = { class: "group-name" };
4919
4938
  _hoisted_3$68 = ["onClick"];
4920
4939
  _hoisted_4$52 = ["onClick"];
4921
- _hoisted_5$43 = {
4940
+ _hoisted_5$42 = {
4922
4941
  key: 2,
4923
4942
  class: "empty"
4924
4943
  };
@@ -5109,7 +5128,7 @@ var init_basic_select_vue_vue_type_script_setup_true_name_dropdown_basic_select_
5109
5128
  default: withCtx(() => [createElementVNode("span", { class: normalizeClass(["option-label", item.class]) }, toDisplayString(item.label), 3)]),
5110
5129
  _: 2
5111
5130
  }, 1032, ["disabled"])], 64))], 10, _hoisted_4$52);
5112
- }), 128)), !normalizedFlatOptions.value.length ? (openBlock(), createElementBlock("div", _hoisted_5$43, " 暂无数据 ")) : createCommentVNode("", true)])]),
5131
+ }), 128)), !normalizedFlatOptions.value.length ? (openBlock(), createElementBlock("div", _hoisted_5$42, " 暂无数据 ")) : createCommentVNode("", true)])]),
5113
5132
  _: 3
5114
5133
  })], 4)]),
5115
5134
  default: withCtx(() => [createElementVNode("div", {
@@ -5186,7 +5205,7 @@ var init_basic_select = __esmMin((() => {
5186
5205
  }));
5187
5206
  //#endregion
5188
5207
  //#region src/base/select/src/searchable-select.vue?vue&type=script&setup=true&lang.ts
5189
- var _hoisted_1$145, _hoisted_2$89, _hoisted_3$67, _hoisted_4$51, _hoisted_5$42, _hoisted_6$25, _hoisted_7$20, searchable_select_vue_vue_type_script_setup_true_lang_default;
5208
+ var _hoisted_1$145, _hoisted_2$89, _hoisted_3$67, _hoisted_4$51, _hoisted_5$41, _hoisted_6$25, _hoisted_7$20, searchable_select_vue_vue_type_script_setup_true_lang_default;
5190
5209
  var init_searchable_select_vue_vue_type_script_setup_true_lang = __esmMin((() => {
5191
5210
  init_icon();
5192
5211
  init_scrollbar();
@@ -5204,7 +5223,7 @@ var init_searchable_select_vue_vue_type_script_setup_true_lang = __esmMin((() =>
5204
5223
  class: "gct-ss-suffix-icon"
5205
5224
  };
5206
5225
  _hoisted_4$51 = { class: "gct-ss-list" };
5207
- _hoisted_5$42 = ["onClick"];
5226
+ _hoisted_5$41 = ["onClick"];
5208
5227
  _hoisted_6$25 = { class: "gct-ss-option-label" };
5209
5228
  _hoisted_7$20 = {
5210
5229
  key: 0,
@@ -5422,7 +5441,7 @@ var init_searchable_select_vue_vue_type_script_setup_true_lang = __esmMin((() =>
5422
5441
  "icon",
5423
5442
  "color",
5424
5443
  "version"
5425
- ])) : createCommentVNode("", true), createElementVNode("span", _hoisted_6$25, toDisplayString(item.label), 1)], 10, _hoisted_5$42);
5444
+ ])) : createCommentVNode("", true), createElementVNode("span", _hoisted_6$25, toDisplayString(item.label), 1)], 10, _hoisted_5$41);
5426
5445
  }), 128)), !filteredOptions.value.length ? (openBlock(), createElementBlock("div", _hoisted_7$20, "暂无数据")) : createCommentVNode("", true)])]),
5427
5446
  _: 1
5428
5447
  })], 36)) : createCommentVNode("", true)]))], 2);
@@ -5541,7 +5560,7 @@ var init_switch = __esmMin((() => {
5541
5560
  }));
5542
5561
  //#endregion
5543
5562
  //#region src/base/table/src/table.vue?vue&type=script&setup=true&lang.ts
5544
- var _hoisted_1$143, _hoisted_2$88, _hoisted_3$66, _hoisted_4$50, _hoisted_5$41, table_vue_vue_type_script_setup_true_lang_default;
5563
+ var _hoisted_1$143, _hoisted_2$88, _hoisted_3$66, _hoisted_4$50, _hoisted_5$40, table_vue_vue_type_script_setup_true_lang_default;
5545
5564
  var init_table_vue_vue_type_script_setup_true_lang = __esmMin((() => {
5546
5565
  init_base$2();
5547
5566
  _hoisted_1$143 = {
@@ -5554,7 +5573,7 @@ var init_table_vue_vue_type_script_setup_true_lang = __esmMin((() => {
5554
5573
  class: "selection-col"
5555
5574
  };
5556
5575
  _hoisted_4$50 = ["onClick"];
5557
- _hoisted_5$41 = {
5576
+ _hoisted_5$40 = {
5558
5577
  key: 0,
5559
5578
  class: "selection-col"
5560
5579
  };
@@ -5679,7 +5698,7 @@ var init_table_vue_vue_type_script_setup_true_lang = __esmMin((() => {
5679
5698
  fontSize: fontSize.value + "px"
5680
5699
  }),
5681
5700
  onClick: ($event) => _ctx.$emit("row-click", row)
5682
- }, [__props.selectable ? (openBlock(), createElementBlock("td", _hoisted_5$41, [renderSlot(_ctx.$slots, "select", {
5701
+ }, [__props.selectable ? (openBlock(), createElementBlock("td", _hoisted_5$40, [renderSlot(_ctx.$slots, "select", {
5683
5702
  row,
5684
5703
  checked: getIsSelected(row)
5685
5704
  }, () => [__props.multiple ? (openBlock(), createBlock(unref(checkbox_default), {
@@ -5916,7 +5935,7 @@ var init_rdo_tree_select_more = __esmMin((() => {
5916
5935
  }));
5917
5936
  //#endregion
5918
5937
  //#region src/base/rdo-tree-select/src/rdo-tree-select-node.vue?vue&type=script&setup=true&lang.ts
5919
- var _hoisted_1$142, _hoisted_2$87, _hoisted_3$65, _hoisted_4$49, _hoisted_5$40, rdo_tree_select_node_vue_vue_type_script_setup_true_lang_default;
5938
+ var _hoisted_1$142, _hoisted_2$87, _hoisted_3$65, _hoisted_4$49, _hoisted_5$39, rdo_tree_select_node_vue_vue_type_script_setup_true_lang_default;
5920
5939
  var init_rdo_tree_select_node_vue_vue_type_script_setup_true_lang = __esmMin((() => {
5921
5940
  init_icon();
5922
5941
  _hoisted_1$142 = { class: "rdo-tree-select-node" };
@@ -5926,7 +5945,7 @@ var init_rdo_tree_select_node_vue_vue_type_script_setup_true_lang = __esmMin((()
5926
5945
  };
5927
5946
  _hoisted_3$65 = { class: "rdo-tree-select-node__title" };
5928
5947
  _hoisted_4$49 = { class: "rdo-tree-select-node__label" };
5929
- _hoisted_5$40 = {
5948
+ _hoisted_5$39 = {
5930
5949
  key: 0,
5931
5950
  class: "rdo-tree-select-node__tag"
5932
5951
  };
@@ -5980,7 +5999,7 @@ var init_rdo_tree_select_node_vue_vue_type_script_setup_true_lang = __esmMin((()
5980
5999
  color: "#212528",
5981
6000
  size: "13",
5982
6001
  version: "v2"
5983
- })], 2)) : (openBlock(), createElementBlock("span", _hoisted_2$87)), createElementVNode("span", _hoisted_3$65, [createElementVNode("span", _hoisted_4$49, toDisplayString(__props.node.title), 1), __props.node.isDefault && !hasChildren.value ? (openBlock(), createElementBlock("span", _hoisted_5$40, "默认")) : createCommentVNode("", true)])], 6), hasChildren.value && expanded.value ? (openBlock(true), createElementBlock(Fragment, { key: 0 }, renderList(__props.node.children, (child) => {
6002
+ })], 2)) : (openBlock(), createElementBlock("span", _hoisted_2$87)), createElementVNode("span", _hoisted_3$65, [createElementVNode("span", _hoisted_4$49, toDisplayString(__props.node.title), 1), __props.node.isDefault && !hasChildren.value ? (openBlock(), createElementBlock("span", _hoisted_5$39, "默认")) : createCommentVNode("", true)])], 6), hasChildren.value && expanded.value ? (openBlock(true), createElementBlock(Fragment, { key: 0 }, renderList(__props.node.children, (child) => {
5984
6003
  return openBlock(), createBlock(_component_RdoTreeSelectNode, {
5985
6004
  key: child.key,
5986
6005
  node: child,
@@ -6523,7 +6542,7 @@ var init_use_rdo_tree_options = __esmMin((() => {
6523
6542
  }));
6524
6543
  //#endregion
6525
6544
  //#region src/base/rdo-tree-select/src/rdo-tree-select.vue?vue&type=script&setup=true&name=gct-rdo-tree-select&lang.ts
6526
- var _hoisted_1$140, _hoisted_2$85, _hoisted_3$63, _hoisted_4$48, _hoisted_5$39, _hoisted_6$24, _hoisted_7$19, _hoisted_8$16, _hoisted_9$11, _hoisted_10$9, _hoisted_11$7, _hoisted_12$6, _hoisted_13$5, rdo_tree_select_vue_vue_type_script_setup_true_name_gct_rdo_tree_select_lang_default;
6545
+ var _hoisted_1$140, _hoisted_2$85, _hoisted_3$63, _hoisted_4$48, _hoisted_5$38, _hoisted_6$24, _hoisted_7$19, _hoisted_8$16, _hoisted_9$11, _hoisted_10$9, _hoisted_11$7, _hoisted_12$6, _hoisted_13$5, rdo_tree_select_vue_vue_type_script_setup_true_name_gct_rdo_tree_select_lang_default;
6527
6546
  var init_rdo_tree_select_vue_vue_type_script_setup_true_name_gct_rdo_tree_select_lang = __esmMin((() => {
6528
6547
  init_dropdown();
6529
6548
  init_icon();
@@ -6544,7 +6563,7 @@ var init_rdo_tree_select_vue_vue_type_script_setup_true_name_gct_rdo_tree_select
6544
6563
  key: 0,
6545
6564
  class: "rdo-tree-select__value-tag"
6546
6565
  };
6547
- _hoisted_5$39 = [
6566
+ _hoisted_5$38 = [
6548
6567
  "value",
6549
6568
  "placeholder",
6550
6569
  "disabled",
@@ -6881,7 +6900,7 @@ var init_rdo_tree_select_vue_vue_type_script_setup_true_name_gct_rdo_tree_select
6881
6900
  disabled: __props.disabled,
6882
6901
  onInput: onSearchInput,
6883
6902
  onKeydown: [withKeys(withModifiers(closeSearch, ["stop"]), ["esc"]), withKeys(closeSearch, ["tab"])]
6884
- }, null, 42, _hoisted_5$39)])) : (openBlock(), createElementBlock("span", _hoisted_6$24, [createElementVNode("span", { class: normalizeClass(["rdo-tree-select__value-text", { "is-placeholder": !selectedLabel.value }]) }, toDisplayString(selectedLabel.value || __props.placeholder), 3), selectedDisplay.value.showDefaultTag ? (openBlock(), createElementBlock("span", _hoisted_7$19, "默认")) : createCommentVNode("", true)]))], 2), searchableSuffixIcon.value === "clear" ? (openBlock(), createElementBlock("span", {
6903
+ }, null, 42, _hoisted_5$38)])) : (openBlock(), createElementBlock("span", _hoisted_6$24, [createElementVNode("span", { class: normalizeClass(["rdo-tree-select__value-text", { "is-placeholder": !selectedLabel.value }]) }, toDisplayString(selectedLabel.value || __props.placeholder), 3), selectedDisplay.value.showDefaultTag ? (openBlock(), createElementBlock("span", _hoisted_7$19, "默认")) : createCommentVNode("", true)]))], 2), searchableSuffixIcon.value === "clear" ? (openBlock(), createElementBlock("span", {
6885
6904
  key: 0,
6886
6905
  class: "rdo-tree-select__clear",
6887
6906
  onMousedown: _cache[0] || (_cache[0] = withModifiers(() => {}, ["prevent"])),
@@ -8726,7 +8745,7 @@ var init_constant = __esmMin((() => {
8726
8745
  }));
8727
8746
  //#endregion
8728
8747
  //#region src/base/color-picker/src/ColorPicker.vue?vue&type=script&setup=true&name=gct-color-picker&lang.ts
8729
- var _hoisted_1$138, _hoisted_2$83, _hoisted_3$61, _hoisted_4$47, _hoisted_5$38, ColorPicker_vue_vue_type_script_setup_true_name_gct_color_picker_lang_default;
8748
+ var _hoisted_1$138, _hoisted_2$83, _hoisted_3$61, _hoisted_4$47, _hoisted_5$37, ColorPicker_vue_vue_type_script_setup_true_name_gct_color_picker_lang_default;
8730
8749
  var init_ColorPicker_vue_vue_type_script_setup_true_name_gct_color_picker_lang = __esmMin((() => {
8731
8750
  init_vue_color();
8732
8751
  init_base$2();
@@ -8735,7 +8754,7 @@ var init_ColorPicker_vue_vue_type_script_setup_true_name_gct_color_picker_lang =
8735
8754
  _hoisted_2$83 = { class: "color-submenu-panel" };
8736
8755
  _hoisted_3$61 = { class: "color-content-standard" };
8737
8756
  _hoisted_4$47 = { class: "items" };
8738
- _hoisted_5$38 = ["onClick"];
8757
+ _hoisted_5$37 = ["onClick"];
8739
8758
  ColorPicker_vue_vue_type_script_setup_true_name_gct_color_picker_lang_default = /*@__PURE__*/ defineComponent({
8740
8759
  __name: "ColorPicker",
8741
8760
  props: /*@__PURE__*/ mergeModels({ tooltip: { default: "背景颜色" } }, {
@@ -8782,7 +8801,7 @@ var init_ColorPicker_vue_vue_type_script_setup_true_name_gct_color_picker_lang =
8782
8801
  class: normalizeClass(["color-icon", { active: model.value === c.color }]),
8783
8802
  style: normalizeStyle({ backgroundColor: c.color }),
8784
8803
  onClick: ($event) => handleColorClick(c.color)
8785
- }, null, 14, _hoisted_5$38)]),
8804
+ }, null, 14, _hoisted_5$37)]),
8786
8805
  _: 2
8787
8806
  }, 1024);
8788
8807
  }), 128))])])])]),
@@ -99416,20 +99435,20 @@ var init_register_handlers$2 = __esmMin((() => {
99416
99435
  }));
99417
99436
  //#endregion
99418
99437
  //#region src/domain/table/business/material/material-balance/components/material-consume-modal.vue?vue&type=script&setup=true&lang.ts
99419
- var _hoisted_1$136, _hoisted_2$81, _hoisted_3$59, _hoisted_4$46, _hoisted_5$37, material_consume_modal_vue_vue_type_script_setup_true_lang_default;
99438
+ var _hoisted_1$136, _hoisted_2$81, _hoisted_3$59, _hoisted_4$46, _hoisted_5$36, material_consume_modal_vue_vue_type_script_setup_true_lang_default;
99420
99439
  var init_material_consume_modal_vue_vue_type_script_setup_true_lang = __esmMin((() => {
99421
99440
  _hoisted_1$136 = { class: "material-consume-modal" };
99422
99441
  _hoisted_2$81 = { class: "material-consume-table-scroll" };
99423
99442
  _hoisted_3$59 = { class: "material-consume-table" };
99424
99443
  _hoisted_4$46 = ["title"];
99425
- _hoisted_5$37 = { class: "qty-col" };
99444
+ _hoisted_5$36 = { class: "qty-col" };
99426
99445
  material_consume_modal_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
99427
99446
  __name: "material-consume-modal",
99428
99447
  props: { rows: {} },
99429
99448
  setup(__props) {
99430
99449
  return (_ctx, _cache) => {
99431
99450
  return openBlock(), createElementBlock("div", _hoisted_1$136, [createElementVNode("div", _hoisted_2$81, [createElementVNode("table", _hoisted_3$59, [_cache[0] || (_cache[0] = createElementVNode("thead", null, [createElementVNode("tr", null, [createElementVNode("th", null, "物料"), createElementVNode("th", { class: "qty-col" }, "消耗数量")])], -1)), createElementVNode("tbody", null, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.rows, (row, index) => {
99432
- return openBlock(), createElementBlock("tr", { key: index }, [createElementVNode("td", { title: row.materialLabel }, toDisplayString(row.materialLabel), 9, _hoisted_4$46), createElementVNode("td", _hoisted_5$37, toDisplayString(row.consumeQty), 1)]);
99451
+ return openBlock(), createElementBlock("tr", { key: index }, [createElementVNode("td", { title: row.materialLabel }, toDisplayString(row.materialLabel), 9, _hoisted_4$46), createElementVNode("td", _hoisted_5$36, toDisplayString(row.consumeQty), 1)]);
99433
99452
  }), 128))])])])]);
99434
99453
  };
99435
99454
  }
@@ -110840,6 +110859,7 @@ var init_CommandManager = __esmMin((() => {
110840
110859
  this.registry.set(name, CommandClass);
110841
110860
  }
110842
110861
  async execute(name, payload) {
110862
+ if (this.doc.isDesignReadonly()) return;
110843
110863
  const CommandClass = this.registry.get(name);
110844
110864
  if (!CommandClass) throw new Error(`Unknown command: ${name}`);
110845
110865
  const cmd = new CommandClass(this.doc, payload);
@@ -110852,6 +110872,7 @@ var init_CommandManager = __esmMin((() => {
110852
110872
  }
110853
110873
  async undo() {
110854
110874
  var _cmd$payload, _cmd$payload2;
110875
+ if (this.doc.isDesignReadonly()) return;
110855
110876
  const cmd = this.undoStack.pop();
110856
110877
  if (!cmd) return;
110857
110878
  const result = await cmd.undo();
@@ -110861,6 +110882,7 @@ var init_CommandManager = __esmMin((() => {
110861
110882
  }
110862
110883
  async redo() {
110863
110884
  var _cmd$payload3, _cmd$payload4;
110885
+ if (this.doc.isDesignReadonly()) return;
110864
110886
  const cmd = this.redoStack.pop();
110865
110887
  if (!cmd) return;
110866
110888
  const result = await cmd.do();
@@ -116060,6 +116082,7 @@ var init_CursorController = __esmMin((() => {
116060
116082
  }
116061
116083
  /** 拖入字段插入的位置的光标定位 */
116062
116084
  onCaretLocate(canvasX, canvasY, extra) {
116085
+ if (this.doc.preview) return;
116063
116086
  const { x, y } = this.doc.layoutMapper.toStripSafeDist(canvasX, canvasY);
116064
116087
  const hitIntent = resolveHitIntentByHitId(this.doc, x, y, extra.hitId);
116065
116088
  if (!hitIntent) return;
@@ -116069,6 +116092,10 @@ var init_CursorController = __esmMin((() => {
116069
116092
  const { x, y } = this.doc.layoutMapper.toStripSafeDist(canvasX, canvasY);
116070
116093
  const hitIntent = resolveHitIntentByHitId(this.doc, x, y, extra === null || extra === void 0 ? void 0 : extra.hitId);
116071
116094
  if (!hitIntent) return;
116095
+ if (this.doc.isInPrintMode() || this.doc.preview) {
116096
+ if (hitIntent.type === "cursor") return hitIntent.hit.id;
116097
+ return hitIntent.anchor.id;
116098
+ }
116072
116099
  this.applyHitIntent(hitIntent, { isPreview: false });
116073
116100
  if (hitIntent.type === "cursor") return hitIntent.hit.id;
116074
116101
  return hitIntent.anchor.id;
@@ -116693,7 +116720,7 @@ var init_InteractionPolicy = __esmMin((() => {
116693
116720
  /** 是否允许输入 */
116694
116721
  canInput(run) {
116695
116722
  if (this.doc.isInPrintMode()) return false;
116696
- if (this.doc.preview) return false;
116723
+ if (this.doc.isDesignReadonly()) return false;
116697
116724
  if (validateTextWidgetMarker(run, true)) {
116698
116725
  const widgetMeta = run.widgetMeta;
116699
116726
  const type = widgetMeta.type;
@@ -116722,7 +116749,7 @@ var init_InteractionPolicy = __esmMin((() => {
116722
116749
  /** 是否允许删除 */
116723
116750
  canBackspace(run) {
116724
116751
  if (this.doc.isInPrintMode()) return false;
116725
- if (this.doc.preview) return false;
116752
+ if (this.doc.isDesignReadonly()) return false;
116726
116753
  if (validateTextWidgetMarker(run, true)) {
116727
116754
  if (this.doc.isInEditMode()) return true;
116728
116755
  const widgetMeta = run.widgetMeta;
@@ -116740,9 +116767,17 @@ var init_InteractionPolicy = __esmMin((() => {
116740
116767
  }
116741
116768
  /** 事件前置拦截 */
116742
116769
  guardEvent(eventName, payload) {
116743
- if (eventName === "inter:set-annotation" || eventName === "inter:focus-annotation") return true;
116744
- if (this.doc.isInPrintMode()) return false;
116770
+ if (eventName === "inter:set-annotation" || eventName === "inter:focus-annotation" || eventName === "inter:show-validation-comment" || eventName === "inter:focus-validation") return true;
116745
116771
  if (this.doc.preview) return false;
116772
+ if (eventName === "inter:focus-widget" || eventName === "inter:active" || eventName === "inter:chg-hmid" || eventName === "konva:click" || eventName === "pointer:resolve" || eventName === "caret:locate") return true;
116773
+ if (this.doc.isInPrintMode()) return false;
116774
+ if (this.doc.refer) switch (eventName) {
116775
+ case "konva:dragstart":
116776
+ case "konva:dragmove":
116777
+ case "konva:dragend":
116778
+ case "konva:contextmenu": return false;
116779
+ default: return true;
116780
+ }
116746
116781
  switch (eventName) {
116747
116782
  case "konva:dragstart":
116748
116783
  case "konva:dragmove":
@@ -117451,10 +117486,28 @@ var init_Doc = __esmMin((() => {
117451
117486
  );
117452
117487
  _defineProperty(
117453
117488
  this,
117454
- /** 是否是设计器预览模式 */
117489
+ /** 是否是设计器预览模式(隐藏设计器壳) */
117455
117490
  "preview",
117456
117491
  void 0
117457
117492
  );
117493
+ _defineProperty(
117494
+ this,
117495
+ /** 是否是设计器引用只读态(保留壳,禁止编辑) */
117496
+ "refer",
117497
+ void 0
117498
+ );
117499
+ _defineProperty(
117500
+ this,
117501
+ /** 是否是模拟填报 */
117502
+ "isMockReport",
117503
+ void 0
117504
+ );
117505
+ _defineProperty(
117506
+ this,
117507
+ /** 填报内容区底色开关配置 */
117508
+ "showPrintFieldBg",
117509
+ void 0
117510
+ );
117458
117511
  _defineProperty(this, "model", void 0);
117459
117512
  _defineProperty(this, "pages", []);
117460
117513
  _defineProperty(this, "commandManager", void 0);
@@ -117551,6 +117604,13 @@ var init_Doc = __esmMin((() => {
117551
117604
  this.mode = options.mode ?? DocModeTypeConst.Edit;
117552
117605
  this.btnRenderModeType = options.btnRenderModeType;
117553
117606
  this.preview = options.preview ?? false;
117607
+ this.refer = options.refer ?? false;
117608
+ if (this.preview && this.refer) {
117609
+ console.warn("[Doc] preview 与 refer 互斥,不能同时为 true;已忽略 preview,仅启用 refer");
117610
+ this.preview = false;
117611
+ }
117612
+ this.isMockReport = options.isMockReport ?? false;
117613
+ this.showPrintFieldBg = !(this.preview || this.isMockReport);
117554
117614
  this.model = options.model;
117555
117615
  this.mainModelKey = options.mainModelKey;
117556
117616
  this.formType = options.formType;
@@ -117649,6 +117709,21 @@ var init_Doc = __esmMin((() => {
117649
117709
  isInPrintMode() {
117650
117710
  return this.mode === "print";
117651
117711
  }
117712
+ /**
117713
+ * 设计侧不可编辑:预览(藏壳)或引用只读(留 panel)。
117714
+ * 用于命令 / 输入 / 拖拽等写操作拦截。
117715
+ */
117716
+ isDesignReadonly() {
117717
+ return this.preview || this.refer;
117718
+ }
117719
+ /** 打印时临时开关填报内容区底色 */
117720
+ setShowPrintFieldBg(show) {
117721
+ var _this$onLayoutChange;
117722
+ if (this.showPrintFieldBg === show) return;
117723
+ this.showPrintFieldBg = show;
117724
+ this.bumpUpdateTick();
117725
+ (_this$onLayoutChange = this.onLayoutChange) === null || _this$onLayoutChange === void 0 || _this$onLayoutChange.call(this, this);
117726
+ }
117652
117727
  bumpUpdateTick() {
117653
117728
  this._updateTick++;
117654
117729
  }
@@ -117711,6 +117786,11 @@ function useDocPubApiContext() {
117711
117786
  var _controller$value2;
117712
117787
  return ((_controller$value2 = controller.value) === null || _controller$value2 === void 0 ? void 0 : _controller$value2.mode.value) === DocModeTypeConst.Edit;
117713
117788
  });
117789
+ /** 设计器引用只读(留 panel 不可改) */
117790
+ const isRefer = computed(() => {
117791
+ var _docInst$value;
117792
+ return !!((_docInst$value = docInst.value) === null || _docInst$value === void 0 ? void 0 : _docInst$value.refer);
117793
+ });
117714
117794
  const hasPages = computed(() => {
117715
117795
  var _docInfo$value$pages;
117716
117796
  return ((_docInfo$value$pages = docInfo.value.pages) === null || _docInfo$value$pages === void 0 ? void 0 : _docInfo$value$pages.length) > 0;
@@ -117737,6 +117817,7 @@ function useDocPubApiContext() {
117737
117817
  query,
117738
117818
  updateTick,
117739
117819
  isDesignMode,
117820
+ isRefer,
117740
117821
  loading,
117741
117822
  hasData,
117742
117823
  hasPages,
@@ -120314,15 +120395,20 @@ var init_cursor_overlay_vue_vue_type_script_setup_true_name_cursor_overlay_lang
120314
120395
  __name: "cursor-overlay",
120315
120396
  setup(__props) {
120316
120397
  const { docInst } = useDocPubApiContext();
120398
+ /** 设计器预览:不渲染光标 / 选区 */
120399
+ const hideCaret = computed(() => {
120400
+ var _docInst$value;
120401
+ return !!((_docInst$value = docInst.value) === null || _docInst$value === void 0 ? void 0 : _docInst$value.preview);
120402
+ });
120317
120403
  const { cursor, selection, dragHoverId, lastEventTs } = useCursorSelection(docInst.value);
120318
120404
  return (_ctx, _cache) => {
120319
- return openBlock(), createElementBlock(Fragment, null, [createVNode(selection_renderer_default, {
120405
+ return !hideCaret.value ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [createVNode(selection_renderer_default, {
120320
120406
  selection: unref(selection),
120321
120407
  dragHoverId: unref(dragHoverId)
120322
120408
  }, null, 8, ["selection", "dragHoverId"]), createVNode(cursor_renderer_default, {
120323
120409
  cursor: unref(cursor),
120324
120410
  lastEventTs: unref(lastEventTs)
120325
- }, null, 8, ["cursor", "lastEventTs"])], 64);
120411
+ }, null, 8, ["cursor", "lastEventTs"])], 64)) : createCommentVNode("", true);
120326
120412
  };
120327
120413
  }
120328
120414
  });
@@ -124582,11 +124668,11 @@ var init_material_consume_util = __esmMin((() => {
124582
124668
  if (!(tmplBomC === null || tmplBomC === void 0 || (_tmplBomC$formInstBom = tmplBomC.formInstBom) === null || _tmplBomC$formInstBom === void 0 ? void 0 : _tmplBomC$formInstBom.formTmplBomList)) return;
124583
124669
  tmplBomC.formInstBom.formTmplBomList.forEach(({ personal_bom_enabled_, entries_, table_key_ }) => {
124584
124670
  const tableController = tmplBomC === null || tmplBomC === void 0 ? void 0 : tmplBomC.findTableControllerByField(table_key_);
124585
- const isBomPattern = (tableController === null || tableController === void 0 ? void 0 : tableController.mcPattern) === MaterialConsumptionPatternEnum.BOM;
124671
+ const isNobom = (tableController === null || tableController === void 0 ? void 0 : tableController.mcPattern) === MaterialConsumptionPatternEnum.RECORD && !personal_bom_enabled_;
124586
124672
  const subFieldKey = table_key_.replace("$.", "");
124587
124673
  const rows = doc.dataManager.getRawData()[subFieldKey] || [];
124588
124674
  const activeCount = rows.filter((row) => !(row === null || row === void 0 ? void 0 : row.deleted_)).length;
124589
- if (isBomPattern) {
124675
+ if (!isNobom) {
124590
124676
  const entries = personal_bom_enabled_ ? entries_ : tmplBomC.bomEntries;
124591
124677
  const includedIds = [];
124592
124678
  (entries || []).forEach((e) => {
@@ -125225,13 +125311,18 @@ async function initializeDocumentEngine(props, payload, result) {
125225
125311
  initDocModelJson: JSON.stringify(docModel.toXmlJson())
125226
125312
  }
125227
125313
  };
125314
+ const preview = !!payload.isPreview;
125315
+ const refer = !!payload.isRefer;
125316
+ if (preview && refer) console.warn("[useWord] isPreview 与 isRefer 互斥,不能同时为 true;已忽略 isPreview,仅启用 isRefer");
125228
125317
  const doc = new Doc({
125229
125318
  model: docModel,
125230
125319
  mode: fillModeType,
125231
125320
  btnRenderModeType: result.btnModelType,
125232
125321
  mainModelKey,
125233
125322
  formType: requestInfo.formType || FormTypeConst.BASE,
125234
- preview: payload.isPreview,
125323
+ preview: refer ? false : preview,
125324
+ refer,
125325
+ isMockReport: payload.isMockReport,
125235
125326
  paramsConfig: paramsConfig ?? {},
125236
125327
  deviceConfig: payload.deviceConfig,
125237
125328
  docRuntimeMeta,
@@ -126669,7 +126760,7 @@ function useHighlightSearch() {
126669
126760
  var init_useHighlightSearch = __esmMin((() => {}));
126670
126761
  //#endregion
126671
126762
  //#region src/runtime/renderer/dropdowns/components/option-dropdown.vue?vue&type=script&setup=true&lang.ts
126672
- var _hoisted_1$133, _hoisted_2$80, _hoisted_3$58, _hoisted_4$45, _hoisted_5$36, _hoisted_6$23, _hoisted_7$18, _hoisted_8$15, _hoisted_9$10, option_dropdown_vue_vue_type_script_setup_true_lang_default;
126763
+ var _hoisted_1$133, _hoisted_2$80, _hoisted_3$58, _hoisted_4$45, _hoisted_5$35, _hoisted_6$23, _hoisted_7$18, _hoisted_8$15, _hoisted_9$10, option_dropdown_vue_vue_type_script_setup_true_lang_default;
126673
126764
  var init_option_dropdown_vue_vue_type_script_setup_true_lang = __esmMin((() => {
126674
126765
  init_base$2();
126675
126766
  init_useWidgetRenderData();
@@ -126682,7 +126773,7 @@ var init_option_dropdown_vue_vue_type_script_setup_true_lang = __esmMin((() => {
126682
126773
  _hoisted_2$80 = { class: "options-search" };
126683
126774
  _hoisted_3$58 = { class: "options-dropdown-container" };
126684
126775
  _hoisted_4$45 = ["onClick"];
126685
- _hoisted_5$36 = ["innerHTML", "title"];
126776
+ _hoisted_5$35 = ["innerHTML", "title"];
126686
126777
  _hoisted_6$23 = { class: "option-right" };
126687
126778
  _hoisted_7$18 = {
126688
126779
  key: 0,
@@ -126875,7 +126966,7 @@ var init_option_dropdown_vue_vue_type_script_setup_true_lang = __esmMin((() => {
126875
126966
  class: "option-label",
126876
126967
  innerHTML: item.highlightName || item.label,
126877
126968
  title: item.label
126878
- }, null, 8, _hoisted_5$36)]),
126969
+ }, null, 8, _hoisted_5$35)]),
126879
126970
  _: 2
126880
126971
  }, 1032, ["disabled"]), createElementVNode("div", _hoisted_6$23, [__props.isMultiple && isSelected(item) ? (openBlock(), createBlock(unref(icon_default), {
126881
126972
  key: 0,
@@ -127036,7 +127127,7 @@ var init_tree_node = __esmMin((() => {
127036
127127
  }));
127037
127128
  //#endregion
127038
127129
  //#region src/runtime/renderer/dropdowns/components/tree/tree-dropdown.vue?vue&type=script&setup=true&lang.ts
127039
- var _hoisted_1$131, _hoisted_2$78, _hoisted_3$56, _hoisted_4$44, _hoisted_5$35, _hoisted_6$22, tree_dropdown_vue_vue_type_script_setup_true_lang_default;
127130
+ var _hoisted_1$131, _hoisted_2$78, _hoisted_3$56, _hoisted_4$44, _hoisted_5$34, _hoisted_6$22, tree_dropdown_vue_vue_type_script_setup_true_lang_default;
127040
127131
  var init_tree_dropdown_vue_vue_type_script_setup_true_lang = __esmMin((() => {
127041
127132
  init_base$2();
127042
127133
  init_tree_node();
@@ -127052,7 +127143,7 @@ var init_tree_dropdown_vue_vue_type_script_setup_true_lang = __esmMin((() => {
127052
127143
  key: 0,
127053
127144
  class: "empty"
127054
127145
  };
127055
- _hoisted_5$35 = {
127146
+ _hoisted_5$34 = {
127056
127147
  key: 0,
127057
127148
  class: "options-footer"
127058
127149
  };
@@ -127185,7 +127276,7 @@ var init_tree_dropdown_vue_vue_type_script_setup_true_lang = __esmMin((() => {
127185
127276
  }), 128)), !displayTreeOptions.value.length ? (openBlock(), createElementBlock("div", _hoisted_4$44, "暂无数据")) : createCommentVNode("", true)])]),
127186
127277
  _: 1
127187
127278
  }),
127188
- __props.isMultiple ? (openBlock(), createElementBlock("div", _hoisted_5$35, [createElementVNode("div", {
127279
+ __props.isMultiple ? (openBlock(), createElementBlock("div", _hoisted_5$34, [createElementVNode("div", {
127189
127280
  class: "btn-item",
127190
127281
  onClick: withModifiers(handleSelectAll, ["stop"])
127191
127282
  }, "全选"), createElementVNode("div", {
@@ -127754,14 +127845,14 @@ var init_device_type_select = __esmMin((() => {
127754
127845
  }));
127755
127846
  //#endregion
127756
127847
  //#region src/runtime/renderer/dropdowns/components/tables/component/pagination-control.vue?vue&type=script&setup=true&lang.ts
127757
- var _hoisted_1$127, _hoisted_2$77, _hoisted_3$55, _hoisted_4$43, _hoisted_5$34, pagination_control_vue_vue_type_script_setup_true_lang_default;
127848
+ var _hoisted_1$127, _hoisted_2$77, _hoisted_3$55, _hoisted_4$43, _hoisted_5$33, pagination_control_vue_vue_type_script_setup_true_lang_default;
127758
127849
  var init_pagination_control_vue_vue_type_script_setup_true_lang = __esmMin((() => {
127759
127850
  init_base$2();
127760
127851
  _hoisted_1$127 = { class: "pagination-container" };
127761
127852
  _hoisted_2$77 = { class: "pagination-total" };
127762
127853
  _hoisted_3$55 = { class: "pagination-controls" };
127763
127854
  _hoisted_4$43 = { class: "ks-row-center pagination" };
127764
- _hoisted_5$34 = { class: "gct-is-highlight" };
127855
+ _hoisted_5$33 = { class: "gct-is-highlight" };
127765
127856
  pagination_control_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
127766
127857
  __name: "pagination-control",
127767
127858
  props: {
@@ -127782,7 +127873,7 @@ var init_pagination_control_vue_vue_type_script_setup_true_lang = __esmMin((() =
127782
127873
  color: "#8c8c8c"
127783
127874
  })], 2),
127784
127875
  createElementVNode("div", _hoisted_4$43, [
127785
- createElementVNode("span", _hoisted_5$34, toDisplayString(__props.pagination.current), 1),
127876
+ createElementVNode("span", _hoisted_5$33, toDisplayString(__props.pagination.current), 1),
127786
127877
  _cache[2] || (_cache[2] = createTextVNode(" / ", -1)),
127787
127878
  createElementVNode("span", null, toDisplayString(__props.pagination.totalPage), 1)
127788
127879
  ]),
@@ -128737,7 +128828,7 @@ var init_xlsx = __esmMin((() => {
128737
128828
  }));
128738
128829
  //#endregion
128739
128830
  //#region src/runtime/renderer/dialogs/upload-file/base-upload-file.vue?vue&type=script&setup=true&name=base-upload-image&lang.ts
128740
- var _hoisted_1$123, _hoisted_2$73, _hoisted_3$53, _hoisted_4$41, _hoisted_5$33, _hoisted_6$21, _hoisted_7$17, _hoisted_8$14, _hoisted_9$9, _hoisted_10$8, _hoisted_11$6, _hoisted_12$5, _hoisted_13$4, _hoisted_14$3, base_upload_file_vue_vue_type_script_setup_true_name_base_upload_image_lang_default;
128831
+ var _hoisted_1$123, _hoisted_2$73, _hoisted_3$53, _hoisted_4$41, _hoisted_5$32, _hoisted_6$21, _hoisted_7$17, _hoisted_8$14, _hoisted_9$9, _hoisted_10$8, _hoisted_11$6, _hoisted_12$5, _hoisted_13$4, _hoisted_14$3, base_upload_file_vue_vue_type_script_setup_true_name_base_upload_image_lang_default;
128741
128832
  var init_base_upload_file_vue_vue_type_script_setup_true_name_base_upload_image_lang = __esmMin((() => {
128742
128833
  init_base$2();
128743
128834
  init_core$1();
@@ -128756,7 +128847,7 @@ var init_base_upload_file_vue_vue_type_script_setup_true_name_base_upload_image_
128756
128847
  _hoisted_2$73 = { class: "upload-dragger" };
128757
128848
  _hoisted_3$53 = ["multiple", "accept"];
128758
128849
  _hoisted_4$41 = { class: "upload-content" };
128759
- _hoisted_5$33 = { class: "icon" };
128850
+ _hoisted_5$32 = { class: "icon" };
128760
128851
  _hoisted_6$21 = {
128761
128852
  key: 0,
128762
128853
  class: "file-box"
@@ -128966,7 +129057,7 @@ var init_base_upload_file_vue_vue_type_script_setup_true_name_base_upload_image_
128966
129057
  class: "input",
128967
129058
  accept: fileAccept.value,
128968
129059
  onChange: onSelect
128969
- }, null, 40, _hoisted_3$53), createElementVNode("div", _hoisted_4$41, [createElementVNode("div", _hoisted_5$33, [createVNode(unref(icon_default), {
129060
+ }, null, 40, _hoisted_3$53), createElementVNode("div", _hoisted_4$41, [createElementVNode("div", _hoisted_5$32, [createVNode(unref(icon_default), {
128970
129061
  icon: "icon-wenjianjia1",
128971
129062
  size: "56",
128972
129063
  color: "#FDBF5E"
@@ -129098,7 +129189,7 @@ var init_upload_file_dialog = __esmMin((() => {
129098
129189
  }));
129099
129190
  //#endregion
129100
129191
  //#region src/runtime/renderer/dialogs/upload-image/base-upload-image.vue?vue&type=script&setup=true&name=base-upload-image&lang.ts
129101
- var _hoisted_1$121, _hoisted_2$72, _hoisted_3$52, _hoisted_4$40, _hoisted_5$32, _hoisted_6$20, _hoisted_7$16, _hoisted_8$13, _hoisted_9$8, _hoisted_10$7, base_upload_image_vue_vue_type_script_setup_true_name_base_upload_image_lang_default;
129192
+ var _hoisted_1$121, _hoisted_2$72, _hoisted_3$52, _hoisted_4$40, _hoisted_5$31, _hoisted_6$20, _hoisted_7$16, _hoisted_8$13, _hoisted_9$8, _hoisted_10$7, base_upload_image_vue_vue_type_script_setup_true_name_base_upload_image_lang_default;
129102
129193
  var init_base_upload_image_vue_vue_type_script_setup_true_name_base_upload_image_lang = __esmMin((() => {
129103
129194
  init_base$2();
129104
129195
  init_core$1();
@@ -129109,7 +129200,7 @@ var init_base_upload_image_vue_vue_type_script_setup_true_name_base_upload_image
129109
129200
  _hoisted_2$72 = { class: "upload-dragger" };
129110
129201
  _hoisted_3$52 = ["multiple", "accept"];
129111
129202
  _hoisted_4$40 = { class: "upload-content" };
129112
- _hoisted_5$32 = { class: "icon" };
129203
+ _hoisted_5$31 = { class: "icon" };
129113
129204
  _hoisted_6$20 = {
129114
129205
  key: 0,
129115
129206
  class: "img-box"
@@ -129294,7 +129385,7 @@ var init_base_upload_image_vue_vue_type_script_setup_true_name_base_upload_image
129294
129385
  class: "input",
129295
129386
  accept: fileAccept.value,
129296
129387
  onChange: onSelect
129297
- }, null, 40, _hoisted_3$52), createElementVNode("div", _hoisted_4$40, [createElementVNode("div", _hoisted_5$32, [createVNode(unref(icon_default), {
129388
+ }, null, 40, _hoisted_3$52), createElementVNode("div", _hoisted_4$40, [createElementVNode("div", _hoisted_5$31, [createVNode(unref(icon_default), {
129298
129389
  icon: "icon-tupian2",
129299
129390
  size: "56",
129300
129391
  color: "#026ac8"
@@ -130636,7 +130727,7 @@ var init_validate_signature_config = __esmMin((() => {
130636
130727
  }));
130637
130728
  //#endregion
130638
130729
  //#region src/runtime/renderer/dialogs/signature/signature-dialog.vue?vue&type=script&setup=true&lang.ts
130639
- var _hoisted_1$119, _hoisted_2$71, _hoisted_3$51, _hoisted_4$39, _hoisted_5$31, _hoisted_6$19, _hoisted_7$15, _hoisted_8$12, _hoisted_9$7, _hoisted_10$6, _hoisted_11$5, _hoisted_12$4, _hoisted_13$3, SIGNATURE_PREVIEW_WIDTH, SIGNATURE_PREVIEW_HEIGHT, signature_dialog_vue_vue_type_script_setup_true_lang_default;
130730
+ var _hoisted_1$119, _hoisted_2$71, _hoisted_3$51, _hoisted_4$39, _hoisted_5$30, _hoisted_6$19, _hoisted_7$15, _hoisted_8$12, _hoisted_9$7, _hoisted_10$6, _hoisted_11$5, _hoisted_12$4, _hoisted_13$3, SIGNATURE_PREVIEW_WIDTH, SIGNATURE_PREVIEW_HEIGHT, signature_dialog_vue_vue_type_script_setup_true_lang_default;
130640
130731
  var init_signature_dialog_vue_vue_type_script_setup_true_lang = __esmMin((() => {
130641
130732
  init_dist_web();
130642
130733
  init_base$2();
@@ -130654,7 +130745,7 @@ var init_signature_dialog_vue_vue_type_script_setup_true_lang = __esmMin((() =>
130654
130745
  key: 0,
130655
130746
  class: "error"
130656
130747
  };
130657
- _hoisted_5$31 = { class: "form-row" };
130748
+ _hoisted_5$30 = { class: "form-row" };
130658
130749
  _hoisted_6$19 = { class: "label required" };
130659
130750
  _hoisted_7$15 = { class: "control" };
130660
130751
  _hoisted_8$12 = {
@@ -130820,7 +130911,7 @@ var init_signature_dialog_vue_vue_type_script_setup_true_lang = __esmMin((() =>
130820
130911
  allowClear: "",
130821
130912
  onBlur: _cache[1] || (_cache[1] = ($event) => validateField("username"))
130822
130913
  }, null, 8, ["modelValue"]), errors.username ? (openBlock(), createElementBlock("div", _hoisted_4$39, toDisplayString(errors.username), 1)) : createCommentVNode("", true)])]),
130823
- createElementVNode("div", _hoisted_5$31, [createElementVNode("div", _hoisted_6$19, toDisplayString(signWay.value.label), 1), createElementVNode("div", _hoisted_7$15, [createVNode(unref(input_default), {
130914
+ createElementVNode("div", _hoisted_5$30, [createElementVNode("div", _hoisted_6$19, toDisplayString(signWay.value.label), 1), createElementVNode("div", _hoisted_7$15, [createVNode(unref(input_default), {
130824
130915
  modelValue: formState.password,
130825
130916
  "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => formState.password = $event),
130826
130917
  placeholder: "请输入",
@@ -133700,7 +133791,7 @@ var init_index_vue_vue_type_script_setup_true_name_table_structure_overlay_lang
133700
133791
  return (_props$widget$modelRe = props.widget.modelRef) === null || _props$widget$modelRe === void 0 ? void 0 : _props$widget$modelRe.id;
133701
133792
  });
133702
133793
  const isPreview = computed(() => {
133703
- return props.widget.doc.preview || !!interCtx.isHeaderFooterEdit;
133794
+ return props.widget.doc.isDesignReadonly() || !!interCtx.isHeaderFooterEdit;
133704
133795
  });
133705
133796
  function getLayerStyle(layer) {
133706
133797
  return getStyleByType(layer.type);
@@ -133977,7 +134068,7 @@ var init_useTableSelection = __esmMin((() => {
133977
134068
  }));
133978
134069
  //#endregion
133979
134070
  //#region src/runtime/canvas/table/design/table-action-overlay/index.vue?vue&type=script&setup=true&name=table-action&lang.ts
133980
- var _hoisted_1$115, _hoisted_2$69, _hoisted_3$50, _hoisted_4$38, _hoisted_5$30, _hoisted_6$18, _hoisted_7$14, _hoisted_8$11, index_vue_vue_type_script_setup_true_name_table_action_lang_default;
134071
+ var _hoisted_1$115, _hoisted_2$69, _hoisted_3$50, _hoisted_4$38, _hoisted_5$29, _hoisted_6$18, _hoisted_7$14, _hoisted_8$11, index_vue_vue_type_script_setup_true_name_table_action_lang_default;
133981
134072
  var init_index_vue_vue_type_script_setup_true_name_table_action_lang = __esmMin((() => {
133982
134073
  init_base$2();
133983
134074
  init_useTableSelection();
@@ -133987,7 +134078,7 @@ var init_index_vue_vue_type_script_setup_true_name_table_action_lang = __esmMin(
133987
134078
  _hoisted_2$69 = ["onMouseenter"];
133988
134079
  _hoisted_3$50 = ["onClick"];
133989
134080
  _hoisted_4$38 = ["onMousedown"];
133990
- _hoisted_5$30 = { class: "row-headers" };
134081
+ _hoisted_5$29 = { class: "row-headers" };
133991
134082
  _hoisted_6$18 = ["onMouseenter"];
133992
134083
  _hoisted_7$14 = ["onClick"];
133993
134084
  _hoisted_8$11 = ["onMousedown"];
@@ -134047,7 +134138,7 @@ var init_index_vue_vue_type_script_setup_true_name_table_action_lang = __esmMin(
134047
134138
  top: `${props.widget.layoutY + base.topBase}px`
134048
134139
  };
134049
134140
  });
134050
- const isPreview = computed(() => props.widget.doc.preview);
134141
+ const isPreview = computed(() => props.widget.doc.isDesignReadonly());
134051
134142
  function onHeaderEnter(axis, index, row) {
134052
134143
  emit("update:axis-hover", {
134053
134144
  ...props.axisHover,
@@ -134292,7 +134383,7 @@ var init_index_vue_vue_type_script_setup_true_name_table_action_lang = __esmMin(
134292
134383
  }, null, 46, _hoisted_4$38)
134293
134384
  ]);
134294
134385
  }), 128))]),
134295
- createElementVNode("div", _hoisted_5$30, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.rows, (row, rowIndex) => {
134386
+ createElementVNode("div", _hoisted_5$29, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.rows, (row, rowIndex) => {
134296
134387
  var _props$axisHover2;
134297
134388
  return openBlock(), createElementBlock("div", {
134298
134389
  key: row.id,
@@ -134345,17 +134436,17 @@ var init_index_vue_vue_type_script_setup_true_name_table_action_lang = __esmMin(
134345
134436
  });
134346
134437
  }));
134347
134438
  //#endregion
134348
- //#region src/runtime/canvas/table/design/table-action-overlay/index.vue?vue&type=style&index=0&scoped=c49cd3d6&lang.less
134349
- var init_index_vue_vue_type_style_index_0_scoped_c49cd3d6_lang = __esmMin((() => {}));
134439
+ //#region src/runtime/canvas/table/design/table-action-overlay/index.vue?vue&type=style&index=0&scoped=61b83416&lang.less
134440
+ var init_index_vue_vue_type_style_index_0_scoped_61b83416_lang = __esmMin((() => {}));
134350
134441
  //#endregion
134351
134442
  //#region src/runtime/canvas/table/design/table-action-overlay/index.vue
134352
134443
  var table_action_overlay_default;
134353
134444
  var init_table_action_overlay = __esmMin((() => {
134354
134445
  init_index_vue_vue_type_script_setup_true_name_table_action_lang();
134355
134446
  init_index_vue_vue_type_script_setup_true_name_table_action_lang();
134356
- init_index_vue_vue_type_style_index_0_scoped_c49cd3d6_lang();
134447
+ init_index_vue_vue_type_style_index_0_scoped_61b83416_lang();
134357
134448
  init__plugin_vue_export_helper();
134358
- table_action_overlay_default = /*#__PURE__*/ _plugin_vue_export_helper_default(index_vue_vue_type_script_setup_true_name_table_action_lang_default, [["__scopeId", "data-v-c49cd3d6"]]);
134449
+ table_action_overlay_default = /*#__PURE__*/ _plugin_vue_export_helper_default(index_vue_vue_type_script_setup_true_name_table_action_lang_default, [["__scopeId", "data-v-61b83416"]]);
134359
134450
  }));
134360
134451
  //#endregion
134361
134452
  //#region src/runtime/canvas/table/design/table-guide-line.vue?vue&type=script&setup=true&name=table-guide-line&lang.ts
@@ -134694,7 +134785,7 @@ var init_table_design = __esmMin((() => {
134694
134785
  }));
134695
134786
  //#endregion
134696
134787
  //#region src/runtime/canvas/table/render/table-structure-overlay/sub-table-action.vue?vue&type=script&setup=true&name=sub-table-action&lang.ts
134697
- var _hoisted_1$114, _hoisted_2$68, _hoisted_3$49, _hoisted_4$37, _hoisted_5$29, _hoisted_6$17, _hoisted_7$13, _hoisted_8$10, _hoisted_9$6, _hoisted_10$5, _hoisted_11$4, _hoisted_12$3, _hoisted_13$2, _hoisted_14$2, _hoisted_15$2, _hoisted_16$1, _hoisted_17, _hoisted_18, _hoisted_19, _hoisted_20, sub_table_action_vue_vue_type_script_setup_true_name_sub_table_action_lang_default;
134788
+ var _hoisted_1$114, _hoisted_2$68, _hoisted_3$49, _hoisted_4$37, _hoisted_5$28, _hoisted_6$17, _hoisted_7$13, _hoisted_8$10, _hoisted_9$6, _hoisted_10$5, _hoisted_11$4, _hoisted_12$3, _hoisted_13$2, _hoisted_14$2, _hoisted_15$2, _hoisted_16$1, _hoisted_17, _hoisted_18, _hoisted_19, _hoisted_20, sub_table_action_vue_vue_type_script_setup_true_name_sub_table_action_lang_default;
134698
134789
  var init_sub_table_action_vue_vue_type_script_setup_true_name_sub_table_action_lang = __esmMin((() => {
134699
134790
  init_base$2();
134700
134791
  init_core$1();
@@ -134715,7 +134806,7 @@ var init_sub_table_action_vue_vue_type_script_setup_true_name_sub_table_action_l
134715
134806
  class: "action-menu"
134716
134807
  };
134717
134808
  _hoisted_4$37 = { class: "item-icon" };
134718
- _hoisted_5$29 = { class: "item-icon" };
134809
+ _hoisted_5$28 = { class: "item-icon" };
134719
134810
  _hoisted_6$17 = { class: "item-icon" };
134720
134811
  _hoisted_7$13 = { class: "item-icon scale-large" };
134721
134812
  _hoisted_8$10 = {
@@ -134968,7 +135059,7 @@ var init_sub_table_action_vue_vue_type_script_setup_true_name_sub_table_action_l
134968
135059
  key: 1,
134969
135060
  class: "menu-item",
134970
135061
  onClick: _cache[1] || (_cache[1] = ($event) => handleMaterialConsumeAction("scan"))
134971
- }, [createElementVNode("div", _hoisted_5$29, [createVNode(unref(icon_default), { icon: "icon-saoyisao" })]), _cache[17] || (_cache[17] = createElementVNode("div", { class: "item-label" }, "条码扫描", -1))])) : createCommentVNode("", true),
135062
+ }, [createElementVNode("div", _hoisted_5$28, [createVNode(unref(icon_default), { icon: "icon-saoyisao" })]), _cache[17] || (_cache[17] = createElementVNode("div", { class: "item-label" }, "条码扫描", -1))])) : createCommentVNode("", true),
134972
135063
  __props.isLastRow ? (openBlock(), createElementBlock("div", {
134973
135064
  key: 2,
134974
135065
  class: "menu-item",
@@ -137333,7 +137424,7 @@ var _hoisted_1$108 = { class: "color-picker-container" };
137333
137424
  var _hoisted_2$63 = { class: "color-content-auto" };
137334
137425
  var _hoisted_3$46 = { class: "color-content-theme" };
137335
137426
  var _hoisted_4$36 = ["onClick"];
137336
- var _hoisted_5$28 = { class: "color-content-standard" };
137427
+ var _hoisted_5$27 = { class: "color-content-standard" };
137337
137428
  var _hoisted_6$16 = { class: "items" };
137338
137429
  var _hoisted_7$12 = ["onClick"];
137339
137430
  var _hoisted_8$9 = { class: "color-content-used" };
@@ -137406,7 +137497,7 @@ var text_color_select_vue_vue_type_script_setup_true_name_text_color_select_lang
137406
137497
  }, 1024);
137407
137498
  }), 256))]);
137408
137499
  }), 128))]),
137409
- createElementVNode("div", _hoisted_5$28, [_cache[4] || (_cache[4] = createElementVNode("div", { class: "title" }, "标准色", -1)), createElementVNode("div", _hoisted_6$16, [(openBlock(true), createElementBlock(Fragment, null, renderList(unref(colorUtils).standard, (c, idx) => {
137500
+ createElementVNode("div", _hoisted_5$27, [_cache[4] || (_cache[4] = createElementVNode("div", { class: "title" }, "标准色", -1)), createElementVNode("div", _hoisted_6$16, [(openBlock(true), createElementBlock(Fragment, null, renderList(unref(colorUtils).standard, (c, idx) => {
137410
137501
  return openBlock(), createBlock(unref(tooltip_default), {
137411
137502
  distance: 12,
137412
137503
  placement: "bottom"
@@ -138258,7 +138349,7 @@ var _hoisted_1$102 = { class: "items-container" };
138258
138349
  var _hoisted_2$61 = { class: "ribbon-tab-item" };
138259
138350
  var _hoisted_3$44 = { class: "ribbon-tab-item" };
138260
138351
  var _hoisted_4$35 = { class: "ribbon-tab-item" };
138261
- var _hoisted_5$27 = { class: "ribbon-tab-item" };
138352
+ var _hoisted_5$26 = { class: "ribbon-tab-item" };
138262
138353
  var word_tab_vue_vue_type_script_setup_true_name_home_tab_lang_default = /*@__PURE__*/ defineComponent({
138263
138354
  __name: "word-tab",
138264
138355
  setup(__props) {
@@ -138440,7 +138531,7 @@ var word_tab_vue_vue_type_script_setup_true_name_home_tab_lang_default = /*@__PU
138440
138531
  createVNode(text_color_select_default, { onChange: _cache[11] || (_cache[11] = (c) => handleAction(actionType.textColor, c)) })
138441
138532
  ]),
138442
138533
  _cache[18] || (_cache[18] = createElementVNode("div", { class: "split-divider" }, null, -1)),
138443
- createElementVNode("div", _hoisted_5$27, [
138534
+ createElementVNode("div", _hoisted_5$26, [
138444
138535
  createVNode(button_icon_default, {
138445
138536
  tooltip: "左对齐",
138446
138537
  iconExtraProps: { icon: "icon-zuoduiqi2" },
@@ -138543,7 +138634,7 @@ var _hoisted_1$99 = { class: "toolkit-item" };
138543
138634
  var _hoisted_2$59 = { class: "toolkit-popper-wrap" };
138544
138635
  var _hoisted_3$43 = { class: "toolkit-popper-title" };
138545
138636
  var _hoisted_4$34 = { class: "title" };
138546
- var _hoisted_5$26 = { class: "label" };
138637
+ var _hoisted_5$25 = { class: "label" };
138547
138638
  var toolkit_item_vue_vue_type_script_setup_true_name_toolkit_item_lang_default = /*@__PURE__*/ defineComponent({
138548
138639
  __name: "toolkit-item",
138549
138640
  props: {
@@ -138601,7 +138692,7 @@ var toolkit_item_vue_vue_type_script_setup_true_name_toolkit_item_lang_default =
138601
138692
  default: withCtx(() => [createElementVNode("div", { class: normalizeClass(["area", { active: isActive.value }]) }, [createVNode(toolkit_svg_icon_default, {
138602
138693
  name: __props.icon,
138603
138694
  size: 20
138604
- }, null, 8, ["name"]), createElementVNode("span", _hoisted_5$26, toDisplayString(__props.label), 1)], 2)]),
138695
+ }, null, 8, ["name"]), createElementVNode("span", _hoisted_5$25, toDisplayString(__props.label), 1)], 2)]),
138605
138696
  _: 2
138606
138697
  }, [!__props.noDropdown ? {
138607
138698
  name: "popper",
@@ -138780,7 +138871,7 @@ var _hoisted_1$98 = { class: "field-pallette" };
138780
138871
  var _hoisted_2$58 = { class: "pallette-search" };
138781
138872
  var _hoisted_3$42 = { class: "pallette-main" };
138782
138873
  var _hoisted_4$33 = { class: "main-title" };
138783
- var _hoisted_5$25 = {
138874
+ var _hoisted_5$24 = {
138784
138875
  key: 0,
138785
138876
  class: "main-list"
138786
138877
  };
@@ -138850,7 +138941,7 @@ var field_palette_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ de
138850
138941
  size: "14"
138851
138942
  })]),
138852
138943
  _: 1
138853
- }, 8, ["modelValue"])]), createElementVNode("div", _hoisted_3$42, [createElementVNode("div", _hoisted_4$33, toDisplayString(__props.modelName), 1), filteredFields.value.length ? (openBlock(), createElementBlock("div", _hoisted_5$25, [createVNode(unref(scrollbar_default), null, {
138944
+ }, 8, ["modelValue"])]), createElementVNode("div", _hoisted_3$42, [createElementVNode("div", _hoisted_4$33, toDisplayString(__props.modelName), 1), filteredFields.value.length ? (openBlock(), createElementBlock("div", _hoisted_5$24, [createVNode(unref(scrollbar_default), null, {
138854
138945
  default: withCtx(() => [createElementVNode("div", _hoisted_6$15, [(openBlock(true), createElementBlock(Fragment, null, renderList(filteredFields.value, (f) => {
138855
138946
  return openBlock(), createElementBlock("div", {
138856
138947
  key: f.field.id,
@@ -139088,11 +139179,6 @@ var toolkit_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineCo
139088
139179
  const panelType = (_interCtx$panelData = interCtx.panelData) === null || _interCtx$panelData === void 0 ? void 0 : _interCtx$panelData.panelType;
139089
139180
  return panelType ? PANEL_TYPE_TO_TOOLKIT[panelType] : null;
139090
139181
  });
139091
- /**
139092
- * 处理组件可见性变化
139093
- * @param type 组件类型(field/widget)
139094
- * @param isVisible 是否可见
139095
- */
139096
139182
  const handleVisibleChange = (type, isVisible) => {
139097
139183
  if (PANEL_TRIGGER_TYPES.includes(type) && isVisible) {
139098
139184
  docInst.value.eventManager.dispatchCustom("inter:active", { type: `panel:${type}` });
@@ -139103,16 +139189,9 @@ var toolkit_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineCo
139103
139189
  closeOtherToolkit(type);
139104
139190
  } else if (activeToolkit.value === type) activeToolkit.value = null;
139105
139191
  };
139106
- /**
139107
- * 处理组件关闭事件
139108
- */
139109
139192
  const handleToolkitClose = (type) => {
139110
139193
  if (activeToolkit.value === type) activeToolkit.value = null;
139111
139194
  };
139112
- /**
139113
- * 关闭其他组件
139114
- * @param currentType 当前激活的组件类型
139115
- */
139116
139195
  const closeOtherToolkit = (currentType) => {
139117
139196
  if (currentType === "field" && widgetToolkitRef.value) widgetToolkitRef.value.close();
139118
139197
  else if (currentType === "widget" && fieldToolkitRef.value) fieldToolkitRef.value.close();
@@ -139168,7 +139247,7 @@ var toolkit_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineCo
139168
139247
  //#endregion
139169
139248
  //#region src/runtime/designer/toolkit/toolkit.vue
139170
139249
  init__plugin_vue_export_helper();
139171
- var toolkit_default = /*#__PURE__*/ _plugin_vue_export_helper_default(toolkit_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-f9443079"]]);
139250
+ var toolkit_default = /*#__PURE__*/ _plugin_vue_export_helper_default(toolkit_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-f7629063"]]);
139172
139251
  //#endregion
139173
139252
  //#region src/runtime/designer/panel/panel-nav.ts
139174
139253
  /** 面包屑点击后保持当前 panel,不做跳转 */
@@ -139230,17 +139309,16 @@ function createPanelNavHandler(options) {
139230
139309
  init_base$2();
139231
139310
  init_core();
139232
139311
  init__register_();
139233
- var _hoisted_1$94 = { class: "designer_panel-wrapper" };
139234
- var _hoisted_2$56 = { class: "panel-breadcrumb" };
139235
- var _hoisted_3$40 = {
139312
+ var _hoisted_1$94 = { class: "panel-breadcrumb" };
139313
+ var _hoisted_2$56 = {
139236
139314
  key: 0,
139237
139315
  class: "breadcrumb"
139238
139316
  };
139239
- var _hoisted_4$32 = {
139317
+ var _hoisted_3$40 = {
139240
139318
  key: 1,
139241
139319
  class: "title"
139242
139320
  };
139243
- var _hoisted_5$24 = {
139321
+ var _hoisted_4$32 = {
139244
139322
  key: 1,
139245
139323
  class: "empty"
139246
139324
  };
@@ -139248,14 +139326,29 @@ var panel_vue_vue_type_script_setup_true_name_panel_lang_default = /*@__PURE__*/
139248
139326
  __name: "panel",
139249
139327
  setup(__props) {
139250
139328
  const { schema, schemaTitle, active, widget } = useActivePanel();
139251
- const { docInst } = useDocPubApiContext();
139329
+ const { docInst, isRefer } = useDocPubApiContext();
139252
139330
  const handleNav = createPanelNavHandler({
139253
139331
  docInst,
139254
139332
  getActive: () => active.value,
139255
139333
  getWidget: () => widget.value
139256
139334
  });
139335
+ /** 引用只读:入口级拦截,避免漏绑 disabled 的下拉 / 按钮 / 自定义 click 仍可改 */
139336
+ function onReadonlyCapture(e) {
139337
+ if (!isRefer.value) return;
139338
+ const el = e.target;
139339
+ if (!(el === null || el === void 0 ? void 0 : el.closest)) return;
139340
+ if (el.closest(".panel-breadcrumb, .collapse-header, .allow-readonly-view, .allow-readonly-interact, .gct-scrollbar__bar, .gct-scrollbar-thumb")) return;
139341
+ if (el.closest(".panel-container")) {
139342
+ e.preventDefault();
139343
+ e.stopPropagation();
139344
+ }
139345
+ }
139257
139346
  return (_ctx, _cache) => {
139258
- return openBlock(), createElementBlock("div", _hoisted_1$94, [createElementVNode("div", _hoisted_2$56, [unref(schemaTitle) && Array.isArray(unref(schemaTitle)) ? (openBlock(), createElementBlock("div", _hoisted_3$40, [createVNode(unref(breadcrumb_default), null, {
139347
+ return openBlock(), createElementBlock("div", {
139348
+ class: normalizeClass(["designer_panel-wrapper", { "is-design-readonly": unref(isRefer) }]),
139349
+ onClickCapture: onReadonlyCapture,
139350
+ onMousedownCapture: onReadonlyCapture
139351
+ }, [createElementVNode("div", _hoisted_1$94, [unref(schemaTitle) && Array.isArray(unref(schemaTitle)) ? (openBlock(), createElementBlock("div", _hoisted_2$56, [createVNode(unref(breadcrumb_default), null, {
139259
139352
  separator: withCtx(() => [createVNode(unref(icon_default), {
139260
139353
  icon: "icon-arrow_right",
139261
139354
  version: "v2",
@@ -139271,21 +139364,21 @@ var panel_vue_vue_type_script_setup_true_name_panel_lang_default = /*@__PURE__*/
139271
139364
  }, 1032, ["onClick"]);
139272
139365
  }), 128))]),
139273
139366
  _: 1
139274
- })])) : (openBlock(), createElementBlock("div", _hoisted_4$32, toDisplayString(unref(schemaTitle) || "表单属性"), 1))]), createElementVNode("div", { class: normalizeClass(["panel-container", unref(active) ? unref(active).panelType.replace(":", "-") + "-container" : void 0]) }, [createVNode(unref(scrollbar_default), { class: "panel-scrollbar" }, {
139367
+ })])) : (openBlock(), createElementBlock("div", _hoisted_3$40, toDisplayString(unref(schemaTitle) || "表单属性"), 1))]), createElementVNode("div", { class: normalizeClass(["panel-container", unref(active) ? unref(active).panelType.replace(":", "-") + "-container" : void 0]) }, [createVNode(unref(scrollbar_default), { class: "panel-scrollbar" }, {
139275
139368
  default: withCtx(() => [unref(schema) ? (openBlock(), createBlock(resolveDynamicComponent(unref(schema).render), {
139276
139369
  key: 0,
139277
139370
  widget: unref(widget),
139278
139371
  active: unref(active)
139279
- }, null, 8, ["widget", "active"])) : (openBlock(), createElementBlock("div", _hoisted_5$24, "请选择一个元素"))]),
139372
+ }, null, 8, ["widget", "active"])) : (openBlock(), createElementBlock("div", _hoisted_4$32, "请选择一个元素"))]),
139280
139373
  _: 1
139281
- })], 2)]);
139374
+ })], 2)], 34);
139282
139375
  };
139283
139376
  }
139284
139377
  });
139285
139378
  //#endregion
139286
139379
  //#region src/runtime/designer/panel/panel.vue
139287
139380
  init__plugin_vue_export_helper();
139288
- var panel_default = /*#__PURE__*/ _plugin_vue_export_helper_default(panel_vue_vue_type_script_setup_true_name_panel_lang_default, [["__scopeId", "data-v-9dd53f82"]]);
139381
+ var panel_default = /*#__PURE__*/ _plugin_vue_export_helper_default(panel_vue_vue_type_script_setup_true_name_panel_lang_default, [["__scopeId", "data-v-a741f537"]]);
139289
139382
  //#endregion
139290
139383
  //#region src/runtime/canvas/paper/inner-corner-mark.vue?vue&type=script&setup=true&lang.ts
139291
139384
  init_constants();
@@ -141105,7 +141198,7 @@ var _hoisted_7$8 = { style: { "padding": "0 12px" } };
141105
141198
  var doc_design_layout_vue_vue_type_script_setup_true_name_doc_design_layout_lang_default = /*@__PURE__*/ defineComponent({
141106
141199
  __name: "doc-design-layout",
141107
141200
  setup(__props, { expose: __expose }) {
141108
- const { docInst, docInfo, loading, hasData, hasPages } = useDocPubApiContext();
141201
+ const { docInst, docInfo, loading, hasData, hasPages, isRefer } = useDocPubApiContext();
141109
141202
  /**
141110
141203
  * 右侧宽度拖拽
141111
141204
  */
@@ -141116,11 +141209,11 @@ var doc_design_layout_vue_vue_type_script_setup_true_name_doc_design_layout_lang
141116
141209
  rightMoveDomDown(e, layoutRef.value);
141117
141210
  };
141118
141211
  /**
141119
- * 是否预览模式
141212
+ * 是否隐藏设计器壳(仅 preview;与 refer 互斥)
141120
141213
  */
141121
- const isPreview = computed(() => {
141214
+ const hideDesignChrome = computed(() => {
141122
141215
  var _docInst$value;
141123
- return ((_docInst$value = docInst.value) === null || _docInst$value === void 0 ? void 0 : _docInst$value.preview) ?? false;
141216
+ return !!((_docInst$value = docInst.value) === null || _docInst$value === void 0 ? void 0 : _docInst$value.preview);
141124
141217
  });
141125
141218
  /**
141126
141219
  * 文件上传
@@ -141141,7 +141234,7 @@ var doc_design_layout_vue_vue_type_script_setup_true_name_doc_design_layout_lang
141141
141234
  onFileUpload(async (files) => {
141142
141235
  const file = files === null || files === void 0 ? void 0 : files[0];
141143
141236
  const doc = docInst.value;
141144
- if (!file || !doc) return;
141237
+ if (!file || !doc || doc.isDesignReadonly()) return;
141145
141238
  try {
141146
141239
  const res = await serviceUtil.parseFile(file);
141147
141240
  if (!res) return;
@@ -141160,11 +141253,11 @@ var doc_design_layout_vue_vue_type_script_setup_true_name_doc_design_layout_lang
141160
141253
  default: withCtx(() => {
141161
141254
  var _unref2;
141162
141255
  return [createElementVNode("div", {
141163
- class: "doc-design-layout",
141256
+ class: normalizeClass(["doc-design-layout", { preview: hideDesignChrome.value }]),
141164
141257
  ref_key: "layoutRef",
141165
141258
  ref: layoutRef
141166
141259
  }, [
141167
- !isPreview.value ? (openBlock(), createBlock(ribbon_default, { key: 0 })) : createCommentVNode("", true),
141260
+ !hideDesignChrome.value && !unref(isRefer) ? (openBlock(), createBlock(ribbon_default, { key: 0 })) : createCommentVNode("", true),
141168
141261
  createElementVNode("div", _hoisted_1$87, [
141169
141262
  _cache[1] || (_cache[1] = createElementVNode("aside", { class: "design-sidebar left" }, null, -1)),
141170
141263
  createElementVNode("section", _hoisted_2$51, [unref(docInfo) && unref(hasPages) ? (openBlock(), createBlock(editable_canvas_default, {
@@ -141176,18 +141269,19 @@ var doc_design_layout_vue_vue_type_script_setup_true_name_doc_design_layout_lang
141176
141269
  }, null, 8, ["iconSrc"])]))], 512),
141177
141270
  createElementVNode("aside", {
141178
141271
  class: "design-sidebar right",
141179
- style: normalizeStyle({ width: isPreview.value ? "0px" : `${unref(rightWidth)}px` })
141180
- }, [!isPreview.value ? (openBlock(), createElementBlock("div", _hoisted_4$28, [
141181
- createElementVNode("div", {
141272
+ style: normalizeStyle({ width: hideDesignChrome.value ? "0px" : `${unref(rightWidth)}px` })
141273
+ }, [!hideDesignChrome.value ? (openBlock(), createElementBlock("div", _hoisted_4$28, [
141274
+ !unref(isRefer) ? (openBlock(), createElementBlock("div", {
141275
+ key: 0,
141182
141276
  class: "divider",
141183
141277
  onMousedown: _cache[0] || (_cache[0] = (e) => handleMouseDown(e))
141184
- }, null, 32),
141185
- createVNode(toolkit_default),
141278
+ }, null, 32)) : createCommentVNode("", true),
141279
+ !unref(isRefer) ? (openBlock(), createBlock(toolkit_default, { key: 1 })) : createCommentVNode("", true),
141186
141280
  createVNode(panel_default)
141187
141281
  ])) : createCommentVNode("", true)], 4)
141188
141282
  ]),
141189
- !isPreview.value ? (openBlock(), createElementBlock("footer", _hoisted_5$21, [createElementVNode("div", null, [createElementVNode("span", _hoisted_6$12, " 布局刷新次数:" + toDisplayString(unref(docInfo).updateTick), 1), createElementVNode("span", _hoisted_7$8, " 模式:" + toDisplayString((_unref2 = unref(docInst)) === null || _unref2 === void 0 ? void 0 : _unref2.modeLabel), 1)])])) : createCommentVNode("", true)
141190
- ], 512)];
141283
+ !hideDesignChrome.value ? (openBlock(), createElementBlock("footer", _hoisted_5$21, [createElementVNode("div", null, [createElementVNode("span", _hoisted_6$12, " 布局刷新次数:" + toDisplayString(unref(docInfo).updateTick), 1), createElementVNode("span", _hoisted_7$8, " 模式:" + toDisplayString((_unref2 = unref(docInst)) === null || _unref2 === void 0 ? void 0 : _unref2.modeLabel), 1)])])) : createCommentVNode("", true)
141284
+ ], 2)];
141191
141285
  }),
141192
141286
  _: 1
141193
141287
  }, 8, ["loading", "has-data"]);
@@ -141197,7 +141291,7 @@ var doc_design_layout_vue_vue_type_script_setup_true_name_doc_design_layout_lang
141197
141291
  //#endregion
141198
141292
  //#region src/sdk/vue/layouts/doc-design-layout.vue
141199
141293
  init__plugin_vue_export_helper();
141200
- var doc_design_layout_default = /*#__PURE__*/ _plugin_vue_export_helper_default(doc_design_layout_vue_vue_type_script_setup_true_name_doc_design_layout_lang_default, [["__scopeId", "data-v-149ac4bc"]]);
141294
+ var doc_design_layout_default = /*#__PURE__*/ _plugin_vue_export_helper_default(doc_design_layout_vue_vue_type_script_setup_true_name_doc_design_layout_lang_default, [["__scopeId", "data-v-b0446176"]]);
141201
141295
  //#endregion
141202
141296
  //#region src/utils/composables/usePagesToPdf.ts
141203
141297
  init_enum();
@@ -146522,7 +146616,7 @@ var signature_config_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
146522
146616
  __name: "signature-config",
146523
146617
  setup(__props) {
146524
146618
  var _docInst$value$model;
146525
- const { docInst, withLayoutComputed } = useDocPubApiContext();
146619
+ const { docInst, withLayoutComputed, isRefer } = useDocPubApiContext();
146526
146620
  const designCtx = useDesignSuiteContext();
146527
146621
  const { modelMeta } = useModelData(toRef(docInst.value, "mainModelKey"));
146528
146622
  const docConfig = ref(((_docInst$value$model = docInst.value.model) === null || _docInst$value$model === void 0 ? void 0 : _docInst$value$model.document.config) || {
@@ -146539,10 +146633,14 @@ var signature_config_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
146539
146633
  var _docConfig$value$chec;
146540
146634
  return !!((_docConfig$value$chec = docConfig.value.checkSignatureConfig) === null || _docConfig$value$chec === void 0 ? void 0 : _docConfig$value$chec.length);
146541
146635
  });
146636
+ /** refer 下仅已配置(编辑)可点开查看;未添加不可点 */
146637
+ const canOpenSignatureConfig = computed(() => !isRefer.value || isAdded.value);
146542
146638
  const handleMutexChange = (mutex) => {
146639
+ if (isRefer.value) return;
146543
146640
  updateDocConfig("signatureMutex", mutex);
146544
146641
  };
146545
146642
  const handleSignatureConfig = () => {
146643
+ if (!canOpenSignatureConfig.value) return;
146546
146644
  const { modelKey: key, modelName: name } = modelMeta.value;
146547
146645
  triggerUtil.handle("OPEN_DOC_SIGNATURE_RULE_CONFIG_MODAL", {
146548
146646
  value: cloneDeep(docConfig.value.checkSignatureConfig || []),
@@ -146551,10 +146649,12 @@ var signature_config_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
146551
146649
  key,
146552
146650
  name
146553
146651
  },
146652
+ readonly: isRefer.value,
146554
146653
  getModelFields(modelKey) {
146555
146654
  return designCtx.runtime.getFieldList(modelKey);
146556
146655
  }
146557
146656
  }).then((res) => {
146657
+ if (isRefer.value) return;
146558
146658
  if (res === null || res === void 0 ? void 0 : res.ok) {
146559
146659
  docConfig.value.checkSignatureConfig = res.data;
146560
146660
  updateDocConfig("checkSignatureConfig", res.data);
@@ -146576,21 +146676,28 @@ var signature_config_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
146576
146676
  }, null, 8, ["modelValue"])])]),
146577
146677
  _: 1
146578
146678
  }), createElementVNode("div", _hoisted_3$33, [createVNode(unref(button_default), {
146679
+ class: normalizeClass({ "allow-readonly-view": canOpenSignatureConfig.value }),
146579
146680
  full: "",
146580
- type: "primary",
146581
- plain: !unref(isAdded),
146681
+ type: unref(isRefer) ? "default" : "primary",
146682
+ plain: !unref(isAdded) && !unref(isRefer),
146683
+ disabled: unref(isRefer) && !unref(isAdded),
146582
146684
  onClick: handleSignatureConfig
146583
146685
  }, {
146584
146686
  default: withCtx(() => [createTextVNode(toDisplayString(unref(isAdded) ? "编辑" : "添加") + "互斥规则 ", 1)]),
146585
146687
  _: 1
146586
- }, 8, ["plain"])])], 64);
146688
+ }, 8, [
146689
+ "class",
146690
+ "type",
146691
+ "plain",
146692
+ "disabled"
146693
+ ])])], 64);
146587
146694
  };
146588
146695
  }
146589
146696
  });
146590
146697
  //#endregion
146591
146698
  //#region src/suites/edhr/panel-schema/paper/modules/signature-config.vue
146592
146699
  init__plugin_vue_export_helper();
146593
- var signature_config_default = /*#__PURE__*/ _plugin_vue_export_helper_default(signature_config_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-424c7947"]]);
146700
+ var signature_config_default = /*#__PURE__*/ _plugin_vue_export_helper_default(signature_config_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-baf2f040"]]);
146594
146701
  //#endregion
146595
146702
  //#region src/suites/edhr/panel-schema/paper/PaperPanel.vue?vue&type=script&setup=true&lang.ts
146596
146703
  init_base$2();
@@ -147035,6 +147142,30 @@ var qrcode_parse_modal_vue_vue_type_script_setup_true_lang_default = /*@__PURE__
147035
147142
  init__plugin_vue_export_helper();
147036
147143
  var qrcode_parse_modal_default = /*#__PURE__*/ _plugin_vue_export_helper_default(qrcode_parse_modal_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-7a8c7960"]]);
147037
147144
  //#endregion
147145
+ //#region src/suites/shared/panel/utils/open-design-modal.ts
147146
+ init_base$2();
147147
+ init_core();
147148
+ /**
147149
+ * 设计器弹窗:refer 模式下自动只读查看(可打开看配置,不可保存修改)。
147150
+ */
147151
+ function useOpenDesignModal() {
147152
+ const { isRefer } = useDocPubApiContext();
147153
+ function open(options) {
147154
+ if (!isRefer.value) return GctModal.open(options);
147155
+ return GctModal.open({
147156
+ ...options,
147157
+ readonly: true,
147158
+ showCancel: false,
147159
+ showConfirmContinue: false,
147160
+ bodyProps: {
147161
+ ...options.bodyProps,
147162
+ readonly: true
147163
+ }
147164
+ });
147165
+ }
147166
+ return { open };
147167
+ }
147168
+ //#endregion
147038
147169
  //#region src/suites/shared/panel/config/editor/qrcode-parse-editor/qrcode-parse-editor.vue?vue&type=script&setup=true&name=qrcode-parse-editor&lang.ts
147039
147170
  init_base$2();
147040
147171
  init__register_();
@@ -147054,6 +147185,7 @@ var qrcode_parse_editor_vue_vue_type_script_setup_true_name_qrcode_parse_editor_
147054
147185
  emits: ["update:parseRules"],
147055
147186
  setup(__props, { emit: __emit }) {
147056
147187
  const { loadFieldList } = useModelLoader();
147188
+ const { open: openDesignModal } = useOpenDesignModal();
147057
147189
  const props = __props;
147058
147190
  const emit = __emit;
147059
147191
  const _parseRules = computed({
@@ -147068,7 +147200,7 @@ var qrcode_parse_editor_vue_vue_type_script_setup_true_name_qrcode_parse_editor_
147068
147200
  async function openModal() {
147069
147201
  const formFieldList = await loadFieldList(props.modelKey) || [];
147070
147202
  const subFormFieldList = props.subModelKey ? await loadFieldList(props.subModelKey) || [] : void 0;
147071
- GctModal.open({
147203
+ openDesignModal({
147072
147204
  title: hasParseRules.value ? "编辑条码解析规则" : "添加条码解析规则",
147073
147205
  width: 800,
147074
147206
  body: qrcode_parse_modal_default,
@@ -147097,7 +147229,7 @@ var qrcode_parse_editor_vue_vue_type_script_setup_true_name_qrcode_parse_editor_
147097
147229
  required: __props.required
147098
147230
  }, {
147099
147231
  default: withCtx(() => [createElementVNode("div", {
147100
- class: normalizeClass(["qrcode-parse-button", hasParseRules.value ? "primary" : "default"]),
147232
+ class: normalizeClass(["qrcode-parse-button allow-readonly-view", hasParseRules.value ? "primary" : "default"]),
147101
147233
  onClick: openModal
147102
147234
  }, toDisplayString(hasParseRules.value ? "编辑规则" : "添加规则"), 3)]),
147103
147235
  _: 1
@@ -147108,7 +147240,7 @@ var qrcode_parse_editor_vue_vue_type_script_setup_true_name_qrcode_parse_editor_
147108
147240
  //#endregion
147109
147241
  //#region src/suites/shared/panel/config/editor/qrcode-parse-editor/qrcode-parse-editor.vue
147110
147242
  init__plugin_vue_export_helper();
147111
- var qrcode_parse_editor_default = /*#__PURE__*/ _plugin_vue_export_helper_default(qrcode_parse_editor_vue_vue_type_script_setup_true_name_qrcode_parse_editor_lang_default, [["__scopeId", "data-v-739255c3"]]);
147243
+ var qrcode_parse_editor_default = /*#__PURE__*/ _plugin_vue_export_helper_default(qrcode_parse_editor_vue_vue_type_script_setup_true_name_qrcode_parse_editor_lang_default, [["__scopeId", "data-v-aba5f82e"]]);
147112
147244
  //#endregion
147113
147245
  //#region src/suites/shared/panel/config/editor/qrcode-parse-editor/barcode-parsing-rules-string-editor.vue?vue&type=script&setup=true&name=barcode-parsing-rules-string-editor&lang.ts
147114
147246
  init_utils$2();
@@ -152484,7 +152616,8 @@ var field_dependency_modal_vue_vue_type_script_setup_true_lang_default = /*@__PU
152484
152616
  types: {},
152485
152617
  fieldPathChains: {},
152486
152618
  sortDependency: {},
152487
- data: {}
152619
+ data: {},
152620
+ readonly: { type: Boolean }
152488
152621
  },
152489
152622
  setup(__props, { expose: __expose }) {
152490
152623
  const props = __props;
@@ -152651,7 +152784,7 @@ var field_dependency_modal_vue_vue_type_script_setup_true_lang_default = /*@__PU
152651
152784
  //#endregion
152652
152785
  //#region src/suites/shared/panel/modules/field-dependency-module/field-dependency-modal.vue
152653
152786
  init__plugin_vue_export_helper();
152654
- var field_dependency_modal_default = /*#__PURE__*/ _plugin_vue_export_helper_default(field_dependency_modal_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-c1906135"]]);
152787
+ var field_dependency_modal_default = /*#__PURE__*/ _plugin_vue_export_helper_default(field_dependency_modal_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-8c49df87"]]);
152655
152788
  //#endregion
152656
152789
  //#region src/suites/shared/panel/modules/field-formula-module/formula-field-options.ts
152657
152790
  var buildChildrenFromModel = (model) => {
@@ -152717,6 +152850,7 @@ var field_dependency_module_vue_vue_type_script_setup_true_lang_default = /*@__P
152717
152850
  setup(__props) {
152718
152851
  const designCtx = useDesignSuiteContext();
152719
152852
  const { docInst } = useDocPubApiContext();
152853
+ const { open: openDesignModal } = useOpenDesignModal();
152720
152854
  const mainModelKey = toRef(docInst.value, "mainModelKey");
152721
152855
  const props = __props;
152722
152856
  const formState = toRef(props, "widgetPropsMeta");
@@ -152820,7 +152954,7 @@ var field_dependency_module_vue_vue_type_script_setup_true_lang_default = /*@__P
152820
152954
  */
152821
152955
  function openRuleModal(title, options = {}) {
152822
152956
  var _manifest$value, _manifest$value2;
152823
- GctModal.open({
152957
+ openDesignModal({
152824
152958
  title,
152825
152959
  body: field_dependency_modal_default,
152826
152960
  bodyProps: {
@@ -152874,6 +153008,7 @@ var field_dependency_module_vue_vue_type_script_setup_true_lang_default = /*@__P
152874
153008
  key: `${type}-${index}`,
152875
153009
  class: "field-dependency-item"
152876
153010
  }, [createElementVNode("div", _hoisted_3$12, [createElementVNode("div", _hoisted_4$8, [createElementVNode("span", _hoisted_5$6, toDisplayString(unref(FieldDependencyTypeCh)[type]), 1), type === unref(FieldDependencyTypeConst).Assignment ? (openBlock(), createElementBlock("span", _hoisted_6$4, " 公式计算 ")) : createCommentVNode("", true)]), createElementVNode("div", _hoisted_7$2, [createVNode(unref(icon_default), {
153011
+ class: "allow-readonly-view",
152877
153012
  icon: "icon-bianji",
152878
153013
  color: "#797A7D",
152879
153014
  onClick: ($event) => onEdit(type, index)
@@ -152890,7 +153025,7 @@ var field_dependency_module_vue_vue_type_script_setup_true_lang_default = /*@__P
152890
153025
  //#endregion
152891
153026
  //#region src/suites/shared/panel/modules/field-dependency-module/field-dependency-module.vue
152892
153027
  init__plugin_vue_export_helper();
152893
- var field_dependency_module_default = /*#__PURE__*/ _plugin_vue_export_helper_default(field_dependency_module_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-8e863286"]]);
153028
+ var field_dependency_module_default = /*#__PURE__*/ _plugin_vue_export_helper_default(field_dependency_module_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-de8e9e5b"]]);
152894
153029
  //#endregion
152895
153030
  //#region src/suites/shared/hooks/useFieldPanelMeta.ts
152896
153031
  init__register_();
@@ -154499,6 +154634,7 @@ var ref_autofill_editor_vue_vue_type_script_setup_true_lang_default = /*@__PURE_
154499
154634
  setup(__props, { emit: __emit }) {
154500
154635
  const { loadFieldList, loadModelInfo } = useModelLoader();
154501
154636
  const { docInst } = useDocPubApiContext();
154637
+ const { open: openDesignModal } = useOpenDesignModal();
154502
154638
  const props = __props;
154503
154639
  const emit = __emit;
154504
154640
  const autofillEnabledVal = computed({
@@ -154571,7 +154707,7 @@ var ref_autofill_editor_vue_vue_type_script_setup_true_lang_default = /*@__PURE_
154571
154707
  toFieldList = filterNonSystemFields(mainFieldList || []);
154572
154708
  toSubTables = await loadSubTableContexts(mainFieldList || []);
154573
154709
  }
154574
- GctModal.open({
154710
+ openDesignModal({
154575
154711
  title: "添加规则",
154576
154712
  body: autofill_rules_modal_default,
154577
154713
  bodyProps: {
@@ -154607,7 +154743,7 @@ var ref_autofill_editor_vue_vue_type_script_setup_true_lang_default = /*@__PURE_
154607
154743
  var _autofillRules$value, _autofillRules$value2;
154608
154744
  return [autofillEnabledVal.value ? (openBlock(), createElementBlock("div", {
154609
154745
  key: 0,
154610
- class: normalizeClass(["data-filter-button", ((_autofillRules$value = _autofillRules.value) === null || _autofillRules$value === void 0 ? void 0 : _autofillRules$value.length) ? "primary" : "default"]),
154746
+ class: normalizeClass(["data-filter-button allow-readonly-view", ((_autofillRules$value = _autofillRules.value) === null || _autofillRules$value === void 0 ? void 0 : _autofillRules$value.length) ? "primary" : "default"]),
154611
154747
  onClick: openFilterModal
154612
154748
  }, toDisplayString(((_autofillRules$value2 = _autofillRules.value) === null || _autofillRules$value2 === void 0 ? void 0 : _autofillRules$value2.length) ? "编辑规则" : "添加规则"), 3)) : createCommentVNode("", true)];
154613
154749
  }),
@@ -154619,7 +154755,7 @@ var ref_autofill_editor_vue_vue_type_script_setup_true_lang_default = /*@__PURE_
154619
154755
  //#endregion
154620
154756
  //#region src/suites/shared/panel/config/editor/ref-autofill-editor/ref-autofill-editor.vue
154621
154757
  init__plugin_vue_export_helper();
154622
- var ref_autofill_editor_default = /*#__PURE__*/ _plugin_vue_export_helper_default(ref_autofill_editor_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-449fd707"]]);
154758
+ var ref_autofill_editor_default = /*#__PURE__*/ _plugin_vue_export_helper_default(ref_autofill_editor_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-27e2f694"]]);
154623
154759
  //#endregion
154624
154760
  //#region src/suites/shared/panel/modules/online-form-tmpl-module/online-form-tmpl-utils.ts
154625
154761
  var ONLINE_FORM_TMPL_MODULE_TYPE = "online_form_module";
@@ -155627,7 +155763,7 @@ var enum_option_item_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
155627
155763
  placeholder: "请输入"
155628
155764
  }, null, 8, ["modelValue"])]), createElementVNode("div", _hoisted_3$4, [
155629
155765
  createVNode(unref(icon_default), {
155630
- class: "option-edit",
155766
+ class: "option-edit allow-readonly-view",
155631
155767
  icon: "icon-bianji",
155632
155768
  onClick: _cache[1] || (_cache[1] = ($event) => editOption(__props.option))
155633
155769
  }),
@@ -155673,7 +155809,7 @@ var enum_option_item_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
155673
155809
  //#endregion
155674
155810
  //#region src/suites/shared/panel/config/editor/enum-opt-editor/enum-option-item.vue
155675
155811
  init__plugin_vue_export_helper();
155676
- var enum_option_item_default = /*#__PURE__*/ _plugin_vue_export_helper_default(enum_option_item_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-ae49da84"]]);
155812
+ var enum_option_item_default = /*#__PURE__*/ _plugin_vue_export_helper_default(enum_option_item_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-e91c9c0e"]]);
155677
155813
  //#endregion
155678
155814
  //#region src/suites/shared/panel/config/editor/enum-opt-editor/enum-option-modal.vue?vue&type=script&setup=true&lang.ts
155679
155815
  init_dist_web();
@@ -155828,6 +155964,7 @@ var enum_opt_editor_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
155828
155964
  },
155829
155965
  emits: ["update:options"],
155830
155966
  setup(__props, { emit: __emit }) {
155967
+ const { open: openDesignModal } = useOpenDesignModal();
155831
155968
  const props = __props;
155832
155969
  const emit = __emit;
155833
155970
  const _options = computed({
@@ -155859,7 +155996,7 @@ var enum_opt_editor_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
155859
155996
  if (close) ctx.close();
155860
155997
  };
155861
155998
  function openOptionModal(option) {
155862
- GctModal.open({
155999
+ openDesignModal({
155863
156000
  title: option ? "编辑选项" : "新建选项",
155864
156001
  body: enum_option_modal_default,
155865
156002
  showConfirmContinue: !option,
@@ -155887,7 +156024,7 @@ var enum_opt_editor_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
155887
156024
  inline: false
155888
156025
  }, {
155889
156026
  extra: withCtx(() => [createElementVNode("div", _hoisted_1$28, [createElementVNode("div", {
155890
- class: "extra-item",
156027
+ class: "extra-item allow-readonly-view",
155891
156028
  onClick: _cache[0] || (_cache[0] = ($event) => openOptionModal())
155892
156029
  }, [createVNode(unref(icon_default), {
155893
156030
  icon: "icon-pad_icon_add_blue",
@@ -155926,7 +156063,7 @@ var enum_opt_editor_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
155926
156063
  //#endregion
155927
156064
  //#region src/suites/shared/panel/config/editor/enum-opt-editor/enum-opt-editor.vue
155928
156065
  init__plugin_vue_export_helper();
155929
- var enum_opt_editor_default = /*#__PURE__*/ _plugin_vue_export_helper_default(enum_opt_editor_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-74ed3434"]]);
156066
+ var enum_opt_editor_default = /*#__PURE__*/ _plugin_vue_export_helper_default(enum_opt_editor_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-72d224de"]]);
155930
156067
  //#endregion
155931
156068
  //#region src/suites/edhr/panel-config/field/enum/field-enum-config.vue?vue&type=script&setup=true&lang.ts
155932
156069
  init_enum();