@ibiz-template/vue3-components 0.7.26 → 0.7.27

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (94) hide show
  1. package/dist/{index-RwYoggQd.js → index-0TO7mjm5.js} +1 -1
  2. package/dist/index-Dq21zXhV.js +4 -0
  3. package/dist/{index-s7g1-ymW.js → index-g6o3vQXo.js} +1 -1
  4. package/dist/index.min.css +1 -1
  5. package/dist/index.system.min.js +1 -1
  6. package/dist/{xlsx-util-Rf5FMxyR.js → xlsx-util-qdXxbg2A.js} +1 -1
  7. package/es/common/action-toolbar/action-toolbar.mjs +1 -1
  8. package/es/common/custom-theme/custom-theme.mjs +1 -1
  9. package/es/common/data-import2/data-import2.mjs +4 -1
  10. package/es/control/context-menu/context-menu.mjs +2 -2
  11. package/es/control/dashboard/custom-dashboard-container/custom-dashboard-container.mjs +1 -1
  12. package/es/control/drtab/drtab-control.util.mjs +7 -11
  13. package/es/control/form/form-detail/form-button/form-button.mjs +1 -1
  14. package/es/control/form/form-detail/form-item/form-item-container/form-item-container.css +1 -1
  15. package/es/control/form/form-detail/form-item/form-item-container/form-item-container.d.ts +28 -0
  16. package/es/control/form/form-detail/form-item/form-item-container/form-item-container.mjs +52 -7
  17. package/es/control/form/form-detail/form-item/form-item.mjs +4 -0
  18. package/es/control/grid/grid/grid-control.util.mjs +15 -11
  19. package/es/control/search-bar/search-bar.mjs +2 -2
  20. package/es/control/toolbar/export-excel/export-excel.mjs +2 -2
  21. package/es/control/toolbar/short-cut-button/short-cut-button.mjs +4 -1
  22. package/es/control/toolbar/toolbar.mjs +2 -2
  23. package/es/control/tree/index.d.ts +9 -0
  24. package/es/control/tree/tree.d.ts +9 -0
  25. package/es/control/tree/tree.mjs +5 -1
  26. package/es/editor/data-picker/ibiz-mpicker/ibiz-mpicker.css +1 -1
  27. package/es/editor/data-picker/ibiz-picker/ibiz-picker.mjs +2 -2
  28. package/es/editor/data-picker/ibiz-picker-embed-view/ibiz-picker-embed-view.css +1 -1
  29. package/es/editor/data-picker/ibiz-picker-embed-view/ibiz-picker-embed-view.d.ts +4 -0
  30. package/es/editor/data-picker/ibiz-picker-embed-view/ibiz-picker-embed-view.mjs +48 -3
  31. package/es/editor/data-picker/ibiz-picker-select-view/ibiz-picker-select-view.mjs +2 -2
  32. package/es/editor/data-picker/picker-editor.controller.d.ts +2 -2
  33. package/es/editor/dropdown-list/dropdown-list-editor.controller.d.ts +6 -0
  34. package/es/editor/dropdown-list/dropdown-list-editor.controller.mjs +10 -1
  35. package/es/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.d.ts +1 -1
  36. package/es/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.mjs +17 -4
  37. package/es/editor/dropdown-list/ibiz-emoji-picker/ibiz-emoji-picker.css +1 -1
  38. package/es/editor/dropdown-list/ibiz-emoji-picker/ibiz-emoji-picker.d.ts +2 -0
  39. package/es/editor/dropdown-list/ibiz-emoji-picker/ibiz-emoji-picker.mjs +33 -12
  40. package/es/editor/span/span/span.mjs +3 -1
  41. package/es/editor/text-box/ibiz-input-number/ibiz-input-number.mjs +12 -10
  42. package/es/editor/text-box/input/input.mjs +3 -0
  43. package/es/editor/user/ibiz-searchcond-edit/ibiz-searchcond-edit.mjs +1 -1
  44. package/es/locale/en/index.d.ts +3 -0
  45. package/es/locale/en/index.mjs +3 -0
  46. package/es/locale/zh-CN/index.d.ts +3 -0
  47. package/es/locale/zh-CN/index.mjs +3 -0
  48. package/es/panel-component/nav-tabs/nav-tabs.controller.mjs +3 -2
  49. package/es/panel-component/panel-button/panel-button.mjs +1 -1
  50. package/es/view-engine/edit-view.engine.mjs +3 -2
  51. package/es/view-engine/opt-view.engine.mjs +2 -1
  52. package/es/view-engine/pickup-tree-view.engine.mjs +1 -0
  53. package/es/web-app/attach-environment-config.mjs +2 -1
  54. package/lib/common/action-toolbar/action-toolbar.cjs +1 -1
  55. package/lib/common/custom-theme/custom-theme.cjs +1 -1
  56. package/lib/common/data-import2/data-import2.cjs +4 -1
  57. package/lib/control/context-menu/context-menu.cjs +2 -2
  58. package/lib/control/dashboard/custom-dashboard-container/custom-dashboard-container.cjs +1 -1
  59. package/lib/control/drtab/drtab-control.util.cjs +7 -11
  60. package/lib/control/form/form-detail/form-button/form-button.cjs +1 -1
  61. package/lib/control/form/form-detail/form-item/form-item-container/form-item-container.cjs +51 -6
  62. package/lib/control/form/form-detail/form-item/form-item-container/form-item-container.css +1 -1
  63. package/lib/control/form/form-detail/form-item/form-item.cjs +4 -0
  64. package/lib/control/grid/grid/grid-control.util.cjs +15 -11
  65. package/lib/control/search-bar/search-bar.cjs +2 -2
  66. package/lib/control/toolbar/export-excel/export-excel.cjs +2 -2
  67. package/lib/control/toolbar/short-cut-button/short-cut-button.cjs +4 -1
  68. package/lib/control/toolbar/toolbar.cjs +2 -2
  69. package/lib/control/tree/tree.cjs +5 -1
  70. package/lib/editor/data-picker/ibiz-mpicker/ibiz-mpicker.css +1 -1
  71. package/lib/editor/data-picker/ibiz-picker/ibiz-picker.cjs +2 -2
  72. package/lib/editor/data-picker/ibiz-picker-embed-view/ibiz-picker-embed-view.cjs +48 -3
  73. package/lib/editor/data-picker/ibiz-picker-embed-view/ibiz-picker-embed-view.css +1 -1
  74. package/lib/editor/data-picker/ibiz-picker-select-view/ibiz-picker-select-view.cjs +2 -2
  75. package/lib/editor/dropdown-list/dropdown-list-editor.controller.cjs +10 -1
  76. package/lib/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.cjs +17 -4
  77. package/lib/editor/dropdown-list/ibiz-emoji-picker/ibiz-emoji-picker.cjs +31 -10
  78. package/lib/editor/dropdown-list/ibiz-emoji-picker/ibiz-emoji-picker.css +1 -1
  79. package/lib/editor/span/span/span.cjs +2 -0
  80. package/lib/editor/text-box/ibiz-input-number/ibiz-input-number.cjs +12 -10
  81. package/lib/editor/text-box/input/input.cjs +3 -0
  82. package/lib/editor/user/ibiz-searchcond-edit/ibiz-searchcond-edit.cjs +1 -1
  83. package/lib/locale/en/index.cjs +3 -0
  84. package/lib/locale/zh-CN/index.cjs +3 -0
  85. package/lib/panel-component/nav-tabs/nav-tabs.controller.cjs +3 -2
  86. package/lib/panel-component/panel-button/panel-button.cjs +1 -1
  87. package/lib/view-engine/edit-view.engine.cjs +3 -2
  88. package/lib/view-engine/opt-view.engine.cjs +2 -1
  89. package/lib/view-engine/pickup-tree-view.engine.cjs +1 -0
  90. package/lib/web-app/attach-environment-config.cjs +2 -1
  91. package/package.json +7 -7
  92. package/dist/index-28jZm-aB.js +0 -4
  93. /package/es/node_modules/.pnpm/{@ibiz-template_core@0.7.26_axios@1.6.8_lodash-es@4.17.21_qs@6.11.2_qx-util@0.4.8_ramda@0.29.1 → @ibiz-template_core@0.7.27_axios@1.6.8_lodash-es@4.17.21_qs@6.11.2_qx-util@0.4.8_ramda@0.29.1}/node_modules/@ibiz-template/core/out/utils/namespace/namespace.mjs +0 -0
  94. /package/lib/node_modules/.pnpm/{@ibiz-template_core@0.7.26_axios@1.6.8_lodash-es@4.17.21_qs@6.11.2_qx-util@0.4.8_ramda@0.29.1 → @ibiz-template_core@0.7.27_axios@1.6.8_lodash-es@4.17.21_qs@6.11.2_qx-util@0.4.8_ramda@0.29.1}/node_modules/@ibiz-template/core/out/utils/namespace/namespace.cjs +0 -0
@@ -1 +1 @@
1
- .ibiz-form-item-container{--ibiz-form-item-container-label-width:130px;--ibiz-form-item-container-line-height:var(--ibiz-height-control-default);--ibiz-form-item-container-require-mark-color:var(--ibiz-color-danger);--ibiz-form-item-container-label-left-padding:calc(var(--ibiz-spacing-base-tight) / 2) var(--ibiz-spacing-base-tight) calc(var(--ibiz-spacing-base-tight) / 2) 0;--ibiz-form-item-container-label-right-padding:calc(var(--ibiz-spacing-base-tight) / 2) 0 calc(var(--ibiz-spacing-base-tight) / 2) var(--ibiz-spacing-base-tight);--ibiz-form-item-container-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-extra-tight) var(--ibiz-spacing-tight) var(--ibiz-spacing-extra-tight);--ibiz-form-item-container-font-size:var(--ibiz-font-size-regular);--ibiz-form-item-container-label-color:var(--ibiz-color-text-1);--ibiz-form-item-container-error-font-size:var(--ibiz-font-size-small);--ibiz-form-item-container-error-color:var(--ibiz-color-danger);width:100%;height:100%;padding:var(--ibiz-form-item-container-padding)}.ibiz-form-item-container__label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-shrink:0;font-size:var(--ibiz-form-item-container-font-size);color:var(--ibiz-form-item-container-label-color)}.ibiz-form-item-container--left,.ibiz-form-item-container--right{display:flex;min-height:var(--ibiz-form-item-container-line-height)}.ibiz-form-item-container--left .ibiz-form-item-container__label,.ibiz-form-item-container--right .ibiz-form-item-container__label{width:var(--ibiz-form-item-container-label-width)}.ibiz-form-item-container--bottom,.ibiz-form-item-container--top{display:flex;flex-flow:column nowrap}.ibiz-form-item-container--top .ibiz-form-item-container__label{margin-bottom:var(--ibiz-spacing-extra-tight)}.ibiz-form-item-container--bottom .ibiz-form-item-container__label{margin-top:var(--ibiz-spacing-extra-tight)}.ibiz-form-item-container--left .ibiz-form-item-container__label{padding:var(--ibiz-form-item-container-label-left-padding);text-align:right}.ibiz-form-item-container--right .ibiz-form-item-container__label{padding:var(--ibiz-form-item-container-label-right-padding);text-align:left}.ibiz-form-item-container.is-required .ibiz-form-item-container__label::before{display:inline-block;margin-right:4px;font-family:SimSun;line-height:1;color:var(--ibiz-form-item-container-require-mark-color);content:"*"}.ibiz-form-item-container__content{display:flex;flex-flow:column nowrap;position:relative;flex-grow:1}.ibiz-form-item-container__content--label-left,.ibiz-form-item-container__content--label-none,.ibiz-form-item-container__content--label-right{height:100%}.ibiz-form-item-container__editor{position:relative;flex-grow:1;height:100%}.ibiz-form-item-container__error{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;position:absolute;top:100%;width:100%;font-size:var(--ibiz-form-item-container-error-font-size);line-height:calc(var(--ibiz-form-item-container-error-font-size) + 2px);color:var(--ibiz-form-item-container-error-color);word-wrap:break-word}.ibiz-form-item-container.is-error .el-input__wrapper{box-shadow:0 0 0 1px var(--ibiz-form-item-container-error-color) inset}
1
+ .ibiz-form-item-container{--ibiz-form-item-container-label-width:130px;--ibiz-form-item-container-line-height:var(--ibiz-height-control-default);--ibiz-form-item-container-require-mark-color:var(--ibiz-color-danger);--ibiz-form-item-container-label-left-padding:calc(var(--ibiz-spacing-base-tight) / 2) var(--ibiz-spacing-base-tight) calc(var(--ibiz-spacing-base-tight) / 2) 0;--ibiz-form-item-container-label-right-padding:calc(var(--ibiz-spacing-base-tight) / 2) 0 calc(var(--ibiz-spacing-base-tight) / 2) var(--ibiz-spacing-base-tight);--ibiz-form-item-container-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-extra-tight) var(--ibiz-spacing-tight) var(--ibiz-spacing-extra-tight);--ibiz-form-item-container-font-size:var(--ibiz-font-size-regular);--ibiz-form-item-container-label-color:var(--ibiz-color-text-1);--ibiz-form-item-container-error-font-size:var(--ibiz-font-size-small);--ibiz-form-item-container-error-color:var(--ibiz-color-danger);width:100%;height:100%;padding:var(--ibiz-form-item-container-padding)}.ibiz-form-item-container__label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-shrink:0;font-size:var(--ibiz-form-item-container-font-size);color:var(--ibiz-form-item-container-label-color)}.ibiz-form-item-container__label--tooltip{--ibiz-form-item-container-label-width:130px;--ibiz-form-item-container-line-height:var(--ibiz-height-control-default);--ibiz-form-item-container-require-mark-color:var(--ibiz-color-danger);--ibiz-form-item-container-label-left-padding:calc(var(--ibiz-spacing-base-tight) / 2) var(--ibiz-spacing-base-tight) calc(var(--ibiz-spacing-base-tight) / 2) 0;--ibiz-form-item-container-label-right-padding:calc(var(--ibiz-spacing-base-tight) / 2) 0 calc(var(--ibiz-spacing-base-tight) / 2) var(--ibiz-spacing-base-tight);--ibiz-form-item-container-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-extra-tight) var(--ibiz-spacing-tight) var(--ibiz-spacing-extra-tight);--ibiz-form-item-container-font-size:var(--ibiz-font-size-regular);--ibiz-form-item-container-label-color:var(--ibiz-color-text-1);--ibiz-form-item-container-error-font-size:var(--ibiz-font-size-small);--ibiz-form-item-container-error-color:var(--ibiz-color-danger);max-width:150px;font-size:var(--ibiz-form-item-container-font-size);line-height:var(--ibiz-form-item-container-line-height)}.ibiz-form-item-container__label--tooltip:has(ion-icon){padding-right:var(--ibiz-spacing-base-tight)}.ibiz-form-item-container__label--tooltip a{padding:0 var(--ibiz-spacing-extra-tight);color:var(--ibiz-color-link)}.ibiz-form-item-container__label--tooltip ion-icon{position:absolute;top:var(--ibiz-spacing-base-tight);right:var(--ibiz-spacing-extra-tight);font-size:var(--ibiz-width-icon-large)}.ibiz-form-item-container--left,.ibiz-form-item-container--right{display:flex;min-height:var(--ibiz-form-item-container-line-height)}.ibiz-form-item-container--left .ibiz-form-item-container__label,.ibiz-form-item-container--right .ibiz-form-item-container__label{width:var(--ibiz-form-item-container-label-width)}.ibiz-form-item-container--bottom,.ibiz-form-item-container--top{display:flex;flex-flow:column nowrap}.ibiz-form-item-container--top .ibiz-form-item-container__label{margin-bottom:var(--ibiz-spacing-extra-tight)}.ibiz-form-item-container--bottom .ibiz-form-item-container__label{margin-top:var(--ibiz-spacing-extra-tight)}.ibiz-form-item-container--left .ibiz-form-item-container__label{padding:var(--ibiz-form-item-container-label-left-padding);text-align:right}.ibiz-form-item-container--right .ibiz-form-item-container__label{padding:var(--ibiz-form-item-container-label-right-padding);text-align:left}.ibiz-form-item-container.is-required .ibiz-form-item-container__label::before{display:inline-block;margin-right:4px;font-family:SimSun;line-height:1;color:var(--ibiz-form-item-container-require-mark-color);content:"*"}.ibiz-form-item-container__content{display:flex;flex-flow:column nowrap;position:relative;flex-grow:1}.ibiz-form-item-container__content--label-left,.ibiz-form-item-container__content--label-none,.ibiz-form-item-container__content--label-right{height:100%}.ibiz-form-item-container__editor{position:relative;flex-grow:1;height:100%}.ibiz-form-item-container__error{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;position:absolute;top:100%;width:100%;font-size:var(--ibiz-form-item-container-error-font-size);line-height:calc(var(--ibiz-form-item-container-error-font-size) + 2px);color:var(--ibiz-form-item-container-error-color);word-wrap:break-word}.ibiz-form-item-container.is-error .el-input__wrapper{box-shadow:0 0 0 1px var(--ibiz-form-item-container-error-color) inset}
@@ -81,6 +81,10 @@ const FormItem = /* @__PURE__ */ vue.defineComponent({
81
81
  "labelClass": this.controller.labelClass,
82
82
  "label-pos": this.c.model.labelPos,
83
83
  "label-width": this.c.model.labelWidth,
84
+ "enableInputTip": this.modelData.enableInputTip,
85
+ "inputTip": this.modelData.inputTip,
86
+ "inputTipUrl": this.modelData.inputTipUrl,
87
+ "inputTipClosable": this.modelData.inputTipClosable,
84
88
  "onClick": (event) => this.c.onClick(event)
85
89
  }, _isSlot(editor) ? editor : {
86
90
  default: () => [editor]
@@ -450,13 +450,13 @@ function useGridHeaderStyle(tableRef, ns) {
450
450
  };
451
451
  }
452
452
  function useGridDraggable(tableRef, ns, c) {
453
- if (!c.enableRowEditOrder || !c.model.orderValueAppDEFieldId) {
453
+ if (!c.enableRowEditOrder) {
454
454
  return {};
455
455
  }
456
- let draggingDom = null;
457
456
  let dragIndex = 0;
458
- let draggingKey = "";
457
+ let dropIndex = 0;
459
458
  let draggingData = null;
459
+ let dropData = null;
460
460
  const cleanups = [];
461
461
  const calcSrfKeyByClass = (classList) => {
462
462
  let result = "";
@@ -474,9 +474,9 @@ function useGridDraggable(tableRef, ns, c) {
474
474
  "dragstart",
475
475
  (event) => {
476
476
  if (event.target) {
477
- draggingDom = event.target;
477
+ const draggingDom = event.target;
478
478
  event.dataTransfer.effectAllowed = "move";
479
- draggingKey = calcSrfKeyByClass(draggingDom.classList);
479
+ const draggingKey = calcSrfKeyByClass(draggingDom.classList);
480
480
  dragIndex = c.state.rows.findIndex(
481
481
  (row) => row.data.srfkey === draggingKey
482
482
  );
@@ -491,15 +491,13 @@ function useGridDraggable(tableRef, ns, c) {
491
491
  event.preventDefault();
492
492
  const targetDom = event.currentTarget;
493
493
  const targetKey = calcSrfKeyByClass(targetDom.classList);
494
- const targetIndex = c.state.rows.findIndex(
494
+ dropIndex = c.state.rows.findIndex(
495
495
  (row) => row.data.srfkey === targetKey
496
496
  );
497
- if (draggingKey === targetKey || targetIndex === -1) {
497
+ if ((draggingData == null ? void 0 : draggingData.data.srfkey) === targetKey || dropIndex === -1) {
498
498
  return;
499
499
  }
500
- c.state.rows.splice(dragIndex, 1);
501
- c.state.rows.splice(targetIndex, 0, draggingData);
502
- dragIndex = targetIndex;
500
+ dropData = c.state.rows[dropIndex];
503
501
  }
504
502
  );
505
503
  const cleanDragOver = core.listenJSEvent(
@@ -511,7 +509,13 @@ function useGridDraggable(tableRef, ns, c) {
511
509
  );
512
510
  const cleanDragEnd = core.listenJSEvent(item, "dragend", (event) => {
513
511
  event.preventDefault();
514
- c.onDragChange();
512
+ if (draggingData && dropData) {
513
+ c.onDragChange(
514
+ draggingData,
515
+ dropData,
516
+ dropIndex > dragIndex ? "next" : "prev"
517
+ );
518
+ }
515
519
  });
516
520
  cleanups.push(cleanDragStart);
517
521
  cleanups.push(cleanDragEnter);
@@ -139,7 +139,7 @@ const SearchBarControl = /* @__PURE__ */ vue.defineComponent({
139
139
  }, [groupItem.caption]);
140
140
  })])), this.c.model.enableGroup && this.c.isBackendSearchGroup && vue.createVNode(vue.resolveComponent("el-button"), {
141
141
  "class": this.ns.b("save"),
142
- "title": ibiz.i18n.t("control.searchBar.saveGroup"),
142
+ "title": ibiz.env.enableTitle ? ibiz.i18n.t("control.searchBar.saveGroup") : void 0,
143
143
  "onClick": this.handleSave
144
144
  }, {
145
145
  default: () => [vue.createVNode("ion-icon", {
@@ -163,7 +163,7 @@ const SearchBarControl = /* @__PURE__ */ vue.defineComponent({
163
163
  }), this.c.enableFilter && vue.createVNode(vue.resolveComponent("el-button"), {
164
164
  "ref": "filterButtonRef",
165
165
  "type": "primary",
166
- "title": ibiz.i18n.t("control.searchBar.filter"),
166
+ "title": ibiz.env.enableTitle ? ibiz.i18n.t("control.searchBar.filter") : void 0,
167
167
  "class": this.ns.b("filter"),
168
168
  "onClick": () => this.triggerFilter()
169
169
  }, {
@@ -64,7 +64,7 @@ const IBizExportExcel = /* @__PURE__ */ vue.defineComponent({
64
64
  title: () => {
65
65
  let _slot;
66
66
  return vue.createVNode(vue.resolveComponent("el-button"), {
67
- "title": this.item.tooltip,
67
+ "title": ibiz.env.enableTitle ? this.item.tooltip : void 0,
68
68
  "size": this.$props.size,
69
69
  "class": this.ns.b("submenu-button")
70
70
  }, _isSlot(_slot = this.btnContent(this.item)) ? _slot : {
@@ -139,7 +139,7 @@ const IBizExportExcel = /* @__PURE__ */ vue.defineComponent({
139
139
  default: () => {
140
140
  let _slot6;
141
141
  return vue.createVNode(vue.resolveComponent("el-button"), {
142
- "title": this.item.tooltip,
142
+ "title": ibiz.env.enableTitle ? this.item.tooltip : void 0,
143
143
  "size": this.$props.size,
144
144
  "class": this.ns.e("button")
145
145
  }, _isSlot(_slot6 = this.btnContent(this.item)) ? _slot6 : {
@@ -51,7 +51,10 @@ const IBizShortCutButton = /* @__PURE__ */ vue.defineComponent({
51
51
  return vue.createVNode("div", {
52
52
  "class": [this.ns.b(), this.ns.is("short-cut", this.isShortCut)]
53
53
  }, [vue.createVNode(vue.resolveComponent("el-button"), {
54
- "title": this.isShortCut ? "".concat(ibiz.i18n.t("app.cancel")).concat(this.item.tooltip) : this.item.tooltip,
54
+ "title": (
55
+ // eslint-disable-next-line no-nested-ternary
56
+ ibiz.env.enableTitle ? this.isShortCut ? "".concat(ibiz.i18n.t("app.cancel")).concat(this.item.tooltip) : this.item.tooltip : void 0
57
+ ),
55
58
  "size": this.size,
56
59
  "text": Object.is(this.buttonType, "inverse"),
57
60
  "type": this.buttonType,
@@ -72,7 +72,7 @@ const ToolbarControl = /* @__PURE__ */ vue.defineComponent({
72
72
  "key": button.id,
73
73
  "class": [ns.e("item")]
74
74
  }, [vue.createVNode(vue.resolveComponent("el-button"), {
75
- "title": button.tooltip,
75
+ "title": ibiz.env.enableTitle ? button.tooltip : void 0,
76
76
  "size": btnSize.value,
77
77
  "onClick": (e) => handleClick(button, e)
78
78
  }, _isSlot(_slot = btnContent(button)) ? _slot : {
@@ -245,7 +245,7 @@ const ToolbarControl = /* @__PURE__ */ vue.defineComponent({
245
245
  "key": itemId,
246
246
  "class": [ns.e("item"), ns.e("item-deuiaction"), ns.em("item", buttonType), calcCssName(item), ns.is("loading", c.state.buttonsState[itemId].loading)]
247
247
  }, [vue.createVNode(vue.resolveComponent("el-button"), {
248
- "title": item.tooltip,
248
+ "title": ibiz.env.enableTitle ? item.tooltip : void 0,
249
249
  "size": btnSize.value,
250
250
  "text": Object.is(buttonType, "inverse"),
251
251
  "type": buttonType,
@@ -65,6 +65,10 @@ const TreeControl = /* @__PURE__ */ vue.defineComponent({
65
65
  loadDefault: {
66
66
  type: Boolean,
67
67
  default: true
68
+ },
69
+ checkStrictly: {
70
+ type: Boolean,
71
+ default: true
68
72
  }
69
73
  },
70
74
  setup() {
@@ -475,7 +479,7 @@ const TreeControl = /* @__PURE__ */ vue.defineComponent({
475
479
  "expand-on-click-node": false,
476
480
  "auto-expand-parent": false,
477
481
  "show-checkbox": !this.c.state.singleSelect,
478
- "check-strictly": !this.cascadeSelect,
482
+ "check-strictly": !this.cascadeSelect && this.checkStrictly,
479
483
  "default-expanded-keys": this.c.state.expandedKeys,
480
484
  "props": {
481
485
  label: "_text",
@@ -1 +1 @@
1
- @charset "UTF-8";.ibiz-mpicker{display:flex}.ibiz-mpicker input::-moz-placeholder{color:var(--ibiz-form-item-placeholder-color)}.ibiz-mpicker input::placeholder{color:var(--ibiz-form-item-placeholder-color)}.ibiz-mpicker .el-input.is-disabled .el-input__inner{color:var(--ibiz-form-item-disabled-color);border-color:var(--ibiz-form-item-disabled-border-color)}.ibiz-mpicker .el-select{width:100%}.ibiz-mpicker ion-icon{font-size:var(--ibiz-form-item-font-size);cursor:pointer}.ibiz-mpicker__buns-position{position:relative;right:11px;display:inline-block}.ibiz-mpicker__btns{position:absolute;right:0;height:100%;color:var(--ibiz-form-item-placeholder-color);display:flex;align-items:center;justify-content:center}.ibiz-mpicker--disabled ion-icon{pointer-events:none}.ibiz-mpicker--readonly{font-size:var(--ibiz-form-item-font-size);line-height:var(--ibiz-editor-default-line-height);color:var(--ibiz-form-item-readonly-color)}.ibiz-mpicker-form-default-content{display:none}.ibiz-form-item .ibiz-mpicker.is-show-default:hover .ibiz-mpicker-form-default-content{display:none}.ibiz-form-item .ibiz-mpicker.is-show-default:hover .ibiz-mpicker-select{display:block}.ibiz-form-item .ibiz-mpicker.is-show-default .ibiz-mpicker-form-default-content{display:flex;align-items:center;width:100%;height:var(--ibiz-editor-default-line-height);padding:var(--ibiz-form-item-hover-edit-padding);font-family:Arial,sans-serif;font-size:var(--ibiz-form-item-font-size);line-height:var(--ibiz-editor-default-line-height);color:var(--ibiz-form-item-text-color)}.ibiz-form-item .ibiz-mpicker.is-show-default .ibiz-mpicker-form-default-content .ibiz-mpicker-content-item{height:calc(var(--ibiz-editor-default-line-height) - var(--ibiz-spacing-tight));padding:0 var(--ibiz-spacing-tight);margin:2px 6px 2px 0;font-size:var(--ibiz-font-size-small);line-height:calc(var(--ibiz-editor-default-line-height) - var(--ibiz-spacing-tight));color:var(--ibiz-editor-default-text-color);background-color:var(--ibiz-color-fill-0);border:1px solid transparent;border-radius:var(--ibiz-border-radius-small)}.ibiz-form-item .ibiz-mpicker.is-show-default .ibiz-mpicker-select{display:none}.ibiz-form-item .ibiz-mpicker.is-show-default.is-editable .ibiz-mpicker-form-default-content{display:none}.ibiz-form-item .ibiz-mpicker.is-show-default.is-editable .ibiz-mpicker-select{display:block}
1
+ @charset "UTF-8";.ibiz-mpicker{display:flex}.ibiz-mpicker input::-moz-placeholder{color:var(--ibiz-form-item-placeholder-color)}.ibiz-mpicker input::placeholder{color:var(--ibiz-form-item-placeholder-color)}.ibiz-mpicker .el-input.is-disabled .el-input__inner{color:var(--ibiz-form-item-disabled-color);border-color:var(--ibiz-form-item-disabled-border-color)}.ibiz-mpicker .el-select{width:100%}.ibiz-mpicker ion-icon{font-size:var(--ibiz-form-item-font-size);cursor:pointer}.ibiz-mpicker__buns-position{right:26px;cursor:pointer;position:relative;display:inline-block}.ibiz-mpicker__btns{position:absolute;right:0;height:100%;color:var(--ibiz-form-item-placeholder-color);display:flex;align-items:center;justify-content:center}.ibiz-mpicker--disabled ion-icon{pointer-events:none}.ibiz-mpicker--readonly{font-size:var(--ibiz-form-item-font-size);line-height:var(--ibiz-editor-default-line-height);color:var(--ibiz-form-item-readonly-color)}.ibiz-mpicker-form-default-content{display:none}.ibiz-form-item .ibiz-mpicker.is-show-default:hover .ibiz-mpicker-form-default-content{display:none}.ibiz-form-item .ibiz-mpicker.is-show-default:hover .ibiz-mpicker-select{display:block}.ibiz-form-item .ibiz-mpicker.is-show-default .ibiz-mpicker-form-default-content{display:flex;align-items:center;width:100%;height:var(--ibiz-editor-default-line-height);padding:var(--ibiz-form-item-hover-edit-padding);font-family:Arial,sans-serif;font-size:var(--ibiz-form-item-font-size);line-height:var(--ibiz-editor-default-line-height);color:var(--ibiz-form-item-text-color)}.ibiz-form-item .ibiz-mpicker.is-show-default .ibiz-mpicker-form-default-content .ibiz-mpicker-content-item{height:calc(var(--ibiz-editor-default-line-height) - var(--ibiz-spacing-tight));padding:0 var(--ibiz-spacing-tight);margin:2px 6px 2px 0;font-size:var(--ibiz-font-size-small);line-height:calc(var(--ibiz-editor-default-line-height) - var(--ibiz-spacing-tight));color:var(--ibiz-editor-default-text-color);background-color:var(--ibiz-color-fill-0);border:1px solid transparent;border-radius:var(--ibiz-border-radius-small)}.ibiz-form-item .ibiz-mpicker.is-show-default .ibiz-mpicker-select{display:none}.ibiz-form-item .ibiz-mpicker.is-show-default.is-editable .ibiz-mpicker-form-default-content{display:none}.ibiz-form-item .ibiz-mpicker.is-show-default.is-editable .ibiz-mpicker-select{display:block}
@@ -93,8 +93,8 @@ const IBizPicker = /* @__PURE__ */ vue.defineComponent({
93
93
  const openLinkView = async (e) => {
94
94
  e.stopPropagation();
95
95
  const res = await c.openLinkView(props.data);
96
- if (res && res[0]) {
97
- await handleDataSelect(res[0]);
96
+ if (res && res.ok && res.data && res.data.length > 0) {
97
+ await handleDataSelect(res.data[0]);
98
98
  }
99
99
  };
100
100
  const onACSelect = async (item) => {
@@ -31,6 +31,42 @@ const IBizPickerEmbedView = /* @__PURE__ */ vue.defineComponent({
31
31
  setViewParam();
32
32
  }
33
33
  });
34
+ const editorParams = c.model.editorParams;
35
+ const singleSelect = vue.ref(true);
36
+ const checkStrictly = vue.ref(true);
37
+ const isShowText = vue.ref(true);
38
+ if (editorParams) {
39
+ if (editorParams.multiple) {
40
+ singleSelect.value = !c.toBoolean(editorParams.multiple);
41
+ }
42
+ if (editorParams.checkStrictly) {
43
+ checkStrictly.value = c.toBoolean(editorParams.checkStrictly);
44
+ }
45
+ if (editorParams.isShowText) {
46
+ isShowText.value = c.toBoolean(editorParams.isShowText);
47
+ }
48
+ }
49
+ const selectedData = vue.ref([]);
50
+ vue.watch(() => props.value, (newVal) => {
51
+ var _a, _b, _c, _d;
52
+ selectedData.value = [];
53
+ if (newVal) {
54
+ if (c.valueItem) {
55
+ const tempValue = (_c = (_b = (_a = props.data) == null ? void 0 : _a[c.valueItem]) == null ? void 0 : _b.split) == null ? void 0 : _c.call(_b, ",");
56
+ const tempText = (_d = newVal == null ? void 0 : newVal.split) == null ? void 0 : _d.call(newVal, ",");
57
+ if (tempValue && tempText) {
58
+ selectedData.value = tempValue.map((srfkey, index) => {
59
+ return {
60
+ srfkey,
61
+ srfmajortext: tempText[index]
62
+ };
63
+ });
64
+ }
65
+ }
66
+ }
67
+ }, {
68
+ immediate: true
69
+ });
34
70
  const onViewDataChange = (event) => {
35
71
  let tempValue = "";
36
72
  let temText = "";
@@ -63,14 +99,18 @@ const IBizPickerEmbedView = /* @__PURE__ */ vue.defineComponent({
63
99
  params,
64
100
  onSelectionChange,
65
101
  editorRef,
66
- pickupViewModel
102
+ pickupViewModel,
103
+ singleSelect,
104
+ checkStrictly,
105
+ isShowText,
106
+ selectedData
67
107
  };
68
108
  },
69
109
  render() {
70
110
  var _a;
71
111
  const viewShell = vue.resolveComponent("IBizViewShell");
72
112
  return vue.createVNode("div", {
73
- "class": [this.ns.b()],
113
+ "class": [this.ns.b(), this.disabled ? this.ns.m("disabled") : ""],
74
114
  "ref": "editorRef"
75
115
  }, [this.pickupViewModel ? [vue.createVNode("div", {
76
116
  "class": this.ns.b("view")
@@ -78,8 +118,13 @@ const IBizPickerEmbedView = /* @__PURE__ */ vue.defineComponent({
78
118
  context: this.context,
79
119
  params: this.params,
80
120
  viewId: (_a = this.c.pickupView) == null ? void 0 : _a.id,
121
+ state: {
122
+ singleSelect: this.singleSelect,
123
+ checkStrictly: this.checkStrictly,
124
+ selectedData: this.selectedData
125
+ },
81
126
  onSelectionChange: this.onSelectionChange
82
- })]), vue.createVNode("div", {
127
+ })]), this.isShowText && vue.createVNode("div", {
83
128
  "class": this.ns.b("value")
84
129
  }, [this.$props.value ? this.$props.value.split(",").map((item) => {
85
130
  return vue.createVNode("span", null, [item, vue.createTextVNode("; ")]);
@@ -1 +1 @@
1
- .ibiz-picker-embed-view .ibiz-picker-embed-view-value{height:var(--ibiz-form-item-line-height);line-height:var(--ibiz-form-item-line-height)}
1
+ .ibiz-picker-embed-view--disabled{cursor:not-allowed}.ibiz-picker-embed-view--disabled *{pointer-events:none;cursor:not-allowed}.ibiz-picker-embed-view--disabled .el-tree-node__expand-icon{pointer-events:all;cursor:pointer}.ibiz-picker-embed-view .ibiz-picker-embed-view-value{height:var(--ibiz-form-item-line-height);line-height:var(--ibiz-form-item-line-height)}
@@ -268,8 +268,8 @@ const IBizPickerSelectView = /* @__PURE__ */ vue.defineComponent({
268
268
  const openLinkView = async (e) => {
269
269
  e.stopPropagation();
270
270
  const res = await c.openLinkView(props.data);
271
- if (res) {
272
- onViewDataChange(res);
271
+ if (res && res.ok && res.data) {
272
+ onViewDataChange(res.data);
273
273
  }
274
274
  };
275
275
  const onSelectChange = (selects) => {
@@ -26,9 +26,15 @@ class DropDownListEditorController extends runtime.CodeListEditorController {
26
26
  * @Date: 2024-03-12 14:33:14
27
27
  */
28
28
  __publicField(this, "forceSelection", true);
29
+ /**
30
+ * 预置项空白项名称
31
+ *
32
+ * @memberof DropDownListEditorController
33
+ */
34
+ __publicField(this, "blankItemName", "");
29
35
  }
30
36
  async onInit() {
31
- var _a;
37
+ var _a, _b;
32
38
  super.onInit();
33
39
  if (this.model.editorType === "MDROPDOWNLIST") {
34
40
  this.multiple = true;
@@ -36,6 +42,9 @@ class DropDownListEditorController extends runtime.CodeListEditorController {
36
42
  if ((_a = this.editorParams) == null ? void 0 : _a.forceSelection) {
37
43
  this.forceSelection = this.toBoolean(this.editorParams.forceSelection);
38
44
  }
45
+ if ((_b = this.editorParams) == null ? void 0 : _b.blankItemName) {
46
+ this.blankItemName = this.editorParams.blankItemName;
47
+ }
39
48
  }
40
49
  }
41
50
 
@@ -46,10 +46,11 @@ const IBizDropdown = /* @__PURE__ */ vue.defineComponent({
46
46
  }
47
47
  const list = [];
48
48
  nodes.forEach((codeItem) => {
49
+ var _a;
49
50
  codeListItems.value.push(codeItem);
50
51
  const tempObj = {
51
52
  label: codeItem.text,
52
- value: codeItem.value.toString(),
53
+ value: (_a = codeItem.value) == null ? void 0 : _a.toString(),
53
54
  color: codeItem == null ? void 0 : codeItem.color,
54
55
  textCls: codeItem == null ? void 0 : codeItem.textCls,
55
56
  sysImage: codeItem.sysImage,
@@ -74,7 +75,14 @@ const IBizDropdown = /* @__PURE__ */ vue.defineComponent({
74
75
  isLoading.value = true;
75
76
  const codeList = await c.loadCodeList(props.data);
76
77
  isLoadedCodeList.value = true;
77
- items.value = codeList;
78
+ if (c.blankItemName) {
79
+ items.value = [{
80
+ value: void 0,
81
+ text: c.blankItemName
82
+ }, ...codeList];
83
+ } else {
84
+ items.value = codeList;
85
+ }
78
86
  for (let i = 0; i < items.value.length; i++) {
79
87
  const _item = items.value[i];
80
88
  if (_item.children) {
@@ -124,7 +132,11 @@ const IBizDropdown = /* @__PURE__ */ vue.defineComponent({
124
132
  }
125
133
  return (_c = props.value) == null ? void 0 : _c.toString();
126
134
  },
127
- set(select) {
135
+ set(_select) {
136
+ let select = _select;
137
+ if (c.blankItemName && !_select) {
138
+ select = void 0;
139
+ }
128
140
  if (Array.isArray(select)) {
129
141
  let selectArr = null;
130
142
  if (select.length === 0) {
@@ -304,9 +316,10 @@ const IBizDropdown = /* @__PURE__ */ vue.defineComponent({
304
316
  }, this.$attrs), {
305
317
  default: () => {
306
318
  return this.items.map((item) => {
319
+ var _a;
307
320
  return vue.createVNode(vue.resolveComponent("el-option"), {
308
321
  "key": item.value,
309
- "value": item.value.toString(),
322
+ "value": (_a = item.value) == null ? void 0 : _a.toString(),
310
323
  "label": item.text,
311
324
  "disabled": item.disableSelect === true,
312
325
  "style": item.bkcolor ? this.ns.cssVarBlock({
@@ -6,9 +6,6 @@ var core = require('@ibiz-template/core');
6
6
  require('./ibiz-emoji-picker.css');
7
7
 
8
8
  "use strict";
9
- function _isSlot(s) {
10
- return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !vue.isVNode(s);
11
- }
12
9
  const IBizEmojiPicker = /* @__PURE__ */ vue.defineComponent({
13
10
  name: "IBizEmojiPicker",
14
11
  props: vue3Util.getDropdownProps(),
@@ -18,8 +15,15 @@ const IBizEmojiPicker = /* @__PURE__ */ vue.defineComponent({
18
15
  }) {
19
16
  const ns = vue3Util.useNamespace("emoji-picker");
20
17
  const c = props.controller;
18
+ const emojiRef = vue.ref();
21
19
  const emoji = vue.ref("");
22
20
  const visible = vue.ref(false);
21
+ const showFormDefaultContent = vue.computed(() => {
22
+ if (props.controlParams && props.controlParams.editmode === "hover" && !props.readonly) {
23
+ return true;
24
+ }
25
+ return false;
26
+ });
23
27
  const onAddEmoji = (e) => {
24
28
  e.stopPropagation();
25
29
  e.preventDefault();
@@ -31,14 +35,24 @@ const IBizEmojiPicker = /* @__PURE__ */ vue.defineComponent({
31
35
  emoji.value = "";
32
36
  visible.value = false;
33
37
  emit("change", "");
38
+ console.log("emojiRef", emojiRef.value);
39
+ emojiRef.value.click();
34
40
  };
35
41
  const onSelect = (val) => {
36
- emoji.value = val.data;
37
42
  visible.value = false;
43
+ emoji.value = val.data;
38
44
  emit("change", core.strToBase64(val.data));
39
45
  };
40
- vue.watch(() => props.value, (newVal) => {
41
- emoji.value = newVal ? core.base64ToStr(newVal) : "";
46
+ vue.watch(() => props.value, (newVal, oldVal) => {
47
+ if (newVal !== oldVal) {
48
+ if (!newVal) {
49
+ emoji.value = "";
50
+ } else if (Number.isNaN(Number(newVal)) && core.isBase64("".concat(newVal))) {
51
+ emoji.value = core.base64ToStr("".concat(newVal));
52
+ } else {
53
+ emoji.value = newVal.toString();
54
+ }
55
+ }
42
56
  }, {
43
57
  immediate: true
44
58
  });
@@ -79,12 +93,16 @@ const IBizEmojiPicker = /* @__PURE__ */ vue.defineComponent({
79
93
  }
80
94
  return content;
81
95
  };
96
+ const renderFormDefaultContent = () => {
97
+ return vue.createVNode("div", {
98
+ "class": [ns.b("form-default-content"), ns.is("clear", !!emoji.value)]
99
+ }, [emoji.value ? emoji.value : "-"]);
100
+ };
82
101
  const renderReference = () => {
83
- let _slot;
84
102
  return vue.createVNode(vue.resolveComponent("el-button"), {
85
103
  "class": [ns.e("button"), ns.is("clear", !!emoji.value)]
86
- }, _isSlot(_slot = renderButtonContent()) ? _slot : {
87
- default: () => [_slot]
104
+ }, {
105
+ default: () => [showFormDefaultContent.value && renderFormDefaultContent(), renderButtonContent()]
88
106
  });
89
107
  };
90
108
  return {
@@ -92,6 +110,8 @@ const IBizEmojiPicker = /* @__PURE__ */ vue.defineComponent({
92
110
  c,
93
111
  emoji,
94
112
  visible,
113
+ emojiRef,
114
+ showFormDefaultContent,
95
115
  onSelect,
96
116
  onAddEmoji,
97
117
  onClearEmoji,
@@ -100,7 +120,8 @@ const IBizEmojiPicker = /* @__PURE__ */ vue.defineComponent({
100
120
  },
101
121
  render() {
102
122
  return vue.createVNode("div", {
103
- "class": [this.ns.b(), this.disabled ? this.ns.m("disabled") : "", this.readonly ? this.ns.m("readonly") : ""]
123
+ "ref": "emojiRef",
124
+ "class": [this.ns.b(), this.disabled ? this.ns.m("disabled") : "", this.readonly ? this.ns.m("readonly") : "", this.ns.is("active", this.visible), this.ns.is("show-default", this.showFormDefaultContent)]
104
125
  }, [vue.createVNode(vue.resolveComponent("el-popover"), {
105
126
  "trigger": "click",
106
127
  "placement": "bottom-start",
@@ -1 +1 @@
1
- .ibiz-emoji-picker{display:flex;align-items:center;width:100%;height:100%}.ibiz-emoji-picker__button-content{display:flex;align-items:center;min-height:var(--ibiz-height-control-default)}.ibiz-emoji-picker__button-content--icon{margin-right:var(--ibiz-spacing-extra-tight);fill:var(--ibiz-color-primary-text)}.ibiz-emoji-picker__button.is-clear{position:relative;padding:var(--ibiz-spacing-none);padding-right:var(--ibiz-spacing-base-tight);font-size:var(--ibiz-font-size-header-3);color:var(--ibiz-color-text-0);background-color:transparent}.ibiz-emoji-picker__button.is-clear:hover .ibiz-emoji-picker__button-content--icon{display:block}.ibiz-emoji-picker__button.is-clear .ibiz-emoji-picker__button-content--icon{position:absolute;top:0;right:0;display:none;margin-right:0;font-size:var(--ibiz-font-size-regular);fill:var(--ibiz-color-text-3)}.ibiz-emoji-picker__button.is-clear .ibiz-emoji-picker__button-content--icon:hover{fill:var(--ibiz-color-primary)}.ibiz-emoji-picker--readonly{display:flex;align-items:center;font-size:var(--ibiz-font-size-header-3);line-height:32px}.ibiz-emoji-picker--readonly .ibiz-emoji-picker__button{pointer-events:none}.ibiz-emoji-picker--readonly .is-clear .ibiz-emoji-picker__button-content--icon{display:none}.ibiz-emoji-picker-popper.el-popper.el-popper{width:auto;padding:0}
1
+ .ibiz-emoji-picker{display:flex;align-items:center;width:100%;height:100%}.ibiz-emoji-picker__button-content{display:flex;align-items:center;min-height:var(--ibiz-height-control-default)}.ibiz-emoji-picker__button-content--icon{margin-right:var(--ibiz-spacing-extra-tight);fill:var(--ibiz-color-primary-text)}.ibiz-emoji-picker__button.is-clear{position:relative;padding:var(--ibiz-spacing-none);padding-right:var(--ibiz-spacing-base-tight);color:var(--ibiz-color-text-0);background-color:transparent}.ibiz-emoji-picker__button.is-clear:hover .ibiz-emoji-picker__button-content--icon{display:block}.ibiz-emoji-picker__button.is-clear .ibiz-emoji-picker__button-content--icon{position:absolute;top:0;right:0;display:none;margin-right:0;font-size:var(--ibiz-font-size-regular);fill:var(--ibiz-color-text-3)}.ibiz-emoji-picker__button.is-clear .ibiz-emoji-picker__button-content--icon:hover{fill:var(--ibiz-color-primary)}.ibiz-emoji-picker--readonly{display:flex;align-items:center;line-height:32px}.ibiz-emoji-picker--readonly .ibiz-emoji-picker__button{padding:0;color:var(--ibiz-form-item-readonly-color);pointer-events:none;cursor:default}.ibiz-emoji-picker--readonly .ibiz-emoji-picker__button .ibiz-emoji-picker__button-content{display:none}.ibiz-emoji-picker--readonly .is-clear.ibiz-emoji-picker__button .ibiz-emoji-picker__button-content{display:flex}.ibiz-emoji-picker--readonly .is-clear.ibiz-emoji-picker__button .ibiz-emoji-picker__button-content--icon{display:none}.ibiz-emoji-picker-popper.el-popper.el-popper{width:auto;padding:0}.ibiz-form-item .ibiz-emoji-picker.is-show-default{padding:var(--ibiz-form-item-hover-edit-padding)}.ibiz-form-item .ibiz-emoji-picker.is-show-default.is-active .ibiz-emoji-picker-form-default-content,.ibiz-form-item .ibiz-emoji-picker.is-show-default:hover .ibiz-emoji-picker-form-default-content{display:none}.ibiz-form-item .ibiz-emoji-picker.is-show-default.is-active .ibiz-emoji-picker__button,.ibiz-form-item .ibiz-emoji-picker.is-show-default:hover .ibiz-emoji-picker__button{padding:8px 15px;pointer-events:auto;background-color:var(--ibiz-color-primary)}.ibiz-form-item .ibiz-emoji-picker.is-show-default.is-active .ibiz-emoji-picker__button.is-clear,.ibiz-form-item .ibiz-emoji-picker.is-show-default:hover .ibiz-emoji-picker__button.is-clear{padding:var(--ibiz-spacing-none);padding-right:var(--ibiz-spacing-base-tight);background-color:transparent}.ibiz-form-item .ibiz-emoji-picker.is-show-default.is-active .ibiz-emoji-picker__button-content,.ibiz-form-item .ibiz-emoji-picker.is-show-default:hover .ibiz-emoji-picker__button-content{display:flex}.ibiz-form-item .ibiz-emoji-picker.is-show-default .ibiz-emoji-picker__button{padding:var(--ibiz-spacing-none);pointer-events:none;background:0 0}.ibiz-form-item .ibiz-emoji-picker.is-show-default .ibiz-emoji-picker-form-default-content{display:flex;align-items:center;width:100%;font-family:Arial,sans-serif;font-size:var(--ibiz-form-item-font-size);line-height:var(--ibiz-editor-default-line-height);color:var(--ibiz-form-item-text-color)}.ibiz-form-item .ibiz-emoji-picker.is-show-default .ibiz-emoji-picker-form-default-content.is-clear{padding:var(--ibiz-spacing-none);padding-right:var(--ibiz-spacing-base-tight);background-color:transparent}.ibiz-form-item .ibiz-emoji-picker.is-show-default .ibiz-emoji-picker__button-content{display:none}.ibiz-form-item .ibiz-emoji-picker.is-show-default.is-editable .ibiz-emoji-picker-form-default-content{display:none}.ibiz-form-item .ibiz-emoji-picker.is-show-default.is-editable .ibiz-emoji-picker__button-content{display:flex}
@@ -76,6 +76,8 @@ const IBizSpan = /* @__PURE__ */ vue.defineComponent({
76
76
  text.value = "".concat(newVal);
77
77
  ibiz.log.error("".concat(newVal, " \u503C\u683C\u5F0F\u5316\u9519\u8BEF"));
78
78
  }
79
+ } else if (Number.isNaN(Number(newVal)) && core.isBase64("".concat(newVal))) {
80
+ text.value = core.base64ToStr("".concat(newVal));
79
81
  } else {
80
82
  text.value = "".concat(newVal);
81
83
  }
@@ -96,15 +96,6 @@ const IBizInputNumber = /* @__PURE__ */ vue.defineComponent({
96
96
  emit("focus", e);
97
97
  setEditable(true);
98
98
  };
99
- const onBlur = (e) => {
100
- emit("blur", e);
101
- setEditable(false);
102
- };
103
- const handleKeyUp = (e) => {
104
- if (e && e.code === "Enter") {
105
- emit("enter", e);
106
- }
107
- };
108
99
  const debounce = (func, wait) => {
109
100
  let timeout;
110
101
  return (...args) => {
@@ -119,9 +110,20 @@ const IBizInputNumber = /* @__PURE__ */ vue.defineComponent({
119
110
  }
120
111
  emit("change", data);
121
112
  }, 300);
113
+ const onBlur = (e) => {
114
+ emit("blur", e);
115
+ if (enablethousands.value) {
116
+ debouncedOnInput(currentVal.value);
117
+ }
118
+ setEditable(false);
119
+ };
120
+ const handleKeyUp = (e) => {
121
+ if (e && e.code === "Enter") {
122
+ emit("enter", e);
123
+ }
124
+ };
122
125
  const onInput = (value) => {
123
126
  currentVal.value = value;
124
- debouncedOnInput(value);
125
127
  };
126
128
  return {
127
129
  ns,
@@ -2,6 +2,7 @@
2
2
 
3
3
  var vue = require('vue');
4
4
  var vue3Util = require('@ibiz-template/vue3-util');
5
+ var core = require('@ibiz-template/core');
5
6
  var qxUtil = require('qx-util');
6
7
  require('./input.css');
7
8
 
@@ -59,6 +60,8 @@ const IBizInput = /* @__PURE__ */ vue.defineComponent({
59
60
  if (newVal !== oldVal) {
60
61
  if (newVal == null) {
61
62
  currentVal.value = "";
63
+ } else if (Number.isNaN(Number(newVal)) && core.isBase64("".concat(newVal))) {
64
+ currentVal.value = core.base64ToStr("".concat(newVal));
62
65
  } else {
63
66
  currentVal.value = newVal.toString();
64
67
  }
@@ -167,7 +167,7 @@ const IBizSearchCondEdit = /* @__PURE__ */ vue.defineComponent({
167
167
  }, this.$attrs), null), vue.createVNode(vue.resolveComponent("el-button"), {
168
168
  "ref": "filterButtonRef",
169
169
  "type": "primary",
170
- "title": ibiz.i18n.t("app.edit"),
170
+ "title": ibiz.env.enableTitle ? ibiz.i18n.t("app.edit") : void 0,
171
171
  "class": this.ns.b("filter"),
172
172
  "onClick": () => this.triggerFilter()
173
173
  }, {
@@ -478,6 +478,9 @@ var index = {
478
478
  places: "Places",
479
479
  symbols: "Symbols",
480
480
  flags: "Flags"
481
+ },
482
+ formItemContainer: {
483
+ more: "More"
481
484
  }
482
485
  },
483
486
  // 编辑器
@@ -474,6 +474,9 @@ var index = {
474
474
  places: "\u65C5\u884C\u4E0E\u5730\u65B9",
475
475
  symbols: "\u7B26\u53F7",
476
476
  flags: "\u65D7\u5E1C"
477
+ },
478
+ formItemContainer: {
479
+ more: "\u66F4\u591A"
477
480
  }
478
481
  },
479
482
  // 编辑器
@@ -2,6 +2,7 @@
2
2
 
3
3
  var runtime = require('@ibiz-template/runtime');
4
4
  var ramda = require('ramda');
5
+ var vue = require('vue');
5
6
  var navTabs_state = require('./nav-tabs.state.cjs');
6
7
 
7
8
  "use strict";
@@ -132,10 +133,10 @@ class NavTabsController extends runtime.PanelItemController {
132
133
  };
133
134
  this.state.tabItems.push(tempItem);
134
135
  this.state.activeTab = tempItem.key;
135
- setTimeout(() => {
136
+ vue.nextTick(() => {
136
137
  this.state.tabItems.pop();
137
138
  this.state.activeTab = this.state.tabItems[this.state.tabItems.length - 1].key;
138
- }, 100);
139
+ });
139
140
  }
140
141
  }
141
142
 
@@ -105,7 +105,7 @@ const PanelButton = /* @__PURE__ */ vue.defineComponent({
105
105
  }, [vue.createVNode(vue.resolveComponent("el-button"), {
106
106
  "type": this.buttonType,
107
107
  "text": this.isText,
108
- "title": this.tooltip,
108
+ "title": ibiz.env.enableTitle ? this.tooltip : void 0,
109
109
  "disabled": this.state.disabled,
110
110
  "loading": this.state.loading,
111
111
  "onClick": this.handleButtonClick
@@ -63,9 +63,10 @@ class EditViewEngine extends runtime.ViewEngineBase {
63
63
  }
64
64
  this.view.slotProps.toolbar.manualCalcButtonState = true;
65
65
  modal.hooks.shouldDismiss.tapPromise(async (context) => {
66
+ var _a, _b;
66
67
  const uiDomain = ibiz.uiDomainManager.get(this.view.context.srfsessionid);
67
- const isChange = (this.form.state.modified || uiDomain.dataModification) && this.view.model.enableDirtyChecking === true;
68
- if (isChange && this.form.model.enableAutoSave && !uiDomain.dataModification) {
68
+ const isChange = (((_a = this.form) == null ? void 0 : _a.state.modified) || uiDomain.dataModification) && this.view.model.enableDirtyChecking === true;
69
+ if (isChange && ((_b = this.form) == null ? void 0 : _b.model.enableAutoSave) && !uiDomain.dataModification) {
69
70
  await this.form.immediateAutoSave();
70
71
  } else if (isChange && context.allowClose == null) {
71
72
  const isAllow = await ibiz.confirm.error({