vome-core 0.3.64 → 0.3.66

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 (345) hide show
  1. package/dist/admin/api/client.js +7 -2
  2. package/dist/admin/components/ui/avatar/Avatar.vue +18 -18
  3. package/dist/admin/components/ui/avatar/AvatarFallback.vue +21 -21
  4. package/dist/admin/components/ui/avatar/AvatarImage.vue +16 -16
  5. package/dist/admin/components/ui/avatar/index.js +1 -1
  6. package/dist/admin/components/ui/badge/Badge.vue +26 -26
  7. package/dist/admin/components/ui/button/Button.vue +31 -31
  8. package/dist/admin/components/ui/checkbox/Checkbox.vue +35 -35
  9. package/dist/admin/components/ui/checkbox/index.js +1 -1
  10. package/dist/admin/components/ui/dialog/Dialog.vue +19 -19
  11. package/dist/admin/components/ui/dialog/DialogClose.vue +15 -15
  12. package/dist/admin/components/ui/dialog/DialogContent.vue +267 -267
  13. package/dist/admin/components/ui/dialog/DialogDescription.vue +23 -23
  14. package/dist/admin/components/ui/dialog/DialogFooter.vue +27 -27
  15. package/dist/admin/components/ui/dialog/DialogHeader.vue +17 -17
  16. package/dist/admin/components/ui/dialog/DialogOverlay.vue +21 -21
  17. package/dist/admin/components/ui/dialog/DialogScrollContent.vue +60 -60
  18. package/dist/admin/components/ui/dialog/DialogTitle.vue +23 -23
  19. package/dist/admin/components/ui/dialog/DialogTrigger.vue +15 -15
  20. package/dist/admin/components/ui/dialog/index.js +1 -1
  21. package/dist/admin/components/ui/dropdown-menu/DropdownMenu.vue +19 -19
  22. package/dist/admin/components/ui/dropdown-menu/DropdownMenuCheckboxItem.vue +39 -39
  23. package/dist/admin/components/ui/dropdown-menu/DropdownMenuContent.vue +39 -39
  24. package/dist/admin/components/ui/dropdown-menu/DropdownMenuGroup.vue +15 -15
  25. package/dist/admin/components/ui/dropdown-menu/DropdownMenuItem.vue +31 -31
  26. package/dist/admin/components/ui/dropdown-menu/DropdownMenuLabel.vue +23 -23
  27. package/dist/admin/components/ui/dropdown-menu/DropdownMenuRadioGroup.vue +21 -21
  28. package/dist/admin/components/ui/dropdown-menu/DropdownMenuRadioItem.vue +40 -40
  29. package/dist/admin/components/ui/dropdown-menu/DropdownMenuSeparator.vue +23 -23
  30. package/dist/admin/components/ui/dropdown-menu/DropdownMenuShortcut.vue +17 -17
  31. package/dist/admin/components/ui/dropdown-menu/DropdownMenuSub.vue +18 -18
  32. package/dist/admin/components/ui/dropdown-menu/DropdownMenuSubContent.vue +27 -27
  33. package/dist/admin/components/ui/dropdown-menu/DropdownMenuSubTrigger.vue +31 -31
  34. package/dist/admin/components/ui/dropdown-menu/DropdownMenuTrigger.vue +17 -17
  35. package/dist/admin/components/ui/dropdown-menu/index.js +1 -1
  36. package/dist/admin/components/ui/input/Input.vue +183 -183
  37. package/dist/admin/components/ui/input/index.js +1 -1
  38. package/dist/admin/components/ui/label/Label.vue +26 -26
  39. package/dist/admin/components/ui/label/index.js +1 -1
  40. package/dist/admin/components/ui/scroll-area/ScrollArea.vue +33 -33
  41. package/dist/admin/components/ui/scroll-area/ScrollBar.vue +32 -32
  42. package/dist/admin/components/ui/scroll-area/index.js +1 -1
  43. package/dist/admin/components/ui/select/Select.vue +19 -19
  44. package/dist/admin/components/ui/select/SelectContent.vue +51 -51
  45. package/dist/admin/components/ui/select/SelectGroup.vue +15 -15
  46. package/dist/admin/components/ui/select/SelectItem.vue +53 -53
  47. package/dist/admin/components/ui/select/SelectItemText.vue +15 -15
  48. package/dist/admin/components/ui/select/SelectLabel.vue +17 -17
  49. package/dist/admin/components/ui/select/SelectScrollDownButton.vue +26 -26
  50. package/dist/admin/components/ui/select/SelectScrollUpButton.vue +26 -26
  51. package/dist/admin/components/ui/select/SelectSeparator.vue +19 -19
  52. package/dist/admin/components/ui/select/SelectTrigger.vue +44 -44
  53. package/dist/admin/components/ui/select/SelectValue.vue +15 -15
  54. package/dist/admin/components/ui/select/index.js +1 -1
  55. package/dist/admin/components/ui/separator/Separator.vue +29 -29
  56. package/dist/admin/components/ui/separator/index.js +1 -1
  57. package/dist/admin/components/ui/sheet/Sheet.vue +19 -19
  58. package/dist/admin/components/ui/sheet/SheetClose.vue +15 -15
  59. package/dist/admin/components/ui/sheet/SheetContent.vue +63 -63
  60. package/dist/admin/components/ui/sheet/SheetDescription.vue +21 -21
  61. package/dist/admin/components/ui/sheet/SheetFooter.vue +16 -16
  62. package/dist/admin/components/ui/sheet/SheetHeader.vue +15 -15
  63. package/dist/admin/components/ui/sheet/SheetOverlay.vue +21 -21
  64. package/dist/admin/components/ui/sheet/SheetTitle.vue +21 -21
  65. package/dist/admin/components/ui/sheet/SheetTrigger.vue +15 -15
  66. package/dist/admin/components/ui/sheet/index.js +1 -1
  67. package/dist/admin/components/ui/sonner/Toaster.vue +117 -117
  68. package/dist/admin/components/ui/sonner/index.js +1 -1
  69. package/dist/admin/components/ui/table/Table.vue +16 -16
  70. package/dist/admin/components/ui/table/TableBody.vue +17 -17
  71. package/dist/admin/components/ui/table/TableCaption.vue +17 -17
  72. package/dist/admin/components/ui/table/TableCell.vue +22 -22
  73. package/dist/admin/components/ui/table/TableEmpty.vue +34 -34
  74. package/dist/admin/components/ui/table/TableFooter.vue +17 -17
  75. package/dist/admin/components/ui/table/TableHead.vue +17 -17
  76. package/dist/admin/components/ui/table/TableHeader.vue +17 -17
  77. package/dist/admin/components/ui/table/TableRow.vue +17 -17
  78. package/dist/admin/components/ui/table/index.js +1 -1
  79. package/dist/admin/components/ui/tabs/Tabs.vue +24 -24
  80. package/dist/admin/components/ui/tabs/TabsContent.vue +21 -21
  81. package/dist/admin/components/ui/tabs/TabsList.vue +24 -24
  82. package/dist/admin/components/ui/tabs/TabsTrigger.vue +26 -26
  83. package/dist/admin/components/ui/tabs/index.js +1 -1
  84. package/dist/admin/components/ui/tooltip/Tooltip.vue +19 -19
  85. package/dist/admin/components/ui/tooltip/TooltipContent.vue +34 -34
  86. package/dist/admin/components/ui/tooltip/TooltipProvider.vue +14 -14
  87. package/dist/admin/components/ui/tooltip/TooltipTrigger.vue +15 -15
  88. package/dist/admin/components/ui/tooltip/index.js +1 -1
  89. package/dist/admin/components/vm-action-btn.vue +136 -136
  90. package/dist/admin/components/vm-aside-list-item.vue +136 -136
  91. package/dist/admin/components/vm-aside.vue +229 -229
  92. package/dist/admin/components/vm-auto-perm-dialog.vue +371 -371
  93. package/dist/admin/components/vm-card-grid.vue +37 -37
  94. package/dist/admin/components/vm-card-head.vue +45 -45
  95. package/dist/admin/components/vm-card-meta.vue +22 -22
  96. package/dist/admin/components/vm-card-title.vue +56 -56
  97. package/dist/admin/components/vm-card.vue +176 -176
  98. package/dist/admin/components/vm-check-tree.vue +340 -340
  99. package/dist/admin/components/vm-clamp-text.vue +39 -39
  100. package/dist/admin/components/vm-dept-tree.vue +497 -497
  101. package/dist/admin/components/vm-empty.vue +68 -68
  102. package/dist/admin/components/vm-eps-perm-picker.vue +123 -123
  103. package/dist/admin/components/vm-form-dialog.vue +632 -632
  104. package/dist/admin/components/vm-group-cascader.vue +560 -560
  105. package/dist/admin/components/vm-icon-btn.vue +88 -88
  106. package/dist/admin/components/vm-icon-picker.vue +647 -647
  107. package/dist/admin/components/vm-inline-search.vue +61 -61
  108. package/dist/admin/components/vm-loading.vue +114 -114
  109. package/dist/admin/components/vm-markdown.vue +405 -405
  110. package/dist/admin/components/vm-marquee.vue +265 -265
  111. package/dist/admin/components/vm-page-tabs.vue +94 -94
  112. package/dist/admin/components/vm-perm-section.vue +57 -57
  113. package/dist/admin/components/vm-ri-icon.vue +23 -23
  114. package/dist/admin/components/vm-role-picker.vue +314 -314
  115. package/dist/admin/components/vm-split-layout.vue +106 -106
  116. package/dist/admin/components/vm-thumb.vue +49 -49
  117. package/dist/admin/components/vm-view-path-picker.vue +59 -59
  118. package/dist/admin/crud/auto-fields.js +1 -1
  119. package/dist/admin/crud/components/vm-avatar.vue +104 -104
  120. package/dist/admin/crud/components/vm-color-picker.vue +1626 -1626
  121. package/dist/admin/crud/components/vm-column-custom.vue +193 -193
  122. package/dist/admin/crud/components/vm-context-menu.vue +105 -105
  123. package/dist/admin/crud/components/vm-copy-btn.vue +102 -102
  124. package/dist/admin/crud/components/vm-date-calendar-panel.vue +537 -537
  125. package/dist/admin/crud/components/vm-date-picker.vue +75 -75
  126. package/dist/admin/crud/components/vm-date-range.vue +88 -88
  127. package/dist/admin/crud/components/vm-date-text.vue +42 -42
  128. package/dist/admin/crud/components/vm-datetime-field.vue +215 -215
  129. package/dist/admin/crud/components/vm-datetime-picker.vue +9 -9
  130. package/dist/admin/crud/components/vm-dict-tag.vue +112 -112
  131. package/dist/admin/crud/components/vm-ellipsis-text.vue +34 -34
  132. package/dist/admin/crud/components/vm-form-hint.vue +81 -81
  133. package/dist/admin/crud/components/vm-json-code.vue +41 -41
  134. package/dist/admin/crud/components/vm-json-editor.vue +161 -161
  135. package/dist/admin/crud/components/vm-json-kv-editor.vue +318 -318
  136. package/dist/admin/crud/components/vm-kv-row.vue +51 -51
  137. package/dist/admin/crud/components/vm-multi-select.vue +279 -279
  138. package/dist/admin/crud/components/vm-number-range.vue +204 -204
  139. package/dist/admin/crud/components/vm-preview-viewer.vue +894 -894
  140. package/dist/admin/crud/components/vm-radio.vue +87 -87
  141. package/dist/admin/crud/components/vm-richtext.vue +313 -313
  142. package/dist/admin/crud/components/vm-select.vue +570 -570
  143. package/dist/admin/crud/components/vm-status-tag.vue +158 -158
  144. package/dist/admin/crud/components/vm-switch.vue +158 -158
  145. package/dist/admin/crud/components/vm-tag-list.vue +108 -108
  146. package/dist/admin/crud/components/vm-text-link.vue +52 -52
  147. package/dist/admin/crud/components/vm-toggle-switch.vue +84 -84
  148. package/dist/admin/crud/components/vm-tree-select.vue +450 -450
  149. package/dist/admin/crud/components/vm-upload-item.vue +298 -298
  150. package/dist/admin/crud/components/vm-upload.vue +436 -436
  151. package/dist/admin/crud/config.js +1 -1
  152. package/dist/admin/crud/confirm.js +1 -1
  153. package/dist/admin/crud/crud-page-request.js +1 -1
  154. package/dist/admin/crud/data-i18n.js +1 -1
  155. package/dist/admin/crud/dict.js +1 -1
  156. package/dist/admin/crud/export-fetch.js +1 -1
  157. package/dist/admin/crud/index.js +1 -0
  158. package/dist/admin/crud/key.js +1 -1
  159. package/dist/admin/crud/plugins.js +1 -1
  160. package/dist/admin/crud/span.js +1 -1
  161. package/dist/admin/crud/style.js +1 -1
  162. package/dist/admin/crud/useCrud.js +3 -0
  163. package/dist/admin/crud/validate.js +1 -1
  164. package/dist/admin/crud/vm-add-btn.vue +70 -70
  165. package/dist/admin/crud/vm-adv-search.vue +83 -83
  166. package/dist/admin/crud/vm-crud.vue +711 -711
  167. package/dist/admin/crud/vm-data-i18n-btn.vue +456 -456
  168. package/dist/admin/crud/vm-data-i18n-lang.vue +183 -183
  169. package/dist/admin/crud/vm-export-btn.vue +183 -183
  170. package/dist/admin/crud/vm-flex.vue +14 -14
  171. package/dist/admin/crud/vm-form.vue +33 -15
  172. package/dist/admin/crud/vm-import-btn.vue +747 -747
  173. package/dist/admin/crud/vm-multi-delete-btn.vue +49 -49
  174. package/dist/admin/crud/vm-pagination.vue +212 -212
  175. package/dist/admin/crud/vm-refresh-btn.vue +35 -35
  176. package/dist/admin/crud/vm-row.vue +55 -55
  177. package/dist/admin/crud/vm-search-key.vue +78 -78
  178. package/dist/admin/crud/vm-search.vue +466 -466
  179. package/dist/admin/crud/vm-table.vue +1390 -1390
  180. package/dist/admin/crud/vm-tabs.vue +94 -94
  181. package/dist/admin/crud/vm-toolbar.vue +357 -357
  182. package/dist/admin/crud/vm-upsert.vue +765 -765
  183. package/dist/admin/directives/perm.js +1 -1
  184. package/dist/admin/env.d.ts +1 -1
  185. package/dist/admin/hooks/useUpload.js +1 -1
  186. package/dist/admin/index.d.ts +1 -31
  187. package/dist/admin/lib/browser.js +1 -1
  188. package/dist/admin/lib/cn.js +1 -1
  189. package/dist/admin/lib/dialog-float.js +1 -1
  190. package/dist/admin/lib/export-excel.js +1 -1
  191. package/dist/admin/lib/import-excel.js +1 -1
  192. package/dist/admin/lib/json.js +1 -1
  193. package/dist/admin/lib/menu.js +1 -1
  194. package/dist/admin/lib/micro-locale.js +1 -1
  195. package/dist/admin/lib/micro-theme.js +1 -1
  196. package/dist/admin/lib/shell.js +1 -1
  197. package/dist/admin/lib/theme-color-options.js +1 -1
  198. package/dist/admin/lib/tree.js +1 -1
  199. package/dist/admin/lib/upload.js +1 -1
  200. package/dist/admin/lib/video-frame.js +1 -1
  201. package/dist/admin/router/create.js +1 -1
  202. package/dist/admin/router/guards.js +1 -1
  203. package/dist/admin/router/index.d.ts +1 -5
  204. package/dist/admin/service/index.d.ts +1 -11
  205. package/dist/admin/styles/base.css +121 -121
  206. package/dist/admin/vendor/browser-image-compression.js +1144 -1144
  207. package/dist/admin/vendor/decimal-js.js +12 -12
  208. package/dist/admin/vendor/xlsx.js +263 -263
  209. package/dist/ai/index.js +1 -1
  210. package/dist/client/admin-vendor.d.ts +1 -13
  211. package/dist/client/ai-model-registry.js +1 -1
  212. package/dist/client/base.js +1 -1
  213. package/dist/client/configure.js +1 -1
  214. package/dist/client/dict.js +1 -1
  215. package/dist/client/eps-payload.js +1 -1
  216. package/dist/client/eps.js +1 -1
  217. package/dist/client/index.d.ts +1 -7
  218. package/dist/client/index.js +1 -1
  219. package/dist/client/locale-change.js +1 -1
  220. package/dist/client/locale-store.js +1 -1
  221. package/dist/client/service.js +1 -1
  222. package/dist/client/vite-admin.d.ts +1 -40
  223. package/dist/client/vite-admin.js +1 -1
  224. package/dist/client/vite-auto-import.d.ts +1 -2
  225. package/dist/client/vite-auto-import.js +1 -1
  226. package/dist/client/vite-micro-proxy.d.ts +1 -20
  227. package/dist/client/vite-micro-proxy.js +1 -1
  228. package/dist/client/vite-plugin-eps.d.ts +1 -20
  229. package/dist/client/vite-plugin-eps.js +1 -1
  230. package/dist/client/vite-resolve.d.ts +1 -16
  231. package/dist/client/vite-resolve.js +1 -1
  232. package/dist/config/index.js +1 -1
  233. package/dist/core/index.d.ts +1 -1
  234. package/dist/index.js +1 -1
  235. package/dist/ioc/index.d.ts +1 -1
  236. package/dist/server/index.d.ts +1 -1
  237. package/dist/server/index.js +1 -1
  238. package/dist/shared/datetime-picker.js +1 -1
  239. package/dist/shared/decimal.js +1 -1
  240. package/dist/shared/excel.js +1 -1
  241. package/dist/shared/index.js +1 -1
  242. package/dist/shared/locale-json.js +1 -1
  243. package/dist/shared/tree.js +1 -1
  244. package/package.json +1 -1
  245. package/typings/admin/base/auth.ts +24 -24
  246. package/typings/admin/base/permission.ts +19 -19
  247. package/typings/admin/comm/cascader.ts +7 -7
  248. package/typings/admin/comm/check-tree.ts +7 -7
  249. package/typings/admin/comm/crud.ts +427 -427
  250. package/typings/admin/comm/eps.ts +86 -86
  251. package/typings/admin/comm/request.ts +16 -16
  252. package/typings/admin/comm/service.ts +43 -43
  253. package/typings/admin/comm/upload.ts +39 -39
  254. package/typings/admin/theme.ts +10 -10
  255. package/typings/admin/vome/browser.ts +11 -11
  256. package/typings/admin/vome/module.ts +13 -13
  257. package/typings/admin/vome/tags.ts +9 -9
  258. package/typings/comm/crud.ts +83 -83
  259. package/typings/comm/page.ts +18 -18
  260. package/typings/comm/scan.ts +6 -6
  261. package/typings/common.ts +4 -4
  262. package/typings/context/data.ts +10 -10
  263. package/typings/ext/market-seat.ts +42 -42
  264. package/typings/ext/market.ts +55 -55
  265. package/typings/ext/module.ts +64 -64
  266. package/typings/ext/plugin.ts +38 -38
  267. package/typings/ioc/metadata.ts +34 -34
  268. package/typings/logger/config.ts +6 -6
  269. package/typings/routing/crud.ts +199 -199
  270. package/typings/routing/eps.ts +88 -88
  271. package/typings/routing/meta.ts +63 -63
  272. package/typings/routing/register.ts +21 -21
  273. package/typings/routing/scan-context.ts +7 -7
  274. package/dist/admin/api/client.d.ts +0 -50
  275. package/dist/admin/components/ui/avatar/index.d.ts +0 -3
  276. package/dist/admin/components/ui/badge/index.d.ts +0 -6
  277. package/dist/admin/components/ui/button/index.d.ts +0 -7
  278. package/dist/admin/components/ui/checkbox/index.d.ts +0 -1
  279. package/dist/admin/components/ui/dialog/index.d.ts +0 -10
  280. package/dist/admin/components/ui/dropdown-menu/index.d.ts +0 -15
  281. package/dist/admin/components/ui/input/index.d.ts +0 -1
  282. package/dist/admin/components/ui/label/index.d.ts +0 -1
  283. package/dist/admin/components/ui/scroll-area/index.d.ts +0 -2
  284. package/dist/admin/components/ui/select/index.d.ts +0 -11
  285. package/dist/admin/components/ui/separator/index.d.ts +0 -1
  286. package/dist/admin/components/ui/sheet/index.d.ts +0 -8
  287. package/dist/admin/components/ui/sonner/index.d.ts +0 -1
  288. package/dist/admin/components/ui/table/index.d.ts +0 -9
  289. package/dist/admin/components/ui/tabs/index.d.ts +0 -4
  290. package/dist/admin/components/ui/tooltip/index.d.ts +0 -4
  291. package/dist/admin/crud/auto-fields.d.ts +0 -68
  292. package/dist/admin/crud/config.d.ts +0 -5
  293. package/dist/admin/crud/confirm.d.ts +0 -19
  294. package/dist/admin/crud/crud-page-request.d.ts +0 -21
  295. package/dist/admin/crud/data-i18n.d.ts +0 -62
  296. package/dist/admin/crud/dict.d.ts +0 -4
  297. package/dist/admin/crud/export-fetch.d.ts +0 -22
  298. package/dist/admin/crud/index.d.ts +0 -60
  299. package/dist/admin/crud/json-kv.d.ts +0 -9
  300. package/dist/admin/crud/key.d.ts +0 -22
  301. package/dist/admin/crud/paging.d.ts +0 -2
  302. package/dist/admin/crud/plugins.d.ts +0 -63
  303. package/dist/admin/crud/registry.d.ts +0 -3
  304. package/dist/admin/crud/span.d.ts +0 -17
  305. package/dist/admin/crud/style.d.ts +0 -82
  306. package/dist/admin/crud/useCrud.d.ts +0 -21
  307. package/dist/admin/crud/validate.d.ts +0 -7
  308. package/dist/admin/directives/perm.d.ts +0 -3
  309. package/dist/admin/hooks/useBrowser.d.ts +0 -6
  310. package/dist/admin/hooks/useUpload.d.ts +0 -8
  311. package/dist/admin/hooks/useVome.d.ts +0 -10
  312. package/dist/admin/lib/browser.d.ts +0 -3
  313. package/dist/admin/lib/cn.d.ts +0 -2
  314. package/dist/admin/lib/compress-image.d.ts +0 -12
  315. package/dist/admin/lib/dialog-float.d.ts +0 -8
  316. package/dist/admin/lib/eps.d.ts +0 -2
  317. package/dist/admin/lib/export-excel.d.ts +0 -9
  318. package/dist/admin/lib/file-preview.d.ts +0 -9
  319. package/dist/admin/lib/import-excel.d.ts +0 -21
  320. package/dist/admin/lib/json.d.ts +0 -11
  321. package/dist/admin/lib/menu.d.ts +0 -3
  322. package/dist/admin/lib/micro-locale.d.ts +0 -5
  323. package/dist/admin/lib/micro-theme.d.ts +0 -14
  324. package/dist/admin/lib/module.d.ts +0 -21
  325. package/dist/admin/lib/scarce-assets.d.ts +0 -5
  326. package/dist/admin/lib/shell.d.ts +0 -8
  327. package/dist/admin/lib/theme-color-options.d.ts +0 -15
  328. package/dist/admin/lib/tree.d.ts +0 -2
  329. package/dist/admin/lib/upload.d.ts +0 -17
  330. package/dist/admin/lib/video-frame.d.ts +0 -6
  331. package/dist/admin/router/create.d.ts +0 -16
  332. package/dist/admin/router/guards.d.ts +0 -6
  333. package/dist/admin/router/menu-routes.d.ts +0 -13
  334. package/dist/admin/stores/app.d.ts +0 -13
  335. package/dist/admin/stores/tags.d.ts +0 -14
  336. package/dist/admin/stores/user.d.ts +0 -48
  337. package/dist/client/ai-model-registry.d.ts +0 -16
  338. package/dist/client/base.d.ts +0 -28
  339. package/dist/client/configure.d.ts +0 -33
  340. package/dist/client/dict.d.ts +0 -31
  341. package/dist/client/eps-payload.d.ts +0 -3
  342. package/dist/client/eps.d.ts +0 -17
  343. package/dist/client/locale-change.d.ts +0 -16
  344. package/dist/client/locale-store.d.ts +0 -105
  345. package/dist/client/service.d.ts +0 -29
@@ -1,106 +1,106 @@
1
- <template>
2
- <div
3
- class="vm-split-layout"
4
- :class="{ 'has-toolbar': Boolean($slots.toolbar) }"
5
- :style="gridStyle"
6
- >
7
- <div v-if="$slots.toolbar" class="vm-split-layout__toolbar">
8
- <slot name="toolbar" />
9
- </div>
10
- <aside v-if="$slots.aside" class="vm-split-layout__aside">
11
- <slot name="aside" />
12
- </aside>
13
- <div class="vm-split-layout__main">
14
- <slot />
15
- </div>
16
- </div>
17
- </template>
18
-
19
- <script setup lang="ts">
20
- import { computed } from 'vue'
21
-
22
- defineOptions({ name: 'vm-split-layout' })
23
-
24
- const props = withDefaults(
25
- defineProps<{
26
- asideWidth?: string
27
- }>(),
28
- {
29
- asideWidth: '240px',
30
- },
31
- )
32
-
33
- const gridStyle = computed(() => ({
34
- '--vm-split-aside': props.asideWidth,
35
- }))
36
- </script>
37
-
38
- <style lang="scss" scoped>
39
- .vm-split-layout {
40
- display: grid;
41
- width: 100%;
42
- flex: 1;
43
- min-height: 0;
44
- align-self: stretch;
45
- overflow: hidden;
46
- border-radius: var(--radius);
47
- background: var(--card);
48
- box-shadow: var(--shadow-soft);
49
- grid-template-columns: var(--vm-split-aside, 240px) minmax(0, 1fr);
50
- grid-template-rows: minmax(0, 1fr);
51
- }
52
-
53
- .vm-split-layout.has-toolbar {
54
- grid-template-rows: auto minmax(0, 1fr);
55
- }
56
-
57
- .vm-split-layout__toolbar {
58
- grid-row: 1;
59
- grid-column: 1 / -1;
60
- display: flex;
61
- flex-wrap: wrap;
62
- align-items: center;
63
- justify-content: space-between;
64
- gap: 8px;
65
- padding: 12px 16px;
66
- border-bottom: 1px solid color-mix(in srgb, var(--foreground) 8%, transparent);
67
- }
68
-
69
- .vm-split-layout__aside {
70
- grid-row: 1;
71
- grid-column: 1;
72
- min-height: 0;
73
- overflow: hidden;
74
- border-right: 1px solid color-mix(in srgb, var(--foreground) 8%, transparent);
75
-
76
- :deep(.vm-aside) {
77
- border-right: none;
78
- }
79
- }
80
-
81
- .has-toolbar .vm-split-layout__aside {
82
- grid-row: 2;
83
- }
84
-
85
- .vm-split-layout__main {
86
- grid-row: 1;
87
- grid-column: 2;
88
- display: flex;
89
- flex-direction: column;
90
- min-width: 0;
91
- min-height: 0;
92
- overflow: hidden;
93
- }
94
-
95
- .has-toolbar .vm-split-layout__main {
96
- grid-row: 2;
97
- }
98
-
99
- .vm-split-layout__main :deep(.vm-crud) {
100
- flex: 1;
101
- min-height: 0;
102
- height: 100%;
103
- border-radius: 0;
104
- box-shadow: none;
105
- }
106
- </style>
1
+ <template>
2
+ <div
3
+ class="vm-split-layout"
4
+ :class="{ 'has-toolbar': Boolean($slots.toolbar) }"
5
+ :style="gridStyle"
6
+ >
7
+ <div v-if="$slots.toolbar" class="vm-split-layout__toolbar">
8
+ <slot name="toolbar" />
9
+ </div>
10
+ <aside v-if="$slots.aside" class="vm-split-layout__aside">
11
+ <slot name="aside" />
12
+ </aside>
13
+ <div class="vm-split-layout__main">
14
+ <slot />
15
+ </div>
16
+ </div>
17
+ </template>
18
+
19
+ <script setup lang="ts">
20
+ import { computed } from 'vue'
21
+
22
+ defineOptions({ name: 'vm-split-layout' })
23
+
24
+ const props = withDefaults(
25
+ defineProps<{
26
+ asideWidth?: string
27
+ }>(),
28
+ {
29
+ asideWidth: '240px',
30
+ },
31
+ )
32
+
33
+ const gridStyle = computed(() => ({
34
+ '--vm-split-aside': props.asideWidth,
35
+ }))
36
+ </script>
37
+
38
+ <style lang="scss" scoped>
39
+ .vm-split-layout {
40
+ display: grid;
41
+ width: 100%;
42
+ flex: 1;
43
+ min-height: 0;
44
+ align-self: stretch;
45
+ overflow: hidden;
46
+ border-radius: var(--radius);
47
+ background: var(--card);
48
+ box-shadow: var(--shadow-soft);
49
+ grid-template-columns: var(--vm-split-aside, 240px) minmax(0, 1fr);
50
+ grid-template-rows: minmax(0, 1fr);
51
+ }
52
+
53
+ .vm-split-layout.has-toolbar {
54
+ grid-template-rows: auto minmax(0, 1fr);
55
+ }
56
+
57
+ .vm-split-layout__toolbar {
58
+ grid-row: 1;
59
+ grid-column: 1 / -1;
60
+ display: flex;
61
+ flex-wrap: wrap;
62
+ align-items: center;
63
+ justify-content: space-between;
64
+ gap: 8px;
65
+ padding: 12px 16px;
66
+ border-bottom: 1px solid color-mix(in srgb, var(--foreground) 8%, transparent);
67
+ }
68
+
69
+ .vm-split-layout__aside {
70
+ grid-row: 1;
71
+ grid-column: 1;
72
+ min-height: 0;
73
+ overflow: hidden;
74
+ border-right: 1px solid color-mix(in srgb, var(--foreground) 8%, transparent);
75
+
76
+ :deep(.vm-aside) {
77
+ border-right: none;
78
+ }
79
+ }
80
+
81
+ .has-toolbar .vm-split-layout__aside {
82
+ grid-row: 2;
83
+ }
84
+
85
+ .vm-split-layout__main {
86
+ grid-row: 1;
87
+ grid-column: 2;
88
+ display: flex;
89
+ flex-direction: column;
90
+ min-width: 0;
91
+ min-height: 0;
92
+ overflow: hidden;
93
+ }
94
+
95
+ .has-toolbar .vm-split-layout__main {
96
+ grid-row: 2;
97
+ }
98
+
99
+ .vm-split-layout__main :deep(.vm-crud) {
100
+ flex: 1;
101
+ min-height: 0;
102
+ height: 100%;
103
+ border-radius: 0;
104
+ box-shadow: none;
105
+ }
106
+ </style>
@@ -1,49 +1,49 @@
1
- <template>
2
- <span class="vm-thumb" :style="boxStyle">
3
- <img v-if="src" :src="src" alt="" />
4
- <i v-else-if="icon" :class="icon" aria-hidden="true" />
5
- <slot v-else />
6
- </span>
7
- </template>
8
-
9
- <script setup lang="ts">
10
- import { computed } from 'vue'
11
-
12
- defineOptions({ name: 'vm-thumb' })
13
-
14
- const props = withDefaults(
15
- defineProps<{
16
- src?: string
17
- icon?: string
18
- size?: number
19
- }>(),
20
- {
21
- size: 32,
22
- },
23
- )
24
-
25
- const boxStyle = computed(() => ({
26
- width: `${props.size}px`,
27
- height: `${props.size}px`,
28
- }))
29
- </script>
30
-
31
- <style lang="scss" scoped>
32
- .vm-thumb {
33
- display: inline-flex;
34
- flex-shrink: 0;
35
- align-items: center;
36
- justify-content: center;
37
- overflow: hidden;
38
- border-radius: 8px;
39
- background: color-mix(in srgb, var(--brand) 12%, var(--card));
40
- color: var(--brand);
41
- font-size: 16px;
42
-
43
- img {
44
- width: 100%;
45
- height: 100%;
46
- object-fit: cover;
47
- }
48
- }
49
- </style>
1
+ <template>
2
+ <span class="vm-thumb" :style="boxStyle">
3
+ <img v-if="src" :src="src" alt="" />
4
+ <i v-else-if="icon" :class="icon" aria-hidden="true" />
5
+ <slot v-else />
6
+ </span>
7
+ </template>
8
+
9
+ <script setup lang="ts">
10
+ import { computed } from 'vue'
11
+
12
+ defineOptions({ name: 'vm-thumb' })
13
+
14
+ const props = withDefaults(
15
+ defineProps<{
16
+ src?: string
17
+ icon?: string
18
+ size?: number
19
+ }>(),
20
+ {
21
+ size: 32,
22
+ },
23
+ )
24
+
25
+ const boxStyle = computed(() => ({
26
+ width: `${props.size}px`,
27
+ height: `${props.size}px`,
28
+ }))
29
+ </script>
30
+
31
+ <style lang="scss" scoped>
32
+ .vm-thumb {
33
+ display: inline-flex;
34
+ flex-shrink: 0;
35
+ align-items: center;
36
+ justify-content: center;
37
+ overflow: hidden;
38
+ border-radius: 8px;
39
+ background: color-mix(in srgb, var(--brand) 12%, var(--card));
40
+ color: var(--brand);
41
+ font-size: 16px;
42
+
43
+ img {
44
+ width: 100%;
45
+ height: 100%;
46
+ object-fit: cover;
47
+ }
48
+ }
49
+ </style>
@@ -1,59 +1,59 @@
1
- <template>
2
- <vm-group-cascader
3
- :model-value="modelValue ?? ''"
4
- :tree="tree"
5
- :placeholder="placeholder ?? crudLabel('pickFilePath')"
6
- :clearable="clearable"
7
- :editable="editable"
8
- :disabled="disabled"
9
- @update:model-value="(v) => emit('update:modelValue', v)"
10
- />
11
- </template>
12
-
13
- <script setup lang="ts">
14
- import { crudLabel } from '../crud/style'
15
- import { ref, onMounted, onUnmounted } from 'vue'
16
- import {
17
- listViewsTree,
18
- VIEWS_RESCAN_EVENT,
19
- } from '../lib/module'
20
- import type { ViewsTreeNode } from '../../../typings/admin/vome/module'
21
- defineOptions({ name: 'vm-view-path-picker' })
22
-
23
- withDefaults(
24
- defineProps<{
25
- modelValue?: string | null
26
- placeholder?: string
27
- clearable?: boolean
28
- editable?: boolean
29
- disabled?: boolean
30
- }>(),
31
- {
32
- placeholder: undefined,
33
- clearable: true,
34
- editable: true,
35
- },
36
- )
37
-
38
- const emit = defineEmits<{
39
- 'update:modelValue': [v: string]
40
- }>()
41
-
42
- const tree = ref<ViewsTreeNode[]>([])
43
-
44
- function rescan() {
45
- tree.value = listViewsTree()
46
- }
47
-
48
- onMounted(() => {
49
- rescan()
50
- window.addEventListener(VIEWS_RESCAN_EVENT, rescan)
51
- })
52
-
53
- onUnmounted(() => {
54
- window.removeEventListener(VIEWS_RESCAN_EVENT, rescan)
55
- })
56
-
57
- // 打开选择器前再扫一次(配合 HMR 事件)
58
- defineExpose({ rescan })
59
- </script>
1
+ <template>
2
+ <vm-group-cascader
3
+ :model-value="modelValue ?? ''"
4
+ :tree="tree"
5
+ :placeholder="placeholder ?? crudLabel('pickFilePath')"
6
+ :clearable="clearable"
7
+ :editable="editable"
8
+ :disabled="disabled"
9
+ @update:model-value="(v) => emit('update:modelValue', v)"
10
+ />
11
+ </template>
12
+
13
+ <script setup lang="ts">
14
+ import { crudLabel } from '../crud/style'
15
+ import { ref, onMounted, onUnmounted } from 'vue'
16
+ import {
17
+ listViewsTree,
18
+ VIEWS_RESCAN_EVENT,
19
+ } from '../lib/module'
20
+ import type { ViewsTreeNode } from '../../../typings/admin/vome/module'
21
+ defineOptions({ name: 'vm-view-path-picker' })
22
+
23
+ withDefaults(
24
+ defineProps<{
25
+ modelValue?: string | null
26
+ placeholder?: string
27
+ clearable?: boolean
28
+ editable?: boolean
29
+ disabled?: boolean
30
+ }>(),
31
+ {
32
+ placeholder: undefined,
33
+ clearable: true,
34
+ editable: true,
35
+ },
36
+ )
37
+
38
+ const emit = defineEmits<{
39
+ 'update:modelValue': [v: string]
40
+ }>()
41
+
42
+ const tree = ref<ViewsTreeNode[]>([])
43
+
44
+ function rescan() {
45
+ tree.value = listViewsTree()
46
+ }
47
+
48
+ onMounted(() => {
49
+ rescan()
50
+ window.addEventListener(VIEWS_RESCAN_EVENT, rescan)
51
+ })
52
+
53
+ onUnmounted(() => {
54
+ window.removeEventListener(VIEWS_RESCAN_EVENT, rescan)
55
+ })
56
+
57
+ // 打开选择器前再扫一次(配合 HMR 事件)
58
+ defineExpose({ rescan })
59
+ </script>
@@ -1 +1 @@
1
- const _0x487ae9=_0x4415;(function(_0x2ad4cc,_0x4d91bd){const _0x3c9396=_0x4415,_0x52789f=_0x2ad4cc();while(!![]){try{const _0x5740ca=parseInt(_0x3c9396(0xe5))/0x1+-parseInt(_0x3c9396(0xe3))/0x2*(parseInt(_0x3c9396(0x113))/0x3)+parseInt(_0x3c9396(0x11d))/0x4+parseInt(_0x3c9396(0xdd))/0x5*(-parseInt(_0x3c9396(0xe9))/0x6)+parseInt(_0x3c9396(0xf6))/0x7*(parseInt(_0x3c9396(0xec))/0x8)+-parseInt(_0x3c9396(0x111))/0x9*(-parseInt(_0x3c9396(0x116))/0xa)+-parseInt(_0x3c9396(0xda))/0xb;if(_0x5740ca===_0x4d91bd)break;else _0x52789f['push'](_0x52789f['shift']());}catch(_0x585e5c){_0x52789f['push'](_0x52789f['shift']());}}}(_0x4c5e,0x49afe));import{findEpsEntity}from'../lib/eps';import{getDictOptions}from'../../client';export const UPSERT_BUILTIN_IGNORE=['id',_0x487ae9(0x10e),'createTime',_0x487ae9(0xe7),_0x487ae9(0x101)];export const TABLE_BUILTIN_IGNORE=[_0x487ae9(0x101),_0x487ae9(0xe7)];export function buildAutoOpButtons(_0x4b2e8e){const _0x99da74=_0x487ae9,_0x4a43c9=_0x4b2e8e[_0x99da74(0xdc)],_0x51e57a=_0x2513ec=>_0x4a43c9!=null&&typeof _0x4a43c9===_0x99da74(0xf0)&&Object[_0x99da74(0xdf)][_0x99da74(0xd5)][_0x99da74(0xde)](_0x4a43c9,_0x2513ec),_0x42d848=_0x105558=>Boolean(_0x4b2e8e['_permission']?.[_0x105558]),_0x3cba01=[];if(_0x51e57a(_0x99da74(0x106))&&_0x42d848(_0x99da74(0x106)))_0x3cba01[_0x99da74(0xd3)](_0x99da74(0xfb));if(_0x51e57a(_0x99da74(0xf9))&&_0x42d848('delete'))_0x3cba01[_0x99da74(0xd3)](_0x99da74(0xf9));return _0x3cba01;}function dictKeyOf(_0x266d72){const _0x37961d=_0x487ae9;if(typeof _0x266d72['dict']===_0x37961d(0xea)&&_0x266d72[_0x37961d(0xe1)])return _0x266d72['dict'];if(Array[_0x37961d(0x107)](_0x266d72[_0x37961d(0xe1)])&&_0x266d72[_0x37961d(0xe1)][0x0])return _0x266d72[_0x37961d(0xe1)][0x0];return;}function isSwitchDict(_0x93d917){const _0x13eb85=_0x487ae9;return _0x93d917===_0x13eb85(0xd2)||_0x93d917===_0x13eb85(0xd9)||_0x93d917===_0x13eb85(0x104);}function switchDefaultValue(_0x39b64e){const _0x256a98=_0x487ae9;if(_0x39b64e==='yes_no_boolean')return![];if(_0x39b64e===_0x256a98(0x104))return 0x0;return 0x1;}function _0x4415(_0x29ee63,_0x13060f){_0x29ee63=_0x29ee63-0xd1;const _0x4c5e3b=_0x4c5e();let _0x441501=_0x4c5e3b[_0x29ee63];if(_0x4415['WaBYuF']===undefined){var _0x3907d4=function(_0x3963da){const _0x4ef317='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4b2e8e='',_0x4a43c9='';for(let _0x51e57a=0x0,_0x42d848,_0x3cba01,_0x2513ec=0x0;_0x3cba01=_0x3963da['charAt'](_0x2513ec++);~_0x3cba01&&(_0x42d848=_0x51e57a%0x4?_0x42d848*0x40+_0x3cba01:_0x3cba01,_0x51e57a++%0x4)?_0x4b2e8e+=String['fromCharCode'](0xff&_0x42d848>>(-0x2*_0x51e57a&0x6)):0x0){_0x3cba01=_0x4ef317['indexOf'](_0x3cba01);}for(let _0x105558=0x0,_0x266d72=_0x4b2e8e['length'];_0x105558<_0x266d72;_0x105558++){_0x4a43c9+='%'+('00'+_0x4b2e8e['charCodeAt'](_0x105558)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4a43c9);};_0x4415['kvlfqz']=_0x3907d4,_0x4415['cwGTtm']={},_0x4415['WaBYuF']=!![];}const _0x8fe44d=_0x4c5e3b[0x0],_0x2a7b90=_0x29ee63+_0x8fe44d,_0x21eeae=_0x4415['cwGTtm'][_0x2a7b90];return!_0x21eeae?(_0x441501=_0x4415['kvlfqz'](_0x441501),_0x4415['cwGTtm'][_0x2a7b90]=_0x441501):_0x441501=_0x21eeae,_0x441501;}function switchFormItem(_0x152379,_0x278aee,_0x2d2113){return{..._0x152379,'type':'switch','value':_0x2d2113,'dict':_0x278aee,'component':{'props':()=>mapDictOptions(_0x278aee)}};}export function mapDictOptions(_0x52da71){const _0x349c4a=_0x487ae9;return getDictOptions(_0x52da71)[_0x349c4a(0x102)](_0x19d860=>{const _0x282a89=_0x349c4a;let _0x16b740=_0x19d860[_0x282a89(0xef)];return typeof _0x19d860['value']===_0x282a89(0xea)&&/^-?\d+(\.\d+)?$/[_0x282a89(0x120)](_0x19d860['value'])&&(_0x16b740=Number(_0x19d860[_0x282a89(0xef)])),{'label':String(_0x19d860['label']??''),'value':_0x16b740,'color':_0x19d860[_0x282a89(0xf8)]};});}export function dictFirstValue(_0x534403){const _0x2a1cb2=_0x487ae9,_0x4c7b59=mapDictOptions(_0x534403)[0x0];return _0x4c7b59?.[_0x2a1cb2(0xef)];}export function resolveFormItemValue(_0x1800a9){const _0x3b37ae=_0x487ae9;return typeof _0x1800a9===_0x3b37ae(0x105)?_0x1800a9():_0x1800a9;}function isMainTableCol(_0x5e9a74){const _0x35b764=_0x487ae9;return!_0x5e9a74[_0x35b764(0xfa)]||_0x5e9a74['source'][_0x35b764(0xe0)]('a.');}function epsTableIgnore(_0x2df9ad){const _0x2ef3e2=_0x487ae9,_0x4600d5=_0x2df9ad[_0x2ef3e2(0xd8)]?findEpsEntity('/'+_0x2df9ad['namespace']):undefined,_0x314f7a=_0x4600d5?.[_0x2ef3e2(0x10a)]?.[_0x2ef3e2(0x11c)];return Array[_0x2ef3e2(0x107)](_0x314f7a)?_0x314f7a[_0x2ef3e2(0xf2)](_0x540f43=>typeof _0x540f43===_0x2ef3e2(0xea)&&_0x540f43):[];}function epsColumns(_0x44c82a){const _0x13be55=_0x487ae9,_0x2e2631=_0x44c82a[_0x13be55(0xd8)]?findEpsEntity('/'+_0x44c82a['namespace']):undefined;if(!_0x2e2631)return[];const _0x55366a=[..._0x2e2631[_0x13be55(0xff)]||[],..._0x2e2631[_0x13be55(0x109)]||[]],_0x5df06d=new Set(),_0x38bb93=[];for(const _0x1dca80 of _0x55366a){if(!_0x1dca80[_0x13be55(0x10c)]||!isMainTableCol(_0x1dca80))continue;if(_0x5df06d['has'](_0x1dca80['propertyName']))continue;_0x5df06d[_0x13be55(0xe2)](_0x1dca80['propertyName']),_0x38bb93['push'](_0x1dca80);}return _0x38bb93;}function columnTypeOf(_0x4a8ff7){return String(_0x4a8ff7['columnType']||'');}function sqlTypeOf(_0x363d05){const _0x54edc0=_0x487ae9;return String(_0x363d05[_0x54edc0(0x114)]||'')[_0x54edc0(0x11a)]();}function isTextCol(_0x375196){const _0x364544=_0x487ae9,_0x4c1813=columnTypeOf(_0x375196);if(_0x4c1813===_0x364544(0x10f))return!![];return sqlTypeOf(_0x375196)===_0x364544(0xfc);}function _0x4c5e(){const _0x498932=['ugDuzxH0','yxv0BW','mtiYoty3uNbttvvw','DgfIBgvqBhvNAw5Z','nJiWnZK5qw5su2Dn','C3fSvhLWzq','y3jLyxrLvgLTzq','mZaWt256tgLT','CMLNAhq','AgfZrgvMyxvSDa','AgfZ','Dg9mB3DLCKnHC2u','ugDtBwfSBeLUDa','AwDUB3jLrMLLBgrZ','mtyXmdG0nfnrEKvWsG','DM0TC3DPDgnO','C2vSzwn0','DgvZDa','BNvSBgfIBgu','C3rHDhvZ','ChvZAa','ugDszwfS','AgfZt3DUuhjVCgvYDhK','ugDtzxjPywW','ugDcAwDtzxjPywW','BMfTzxnWywnL','EwvZx25Vx2jVB2XLyw4','otu1nJiZouHUuNHbra','BwfUDwfS','CgvYBwLZC2LVBG','ntqWotvjC3vwy08','y2fSBa','ChjVDg90ExbL','C3rHCNrZv2L0Aa','zgLJDa','ywrK','nfrUy0Psrq','zMLUza','nty2odiYvxPWrNP1','CMvXDwLYzwq','DxbKyxrLvgLTzq','z2v0','mJrxtKT3zgq','C3rYAw5N','ugDjBNrLz2vY','mtK4nJmYy1P1veDg','C3DPDgnO','ChjVCa','DMfSDwu','B2jQzwn0','C2vSzwn0Aw9U','zMLSDgvY','Dgv4DgfYzwe','DhLWzq','C2vYDMLJzq','nZb2wfPWChO','ugDcAwDjBNq','y29SB3i','zgvSzxrL','C291CMnL','zwrPDa','Dgv4Da','BgvUz3rO','y29TBwvUDa','y29SDw1UCW','ugDoDw1LCMLJ','zgvSzxrLvgLTzq','BwfW','DgfIBgvpChrZ','EwvZx25Vx251BwjLCG','zNvUy3rPB24','DxbKyxrL','AxnbCNjHEq','C2nHBgu','CgfNzunVBhvTBNm','CgfNzvf1zxj5t3a','yM9VBgvHBG','ChjVCgvYDhLoyw1L','BNvTyMvY','DgvUyw50swq'];_0x4c5e=function(){return _0x498932;};return _0x4c5e();}function isIntegerCol(_0x5580bc){const _0x443699=_0x487ae9,_0x29db58=columnTypeOf(_0x5580bc);if(_0x29db58===_0x443699(0xeb)||_0x29db58===_0x443699(0xd6)||_0x29db58===_0x443699(0x11b)||_0x29db58===_0x443699(0xf7)||_0x29db58==='PgSmallSerial'||_0x29db58===_0x443699(0xd7))return!![];if(_0x5580bc[_0x443699(0xf4)]===_0x443699(0x10d)&&!isNumericCol(_0x5580bc))return!![];return/^(integer|serial|smallint|bigint|smallserial|bigserial)\b/[_0x443699(0x120)](sqlTypeOf(_0x5580bc));}function isNumericCol(_0x19fc73){const _0x283a01=_0x487ae9,_0x1b5343=columnTypeOf(_0x19fc73);if(_0x1b5343===_0x283a01(0x100)||_0x1b5343==='PgDoublePrecision'||_0x1b5343===_0x283a01(0xd4))return!![];return/^(numeric|decimal|double|real)\b/[_0x283a01(0x120)](sqlTypeOf(_0x19fc73));}function isBooleanCol(_0x29c271){const _0x1177e1=_0x487ae9;return columnTypeOf(_0x29c271)==='PgBoolean'||_0x29c271['type']===_0x1177e1(0x10b)||sqlTypeOf(_0x29c271)[_0x1177e1(0xe0)](_0x1177e1(0x10b));}function numberPrecision(_0x1e3924){const _0x4425b1=_0x487ae9;if(isIntegerCol(_0x1e3924))return 0x0;if(typeof _0x1e3924[_0x4425b1(0x108)]==='number')return _0x1e3924[_0x4425b1(0x108)];return 0x2;}export function mergeByProp(_0x3fe6b7,_0x17ac12){const _0x49dfd9=_0x487ae9,_0x118d20=_0x17ac12[_0x49dfd9(0xf2)](_0xa5cfdb=>Boolean(_0xa5cfdb[_0x49dfd9(0xee)])),_0x1fffae=_0x17ac12[_0x49dfd9(0xf2)](_0x3b9652=>!_0x3b9652[_0x49dfd9(0xee)]&&_0x3b9652[_0x49dfd9(0xf4)]),_0x2d77e9=new Map(_0x118d20[_0x49dfd9(0x102)](_0x111652=>[String(_0x111652[_0x49dfd9(0xee)]),_0x111652])),_0x3c8e3b=new Set(_0x1fffae['map'](_0x5dc2d5=>String(_0x5dc2d5['type']))),_0x59ed8a=new Set(),_0x3253fe=[];for(const _0x227863 of _0x3fe6b7){if(!_0x227863['prop']&&_0x227863[_0x49dfd9(0xf4)]){if(_0x3c8e3b[_0x49dfd9(0x119)](String(_0x227863['type'])))continue;_0x3253fe[_0x49dfd9(0xd3)](_0x227863);continue;}if(!_0x227863['prop'])continue;const _0x8840e0=String(_0x227863[_0x49dfd9(0xee)]),_0x1d82a5=_0x2d77e9[_0x49dfd9(0xe8)](_0x8840e0);_0x1d82a5?(_0x3253fe[_0x49dfd9(0xd3)]({..._0x227863,..._0x1d82a5}),_0x59ed8a[_0x49dfd9(0xe2)](_0x8840e0)):_0x3253fe[_0x49dfd9(0xd3)](_0x227863);}for(const _0x36b997 of _0x118d20){const _0x55d0c2=String(_0x36b997[_0x49dfd9(0xee)]);if(!_0x59ed8a[_0x49dfd9(0x119)](_0x55d0c2))_0x3253fe[_0x49dfd9(0xd3)](_0x36b997);}return _0x3253fe[_0x49dfd9(0xd3)](..._0x1fffae),_0x3253fe;}export function resolveMergedTableColumns(_0x30ffb8){const _0x963a77=_0x487ae9,_0x534c2e=_0x30ffb8[_0x963a77(0xdb)]?.['length']?_0x30ffb8[_0x963a77(0xdb)]:_0x30ffb8[_0x963a77(0x103)]?.[_0x963a77(0xff)]||[],_0x440a69=(_0x30ffb8[_0x963a77(0x112)]||[])[_0x963a77(0xe4)](_0x6055d8=>_0x6055d8?.['__plugin']==='setAuto'),_0x410060=_0x30ffb8[_0x963a77(0x103)]?.[_0x963a77(0x110)]!==![]&&Boolean(_0x440a69);if(!_0x410060)return pinOpColumnsLast(_0x534c2e);const _0x4df7fa=_0x440a69?.[_0x963a77(0x11c)]||[],_0x36222b=_0x30ffb8['tableOpts']?.[_0x963a77(0x11c)]||[],_0x30e64f=buildAutoTableColumns(_0x30ffb8[_0x963a77(0xf5)],{'ignoreFields':[..._0x4df7fa,..._0x36222b]});return pinOpColumnsLast(mergeByProp(_0x30e64f,_0x534c2e));}export function pinOpColumnsLast(_0x2fd59a){const _0x5f073d=_0x487ae9,_0x5c9462=[],_0x414fc2=[];for(const _0x1350d6 of _0x2fd59a){_0x1350d6[_0x5f073d(0xf4)]==='op'?_0x5c9462[_0x5f073d(0xd3)]({..._0x1350d6,'fixed':_0x5f073d(0x117)}):_0x414fc2[_0x5f073d(0xd3)](_0x1350d6);}if(!_0x5c9462[_0x5f073d(0xfd)])return _0x2fd59a;return[..._0x414fc2,..._0x5c9462];}export function sortRequiredFirst(_0x420c2d){const _0x161d13=_0x487ae9,_0x5443e0=[],_0x1d48af=[];for(const _0x45c51b of _0x420c2d){_0x45c51b['required']===!![]||typeof _0x45c51b[_0x161d13(0xe6)]===_0x161d13(0x105)?_0x5443e0[_0x161d13(0xd3)](_0x45c51b):_0x1d48af['push'](_0x45c51b);}return[..._0x5443e0,..._0x1d48af];}export function buildAutoUpsertItems(_0x5df27c,_0x432f6a={}){const _0x476e8d=_0x487ae9,_0x4b8df1=new Set([...UPSERT_BUILTIN_IGNORE,..._0x432f6a[_0x476e8d(0x11c)]||[]]),_0x417b30=[];for(const _0x35cb49 of epsColumns(_0x5df27c)){const _0x375098=_0x35cb49[_0x476e8d(0x10c)];if(_0x4b8df1['has'](_0x375098))continue;const _0x43bd8f=_0x35cb49[_0x476e8d(0xfe)]||_0x375098,_0x120042=dictKeyOf(_0x35cb49),_0x2b61f4=_0x35cb49[_0x476e8d(0xd1)]===![]&&_0x35cb49[_0x476e8d(0x118)]!==!![],_0x560f03={'prop':_0x375098,'label':_0x43bd8f,'span':0xc,..._0x2b61f4?{'required':!![]}:{}};if(_0x375098==='status'){const _0x122e26=_0x120042||_0x476e8d(0xd2);isSwitchDict(_0x122e26)?_0x417b30[_0x476e8d(0xd3)](switchFormItem(_0x560f03,_0x122e26,switchDefaultValue(_0x122e26))):_0x417b30[_0x476e8d(0xd3)]({..._0x560f03,'type':_0x476e8d(0x11f),'dict':_0x122e26,'value':()=>dictFirstValue(_0x122e26)});continue;}if(_0x120042){isSwitchDict(_0x120042)?_0x417b30[_0x476e8d(0xd3)](switchFormItem(_0x560f03,_0x120042,switchDefaultValue(_0x120042))):_0x417b30[_0x476e8d(0xd3)]({..._0x560f03,'type':_0x476e8d(0x11f),'dict':_0x120042,'value':()=>dictFirstValue(_0x120042)});continue;}if(isTextCol(_0x35cb49)){_0x417b30[_0x476e8d(0xd3)]({..._0x560f03,'type':_0x476e8d(0xf3),'span':0xc});continue;}if(isBooleanCol(_0x35cb49)){_0x417b30[_0x476e8d(0xd3)]({..._0x560f03,'type':_0x476e8d(0xed),'value':![],'component':{'props':()=>mapDictOptions(_0x476e8d(0xd9))},'dict':_0x476e8d(0xd9)});continue;}if(isIntegerCol(_0x35cb49)||isNumericCol(_0x35cb49)){const _0x3f7200=numberPrecision(_0x35cb49);_0x417b30[_0x476e8d(0xd3)]({..._0x560f03,'type':_0x476e8d(0x10d),'component':{'props':{'type':_0x476e8d(0x10d),'precision':_0x3f7200,'controls':![]}}});continue;}_0x417b30[_0x476e8d(0xd3)]({..._0x560f03,'type':'input'});}return _0x417b30;}export function buildAutoTableColumns(_0x1c2f5f,_0x19843d={}){const _0x240c63=_0x487ae9,_0x86ac8d=new Set([...TABLE_BUILTIN_IGNORE,...epsTableIgnore(_0x1c2f5f),..._0x19843d[_0x240c63(0x11c)]||[]]),_0x485ff9=[];!_0x86ac8d['has']('selection')&&_0x485ff9['push']({'type':_0x240c63(0xf1),'width':0x32});for(const _0x3e7026 of epsColumns(_0x1c2f5f)){const _0x107525=_0x3e7026[_0x240c63(0x10c)];if(_0x86ac8d[_0x240c63(0x119)](_0x107525))continue;const _0x4fd046=_0x3e7026[_0x240c63(0xfe)]||_0x107525,_0x52a163=dictKeyOf(_0x3e7026);if(_0x107525==='status'){const _0x59345d=_0x52a163||_0x240c63(0xd2);isSwitchDict(_0x59345d)?_0x485ff9[_0x240c63(0xd3)]({'prop':_0x107525,'label':_0x4fd046,'width':0x50,'component':{'name':'vm-switch','props':()=>mapDictOptions(_0x59345d)}}):_0x485ff9[_0x240c63(0xd3)]({'prop':_0x107525,'label':_0x4fd046,'width':0x64,'dict':()=>mapDictOptions(_0x59345d)});continue;}if(_0x52a163&&isSwitchDict(_0x52a163)){_0x485ff9[_0x240c63(0xd3)]({'prop':_0x107525,'label':_0x4fd046,'width':0x50,'component':{'name':_0x240c63(0x11e),'props':()=>mapDictOptions(_0x52a163)}});continue;}if(_0x107525==='id'){_0x485ff9[_0x240c63(0xd3)]({'prop':_0x107525,'label':_0x4fd046,'width':0x50});continue;}if(_0x107525===_0x240c63(0x115)){_0x485ff9['push']({'prop':_0x107525,'label':_0x4fd046,'width':0xa0});continue;}if(_0x52a163){_0x485ff9[_0x240c63(0xd3)]({'prop':_0x107525,'label':_0x4fd046,'minWidth':0x78,'dict':()=>mapDictOptions(_0x52a163)});continue;}if(isTextCol(_0x3e7026)){_0x485ff9[_0x240c63(0xd3)]({'prop':_0x107525,'label':_0x4fd046,'minWidth':0xa0,'showOverflowTooltip':!![]});continue;}_0x485ff9[_0x240c63(0xd3)]({'prop':_0x107525,'label':_0x4fd046,'minWidth':0x78});}if(!_0x86ac8d[_0x240c63(0x119)]('op')){const _0x487538=buildAutoOpButtons(_0x1c2f5f);_0x487538[_0x240c63(0xfd)]&&_0x485ff9[_0x240c63(0xd3)]({'type':'op','buttons':_0x487538,'fixed':'right'});}return _0x485ff9;}
1
+ const _0xa29614=_0x3714;(function(_0x102dc3,_0x50d0a3){const _0x8e780b=_0x3714,_0x4a91d4=_0x102dc3();while(!![]){try{const _0x462b3a=-parseInt(_0x8e780b(0x118))/0x1+parseInt(_0x8e780b(0x12b))/0x2*(-parseInt(_0x8e780b(0x12f))/0x3)+parseInt(_0x8e780b(0x12c))/0x4+-parseInt(_0x8e780b(0x12a))/0x5+-parseInt(_0x8e780b(0xf6))/0x6*(parseInt(_0x8e780b(0x115))/0x7)+-parseInt(_0x8e780b(0xfd))/0x8*(parseInt(_0x8e780b(0xf0))/0x9)+parseInt(_0x8e780b(0xe9))/0xa;if(_0x462b3a===_0x50d0a3)break;else _0x4a91d4['push'](_0x4a91d4['shift']());}catch(_0x21c297){_0x4a91d4['push'](_0x4a91d4['shift']());}}}(_0x49fe,0x28670));import{findEpsEntity}from'../lib/eps';import{getDictOptions}from'../../client';function _0x3714(_0x1c2ab0,_0x5cb7a9){_0x1c2ab0=_0x1c2ab0-0xe2;const _0x49fed5=_0x49fe();let _0x3714ea=_0x49fed5[_0x1c2ab0];if(_0x3714['lqvxAz']===undefined){var _0x2f2590=function(_0x35a067){const _0x34b967='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x739273='',_0x17ffc1='';for(let _0x2372e4=0x0,_0x3f5266,_0x37d93c,_0xbe8e73=0x0;_0x37d93c=_0x35a067['charAt'](_0xbe8e73++);~_0x37d93c&&(_0x3f5266=_0x2372e4%0x4?_0x3f5266*0x40+_0x37d93c:_0x37d93c,_0x2372e4++%0x4)?_0x739273+=String['fromCharCode'](0xff&_0x3f5266>>(-0x2*_0x2372e4&0x6)):0x0){_0x37d93c=_0x34b967['indexOf'](_0x37d93c);}for(let _0x538ad9=0x0,_0x5d8e7c=_0x739273['length'];_0x538ad9<_0x5d8e7c;_0x538ad9++){_0x17ffc1+='%'+('00'+_0x739273['charCodeAt'](_0x538ad9)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x17ffc1);};_0x3714['pACTei']=_0x2f2590,_0x3714['lJFmPT']={},_0x3714['lqvxAz']=!![];}const _0x38a0f4=_0x49fed5[0x0],_0x5e938b=_0x1c2ab0+_0x38a0f4,_0x173ca9=_0x3714['lJFmPT'][_0x5e938b];return!_0x173ca9?(_0x3714ea=_0x3714['pACTei'](_0x3714ea),_0x3714['lJFmPT'][_0x5e938b]=_0x3714ea):_0x3714ea=_0x173ca9,_0x3714ea;}export const UPSERT_BUILTIN_IGNORE=['id',_0xa29614(0xf1),_0xa29614(0xe3),_0xa29614(0xee),_0xa29614(0xff)];export const TABLE_BUILTIN_IGNORE=[_0xa29614(0xff),_0xa29614(0xee)];export function buildAutoOpButtons(_0x739273){const _0xa836ca=_0xa29614,_0x17ffc1=_0x739273['permission'],_0x2372e4=_0xbe8e73=>_0x17ffc1!=null&&typeof _0x17ffc1===_0xa836ca(0x122)&&Object['prototype'][_0xa836ca(0x108)][_0xa836ca(0xf5)](_0x17ffc1,_0xbe8e73),_0x3f5266=_0x538ad9=>Boolean(_0x739273[_0xa836ca(0x10c)]?.[_0x538ad9]),_0x37d93c=[];if(_0x2372e4('update')&&_0x3f5266(_0xa836ca(0x113)))_0x37d93c[_0xa836ca(0xe5)](_0xa836ca(0x125));if(_0x2372e4(_0xa836ca(0x11e))&&_0x3f5266('delete'))_0x37d93c[_0xa836ca(0xe5)]('delete');return _0x37d93c;}function dictKeyOf(_0x5d8e7c){const _0x52cb48=_0xa29614;if(typeof _0x5d8e7c['dict']===_0x52cb48(0x104)&&_0x5d8e7c[_0x52cb48(0xe4)])return _0x5d8e7c[_0x52cb48(0xe4)];if(Array[_0x52cb48(0xf3)](_0x5d8e7c[_0x52cb48(0xe4)])&&_0x5d8e7c[_0x52cb48(0xe4)][0x0])return _0x5d8e7c[_0x52cb48(0xe4)][0x0];return;}function isSwitchDict(_0x58693d){const _0x57acfc=_0xa29614;return _0x58693d==='status'||_0x58693d==='yes_no_boolean'||_0x58693d===_0x57acfc(0x111);}function switchDefaultValue(_0x59ae2b){const _0x8a8f60=_0xa29614;if(_0x59ae2b===_0x8a8f60(0x116))return![];if(_0x59ae2b===_0x8a8f60(0x111))return 0x0;return 0x1;}function switchFormItem(_0x3d62fe,_0x237f1c,_0x313dea){const _0x1c2c81=_0xa29614;return{..._0x3d62fe,'type':_0x1c2c81(0xf9),'value':_0x313dea,'dict':_0x237f1c,'component':{'props':()=>mapDictOptions(_0x237f1c)}};}export function mapDictOptions(_0x22b668){const _0x5106bf=_0xa29614;return getDictOptions(_0x22b668)[_0x5106bf(0xf2)](_0x540d78=>{const _0x1d6ef6=_0x5106bf;let _0x2e73e3=_0x540d78[_0x1d6ef6(0xe6)];return typeof _0x540d78[_0x1d6ef6(0xe6)]===_0x1d6ef6(0x104)&&/^-?\d+(\.\d+)?$/[_0x1d6ef6(0xed)](_0x540d78[_0x1d6ef6(0xe6)])&&(_0x2e73e3=Number(_0x540d78['value'])),{'label':String(_0x540d78[_0x1d6ef6(0xef)]??''),'value':_0x2e73e3,'color':_0x540d78[_0x1d6ef6(0x110)]};});}export function dictFirstValue(_0x4eb35f){const _0x11e2bb=mapDictOptions(_0x4eb35f)[0x0];return _0x11e2bb?.['value'];}export function resolveFormItemValue(_0x211e77){const _0x4b7ba6=_0xa29614;return typeof _0x211e77===_0x4b7ba6(0x11f)?_0x211e77():_0x211e77;}function isMainTableCol(_0xf76185){const _0x590d86=_0xa29614;return!_0xf76185['source']||_0xf76185[_0x590d86(0x11b)][_0x590d86(0x123)]('a.');}function _0x49fe(){const _0x218ff7=['z2v0','ugDuzxH0','DgvZDa','DxbKyxrLvgLTzq','BgfIzwW','mtmZmJLXD1DyrMG','DgvUyw50swq','BwfW','AxnbCNjHEq','ywrK','y2fSBa','ndjQyw5eD3e','ugDjBNrLz2vY','ugDtzxjPywW','C3DPDgnO','ugDszwfS','AgfZrgvMyxvSDa','DhLWzq','mteXmLLkEvreuq','ChjVCgvYDhLoyw1L','zgvSzxrLvgLTzq','DgfIBgvpChrZ','CgfNzunVBhvTBNm','DgfIBgvqBhvNAw5Z','BNvSBgfIBgu','C3rYAw5N','Aw5WDxq','y29SDw1UvhLWzq','DM0TC3DPDgnO','AgfZt3DUuhjVCgvYDhK','ugDoDw1LCMLJ','x19WBhvNAw4','BMfTzxnWywnL','x3bLCM1PC3nPB24','Dgv4DgfYzwe','BwfUDwfS','C3rHDhvZ','y29SB3i','EwvZx25Vx251BwjLCG','ugDcB29SzwfU','DxbKyxrL','C3fSvhLWzq','nZDuqNvzA2i','EwvZx25Vx2jVB2XLyw4','CMvXDwLYzwq','mtm1odq3BwLlEhnO','C2v0qxv0BW','y29TBwvUDa','C291CMnL','yM9VBgvHBG','C2vYDMLJzq','zgvSzxrL','zNvUy3rPB24','AwDUB3jLrMLLBgrZ','BgvUz3rO','B2jQzwn0','C3rHCNrZv2L0Aa','AgfZ','zwrPDa','CMLNAhq','BNvTyMvY','C2vSzwn0Aw9U','C2vSzwn0','mta1mZi5nxD5wgvmwG','nJiWnZC4BMnsvhHo','mZq2nZy0yLHuuu1R','zMLSDgvY','ugDtBwfSBfnLCMLHBa','m1viALbVtq','Dg9mB3DLCKnHC2u','C2nHBgu','y3jLyxrLvgLTzq','zgLJDa','ChvZAa','DMfSDwu','y29SDw1UCW','ChjVCa','otqXnJi4mgHuCvLLzq','yxv0BW'];_0x49fe=function(){return _0x218ff7;};return _0x49fe();}function epsTableIgnore(_0x53a956){const _0x394cef=_0xa29614,_0xdee02f=_0x53a956[_0x394cef(0x10b)]?findEpsEntity('/'+_0x53a956[_0x394cef(0x10b)]):undefined,_0x3058a6=_0xdee02f?.['pageQueryOp']?.[_0x394cef(0x120)];return Array[_0x394cef(0xf3)](_0x3058a6)?_0x3058a6[_0x394cef(0x12d)](_0xb19748=>typeof _0xb19748===_0x394cef(0x104)&&_0xb19748):[];}function epsColumns(_0x4c398f){const _0x4584cb=_0xa29614,_0x19f154=_0x4c398f['namespace']?findEpsEntity('/'+_0x4c398f[_0x4584cb(0x10b)]):undefined;if(!_0x19f154)return[];const _0x42186d=[..._0x19f154['columns']||[],..._0x19f154[_0x4584cb(0x101)]||[]],_0x4ef7eb=new Set(),_0x29c147=[];for(const _0x50f8d6 of _0x42186d){if(!_0x50f8d6[_0x4584cb(0xfe)]||!isMainTableCol(_0x50f8d6))continue;if(_0x4ef7eb[_0x4584cb(0x124)](_0x50f8d6[_0x4584cb(0xfe)]))continue;_0x4ef7eb[_0x4584cb(0xf4)](_0x50f8d6[_0x4584cb(0xfe)]),_0x29c147[_0x4584cb(0xe5)](_0x50f8d6);}return _0x29c147;}function columnTypeOf(_0x54f5aa){const _0x28f38e=_0xa29614;return String(_0x54f5aa[_0x28f38e(0x106)]||'');}function sqlTypeOf(_0x604d3c){const _0xcdb25d=_0xa29614;return String(_0x604d3c[_0xcdb25d(0x114)]||'')[_0xcdb25d(0x130)]();}function isTextCol(_0x23d09b){const _0x2e831d=_0xa29614,_0x246c6f=columnTypeOf(_0x23d09b);if(_0x246c6f===_0x2e831d(0xec))return!![];return sqlTypeOf(_0x23d09b)==='text';}function isIntegerCol(_0x59394f){const _0x32913c=_0xa29614,_0x576101=columnTypeOf(_0x59394f);if(_0x576101===_0x32913c(0xf7)||_0x576101===_0x32913c(0xf8)||_0x576101==='PgSmallInt'||_0x576101==='PgBigInt'||_0x576101===_0x32913c(0x12e)||_0x576101==='PgBigSerial')return!![];if(_0x59394f[_0x32913c(0xfc)]===_0x32913c(0x127)&&!isNumericCol(_0x59394f))return!![];return/^(integer|serial|smallint|bigint|smallserial|bigserial)\b/[_0x32913c(0xed)](sqlTypeOf(_0x59394f));}function isNumericCol(_0x9631ee){const _0x4d5689=_0xa29614,_0x8230a2=columnTypeOf(_0x9631ee);if(_0x8230a2===_0x4d5689(0x109)||_0x8230a2==='PgDoublePrecision'||_0x8230a2===_0x4d5689(0xfa))return!![];return/^(numeric|decimal|double|real)\b/[_0x4d5689(0xed)](sqlTypeOf(_0x9631ee));}function isBooleanCol(_0x3333d){const _0x42c678=_0xa29614;return columnTypeOf(_0x3333d)===_0x42c678(0x112)||_0x3333d['type']===_0x42c678(0x11c)||sqlTypeOf(_0x3333d)[_0x42c678(0x123)](_0x42c678(0x11c));}function numberPrecision(_0x4b20ee){const _0x12b026=_0xa29614;if(isIntegerCol(_0x4b20ee))return 0x0;if(typeof _0x4b20ee[_0x12b026(0xe2)]===_0x12b026(0x127))return _0x4b20ee['scale'];return 0x2;}export function mergeByProp(_0x237f64,_0x3d824f){const _0xa6f584=_0xa29614,_0x5504cb=_0x3d824f[_0xa6f584(0x12d)](_0x220392=>Boolean(_0x220392[_0xa6f584(0xe8)])),_0x3ad641=_0x3d824f[_0xa6f584(0x12d)](_0x1ee5e7=>!_0x1ee5e7[_0xa6f584(0xe8)]&&_0x1ee5e7[_0xa6f584(0xfc)]),_0x26b17d=new Map(_0x5504cb[_0xa6f584(0xf2)](_0x4b9e9e=>[String(_0x4b9e9e[_0xa6f584(0xe8)]),_0x4b9e9e])),_0x2d879e=new Set(_0x3ad641['map'](_0x55badc=>String(_0x55badc[_0xa6f584(0xfc)]))),_0x33bf7e=new Set(),_0x4ba439=[];for(const _0x21ed78 of _0x237f64){if(!_0x21ed78[_0xa6f584(0xe8)]&&_0x21ed78[_0xa6f584(0xfc)]){if(_0x2d879e['has'](String(_0x21ed78['type'])))continue;_0x4ba439[_0xa6f584(0xe5)](_0x21ed78);continue;}if(!_0x21ed78['prop'])continue;const _0x57c127=String(_0x21ed78[_0xa6f584(0xe8)]),_0x3e6760=_0x26b17d[_0xa6f584(0xeb)](_0x57c127);_0x3e6760?(_0x4ba439[_0xa6f584(0xe5)]({..._0x21ed78,..._0x3e6760}),_0x33bf7e[_0xa6f584(0xf4)](_0x57c127)):_0x4ba439[_0xa6f584(0xe5)](_0x21ed78);}for(const _0x1d0498 of _0x5504cb){const _0x1e1628=String(_0x1d0498[_0xa6f584(0xe8)]);if(!_0x33bf7e[_0xa6f584(0x124)](_0x1e1628))_0x4ba439[_0xa6f584(0xe5)](_0x1d0498);}return _0x4ba439['push'](..._0x3ad641),_0x4ba439;}export function resolveMergedTableColumns(_0x5d57de){const _0xc9b47b=_0xa29614,_0x3ef16b=_0x5d57de[_0xc9b47b(0x10e)]?.[_0xc9b47b(0x121)]?_0x5d57de[_0xc9b47b(0x10e)]:_0x5d57de['tableOpts']?.[_0xc9b47b(0xe7)]||[],_0x2534d4=(_0x5d57de[_0xc9b47b(0x102)]||[])['find'](_0xe9dfa4=>_0xe9dfa4?.[_0xc9b47b(0x10a)]===_0xc9b47b(0x119)),_0x251216=_0x5d57de[_0xc9b47b(0x100)]?.[_0xc9b47b(0xea)]!==![]&&Boolean(_0x2534d4);if(!_0x251216)return pinOpColumnsLast(_0x3ef16b);const _0x180a27=_0x2534d4?.[_0xc9b47b(0x120)]||[],_0x4e71a8=_0x5d57de[_0xc9b47b(0x100)]?.[_0xc9b47b(0x120)]||[],_0x15dffc=buildAutoTableColumns(_0x5d57de[_0xc9b47b(0x11d)],{'ignoreFields':[..._0x180a27,..._0x4e71a8]});return pinOpColumnsLast(mergeByProp(_0x15dffc,_0x3ef16b));}export function pinOpColumnsLast(_0x338beb){const _0x560409=_0xa29614,_0x3659f0=[],_0xaaa9b8=[];for(const _0x20c3c6 of _0x338beb){_0x20c3c6[_0x560409(0xfc)]==='op'?_0x3659f0['push']({..._0x20c3c6,'fixed':_0x560409(0x126)}):_0xaaa9b8[_0x560409(0xe5)](_0x20c3c6);}if(!_0x3659f0[_0x560409(0x121)])return _0x338beb;return[..._0xaaa9b8,..._0x3659f0];}export function sortRequiredFirst(_0x13d31b){const _0x3eedd6=_0xa29614,_0x96b931=[],_0x408d88=[];for(const _0x474f59 of _0x13d31b){_0x474f59[_0x3eedd6(0x117)]===!![]||typeof _0x474f59['required']===_0x3eedd6(0x11f)?_0x96b931[_0x3eedd6(0xe5)](_0x474f59):_0x408d88[_0x3eedd6(0xe5)](_0x474f59);}return[..._0x96b931,..._0x408d88];}export function buildAutoUpsertItems(_0x5d353e,_0x5232f9={}){const _0x2e8411=_0xa29614,_0x1ce8f8=new Set([...UPSERT_BUILTIN_IGNORE,..._0x5232f9[_0x2e8411(0x120)]||[]]),_0x475e36=[];for(const _0x3a6d3e of epsColumns(_0x5d353e)){const _0x14fac2=_0x3a6d3e[_0x2e8411(0xfe)];if(_0x1ce8f8[_0x2e8411(0x124)](_0x14fac2))continue;const _0x42bb6d=_0x3a6d3e['comment']||_0x14fac2,_0x41e61c=dictKeyOf(_0x3a6d3e),_0x5793ae=_0x3a6d3e[_0x2e8411(0x103)]===![]&&_0x3a6d3e[_0x2e8411(0xfb)]!==!![],_0x24347c={'prop':_0x14fac2,'label':_0x42bb6d,'span':0xc,..._0x5793ae?{'required':!![]}:{}};if(_0x14fac2===_0x2e8411(0x10f)){const _0x451b10=_0x41e61c||_0x2e8411(0x10f);isSwitchDict(_0x451b10)?_0x475e36[_0x2e8411(0xe5)](switchFormItem(_0x24347c,_0x451b10,switchDefaultValue(_0x451b10))):_0x475e36[_0x2e8411(0xe5)]({..._0x24347c,'type':_0x2e8411(0x129),'dict':_0x451b10,'value':()=>dictFirstValue(_0x451b10)});continue;}if(_0x41e61c){isSwitchDict(_0x41e61c)?_0x475e36[_0x2e8411(0xe5)](switchFormItem(_0x24347c,_0x41e61c,switchDefaultValue(_0x41e61c))):_0x475e36[_0x2e8411(0xe5)]({..._0x24347c,'type':'select','dict':_0x41e61c,'value':()=>dictFirstValue(_0x41e61c)});continue;}if(isTextCol(_0x3a6d3e)){_0x475e36[_0x2e8411(0xe5)]({..._0x24347c,'type':_0x2e8411(0x10d),'span':0xc});continue;}if(isBooleanCol(_0x3a6d3e)){_0x475e36[_0x2e8411(0xe5)]({..._0x24347c,'type':_0x2e8411(0xf9),'value':![],'component':{'props':()=>mapDictOptions('yes_no_boolean')},'dict':_0x2e8411(0x116)});continue;}if(isIntegerCol(_0x3a6d3e)||isNumericCol(_0x3a6d3e)){const _0x366e1c=numberPrecision(_0x3a6d3e);_0x475e36['push']({..._0x24347c,'type':_0x2e8411(0x127),'component':{'props':{'type':_0x2e8411(0x127),'precision':_0x366e1c,'controls':![]}}});continue;}_0x475e36['push']({..._0x24347c,'type':_0x2e8411(0x105)});}return _0x475e36;}export function buildAutoTableColumns(_0xeb5286,_0x2c2783={}){const _0x1c4ee0=_0xa29614,_0x37c374=new Set([...TABLE_BUILTIN_IGNORE,...epsTableIgnore(_0xeb5286),..._0x2c2783[_0x1c4ee0(0x120)]||[]]),_0x2b7f22=[];!_0x37c374[_0x1c4ee0(0x124)](_0x1c4ee0(0x128))&&_0x2b7f22[_0x1c4ee0(0xe5)]({'type':_0x1c4ee0(0x128),'width':0x32});for(const _0x1bc4e3 of epsColumns(_0xeb5286)){const _0x2b7e57=_0x1bc4e3[_0x1c4ee0(0xfe)];if(_0x37c374[_0x1c4ee0(0x124)](_0x2b7e57))continue;const _0x4d0702=_0x1bc4e3[_0x1c4ee0(0x11a)]||_0x2b7e57,_0x467268=dictKeyOf(_0x1bc4e3);if(_0x2b7e57===_0x1c4ee0(0x10f)){const _0x3948e7=_0x467268||_0x1c4ee0(0x10f);isSwitchDict(_0x3948e7)?_0x2b7f22[_0x1c4ee0(0xe5)]({'prop':_0x2b7e57,'label':_0x4d0702,'width':0x50,'component':{'name':_0x1c4ee0(0x107),'props':()=>mapDictOptions(_0x3948e7)}}):_0x2b7f22[_0x1c4ee0(0xe5)]({'prop':_0x2b7e57,'label':_0x4d0702,'width':0x64,'dict':()=>mapDictOptions(_0x3948e7)});continue;}if(_0x467268&&isSwitchDict(_0x467268)){_0x2b7f22[_0x1c4ee0(0xe5)]({'prop':_0x2b7e57,'label':_0x4d0702,'width':0x50,'component':{'name':_0x1c4ee0(0x107),'props':()=>mapDictOptions(_0x467268)}});continue;}if(_0x2b7e57==='id'){_0x2b7f22[_0x1c4ee0(0xe5)]({'prop':_0x2b7e57,'label':_0x4d0702,'width':0x50});continue;}if(_0x2b7e57===_0x1c4ee0(0xe3)){_0x2b7f22[_0x1c4ee0(0xe5)]({'prop':_0x2b7e57,'label':_0x4d0702,'width':0xa0});continue;}if(_0x467268){_0x2b7f22[_0x1c4ee0(0xe5)]({'prop':_0x2b7e57,'label':_0x4d0702,'minWidth':0x78,'dict':()=>mapDictOptions(_0x467268)});continue;}if(isTextCol(_0x1bc4e3)){_0x2b7f22[_0x1c4ee0(0xe5)]({'prop':_0x2b7e57,'label':_0x4d0702,'minWidth':0xa0,'showOverflowTooltip':!![]});continue;}_0x2b7f22['push']({'prop':_0x2b7e57,'label':_0x4d0702,'minWidth':0x78});}if(!_0x37c374[_0x1c4ee0(0x124)]('op')){const _0x1866c7=buildAutoOpButtons(_0xeb5286);_0x1866c7[_0x1c4ee0(0x121)]&&_0x2b7f22[_0x1c4ee0(0xe5)]({'type':'op','buttons':_0x1866c7,'fixed':_0x1c4ee0(0x126)});}return _0x2b7f22;}