@ibiz-template/vue3-components 0.0.1-alpha.1

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 (306) hide show
  1. package/es/common/app-icon/app-icon.d.ts +19 -0
  2. package/es/common/app-icon/app-icon.js +71 -0
  3. package/es/common/app-keep-alive/app-keep-alive.d.ts +47 -0
  4. package/es/common/app-keep-alive/app-keep-alive.js +297 -0
  5. package/es/common/app-keep-alive/scheduler.d.ts +39 -0
  6. package/es/common/app-keep-alive/scheduler.js +171 -0
  7. package/es/common/app-router-view/app-router-view.d.ts +30 -0
  8. package/es/common/app-router-view/app-router-view.js +73 -0
  9. package/es/common/app-user/app-user.d.ts +8 -0
  10. package/es/common/app-user/app-user.js +60 -0
  11. package/es/common/grid-pagination/grid-pagination.d.ts +41 -0
  12. package/es/common/grid-pagination/grid-pagination.js +84 -0
  13. package/es/common/grid-pagination/index.d.ts +40 -0
  14. package/es/common/grid-pagination/index.js +9 -0
  15. package/es/common/index.d.ts +8 -0
  16. package/es/common/index.js +8 -0
  17. package/es/common/quick-search/quick-search.d.ts +30 -0
  18. package/es/common/quick-search/quick-search.js +63 -0
  19. package/es/common/tab-page-exp/tab-page-exp.d.ts +69 -0
  20. package/es/common/tab-page-exp/tab-page-exp.js +117 -0
  21. package/es/control/app-menu/app-menu-provider.d.ts +13 -0
  22. package/es/control/app-menu/app-menu-provider.js +14 -0
  23. package/es/control/app-menu/app-menu.d.ts +54 -0
  24. package/es/control/app-menu/app-menu.js +178 -0
  25. package/es/control/app-menu/index.d.ts +53 -0
  26. package/es/control/app-menu/index.js +12 -0
  27. package/es/control/grid-control/grid-control.d.ts +158 -0
  28. package/es/control/grid-control/grid-control.util.d.ts +38 -0
  29. package/es/control/grid-control/grid-control.util.js +84 -0
  30. package/es/control/grid-control/grid-field-column/grid-field-column.d.ts +26 -0
  31. package/es/control/grid-control/grid-field-column-provider.d.ts +15 -0
  32. package/es/control/grid-control/grid-field-column-provider.js +20 -0
  33. package/es/control/grid-control/grid-provider.d.ts +13 -0
  34. package/es/control/grid-control/grid-provider.js +14 -0
  35. package/es/control/grid-control/index.d.ts +114 -0
  36. package/es/control/grid-control/index.js +23 -0
  37. package/es/control/index.d.ts +3 -0
  38. package/es/control/index.js +3 -0
  39. package/es/control/toolbar-control/index.d.ts +43 -0
  40. package/es/control/toolbar-control/index.js +12 -0
  41. package/es/control/toolbar-control/toolbar-control.d.ts +44 -0
  42. package/es/control/toolbar-control/toolbar-provider.d.ts +13 -0
  43. package/es/control/toolbar-control/toolbar-provider.js +14 -0
  44. package/es/index.d.ts +4 -0
  45. package/es/index.js +4 -0
  46. package/es/layout/app-layout/app-layout.d.ts +32 -0
  47. package/es/layout/control-base/control-base.d.ts +17 -0
  48. package/es/layout/control-base/control-base.js +42 -0
  49. package/es/layout/control-layout/control-layout.d.ts +19 -0
  50. package/es/layout/control-shell/control-shell.d.ts +18 -0
  51. package/es/layout/index.d.ts +10 -0
  52. package/es/layout/index.js +20 -0
  53. package/es/layout/md-view-base/md-view-base.d.ts +12 -0
  54. package/es/layout/md-view-base/md-view-base.js +35 -0
  55. package/es/layout/router-shell/router-shell.d.ts +27 -0
  56. package/es/layout/router-shell/router-shell.js +96 -0
  57. package/es/layout/view-base/view-base.d.ts +18 -0
  58. package/es/layout/view-layout/view-layout.d.ts +44 -0
  59. package/es/layout/view-shell/view-shell.d.ts +42 -0
  60. package/es/shims-vue.d.ts +5 -0
  61. package/es/util/install.d.ts +3 -0
  62. package/es/util/install.js +9 -0
  63. package/es/views/edit-view/index.d.ts +3 -0
  64. package/es/views/edit-view/index.js +9 -0
  65. package/es/views/edit-view/src/edit-view.css +6 -0
  66. package/es/views/edit-view/src/edit-view.d.ts +3 -0
  67. package/es/views/edit-view/src/edit-view.js +15 -0
  68. package/es/views/grid-view/grid-view-engine.d.ts +8 -0
  69. package/es/views/grid-view/grid-view-engine.js +21 -0
  70. package/es/views/grid-view/grid-view-provider.d.ts +13 -0
  71. package/es/views/grid-view/grid-view-provider.js +14 -0
  72. package/es/views/grid-view/grid-view.d.ts +32 -0
  73. package/es/views/grid-view/grid-view.js +64 -0
  74. package/es/views/grid-view/index.d.ts +32 -0
  75. package/es/views/grid-view/index.js +14 -0
  76. package/es/views/index-view/index-view-default.d.ts +22 -0
  77. package/es/views/index-view/index-view-default.js +117 -0
  78. package/es/views/index-view/index-view-engine.d.ts +6 -0
  79. package/es/views/index-view/index-view-engine.js +9 -0
  80. package/es/views/index-view/index-view-exp.d.ts +29 -0
  81. package/es/views/index-view/index-view-exp.js +177 -0
  82. package/es/views/index-view/index-view-provider.d.ts +13 -0
  83. package/es/views/index-view/index-view-provider.js +14 -0
  84. package/es/views/index-view/index-view.d.ts +44 -0
  85. package/es/views/index-view/index-view.js +155 -0
  86. package/es/views/index-view/index.d.ts +44 -0
  87. package/es/views/index-view/index.js +14 -0
  88. package/es/views/index.d.ts +4 -0
  89. package/es/views/index.js +6 -0
  90. package/lib/common/app-icon/app-icon.d.ts +19 -0
  91. package/lib/common/app-icon/app-icon.js +71 -0
  92. package/lib/common/app-keep-alive/app-keep-alive.d.ts +47 -0
  93. package/lib/common/app-keep-alive/app-keep-alive.js +297 -0
  94. package/lib/common/app-keep-alive/scheduler.d.ts +39 -0
  95. package/lib/common/app-keep-alive/scheduler.js +171 -0
  96. package/lib/common/app-router-view/app-router-view.d.ts +30 -0
  97. package/lib/common/app-router-view/app-router-view.js +73 -0
  98. package/lib/common/app-user/app-user.d.ts +8 -0
  99. package/lib/common/app-user/app-user.js +60 -0
  100. package/lib/common/grid-pagination/grid-pagination.d.ts +41 -0
  101. package/lib/common/grid-pagination/grid-pagination.js +84 -0
  102. package/lib/common/grid-pagination/index.d.ts +40 -0
  103. package/lib/common/grid-pagination/index.js +9 -0
  104. package/lib/common/index.d.ts +8 -0
  105. package/lib/common/index.js +66 -0
  106. package/lib/common/quick-search/quick-search.d.ts +30 -0
  107. package/lib/common/quick-search/quick-search.js +63 -0
  108. package/lib/common/tab-page-exp/tab-page-exp.d.ts +69 -0
  109. package/lib/common/tab-page-exp/tab-page-exp.js +117 -0
  110. package/lib/control/app-menu/app-menu-provider.d.ts +13 -0
  111. package/lib/control/app-menu/app-menu-provider.js +14 -0
  112. package/lib/control/app-menu/app-menu.d.ts +54 -0
  113. package/lib/control/app-menu/app-menu.js +178 -0
  114. package/lib/control/app-menu/index.d.ts +53 -0
  115. package/lib/control/app-menu/index.js +12 -0
  116. package/lib/control/grid-control/grid-control.d.ts +158 -0
  117. package/lib/control/grid-control/grid-control.util.d.ts +38 -0
  118. package/lib/control/grid-control/grid-control.util.js +84 -0
  119. package/lib/control/grid-control/grid-field-column/grid-field-column.d.ts +26 -0
  120. package/lib/control/grid-control/grid-field-column-provider.d.ts +15 -0
  121. package/lib/control/grid-control/grid-field-column-provider.js +20 -0
  122. package/lib/control/grid-control/grid-provider.d.ts +13 -0
  123. package/lib/control/grid-control/grid-provider.js +14 -0
  124. package/lib/control/grid-control/index.d.ts +114 -0
  125. package/lib/control/grid-control/index.js +24 -0
  126. package/lib/control/index.d.ts +3 -0
  127. package/lib/control/index.js +26 -0
  128. package/lib/control/toolbar-control/index.d.ts +43 -0
  129. package/lib/control/toolbar-control/index.js +12 -0
  130. package/lib/control/toolbar-control/toolbar-control.d.ts +44 -0
  131. package/lib/control/toolbar-control/toolbar-provider.d.ts +13 -0
  132. package/lib/control/toolbar-control/toolbar-provider.js +14 -0
  133. package/lib/index.d.ts +4 -0
  134. package/lib/index.js +34 -0
  135. package/lib/layout/app-layout/app-layout.d.ts +32 -0
  136. package/lib/layout/control-base/control-base.d.ts +17 -0
  137. package/lib/layout/control-base/control-base.js +42 -0
  138. package/lib/layout/control-layout/control-layout.d.ts +19 -0
  139. package/lib/layout/control-shell/control-shell.d.ts +18 -0
  140. package/lib/layout/index.d.ts +10 -0
  141. package/lib/layout/index.js +44 -0
  142. package/lib/layout/md-view-base/md-view-base.d.ts +12 -0
  143. package/lib/layout/md-view-base/md-view-base.js +35 -0
  144. package/lib/layout/router-shell/router-shell.d.ts +27 -0
  145. package/lib/layout/router-shell/router-shell.js +96 -0
  146. package/lib/layout/view-base/view-base.d.ts +18 -0
  147. package/lib/layout/view-layout/view-layout.d.ts +44 -0
  148. package/lib/layout/view-shell/view-shell.d.ts +42 -0
  149. package/lib/shims-vue.d.ts +5 -0
  150. package/lib/util/install.d.ts +3 -0
  151. package/lib/util/install.js +9 -0
  152. package/lib/views/edit-view/index.d.ts +3 -0
  153. package/lib/views/edit-view/index.js +8 -0
  154. package/lib/views/edit-view/src/edit-view.css +6 -0
  155. package/lib/views/edit-view/src/edit-view.d.ts +3 -0
  156. package/lib/views/edit-view/src/edit-view.js +14 -0
  157. package/lib/views/grid-view/grid-view-engine.d.ts +8 -0
  158. package/lib/views/grid-view/grid-view-engine.js +21 -0
  159. package/lib/views/grid-view/grid-view-provider.d.ts +13 -0
  160. package/lib/views/grid-view/grid-view-provider.js +14 -0
  161. package/lib/views/grid-view/grid-view.d.ts +32 -0
  162. package/lib/views/grid-view/grid-view.js +64 -0
  163. package/lib/views/grid-view/index.d.ts +32 -0
  164. package/lib/views/grid-view/index.js +14 -0
  165. package/lib/views/index-view/index-view-default.d.ts +22 -0
  166. package/lib/views/index-view/index-view-default.js +117 -0
  167. package/lib/views/index-view/index-view-engine.d.ts +6 -0
  168. package/lib/views/index-view/index-view-engine.js +9 -0
  169. package/lib/views/index-view/index-view-exp.d.ts +29 -0
  170. package/lib/views/index-view/index-view-exp.js +177 -0
  171. package/lib/views/index-view/index-view-provider.d.ts +13 -0
  172. package/lib/views/index-view/index-view-provider.js +14 -0
  173. package/lib/views/index-view/index-view.d.ts +44 -0
  174. package/lib/views/index-view/index-view.js +155 -0
  175. package/lib/views/index-view/index.d.ts +44 -0
  176. package/lib/views/index-view/index.js +14 -0
  177. package/lib/views/index.d.ts +4 -0
  178. package/lib/views/index.js +20 -0
  179. package/package.json +71 -0
  180. package/src/common/app-col/app-col.tsx +90 -0
  181. package/src/common/app-icon/app-icon.tsx +58 -0
  182. package/src/common/app-keep-alive/app-keep-alive.ts +441 -0
  183. package/src/common/app-keep-alive/scheduler.ts +281 -0
  184. package/src/common/app-router-view/app-router-view.tsx +73 -0
  185. package/src/common/app-row/app-row.tsx +31 -0
  186. package/src/common/app-user/app-user.scss +32 -0
  187. package/src/common/app-user/app-user.tsx +61 -0
  188. package/src/common/index.ts +9 -0
  189. package/src/common/quick-search/quick-search.scss +15 -0
  190. package/src/common/quick-search/quick-search.tsx +59 -0
  191. package/src/common/tab-page-exp/tab-page-exp.scss +43 -0
  192. package/src/common/tab-page-exp/tab-page-exp.tsx +125 -0
  193. package/src/control/app-menu/app-menu-provider.ts +14 -0
  194. package/src/control/app-menu/app-menu-state.ts +20 -0
  195. package/src/control/app-menu/app-menu.controller.ts +97 -0
  196. package/src/control/app-menu/app-menu.scss +163 -0
  197. package/src/control/app-menu/app-menu.tsx +305 -0
  198. package/src/control/app-menu/index.ts +12 -0
  199. package/src/control/form/form/form-control.tsx +98 -0
  200. package/src/control/form/form/form-state.ts +39 -0
  201. package/src/control/form/form/form.controller.ts +260 -0
  202. package/src/control/form/form/form.scss +10 -0
  203. package/src/control/form/form/index.ts +30 -0
  204. package/src/control/form/form-detail/form-detail/form-detail-state.ts +92 -0
  205. package/src/control/form/form-detail/form-detail/form-detail.ts +214 -0
  206. package/src/control/form/form-detail/form-detail/index.ts +2 -0
  207. package/src/control/form/form-detail/form-group-panel/form-group-panel-provider.ts +27 -0
  208. package/src/control/form/form-detail/form-group-panel/form-group-panel-state.ts +29 -0
  209. package/src/control/form/form-detail/form-group-panel/form-group-panel.controller.ts +103 -0
  210. package/src/control/form/form-detail/form-group-panel/index.ts +3 -0
  211. package/src/control/form/form-detail/form-item/form-item-container/form-item-container.scss +90 -0
  212. package/src/control/form/form-detail/form-item/form-item-container/form-item-container.tsx +68 -0
  213. package/src/control/form/form-detail/form-item/form-item-provider.ts +28 -0
  214. package/src/control/form/form-detail/form-item/form-item-state.ts +48 -0
  215. package/src/control/form/form-detail/form-item/form-item.controller.ts +341 -0
  216. package/src/control/form/form-detail/form-item/form-item.scss +4 -0
  217. package/src/control/form/form-detail/form-item/form-item.tsx +69 -0
  218. package/src/control/form/form-detail/form-item/index.ts +3 -0
  219. package/src/control/form/form-detail/form-page/form-page-item.tsx +59 -0
  220. package/src/control/form/form-detail/form-page/form-page-provider.ts +27 -0
  221. package/src/control/form/form-detail/form-page/form-page-state.ts +12 -0
  222. package/src/control/form/form-detail/form-page/form-page.controller.ts +20 -0
  223. package/src/control/form/form-detail/form-page/form-page.scss +42 -0
  224. package/src/control/form/form-detail/form-page/form-page.tsx +56 -0
  225. package/src/control/form/form-detail/index.ts +3 -0
  226. package/src/control/form/index.ts +12 -0
  227. package/src/control/form/search-form/index.ts +15 -0
  228. package/src/control/form/search-form/search-form-provider.ts +14 -0
  229. package/src/control/form/search-form/search-form-state.ts +12 -0
  230. package/src/control/form/search-form/search-form.controller.ts +135 -0
  231. package/src/control/form/search-form/search-form.scss +48 -0
  232. package/src/control/form/search-form/search-form.tsx +70 -0
  233. package/src/control/grid/grid/grid-column.controller.ts +98 -0
  234. package/src/control/grid/grid/grid-control.tsx +174 -0
  235. package/src/control/grid/grid/grid-control.util.ts +135 -0
  236. package/src/control/grid/grid/grid-provider.ts +13 -0
  237. package/src/control/grid/grid/grid-row.controller.ts +114 -0
  238. package/src/control/grid/grid/grid-state.ts +20 -0
  239. package/src/control/grid/grid/grid.controller.ts +531 -0
  240. package/src/control/grid/grid/grid.scss +79 -0
  241. package/src/control/grid/grid-field-column/grid-field-column-provider.ts +26 -0
  242. package/src/control/grid/grid-field-column/grid-field-column.controller.ts +189 -0
  243. package/src/control/grid/grid-field-column/grid-field-column.scss +19 -0
  244. package/src/control/grid/grid-field-column/grid-field-column.tsx +87 -0
  245. package/src/control/grid/grid-pagination/grid-pagination.scss +7 -0
  246. package/src/control/grid/grid-pagination/grid-pagination.tsx +88 -0
  247. package/src/control/grid/index.ts +23 -0
  248. package/src/control/index.ts +4 -0
  249. package/src/control/panel/index.ts +23 -0
  250. package/src/control/panel/panel/panel-item-state.ts +73 -0
  251. package/src/control/panel/panel/panel-item.controller.ts +161 -0
  252. package/src/control/panel/panel/panel-state.ts +22 -0
  253. package/src/control/panel/panel/panel.controller.ts +256 -0
  254. package/src/control/panel/panel-container/index.ts +23 -0
  255. package/src/control/panel/panel-container/panel-container-provider.ts +28 -0
  256. package/src/control/panel/panel-container/panel-container-state.ts +12 -0
  257. package/src/control/panel/panel-container/panel-container.controller.ts +18 -0
  258. package/src/control/panel/panel-container/panel-container.scss +66 -0
  259. package/src/control/panel/panel-container/panel-container.tsx +93 -0
  260. package/src/control/panel/panel-ctrl-pos/index.ts +13 -0
  261. package/src/control/panel/panel-ctrl-pos/panel-ctrl-pos-provider.ts +28 -0
  262. package/src/control/panel/panel-ctrl-pos/panel-ctrl-pos.controller.ts +23 -0
  263. package/src/control/panel/panel-ctrl-pos/panel-ctrl-pos.tsx +39 -0
  264. package/src/control/panel/view-layout-panel/view-layout-panel-provider.ts +14 -0
  265. package/src/control/panel/view-layout-panel/view-layout-panel.controller.ts +62 -0
  266. package/src/control/panel/view-layout-panel/view-layout-panel.scss +3 -0
  267. package/src/control/panel/view-layout-panel/view-layout-panel.tsx +127 -0
  268. package/src/control/panel/view-layout-panel.json +141 -0
  269. package/src/control/toolbar/index.ts +12 -0
  270. package/src/control/toolbar/toolbar-control.scss +46 -0
  271. package/src/control/toolbar/toolbar-control.tsx +127 -0
  272. package/src/control/toolbar/toolbar-provider.ts +14 -0
  273. package/src/control/toolbar/toolbar-state.ts +31 -0
  274. package/src/control/toolbar/toolbar.controllerr.ts +112 -0
  275. package/src/editor/index.ts +14 -0
  276. package/src/editor/text-box/ibiz-input/ibiz-input.scss +48 -0
  277. package/src/editor/text-box/ibiz-input/ibiz-input.tsx +176 -0
  278. package/src/editor/text-box/index.ts +1 -0
  279. package/src/editor/text-box/text-box-provider.ts +39 -0
  280. package/src/editor/text-box/text-box.controller.ts +21 -0
  281. package/src/index.ts +57 -0
  282. package/src/layout/app-layout/app-layout.scss +133 -0
  283. package/src/layout/app-layout/app-layout.tsx +149 -0
  284. package/src/layout/control-base/control-base.tsx +37 -0
  285. package/src/layout/control-layout/control-layout.scss +4 -0
  286. package/src/layout/control-layout/control-layout.tsx +29 -0
  287. package/src/layout/index.ts +15 -0
  288. package/src/layout/md-view-base/md-view-base.tsx +69 -0
  289. package/src/layout/view-base/view-base.scss +11 -0
  290. package/src/layout/view-base/view-base.tsx +147 -0
  291. package/src/layout/view-layout/view-layout.scss +198 -0
  292. package/src/layout/view-layout/view-layout.tsx +115 -0
  293. package/src/shims-vue.d.ts +5 -0
  294. package/src/util/install.ts +11 -0
  295. package/src/views/grid-view/grid-view-engine.ts +68 -0
  296. package/src/views/grid-view/index.ts +12 -0
  297. package/src/views/index-view/index-view-default.ts +168 -0
  298. package/src/views/index-view/index-view-engine.ts +10 -0
  299. package/src/views/index-view/index-view-exp.ts +261 -0
  300. package/src/views/index-view/index-view-provider.ts +14 -0
  301. package/src/views/index-view/index-view.tsx +249 -0
  302. package/src/views/index-view/index.ts +14 -0
  303. package/src/views/index.ts +3 -0
  304. package/src/views/view/ibiz-view.tsx +49 -0
  305. package/src/views/view/index.ts +12 -0
  306. package/src/views/view/view-provider.ts +14 -0
@@ -0,0 +1,54 @@
1
+ import { PropType, Ref } from 'vue';
2
+ import './app-menu.scss';
3
+ export declare const AppMenu: import("vue").DefineComponent<{
4
+ modelData: {
5
+ type: PropType<IAppMenu>;
6
+ required: true;
7
+ };
8
+ context: {
9
+ type: PropType<IContext>;
10
+ required: true;
11
+ };
12
+ params: {
13
+ type: PropType<IParams>;
14
+ default: () => {};
15
+ };
16
+ collapse: BooleanConstructor;
17
+ currentPath: StringConstructor;
18
+ mode: {
19
+ type: StringConstructor;
20
+ default: string;
21
+ };
22
+ }, {
23
+ menus: Ref<any[]>;
24
+ c: any;
25
+ key: any;
26
+ onClick: (key: string) => Promise<void>;
27
+ ns: any;
28
+ defaultActive: Ref<string>;
29
+ defaultOpens: Ref<string[]>;
30
+ MenuMode: import("vue").ComputedRef<"horizontal" | "vertical">;
31
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
32
+ modelData: {
33
+ type: PropType<IAppMenu>;
34
+ required: true;
35
+ };
36
+ context: {
37
+ type: PropType<IContext>;
38
+ required: true;
39
+ };
40
+ params: {
41
+ type: PropType<IParams>;
42
+ default: () => {};
43
+ };
44
+ collapse: BooleanConstructor;
45
+ currentPath: StringConstructor;
46
+ mode: {
47
+ type: StringConstructor;
48
+ default: string;
49
+ };
50
+ }>>, {
51
+ collapse: boolean;
52
+ params: IParams;
53
+ mode: string;
54
+ }>;
@@ -0,0 +1,178 @@
1
+ import { defineComponent, getCurrentInstance, ref, onMounted, computed, createVNode, resolveComponent, isVNode } from "vue";
2
+ import { useControlController, useNamespace } from "@ibiz-template/vue3-util";
3
+ import { AppMenuController } from "@ibiz-template/runtime";
4
+ import { createUUID } from "qx-util";
5
+ const appMenu = "";
6
+ function _isSlot(s) {
7
+ return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !isVNode(s);
8
+ }
9
+ function getMenus(items) {
10
+ return items.map((item) => {
11
+ var _a, _b;
12
+ const data = {
13
+ key: item.id,
14
+ label: item.caption,
15
+ image: (_a = item.sysImage) == null ? void 0 : _a.imagePath
16
+ };
17
+ if ((_b = item.appMenuItems) == null ? void 0 : _b.length) {
18
+ data.children = getMenus(item.appMenuItems);
19
+ }
20
+ return data;
21
+ });
22
+ }
23
+ function renderMenuItem(isFirst, menu, collapse, ns, c) {
24
+ if (!c.state.menuItemsState[menu.key].visible) {
25
+ return;
26
+ }
27
+ return !(isFirst && collapse) ? createVNode(resolveComponent("el-menu-item"), {
28
+ "class": ns.e("item"),
29
+ "index": menu.key
30
+ }, {
31
+ default: () => [createVNode(resolveComponent("app-icon"), {
32
+ "class": ns.e("icon"),
33
+ "icon": menu.image
34
+ }, null), menu.label]
35
+ }) : createVNode(resolveComponent("el-tooltip"), {
36
+ "class": ns.b("tooltip"),
37
+ "content": menu.label,
38
+ "placement": "left",
39
+ "theme": "light"
40
+ }, {
41
+ default: () => [createVNode(resolveComponent("el-menu-item"), {
42
+ "class": ns.e("item"),
43
+ "index": menu.key
44
+ }, {
45
+ default: () => [createVNode(resolveComponent("app-icon"), {
46
+ "class": ns.e("icon"),
47
+ "icon": menu.image
48
+ }, null), !menu.image ? menu.label.slice(0, 1) : null]
49
+ })]
50
+ });
51
+ }
52
+ function renderSubmenu(isFirst, subMenu, collapse, ns, c) {
53
+ if (!c.state.menuItemsState[subMenu.key].visible) {
54
+ return;
55
+ }
56
+ return createVNode(resolveComponent("el-sub-menu"), {
57
+ "class": ns.b("submenu"),
58
+ "index": subMenu.key
59
+ }, {
60
+ default: () => subMenu.children.map((item) => {
61
+ if (item.children) {
62
+ return renderSubmenu(false, item, collapse, ns, c);
63
+ }
64
+ return renderMenuItem(false, item, collapse, ns, c);
65
+ }),
66
+ title: () => [createVNode(resolveComponent("app-icon"), {
67
+ "class": ns.e("icon"),
68
+ "icon": subMenu.image
69
+ }, null), isFirst && collapse ? subMenu.label.slice(0, 1) : subMenu.label, isFirst ? null : createVNode(resolveComponent("ion-icon"), {
70
+ "name": "chevron-forward-outline"
71
+ }, null)]
72
+ });
73
+ }
74
+ const AppMenu = /* @__PURE__ */ defineComponent({
75
+ name: "AppMenu",
76
+ props: {
77
+ modelData: {
78
+ type: Object,
79
+ required: true
80
+ },
81
+ context: {
82
+ type: Object,
83
+ required: true
84
+ },
85
+ params: {
86
+ type: Object,
87
+ default: () => ({})
88
+ },
89
+ collapse: Boolean,
90
+ currentPath: String,
91
+ mode: {
92
+ type: String,
93
+ default: "LEFT"
94
+ }
95
+ },
96
+ setup(props) {
97
+ const {
98
+ proxy
99
+ } = getCurrentInstance();
100
+ const c = useControlController((...args) => new AppMenuController(...args));
101
+ const menus = ref(getMenus(c.model.appMenuItems));
102
+ const defaultActive = ref("");
103
+ const defaultOpens = ref([]);
104
+ let menuClickDoing = false;
105
+ const onClick = async (key2) => {
106
+ menuClickDoing = true;
107
+ await c.onClickMenuItem(key2);
108
+ menuClickDoing = false;
109
+ };
110
+ console.log(menuClickDoing);
111
+ const ns = useNamespace("control-menu");
112
+ const key = ref(createUUID());
113
+ const updateMenu = () => {
114
+ setTimeout(() => {
115
+ if (proxy.$refs.menu) {
116
+ key.value = createUUID();
117
+ }
118
+ }, 500);
119
+ };
120
+ onMounted(() => {
121
+ updateMenu();
122
+ });
123
+ const MenuMode = computed(() => {
124
+ switch (props.mode) {
125
+ case "TOP":
126
+ return "horizontal";
127
+ case "LEFT":
128
+ return "vertical";
129
+ default:
130
+ return "vertical";
131
+ }
132
+ });
133
+ if (props.mode !== "LEFT" && props.mode !== "TOP") {
134
+ ibiz.message.warning(`暂未支持菜单方向为${props.mode}!`);
135
+ }
136
+ return {
137
+ menus,
138
+ c,
139
+ key,
140
+ onClick,
141
+ ns,
142
+ defaultActive,
143
+ defaultOpens,
144
+ MenuMode
145
+ };
146
+ },
147
+ render() {
148
+ let _slot;
149
+ return createVNode(resolveComponent("control-base"), {
150
+ "class": [this.ns.b(), this.ns.is("collapse", this.collapse)],
151
+ "controller": this.c
152
+ }, {
153
+ default: () => [createVNode(resolveComponent("el-menu"), {
154
+ "key": this.key,
155
+ "ref": "menu",
156
+ "default-active": this.defaultActive,
157
+ "default-openeds": this.defaultOpens,
158
+ "collapse": this.collapse,
159
+ "collapse-transition": false,
160
+ "onSelect": this.onClick,
161
+ "theme": "light",
162
+ "mode": this.MenuMode,
163
+ "ellipsis": false
164
+ }, _isSlot(_slot = this.menus.map((item) => {
165
+ var _a;
166
+ if (((_a = item.children) == null ? void 0 : _a.length) > 0) {
167
+ return renderSubmenu(true, item, this.collapse, this.ns, this.c);
168
+ }
169
+ return renderMenuItem(true, item, this.collapse, this.ns, this.c);
170
+ })) ? _slot : {
171
+ default: () => [_slot]
172
+ })]
173
+ });
174
+ }
175
+ });
176
+ export {
177
+ AppMenu
178
+ };
@@ -0,0 +1,53 @@
1
+ export declare const IbizAppMenu: import("../../util/install").TypeWithInstall<import("vue").DefineComponent<{
2
+ modelData: {
3
+ type: import("vue").PropType<IAppMenu>;
4
+ required: true;
5
+ };
6
+ context: {
7
+ type: import("vue").PropType<IContext>;
8
+ required: true;
9
+ };
10
+ params: {
11
+ type: import("vue").PropType<IParams>;
12
+ default: () => {};
13
+ };
14
+ collapse: BooleanConstructor;
15
+ currentPath: StringConstructor;
16
+ mode: {
17
+ type: StringConstructor;
18
+ default: string;
19
+ };
20
+ }, {
21
+ menus: import("vue").Ref<any[]>;
22
+ c: any;
23
+ key: any;
24
+ onClick: (key: string) => Promise<void>;
25
+ ns: any;
26
+ defaultActive: import("vue").Ref<string>;
27
+ defaultOpens: import("vue").Ref<string[]>;
28
+ MenuMode: import("vue").ComputedRef<"horizontal" | "vertical">;
29
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
30
+ modelData: {
31
+ type: import("vue").PropType<IAppMenu>;
32
+ required: true;
33
+ };
34
+ context: {
35
+ type: import("vue").PropType<IContext>;
36
+ required: true;
37
+ };
38
+ params: {
39
+ type: import("vue").PropType<IParams>;
40
+ default: () => {};
41
+ };
42
+ collapse: BooleanConstructor;
43
+ currentPath: StringConstructor;
44
+ mode: {
45
+ type: StringConstructor;
46
+ default: string;
47
+ };
48
+ }>>, {
49
+ collapse: boolean;
50
+ params: IParams;
51
+ mode: string;
52
+ }>>;
53
+ export default IbizAppMenu;
@@ -0,0 +1,12 @@
1
+ import { ControlType } from "@ibiz-template/runtime";
2
+ import { withInstall } from "../../util/install";
3
+ import { AppMenu } from "./app-menu";
4
+ import { AppMenuProvider } from "./app-menu-provider";
5
+ const IbizAppMenu = withInstall(AppMenu, function(v) {
6
+ v.component(AppMenu.name, AppMenu);
7
+ ibiz.register.control.register(ControlType.APP_MENU, new AppMenuProvider());
8
+ });
9
+ export {
10
+ IbizAppMenu,
11
+ IbizAppMenu as default
12
+ };
@@ -0,0 +1,158 @@
1
+ import { PropType } from 'vue';
2
+ import './grid.scss';
3
+ export declare const GridControl: import("vue").DefineComponent<{
4
+ modelData: {
5
+ type: PropType<IDEGrid>;
6
+ required: true;
7
+ };
8
+ context: {
9
+ type: PropType<IContext>;
10
+ required: true;
11
+ };
12
+ params: {
13
+ type: PropType<IParams>;
14
+ default: () => {};
15
+ };
16
+ /**
17
+ * 部件行数据默认激活模式
18
+ * - 0 不激活
19
+ * - 1 单击激活
20
+ * - 2 双击激活(默认值)
21
+ *
22
+ * @type {(number | 0 | 1 | 2)}
23
+ */
24
+ mdCtrlActiveMode: {
25
+ type: NumberConstructor;
26
+ default: number;
27
+ };
28
+ /**
29
+ * 是否默认选中第一条数据
30
+ *
31
+ * @type boolean
32
+ */
33
+ isSelectFirstDefault: {
34
+ type: BooleanConstructor;
35
+ required: false;
36
+ };
37
+ /**
38
+ * 默认选中的数据
39
+ *
40
+ * @type Array
41
+ */
42
+ defaultSelectKeys: {
43
+ type: {
44
+ (arrayLength: number): string[];
45
+ (...items: string[]): string[];
46
+ new (arrayLength: number): string[];
47
+ new (...items: string[]): string[];
48
+ isArray(arg: any): arg is any[];
49
+ readonly prototype: any[];
50
+ from<T>(arrayLike: ArrayLike<T>): T[];
51
+ from<T_1, U>(arrayLike: ArrayLike<T_1>, mapfn: (v: T_1, k: number) => U, thisArg?: any): U[];
52
+ from<T_2>(iterable: Iterable<T_2> | ArrayLike<T_2>): T_2[];
53
+ from<T_3, U_1>(iterable: Iterable<T_3> | ArrayLike<T_3>, mapfn: (v: T_3, k: number) => U_1, thisArg?: any): U_1[];
54
+ of<T_4>(...items: T_4[]): T_4[];
55
+ readonly [Symbol.species]: ArrayConstructor;
56
+ };
57
+ required: false;
58
+ };
59
+ /**
60
+ * 是否包含在导航视图内
61
+ *
62
+ * @type boolean
63
+ */
64
+ isExpView: {
65
+ type: BooleanConstructor;
66
+ required: false;
67
+ };
68
+ }, {
69
+ c: any;
70
+ ns: any;
71
+ tableRef: import("vue").Ref<any>;
72
+ tableData: import("vue").ComputedRef<any>;
73
+ renderColumns: import("vue").ComputedRef<any>;
74
+ onDbRowClick: (data: ControlVO) => void;
75
+ onRowClick: (data: ControlVO) => void;
76
+ onSelectionChange: (selection: ControlVO[]) => void;
77
+ onSortChange: (opts: {
78
+ _column: IDatum;
79
+ prop: string;
80
+ order: "ascending" | "descending";
81
+ }) => void;
82
+ onPageChange: (page: number) => void;
83
+ onPageSizeChange: (size: number) => void;
84
+ onPageReset: () => void;
85
+ handleRowClassName: ({ row }: {
86
+ row: IDatum;
87
+ }) => string;
88
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
89
+ modelData: {
90
+ type: PropType<IDEGrid>;
91
+ required: true;
92
+ };
93
+ context: {
94
+ type: PropType<IContext>;
95
+ required: true;
96
+ };
97
+ params: {
98
+ type: PropType<IParams>;
99
+ default: () => {};
100
+ };
101
+ /**
102
+ * 部件行数据默认激活模式
103
+ * - 0 不激活
104
+ * - 1 单击激活
105
+ * - 2 双击激活(默认值)
106
+ *
107
+ * @type {(number | 0 | 1 | 2)}
108
+ */
109
+ mdCtrlActiveMode: {
110
+ type: NumberConstructor;
111
+ default: number;
112
+ };
113
+ /**
114
+ * 是否默认选中第一条数据
115
+ *
116
+ * @type boolean
117
+ */
118
+ isSelectFirstDefault: {
119
+ type: BooleanConstructor;
120
+ required: false;
121
+ };
122
+ /**
123
+ * 默认选中的数据
124
+ *
125
+ * @type Array
126
+ */
127
+ defaultSelectKeys: {
128
+ type: {
129
+ (arrayLength: number): string[];
130
+ (...items: string[]): string[];
131
+ new (arrayLength: number): string[];
132
+ new (...items: string[]): string[];
133
+ isArray(arg: any): arg is any[];
134
+ readonly prototype: any[];
135
+ from<T>(arrayLike: ArrayLike<T>): T[];
136
+ from<T_1, U>(arrayLike: ArrayLike<T_1>, mapfn: (v: T_1, k: number) => U, thisArg?: any): U[];
137
+ from<T_2>(iterable: Iterable<T_2> | ArrayLike<T_2>): T_2[];
138
+ from<T_3, U_1>(iterable: Iterable<T_3> | ArrayLike<T_3>, mapfn: (v: T_3, k: number) => U_1, thisArg?: any): U_1[];
139
+ of<T_4>(...items: T_4[]): T_4[];
140
+ readonly [Symbol.species]: ArrayConstructor;
141
+ };
142
+ required: false;
143
+ };
144
+ /**
145
+ * 是否包含在导航视图内
146
+ *
147
+ * @type boolean
148
+ */
149
+ isExpView: {
150
+ type: BooleanConstructor;
151
+ required: false;
152
+ };
153
+ }>>, {
154
+ params: IParams;
155
+ mdCtrlActiveMode: number;
156
+ isSelectFirstDefault: boolean;
157
+ isExpView: boolean;
158
+ }>;
@@ -0,0 +1,38 @@
1
+ import { GridController, ControlVO } from '@ibiz-template/runtime';
2
+ /**
3
+ * 适配element的table的事件
4
+ *
5
+ * @author lxm
6
+ * @date 2022-09-05 21:09:42
7
+ * @export
8
+ * @param {GridController} c
9
+ * @returns {*}
10
+ */
11
+ export declare function useITableEvent(c: GridController): {
12
+ tableRef: import("vue").Ref<any>;
13
+ onRowClick: (data: ControlVO) => void;
14
+ onDbRowClick: (data: ControlVO) => void;
15
+ onSelectionChange: (selection: ControlVO[]) => void;
16
+ onSortChange: (opts: {
17
+ _column: IDatum;
18
+ prop: string;
19
+ order: 'ascending' | 'descending';
20
+ }) => void;
21
+ handleRowClassName: ({ row }: {
22
+ row: IDatum;
23
+ }) => string;
24
+ };
25
+ /**
26
+ * 使用表格分页组件
27
+ *
28
+ * @author lxm
29
+ * @date 2022-09-06 17:09:09
30
+ * @export
31
+ * @param {GridController} c
32
+ * @returns {*}
33
+ */
34
+ export declare function useAppGridPagination(c: GridController): {
35
+ onPageChange: (page: number) => void;
36
+ onPageSizeChange: (size: number) => void;
37
+ onPageReset: () => void;
38
+ };
@@ -0,0 +1,84 @@
1
+ import { ref, watch } from "vue";
2
+ function useITableEvent(c) {
3
+ const tableRef = ref();
4
+ let forbidChange = false;
5
+ function onRowClick(data) {
6
+ c.onRowClick(data);
7
+ }
8
+ function onDbRowClick(data) {
9
+ c.onDbRowClick(data);
10
+ }
11
+ function onSelectionChange(selection) {
12
+ if (!forbidChange) {
13
+ c.onSelectionChange(selection);
14
+ }
15
+ }
16
+ watch(
17
+ [() => c.state.hasLoaded, () => c.state.selectedData],
18
+ ([hasLoaded, newVal]) => {
19
+ if (!hasLoaded) {
20
+ return;
21
+ }
22
+ if (c.state.singleSelect) {
23
+ if (newVal[0]) {
24
+ tableRef.value.setCurrentRow(newVal[0], true);
25
+ } else {
26
+ tableRef.value.setCurrentRow();
27
+ }
28
+ } else {
29
+ forbidChange = true;
30
+ tableRef.value.clearSelection();
31
+ newVal.forEach((item) => tableRef.value.toggleRowSelection(item, true));
32
+ forbidChange = false;
33
+ }
34
+ }
35
+ );
36
+ function onSortChange(opts) {
37
+ }
38
+ function handleRowClassName({ row }) {
39
+ let activeClassName = "";
40
+ if (c.state.selectedData.length > 0) {
41
+ c.state.selectedData.forEach((data) => {
42
+ if (data === row) {
43
+ activeClassName = "current-row";
44
+ }
45
+ });
46
+ }
47
+ return activeClassName;
48
+ }
49
+ return {
50
+ tableRef,
51
+ onRowClick,
52
+ onDbRowClick,
53
+ onSelectionChange,
54
+ onSortChange,
55
+ handleRowClassName
56
+ };
57
+ }
58
+ function useAppGridPagination(c) {
59
+ function onPageChange(page) {
60
+ if (!page || page === c.state.curPage) {
61
+ return;
62
+ }
63
+ c.state.curPage = page;
64
+ c.load();
65
+ }
66
+ function onPageSizeChange(size) {
67
+ if (!size || size === c.state.size) {
68
+ return;
69
+ }
70
+ c.state.size = size;
71
+ if (c.state.curPage === 1) {
72
+ c.load();
73
+ }
74
+ }
75
+ function onPageReset() {
76
+ c.state.curPage = 1;
77
+ c.load();
78
+ }
79
+ return { onPageChange, onPageSizeChange, onPageReset };
80
+ }
81
+ export {
82
+ useAppGridPagination,
83
+ useITableEvent
84
+ };
@@ -0,0 +1,26 @@
1
+ import './grid-field-column.scss';
2
+ export declare const GridFieldColumn: import("vue").DefineComponent<{
3
+ controller: {
4
+ type: any;
5
+ required: true;
6
+ };
7
+ row: {
8
+ type: any;
9
+ required: true;
10
+ };
11
+ }, {
12
+ ns: any;
13
+ alignStyle: import("vue").ComputedRef<any>;
14
+ codeList: any;
15
+ onCellClick: (event: MouseEvent) => void;
16
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
17
+ controller: {
18
+ type: any;
19
+ required: true;
20
+ };
21
+ row: {
22
+ type: any;
23
+ required: true;
24
+ };
25
+ }>>, {}>;
26
+ export default GridFieldColumn;
@@ -0,0 +1,15 @@
1
+ import { IGridColumnProvider, GridController, GridFieldColumnController } from '@ibiz-template/runtime';
2
+ import { IDEGridFieldColumn } from '@ibiz/model-core';
3
+ /**
4
+ * 表格列适配器
5
+ *
6
+ * @author lxm
7
+ * @date 2022-09-19 22:09:03
8
+ * @export
9
+ * @class GridFieldColumnProvider
10
+ * @implements {IGridColumnProvider}
11
+ */
12
+ export declare class GridFieldColumnProvider implements IGridColumnProvider {
13
+ component: string;
14
+ createController(columnModel: IDEGridFieldColumn, grid: GridController): Promise<GridFieldColumnController>;
15
+ }
@@ -0,0 +1,20 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
3
+ var __publicField = (obj, key, value) => {
4
+ __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
5
+ return value;
6
+ };
7
+ import { GridFieldColumnController } from "@ibiz-template/runtime";
8
+ class GridFieldColumnProvider {
9
+ constructor() {
10
+ __publicField(this, "component", "GridFieldColumn");
11
+ }
12
+ async createController(columnModel, grid) {
13
+ const c = new GridFieldColumnController(columnModel, grid);
14
+ await c.init();
15
+ return c;
16
+ }
17
+ }
18
+ export {
19
+ GridFieldColumnProvider
20
+ };
@@ -0,0 +1,13 @@
1
+ import { IControlProvider } from '@ibiz-template/runtime';
2
+ /**
3
+ * 表格适配器
4
+ *
5
+ * @author lxm
6
+ * @date 2022-10-25 18:10:57
7
+ * @export
8
+ * @class GridProvider
9
+ * @implements {IControlProvider}
10
+ */
11
+ export declare class GridProvider implements IControlProvider {
12
+ component: string;
13
+ }
@@ -0,0 +1,14 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
3
+ var __publicField = (obj, key, value) => {
4
+ __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
5
+ return value;
6
+ };
7
+ class GridProvider {
8
+ constructor() {
9
+ __publicField(this, "component", "GridControl");
10
+ }
11
+ }
12
+ export {
13
+ GridProvider
14
+ };