@ibiz-template/vue3-components 0.7.28-alpha.0 → 0.7.28

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 (156) hide show
  1. package/dist/chart-4KHwhatb.js +1 -0
  2. package/dist/index-X_i16UJh.js +4 -0
  3. package/dist/index.min.css +1 -1
  4. package/dist/index.system.min.js +1 -1
  5. package/dist/{xlsx-util-nADTbeWP.js → xlsx-util-z-jllHFG.js} +1 -1
  6. package/es/common/action-toolbar/action-toolbar.mjs +4 -3
  7. package/es/common/custom-theme/custom-theme.mjs +3 -2
  8. package/es/common/data-import2/data-import2.mjs +2 -5
  9. package/es/common/emoji-select/components/categories/categories.mjs +2 -1
  10. package/es/common/extend-action-timeline/extend-action-timeline.mjs +3 -2
  11. package/es/common/grid-setting/grid-setting.mjs +2 -1
  12. package/es/common/index.mjs +2 -0
  13. package/es/common/pagination/pagination.mjs +2 -1
  14. package/es/common/quick-edit/quick-edit.css +1 -0
  15. package/es/common/quick-edit/quick-edit.d.ts +38 -0
  16. package/es/common/quick-edit/quick-edit.mjs +116 -0
  17. package/es/common/rawitem/rawitem.mjs +2 -1
  18. package/es/control/app-menu/app-menu.mjs +2 -2
  19. package/es/control/app-menu/custom-menu-design/custom-menu-design.mjs +2 -2
  20. package/es/control/app-menu-icon-view/app-menu-icon-view.mjs +3 -2
  21. package/es/control/calendar/calendar.mjs +2 -1
  22. package/es/control/calendar/components/calendar-daily/calendar-daily.mjs +2 -1
  23. package/es/control/calendar/components/calendar-week/calendar-week.mjs +2 -1
  24. package/es/control/calendar/components/custom-calendar/custom-calendar.mjs +3 -2
  25. package/es/control/chart/chart.mjs +8 -0
  26. package/es/control/context-menu/context-menu.mjs +4 -3
  27. package/es/control/dashboard/custom-dashboard-container/custom-dashboard-container.mjs +2 -1
  28. package/es/control/dashboard/dashboard-design/dashboard-design.mjs +3 -2
  29. package/es/control/dashboard/portlet/menu-portlet/app-menu-portlet/app-menu-portlet.mjs +3 -2
  30. package/es/control/dashboard/portlet/portlet-layout/portlet-layout.mjs +2 -1
  31. package/es/control/drtab/drtab-control.util.mjs +1 -1
  32. package/es/control/drtab/drtab.mjs +2 -1
  33. package/es/control/form/form-detail/form-button/form-button.mjs +2 -1
  34. package/es/control/form/form-detail/form-item/form-item-container/form-item-container.css +1 -1
  35. package/es/control/form/form-detail/form-item/form-item-container/form-item-container.mjs +5 -2
  36. package/es/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/repeater-grid/repeater-grid.mjs +2 -2
  37. package/es/control/form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.mjs +2 -1
  38. package/es/control/form/form-detail/form-mdctrl/mdctrl-container2/mdctrl-container2.mjs +2 -1
  39. package/es/control/grid/grid/grid.css +1 -1
  40. package/es/control/grid/grid-column/grid-field-column/grid-field-column.mjs +3 -2
  41. package/es/control/grid/row-edit-popover/row-edit-popover.d.ts +1 -1
  42. package/es/control/kanban/kanban.mjs +2 -2
  43. package/es/control/list/list.mjs +2 -1
  44. package/es/control/report-panel/report-panel.d.ts +1 -2
  45. package/es/control/report-panel/report-panel.mjs +3 -21
  46. package/es/control/search-bar/filter-tree/filter-tree.d.ts +1 -1
  47. package/es/control/search-bar/search-bar.mjs +3 -2
  48. package/es/control/search-bar/search-groups/search-groups.mjs +6 -6
  49. package/es/control/toolbar/export-excel/export-excel.mjs +3 -2
  50. package/es/control/toolbar/short-cut-button/short-cut-button.mjs +2 -4
  51. package/es/control/toolbar/toolbar.mjs +7 -6
  52. package/es/control/tree-grid-ex/tree-grid-ex-column/tree-grid-ex-field-column/tree-grid-ex-field-column.mjs +3 -2
  53. package/es/control/wizard-panel/wizard-panel.mjs +2 -1
  54. package/es/editor/array/ibiz-array/ibiz-array.d.ts +1 -0
  55. package/es/editor/array/ibiz-array/ibiz-array.mjs +12 -3
  56. package/es/editor/autocomplete/ibiz-autocomplete/ibiz-autocomplete.mjs +2 -1
  57. package/es/editor/data-picker/ibiz-mpicker/ibiz-mpicker.mjs +2 -1
  58. package/es/editor/data-picker/ibiz-picker/ibiz-picker.mjs +2 -1
  59. package/es/editor/data-picker/ibiz-picker-dropdown/ibiz-picker-dropdown.mjs +2 -1
  60. package/es/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.mjs +9 -4
  61. package/es/editor/number-range/ibiz-number-range-picker/ibiz-number-range-picker.d.ts +1 -1
  62. package/es/editor/number-range/ibiz-number-range-picker/ibiz-number-range-picker.mjs +10 -3
  63. package/es/editor/text-box/ibiz-input-number/ibiz-input-number.d.ts +1 -1
  64. package/es/editor/text-box/ibiz-input-number/ibiz-input-number.mjs +5 -2
  65. package/es/editor/text-box/input/input.d.ts +1 -0
  66. package/es/editor/text-box/input/input.mjs +15 -2
  67. package/es/editor/user/ibiz-searchcond-edit/ibiz-searchcond-edit.mjs +2 -1
  68. package/es/index.mjs +1 -0
  69. package/es/panel-component/auth-captcha/auth-captcha.mjs +2 -1
  70. package/es/panel-component/panel-button/panel-button.mjs +2 -1
  71. package/es/panel-component/short-cut/short-cut.mjs +2 -2
  72. package/es/panel-component/user-action/user-action.mjs +2 -1
  73. package/es/panel-component/user-message/async-action/async-action/async-action.mjs +2 -1
  74. package/es/panel-component/user-message/internal-message/common/internal-message-container/internal-message-container.mjs +2 -1
  75. package/es/panel-component/user-message/internal-message/internal-message-html/internal-message-html.d.ts +1 -0
  76. package/es/panel-component/user-message/internal-message/internal-message-html/internal-message-html.mjs +10 -4
  77. package/es/panel-component/user-message/internal-message/internal-message-html/internal-message-html.provider.d.ts +1 -0
  78. package/es/panel-component/user-message/user-message.mjs +3 -2
  79. package/es/util/index.d.ts +1 -0
  80. package/es/util/index.mjs +1 -0
  81. package/es/util/notification-util/notification-util.mjs +3 -1
  82. package/es/util/wang-editor-util/wang-editor-util.d.ts +11 -0
  83. package/es/util/wang-editor-util/wang-editor-util.mjs +12 -0
  84. package/es/web-app/create-vue-app.mjs +8 -0
  85. package/lib/common/action-toolbar/action-toolbar.cjs +4 -3
  86. package/lib/common/custom-theme/custom-theme.cjs +3 -2
  87. package/lib/common/data-import2/data-import2.cjs +1 -4
  88. package/lib/common/emoji-select/components/categories/categories.cjs +2 -1
  89. package/lib/common/extend-action-timeline/extend-action-timeline.cjs +3 -2
  90. package/lib/common/grid-setting/grid-setting.cjs +2 -1
  91. package/lib/common/index.cjs +2 -0
  92. package/lib/common/pagination/pagination.cjs +2 -1
  93. package/lib/common/quick-edit/quick-edit.cjs +118 -0
  94. package/lib/common/quick-edit/quick-edit.css +1 -0
  95. package/lib/common/rawitem/rawitem.cjs +2 -1
  96. package/lib/control/app-menu/app-menu.cjs +1 -1
  97. package/lib/control/app-menu/custom-menu-design/custom-menu-design.cjs +1 -1
  98. package/lib/control/app-menu-icon-view/app-menu-icon-view.cjs +3 -2
  99. package/lib/control/calendar/calendar.cjs +2 -1
  100. package/lib/control/calendar/components/calendar-daily/calendar-daily.cjs +2 -1
  101. package/lib/control/calendar/components/calendar-week/calendar-week.cjs +2 -1
  102. package/lib/control/calendar/components/custom-calendar/custom-calendar.cjs +3 -2
  103. package/lib/control/chart/chart.cjs +8 -0
  104. package/lib/control/context-menu/context-menu.cjs +4 -3
  105. package/lib/control/dashboard/custom-dashboard-container/custom-dashboard-container.cjs +2 -1
  106. package/lib/control/dashboard/dashboard-design/dashboard-design.cjs +3 -2
  107. package/lib/control/dashboard/portlet/menu-portlet/app-menu-portlet/app-menu-portlet.cjs +3 -2
  108. package/lib/control/dashboard/portlet/portlet-layout/portlet-layout.cjs +2 -1
  109. package/lib/control/drtab/drtab-control.util.cjs +1 -1
  110. package/lib/control/drtab/drtab.cjs +2 -1
  111. package/lib/control/form/form-detail/form-button/form-button.cjs +2 -1
  112. package/lib/control/form/form-detail/form-item/form-item-container/form-item-container.cjs +5 -2
  113. package/lib/control/form/form-detail/form-item/form-item-container/form-item-container.css +1 -1
  114. package/lib/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/repeater-grid/repeater-grid.cjs +1 -1
  115. package/lib/control/form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.cjs +2 -1
  116. package/lib/control/form/form-detail/form-mdctrl/mdctrl-container2/mdctrl-container2.cjs +2 -1
  117. package/lib/control/grid/grid/grid.css +1 -1
  118. package/lib/control/grid/grid-column/grid-field-column/grid-field-column.cjs +3 -2
  119. package/lib/control/kanban/kanban.cjs +1 -1
  120. package/lib/control/list/list.cjs +2 -1
  121. package/lib/control/report-panel/report-panel.cjs +1 -19
  122. package/lib/control/search-bar/search-bar.cjs +3 -2
  123. package/lib/control/search-bar/search-groups/search-groups.cjs +5 -5
  124. package/lib/control/toolbar/export-excel/export-excel.cjs +3 -2
  125. package/lib/control/toolbar/short-cut-button/short-cut-button.cjs +2 -4
  126. package/lib/control/toolbar/toolbar.cjs +7 -6
  127. package/lib/control/tree-grid-ex/tree-grid-ex-column/tree-grid-ex-field-column/tree-grid-ex-field-column.cjs +3 -2
  128. package/lib/control/wizard-panel/wizard-panel.cjs +2 -1
  129. package/lib/editor/array/ibiz-array/ibiz-array.cjs +12 -3
  130. package/lib/editor/autocomplete/ibiz-autocomplete/ibiz-autocomplete.cjs +2 -1
  131. package/lib/editor/data-picker/ibiz-mpicker/ibiz-mpicker.cjs +2 -1
  132. package/lib/editor/data-picker/ibiz-picker/ibiz-picker.cjs +2 -1
  133. package/lib/editor/data-picker/ibiz-picker-dropdown/ibiz-picker-dropdown.cjs +2 -1
  134. package/lib/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.cjs +9 -4
  135. package/lib/editor/number-range/ibiz-number-range-picker/ibiz-number-range-picker.cjs +10 -3
  136. package/lib/editor/text-box/ibiz-input-number/ibiz-input-number.cjs +5 -2
  137. package/lib/editor/text-box/input/input.cjs +15 -2
  138. package/lib/editor/user/ibiz-searchcond-edit/ibiz-searchcond-edit.cjs +2 -1
  139. package/lib/index.cjs +2 -0
  140. package/lib/panel-component/auth-captcha/auth-captcha.cjs +2 -1
  141. package/lib/panel-component/panel-button/panel-button.cjs +2 -1
  142. package/lib/panel-component/short-cut/short-cut.cjs +1 -1
  143. package/lib/panel-component/user-action/user-action.cjs +2 -1
  144. package/lib/panel-component/user-message/async-action/async-action/async-action.cjs +2 -1
  145. package/lib/panel-component/user-message/internal-message/common/internal-message-container/internal-message-container.cjs +2 -1
  146. package/lib/panel-component/user-message/internal-message/internal-message-html/internal-message-html.cjs +9 -3
  147. package/lib/panel-component/user-message/user-message.cjs +3 -2
  148. package/lib/util/index.cjs +2 -0
  149. package/lib/util/notification-util/notification-util.cjs +3 -1
  150. package/lib/util/wang-editor-util/wang-editor-util.cjs +14 -0
  151. package/lib/web-app/create-vue-app.cjs +8 -0
  152. package/package.json +6 -6
  153. package/dist/chart-HuCq_rW2.js +0 -1
  154. package/dist/index-QB7iGpIB.js +0 -4
  155. /package/es/node_modules/.pnpm/{@ibiz-template_core@0.7.28-alpha.0_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.28_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
  156. /package/lib/node_modules/.pnpm/{@ibiz-template_core@0.7.28-alpha.0_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.28_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
@@ -2,6 +2,7 @@ import { ref, computed, watch, resolveComponent, mergeProps, h, createVNode, def
2
2
  import { getAutoCompleteProps, getEditorEmits, useNamespace } from '@ibiz-template/vue3-util';
3
3
  import './ibiz-autocomplete.css';
4
4
  import { debounce } from 'lodash-es';
5
+ import { showTitle } from '@ibiz-template/core';
5
6
 
6
7
  "use strict";
7
8
  const IBizAutoComplete = /* @__PURE__ */ defineComponent({
@@ -195,7 +196,7 @@ const IBizAutoComplete = /* @__PURE__ */ defineComponent({
195
196
  }
196
197
  return createVNode("div", {
197
198
  "class": [this.ns.e("transfer-item"), this.ns.is("ellipsis", isEllipsis)],
198
- "title": isEllipsis ? item[this.c.textName] : ""
199
+ "title": showTitle(isEllipsis ? item[this.c.textName] : "")
199
200
  }, [item[this.c.textName]]);
200
201
  },
201
202
  suffix: () => {
@@ -2,6 +2,7 @@ import { isVNode, ref, computed, watch, onMounted, resolveComponent, mergeProps,
2
2
  import { getDataPickerProps, getEditorEmits, useNamespace } from '@ibiz-template/vue3-util';
3
3
  import './ibiz-mpicker.css';
4
4
  import { clone } from 'lodash-es';
5
+ import { showTitle } from '@ibiz-template/core';
5
6
 
6
7
  "use strict";
7
8
  function _isSlot(s) {
@@ -309,7 +310,7 @@ const IBizMPicker = /* @__PURE__ */ defineComponent({
309
310
  "remote-show-suffix": this.c.model.showTrigger
310
311
  }, this.$attrs), _isSlot(_slot = this.items.map((item) => {
311
312
  return createVNode(resolveComponent("el-option"), {
312
- "title": isEllipsis ? item[this.c.textName] : "",
313
+ "title": showTitle(isEllipsis ? item[this.c.textName] : ""),
313
314
  "key": item[this.c.keyName],
314
315
  "value": item[this.c.keyName],
315
316
  "label": item[this.c.textName]
@@ -2,6 +2,7 @@ import { ref, computed, watch, onMounted, resolveComponent, h, createVNode, merg
2
2
  import { getDataPickerProps, getEditorEmits, useNamespace, renderString } from '@ibiz-template/vue3-util';
3
3
  import { isEmpty, isNil } from 'ramda';
4
4
  import './ibiz-picker.css';
5
+ import { showTitle } from '@ibiz-template/core';
5
6
 
6
7
  "use strict";
7
8
  const IBizPicker = /* @__PURE__ */ defineComponent({
@@ -225,7 +226,7 @@ const IBizPicker = /* @__PURE__ */ defineComponent({
225
226
  }
226
227
  }, null) : createVNode("div", {
227
228
  "class": [this.ns.e("transfer-item"), this.ns.is("ellipsis", isEllipsis)],
228
- "title": isEllipsis ? item[this.c.textName] : "",
229
+ "title": showTitle(isEllipsis ? item[this.c.textName] : ""),
229
230
  "onClick": () => {
230
231
  this.onACSelect(item);
231
232
  }
@@ -2,6 +2,7 @@ import { isVNode, ref, computed, watch, onMounted, resolveComponent, mergeProps,
2
2
  import { getDataPickerProps, getEditorEmits, useNamespace, renderString } from '@ibiz-template/vue3-util';
3
3
  import { isNil, clone } from 'ramda';
4
4
  import './ibiz-picker-dropdown.css';
5
+ import { showTitle } from '@ibiz-template/core';
5
6
 
6
7
  "use strict";
7
8
  function _isSlot(s) {
@@ -241,7 +242,7 @@ const IBizPickerDropDown = /* @__PURE__ */ defineComponent({
241
242
  "fit-input-width": isEllipsis
242
243
  }, this.$attrs), _isSlot(_slot = this.items.map((item) => {
243
244
  return createVNode(resolveComponent("el-option"), {
244
- "title": isEllipsis ? item[this.c.textName] : "",
245
+ "title": showTitle(isEllipsis ? item[this.c.textName] : ""),
245
246
  "value": item[this.c.keyName],
246
247
  "key": item[this.c.keyName],
247
248
  "label": item[this.c.textName]
@@ -1,5 +1,6 @@
1
1
  import { ref, computed, watch, nextTick, onMounted, onUnmounted, resolveComponent, mergeProps, createVNode, defineComponent } from 'vue';
2
2
  import { getDropdownProps, getEditorEmits, useNamespace, useCodeListListen, useClickOutside } from '@ibiz-template/vue3-util';
3
+ import { showTitle } from '@ibiz-template/core';
3
4
  import './ibiz-dropdown.css';
4
5
 
5
6
  "use strict";
@@ -289,7 +290,7 @@ const IBizDropdown = /* @__PURE__ */ defineComponent({
289
290
  const data = node.data || {};
290
291
  const label = data.label || "";
291
292
  return createVNode("span", {
292
- "title": isEllipsis ? label : ""
293
+ "title": showTitle(isEllipsis ? label : "")
293
294
  }, [label]);
294
295
  }
295
296
  }) : createVNode(resolveComponent("el-select"), mergeProps({
@@ -324,7 +325,7 @@ const IBizDropdown = /* @__PURE__ */ defineComponent({
324
325
  "select-option-item-bkcolor": "".concat(item.bkcolor)
325
326
  }) : "",
326
327
  "class": [item.cls ? item.cls : null],
327
- "title": isEllipsis ? item.text : ""
328
+ "title": showTitle(isEllipsis ? item.text : "")
328
329
  }, {
329
330
  default: () => {
330
331
  return createVNode("div", {
@@ -370,7 +371,9 @@ const IBizDropdown = /* @__PURE__ */ defineComponent({
370
371
  }) : ""
371
372
  }, [(codeListItem == null ? void 0 : codeListItem.sysImage) && createVNode(resolveComponent("iBizIcon"), {
372
373
  "icon": codeListItem == null ? void 0 : codeListItem.sysImage
373
- }, null), text]);
374
+ }, null), createVNode("span", {
375
+ "class": this.ns.be("readonly-text-item", "label")
376
+ }, [text])]);
374
377
  });
375
378
  const formDefaultContent = createVNode("div", {
376
379
  "class": [this.ns.b("form-default-content"), this.ns.is("multiple", this.c.multiple)]
@@ -382,7 +385,9 @@ const IBizDropdown = /* @__PURE__ */ defineComponent({
382
385
  "select-option-item-color": "".concat(codeListItem.color || ""),
383
386
  "select-option-item-bkcolor": "".concat((this.c.editorParams.type === "round" ? codeListItem.bkcolor : "") || "")
384
387
  }) : ""
385
- }, [text]);
388
+ }, [createVNode("span", {
389
+ "class": this.ns.be("content-item", "label")
390
+ }, [text])]);
386
391
  }) : "-"]);
387
392
  return createVNode("div", {
388
393
  "class": [this.ns.b(), this.disabled ? this.ns.m("disabled") : "", this.readonly ? this.ns.m("readonly") : "", this.ns.is("editable", this.isEditable), this.ns.is("show-default", this.showFormDefaultContent), this.c.editorParams.type === "round" && this.ns.m("round")],
@@ -29,7 +29,7 @@ export declare const IBizNumberRangePicker: import("vue").DefineComponent<{
29
29
  refFormItem: Ref<string[]>;
30
30
  minValue: Ref<number | null>;
31
31
  maxValue: Ref<number | null>;
32
- handleChange: (value: number, index: number) => void;
32
+ handleChange: (value: number, index: number, eventName?: string) => void;
33
33
  max: number;
34
34
  min: number;
35
35
  precision: number;
@@ -75,20 +75,25 @@ const IBizNumberRangePicker = /* @__PURE__ */ defineComponent({
75
75
  }, 100);
76
76
  }
77
77
  };
78
- const handleChange = (value, index) => {
78
+ const onEmit = (eventName, value, valueName) => {
79
+ if (eventName === c.triggerMode) {
80
+ emit("change", value, valueName);
81
+ }
82
+ };
83
+ const handleChange = (value, index, eventName = "blur") => {
79
84
  if (index === 0) {
80
85
  minValue.value = value;
81
86
  } else if (index === 1) {
82
87
  maxValue.value = value;
83
88
  }
84
89
  if (minValue.value !== null && maxValue.value !== null) {
85
- emit("change", [minValue.value, maxValue.value].join(valueSeparator));
90
+ onEmit(eventName, [minValue.value, maxValue.value].join(valueSeparator));
86
91
  setEditable(false);
87
92
  useInValueChange();
88
93
  }
89
94
  if (refFormItem.value) {
90
95
  const valueName = refFormItem.value[index];
91
- emit("change", value, valueName);
96
+ onEmit(eventName, value, valueName);
92
97
  useInValueChange();
93
98
  }
94
99
  };
@@ -154,6 +159,7 @@ const IBizNumberRangePicker = /* @__PURE__ */ defineComponent({
154
159
  "placeholder": this.startPlaceHolder,
155
160
  "controls": false,
156
161
  "onChange": (val) => this.handleChange(val, 0),
162
+ "onInput": (val) => this.handleChange(val, 0, "input"),
157
163
  "onKeyup": this.handleKeyUp,
158
164
  "onFocus": this.onFocus,
159
165
  "onBlur": this.onBlur
@@ -169,6 +175,7 @@ const IBizNumberRangePicker = /* @__PURE__ */ defineComponent({
169
175
  "placeholder": this.endPlaceHolder,
170
176
  "controls": false,
171
177
  "onChange": (val) => this.handleChange(val, 1),
178
+ "onInput": (val) => this.handleChange(val, 1, "input"),
172
179
  "onKeyup": this.handleKeyUp,
173
180
  "onFocus": this.onFocus,
174
181
  "onBlur": this.onBlur
@@ -26,7 +26,7 @@ export declare const IBizInputNumber: import("vue").DefineComponent<{
26
26
  ns: import("@ibiz-template/core").Namespace;
27
27
  c: TextBoxEditorController;
28
28
  currentVal: import("vue").Ref<string | number | null>;
29
- handleChange: (e: number | null) => void;
29
+ handleChange: (e: number | null, eventName?: string) => void;
30
30
  onFocus: (e: IData) => void;
31
31
  onBlur: (e: IData) => void;
32
32
  editorRef: import("vue").Ref<any>;
@@ -81,8 +81,10 @@ const IBizInputNumber = /* @__PURE__ */ defineComponent({
81
81
  }, 100);
82
82
  }
83
83
  };
84
- const handleChange = (e) => {
85
- emit("change", e);
84
+ const handleChange = (e, eventName = "blur") => {
85
+ if (eventName === c.triggerMode) {
86
+ emit("change", e);
87
+ }
86
88
  };
87
89
  watch(editorRef, (newVal) => {
88
90
  if (props.autoFocus && newVal) {
@@ -164,6 +166,7 @@ const IBizInputNumber = /* @__PURE__ */ defineComponent({
164
166
  "disabled": this.disabled,
165
167
  "controls": false,
166
168
  "onChange": this.handleChange,
169
+ "onInput": (value) => this.handleChange(value, "input"),
167
170
  "onFocus": this.onFocus,
168
171
  "onBlur": this.onBlur,
169
172
  "onKeyup": this.handleKeyUp
@@ -65,6 +65,7 @@ export declare const IBizInput: import("vue").DefineComponent<{
65
65
  currentVal: import("vue").Ref<string>;
66
66
  readonlyText: import("vue").ComputedRef<string>;
67
67
  handleChange: (val: string | number) => void;
68
+ handleInput: (val: string | number) => void;
68
69
  handleKeyUp: (e: KeyboardEvent) => void;
69
70
  onBlur: (event: IData) => void;
70
71
  onFocus: (e: IData) => void;
@@ -73,6 +73,11 @@ const IBizInput = /* @__PURE__ */ defineComponent({
73
73
  }
74
74
  return "";
75
75
  });
76
+ const onEmit = (val, eventName = "blur") => {
77
+ if (eventName === c.triggerMode) {
78
+ emit("change", val);
79
+ }
80
+ };
76
81
  const setEditable = (flag) => {
77
82
  if (flag) {
78
83
  isEditable.value = flag;
@@ -85,7 +90,13 @@ const IBizInput = /* @__PURE__ */ defineComponent({
85
90
  let blurCacheValue;
86
91
  const handleChange = (val) => {
87
92
  if (blurCacheValue !== val) {
88
- emit("change", val);
93
+ onEmit(val);
94
+ }
95
+ blurCacheValue = void 0;
96
+ };
97
+ const handleInput = (val) => {
98
+ if (blurCacheValue !== val) {
99
+ onEmit(val, "input");
89
100
  }
90
101
  blurCacheValue = void 0;
91
102
  };
@@ -98,7 +109,7 @@ const IBizInput = /* @__PURE__ */ defineComponent({
98
109
  const onBlur = (event) => {
99
110
  blurCacheValue = event.target.value;
100
111
  if (blurCacheValue != props.value) {
101
- emit("change", blurCacheValue);
112
+ onEmit(blurCacheValue);
102
113
  }
103
114
  emit("blur", event);
104
115
  setEditable(false);
@@ -237,6 +248,7 @@ const IBizInput = /* @__PURE__ */ defineComponent({
237
248
  currentVal,
238
249
  readonlyText,
239
250
  handleChange,
251
+ handleInput,
240
252
  handleKeyUp,
241
253
  onBlur,
242
254
  onFocus,
@@ -304,6 +316,7 @@ const IBizInput = /* @__PURE__ */ defineComponent({
304
316
  "minlength": this.c.model.minLength,
305
317
  "show-word-limit": this.showLimit && this.c.model.showMaxLength,
306
318
  "onChange": this.handleChange,
319
+ "onInput": this.handleInput,
307
320
  "onKeyup": this.handleKeyUp,
308
321
  "onBlur": this.onBlur,
309
322
  "onFocus": this.onFocus,
@@ -3,6 +3,7 @@ import { getInputProps, getEditorEmits, useNamespace } from '@ibiz-template/vue3
3
3
  import './ibiz-searchcond-edit.css';
4
4
  import { isNilOrEmpty } from 'qx-util';
5
5
  import { getOriginFilterNodes, SearchCondEx2filterNode, calcSearchCondExs } from '@ibiz-template/runtime';
6
+ import { showTitle } from '@ibiz-template/core';
6
7
 
7
8
  "use strict";
8
9
  const IBizSearchCondEdit = /* @__PURE__ */ defineComponent({
@@ -165,7 +166,7 @@ const IBizSearchCondEdit = /* @__PURE__ */ defineComponent({
165
166
  }, this.$attrs), null), createVNode(resolveComponent("el-button"), {
166
167
  "ref": "filterButtonRef",
167
168
  "type": "primary",
168
- "title": ibiz.env.enableTitle ? ibiz.i18n.t("app.edit") : void 0,
169
+ "title": showTitle(ibiz.i18n.t("app.edit")),
169
170
  "class": this.ns.b("filter"),
170
171
  "onClick": () => this.triggerFilter()
171
172
  }, {
package/es/index.mjs CHANGED
@@ -124,6 +124,7 @@ export { usePagination } from './util/pagination/use-pagination.mjs';
124
124
  export { NoticeUtil } from './util/notice-util/notice-util.mjs';
125
125
  export { RenderUtil } from './util/render-util/render-util.mjs';
126
126
  export { AppUtil } from './util/app-util/app-util.mjs';
127
+ export { parseHtml } from './util/wang-editor-util/wang-editor-util.mjs';
127
128
  export { AuthGuard } from './web-app/guard/auth-guard/auth-guard.mjs';
128
129
  export { runApp } from './web-app/main.mjs';
129
130
  export { AppRouter } from './web-app/router/index.mjs';
@@ -2,6 +2,7 @@ import { computed, resolveComponent, createVNode, resolveDirective, withDirectiv
2
2
  import { useNamespace } from '@ibiz-template/vue3-util';
3
3
  import { AuthCaptchaController } from './auth-captcha.controller.mjs';
4
4
  import './auth-captcha.css';
5
+ import { showTitle } from '@ibiz-template/core';
5
6
 
6
7
  "use strict";
7
8
  const AuthCaptcha = /* @__PURE__ */ defineComponent({
@@ -55,7 +56,7 @@ const AuthCaptcha = /* @__PURE__ */ defineComponent({
55
56
  "src": this.c.state.image,
56
57
  "class": this.ns.e("image"),
57
58
  "onClick": this.onClick,
58
- "title": "\u70B9\u51FB\u56FE\u7247\u5237\u65B0"
59
+ "title": showTitle("\u70B9\u51FB\u56FE\u7247\u5237\u65B0")
59
60
  }, {
60
61
  error: () => {
61
62
  return createVNode("div", {
@@ -2,6 +2,7 @@ import { ref, computed, resolveComponent, createVNode, defineComponent } from 'v
2
2
  import { useNamespace } from '@ibiz-template/vue3-util';
3
3
  import { PanelButtonController } from './panel-button.controller.mjs';
4
4
  import './panel-button.css';
5
+ import { showTitle } from '@ibiz-template/core';
5
6
 
6
7
  "use strict";
7
8
  const PanelButton = /* @__PURE__ */ defineComponent({
@@ -101,7 +102,7 @@ const PanelButton = /* @__PURE__ */ defineComponent({
101
102
  }, [createVNode(resolveComponent("el-button"), {
102
103
  "type": this.buttonType,
103
104
  "text": this.isText,
104
- "title": ibiz.env.enableTitle ? this.tooltip : void 0,
105
+ "title": showTitle(this.tooltip),
105
106
  "disabled": this.state.disabled,
106
107
  "loading": this.state.loading,
107
108
  "onClick": this.handleButtonClick
@@ -3,7 +3,7 @@ import { useRouter } from 'vue-router';
3
3
  import { PanelItemController, OpenAppViewCommand } from '@ibiz-template/runtime';
4
4
  import { useNamespace } from '@ibiz-template/vue3-util';
5
5
  import draggable from 'vuedraggable';
6
- import { IBizContext } from '@ibiz-template/core';
6
+ import { IBizContext, showTitle } from '@ibiz-template/core';
7
7
  import './short-cut.css';
8
8
 
9
9
  "use strict";
@@ -101,7 +101,7 @@ const ShortCut = /* @__PURE__ */ defineComponent({
101
101
  if (isVertical && !isShowToolbar.value || isVertical && isShowToolbar.value && index > 5 || !isVertical && index < 6) {
102
102
  return createVNode("div", {
103
103
  "class": [ns.e("item"), ns.e("draggable-item")],
104
- "title": element.caption,
104
+ "title": showTitle(element.caption),
105
105
  "onClick": () => onClick(element)
106
106
  }, [createVNode("svg", {
107
107
  "viewBox": "0 0 16 16",
@@ -2,6 +2,7 @@ import { resolveComponent, createVNode, defineComponent } from 'vue';
2
2
  import { useNamespace } from '@ibiz-template/vue3-util';
3
3
  import { AppFuncCommand } from '@ibiz-template/runtime';
4
4
  import './user-action.css';
5
+ import { showTitle } from '@ibiz-template/core';
5
6
 
6
7
  "use strict";
7
8
  const UserAction = /* @__PURE__ */ defineComponent({
@@ -74,7 +75,7 @@ const UserAction = /* @__PURE__ */ defineComponent({
74
75
  render() {
75
76
  return createVNode("div", {
76
77
  "class": this.ns.b(),
77
- "title": this.modelData.caption
78
+ "title": showTitle(this.modelData.caption)
78
79
  }, [createVNode(resolveComponent("i-biz-icon"), {
79
80
  "class": [this.ns.e("image")],
80
81
  "icon": this.sysImage,
@@ -1,4 +1,5 @@
1
1
  import { computed, createVNode, resolveComponent, defineComponent } from 'vue';
2
+ import { showTitle } from '@ibiz-template/core';
2
3
  import { useNamespace } from '@ibiz-template/vue3-util';
3
4
  import './async-action.css';
4
5
  import { isObject, isString } from 'lodash-es';
@@ -91,7 +92,7 @@ const AsyncAction = /* @__PURE__ */ defineComponent({
91
92
  }, [createVNode("div", {
92
93
  "class": this.ns.e("caption")
93
94
  }, [asyncacitonname]), this.showErrorInfo && createVNode("div", {
94
- "title": this.action.actionresult,
95
+ "title": showTitle(this.action.actionresult),
95
96
  "class": this.ns.e("error-info")
96
97
  }, [this.action.actionresult]), this.actionstate === 20 ? createVNode("div", {
97
98
  "class": this.ns.e("progress")
@@ -1,4 +1,5 @@
1
1
  import { computed, resolveComponent, createVNode, defineComponent } from 'vue';
2
+ import { showTitle } from '@ibiz-template/core';
2
3
  import { useNamespace } from '@ibiz-template/vue3-util';
3
4
  import './internal-message-container.css';
4
5
 
@@ -90,7 +91,7 @@ const InternalMessageContainer = /* @__PURE__ */ defineComponent({
90
91
  imagePath: "svg/read.svg"
91
92
  },
92
93
  "baseDir": "iconfont",
93
- "title": item.tooltip,
94
+ "title": showTitle(item.tooltip),
94
95
  "onClick": (e) => this.onToolbarClick(e, item.key)
95
96
  }, null);
96
97
  })]), createVNode("div", {
@@ -13,6 +13,7 @@ export declare const InternalMessageHTML: import("vue").DefineComponent<{
13
13
  };
14
14
  }, {
15
15
  ns: import("@ibiz-template/core").Namespace;
16
+ msgContent: import("vue").ComputedRef<string>;
16
17
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
17
18
  close: () => true;
18
19
  }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
@@ -1,6 +1,8 @@
1
- import { resolveComponent, createVNode, defineComponent } from 'vue';
1
+ import { computed, resolveComponent, createVNode, defineComponent } from 'vue';
2
2
  import { useNamespace } from '@ibiz-template/vue3-util';
3
3
  import './internal-message-html.css';
4
+ import '../../../../util/index.mjs';
5
+ import { parseHtml } from '../../../../util/wang-editor-util/wang-editor-util.mjs';
4
6
 
5
7
  "use strict";
6
8
  const InternalMessageHTML = /* @__PURE__ */ defineComponent({
@@ -18,10 +20,14 @@ const InternalMessageHTML = /* @__PURE__ */ defineComponent({
18
20
  emits: {
19
21
  close: () => true
20
22
  },
21
- setup() {
23
+ setup(props) {
22
24
  const ns = useNamespace("internal-message-html");
25
+ const msgContent = computed(() => {
26
+ return parseHtml(props.message.content);
27
+ });
23
28
  return {
24
- ns
29
+ ns,
30
+ msgContent
25
31
  };
26
32
  },
27
33
  render() {
@@ -33,7 +39,7 @@ const InternalMessageHTML = /* @__PURE__ */ defineComponent({
33
39
  }, {
34
40
  default: () => [createVNode("div", {
35
41
  "class": this.ns.e("content"),
36
- "innerHTML": this.message.content
42
+ "innerHTML": this.msgContent
37
43
  }, null)]
38
44
  });
39
45
  }
@@ -12,6 +12,7 @@ export declare class InternalMessageHTMLtProvider extends InternalMessageDefault
12
12
  };
13
13
  }, {
14
14
  ns: import("@ibiz-template/core").Namespace;
15
+ msgContent: import("vue").ComputedRef<string>;
15
16
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
16
17
  close: () => true;
17
18
  }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
@@ -2,6 +2,7 @@ import { ref, onMounted, onUnmounted, resolveComponent, createVNode, defineCompo
2
2
  import { useNamespace } from '@ibiz-template/vue3-util';
3
3
  import { PresetIdentifier } from '@ibiz-template/runtime';
4
4
  import './user-message.css';
5
+ import { showTitle } from '@ibiz-template/core';
5
6
  import { AsyncActionTab } from './async-action/async-action-tab/async-action-tab.mjs';
6
7
  import './internal-message/index.mjs';
7
8
  import './internal-message/common/index.mjs';
@@ -84,7 +85,7 @@ const UserMessage = /* @__PURE__ */ defineComponent({
84
85
  },
85
86
  render() {
86
87
  return createVNode("div", {
87
- "title": ibiz.i18n.t("panelComponent.userMessage.notice"),
88
+ "title": showTitle(ibiz.i18n.t("panelComponent.userMessage.notice")),
88
89
  "class": [this.ns.b(), this.ns.m(this.modelData.id), ...this.controller.containerClass]
89
90
  }, [createVNode(resolveComponent("el-popover"), {
90
91
  "ref": "popoverRef",
@@ -142,7 +143,7 @@ const UserMessage = /* @__PURE__ */ defineComponent({
142
143
  imagePath: "svg/read.svg"
143
144
  },
144
145
  "baseDir": "iconfont",
145
- "title": ibiz.i18n.t("panelComponent.userMessage.allRead"),
146
+ "title": showTitle(ibiz.i18n.t("panelComponent.userMessage.allRead")),
146
147
  "onClick": this.onBatchReadClick
147
148
  }, null)])]);
148
149
  }
@@ -9,3 +9,4 @@ export { usePagination } from './pagination/use-pagination';
9
9
  export { NoticeUtil } from './notice-util/notice-util';
10
10
  export { RenderUtil } from './render-util/render-util';
11
11
  export { AppUtil } from './app-util/app-util';
12
+ export * from './wang-editor-util/wang-editor-util';
package/es/util/index.mjs CHANGED
@@ -9,5 +9,6 @@ export { usePagination } from './pagination/use-pagination.mjs';
9
9
  export { NoticeUtil } from './notice-util/notice-util.mjs';
10
10
  export { RenderUtil } from './render-util/render-util.mjs';
11
11
  export { AppUtil } from './app-util/app-util.mjs';
12
+ export { parseHtml } from './wang-editor-util/wang-editor-util.mjs';
12
13
 
13
14
  "use strict";
@@ -1,4 +1,5 @@
1
1
  import { ElNotification } from 'element-plus';
2
+ import { parseHtml } from '../wang-editor-util/wang-editor-util.mjs';
2
3
 
3
4
  "use strict";
4
5
  var __defProp = Object.defineProperty;
@@ -49,9 +50,10 @@ class NotificationUtil {
49
50
  */
50
51
  handleNotice(params, noticeType) {
51
52
  const duration = params.duration ? params.duration * 1e3 : 4500;
53
+ const msgContent = params.desc ? parseHtml(params.desc) : params.desc;
52
54
  ElNotification({
53
55
  title: params.title,
54
- message: params.desc,
56
+ message: msgContent,
55
57
  dangerouslyUseHTMLString: !!params.isHtmlDesc,
56
58
  type: noticeType,
57
59
  position: params.position || "top-right",
@@ -0,0 +1,11 @@
1
+ /**
2
+ * 解析html内容
3
+ * @description 解析html内容, 用法传入字符串 返回值为string类型
4
+ * ```
5
+ * parseHtml(`<span data-w-e-type="emoji" class='emoji'>JUYwJTlGJTk4JTg0</span>` => `<span data-w-e-type="emoji" class='emoji'>😄</span>`
6
+ * ```
7
+ * @export
8
+ * @param {string} str
9
+ * @return {*} {string}
10
+ */
11
+ export declare function parseHtml(str: string): string;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ function parseHtml(str) {
3
+ return str.replaceAll(
4
+ /<span data-w-e-type="emoji" class='emoji'>(.+?)<\/span>/g,
5
+ (x, emoji) => {
6
+ const tempVal = decodeURIComponent(atob(emoji));
7
+ return "<span data-w-e-type=\"emoji\" class='emoji'>".concat(tempVal, "</span>");
8
+ }
9
+ );
10
+ }
11
+
12
+ export { parseHtml };
@@ -16,6 +16,14 @@ function createVueApp(rootComponent, rootProps) {
16
16
  app.use(plugin);
17
17
  };
18
18
  AppHooks.useComponent.tap(installPlugin);
19
+ const importBIReport = () => import('@ibiz-template-plugin/bi-report');
20
+ importBIReport().then((value) => {
21
+ const biReport = value.default;
22
+ AppHooks.useComponent.callSync(null, biReport);
23
+ AppHooks.createApp.tap((_, _app) => {
24
+ _app.use(biReport);
25
+ });
26
+ });
19
27
  if (rootProps) {
20
28
  const oldUnMounted = rootProps.unmounted;
21
29
  rootProps.unmounted = () => {
@@ -3,6 +3,7 @@
3
3
  var vue = require('vue');
4
4
  var vue3Util = require('@ibiz-template/vue3-util');
5
5
  require('./action-toolbar.css');
6
+ var core = require('@ibiz-template/core');
6
7
 
7
8
  "use strict";
8
9
  function _isSlot(s) {
@@ -106,7 +107,7 @@ const IBizActionToolbar = /* @__PURE__ */ vue.defineComponent({
106
107
  "text": true,
107
108
  "size": "small",
108
109
  "onClick": (e) => this.handleClick(detail, e),
109
- "title": ibiz.env.enableTitle ? detail.tooltip : void 0,
110
+ "title": core.showTitle(detail.tooltip),
110
111
  "disabled": this.actionsState[detail.id].disabled,
111
112
  "class": this.calcActionItemClass(detail)
112
113
  }, {
@@ -146,7 +147,7 @@ const IBizActionToolbar = /* @__PURE__ */ vue.defineComponent({
146
147
  icon: () => vue.createVNode("ion-icon", {
147
148
  "class": this.ns.e("icon"),
148
149
  "name": "ellipsis-vertical",
149
- "title": ibiz.i18n.t("component.actionToolbar.more")
150
+ "title": core.showTitle(ibiz.i18n.t("component.actionToolbar.more"))
150
151
  }, null)
151
152
  }), vue.createVNode(vue.resolveComponent("el-popover"), {
152
153
  "placement": "bottom-start",
@@ -187,7 +188,7 @@ const IBizActionToolbar = /* @__PURE__ */ vue.defineComponent({
187
188
  if (this.actionsState[detail.id].visible) {
188
189
  return vue.createVNode(vue.resolveComponent("el-dropdown-item"), {
189
190
  "class": [this.ns.e("item"), this.ns.is("disabled", false)],
190
- "title": detail.tooltip,
191
+ "title": core.showTitle(detail.tooltip),
191
192
  "disabled": this.actionsState[detail.id].disabled,
192
193
  "command": detail
193
194
  }, {
@@ -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 customTheme_controller = require('./custom-theme.controller.cjs');
6
7
  require('./custom-theme.css');
7
8
 
@@ -112,7 +113,7 @@ const CustomTheme = /* @__PURE__ */ vue.defineComponent({
112
113
  "class": ns.b("var")
113
114
  }, [vue.createVNode("span", {
114
115
  "class": ns.be("var", "description"),
115
- "title": ibiz.i18n.t("control.common.customTheme.".concat(data.descLang))
116
+ "title": core.showTitle(ibiz.i18n.t("control.common.customTheme.".concat(data.descLang)))
116
117
  }, [ibiz.i18n.t("control.common.customTheme.".concat(data.labelLang))]), content]);
117
118
  })])]);
118
119
  };
@@ -126,7 +127,7 @@ const CustomTheme = /* @__PURE__ */ vue.defineComponent({
126
127
  }, [c.predefineType.map((item) => {
127
128
  return vue.createVNode(vue.resolveComponent("el-button"), {
128
129
  "color": item.color,
129
- "title": ibiz.env.enableTitle ? ibiz.i18n.t("control.common.customTheme.".concat(item.labelLang)) : void 0,
130
+ "title": core.showTitle(ibiz.i18n.t("control.common.customTheme.".concat(item.labelLang))),
130
131
  "onClick": () => {
131
132
  handleThemeChange(item.codeName);
132
133
  }
@@ -415,10 +415,7 @@ const DataImport2 = /* @__PURE__ */ vue.defineComponent({
415
415
  }, [vue.createVNode(vue.resolveComponent("el-button"), {
416
416
  "onClick": this.onButtonImportClick,
417
417
  "disabled": !this.selectValues.join(""),
418
- "title": (
419
- // eslint-disable-next-line no-nested-ternary
420
- ibiz.env.enableTitle ? !this.selectValues.join("") ? ibiz.i18n.t("component.dataImport2.selectProperties") : "" : void 0
421
- )
418
+ "title": core.showTitle(!this.selectValues.join("") ? ibiz.i18n.t("component.dataImport2.selectProperties") : "")
422
419
  }, _isSlot(_slot2 = ibiz.i18n.t("component.dataImport2.import")) ? _slot2 : {
423
420
  default: () => [_slot2]
424
421
  })]) : ""])])])]), vue.createVNode(vue.resolveComponent("data-import2-table"), {