@ibiz-template/vue3-components 0.7.41-alpha.1 → 0.7.41-alpha.10

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 (359) hide show
  1. package/dist/chart-8QfxarWf.js +1 -0
  2. package/dist/ibiz-markdown-editor-V31Pwvs_.js +1 -0
  3. package/dist/{index-4CBJktLS.js → index-CsiyXR27.js} +1 -1
  4. package/dist/index-s6VfCazO.js +4 -0
  5. package/dist/{index-QL7Ukex9.js → index-tjsobxd3.js} +1 -1
  6. package/dist/index.min.css +1 -1
  7. package/dist/index.system.min.js +1 -1
  8. package/dist/wang-editor-EqGztmuv.js +1 -0
  9. package/dist/{xlsx-util-J1RHk00u.js → xlsx-util-oX2OlM-T.js} +1 -1
  10. package/es/common/data-import2/data-import2.mjs +3 -2
  11. package/es/common/editor-empty-text/editor-empty-text.css +1 -0
  12. package/es/common/editor-empty-text/editor-empty-text.d.ts +25 -0
  13. package/es/common/editor-empty-text/editor-empty-text.mjs +31 -0
  14. package/es/common/index.mjs +2 -0
  15. package/es/common/split/split.css +1 -1
  16. package/es/control/app-menu/app-menu.css +1 -1
  17. package/es/control/chart/chart.mjs +1 -1
  18. package/es/control/data-view/data-view.css +1 -1
  19. package/es/control/data-view/data-view.mjs +34 -8
  20. package/es/control/drbar/drbar.controller.mjs +5 -5
  21. package/es/control/drtab/drtab-control.util.mjs +1 -1
  22. package/es/control/drtab/drtab.controller.mjs +3 -5
  23. package/es/control/drtab/drtab.d.ts +13 -0
  24. package/es/control/drtab/drtab.mjs +7 -1
  25. package/es/control/drtab/index.d.ts +7 -0
  26. package/es/control/exp-bar/render-util.mjs +12 -1
  27. package/es/control/form/form-detail/form-item/form-item-container/form-item-container.css +1 -1
  28. package/es/control/form/form-detail/form-item/form-item-container/form-item-container.mjs +25 -4
  29. package/es/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/repeater-multi-form/repeater-multi-form.mjs +1 -0
  30. package/es/control/form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.css +1 -1
  31. package/es/control/form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.d.ts +14 -1
  32. package/es/control/form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.mjs +63 -13
  33. package/es/control/grid/grid/grid-control.util.d.ts +1 -1
  34. package/es/control/grid/grid/grid-control.util.mjs +32 -5
  35. package/es/control/grid/grid/grid.css +1 -1
  36. package/es/control/grid/grid/grid.mjs +9 -7
  37. package/es/control/grid/row-edit-popover/use-row-edit-popover.mjs +1 -1
  38. package/es/control/kanban/kanban.css +1 -1
  39. package/es/control/kanban/kanban.d.ts +2 -2
  40. package/es/control/kanban/kanban.mjs +14 -9
  41. package/es/control/kanban/lane-kanban/lane-kanban.css +1 -0
  42. package/es/control/kanban/lane-kanban/lane-kanban.d.ts +27 -0
  43. package/es/control/kanban/lane-kanban/lane-kanban.mjs +409 -0
  44. package/es/control/list/list.css +1 -1
  45. package/es/control/list/list.mjs +16 -19
  46. package/es/control/toolbar/toolbar.css +1 -1
  47. package/es/control/toolbar/toolbar.mjs +232 -132
  48. package/es/control/tree/el-tree-util.d.ts +34 -1
  49. package/es/control/tree/el-tree-util.mjs +64 -1
  50. package/es/control/tree/index.d.ts +1 -0
  51. package/es/control/tree/tree.css +1 -1
  52. package/es/control/tree/tree.d.ts +6 -1
  53. package/es/control/tree/tree.mjs +153 -17
  54. package/es/control/tree-grid/tree-grid.mjs +1 -1
  55. package/es/control/tree-grid-ex/use-row-edit-popover.mjs +1 -1
  56. package/es/control/wizard-panel/wizard-panel.css +1 -1
  57. package/es/control/wizard-panel/wizard-panel.mjs +24 -8
  58. package/es/editor/autocomplete/ibiz-autocomplete/ibiz-autocomplete.d.ts +1 -1
  59. package/es/editor/autocomplete/ibiz-autocomplete/ibiz-autocomplete.mjs +5 -2
  60. package/es/editor/cascader/ibiz-cascader/ibiz-cascader.d.ts +5 -5
  61. package/es/editor/cascader/ibiz-cascader/ibiz-cascader.mjs +7 -1
  62. package/es/editor/check-box/ibiz-checkbox/ibiz-checkbox.d.ts +2 -2
  63. package/es/editor/check-box/ibiz-checkbox/ibiz-checkbox.mjs +8 -2
  64. package/es/editor/check-box-list/checkbox-list-editor.controller.mjs +4 -1
  65. package/es/editor/check-box-list/ibiz-checkbox-list/ibiz-checkbox-list.d.ts +3 -1
  66. package/es/editor/code/monaco-editor/monaco-editor.mjs +2 -8
  67. package/es/editor/data-picker/ibiz-mpicker/ibiz-mpicker.mjs +4 -1
  68. package/es/editor/data-picker/ibiz-picker/ibiz-picker.d.ts +1 -1
  69. package/es/editor/data-picker/ibiz-picker/ibiz-picker.mjs +13 -14
  70. package/es/editor/data-picker/ibiz-picker-dropdown/ibiz-picker-dropdown.d.ts +4 -1
  71. package/es/editor/data-picker/ibiz-picker-dropdown/ibiz-picker-dropdown.mjs +18 -18
  72. package/es/editor/data-picker/ibiz-picker-embed-view/ibiz-picker-embed-view.d.ts +4 -4
  73. package/es/editor/data-picker/ibiz-picker-embed-view/ibiz-picker-embed-view.mjs +6 -0
  74. package/es/editor/data-picker/ibiz-picker-link/ibiz-picker-link.d.ts +1 -1
  75. package/es/editor/data-picker/ibiz-picker-link/ibiz-picker-link.mjs +12 -11
  76. package/es/editor/data-picker/ibiz-picker-select-view/ibiz-picker-select-view.mjs +4 -1
  77. package/es/editor/date-picker/ibiz-date-picker/ibiz-date-picker.mjs +4 -1
  78. package/es/editor/date-range/ibiz-date-range-picker/ibiz-date-range-picker.d.ts +4 -4
  79. package/es/editor/date-range/ibiz-date-range-picker/ibiz-date-range-picker.mjs +13 -1
  80. package/es/editor/dropdown-list/dropdown-list-editor.controller.mjs +14 -3
  81. package/es/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.d.ts +10 -6
  82. package/es/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.mjs +26 -20
  83. package/es/editor/dropdown-list/ibiz-emoji-picker/ibiz-emoji-picker.mjs +4 -1
  84. package/es/editor/html/wang-editor/wang-editor.mjs +5 -10
  85. package/es/editor/list-box/ibiz-list-box/ibiz-list-box.d.ts +3 -1
  86. package/es/editor/map-picker/ibiz-map-picker/ibiz-map-picker.mjs +4 -1
  87. package/es/editor/markdown/ibiz-markdown-editor/ibiz-markdown-editor.mjs +2 -2
  88. package/es/editor/number-range/ibiz-number-range-picker/ibiz-number-range-picker.mjs +4 -1
  89. package/es/editor/radio-button-list/ibiz-radio/ibiz-radio.d.ts +3 -3
  90. package/es/editor/radio-button-list/ibiz-radio/ibiz-radio.mjs +6 -0
  91. package/es/editor/radio-button-list/radio-button-list.controller.mjs +4 -1
  92. package/es/editor/rate/ibiz-rate/ibiz-rate.d.ts +3 -3
  93. package/es/editor/rate/ibiz-rate/ibiz-rate.mjs +3 -0
  94. package/es/editor/raw/ibiz-raw/ibiz-raw.d.ts +2 -2
  95. package/es/editor/raw/ibiz-raw/ibiz-raw.mjs +2 -0
  96. package/es/editor/slider/ibiz-slider/ibiz-slider.d.ts +12 -12
  97. package/es/editor/slider/ibiz-slider/ibiz-slider.mjs +14 -2
  98. package/es/editor/span/span/span.d.ts +3 -3
  99. package/es/editor/span/span/span.mjs +7 -4
  100. package/es/editor/stepper/ibiz-stepper/ibiz-stepper.d.ts +2 -2
  101. package/es/editor/stepper/ibiz-stepper/ibiz-stepper.mjs +2 -1
  102. package/es/editor/switch/ibiz-switch/ibiz-switch.d.ts +1 -1
  103. package/es/editor/text-box/ibiz-input-number/ibiz-input-number.d.ts +2 -2
  104. package/es/editor/text-box/ibiz-input-number/ibiz-input-number.mjs +5 -2
  105. package/es/editor/text-box/input/input.d.ts +4 -3
  106. package/es/editor/text-box/input/input.mjs +8 -11
  107. package/es/editor/upload/use/use-iview-upload.mjs +3 -4
  108. package/es/locale/en/index.d.ts +13 -0
  109. package/es/locale/en/index.mjs +5 -0
  110. package/es/locale/zh-CN/index.d.ts +13 -0
  111. package/es/locale/zh-CN/index.mjs +5 -0
  112. package/es/panel-component/app-extend-menu/bottom-side-menu/bottom-side-menu.controller.d.ts +10 -0
  113. package/es/panel-component/app-extend-menu/bottom-side-menu/bottom-side-menu.controller.mjs +17 -0
  114. package/es/panel-component/app-extend-menu/bottom-side-menu/bottom-side-menu.css +1 -0
  115. package/es/panel-component/app-extend-menu/bottom-side-menu/bottom-side-menu.d.ts +45 -0
  116. package/es/panel-component/app-extend-menu/bottom-side-menu/bottom-side-menu.mjs +56 -0
  117. package/es/panel-component/app-extend-menu/bottom-side-menu/bottom-side-menu.provider.d.ts +7 -0
  118. package/es/panel-component/app-extend-menu/bottom-side-menu/bottom-side-menu.provider.mjs +21 -0
  119. package/es/panel-component/app-extend-menu/bottom-side-menu/index.d.ts +5 -0
  120. package/es/panel-component/app-extend-menu/bottom-side-menu/index.mjs +16 -0
  121. package/es/panel-component/app-extend-menu/extend-menu-base/common-extend-menu/common-extend-menu.css +1 -0
  122. package/es/panel-component/app-extend-menu/extend-menu-base/common-extend-menu/common-extend-menu.d.ts +135 -0
  123. package/es/panel-component/app-extend-menu/extend-menu-base/common-extend-menu/common-extend-menu.mjs +98 -0
  124. package/es/panel-component/app-extend-menu/extend-menu-base/extend-button-menu/extend-button-menu.css +1 -0
  125. package/es/panel-component/app-extend-menu/extend-menu-base/extend-button-menu/extend-button-menu.d.ts +2030 -0
  126. package/es/panel-component/app-extend-menu/extend-menu-base/extend-button-menu/extend-button-menu.mjs +235 -0
  127. package/es/panel-component/app-extend-menu/extend-menu-base/extend-menu-base.controller.d.ts +149 -0
  128. package/es/panel-component/app-extend-menu/extend-menu-base/extend-menu-base.controller.mjs +258 -0
  129. package/es/panel-component/app-extend-menu/extend-menu-base/extend-menu-base.state.d.ts +27 -0
  130. package/es/panel-component/app-extend-menu/extend-menu-base/extend-menu-base.state.mjs +28 -0
  131. package/es/panel-component/app-extend-menu/extend-menu-base/extend-menu-base.util.d.ts +175 -0
  132. package/es/panel-component/app-extend-menu/extend-menu-base/extend-menu-base.util.mjs +349 -0
  133. package/es/panel-component/app-extend-menu/index.d.ts +5 -0
  134. package/es/panel-component/app-extend-menu/index.mjs +18 -0
  135. package/es/panel-component/app-extend-menu/left-side-menu/index.d.ts +5 -0
  136. package/es/panel-component/app-extend-menu/left-side-menu/index.mjs +16 -0
  137. package/es/panel-component/app-extend-menu/left-side-menu/left-side-menu.controller.d.ts +10 -0
  138. package/es/panel-component/app-extend-menu/left-side-menu/left-side-menu.controller.mjs +17 -0
  139. package/es/panel-component/app-extend-menu/left-side-menu/left-side-menu.css +1 -0
  140. package/es/panel-component/app-extend-menu/left-side-menu/left-side-menu.d.ts +45 -0
  141. package/es/panel-component/app-extend-menu/left-side-menu/left-side-menu.mjs +56 -0
  142. package/es/panel-component/app-extend-menu/left-side-menu/left-side-menu.provider.d.ts +7 -0
  143. package/es/panel-component/app-extend-menu/left-side-menu/left-side-menu.provider.mjs +21 -0
  144. package/es/panel-component/app-extend-menu/right-side-menu/index.d.ts +5 -0
  145. package/es/panel-component/app-extend-menu/right-side-menu/index.mjs +16 -0
  146. package/es/panel-component/app-extend-menu/right-side-menu/right-side-menu.controller.d.ts +10 -0
  147. package/es/panel-component/app-extend-menu/right-side-menu/right-side-menu.controller.mjs +17 -0
  148. package/es/panel-component/app-extend-menu/right-side-menu/right-side-menu.css +1 -0
  149. package/es/panel-component/app-extend-menu/right-side-menu/right-side-menu.d.ts +45 -0
  150. package/es/panel-component/app-extend-menu/right-side-menu/right-side-menu.mjs +56 -0
  151. package/es/panel-component/app-extend-menu/right-side-menu/right-side-menu.provider.d.ts +7 -0
  152. package/es/panel-component/app-extend-menu/right-side-menu/right-side-menu.provider.mjs +21 -0
  153. package/es/panel-component/app-extend-menu/top-side-menu/index.d.ts +5 -0
  154. package/es/panel-component/app-extend-menu/top-side-menu/index.mjs +16 -0
  155. package/es/panel-component/app-extend-menu/top-side-menu/top-side-menu.controller.d.ts +10 -0
  156. package/es/panel-component/app-extend-menu/top-side-menu/top-side-menu.controller.mjs +17 -0
  157. package/es/panel-component/app-extend-menu/top-side-menu/top-side-menu.css +1 -0
  158. package/es/panel-component/app-extend-menu/top-side-menu/top-side-menu.d.ts +45 -0
  159. package/es/panel-component/app-extend-menu/top-side-menu/top-side-menu.mjs +56 -0
  160. package/es/panel-component/app-extend-menu/top-side-menu/top-side-menu.provider.d.ts +7 -0
  161. package/es/panel-component/app-extend-menu/top-side-menu/top-side-menu.provider.mjs +21 -0
  162. package/es/panel-component/index.mjs +2 -0
  163. package/es/util/app-util/app-util.d.ts +6 -0
  164. package/es/util/app-util/app-util.mjs +10 -8
  165. package/es/util/fullscreen/fullscreen-util.mjs +1 -1
  166. package/es/util/notification-util/upload-manager/upload-manager.mjs +1 -5
  167. package/es/view-engine/app-start-view.engine.d.ts +12 -0
  168. package/es/view-engine/app-start-view.engine.mjs +11 -0
  169. package/es/view-engine/app-welcome-view.engine.d.ts +12 -0
  170. package/es/view-engine/app-welcome-view.engine.mjs +11 -0
  171. package/es/view-engine/custom-view.engine.d.ts +2 -10
  172. package/es/view-engine/custom-view.engine.mjs +0 -8
  173. package/es/view-engine/data-view.engine.d.ts +2 -2
  174. package/es/view-engine/data-view.engine.mjs +0 -1
  175. package/es/view-engine/edit-view.engine.d.ts +13 -4
  176. package/es/view-engine/edit-view.engine.mjs +24 -8
  177. package/es/view-engine/edit-view4.engine.mjs +4 -0
  178. package/es/view-engine/gantt-view.engine.d.ts +2 -2
  179. package/es/view-engine/gantt-view.engine.mjs +0 -1
  180. package/es/view-engine/grid-view.engine.d.ts +2 -2
  181. package/es/view-engine/grid-view.engine.mjs +0 -1
  182. package/es/view-engine/index-view.engine.d.ts +2 -2
  183. package/es/view-engine/index-view.engine.mjs +1 -2
  184. package/es/view-engine/index.mjs +10 -0
  185. package/es/view-engine/list-view.engine.d.ts +2 -2
  186. package/es/view-engine/list-view.engine.mjs +0 -1
  187. package/es/view-engine/login-view.engine.d.ts +2 -2
  188. package/es/view-engine/login-view.engine.mjs +2 -0
  189. package/es/view-engine/md-custom-view.engine.d.ts +2 -10
  190. package/es/view-engine/md-custom-view.engine.mjs +0 -8
  191. package/es/view-engine/medit-view9.engine.d.ts +2 -2
  192. package/es/view-engine/medit-view9.engine.mjs +0 -1
  193. package/es/view-engine/mpickup-view-engine.d.ts +2 -2
  194. package/es/view-engine/opt-view.engine.d.ts +19 -4
  195. package/es/view-engine/opt-view.engine.mjs +35 -8
  196. package/es/view-engine/pickup-data-view.engine.d.ts +2 -2
  197. package/es/view-engine/pickup-data-view.engine.mjs +0 -1
  198. package/es/view-engine/pickup-grid-view.engine.d.ts +2 -2
  199. package/es/view-engine/pickup-grid-view.engine.mjs +0 -1
  200. package/es/view-engine/pickup-tree-view.engine.d.ts +2 -2
  201. package/es/view-engine/pickup-view.engine.d.ts +2 -2
  202. package/es/view-engine/portal-view-engine.d.ts +2 -10
  203. package/es/view-engine/portal-view-engine.mjs +0 -8
  204. package/es/view-engine/report-view.engine.d.ts +2 -2
  205. package/es/view-engine/report-view.engine.mjs +0 -1
  206. package/es/view-engine/tab-exp-view.engine.d.ts +2 -2
  207. package/es/view-engine/tab-exp-view.engine.mjs +1 -0
  208. package/es/view-engine/tab-search-view.engine.d.ts +2 -2
  209. package/es/view-engine/tab-search-view.engine.mjs +0 -1
  210. package/es/view-engine/tree-exp-view.engine.d.ts +2 -2
  211. package/es/view-engine/tree-exp-view.engine.mjs +0 -1
  212. package/es/view-engine/tree-grid-ex-view.engine.d.ts +2 -2
  213. package/es/view-engine/tree-grid-ex-view.engine.mjs +0 -1
  214. package/es/view-engine/tree-grid-view.engine.d.ts +2 -2
  215. package/es/view-engine/tree-grid-view.engine.mjs +0 -1
  216. package/es/view-engine/tree-view.engine.d.ts +2 -2
  217. package/es/view-engine/tree-view.engine.mjs +0 -1
  218. package/es/view-engine/wf-dyna-action-view.engine.d.ts +2 -2
  219. package/es/view-engine/wf-dyna-action-view.engine.mjs +0 -1
  220. package/es/view-engine/wf-dyna-start-view.engine.d.ts +2 -2
  221. package/es/view-engine/wf-dyna-start-view.engine.mjs +0 -1
  222. package/es/web-app/util/unauthorized-handler/unauthorized-handler.mjs +1 -1
  223. package/lib/common/data-import2/data-import2.cjs +2 -1
  224. package/lib/common/editor-empty-text/editor-empty-text.cjs +33 -0
  225. package/lib/common/editor-empty-text/editor-empty-text.css +1 -0
  226. package/lib/common/index.cjs +2 -0
  227. package/lib/common/split/split.css +1 -1
  228. package/lib/control/app-menu/app-menu.css +1 -1
  229. package/lib/control/chart/chart.cjs +1 -1
  230. package/lib/control/data-view/data-view.cjs +34 -8
  231. package/lib/control/data-view/data-view.css +1 -1
  232. package/lib/control/drbar/drbar.controller.cjs +5 -5
  233. package/lib/control/drtab/drtab-control.util.cjs +1 -1
  234. package/lib/control/drtab/drtab.cjs +7 -1
  235. package/lib/control/drtab/drtab.controller.cjs +3 -5
  236. package/lib/control/exp-bar/render-util.cjs +12 -1
  237. package/lib/control/form/form-detail/form-item/form-item-container/form-item-container.cjs +25 -4
  238. package/lib/control/form/form-detail/form-item/form-item-container/form-item-container.css +1 -1
  239. package/lib/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/repeater-multi-form/repeater-multi-form.cjs +1 -0
  240. package/lib/control/form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.cjs +62 -12
  241. package/lib/control/form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.css +1 -1
  242. package/lib/control/grid/grid/grid-control.util.cjs +31 -4
  243. package/lib/control/grid/grid/grid.cjs +9 -7
  244. package/lib/control/grid/grid/grid.css +1 -1
  245. package/lib/control/grid/row-edit-popover/use-row-edit-popover.cjs +1 -1
  246. package/lib/control/kanban/kanban.cjs +14 -9
  247. package/lib/control/kanban/kanban.css +1 -1
  248. package/lib/control/kanban/lane-kanban/lane-kanban.cjs +411 -0
  249. package/lib/control/kanban/lane-kanban/lane-kanban.css +1 -0
  250. package/lib/control/list/list.cjs +16 -19
  251. package/lib/control/list/list.css +1 -1
  252. package/lib/control/toolbar/toolbar.cjs +232 -132
  253. package/lib/control/toolbar/toolbar.css +1 -1
  254. package/lib/control/tree/el-tree-util.cjs +66 -0
  255. package/lib/control/tree/tree.cjs +150 -14
  256. package/lib/control/tree/tree.css +1 -1
  257. package/lib/control/tree-grid/tree-grid.cjs +1 -1
  258. package/lib/control/tree-grid-ex/use-row-edit-popover.cjs +1 -1
  259. package/lib/control/wizard-panel/wizard-panel.cjs +23 -7
  260. package/lib/control/wizard-panel/wizard-panel.css +1 -1
  261. package/lib/editor/autocomplete/ibiz-autocomplete/ibiz-autocomplete.cjs +5 -2
  262. package/lib/editor/cascader/ibiz-cascader/ibiz-cascader.cjs +7 -1
  263. package/lib/editor/check-box/ibiz-checkbox/ibiz-checkbox.cjs +8 -2
  264. package/lib/editor/check-box-list/checkbox-list-editor.controller.cjs +4 -1
  265. package/lib/editor/code/monaco-editor/monaco-editor.cjs +1 -7
  266. package/lib/editor/data-picker/ibiz-mpicker/ibiz-mpicker.cjs +4 -1
  267. package/lib/editor/data-picker/ibiz-picker/ibiz-picker.cjs +13 -14
  268. package/lib/editor/data-picker/ibiz-picker-dropdown/ibiz-picker-dropdown.cjs +18 -18
  269. package/lib/editor/data-picker/ibiz-picker-embed-view/ibiz-picker-embed-view.cjs +6 -0
  270. package/lib/editor/data-picker/ibiz-picker-link/ibiz-picker-link.cjs +11 -10
  271. package/lib/editor/data-picker/ibiz-picker-select-view/ibiz-picker-select-view.cjs +4 -1
  272. package/lib/editor/date-picker/ibiz-date-picker/ibiz-date-picker.cjs +4 -1
  273. package/lib/editor/date-range/ibiz-date-range-picker/ibiz-date-range-picker.cjs +13 -1
  274. package/lib/editor/dropdown-list/dropdown-list-editor.controller.cjs +14 -3
  275. package/lib/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.cjs +26 -20
  276. package/lib/editor/dropdown-list/ibiz-emoji-picker/ibiz-emoji-picker.cjs +4 -1
  277. package/lib/editor/html/wang-editor/wang-editor.cjs +4 -9
  278. package/lib/editor/map-picker/ibiz-map-picker/ibiz-map-picker.cjs +4 -1
  279. package/lib/editor/markdown/ibiz-markdown-editor/ibiz-markdown-editor.cjs +2 -2
  280. package/lib/editor/number-range/ibiz-number-range-picker/ibiz-number-range-picker.cjs +4 -1
  281. package/lib/editor/radio-button-list/ibiz-radio/ibiz-radio.cjs +6 -0
  282. package/lib/editor/radio-button-list/radio-button-list.controller.cjs +4 -1
  283. package/lib/editor/rate/ibiz-rate/ibiz-rate.cjs +3 -0
  284. package/lib/editor/raw/ibiz-raw/ibiz-raw.cjs +2 -0
  285. package/lib/editor/slider/ibiz-slider/ibiz-slider.cjs +14 -2
  286. package/lib/editor/span/span/span.cjs +7 -4
  287. package/lib/editor/stepper/ibiz-stepper/ibiz-stepper.cjs +2 -1
  288. package/lib/editor/text-box/ibiz-input-number/ibiz-input-number.cjs +5 -2
  289. package/lib/editor/text-box/input/input.cjs +7 -10
  290. package/lib/editor/upload/use/use-iview-upload.cjs +2 -3
  291. package/lib/locale/en/index.cjs +5 -0
  292. package/lib/locale/zh-CN/index.cjs +5 -0
  293. package/lib/panel-component/app-extend-menu/bottom-side-menu/bottom-side-menu.cjs +58 -0
  294. package/lib/panel-component/app-extend-menu/bottom-side-menu/bottom-side-menu.controller.cjs +19 -0
  295. package/lib/panel-component/app-extend-menu/bottom-side-menu/bottom-side-menu.css +1 -0
  296. package/lib/panel-component/app-extend-menu/bottom-side-menu/bottom-side-menu.provider.cjs +23 -0
  297. package/lib/panel-component/app-extend-menu/bottom-side-menu/index.cjs +20 -0
  298. package/lib/panel-component/app-extend-menu/extend-menu-base/common-extend-menu/common-extend-menu.cjs +100 -0
  299. package/lib/panel-component/app-extend-menu/extend-menu-base/common-extend-menu/common-extend-menu.css +1 -0
  300. package/lib/panel-component/app-extend-menu/extend-menu-base/extend-button-menu/extend-button-menu.cjs +237 -0
  301. package/lib/panel-component/app-extend-menu/extend-menu-base/extend-button-menu/extend-button-menu.css +1 -0
  302. package/lib/panel-component/app-extend-menu/extend-menu-base/extend-menu-base.controller.cjs +260 -0
  303. package/lib/panel-component/app-extend-menu/extend-menu-base/extend-menu-base.state.cjs +30 -0
  304. package/lib/panel-component/app-extend-menu/extend-menu-base/extend-menu-base.util.cjs +355 -0
  305. package/lib/panel-component/app-extend-menu/index.cjs +22 -0
  306. package/lib/panel-component/app-extend-menu/left-side-menu/index.cjs +20 -0
  307. package/lib/panel-component/app-extend-menu/left-side-menu/left-side-menu.cjs +58 -0
  308. package/lib/panel-component/app-extend-menu/left-side-menu/left-side-menu.controller.cjs +19 -0
  309. package/lib/panel-component/app-extend-menu/left-side-menu/left-side-menu.css +1 -0
  310. package/lib/panel-component/app-extend-menu/left-side-menu/left-side-menu.provider.cjs +23 -0
  311. package/lib/panel-component/app-extend-menu/right-side-menu/index.cjs +20 -0
  312. package/lib/panel-component/app-extend-menu/right-side-menu/right-side-menu.cjs +58 -0
  313. package/lib/panel-component/app-extend-menu/right-side-menu/right-side-menu.controller.cjs +19 -0
  314. package/lib/panel-component/app-extend-menu/right-side-menu/right-side-menu.css +1 -0
  315. package/lib/panel-component/app-extend-menu/right-side-menu/right-side-menu.provider.cjs +23 -0
  316. package/lib/panel-component/app-extend-menu/top-side-menu/index.cjs +20 -0
  317. package/lib/panel-component/app-extend-menu/top-side-menu/top-side-menu.cjs +58 -0
  318. package/lib/panel-component/app-extend-menu/top-side-menu/top-side-menu.controller.cjs +19 -0
  319. package/lib/panel-component/app-extend-menu/top-side-menu/top-side-menu.css +1 -0
  320. package/lib/panel-component/app-extend-menu/top-side-menu/top-side-menu.provider.cjs +23 -0
  321. package/lib/panel-component/index.cjs +2 -0
  322. package/lib/util/app-util/app-util.cjs +9 -7
  323. package/lib/util/fullscreen/fullscreen-util.cjs +1 -1
  324. package/lib/util/notification-util/upload-manager/upload-manager.cjs +1 -5
  325. package/lib/view-engine/app-start-view.engine.cjs +13 -0
  326. package/lib/view-engine/app-welcome-view.engine.cjs +13 -0
  327. package/lib/view-engine/custom-view.engine.cjs +0 -8
  328. package/lib/view-engine/data-view.engine.cjs +0 -1
  329. package/lib/view-engine/edit-view.engine.cjs +24 -8
  330. package/lib/view-engine/edit-view4.engine.cjs +4 -0
  331. package/lib/view-engine/gantt-view.engine.cjs +0 -1
  332. package/lib/view-engine/grid-view.engine.cjs +0 -1
  333. package/lib/view-engine/index-view.engine.cjs +1 -2
  334. package/lib/view-engine/index.cjs +10 -0
  335. package/lib/view-engine/list-view.engine.cjs +0 -1
  336. package/lib/view-engine/login-view.engine.cjs +2 -0
  337. package/lib/view-engine/md-custom-view.engine.cjs +0 -8
  338. package/lib/view-engine/medit-view9.engine.cjs +0 -1
  339. package/lib/view-engine/opt-view.engine.cjs +35 -8
  340. package/lib/view-engine/pickup-data-view.engine.cjs +0 -1
  341. package/lib/view-engine/pickup-grid-view.engine.cjs +0 -1
  342. package/lib/view-engine/portal-view-engine.cjs +0 -8
  343. package/lib/view-engine/report-view.engine.cjs +0 -1
  344. package/lib/view-engine/tab-exp-view.engine.cjs +1 -0
  345. package/lib/view-engine/tab-search-view.engine.cjs +0 -1
  346. package/lib/view-engine/tree-exp-view.engine.cjs +0 -1
  347. package/lib/view-engine/tree-grid-ex-view.engine.cjs +0 -1
  348. package/lib/view-engine/tree-grid-view.engine.cjs +0 -1
  349. package/lib/view-engine/tree-view.engine.cjs +0 -1
  350. package/lib/view-engine/wf-dyna-action-view.engine.cjs +0 -1
  351. package/lib/view-engine/wf-dyna-start-view.engine.cjs +0 -1
  352. package/lib/web-app/util/unauthorized-handler/unauthorized-handler.cjs +1 -1
  353. package/package.json +8 -8
  354. package/dist/chart-GgAfcR6o.js +0 -1
  355. package/dist/ibiz-markdown-editor--ivCvp3a.js +0 -1
  356. package/dist/index-eIKUlAq_.js +0 -4
  357. package/dist/wang-editor-6EirGFoh.js +0 -1
  358. /package/es/node_modules/.pnpm/{@ibiz-template_core@0.7.41-alpha.1_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.41-alpha.9_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
  359. /package/lib/node_modules/.pnpm/{@ibiz-template_core@0.7.41-alpha.1_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.41-alpha.9_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
@@ -0,0 +1,235 @@
1
+ import { createVNode, resolveComponent, ref, computed, defineComponent } from 'vue';
2
+ import { useNamespace } from '@ibiz-template/vue3-util';
3
+ import { showTitle } from '@ibiz-template/core';
4
+ import { getMenuLayout, getMenus, useCascaderPopover, useBorderLayout, findMenuItem } from '../extend-menu-base.util.mjs';
5
+ import './extend-button-menu.css';
6
+
7
+ "use strict";
8
+ const rightArrow = () => createVNode("svg", {
9
+ "xmlns": "http://www.w3.org/2000/svg",
10
+ "viewBox": "0 0 1024 1024",
11
+ "width": "1em",
12
+ "height": "1em",
13
+ "fill": "currentColor"
14
+ }, [createVNode("path", {
15
+ "fill": "currentColor",
16
+ "d": "M340.864 149.312a30.592 30.592 0 0 0 0 42.752L652.736 512 340.864 831.872a30.592 30.592 0 0 0 0 42.752 29.12 29.12 0 0 0 41.728 0L714.24 534.336a32 32 0 0 0 0-44.672L382.592 149.376a29.12 29.12 0 0 0-41.728 0z"
17
+ }, null)]);
18
+ function renderMenuItem(params) {
19
+ var _a, _b, _c;
20
+ const {
21
+ ns,
22
+ menu,
23
+ menuAlign,
24
+ menuItemsState
25
+ } = params;
26
+ if (!menu.id || !((_a = menuItemsState[menu.id]) == null ? void 0 : _a.visible))
27
+ return;
28
+ if (menu.itemType === "MENUITEM") {
29
+ return createVNode(resolveComponent("el-button"), {
30
+ "class": [ns.e("menuitem"), "".concat(((_b = menu.sysCss) == null ? void 0 : _b.cssName) || "")],
31
+ "index": menu.id
32
+ }, {
33
+ default: () => [menu.sysImage && createVNode(resolveComponent("iBizIcon"), {
34
+ "class": ns.e("icon"),
35
+ "icon": menu.sysImage
36
+ }, null), menu.caption && createVNode("span", {
37
+ "class": ns.e("caption"),
38
+ "title": showTitle(menu.tooltip)
39
+ }, [menu.caption])]
40
+ });
41
+ }
42
+ if (menu.itemType === "SEPERATOR") {
43
+ const direction = menuAlign === "horizontal" ? "vertical" : "horizontal";
44
+ return createVNode(resolveComponent("el-divider"), {
45
+ "direction": direction,
46
+ "class": [ns.em("separator"), ns.em("separator", direction)],
47
+ "id": menu.id
48
+ }, null);
49
+ }
50
+ if (menu.itemType === "RAWITEM") {
51
+ return createVNode(resolveComponent("el-button"), {
52
+ "index": menu.id,
53
+ "title": showTitle(menu.tooltip),
54
+ "class": [ns.e("rawitem"), "".concat(((_c = menu.sysCss) == null ? void 0 : _c.cssName) || "")]
55
+ }, {
56
+ default: () => [createVNode(resolveComponent("iBizRawItem"), {
57
+ "rawItem": menu
58
+ }, null)]
59
+ });
60
+ }
61
+ }
62
+ function renderMenuContent(_params) {
63
+ const {
64
+ ns,
65
+ isLayout,
66
+ menuLayout,
67
+ position,
68
+ menuAlign,
69
+ menus,
70
+ menuItemsState,
71
+ showCascaderArrow,
72
+ handleMenuItemClick,
73
+ handleMenuItemMouseEnter,
74
+ handleMenuItemMouseLeave
75
+ } = _params;
76
+ const layoutStyle = isLayout ? getMenuLayout(menuLayout) : {};
77
+ return createVNode(resolveComponent("el-row"), {
78
+ "class": [ns.e("content"), ns.is(menuAlign, !!menuAlign), ns.is(position == null ? void 0 : position.toLowerCase(), !!position)],
79
+ "style": layoutStyle
80
+ }, {
81
+ default: () => menus.map((menu) => {
82
+ var _a, _b;
83
+ const menuItem = renderMenuItem({
84
+ menu,
85
+ ns,
86
+ menuAlign,
87
+ menuItemsState
88
+ });
89
+ if (!menuItem)
90
+ return;
91
+ const style = {};
92
+ if (isLayout && ((_a = menu.layoutPos) == null ? void 0 : _a.layout) === "FLEX") {
93
+ const pos = menu.layoutPos;
94
+ Object.assign(style, {
95
+ flexGrow: pos.grow,
96
+ flexShrink: pos.shrink === 1 ? void 0 : pos.shrink,
97
+ flexBasis: pos.basis
98
+ });
99
+ }
100
+ const isShowArrow = !!(showCascaderArrow && menu.children);
101
+ return createVNode("div", {
102
+ "class": [ns.em("content", "item"), ns.em("content", (_b = menu.itemType) == null ? void 0 : _b.toLowerCase()), ns.is("show-arrow", isShowArrow)],
103
+ "style": style
104
+ }, [createVNode("div", {
105
+ "class": ns.em("content", "item-container"),
106
+ "onMouseenter": (_e) => handleMenuItemMouseEnter(menu, _e),
107
+ "onMouseleave": (_e) => handleMenuItemMouseLeave(menu, _e),
108
+ "onClick": (_e) => handleMenuItemClick(menu, _e)
109
+ }, [menuItem]), isShowArrow && createVNode("span", {
110
+ "class": ns.em("content", "item-arrow")
111
+ }, [rightArrow()])]);
112
+ })
113
+ });
114
+ }
115
+ const ExtendButtonMenu = /* @__PURE__ */ defineComponent({
116
+ name: "IBizExtendButtonMenu",
117
+ props: {
118
+ items: {
119
+ type: Object,
120
+ required: true
121
+ },
122
+ menuItemsState: {
123
+ type: Object,
124
+ required: true
125
+ },
126
+ providers: {
127
+ type: Object,
128
+ required: true
129
+ },
130
+ position: {
131
+ type: String,
132
+ required: true
133
+ },
134
+ layoutMode: {
135
+ type: String,
136
+ required: true
137
+ },
138
+ layout: {
139
+ type: Object
140
+ }
141
+ },
142
+ emits: {
143
+ menuItemClick: (item, event) => true
144
+ },
145
+ setup(props, {
146
+ emit
147
+ }) {
148
+ const ns = useNamespace("extend-menu-button");
149
+ const buttonMenuRef = ref();
150
+ const menuAlign = computed(() => ["TOP", "BOTTOM"].includes(props.position) ? "horizontal" : "vertical");
151
+ const isLayout = computed(() => props.layoutMode !== "BORDER");
152
+ const menus = ref(getMenus(props.items));
153
+ const renderCascaderContent = (_menu) => {
154
+ return renderMenuContent({
155
+ ns,
156
+ menuAlign: "vertical",
157
+ position: props.position,
158
+ menus: _menu.children,
159
+ menuItemsState: props.menuItemsState,
160
+ handleMenuItemClick,
161
+ handleMenuItemMouseEnter,
162
+ handleMenuItemMouseLeave,
163
+ showCascaderArrow: true,
164
+ isLayout: false
165
+ });
166
+ };
167
+ const renderBorderContent = () => {
168
+ return renderMenuContent({
169
+ ns,
170
+ menuAlign: menuAlign.value,
171
+ position: props.position,
172
+ menus: menus.value,
173
+ menuItemsState: props.menuItemsState,
174
+ handleMenuItemClick,
175
+ handleMenuItemMouseEnter,
176
+ handleMenuItemMouseLeave,
177
+ showCascaderArrow: true,
178
+ isLayout: false
179
+ });
180
+ };
181
+ const {
182
+ getOverlayNum,
183
+ clearAllCascader,
184
+ handleMenuItemMouseEnter,
185
+ handleMenuItemMouseLeave
186
+ } = useCascaderPopover(props, ns, menuAlign, renderCascaderContent);
187
+ let closeBorderPopover;
188
+ if (props.layoutMode === "BORDER") {
189
+ const borderLayout = useBorderLayout(buttonMenuRef, ns, props.position, menuAlign, getOverlayNum, renderBorderContent);
190
+ closeBorderPopover = borderLayout.closeBorderPopover;
191
+ }
192
+ const handleMenuItemClick = async (_menu, _event) => {
193
+ if (_menu.children)
194
+ return;
195
+ clearAllCascader();
196
+ if (closeBorderPopover)
197
+ closeBorderPopover();
198
+ if (!_menu.appFuncId) {
199
+ ibiz.log.warn(ibiz.i18n.t("runtime.controller.control.menu.noConfigured"));
200
+ return;
201
+ }
202
+ const menuItem = findMenuItem(_menu.id, props.items);
203
+ emit("menuItemClick", menuItem, _event);
204
+ };
205
+ return {
206
+ ns,
207
+ menus,
208
+ menuAlign,
209
+ isLayout,
210
+ buttonMenuRef,
211
+ handleMenuItemClick,
212
+ handleMenuItemMouseEnter,
213
+ handleMenuItemMouseLeave
214
+ };
215
+ },
216
+ render() {
217
+ return createVNode("div", {
218
+ "ref": "buttonMenuRef",
219
+ "class": [this.ns.b(), this.ns.is(this.layoutMode.toLowerCase(), !!this.layoutMode), this.ns.is(this.position.toLowerCase(), !!this.position), this.ns.is(this.menuAlign, !!this.menuAlign)]
220
+ }, [this.layoutMode !== "BORDER" && renderMenuContent({
221
+ ns: this.ns,
222
+ menuAlign: this.menuAlign,
223
+ isLayout: this.isLayout,
224
+ menuLayout: this.layout,
225
+ position: this.position,
226
+ menus: this.menus,
227
+ menuItemsState: this.menuItemsState,
228
+ handleMenuItemClick: this.handleMenuItemClick,
229
+ handleMenuItemMouseEnter: this.handleMenuItemMouseEnter,
230
+ handleMenuItemMouseLeave: this.handleMenuItemMouseLeave
231
+ })]);
232
+ }
233
+ });
234
+
235
+ export { ExtendButtonMenu };
@@ -0,0 +1,149 @@
1
+ import { IAppMenuItemProvider, IAppService, IViewController, PanelItemController } from '@ibiz-template/runtime';
2
+ import { IAppMenu, IAppMenuItem, IPanelRawItem } from '@ibiz/model-core';
3
+ import { ExtendMenuBase } from './extend-menu-base.state';
4
+ /**
5
+ * @description 扩展菜单状态控制器基类
6
+ * @export
7
+ * @class ExtendMenuBaseController
8
+ * @extends {PanelItemController<IPanelRawItem>}
9
+ */
10
+ export declare class ExtendMenuBaseController extends PanelItemController<IPanelRawItem> {
11
+ /**
12
+ * @description 状态对象
13
+ * @type {ExtendMenuBase}
14
+ * @memberof AppSwitchController
15
+ */
16
+ state: ExtendMenuBase;
17
+ /**
18
+ * @description 自定义补充参数
19
+ * @type {IData}
20
+ * @memberof ExtendMenuBaseController
21
+ */
22
+ rawItemParams: IData;
23
+ /**
24
+ * @description 当前菜单名称
25
+ * @protected
26
+ * @type {string}
27
+ * @memberof ExtendMenuBaseController
28
+ */
29
+ protected appMenuName: string;
30
+ /**
31
+ * @description 菜单模型
32
+ * @protected
33
+ * @type {(IAppMenu | undefined)}
34
+ * @memberof ExtendMenuBaseController
35
+ */
36
+ appMenu: IAppMenu | undefined;
37
+ /**
38
+ * @description 当前应用
39
+ * @protected
40
+ * @type {IAppService}
41
+ * @memberof ExtendMenuBaseController
42
+ */
43
+ protected app: IAppService;
44
+ /**
45
+ * @description 菜单项适配器集合
46
+ * @type {{ [key: string]: IAppMenuItemProvider }}
47
+ * @memberof ExtendMenuBaseController
48
+ */
49
+ itemProviders: {
50
+ [key: string]: IAppMenuItemProvider;
51
+ };
52
+ /**
53
+ * @description 所有菜单项,平铺开
54
+ * @type {IAppMenuItem[]}
55
+ * @memberof ExtendMenuBaseController
56
+ */
57
+ allAppMenuItems: IAppMenuItem[];
58
+ /**
59
+ * @description 获取当前视图
60
+ * @readonly
61
+ * @type {IViewController}
62
+ * @memberof ExtendMenuBaseController
63
+ */
64
+ get view(): IViewController;
65
+ /**
66
+ * @description 视图层级
67
+ * @readonly
68
+ * @type {(number | undefined)}
69
+ * @memberof ExtendMenuBaseController
70
+ */
71
+ get routeDepth(): number | undefined;
72
+ /**
73
+ * @description 上下文对象
74
+ * @readonly
75
+ * @type {IContext}
76
+ * @memberof ExtendMenuBaseController
77
+ */
78
+ get context(): IContext;
79
+ /**
80
+ * @description 视图参数
81
+ * @readonly
82
+ * @type {IParams}
83
+ * @memberof ExtendMenuBaseController
84
+ */
85
+ get params(): IParams;
86
+ /**
87
+ * @description 创建状态对象
88
+ * @protected
89
+ * @returns {*} {ExtendMenuBase}
90
+ * @memberof ExtendMenuBaseController
91
+ */
92
+ protected createState(): ExtendMenuBase;
93
+ /**
94
+ * @description 初始化
95
+ * @protected
96
+ * @returns {*} {Promise<void>}
97
+ * @memberof ExtendMenuBaseController
98
+ */
99
+ protected onInit(): Promise<void>;
100
+ /**
101
+ * @description 计算当前菜单模型
102
+ * @protected
103
+ * @returns {*} {(IAppMenu | undefined)}
104
+ * @memberof ExtendMenuBaseController
105
+ */
106
+ protected computeAppMenu(): IAppMenu | undefined;
107
+ /**
108
+ * @description 平铺所有菜单项
109
+ * @protected
110
+ * @returns {*} {void}
111
+ * @memberof ExtendMenuBaseController
112
+ */
113
+ protected flattenAllItems(): void;
114
+ /**
115
+ * @description 初始化菜单项的适配器
116
+ * @protected
117
+ * @returns {*} {Promise<void>}
118
+ * @memberof ExtendMenuBaseController
119
+ */
120
+ protected initAppMenuItemProviders(): Promise<void>;
121
+ /**
122
+ * @description 初始化菜单项状态
123
+ * @param {IAppMenuItem} menu
124
+ * @returns {*} {{
125
+ * visible: boolean;
126
+ * permitted: boolean;
127
+ * }}
128
+ * @memberof ExtendMenuBaseController
129
+ */
130
+ initMenuItemState(menu: IAppMenuItem): {
131
+ visible: boolean;
132
+ permitted: boolean;
133
+ };
134
+ /**
135
+ * @description 处理菜单项点击,触发对应的应用功能
136
+ * @param {IAppMenuItem} menuItem
137
+ * @param {MouseEvent} event
138
+ * @param {boolean} [useDepth=true]
139
+ * @returns {*} {Promise<void>}
140
+ * @memberof ExtendMenuBaseController
141
+ */
142
+ handleClickMenuItem(menuItem: IAppMenuItem, event: MouseEvent, useDepth?: boolean): Promise<void>;
143
+ /**
144
+ * @description 处理自定义补充参数
145
+ * @protected
146
+ * @memberof ExtendMenuBaseController
147
+ */
148
+ protected handleRawItemParams(): void;
149
+ }
@@ -0,0 +1,258 @@
1
+ import { notNilEmpty } from 'qx-util';
2
+ import { PanelItemController, getControl, getAppMenuItemProvider, AppFuncCommand } from '@ibiz-template/runtime';
3
+ import { RuntimeModelError } from '@ibiz-template/core';
4
+ import { ExtendMenuBase } from './extend-menu-base.state.mjs';
5
+
6
+ "use strict";
7
+ var __defProp = Object.defineProperty;
8
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
9
+ var __publicField = (obj, key, value) => {
10
+ __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
11
+ return value;
12
+ };
13
+ class ExtendMenuBaseController extends PanelItemController {
14
+ constructor() {
15
+ super(...arguments);
16
+ /**
17
+ * @description 自定义补充参数
18
+ * @type {IData}
19
+ * @memberof ExtendMenuBaseController
20
+ */
21
+ __publicField(this, "rawItemParams", { rendermode: "BUTTON" });
22
+ /**
23
+ * @description 当前菜单名称
24
+ * @protected
25
+ * @type {string}
26
+ * @memberof ExtendMenuBaseController
27
+ */
28
+ __publicField(this, "appMenuName", "");
29
+ /**
30
+ * @description 菜单模型
31
+ * @protected
32
+ * @type {(IAppMenu | undefined)}
33
+ * @memberof ExtendMenuBaseController
34
+ */
35
+ __publicField(this, "appMenu");
36
+ /**
37
+ * @description 当前应用
38
+ * @protected
39
+ * @type {IAppService}
40
+ * @memberof ExtendMenuBaseController
41
+ */
42
+ __publicField(this, "app");
43
+ /**
44
+ * @description 菜单项适配器集合
45
+ * @type {{ [key: string]: IAppMenuItemProvider }}
46
+ * @memberof ExtendMenuBaseController
47
+ */
48
+ __publicField(this, "itemProviders", {});
49
+ /**
50
+ * @description 所有菜单项,平铺开
51
+ * @type {IAppMenuItem[]}
52
+ * @memberof ExtendMenuBaseController
53
+ */
54
+ __publicField(this, "allAppMenuItems", []);
55
+ }
56
+ /**
57
+ * @description 获取当前视图
58
+ * @readonly
59
+ * @type {IViewController}
60
+ * @memberof ExtendMenuBaseController
61
+ */
62
+ get view() {
63
+ return this.panel.view;
64
+ }
65
+ /**
66
+ * @description 视图层级
67
+ * @readonly
68
+ * @type {(number | undefined)}
69
+ * @memberof ExtendMenuBaseController
70
+ */
71
+ get routeDepth() {
72
+ return this.view.modal.routeDepth;
73
+ }
74
+ /**
75
+ * @description 上下文对象
76
+ * @readonly
77
+ * @type {IContext}
78
+ * @memberof ExtendMenuBaseController
79
+ */
80
+ get context() {
81
+ return this.panel.context;
82
+ }
83
+ /**
84
+ * @description 视图参数
85
+ * @readonly
86
+ * @type {IParams}
87
+ * @memberof ExtendMenuBaseController
88
+ */
89
+ get params() {
90
+ return this.panel.params;
91
+ }
92
+ /**
93
+ * @description 创建状态对象
94
+ * @protected
95
+ * @returns {*} {ExtendMenuBase}
96
+ * @memberof ExtendMenuBaseController
97
+ */
98
+ createState() {
99
+ var _a;
100
+ return new ExtendMenuBase((_a = this.parent) == null ? void 0 : _a.state);
101
+ }
102
+ /**
103
+ * @description 初始化
104
+ * @protected
105
+ * @returns {*} {Promise<void>}
106
+ * @memberof ExtendMenuBaseController
107
+ */
108
+ async onInit() {
109
+ var _a, _b;
110
+ await super.onInit();
111
+ this.handleRawItemParams();
112
+ this.app = await ibiz.hub.getApp(this.context.srfappid);
113
+ this.appMenu = this.computeAppMenu();
114
+ this.state.items = this.appMenu && this.appMenu.appMenuItems ? this.appMenu.appMenuItems : [];
115
+ this.flattenAllItems();
116
+ await this.initAppMenuItemProviders();
117
+ (_b = (_a = this.appMenu) == null ? void 0 : _a.appMenuItems) == null ? void 0 : _b.forEach((item) => {
118
+ this.initMenuItemState(item);
119
+ });
120
+ }
121
+ /**
122
+ * @description 计算当前菜单模型
123
+ * @protected
124
+ * @returns {*} {(IAppMenu | undefined)}
125
+ * @memberof ExtendMenuBaseController
126
+ */
127
+ computeAppMenu() {
128
+ return getControl(this.view.model, this.appMenuName);
129
+ }
130
+ /**
131
+ * @description 平铺所有菜单项
132
+ * @protected
133
+ * @returns {*} {void}
134
+ * @memberof ExtendMenuBaseController
135
+ */
136
+ flattenAllItems() {
137
+ if (!this.appMenu)
138
+ return;
139
+ const result = [];
140
+ const flattenMenus = (menuItems) => {
141
+ menuItems.forEach((item) => {
142
+ result.push(item);
143
+ if (item.appMenuItems && item.appMenuItems.length > 0) {
144
+ flattenMenus(item.appMenuItems);
145
+ }
146
+ });
147
+ };
148
+ flattenMenus(this.appMenu.appMenuItems);
149
+ this.allAppMenuItems = result;
150
+ }
151
+ /**
152
+ * @description 初始化菜单项的适配器
153
+ * @protected
154
+ * @returns {*} {Promise<void>}
155
+ * @memberof ExtendMenuBaseController
156
+ */
157
+ async initAppMenuItemProviders() {
158
+ if (this.allAppMenuItems.length === 0)
159
+ return;
160
+ await Promise.all(
161
+ this.allAppMenuItems.map(async (item) => {
162
+ const provider = await getAppMenuItemProvider(item);
163
+ if (provider) {
164
+ this.itemProviders[item.id] = provider;
165
+ }
166
+ })
167
+ );
168
+ }
169
+ /**
170
+ * @description 初始化菜单项状态
171
+ * @param {IAppMenuItem} menu
172
+ * @returns {*} {{
173
+ * visible: boolean;
174
+ * permitted: boolean;
175
+ * }}
176
+ * @memberof ExtendMenuBaseController
177
+ */
178
+ initMenuItemState(menu) {
179
+ var _a;
180
+ const result = { permitted: true, visible: true };
181
+ if (menu.hidden) {
182
+ result.visible = false;
183
+ } else {
184
+ let permitted = true;
185
+ if (menu.accessKey) {
186
+ permitted = this.app.authority.calcByResCode(menu.accessKey);
187
+ }
188
+ let visible = permitted;
189
+ if ((_a = menu.appMenuItems) == null ? void 0 : _a.length) {
190
+ const childrenState = menu.appMenuItems.map((child) => {
191
+ return this.initMenuItemState(child).visible;
192
+ });
193
+ visible = visible && childrenState.includes(true);
194
+ }
195
+ result.permitted = permitted;
196
+ result.visible = visible;
197
+ }
198
+ this.state.menuItemsState[menu.id] = result;
199
+ return result;
200
+ }
201
+ /**
202
+ * @description 处理菜单项点击,触发对应的应用功能
203
+ * @param {IAppMenuItem} menuItem
204
+ * @param {MouseEvent} event
205
+ * @param {boolean} [useDepth=true]
206
+ * @returns {*} {Promise<void>}
207
+ * @memberof ExtendMenuBaseController
208
+ */
209
+ async handleClickMenuItem(menuItem, event, useDepth = true) {
210
+ if (!menuItem) {
211
+ return;
212
+ }
213
+ const provider = this.itemProviders[menuItem.id];
214
+ if (provider && provider.onClick) {
215
+ return provider.onClick(menuItem, event);
216
+ }
217
+ if (!menuItem.appFuncId) {
218
+ throw new RuntimeModelError(
219
+ menuItem,
220
+ ibiz.i18n.t("runtime.controller.control.menu.noConfigured")
221
+ );
222
+ }
223
+ const tempContext = this.context.clone();
224
+ tempContext.srfappid = menuItem.appId || ibiz.env.appId;
225
+ if (this.routeDepth && useDepth) {
226
+ Object.assign(tempContext, {
227
+ toRouteDepth: this.routeDepth + 1
228
+ });
229
+ }
230
+ const param = { ...this.params };
231
+ await ibiz.commands.execute(
232
+ AppFuncCommand.TAG,
233
+ menuItem.appFuncId,
234
+ tempContext,
235
+ param,
236
+ { view: this.view }
237
+ );
238
+ }
239
+ /**
240
+ * @description 处理自定义补充参数
241
+ * @protected
242
+ * @memberof ExtendMenuBaseController
243
+ */
244
+ handleRawItemParams() {
245
+ var _a;
246
+ let params = {};
247
+ const rawItemParams = (_a = this.model.rawItem) == null ? void 0 : _a.rawItemParams;
248
+ if (notNilEmpty(rawItemParams)) {
249
+ params = rawItemParams.reduce((param, item) => {
250
+ param[item.key.toLowerCase()] = item.value;
251
+ return param;
252
+ }, {});
253
+ }
254
+ Object.assign(this.rawItemParams, params);
255
+ }
256
+ }
257
+
258
+ export { ExtendMenuBaseController };
@@ -0,0 +1,27 @@
1
+ import { PanelItemState } from '@ibiz-template/runtime';
2
+ import { IAppMenuItem } from '@ibiz/model-core';
3
+ /**
4
+ * @description 扩展菜单状态基类
5
+ * @export
6
+ * @class ExtendMenuBase
7
+ * @extends {PanelItemState}
8
+ */
9
+ export declare class ExtendMenuBase extends PanelItemState {
10
+ /**
11
+ * @description 所有菜单项
12
+ * @type {IAppMenuItem[]}
13
+ * @memberof ExtendMenuBase
14
+ */
15
+ items: IAppMenuItem[];
16
+ /**
17
+ * @description 菜单项状态
18
+ * @type {{ [p: string]: { visible: boolean; permitted: boolean } }}
19
+ * @memberof ExtendMenuBase
20
+ */
21
+ menuItemsState: {
22
+ [p: string]: {
23
+ visible: boolean;
24
+ permitted: boolean;
25
+ };
26
+ };
27
+ }
@@ -0,0 +1,28 @@
1
+ import { PanelItemState } from '@ibiz-template/runtime';
2
+
3
+ "use strict";
4
+ var __defProp = Object.defineProperty;
5
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
6
+ var __publicField = (obj, key, value) => {
7
+ __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
8
+ return value;
9
+ };
10
+ class ExtendMenuBase extends PanelItemState {
11
+ constructor() {
12
+ super(...arguments);
13
+ /**
14
+ * @description 所有菜单项
15
+ * @type {IAppMenuItem[]}
16
+ * @memberof ExtendMenuBase
17
+ */
18
+ __publicField(this, "items", []);
19
+ /**
20
+ * @description 菜单项状态
21
+ * @type {{ [p: string]: { visible: boolean; permitted: boolean } }}
22
+ * @memberof ExtendMenuBase
23
+ */
24
+ __publicField(this, "menuItemsState", {});
25
+ }
26
+ }
27
+
28
+ export { ExtendMenuBase };