@ibiz-template/vue3-components 0.7.26-alpha.3 → 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 (240) hide show
  1. package/dist/{index-8tGeBxpc.js → index-0TO7mjm5.js} +1 -1
  2. package/dist/index-Dq21zXhV.js +4 -0
  3. package/dist/{index-CDgQJyai.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-8_6qMs6z.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/common/emoji-select/components/categories/categories.css +1 -0
  11. package/es/common/emoji-select/components/categories/categories.d.ts +30 -0
  12. package/es/common/emoji-select/components/categories/categories.mjs +48 -0
  13. package/es/common/emoji-select/components/categories/index.d.ts +1 -0
  14. package/es/common/emoji-select/components/categories/index.mjs +3 -0
  15. package/es/common/emoji-select/components/category-label/category-label.css +1 -0
  16. package/es/common/emoji-select/components/category-label/category-label.d.ts +18 -0
  17. package/es/common/emoji-select/components/category-label/category-label.mjs +28 -0
  18. package/es/common/emoji-select/components/category-label/index.d.ts +1 -0
  19. package/es/common/emoji-select/components/category-label/index.mjs +3 -0
  20. package/es/common/emoji-select/components/emoji-item/emoji-item.css +1 -0
  21. package/es/common/emoji-select/components/emoji-item/emoji-item.d.ts +44 -0
  22. package/es/common/emoji-select/components/emoji-item/emoji-item.mjs +56 -0
  23. package/es/common/emoji-select/components/emoji-item/index.d.ts +1 -0
  24. package/es/common/emoji-select/components/emoji-item/index.mjs +3 -0
  25. package/es/common/emoji-select/components/emoji-list/emoji-list.css +1 -0
  26. package/es/common/emoji-select/components/emoji-list/emoji-list.d.ts +92 -0
  27. package/es/common/emoji-select/components/emoji-list/emoji-list.mjs +165 -0
  28. package/es/common/emoji-select/components/emoji-list/index.d.ts +1 -0
  29. package/es/common/emoji-select/components/emoji-list/index.mjs +3 -0
  30. package/es/common/emoji-select/components/index.d.ts +5 -0
  31. package/es/common/emoji-select/components/index.mjs +12 -0
  32. package/es/common/emoji-select/components/input-search/index.d.ts +1 -0
  33. package/es/common/emoji-select/components/input-search/index.mjs +3 -0
  34. package/es/common/emoji-select/components/input-search/input-search.css +1 -0
  35. package/es/common/emoji-select/components/input-search/input-search.d.ts +9 -0
  36. package/es/common/emoji-select/components/input-search/input-search.mjs +49 -0
  37. package/es/common/emoji-select/emoji-select.css +1 -0
  38. package/es/common/emoji-select/emoji-select.d.ts +142 -0
  39. package/es/common/emoji-select/emoji-select.mjs +234 -0
  40. package/es/common/emoji-select/icons/categories.d.ts +2 -0
  41. package/es/common/emoji-select/icons/categories.mjs +64 -0
  42. package/es/common/emoji-select/icons/emoji.d.ts +2 -0
  43. package/es/common/emoji-select/icons/emoji.mjs +1444 -0
  44. package/es/common/emoji-select/icons/index.d.ts +3 -0
  45. package/es/common/emoji-select/icons/index.mjs +5 -0
  46. package/es/common/emoji-select/icons/search.d.ts +1 -0
  47. package/es/common/emoji-select/icons/search.mjs +16 -0
  48. package/es/common/emoji-select/interface/category.d.ts +44 -0
  49. package/es/common/emoji-select/interface/category.mjs +22 -0
  50. package/es/common/emoji-select/interface/emoji.d.ts +37 -0
  51. package/es/common/emoji-select/interface/emoji.mjs +19 -0
  52. package/es/common/emoji-select/interface/index.d.ts +3 -0
  53. package/es/common/emoji-select/interface/index.mjs +5 -0
  54. package/es/common/emoji-select/interface/map-emojis.d.ts +17 -0
  55. package/es/common/emoji-select/interface/map-emojis.mjs +1 -0
  56. package/es/common/index.mjs +2 -0
  57. package/es/common/view-message/view-message.d.ts +1 -0
  58. package/es/control/calendar/calendar.css +1 -1
  59. package/es/control/calendar/calendar.d.ts +3 -2
  60. package/es/control/calendar/calendar.mjs +203 -86
  61. package/es/control/calendar/components/calendar-daily/calendar-daily.d.ts +1 -1
  62. package/es/control/calendar/components/calendar-daily/index.d.ts +1 -1
  63. package/es/control/calendar/components/calendar-week/calendar-week.d.ts +1 -1
  64. package/es/control/calendar/components/calendar-week/calendar-week.mjs +15 -12
  65. package/es/control/calendar/components/calendar-week/index.d.ts +1 -1
  66. package/es/control/calendar/components/calendar-week/use-calendar-week.mjs +1 -0
  67. package/es/control/calendar/components/custom-calendar/custom-calendar.mjs +4 -114
  68. package/es/control/calendar/components/interface/calendar-daily.mjs +0 -3
  69. package/es/control/calendar/components/interface/calendar-week.mjs +3 -2
  70. package/es/control/calendar/components/interface/custom-calendar.mjs +8 -3
  71. package/es/control/calendar/components/interface/index.d.ts +0 -1
  72. package/es/control/calendar/components/interface/index.mjs +0 -1
  73. package/es/control/calendar/index.d.ts +2 -1
  74. package/es/control/context-menu/context-menu.mjs +2 -2
  75. package/es/control/dashboard/custom-dashboard-container/custom-dashboard-container.d.ts +36 -2
  76. package/es/control/dashboard/custom-dashboard-container/custom-dashboard-container.mjs +18 -8
  77. package/es/control/dashboard/dashboard-design/dashboard-design.d.ts +10 -32
  78. package/es/control/dashboard/dashboard-design/dashboard-design.mjs +93 -56
  79. package/es/control/drtab/drtab-control.util.mjs +7 -11
  80. package/es/control/form/form-detail/form-button/form-button.mjs +1 -1
  81. package/es/control/form/form-detail/form-item/form-item-container/form-item-container.css +1 -1
  82. package/es/control/form/form-detail/form-item/form-item-container/form-item-container.d.ts +28 -0
  83. package/es/control/form/form-detail/form-item/form-item-container/form-item-container.mjs +52 -7
  84. package/es/control/form/form-detail/form-item/form-item.mjs +4 -0
  85. package/es/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/repeater-grid/repeater-grid.d.ts +25 -0
  86. package/es/control/grid/grid/grid-control.util.d.ts +8 -0
  87. package/es/control/grid/grid/grid-control.util.mjs +166 -12
  88. package/es/control/grid/grid/grid.css +1 -1
  89. package/es/control/grid/grid/grid.d.ts +8 -0
  90. package/es/control/grid/grid/grid.mjs +12 -2
  91. package/es/control/grid/grid/index.d.ts +8 -0
  92. package/es/control/grid/grid-column/grid-field-column/grid-field-column.d.ts +1 -0
  93. package/es/control/grid/grid-column/grid-field-column/grid-field-column.mjs +21 -1
  94. package/es/control/grid/grid-column/grid-field-column/index.d.ts +1 -0
  95. package/es/control/search-bar/search-bar.mjs +2 -2
  96. package/es/control/toolbar/export-excel/export-excel.mjs +2 -2
  97. package/es/control/toolbar/short-cut-button/short-cut-button.mjs +4 -1
  98. package/es/control/toolbar/toolbar.mjs +2 -2
  99. package/es/control/tree/index.d.ts +9 -0
  100. package/es/control/tree/tree.css +1 -1
  101. package/es/control/tree/tree.d.ts +9 -0
  102. package/es/control/tree/tree.mjs +5 -1
  103. package/es/editor/data-picker/ibiz-mpicker/ibiz-mpicker.css +1 -1
  104. package/es/editor/data-picker/ibiz-picker/ibiz-picker.mjs +2 -2
  105. package/es/editor/data-picker/ibiz-picker-embed-view/ibiz-picker-embed-view.css +1 -1
  106. package/es/editor/data-picker/ibiz-picker-embed-view/ibiz-picker-embed-view.d.ts +4 -0
  107. package/es/editor/data-picker/ibiz-picker-embed-view/ibiz-picker-embed-view.mjs +48 -3
  108. package/es/editor/data-picker/ibiz-picker-select-view/ibiz-picker-select-view.mjs +2 -2
  109. package/es/editor/data-picker/picker-editor.controller.d.ts +2 -2
  110. package/es/editor/dropdown-list/dropdown-list-editor.controller.d.ts +6 -0
  111. package/es/editor/dropdown-list/dropdown-list-editor.controller.mjs +10 -1
  112. package/es/editor/dropdown-list/dropdown-list-editor.provider.d.ts +1 -0
  113. package/es/editor/dropdown-list/dropdown-list-editor.provider.mjs +10 -1
  114. package/es/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.d.ts +1 -1
  115. package/es/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.mjs +17 -4
  116. package/es/editor/dropdown-list/ibiz-emoji-picker/ibiz-emoji-picker.css +1 -0
  117. package/es/editor/dropdown-list/ibiz-emoji-picker/ibiz-emoji-picker.d.ts +74 -0
  118. package/es/editor/dropdown-list/ibiz-emoji-picker/ibiz-emoji-picker.mjs +144 -0
  119. package/es/editor/dropdown-list/index.d.ts +1 -0
  120. package/es/editor/dropdown-list/index.mjs +1 -0
  121. package/es/editor/index.mjs +6 -0
  122. package/es/editor/span/span/span.mjs +3 -1
  123. package/es/editor/text-box/ibiz-input-number/ibiz-input-number.mjs +12 -10
  124. package/es/editor/text-box/input/input.d.ts +1 -1
  125. package/es/editor/text-box/input/input.mjs +3 -0
  126. package/es/editor/user/ibiz-searchcond-edit/ibiz-searchcond-edit.mjs +1 -1
  127. package/es/locale/en/index.d.ts +17 -0
  128. package/es/locale/en/index.mjs +17 -0
  129. package/es/locale/zh-CN/index.d.ts +17 -0
  130. package/es/locale/zh-CN/index.mjs +17 -0
  131. package/es/panel-component/nav-tabs/nav-tabs.controller.d.ts +7 -0
  132. package/es/panel-component/nav-tabs/nav-tabs.controller.mjs +20 -0
  133. package/es/panel-component/panel-button/panel-button.mjs +1 -1
  134. package/es/view-engine/edit-view.engine.mjs +3 -2
  135. package/es/view-engine/opt-view.engine.mjs +2 -1
  136. package/es/view-engine/pickup-tree-view.engine.mjs +1 -0
  137. package/es/web-app/attach-environment-config.mjs +2 -1
  138. package/lib/common/action-toolbar/action-toolbar.cjs +1 -1
  139. package/lib/common/custom-theme/custom-theme.cjs +1 -1
  140. package/lib/common/data-import2/data-import2.cjs +4 -1
  141. package/lib/common/emoji-select/components/categories/categories.cjs +50 -0
  142. package/lib/common/emoji-select/components/categories/categories.css +1 -0
  143. package/lib/common/emoji-select/components/categories/index.cjs +7 -0
  144. package/lib/common/emoji-select/components/category-label/category-label.cjs +30 -0
  145. package/lib/common/emoji-select/components/category-label/category-label.css +1 -0
  146. package/lib/common/emoji-select/components/category-label/index.cjs +7 -0
  147. package/lib/common/emoji-select/components/emoji-item/emoji-item.cjs +58 -0
  148. package/lib/common/emoji-select/components/emoji-item/emoji-item.css +1 -0
  149. package/lib/common/emoji-select/components/emoji-item/index.cjs +7 -0
  150. package/lib/common/emoji-select/components/emoji-list/emoji-list.cjs +167 -0
  151. package/lib/common/emoji-select/components/emoji-list/emoji-list.css +1 -0
  152. package/lib/common/emoji-select/components/emoji-list/index.cjs +7 -0
  153. package/lib/common/emoji-select/components/index.cjs +20 -0
  154. package/lib/common/emoji-select/components/input-search/index.cjs +7 -0
  155. package/lib/common/emoji-select/components/input-search/input-search.cjs +51 -0
  156. package/lib/common/emoji-select/components/input-search/input-search.css +1 -0
  157. package/lib/common/emoji-select/emoji-select.cjs +236 -0
  158. package/lib/common/emoji-select/emoji-select.css +1 -0
  159. package/lib/common/emoji-select/icons/categories.cjs +66 -0
  160. package/lib/common/emoji-select/icons/emoji.cjs +1446 -0
  161. package/lib/common/emoji-select/icons/index.cjs +11 -0
  162. package/lib/common/emoji-select/icons/search.cjs +18 -0
  163. package/lib/common/emoji-select/interface/category.cjs +24 -0
  164. package/lib/common/emoji-select/interface/emoji.cjs +21 -0
  165. package/lib/common/emoji-select/interface/index.cjs +10 -0
  166. package/lib/common/emoji-select/interface/map-emojis.cjs +3 -0
  167. package/lib/common/index.cjs +2 -0
  168. package/lib/control/calendar/calendar.cjs +203 -86
  169. package/lib/control/calendar/calendar.css +1 -1
  170. package/lib/control/calendar/components/calendar-week/calendar-week.cjs +15 -12
  171. package/lib/control/calendar/components/calendar-week/use-calendar-week.cjs +1 -0
  172. package/lib/control/calendar/components/custom-calendar/custom-calendar.cjs +7 -117
  173. package/lib/control/calendar/components/interface/calendar-daily.cjs +0 -3
  174. package/lib/control/calendar/components/interface/calendar-week.cjs +3 -2
  175. package/lib/control/calendar/components/interface/custom-calendar.cjs +8 -3
  176. package/lib/control/calendar/components/interface/index.cjs +0 -3
  177. package/lib/control/context-menu/context-menu.cjs +2 -2
  178. package/lib/control/dashboard/custom-dashboard-container/custom-dashboard-container.cjs +18 -8
  179. package/lib/control/dashboard/dashboard-design/dashboard-design.cjs +93 -56
  180. package/lib/control/drtab/drtab-control.util.cjs +7 -11
  181. package/lib/control/form/form-detail/form-button/form-button.cjs +1 -1
  182. package/lib/control/form/form-detail/form-item/form-item-container/form-item-container.cjs +51 -6
  183. package/lib/control/form/form-detail/form-item/form-item-container/form-item-container.css +1 -1
  184. package/lib/control/form/form-detail/form-item/form-item.cjs +4 -0
  185. package/lib/control/grid/grid/grid-control.util.cjs +166 -12
  186. package/lib/control/grid/grid/grid.cjs +12 -2
  187. package/lib/control/grid/grid/grid.css +1 -1
  188. package/lib/control/grid/grid-column/grid-field-column/grid-field-column.cjs +21 -1
  189. package/lib/control/search-bar/search-bar.cjs +2 -2
  190. package/lib/control/toolbar/export-excel/export-excel.cjs +2 -2
  191. package/lib/control/toolbar/short-cut-button/short-cut-button.cjs +4 -1
  192. package/lib/control/toolbar/toolbar.cjs +2 -2
  193. package/lib/control/tree/tree.cjs +5 -1
  194. package/lib/control/tree/tree.css +1 -1
  195. package/lib/editor/data-picker/ibiz-mpicker/ibiz-mpicker.css +1 -1
  196. package/lib/editor/data-picker/ibiz-picker/ibiz-picker.cjs +2 -2
  197. package/lib/editor/data-picker/ibiz-picker-embed-view/ibiz-picker-embed-view.cjs +48 -3
  198. package/lib/editor/data-picker/ibiz-picker-embed-view/ibiz-picker-embed-view.css +1 -1
  199. package/lib/editor/data-picker/ibiz-picker-select-view/ibiz-picker-select-view.cjs +2 -2
  200. package/lib/editor/dropdown-list/dropdown-list-editor.controller.cjs +10 -1
  201. package/lib/editor/dropdown-list/dropdown-list-editor.provider.cjs +10 -1
  202. package/lib/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.cjs +17 -4
  203. package/lib/editor/dropdown-list/ibiz-emoji-picker/ibiz-emoji-picker.cjs +146 -0
  204. package/lib/editor/dropdown-list/ibiz-emoji-picker/ibiz-emoji-picker.css +1 -0
  205. package/lib/editor/dropdown-list/index.cjs +2 -0
  206. package/lib/editor/index.cjs +6 -0
  207. package/lib/editor/span/span/span.cjs +2 -0
  208. package/lib/editor/text-box/ibiz-input-number/ibiz-input-number.cjs +12 -10
  209. package/lib/editor/text-box/input/input.cjs +3 -0
  210. package/lib/editor/user/ibiz-searchcond-edit/ibiz-searchcond-edit.cjs +1 -1
  211. package/lib/locale/en/index.cjs +17 -0
  212. package/lib/locale/zh-CN/index.cjs +17 -0
  213. package/lib/panel-component/nav-tabs/nav-tabs.controller.cjs +20 -0
  214. package/lib/panel-component/panel-button/panel-button.cjs +1 -1
  215. package/lib/view-engine/edit-view.engine.cjs +3 -2
  216. package/lib/view-engine/opt-view.engine.cjs +2 -1
  217. package/lib/view-engine/pickup-tree-view.engine.cjs +1 -0
  218. package/lib/web-app/attach-environment-config.cjs +2 -1
  219. package/package.json +8 -8
  220. package/dist/index-oBteffLj.js +0 -4
  221. package/es/_virtual/localeData.mjs +0 -3
  222. package/es/control/calendar/components/calendar-month/calendar-month.css +0 -1
  223. package/es/control/calendar/components/calendar-month/calendar-month.d.ts +0 -18
  224. package/es/control/calendar/components/calendar-month/calendar-month.mjs +0 -242
  225. package/es/control/calendar/components/calendar-month/index.d.ts +0 -18
  226. package/es/control/calendar/components/calendar-month/index.mjs +0 -9
  227. package/es/control/calendar/components/calendar-month/use-calendar-month.d.ts +0 -3
  228. package/es/control/calendar/components/calendar-month/use-calendar-month.mjs +0 -384
  229. package/es/control/calendar/components/interface/calendar-month.d.ts +0 -20
  230. package/es/control/calendar/components/interface/calendar-month.mjs +0 -43
  231. package/es/node_modules/.pnpm/dayjs@1.11.10/node_modules/dayjs/plugin/localeData.mjs +0 -13
  232. package/lib/_virtual/localeData.cjs +0 -5
  233. package/lib/control/calendar/components/calendar-month/calendar-month.cjs +0 -244
  234. package/lib/control/calendar/components/calendar-month/calendar-month.css +0 -1
  235. package/lib/control/calendar/components/calendar-month/index.cjs +0 -14
  236. package/lib/control/calendar/components/calendar-month/use-calendar-month.cjs +0 -386
  237. package/lib/control/calendar/components/interface/calendar-month.cjs +0 -46
  238. package/lib/node_modules/.pnpm/dayjs@1.11.10/node_modules/dayjs/plugin/localeData.cjs +0 -17
  239. /package/es/node_modules/.pnpm/{@ibiz-template_core@0.7.25_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
  240. /package/lib/node_modules/.pnpm/{@ibiz-template_core@0.7.25_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
@@ -62,7 +62,7 @@ const IBizExportExcel = /* @__PURE__ */ defineComponent({
62
62
  title: () => {
63
63
  let _slot;
64
64
  return createVNode(resolveComponent("el-button"), {
65
- "title": this.item.tooltip,
65
+ "title": ibiz.env.enableTitle ? this.item.tooltip : void 0,
66
66
  "size": this.$props.size,
67
67
  "class": this.ns.b("submenu-button")
68
68
  }, _isSlot(_slot = this.btnContent(this.item)) ? _slot : {
@@ -137,7 +137,7 @@ const IBizExportExcel = /* @__PURE__ */ defineComponent({
137
137
  default: () => {
138
138
  let _slot6;
139
139
  return createVNode(resolveComponent("el-button"), {
140
- "title": this.item.tooltip,
140
+ "title": ibiz.env.enableTitle ? this.item.tooltip : void 0,
141
141
  "size": this.$props.size,
142
142
  "class": this.ns.e("button")
143
143
  }, _isSlot(_slot6 = this.btnContent(this.item)) ? _slot6 : {
@@ -49,7 +49,10 @@ const IBizShortCutButton = /* @__PURE__ */ defineComponent({
49
49
  return createVNode("div", {
50
50
  "class": [this.ns.b(), this.ns.is("short-cut", this.isShortCut)]
51
51
  }, [createVNode(resolveComponent("el-button"), {
52
- "title": this.isShortCut ? "".concat(ibiz.i18n.t("app.cancel")).concat(this.item.tooltip) : this.item.tooltip,
52
+ "title": (
53
+ // eslint-disable-next-line no-nested-ternary
54
+ ibiz.env.enableTitle ? this.isShortCut ? "".concat(ibiz.i18n.t("app.cancel")).concat(this.item.tooltip) : this.item.tooltip : void 0
55
+ ),
53
56
  "size": this.size,
54
57
  "text": Object.is(this.buttonType, "inverse"),
55
58
  "type": this.buttonType,
@@ -70,7 +70,7 @@ const ToolbarControl = /* @__PURE__ */ defineComponent({
70
70
  "key": button.id,
71
71
  "class": [ns.e("item")]
72
72
  }, [createVNode(resolveComponent("el-button"), {
73
- "title": button.tooltip,
73
+ "title": ibiz.env.enableTitle ? button.tooltip : void 0,
74
74
  "size": btnSize.value,
75
75
  "onClick": (e) => handleClick(button, e)
76
76
  }, _isSlot(_slot = btnContent(button)) ? _slot : {
@@ -243,7 +243,7 @@ const ToolbarControl = /* @__PURE__ */ defineComponent({
243
243
  "key": itemId,
244
244
  "class": [ns.e("item"), ns.e("item-deuiaction"), ns.em("item", buttonType), calcCssName(item), ns.is("loading", c.state.buttonsState[itemId].loading)]
245
245
  }, [createVNode(resolveComponent("el-button"), {
246
- "title": item.tooltip,
246
+ "title": ibiz.env.enableTitle ? item.tooltip : void 0,
247
247
  "size": btnSize.value,
248
248
  "text": Object.is(buttonType, "inverse"),
249
249
  "type": buttonType,
@@ -33,6 +33,10 @@ export declare const IBizTreeControl: import("@ibiz-template/vue3-util").TypeWit
33
33
  type: BooleanConstructor;
34
34
  default: boolean;
35
35
  };
36
+ checkStrictly: {
37
+ type: BooleanConstructor;
38
+ default: boolean;
39
+ };
36
40
  }, {
37
41
  c: import("@ibiz-template/runtime").TreeController<import("@ibiz/model-core").IDETree, import("@ibiz-template/runtime").ITreeState, import("@ibiz-template/runtime").ITreeEvent>;
38
42
  ns: import("@ibiz-template/core").Namespace;
@@ -987,11 +991,16 @@ export declare const IBizTreeControl: import("@ibiz-template/vue3-util").TypeWit
987
991
  type: BooleanConstructor;
988
992
  default: boolean;
989
993
  };
994
+ checkStrictly: {
995
+ type: BooleanConstructor;
996
+ default: boolean;
997
+ };
990
998
  }>>, {
991
999
  params: IParams;
992
1000
  mdctrlActiveMode: number;
993
1001
  singleSelect: boolean;
994
1002
  loadDefault: boolean;
1003
+ checkStrictly: boolean;
995
1004
  navigational: boolean;
996
1005
  }, {}>>;
997
1006
  export default IBizTreeControl;
@@ -1 +1 @@
1
- .ibiz-control-treeview{--ibiz-control-treeview-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base);--ibiz-control-treeview-icon-height:var(--ibiz-spacing-base);--ibiz-control-treeview-icon-width:var(--ibiz-spacing-base);height:100%;padding:var(--ibiz-spacing-tight) 0}.ibiz-control-treeview-node{display:flex;flex-grow:1;flex-shrink:1;align-items:center;min-width:1px;height:100%}.ibiz-control-treeview-node__icon{display:inline-block;width:var(--ibiz-control-treeview-icon-width);height:var(--ibiz-control-treeview-icon-height);margin-right:var(--ibiz-spacing-tight)}.ibiz-control-treeview-node__icon>svg{width:100%;height:100%}.ibiz-control-treeview-node__label{flex-grow:1;flex-shrink:1;min-width:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-control-treeview-node:hover .ibiz-control-treeview-context-menu-trigger{display:inline-block}.ibiz-control-treeview-node--disabled{color:var(--ibiz-color-disabled-text);cursor:not-allowed}.ibiz-control-treeview-context-menu-trigger{display:none;flex-shrink:0;width:30px;text-align:center;cursor:pointer}.ibiz-control-treeview-context-menu-trigger__caption-icon{vertical-align:middle}.ibiz-control-treeview-context-menu.mx-context-menu{padding:var(--ibiz-spacing-extra-tight) 0}.ibiz-control-treeview-context-menu.mx-context-menu .mx-context-menu-item{padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base)}.ibiz-control-treeview-quick-search{padding:0 var(--ibiz-spacing-base) var(--ibiz-spacing-tight)}.ibiz-control-treeview-tree{padding:0 var(--ibiz-spacing-base)}
1
+ .ibiz-control-treeview{--ibiz-control-treeview-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base);--ibiz-control-treeview-icon-height:var(--ibiz-spacing-base);--ibiz-control-treeview-icon-width:var(--ibiz-spacing-base);height:100%;padding:var(--ibiz-spacing-tight) 0}.ibiz-control-treeview-node{display:flex;flex-grow:1;flex-shrink:1;align-items:center;min-width:1px;height:100%}.ibiz-control-treeview-node__icon{display:flex;align-items:center;width:var(--ibiz-control-treeview-icon-width);height:var(--ibiz-control-treeview-icon-height);margin-right:var(--ibiz-spacing-tight)}.ibiz-control-treeview-node__icon>svg{width:100%;height:100%}.ibiz-control-treeview-node__label{flex-grow:1;flex-shrink:1;min-width:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-control-treeview-node:hover .ibiz-control-treeview-context-menu-trigger{display:inline-block}.ibiz-control-treeview-node--disabled{color:var(--ibiz-color-disabled-text);cursor:not-allowed}.ibiz-control-treeview-context-menu-trigger{display:none;flex-shrink:0;width:30px;text-align:center;cursor:pointer}.ibiz-control-treeview-context-menu-trigger__caption-icon{vertical-align:middle}.ibiz-control-treeview-context-menu.mx-context-menu{padding:var(--ibiz-spacing-extra-tight) 0}.ibiz-control-treeview-context-menu.mx-context-menu .mx-context-menu-item{padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base)}.ibiz-control-treeview-quick-search{padding:0 var(--ibiz-spacing-base) var(--ibiz-spacing-tight)}.ibiz-control-treeview-tree{padding:0 var(--ibiz-spacing-base)}
@@ -54,6 +54,10 @@ export declare const TreeControl: import("vue").DefineComponent<{
54
54
  type: BooleanConstructor;
55
55
  default: boolean;
56
56
  };
57
+ checkStrictly: {
58
+ type: BooleanConstructor;
59
+ default: boolean;
60
+ };
57
61
  }, {
58
62
  c: TreeController<IDETree, import("@ibiz-template/runtime").ITreeState, import("@ibiz-template/runtime").ITreeEvent>;
59
63
  ns: import("@ibiz-template/core").Namespace;
@@ -1023,10 +1027,15 @@ export declare const TreeControl: import("vue").DefineComponent<{
1023
1027
  type: BooleanConstructor;
1024
1028
  default: boolean;
1025
1029
  };
1030
+ checkStrictly: {
1031
+ type: BooleanConstructor;
1032
+ default: boolean;
1033
+ };
1026
1034
  }>>, {
1027
1035
  params: IParams;
1028
1036
  mdctrlActiveMode: number;
1029
1037
  singleSelect: boolean;
1030
1038
  loadDefault: boolean;
1039
+ checkStrictly: boolean;
1031
1040
  navigational: boolean;
1032
1041
  }, {}>;
@@ -63,6 +63,10 @@ const TreeControl = /* @__PURE__ */ defineComponent({
63
63
  loadDefault: {
64
64
  type: Boolean,
65
65
  default: true
66
+ },
67
+ checkStrictly: {
68
+ type: Boolean,
69
+ default: true
66
70
  }
67
71
  },
68
72
  setup() {
@@ -473,7 +477,7 @@ const TreeControl = /* @__PURE__ */ defineComponent({
473
477
  "expand-on-click-node": false,
474
478
  "auto-expand-parent": false,
475
479
  "show-checkbox": !this.c.state.singleSelect,
476
- "check-strictly": !this.cascadeSelect,
480
+ "check-strictly": !this.cascadeSelect && this.checkStrictly,
477
481
  "default-expanded-keys": this.c.state.expandedKeys,
478
482
  "props": {
479
483
  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}
@@ -91,8 +91,8 @@ const IBizPicker = /* @__PURE__ */ defineComponent({
91
91
  const openLinkView = async (e) => {
92
92
  e.stopPropagation();
93
93
  const res = await c.openLinkView(props.data);
94
- if (res && res[0]) {
95
- await handleDataSelect(res[0]);
94
+ if (res && res.ok && res.data && res.data.length > 0) {
95
+ await handleDataSelect(res.data[0]);
96
96
  }
97
97
  };
98
98
  const onACSelect = async (item) => {
@@ -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)}
@@ -38,6 +38,10 @@ export declare const IBizPickerEmbedView: import("vue").DefineComponent<{
38
38
  onSelectionChange: (event: EventBase) => void;
39
39
  editorRef: import("vue").Ref<any>;
40
40
  pickupViewModel: import("vue").ComputedRef<import("@ibiz-template/runtime").IViewConfig | null>;
41
+ singleSelect: import("vue").Ref<boolean>;
42
+ checkStrictly: import("vue").Ref<boolean>;
43
+ isShowText: import("vue").Ref<boolean>;
44
+ selectedData: import("vue").Ref<IData[]>;
41
45
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
42
46
  change: (_value: unknown, _name?: string | undefined) => boolean;
43
47
  blur: (_event?: IData | undefined) => boolean;
@@ -29,6 +29,42 @@ const IBizPickerEmbedView = /* @__PURE__ */ defineComponent({
29
29
  setViewParam();
30
30
  }
31
31
  });
32
+ const editorParams = c.model.editorParams;
33
+ const singleSelect = ref(true);
34
+ const checkStrictly = ref(true);
35
+ const isShowText = ref(true);
36
+ if (editorParams) {
37
+ if (editorParams.multiple) {
38
+ singleSelect.value = !c.toBoolean(editorParams.multiple);
39
+ }
40
+ if (editorParams.checkStrictly) {
41
+ checkStrictly.value = c.toBoolean(editorParams.checkStrictly);
42
+ }
43
+ if (editorParams.isShowText) {
44
+ isShowText.value = c.toBoolean(editorParams.isShowText);
45
+ }
46
+ }
47
+ const selectedData = ref([]);
48
+ watch(() => props.value, (newVal) => {
49
+ var _a, _b, _c, _d;
50
+ selectedData.value = [];
51
+ if (newVal) {
52
+ if (c.valueItem) {
53
+ const tempValue = (_c = (_b = (_a = props.data) == null ? void 0 : _a[c.valueItem]) == null ? void 0 : _b.split) == null ? void 0 : _c.call(_b, ",");
54
+ const tempText = (_d = newVal == null ? void 0 : newVal.split) == null ? void 0 : _d.call(newVal, ",");
55
+ if (tempValue && tempText) {
56
+ selectedData.value = tempValue.map((srfkey, index) => {
57
+ return {
58
+ srfkey,
59
+ srfmajortext: tempText[index]
60
+ };
61
+ });
62
+ }
63
+ }
64
+ }
65
+ }, {
66
+ immediate: true
67
+ });
32
68
  const onViewDataChange = (event) => {
33
69
  let tempValue = "";
34
70
  let temText = "";
@@ -61,14 +97,18 @@ const IBizPickerEmbedView = /* @__PURE__ */ defineComponent({
61
97
  params,
62
98
  onSelectionChange,
63
99
  editorRef,
64
- pickupViewModel
100
+ pickupViewModel,
101
+ singleSelect,
102
+ checkStrictly,
103
+ isShowText,
104
+ selectedData
65
105
  };
66
106
  },
67
107
  render() {
68
108
  var _a;
69
109
  const viewShell = resolveComponent("IBizViewShell");
70
110
  return createVNode("div", {
71
- "class": [this.ns.b()],
111
+ "class": [this.ns.b(), this.disabled ? this.ns.m("disabled") : ""],
72
112
  "ref": "editorRef"
73
113
  }, [this.pickupViewModel ? [createVNode("div", {
74
114
  "class": this.ns.b("view")
@@ -76,8 +116,13 @@ const IBizPickerEmbedView = /* @__PURE__ */ defineComponent({
76
116
  context: this.context,
77
117
  params: this.params,
78
118
  viewId: (_a = this.c.pickupView) == null ? void 0 : _a.id,
119
+ state: {
120
+ singleSelect: this.singleSelect,
121
+ checkStrictly: this.checkStrictly,
122
+ selectedData: this.selectedData
123
+ },
79
124
  onSelectionChange: this.onSelectionChange
80
- })]), createVNode("div", {
125
+ })]), this.isShowText && createVNode("div", {
81
126
  "class": this.ns.b("value")
82
127
  }, [this.$props.value ? this.$props.value.split(",").map((item) => {
83
128
  return createVNode("span", null, [item, createTextVNode("; ")]);
@@ -266,8 +266,8 @@ const IBizPickerSelectView = /* @__PURE__ */ defineComponent({
266
266
  const openLinkView = async (e) => {
267
267
  e.stopPropagation();
268
268
  const res = await c.openLinkView(props.data);
269
- if (res) {
270
- onViewDataChange(res);
269
+ if (res && res.ok && res.data) {
270
+ onViewDataChange(res.data);
271
271
  }
272
272
  };
273
273
  const onSelectChange = (selects) => {
@@ -1,5 +1,5 @@
1
1
  import { IHttpResponse } from '@ibiz-template/core';
2
- import { EditorController, IViewConfig, IAcItemProvider } from '@ibiz-template/runtime';
2
+ import { EditorController, IViewConfig, IModalData, IAcItemProvider } from '@ibiz-template/runtime';
3
3
  import { IAppDEACMode, IDEACModeDataItem, IPicker } from '@ibiz/model-core';
4
4
  /**
5
5
  * 数据选择编辑器控制器
@@ -101,7 +101,7 @@ export declare class PickerEditorController extends EditorController<IPicker> {
101
101
  /**
102
102
  * 打开数据链接视图
103
103
  */
104
- openLinkView(data: IData): Promise<IData[] | undefined>;
104
+ openLinkView(data: IData): Promise<IModalData | undefined>;
105
105
  /**
106
106
  * 计算回填数据
107
107
  *
@@ -21,5 +21,11 @@ export declare class DropDownListEditorController extends CodeListEditorControll
21
21
  * @Date: 2024-03-12 14:33:14
22
22
  */
23
23
  forceSelection: boolean;
24
+ /**
25
+ * 预置项空白项名称
26
+ *
27
+ * @memberof DropDownListEditorController
28
+ */
29
+ blankItemName: string;
24
30
  protected onInit(): Promise<void>;
25
31
  }
@@ -24,9 +24,15 @@ class DropDownListEditorController extends CodeListEditorController {
24
24
  * @Date: 2024-03-12 14:33:14
25
25
  */
26
26
  __publicField(this, "forceSelection", true);
27
+ /**
28
+ * 预置项空白项名称
29
+ *
30
+ * @memberof DropDownListEditorController
31
+ */
32
+ __publicField(this, "blankItemName", "");
27
33
  }
28
34
  async onInit() {
29
- var _a;
35
+ var _a, _b;
30
36
  super.onInit();
31
37
  if (this.model.editorType === "MDROPDOWNLIST") {
32
38
  this.multiple = true;
@@ -34,6 +40,9 @@ class DropDownListEditorController extends CodeListEditorController {
34
40
  if ((_a = this.editorParams) == null ? void 0 : _a.forceSelection) {
35
41
  this.forceSelection = this.toBoolean(this.editorParams.forceSelection);
36
42
  }
43
+ if ((_b = this.editorParams) == null ? void 0 : _b.blankItemName) {
44
+ this.blankItemName = this.editorParams.blankItemName;
45
+ }
37
46
  }
38
47
  }
39
48
 
@@ -13,5 +13,6 @@ import { DropDownListEditorController } from './dropdown-list-editor.controller'
13
13
  export declare class DropDownListEditorProvider implements IEditorProvider {
14
14
  formEditor: string;
15
15
  gridEditor: string;
16
+ constructor(editorType?: string);
16
17
  createController(editorModel: IDropDownList, parentController: IEditorContainerController): Promise<DropDownListEditorController>;
17
18
  }
@@ -8,9 +8,18 @@ var __publicField = (obj, key, value) => {
8
8
  return value;
9
9
  };
10
10
  class DropDownListEditorProvider {
11
- constructor() {
11
+ constructor(editorType) {
12
12
  __publicField(this, "formEditor", "IBizDropdown");
13
13
  __publicField(this, "gridEditor", "IBizDropdown");
14
+ let componentName = "IBizDropdown";
15
+ switch (editorType) {
16
+ case "EMOJI_PICKER":
17
+ componentName = "IBizEmojiPicker";
18
+ break;
19
+ default:
20
+ }
21
+ this.formEditor = componentName;
22
+ this.gridEditor = componentName;
14
23
  }
15
24
  async createController(editorModel, parentController) {
16
25
  const c = new DropDownListEditorController(editorModel, parentController);
@@ -1,6 +1,6 @@
1
1
  import { Ref } from 'vue';
2
- import './ibiz-dropdown.scss';
3
2
  import { DropDownListEditorController } from '../dropdown-list-editor.controller';
3
+ import './ibiz-dropdown.scss';
4
4
  export declare const IBizDropdown: import("vue").DefineComponent<{
5
5
  value: (StringConstructor | NumberConstructor)[];
6
6
  controller: import("@ibiz-template/vue3-util").RequiredProp<import("vue").PropType<DropDownListEditorController>, undefined, undefined>;
@@ -44,10 +44,11 @@ const IBizDropdown = /* @__PURE__ */ defineComponent({
44
44
  }
45
45
  const list = [];
46
46
  nodes.forEach((codeItem) => {
47
+ var _a;
47
48
  codeListItems.value.push(codeItem);
48
49
  const tempObj = {
49
50
  label: codeItem.text,
50
- value: codeItem.value.toString(),
51
+ value: (_a = codeItem.value) == null ? void 0 : _a.toString(),
51
52
  color: codeItem == null ? void 0 : codeItem.color,
52
53
  textCls: codeItem == null ? void 0 : codeItem.textCls,
53
54
  sysImage: codeItem.sysImage,
@@ -72,7 +73,14 @@ const IBizDropdown = /* @__PURE__ */ defineComponent({
72
73
  isLoading.value = true;
73
74
  const codeList = await c.loadCodeList(props.data);
74
75
  isLoadedCodeList.value = true;
75
- items.value = codeList;
76
+ if (c.blankItemName) {
77
+ items.value = [{
78
+ value: void 0,
79
+ text: c.blankItemName
80
+ }, ...codeList];
81
+ } else {
82
+ items.value = codeList;
83
+ }
76
84
  for (let i = 0; i < items.value.length; i++) {
77
85
  const _item = items.value[i];
78
86
  if (_item.children) {
@@ -122,7 +130,11 @@ const IBizDropdown = /* @__PURE__ */ defineComponent({
122
130
  }
123
131
  return (_c = props.value) == null ? void 0 : _c.toString();
124
132
  },
125
- set(select) {
133
+ set(_select) {
134
+ let select = _select;
135
+ if (c.blankItemName && !_select) {
136
+ select = void 0;
137
+ }
126
138
  if (Array.isArray(select)) {
127
139
  let selectArr = null;
128
140
  if (select.length === 0) {
@@ -302,9 +314,10 @@ const IBizDropdown = /* @__PURE__ */ defineComponent({
302
314
  }, this.$attrs), {
303
315
  default: () => {
304
316
  return this.items.map((item) => {
317
+ var _a;
305
318
  return createVNode(resolveComponent("el-option"), {
306
319
  "key": item.value,
307
- "value": item.value.toString(),
320
+ "value": (_a = item.value) == null ? void 0 : _a.toString(),
308
321
  "label": item.text,
309
322
  "disabled": item.disableSelect === true,
310
323
  "style": item.bkcolor ? this.ns.cssVarBlock({
@@ -0,0 +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);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}
@@ -0,0 +1,74 @@
1
+ import { DropDownListEditorController } from '../dropdown-list-editor.controller';
2
+ import './ibiz-emoji-picker.scss';
3
+ export declare const IBizEmojiPicker: import("vue").DefineComponent<{
4
+ value: (StringConstructor | NumberConstructor)[];
5
+ controller: import("@ibiz-template/vue3-util").RequiredProp<import("vue").PropType<DropDownListEditorController>, undefined, undefined>;
6
+ data: import("@ibiz-template/vue3-util").RequiredProp<import("vue").PropType<IData>, undefined, undefined>;
7
+ disabled: {
8
+ type: BooleanConstructor;
9
+ };
10
+ readonly: {
11
+ type: BooleanConstructor;
12
+ default: boolean;
13
+ };
14
+ autoFocus: {
15
+ type: BooleanConstructor;
16
+ default: boolean;
17
+ };
18
+ overflowMode: {
19
+ type: StringConstructor;
20
+ };
21
+ controlParams: {
22
+ type: ObjectConstructor;
23
+ required: boolean;
24
+ };
25
+ }, {
26
+ ns: import("@ibiz-template/core").Namespace;
27
+ c: DropDownListEditorController;
28
+ emoji: import("vue").Ref<string>;
29
+ visible: import("vue").Ref<boolean>;
30
+ emojiRef: import("vue").Ref<any>;
31
+ showFormDefaultContent: import("vue").ComputedRef<boolean>;
32
+ onSelect: (val: IData) => void;
33
+ onAddEmoji: (e: MouseEvent) => void;
34
+ onClearEmoji: (e: MouseEvent) => void;
35
+ renderReference: () => JSX.Element;
36
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
37
+ change: (_value: unknown, _name?: string | undefined) => boolean;
38
+ blur: (_event?: IData | undefined) => boolean;
39
+ focus: (_event?: IData | undefined) => boolean;
40
+ enter: (_event?: IData | undefined) => boolean;
41
+ infoTextChange: (_text: string) => boolean;
42
+ }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
43
+ value: (StringConstructor | NumberConstructor)[];
44
+ controller: import("@ibiz-template/vue3-util").RequiredProp<import("vue").PropType<DropDownListEditorController>, undefined, undefined>;
45
+ data: import("@ibiz-template/vue3-util").RequiredProp<import("vue").PropType<IData>, undefined, undefined>;
46
+ disabled: {
47
+ type: BooleanConstructor;
48
+ };
49
+ readonly: {
50
+ type: BooleanConstructor;
51
+ default: boolean;
52
+ };
53
+ autoFocus: {
54
+ type: BooleanConstructor;
55
+ default: boolean;
56
+ };
57
+ overflowMode: {
58
+ type: StringConstructor;
59
+ };
60
+ controlParams: {
61
+ type: ObjectConstructor;
62
+ required: boolean;
63
+ };
64
+ }>> & {
65
+ onFocus?: ((_event?: IData | undefined) => any) | undefined;
66
+ onBlur?: ((_event?: IData | undefined) => any) | undefined;
67
+ onChange?: ((_value: unknown, _name?: string | undefined) => any) | undefined;
68
+ onInfoTextChange?: ((_text: string) => any) | undefined;
69
+ onEnter?: ((_event?: IData | undefined) => any) | undefined;
70
+ }, {
71
+ disabled: boolean;
72
+ autoFocus: boolean;
73
+ readonly: boolean;
74
+ }, {}>;
@@ -0,0 +1,144 @@
1
+ import { ref, computed, watch, createVNode, resolveComponent, defineComponent } from 'vue';
2
+ import { getDropdownProps, getEditorEmits, useNamespace } from '@ibiz-template/vue3-util';
3
+ import { strToBase64, isBase64, base64ToStr } from '@ibiz-template/core';
4
+ import './ibiz-emoji-picker.css';
5
+
6
+ "use strict";
7
+ const IBizEmojiPicker = /* @__PURE__ */ defineComponent({
8
+ name: "IBizEmojiPicker",
9
+ props: getDropdownProps(),
10
+ emits: getEditorEmits(),
11
+ setup(props, {
12
+ emit
13
+ }) {
14
+ const ns = useNamespace("emoji-picker");
15
+ const c = props.controller;
16
+ const emojiRef = ref();
17
+ const emoji = ref("");
18
+ const visible = ref(false);
19
+ const showFormDefaultContent = computed(() => {
20
+ if (props.controlParams && props.controlParams.editmode === "hover" && !props.readonly) {
21
+ return true;
22
+ }
23
+ return false;
24
+ });
25
+ const onAddEmoji = (e) => {
26
+ e.stopPropagation();
27
+ e.preventDefault();
28
+ visible.value = true;
29
+ };
30
+ const onClearEmoji = (e) => {
31
+ e.stopPropagation();
32
+ e.preventDefault();
33
+ emoji.value = "";
34
+ visible.value = false;
35
+ emit("change", "");
36
+ console.log("emojiRef", emojiRef.value);
37
+ emojiRef.value.click();
38
+ };
39
+ const onSelect = (val) => {
40
+ visible.value = false;
41
+ emoji.value = val.data;
42
+ emit("change", strToBase64(val.data));
43
+ };
44
+ watch(() => props.value, (newVal, oldVal) => {
45
+ if (newVal !== oldVal) {
46
+ if (!newVal) {
47
+ emoji.value = "";
48
+ } else if (Number.isNaN(Number(newVal)) && isBase64("".concat(newVal))) {
49
+ emoji.value = base64ToStr("".concat(newVal));
50
+ } else {
51
+ emoji.value = newVal.toString();
52
+ }
53
+ }
54
+ }, {
55
+ immediate: true
56
+ });
57
+ const renderButtonContent = () => {
58
+ let content = createVNode("span", {
59
+ "class": [ns.e("button-content")],
60
+ "onClick": onAddEmoji
61
+ }, [createVNode("svg", {
62
+ "class": ns.em("button-content", "icon"),
63
+ "viewBox": "0 0 1040 1024",
64
+ "version": "1.1",
65
+ "xmlns": "http://www.w3.org/2000/svg",
66
+ "p-id": "1490",
67
+ "width": "1em",
68
+ "height": "1em"
69
+ }, [createVNode("path", {
70
+ "d": "M512.075261 1024A511.774217 511.774217 0 1 1 730.482434 48.769072a37.630457 37.630457 0 1 1-32.061149 68.035867 436.513303 436.513303 0 1 0 250.468323 395.270322 37.630457 37.630457 0 0 1 75.260914 0 512.526826 512.526826 0 0 1-512.075261 511.924739z",
71
+ "p-id": "1491"
72
+ }, null), createVNode("path", {
73
+ "d": "M333.857416 344.0929a57.348817 57.348817 0 1 0 57.348817 57.348817 57.499339 57.499339 0 0 0-57.348817-57.348817zM686.53006 344.0929a57.348817 57.348817 0 1 0 57.348817 57.348817 57.348817 57.348817 0 0 0-57.348817-57.348817zM515.236219 783.165074c-162.864619 0-262.359547-141.942084-262.359547-219.159782a30.104366 30.104366 0 0 1 60.208731 0c0 48.618551 76.314567 158.951051 202.150816 158.951051s193.571072-134.114949 193.571072-158.951051a30.104366 30.104366 0 0 1 60.208731 0c0 54.488902-90.012054 219.159782-253.779803 219.159782zM1009.549904 207.720123h-67.132735V139.985301a30.104366 30.104366 0 1 0-60.208732 0v67.734822h-67.734822a30.104366 30.104366 0 0 0-30.104366 30.104366 30.104366 30.104366 0 0 0 30.104366 30.104366h67.734822v67.734823a30.104366 30.104366 0 0 0 60.208732 0v-67.734823h67.734823a30.104366 30.104366 0 0 0 30.104365-30.104366 30.104366 30.104366 0 0 0-30.706453-30.104366z",
74
+ "p-id": "1492"
75
+ }, null)]), ibiz.i18n.t("editor.emojiPicker.addEmoji")]);
76
+ if (emoji.value) {
77
+ content = createVNode("span", {
78
+ "class": [ns.e("button-content")]
79
+ }, [createVNode("svg", {
80
+ "class": ns.em("button-content", "icon"),
81
+ "xmlns": "http://www.w3.org/2000/svg",
82
+ "viewBox": "0 0 1024 1024",
83
+ "width": "1em",
84
+ "height": "1em",
85
+ "onClick": onClearEmoji
86
+ }, [createVNode("path", {
87
+ "d": "M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896m0 393.664L407.936 353.6a38.4 38.4 0 1 0-54.336 54.336L457.664 512 353.6 616.064a38.4 38.4 0 1 0 54.336 54.336L512 566.336 616.064 670.4a38.4 38.4 0 1 0 54.336-54.336L566.336 512 670.4 407.936a38.4 38.4 0 1 0-54.336-54.336z"
88
+ }, null)]), createVNode("span", {
89
+ "innerHTML": emoji.value
90
+ }, null)]);
91
+ }
92
+ return content;
93
+ };
94
+ const renderFormDefaultContent = () => {
95
+ return createVNode("div", {
96
+ "class": [ns.b("form-default-content"), ns.is("clear", !!emoji.value)]
97
+ }, [emoji.value ? emoji.value : "-"]);
98
+ };
99
+ const renderReference = () => {
100
+ return createVNode(resolveComponent("el-button"), {
101
+ "class": [ns.e("button"), ns.is("clear", !!emoji.value)]
102
+ }, {
103
+ default: () => [showFormDefaultContent.value && renderFormDefaultContent(), renderButtonContent()]
104
+ });
105
+ };
106
+ return {
107
+ ns,
108
+ c,
109
+ emoji,
110
+ visible,
111
+ emojiRef,
112
+ showFormDefaultContent,
113
+ onSelect,
114
+ onAddEmoji,
115
+ onClearEmoji,
116
+ renderReference
117
+ };
118
+ },
119
+ render() {
120
+ return createVNode("div", {
121
+ "ref": "emojiRef",
122
+ "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)]
123
+ }, [createVNode(resolveComponent("el-popover"), {
124
+ "trigger": "click",
125
+ "placement": "bottom-start",
126
+ "width": "auto",
127
+ "visible": this.visible,
128
+ "onUpdate:visible": ($event) => this.visible = $event,
129
+ "hide-after": 0,
130
+ "popper-class": [this.ns.b("popper")]
131
+ }, {
132
+ reference: () => this.renderReference(),
133
+ default: () => {
134
+ return createVNode(resolveComponent("iBizEmojiSelect"), {
135
+ "continuousList": true,
136
+ "dark": true,
137
+ "onSelect": this.onSelect
138
+ }, null);
139
+ }
140
+ })]);
141
+ }
142
+ });
143
+
144
+ export { IBizEmojiPicker };
@@ -1,3 +1,4 @@
1
1
  export { IBizDropdown } from './ibiz-dropdown/ibiz-dropdown';
2
+ export { IBizEmojiPicker } from './ibiz-emoji-picker/ibiz-emoji-picker';
2
3
  export * from './dropdown-list-editor.controller';
3
4
  export * from './dropdown-list-editor.provider';