aldehyde 0.2.487 → 0.2.489

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 (717) hide show
  1. package/LICENSE +201 -201
  2. package/README.md +2 -2
  3. package/lib/controls/2dEditor/2dEditor/index.less +5 -5
  4. package/lib/controls/2dEditor/2dView/index.less +8 -8
  5. package/lib/controls/2dEditor/components/component.less +83 -83
  6. package/lib/controls/action/index.css +8 -8
  7. package/lib/controls/action/index.d.ts.map +1 -1
  8. package/lib/controls/chemstruc/graph.d.ts.map +1 -1
  9. package/lib/controls/chemstruc/index.css +28 -28
  10. package/lib/controls/collapse-card/index.css +8 -8
  11. package/lib/controls/collapse-card/index.d.ts.map +1 -1
  12. package/lib/controls/cquery/cquick-button.d.ts.map +1 -1
  13. package/lib/controls/direct-file-view/index.d.ts.map +1 -1
  14. package/lib/controls/direct-file-view/index.js +2 -1
  15. package/lib/controls/direct-file-view/index.js.map +1 -1
  16. package/lib/controls/entity-select/entity-select.d.ts.map +1 -1
  17. package/lib/controls/entity-select/index.css +7 -7
  18. package/lib/controls/entity-select/lab-tree-select.d.ts.map +1 -1
  19. package/lib/controls/entity-select/popover-entity-select.d.ts.map +1 -1
  20. package/lib/controls/file-view/index.less +9 -9
  21. package/lib/controls/html-editor/index.less +67 -67
  22. package/lib/controls/icon-selector/icon/aldehyde-menu-icon/iconfont.css +147 -147
  23. package/lib/controls/password-setter/index.css +2 -2
  24. package/lib/controls/password-setter/index.d.ts.map +1 -1
  25. package/lib/controls/qr-code/index.less +28 -28
  26. package/lib/controls/relation-existion/index.css +3 -3
  27. package/lib/controls/relation-existion/index.d.ts.map +1 -1
  28. package/lib/controls/rfield/index.css +4 -4
  29. package/lib/controls/rfield/index.d.ts.map +1 -1
  30. package/lib/controls/select/index.d.ts.map +1 -1
  31. package/lib/controls/signature/index.d.ts.map +1 -1
  32. package/lib/controls/text/ellipsis-text.d.ts.map +1 -1
  33. package/lib/controls/text/index.less +7 -7
  34. package/lib/controls/upload/index.d.ts.map +1 -1
  35. package/lib/controls/upload/mult-file-upload.d.ts.map +1 -1
  36. package/lib/custom-page/dtmpl-custom-edit-modal-page.d.ts.map +1 -1
  37. package/lib/detail/button/bottom-submit-button-bar.d.ts.map +1 -1
  38. package/lib/detail/button/cquery-button-bar.d.ts.map +1 -1
  39. package/lib/detail/button/fix-right-submit-button-bar.d.ts.map +1 -1
  40. package/lib/detail/button/index.css +42 -42
  41. package/lib/detail/dtmpl.css +72 -72
  42. package/lib/detail/edit/fields-edit-card.d.ts.map +1 -1
  43. package/lib/detail/edit/modal-row-edit.d.ts.map +1 -1
  44. package/lib/detail/edit/popover-edit-card.d.ts.map +1 -1
  45. package/lib/detail/rightbar/index.css +34 -34
  46. package/lib/detail/rightbar/index.d.ts.map +1 -1
  47. package/lib/detail/view/act-dtmpl-view.d.ts.map +1 -1
  48. package/lib/detail/view/field-view-group.d.ts.map +1 -1
  49. package/lib/detail/view/modal-dtmpl-view.d.ts.map +1 -1
  50. package/lib/detail/view/snapshot-timeline.d.ts.map +1 -1
  51. package/lib/detail/view/tab-act-dtmpl-view.d.ts.map +1 -1
  52. package/lib/draw-canvas-edit/components/main-header/index.js +1 -1
  53. package/lib/draw-canvas-edit/components/render/components/index.less +60 -60
  54. package/lib/draw-canvas-edit/components/render/components/workstation-component.js +6 -6
  55. package/lib/draw-canvas-edit/components/render/draws/bg-draw.d.ts +1 -0
  56. package/lib/draw-canvas-edit/components/render/draws/bg-draw.d.ts.map +1 -1
  57. package/lib/draw-canvas-edit/components/render/draws/bg-draw.js +3 -2
  58. package/lib/draw-canvas-edit/components/render/draws/bg-draw.js.map +1 -1
  59. package/lib/draw-canvas-edit/components/render/draws/contextmenu-draw.d.ts +1 -0
  60. package/lib/draw-canvas-edit/components/render/draws/contextmenu-draw.d.ts.map +1 -1
  61. package/lib/draw-canvas-edit/components/render/draws/contextmenu-draw.js +2 -1
  62. package/lib/draw-canvas-edit/components/render/draws/contextmenu-draw.js.map +1 -1
  63. package/lib/draw-canvas-edit/components/render/draws/graph-draw.d.ts +1 -0
  64. package/lib/draw-canvas-edit/components/render/draws/graph-draw.d.ts.map +1 -1
  65. package/lib/draw-canvas-edit/components/render/draws/graph-draw.js +9 -8
  66. package/lib/draw-canvas-edit/components/render/draws/graph-draw.js.map +1 -1
  67. package/lib/draw-canvas-edit/components/render/draws/link-draw.d.ts +1 -0
  68. package/lib/draw-canvas-edit/components/render/draws/link-draw.d.ts.map +1 -1
  69. package/lib/draw-canvas-edit/components/render/draws/link-draw.js +24 -23
  70. package/lib/draw-canvas-edit/components/render/draws/link-draw.js.map +1 -1
  71. package/lib/draw-canvas-edit/components/render/draws/preview-draw.d.ts +1 -0
  72. package/lib/draw-canvas-edit/components/render/draws/preview-draw.d.ts.map +1 -1
  73. package/lib/draw-canvas-edit/components/render/draws/preview-draw.js +6 -5
  74. package/lib/draw-canvas-edit/components/render/draws/preview-draw.js.map +1 -1
  75. package/lib/draw-canvas-edit/components/render/draws/ref-line-draw.d.ts +1 -0
  76. package/lib/draw-canvas-edit/components/render/draws/ref-line-draw.d.ts.map +1 -1
  77. package/lib/draw-canvas-edit/components/render/draws/ref-line-draw.js +3 -2
  78. package/lib/draw-canvas-edit/components/render/draws/ref-line-draw.js.map +1 -1
  79. package/lib/draw-canvas-edit/components/render/draws/ruler-draw.d.ts +1 -0
  80. package/lib/draw-canvas-edit/components/render/draws/ruler-draw.d.ts.map +1 -1
  81. package/lib/draw-canvas-edit/components/render/draws/ruler-draw.js +8 -7
  82. package/lib/draw-canvas-edit/components/render/draws/ruler-draw.js.map +1 -1
  83. package/lib/draw-canvas-edit/components/render/graphs/base-graph.js +3 -3
  84. package/lib/draw-canvas-edit/components/render/graphs/bezier.js +5 -5
  85. package/lib/draw-canvas-edit/components/render/graphs/circle.js +4 -4
  86. package/lib/draw-canvas-edit/components/render/graphs/curve.js +5 -5
  87. package/lib/draw-canvas-edit/components/render/graphs/line.js +5 -5
  88. package/lib/draw-canvas-edit/components/render/graphs/rect.js +4 -4
  89. package/lib/draw-canvas-edit/components/render/handlers/drag-handlers.d.ts +1 -0
  90. package/lib/draw-canvas-edit/components/render/handlers/drag-handlers.d.ts.map +1 -1
  91. package/lib/draw-canvas-edit/components/render/handlers/drag-handlers.js +7 -6
  92. package/lib/draw-canvas-edit/components/render/handlers/drag-handlers.js.map +1 -1
  93. package/lib/draw-canvas-edit/components/render/handlers/drag-outside-handlers.d.ts +1 -0
  94. package/lib/draw-canvas-edit/components/render/handlers/drag-outside-handlers.d.ts.map +1 -1
  95. package/lib/draw-canvas-edit/components/render/handlers/drag-outside-handlers.js +4 -3
  96. package/lib/draw-canvas-edit/components/render/handlers/drag-outside-handlers.js.map +1 -1
  97. package/lib/draw-canvas-edit/components/render/handlers/graph-handlers.d.ts +1 -0
  98. package/lib/draw-canvas-edit/components/render/handlers/graph-handlers.d.ts.map +1 -1
  99. package/lib/draw-canvas-edit/components/render/handlers/graph-handlers.js +2 -1
  100. package/lib/draw-canvas-edit/components/render/handlers/graph-handlers.js.map +1 -1
  101. package/lib/draw-canvas-edit/components/render/handlers/key-move-handlers.d.ts +1 -0
  102. package/lib/draw-canvas-edit/components/render/handlers/key-move-handlers.d.ts.map +1 -1
  103. package/lib/draw-canvas-edit/components/render/handlers/key-move-handlers.js +5 -4
  104. package/lib/draw-canvas-edit/components/render/handlers/key-move-handlers.js.map +1 -1
  105. package/lib/draw-canvas-edit/components/render/handlers/link-handlers.d.ts +1 -0
  106. package/lib/draw-canvas-edit/components/render/handlers/link-handlers.d.ts.map +1 -1
  107. package/lib/draw-canvas-edit/components/render/handlers/link-handlers.js +3 -2
  108. package/lib/draw-canvas-edit/components/render/handlers/link-handlers.js.map +1 -1
  109. package/lib/draw-canvas-edit/components/render/handlers/selection-handlers.d.ts +1 -0
  110. package/lib/draw-canvas-edit/components/render/handlers/selection-handlers.d.ts.map +1 -1
  111. package/lib/draw-canvas-edit/components/render/handlers/selection-handlers.js +5 -4
  112. package/lib/draw-canvas-edit/components/render/handlers/selection-handlers.js.map +1 -1
  113. package/lib/draw-canvas-edit/components/render/handlers/shutcut-handlers.d.ts +1 -0
  114. package/lib/draw-canvas-edit/components/render/handlers/shutcut-handlers.d.ts.map +1 -1
  115. package/lib/draw-canvas-edit/components/render/handlers/shutcut-handlers.js +1 -0
  116. package/lib/draw-canvas-edit/components/render/handlers/shutcut-handlers.js.map +1 -1
  117. package/lib/draw-canvas-edit/components/render/handlers/text-handlers.d.ts +1 -0
  118. package/lib/draw-canvas-edit/components/render/handlers/text-handlers.d.ts.map +1 -1
  119. package/lib/draw-canvas-edit/components/render/handlers/text-handlers.js +1 -0
  120. package/lib/draw-canvas-edit/components/render/handlers/text-handlers.js.map +1 -1
  121. package/lib/draw-canvas-edit/components/render/handlers/zoom-handlers.d.ts +1 -0
  122. package/lib/draw-canvas-edit/components/render/handlers/zoom-handlers.d.ts.map +1 -1
  123. package/lib/draw-canvas-edit/components/render/handlers/zoom-handlers.js +7 -6
  124. package/lib/draw-canvas-edit/components/render/handlers/zoom-handlers.js.map +1 -1
  125. package/lib/draw-canvas-edit/components/render/index.js +48 -48
  126. package/lib/draw-canvas-edit/components/render/tools/align-tool.js +4 -4
  127. package/lib/draw-canvas-edit/components/render/tools/asset-tool.js +1 -1
  128. package/lib/draw-canvas-edit/components/render/tools/copy-tool.js +4 -4
  129. package/lib/draw-canvas-edit/components/render/tools/import-export-tool.js +7 -7
  130. package/lib/draw-canvas-edit/components/render/tools/link-tool.js +9 -9
  131. package/lib/draw-canvas-edit/components/render/tools/position-tool.js +18 -18
  132. package/lib/draw-canvas-edit/components/render/tools/selection-tool.js +2 -2
  133. package/lib/draw-canvas-edit/components/render/tools/z-index-tool.js +16 -16
  134. package/lib/draw-canvas-edit/index.less +48 -48
  135. package/lib/draw-canvas-view/index.less +66 -66
  136. package/lib/export/export-frame.css +2 -2
  137. package/lib/export/export-frame.d.ts.map +1 -1
  138. package/lib/export/select-code-export-frame.d.ts.map +1 -1
  139. package/lib/form/dtmpl-form.css +3 -3
  140. package/lib/form/dtmpl-form.d.ts.map +1 -1
  141. package/lib/form/field-group-form.d.ts.map +1 -1
  142. package/lib/form/form-Item-group.d.ts.map +1 -1
  143. package/lib/form/index.css +12 -12
  144. package/lib/import/excel-import.d.ts.map +1 -1
  145. package/lib/import/index.css +53 -53
  146. package/lib/import/template.css +50 -50
  147. package/lib/layout/common.css +64 -64
  148. package/lib/layout/coverstyle.css +51 -51
  149. package/lib/layout/footer/index.css +5 -5
  150. package/lib/layout/header/index.css +122 -122
  151. package/lib/layout/menu/block.css +7 -7
  152. package/lib/layout/menu/block.d.ts.map +1 -1
  153. package/lib/layout/menu/l2menu-quick-bar.d.ts.map +1 -1
  154. package/lib/layout/menu/menu-2layers.d.ts.map +1 -1
  155. package/lib/layout/menu/message-bar.less +73 -73
  156. package/lib/layout/menu/reset-password.d.ts.map +1 -1
  157. package/lib/layout/menu/user-bar.d.ts.map +1 -1
  158. package/lib/layout/menu/userinfo-bar.d.ts.map +1 -1
  159. package/lib/layout/sidebar/index.css +57 -57
  160. package/lib/layout2/css/header.css +41 -41
  161. package/lib/layout2/css/sider.less +17 -17
  162. package/lib/layout2/css/tabs-layout.less +18 -18
  163. package/lib/layout3/css/header.less +195 -195
  164. package/lib/layout3/css/main.less +161 -161
  165. package/lib/layout3/css/sider.less +32 -32
  166. package/lib/layout3/css/tabs-layout.less +38 -38
  167. package/lib/layout4/css/header.less +196 -196
  168. package/lib/layout4/css/main.less +154 -154
  169. package/lib/layout4/css/sider.less +37 -37
  170. package/lib/layout4/css/tabs-layout.less +42 -42
  171. package/lib/layout5/css/header.less +35 -35
  172. package/lib/layout5/css/sider.less +18 -18
  173. package/lib/list/calendar/index.less +20 -20
  174. package/lib/list/card-list/index.less +154 -154
  175. package/lib/list/gantt/index.less +8 -8
  176. package/lib/list/vertical-list/index.less +208 -208
  177. package/lib/login/index.css +19 -19
  178. package/lib/login/login.d.ts.map +1 -1
  179. package/lib/login/vertify/index.css +143 -143
  180. package/lib/login3/index.less +136 -136
  181. package/lib/lowcode-components/act-table/index.less +26 -26
  182. package/lib/lowcode-components/bar-chart/index.d.ts +4 -1
  183. package/lib/lowcode-components/bar-chart/index.d.ts.map +1 -1
  184. package/lib/lowcode-components/bar-chart/index.js +3 -0
  185. package/lib/lowcode-components/bar-chart/index.js.map +1 -1
  186. package/lib/lowcode-components/base-button/index.less +7 -7
  187. package/lib/lowcode-components/base-map/index.js +6 -6
  188. package/lib/lowcode-components/base-radio/index.less +23 -23
  189. package/lib/lowcode-components/base-tabs/index.less +14 -14
  190. package/lib/lowcode-components/border/border10/index.less +26 -26
  191. package/lib/lowcode-components/border/border11/index.js +46 -46
  192. package/lib/lowcode-components/border/border11/index.less +17 -17
  193. package/lib/lowcode-components/border/border12/index.js +13 -13
  194. package/lib/lowcode-components/border/border12/index.less +13 -13
  195. package/lib/lowcode-components/border/border13/index.js +5 -5
  196. package/lib/lowcode-components/border/border13/index.less +13 -13
  197. package/lib/lowcode-components/border/border2/index.less +17 -17
  198. package/lib/lowcode-components/border/border3/index.less +25 -25
  199. package/lib/lowcode-components/border/border4/index.js +2 -2
  200. package/lib/lowcode-components/border/border4/index.less +72 -72
  201. package/lib/lowcode-components/border/border5/index.js +2 -2
  202. package/lib/lowcode-components/border/border5/index.less +35 -35
  203. package/lib/lowcode-components/border/border6/index.less +17 -17
  204. package/lib/lowcode-components/border/border7/index.less +26 -26
  205. package/lib/lowcode-components/border/border8/index.less +13 -13
  206. package/lib/lowcode-components/border/border9/index.js +14 -14
  207. package/lib/lowcode-components/border/border9/index.less +13 -13
  208. package/lib/lowcode-components/column-3d-chart/index.d.ts +4 -1
  209. package/lib/lowcode-components/column-3d-chart/index.d.ts.map +1 -1
  210. package/lib/lowcode-components/column-3d-chart/index.js +3 -0
  211. package/lib/lowcode-components/column-3d-chart/index.js.map +1 -1
  212. package/lib/lowcode-components/column-chart/index.d.ts +6 -3
  213. package/lib/lowcode-components/column-chart/index.d.ts.map +1 -1
  214. package/lib/lowcode-components/column-chart/index.js +4 -1
  215. package/lib/lowcode-components/column-chart/index.js.map +1 -1
  216. package/lib/lowcode-components/decoration/decoration1/index.less +7 -7
  217. package/lib/lowcode-components/decoration/decoration10/index.js +3 -3
  218. package/lib/lowcode-components/decoration/decoration10/index.less +5 -5
  219. package/lib/lowcode-components/decoration/decoration11/index.less +5 -5
  220. package/lib/lowcode-components/decoration/decoration2/index.less +6 -6
  221. package/lib/lowcode-components/decoration/decoration3/index.less +7 -7
  222. package/lib/lowcode-components/decoration/decoration4/index.less +29 -29
  223. package/lib/lowcode-components/decoration/decoration5/index.less +3 -3
  224. package/lib/lowcode-components/decoration/decoration6/index.less +7 -7
  225. package/lib/lowcode-components/decoration/decoration7/index.less +4 -4
  226. package/lib/lowcode-components/decoration/decoration8/index.less +14 -14
  227. package/lib/lowcode-components/decoration/decoration9/index.less +4 -4
  228. package/lib/lowcode-components/effectScatter-map/index.js +6 -6
  229. package/lib/lowcode-components/effectScatter-map-3d/index.js +6 -6
  230. package/lib/lowcode-components/line-bar-chart/index.d.ts +4 -1
  231. package/lib/lowcode-components/line-bar-chart/index.d.ts.map +1 -1
  232. package/lib/lowcode-components/line-bar-chart/index.js +3 -0
  233. package/lib/lowcode-components/line-bar-chart/index.js.map +1 -1
  234. package/lib/lowcode-components/line-chart/index.d.ts +5 -2
  235. package/lib/lowcode-components/line-chart/index.d.ts.map +1 -1
  236. package/lib/lowcode-components/line-chart/index.js +6 -2
  237. package/lib/lowcode-components/line-chart/index.js.map +1 -1
  238. package/lib/lowcode-components/lowcode-view/index.less +19 -19
  239. package/lib/lowcode-components/pie-chart/index.d.ts +4 -1
  240. package/lib/lowcode-components/pie-chart/index.d.ts.map +1 -1
  241. package/lib/lowcode-components/pie-chart/index.js +3 -0
  242. package/lib/lowcode-components/pie-chart/index.js.map +1 -1
  243. package/lib/lowcode-components/search-form/index.less +25 -25
  244. package/lib/module/dtmpl-edit-card.d.ts.map +1 -1
  245. package/lib/module/dtmpl-edit-card.js +15 -5
  246. package/lib/module/dtmpl-edit-card.js.map +1 -1
  247. package/lib/module/dtmpl-edit-page.d.ts.map +1 -1
  248. package/lib/module/dtmpl-edit-page.js +15 -5
  249. package/lib/module/dtmpl-edit-page.js.map +1 -1
  250. package/lib/module/index.less +4 -4
  251. package/lib/module/ltmpl-modal.d.ts.map +1 -1
  252. package/lib/module/ltmpl-table.d.ts.map +1 -1
  253. package/lib/routable/index.less +25 -25
  254. package/lib/table/act-table.d.ts +2 -0
  255. package/lib/table/act-table.d.ts.map +1 -1
  256. package/lib/table/act-table.js +20 -17
  257. package/lib/table/act-table.js.map +1 -1
  258. package/lib/table/column/index.less +85 -85
  259. package/lib/table/index.css +211 -211
  260. package/lib/table/modal-select-table.d.ts.map +1 -1
  261. package/lib/table/page-chart.d.ts +15 -0
  262. package/lib/table/page-chart.d.ts.map +1 -0
  263. package/lib/table/page-chart.js +150 -0
  264. package/lib/table/page-chart.js.map +1 -0
  265. package/lib/table/page-chart.less +10 -0
  266. package/lib/table/pagination.css +14 -14
  267. package/lib/table/pagination.d.ts.map +1 -1
  268. package/lib/table/relation-table.d.ts +2 -0
  269. package/lib/table/relation-table.d.ts.map +1 -1
  270. package/lib/table/row-table.d.ts +11 -0
  271. package/lib/table/row-table.d.ts.map +1 -0
  272. package/lib/table/row-table.js +11 -0
  273. package/lib/table/row-table.js.map +1 -0
  274. package/lib/table/selected-rows-card.d.ts.map +1 -1
  275. package/lib/table/stat/restat.d.ts.map +1 -1
  276. package/lib/tmpl/interface.d.ts +12 -1
  277. package/lib/tmpl/interface.d.ts.map +1 -1
  278. package/lib/tmpl/interface.js.map +1 -1
  279. package/lib/tmpl/tmpl-config-analysis.js +1 -1
  280. package/lib/tmpl/tmpl-config-analysis.js.map +1 -1
  281. package/lib/tree/act-tree.d.ts.map +1 -1
  282. package/lib/tree/block-menu-auth-tree.d.ts.map +1 -1
  283. package/lib/tree/index.css +22 -22
  284. package/lib/tree/tmpl-tree.d.ts.map +1 -1
  285. package/lib/welcome/components/menu-card.less +96 -96
  286. package/lib/welcome/components/page-card.less +49 -49
  287. package/lib/welcome/components/quick-entrance.less +120 -120
  288. package/lib/welcome/components/user-menus.less +192 -192
  289. package/lib/welcome/components/workbench.less +118 -118
  290. package/lib/welcome/index.css +13 -13
  291. package/package.json +224 -224
  292. package/src/aldehyde/controls/2dEditor/2dEditor/index.less +5 -5
  293. package/src/aldehyde/controls/2dEditor/2dEditor/index.tsx +270 -270
  294. package/src/aldehyde/controls/2dEditor/2dView/index.less +8 -8
  295. package/src/aldehyde/controls/2dEditor/2dView/index.tsx +110 -110
  296. package/src/aldehyde/controls/2dEditor/components/card.tsx +256 -256
  297. package/src/aldehyde/controls/2dEditor/components/component.less +83 -83
  298. package/src/aldehyde/controls/2dEditor/components/data.d.ts +32 -32
  299. package/src/aldehyde/controls/2dEditor/components/hotspot.tsx +80 -80
  300. package/src/aldehyde/controls/2dEditor/components/html-box.tsx +101 -101
  301. package/src/aldehyde/controls/2dEditor/components/image.tsx +99 -99
  302. package/src/aldehyde/controls/2dEditor/components/line.tsx +73 -73
  303. package/src/aldehyde/controls/action/index.css +8 -8
  304. package/src/aldehyde/controls/action/index.tsx +406 -406
  305. package/src/aldehyde/controls/action/utils.tsx +306 -306
  306. package/src/aldehyde/controls/auto-complete/index.tsx +82 -82
  307. package/src/aldehyde/controls/cascader/index.tsx +112 -112
  308. package/src/aldehyde/controls/chemstruc/graph.tsx +185 -185
  309. package/src/aldehyde/controls/chemstruc/index.css +28 -28
  310. package/src/aldehyde/controls/code-editor/sql-code-editor.tsx +73 -73
  311. package/src/aldehyde/controls/collapse-card/index.css +8 -8
  312. package/src/aldehyde/controls/collapse-card/index.tsx +109 -109
  313. package/src/aldehyde/controls/color-picker/index.tsx +21 -21
  314. package/src/aldehyde/controls/counting-tag/index.tsx +53 -53
  315. package/src/aldehyde/controls/cquery/cquick-button.tsx +145 -145
  316. package/src/aldehyde/controls/date-picker/index.tsx +199 -199
  317. package/src/aldehyde/controls/direct-file-view/drawer-file-view.tsx +54 -54
  318. package/src/aldehyde/controls/direct-file-view/index.tsx +147 -146
  319. package/src/aldehyde/controls/direct-upload/index.tsx +140 -140
  320. package/src/aldehyde/controls/entity-select/entity-select.tsx +791 -791
  321. package/src/aldehyde/controls/entity-select/index.css +7 -7
  322. package/src/aldehyde/controls/entity-select/lab-tree-select.tsx +154 -154
  323. package/src/aldehyde/controls/entity-select/popover-entity-select.tsx +205 -205
  324. package/src/aldehyde/controls/entry-control.tsx +431 -431
  325. package/src/aldehyde/controls/enum-badge/index.tsx +42 -42
  326. package/src/aldehyde/controls/enum-tag/index.tsx +45 -45
  327. package/src/aldehyde/controls/field-history/index.tsx +81 -81
  328. package/src/aldehyde/controls/file-export/select-code-export.tsx +40 -40
  329. package/src/aldehyde/controls/file-view/drawer-file-view.tsx +117 -117
  330. package/src/aldehyde/controls/file-view/index.less +9 -9
  331. package/src/aldehyde/controls/file-view/index.tsx +148 -148
  332. package/src/aldehyde/controls/file-view/multi-file-view.tsx +39 -39
  333. package/src/aldehyde/controls/file-view/newin-file-view.tsx +40 -40
  334. package/src/aldehyde/controls/html-editor/draft.tsx +136 -136
  335. package/src/aldehyde/controls/html-editor/index.less +67 -67
  336. package/src/aldehyde/controls/icon-selector/app-icon-selector.tsx +68 -68
  337. package/src/aldehyde/controls/icon-selector/icon/aldehyde-menu-icon/iconfont.css +147 -147
  338. package/src/aldehyde/controls/icon-selector/icon/aldehyde-menu-icon/iconfont.json +240 -240
  339. package/src/aldehyde/controls/icon-selector/pc-icon-selector.tsx +68 -68
  340. package/src/aldehyde/controls/input-number/index.tsx +148 -148
  341. package/src/aldehyde/controls/input-range/index.tsx +59 -59
  342. package/src/aldehyde/controls/password-setter/index.css +2 -2
  343. package/src/aldehyde/controls/password-setter/index.js +88 -88
  344. package/src/aldehyde/controls/progress/index.tsx +74 -74
  345. package/src/aldehyde/controls/qr-code/index.less +28 -28
  346. package/src/aldehyde/controls/qr-code/index.tsx +40 -40
  347. package/src/aldehyde/controls/relation-existion/index.css +3 -3
  348. package/src/aldehyde/controls/relation-existion/index.tsx +144 -144
  349. package/src/aldehyde/controls/rfield/index.css +4 -4
  350. package/src/aldehyde/controls/rfield/index.tsx +225 -225
  351. package/src/aldehyde/controls/select/index.tsx +226 -226
  352. package/src/aldehyde/controls/signature/index.tsx +226 -226
  353. package/src/aldehyde/controls/single-checkbox/index.tsx +18 -18
  354. package/src/aldehyde/controls/steps/index.tsx +59 -59
  355. package/src/aldehyde/controls/text/ellipsis-text.tsx +98 -98
  356. package/src/aldehyde/controls/text/index.less +7 -7
  357. package/src/aldehyde/controls/tree-select/navigation-tree.tsx +122 -122
  358. package/src/aldehyde/controls/tree-select/tree-entity-select.tsx +121 -121
  359. package/src/aldehyde/controls/upload/index.tsx +128 -128
  360. package/src/aldehyde/controls/upload/mult-file-upload.tsx +240 -240
  361. package/src/aldehyde/controls/upload-read-excel/index.tsx +43 -43
  362. package/src/aldehyde/controls/view-control.tsx +289 -289
  363. package/src/aldehyde/custom-page/custom-detail-modal-page.tsx +69 -69
  364. package/src/aldehyde/custom-page/custom-page-router.tsx +64 -64
  365. package/src/aldehyde/custom-page/def-custom-page.tsx +17 -17
  366. package/src/aldehyde/custom-page/dtmpl-custom-edit-modal-page.tsx +88 -88
  367. package/src/aldehyde/detail/button/bottom-submit-button-bar.tsx +91 -91
  368. package/src/aldehyde/detail/button/cquery-button-bar.tsx +144 -144
  369. package/src/aldehyde/detail/button/edit-button.tsx +61 -61
  370. package/src/aldehyde/detail/button/fix-right-submit-button-bar.tsx +186 -186
  371. package/src/aldehyde/detail/button/index.css +42 -42
  372. package/src/aldehyde/detail/button/inline-edit-button.tsx +40 -40
  373. package/src/aldehyde/detail/button/submit-button-bar.tsx +57 -57
  374. package/src/aldehyde/detail/button/view-button.tsx +64 -64
  375. package/src/aldehyde/detail/dtmpl.css +72 -72
  376. package/src/aldehyde/detail/edit/dtmpl-edit.tsx +279 -279
  377. package/src/aldehyde/detail/edit/fields-edit-card.tsx +145 -145
  378. package/src/aldehyde/detail/edit/modal-row-edit.tsx +95 -95
  379. package/src/aldehyde/detail/edit/popover-edit-card.tsx +167 -167
  380. package/src/aldehyde/detail/edit/popover-editor.tsx +70 -70
  381. package/src/aldehyde/detail/edit/post-result/index.tsx +86 -86
  382. package/src/aldehyde/detail/rightbar/index.css +34 -34
  383. package/src/aldehyde/detail/rightbar/index.tsx +92 -92
  384. package/src/aldehyde/detail/tooltipbar/index.tsx +32 -32
  385. package/src/aldehyde/detail/view/act-dtmpl-view.tsx +288 -288
  386. package/src/aldehyde/detail/view/dtmpl-view.tsx +334 -334
  387. package/src/aldehyde/detail/view/field-view-group.tsx +88 -88
  388. package/src/aldehyde/detail/view/modal-dtmpl-view.tsx +73 -73
  389. package/src/aldehyde/detail/view/snapshot-timeline.tsx +231 -231
  390. package/src/aldehyde/detail/view/tab-act-dtmpl-view.tsx +304 -304
  391. package/src/aldehyde/detail/view/view-compare-panel.tsx +57 -57
  392. package/src/aldehyde/draw-canvas-edit/components/main-header/index.tsx +1 -1
  393. package/src/aldehyde/draw-canvas-edit/components/render/components/index.less +60 -60
  394. package/src/aldehyde/draw-canvas-edit/components/render/components/index.ts +3 -3
  395. package/src/aldehyde/draw-canvas-edit/components/render/components/workstation-component.tsx +220 -220
  396. package/src/aldehyde/draw-canvas-edit/components/render/draws/bg-draw.ts +177 -176
  397. package/src/aldehyde/draw-canvas-edit/components/render/draws/contextmenu-draw.ts +330 -329
  398. package/src/aldehyde/draw-canvas-edit/components/render/draws/graph-draw.ts +249 -249
  399. package/src/aldehyde/draw-canvas-edit/components/render/draws/link-draw.ts +1415 -1414
  400. package/src/aldehyde/draw-canvas-edit/components/render/draws/preview-draw.ts +274 -273
  401. package/src/aldehyde/draw-canvas-edit/components/render/draws/ref-line-draw.ts +71 -70
  402. package/src/aldehyde/draw-canvas-edit/components/render/draws/ruler-draw.ts +166 -165
  403. package/src/aldehyde/draw-canvas-edit/components/render/graphs/base-graph.ts +3 -3
  404. package/src/aldehyde/draw-canvas-edit/components/render/graphs/bezier.ts +542 -542
  405. package/src/aldehyde/draw-canvas-edit/components/render/graphs/circle.ts +4 -4
  406. package/src/aldehyde/draw-canvas-edit/components/render/graphs/curve.ts +5 -5
  407. package/src/aldehyde/draw-canvas-edit/components/render/graphs/line.ts +5 -5
  408. package/src/aldehyde/draw-canvas-edit/components/render/graphs/rect.ts +4 -4
  409. package/src/aldehyde/draw-canvas-edit/components/render/handlers/drag-handlers.ts +7 -6
  410. package/src/aldehyde/draw-canvas-edit/components/render/handlers/drag-outside-handlers.ts +77 -76
  411. package/src/aldehyde/draw-canvas-edit/components/render/handlers/graph-handlers.ts +2 -1
  412. package/src/aldehyde/draw-canvas-edit/components/render/handlers/key-move-handlers.ts +5 -4
  413. package/src/aldehyde/draw-canvas-edit/components/render/handlers/link-handlers.ts +3 -2
  414. package/src/aldehyde/draw-canvas-edit/components/render/handlers/selection-handlers.ts +410 -409
  415. package/src/aldehyde/draw-canvas-edit/components/render/handlers/shutcut-handlers.ts +1 -0
  416. package/src/aldehyde/draw-canvas-edit/components/render/handlers/text-handlers.ts +1 -0
  417. package/src/aldehyde/draw-canvas-edit/components/render/handlers/zoom-handlers.ts +7 -6
  418. package/src/aldehyde/draw-canvas-edit/components/render/index.ts +817 -817
  419. package/src/aldehyde/draw-canvas-edit/components/render/tools/align-tool.ts +4 -4
  420. package/src/aldehyde/draw-canvas-edit/components/render/tools/asset-tool.ts +1 -1
  421. package/src/aldehyde/draw-canvas-edit/components/render/tools/attract-tool.ts +457 -457
  422. package/src/aldehyde/draw-canvas-edit/components/render/tools/component-factory.ts +269 -269
  423. package/src/aldehyde/draw-canvas-edit/components/render/tools/copy-tool.ts +244 -244
  424. package/src/aldehyde/draw-canvas-edit/components/render/tools/import-export-tool.ts +588 -588
  425. package/src/aldehyde/draw-canvas-edit/components/render/tools/index.ts +10 -10
  426. package/src/aldehyde/draw-canvas-edit/components/render/tools/link-tool.ts +9 -9
  427. package/src/aldehyde/draw-canvas-edit/components/render/tools/position-tool.ts +191 -191
  428. package/src/aldehyde/draw-canvas-edit/components/render/tools/selection-tool.ts +140 -140
  429. package/src/aldehyde/draw-canvas-edit/components/render/tools/z-index-tool.ts +16 -16
  430. package/src/aldehyde/draw-canvas-edit/components/render/types.ts +298 -298
  431. package/src/aldehyde/draw-canvas-edit/components/setting-form/index.tsx +305 -305
  432. package/src/aldehyde/draw-canvas-edit/constant.ts +5 -5
  433. package/src/aldehyde/draw-canvas-edit/index.less +48 -48
  434. package/src/aldehyde/draw-canvas-edit/index.tsx +213 -213
  435. package/src/aldehyde/draw-canvas-view/index.less +66 -66
  436. package/src/aldehyde/draw-canvas-view/index.tsx +49 -49
  437. package/src/aldehyde/draw-canvas-view/view.tsx +237 -237
  438. package/src/aldehyde/export/export-frame.css +2 -2
  439. package/src/aldehyde/export/export-frame.tsx +301 -301
  440. package/src/aldehyde/export/select-code-export-frame.tsx +212 -212
  441. package/src/aldehyde/form/criteria-form.tsx +604 -604
  442. package/src/aldehyde/form/dtmpl-form.css +3 -3
  443. package/src/aldehyde/form/dtmpl-form.tsx +571 -571
  444. package/src/aldehyde/form/field-group-form.tsx +103 -103
  445. package/src/aldehyde/form/fields-form.tsx +45 -45
  446. package/src/aldehyde/form/form-Item-group.tsx +246 -246
  447. package/src/aldehyde/form/index.css +12 -12
  448. package/src/aldehyde/hooks/use-match-route/index.tsx +62 -62
  449. package/src/aldehyde/hooks/use-tabs/index.tsx +139 -139
  450. package/src/aldehyde/hooks/useVarCssColor.ts +6 -6
  451. package/src/aldehyde/icon/aliIcon.tsx +9 -9
  452. package/src/aldehyde/icon/index.tsx +28 -28
  453. package/src/aldehyde/import/excel-import.tsx +450 -450
  454. package/src/aldehyde/import/index.css +53 -53
  455. package/src/aldehyde/import/template.css +50 -50
  456. package/src/aldehyde/index.tsx +220 -220
  457. package/src/aldehyde/layout/MainPage.tsx +334 -334
  458. package/src/aldehyde/layout/common.css +64 -64
  459. package/src/aldehyde/layout/coverstyle.css +51 -51
  460. package/src/aldehyde/layout/footer/index.css +5 -5
  461. package/src/aldehyde/layout/footer/index.js +17 -17
  462. package/src/aldehyde/layout/header/index.css +122 -122
  463. package/src/aldehyde/layout/header/index.tsx +152 -152
  464. package/src/aldehyde/layout/menu/block.css +7 -7
  465. package/src/aldehyde/layout/menu/block.tsx +174 -174
  466. package/src/aldehyde/layout/menu/l2menu-message-bar.tsx +160 -160
  467. package/src/aldehyde/layout/menu/l2menu-quick-bar.tsx +175 -175
  468. package/src/aldehyde/layout/menu/menu-2layers.tsx +117 -117
  469. package/src/aldehyde/layout/menu/menu-render.tsx +168 -168
  470. package/src/aldehyde/layout/menu/message-bar.less +73 -73
  471. package/src/aldehyde/layout/menu/reset-password.tsx +255 -255
  472. package/src/aldehyde/layout/menu/user-bar.tsx +259 -259
  473. package/src/aldehyde/layout/menu/userinfo-bar.tsx +69 -69
  474. package/src/aldehyde/layout/sidebar/index.css +57 -57
  475. package/src/aldehyde/layout/sidebar/index.tsx +84 -84
  476. package/src/aldehyde/layout2/components/icon-font.tsx +7 -7
  477. package/src/aldehyde/layout2/components/screenfull-button.tsx +21 -21
  478. package/src/aldehyde/layout2/components/search-menu.tsx +85 -85
  479. package/src/aldehyde/layout2/components/system-messages.tsx +75 -75
  480. package/src/aldehyde/layout2/components/theme-button.tsx +65 -65
  481. package/src/aldehyde/layout2/components/user-button.tsx +258 -258
  482. package/src/aldehyde/layout2/components/user-notification.tsx +74 -74
  483. package/src/aldehyde/layout2/css/header.css +41 -41
  484. package/src/aldehyde/layout2/css/sider.less +17 -17
  485. package/src/aldehyde/layout2/css/tabs-layout.less +18 -18
  486. package/src/aldehyde/layout2/header.tsx +278 -278
  487. package/src/aldehyde/layout2/layout-context.tsx +95 -95
  488. package/src/aldehyde/layout2/main.tsx +30 -30
  489. package/src/aldehyde/layout2/page.tsx +315 -315
  490. package/src/aldehyde/layout2/sider.tsx +230 -230
  491. package/src/aldehyde/layout2/tabs/tabs-context.tsx +37 -37
  492. package/src/aldehyde/layout2/tabs/tabs-layout.tsx +146 -146
  493. package/src/aldehyde/layout2/type/layout-type.ts +15 -15
  494. package/src/aldehyde/layout2/util/menu-util.tsx +125 -125
  495. package/src/aldehyde/layout3/components/tabs-layout.tsx +110 -110
  496. package/src/aldehyde/layout3/components/time.tsx +25 -25
  497. package/src/aldehyde/layout3/css/header.less +195 -195
  498. package/src/aldehyde/layout3/css/main.less +161 -161
  499. package/src/aldehyde/layout3/css/sider.less +32 -32
  500. package/src/aldehyde/layout3/css/tabs-layout.less +38 -38
  501. package/src/aldehyde/layout3/header.tsx +187 -187
  502. package/src/aldehyde/layout3/main.tsx +29 -29
  503. package/src/aldehyde/layout3/page.tsx +110 -110
  504. package/src/aldehyde/layout3/sider.tsx +198 -198
  505. package/src/aldehyde/layout4/components/tabs-layout.tsx +110 -110
  506. package/src/aldehyde/layout4/css/header.less +196 -196
  507. package/src/aldehyde/layout4/css/main.less +154 -154
  508. package/src/aldehyde/layout4/css/sider.less +37 -37
  509. package/src/aldehyde/layout4/css/tabs-layout.less +42 -42
  510. package/src/aldehyde/layout4/header.tsx +190 -190
  511. package/src/aldehyde/layout4/main.tsx +29 -29
  512. package/src/aldehyde/layout4/page.tsx +125 -125
  513. package/src/aldehyde/layout4/sider.tsx +201 -201
  514. package/src/aldehyde/layout5/css/header.less +35 -35
  515. package/src/aldehyde/layout5/css/sider.less +18 -18
  516. package/src/aldehyde/layout5/header.tsx +204 -204
  517. package/src/aldehyde/layout5/page.tsx +107 -107
  518. package/src/aldehyde/layout5/sider.tsx +235 -235
  519. package/src/aldehyde/list/calendar/index.less +20 -20
  520. package/src/aldehyde/list/calendar/index.tsx +157 -157
  521. package/src/aldehyde/list/card-list/card-list-item.tsx +112 -112
  522. package/src/aldehyde/list/card-list/index.less +154 -154
  523. package/src/aldehyde/list/card-list/index.tsx +83 -83
  524. package/src/aldehyde/list/gantt/index.less +8 -8
  525. package/src/aldehyde/list/gantt/index.tsx +508 -508
  526. package/src/aldehyde/list/vertical-list/index.less +208 -208
  527. package/src/aldehyde/list/vertical-list/index.tsx +55 -55
  528. package/src/aldehyde/list/vertical-list/item.tsx +136 -136
  529. package/src/aldehyde/locale/LocaleButton.tsx +48 -48
  530. package/src/aldehyde/locale/LocaleProvider.tsx +265 -265
  531. package/src/aldehyde/locale/langMp.ts +45 -45
  532. package/src/aldehyde/locale/translate.ts +80 -80
  533. package/src/aldehyde/locale/useLocale.ts +72 -72
  534. package/src/aldehyde/login/context-setter.tsx +130 -130
  535. package/src/aldehyde/login/index.css +19 -19
  536. package/src/aldehyde/login/login.tsx +255 -255
  537. package/src/aldehyde/login/router-login.tsx +107 -107
  538. package/src/aldehyde/login/vertify/index.css +143 -143
  539. package/src/aldehyde/login/vertify/index.tsx +360 -360
  540. package/src/aldehyde/login/vertify/tool.ts +13 -13
  541. package/src/aldehyde/login2/login-page.tsx +92 -92
  542. package/src/aldehyde/login2/login.tsx +227 -227
  543. package/src/aldehyde/login3/index.less +136 -136
  544. package/src/aldehyde/login3/login-page.tsx +71 -71
  545. package/src/aldehyde/lowcode-components/act-table/index.less +26 -26
  546. package/src/aldehyde/lowcode-components/act-table/index.tsx +139 -139
  547. package/src/aldehyde/lowcode-components/assets/lowcode-constant.tsx +12 -12
  548. package/src/aldehyde/lowcode-components/bar-chart/index.tsx +272 -268
  549. package/src/aldehyde/lowcode-components/base-button/index.less +7 -7
  550. package/src/aldehyde/lowcode-components/base-button/index.tsx +197 -197
  551. package/src/aldehyde/lowcode-components/base-image/index.tsx +220 -220
  552. package/src/aldehyde/lowcode-components/base-map/index.tsx +292 -292
  553. package/src/aldehyde/lowcode-components/base-radio/index.less +23 -23
  554. package/src/aldehyde/lowcode-components/base-radio/index.tsx +157 -157
  555. package/src/aldehyde/lowcode-components/base-table/index.tsx +268 -268
  556. package/src/aldehyde/lowcode-components/base-tabs/index.less +14 -14
  557. package/src/aldehyde/lowcode-components/base-tabs/index.tsx +183 -183
  558. package/src/aldehyde/lowcode-components/base-text/index.tsx +58 -58
  559. package/src/aldehyde/lowcode-components/border/border1/index.tsx +70 -70
  560. package/src/aldehyde/lowcode-components/border/border10/index.less +26 -26
  561. package/src/aldehyde/lowcode-components/border/border10/index.tsx +45 -45
  562. package/src/aldehyde/lowcode-components/border/border11/index.less +17 -17
  563. package/src/aldehyde/lowcode-components/border/border11/index.tsx +232 -232
  564. package/src/aldehyde/lowcode-components/border/border12/index.less +13 -13
  565. package/src/aldehyde/lowcode-components/border/border12/index.tsx +115 -115
  566. package/src/aldehyde/lowcode-components/border/border13/index.less +13 -13
  567. package/src/aldehyde/lowcode-components/border/border13/index.tsx +69 -69
  568. package/src/aldehyde/lowcode-components/border/border2/index.less +17 -17
  569. package/src/aldehyde/lowcode-components/border/border2/index.tsx +51 -51
  570. package/src/aldehyde/lowcode-components/border/border3/index.less +25 -25
  571. package/src/aldehyde/lowcode-components/border/border3/index.tsx +61 -61
  572. package/src/aldehyde/lowcode-components/border/border4/index.less +72 -72
  573. package/src/aldehyde/lowcode-components/border/border4/index.tsx +79 -79
  574. package/src/aldehyde/lowcode-components/border/border5/index.less +35 -35
  575. package/src/aldehyde/lowcode-components/border/border5/index.tsx +75 -75
  576. package/src/aldehyde/lowcode-components/border/border6/index.less +17 -17
  577. package/src/aldehyde/lowcode-components/border/border6/index.tsx +60 -60
  578. package/src/aldehyde/lowcode-components/border/border7/index.less +26 -26
  579. package/src/aldehyde/lowcode-components/border/border7/index.tsx +75 -75
  580. package/src/aldehyde/lowcode-components/border/border8/index.less +13 -13
  581. package/src/aldehyde/lowcode-components/border/border8/index.tsx +84 -84
  582. package/src/aldehyde/lowcode-components/border/border9/index.less +13 -13
  583. package/src/aldehyde/lowcode-components/border/border9/index.tsx +154 -154
  584. package/src/aldehyde/lowcode-components/capsule-bar-chart/index.tsx +290 -290
  585. package/src/aldehyde/lowcode-components/carousel/index.tsx +218 -218
  586. package/src/aldehyde/lowcode-components/circular-progress-chart/index.tsx +263 -263
  587. package/src/aldehyde/lowcode-components/column-3d-chart/index.tsx +442 -438
  588. package/src/aldehyde/lowcode-components/column-chart/index.tsx +297 -293
  589. package/src/aldehyde/lowcode-components/data-number/index.tsx +219 -219
  590. package/src/aldehyde/lowcode-components/data.d.ts +19 -19
  591. package/src/aldehyde/lowcode-components/decoration/decoration1/index.less +7 -7
  592. package/src/aldehyde/lowcode-components/decoration/decoration1/index.tsx +153 -153
  593. package/src/aldehyde/lowcode-components/decoration/decoration10/index.less +5 -5
  594. package/src/aldehyde/lowcode-components/decoration/decoration10/index.tsx +89 -89
  595. package/src/aldehyde/lowcode-components/decoration/decoration11/index.less +5 -5
  596. package/src/aldehyde/lowcode-components/decoration/decoration11/index.tsx +133 -133
  597. package/src/aldehyde/lowcode-components/decoration/decoration2/index.less +6 -6
  598. package/src/aldehyde/lowcode-components/decoration/decoration2/index.tsx +61 -61
  599. package/src/aldehyde/lowcode-components/decoration/decoration3/index.less +7 -7
  600. package/src/aldehyde/lowcode-components/decoration/decoration3/index.tsx +87 -87
  601. package/src/aldehyde/lowcode-components/decoration/decoration4/index.less +29 -29
  602. package/src/aldehyde/lowcode-components/decoration/decoration4/index.tsx +53 -53
  603. package/src/aldehyde/lowcode-components/decoration/decoration5/index.less +3 -3
  604. package/src/aldehyde/lowcode-components/decoration/decoration5/index.tsx +116 -116
  605. package/src/aldehyde/lowcode-components/decoration/decoration6/index.less +7 -7
  606. package/src/aldehyde/lowcode-components/decoration/decoration6/index.tsx +121 -121
  607. package/src/aldehyde/lowcode-components/decoration/decoration7/index.less +4 -4
  608. package/src/aldehyde/lowcode-components/decoration/decoration7/index.tsx +70 -70
  609. package/src/aldehyde/lowcode-components/decoration/decoration8/index.less +14 -14
  610. package/src/aldehyde/lowcode-components/decoration/decoration8/index.tsx +122 -122
  611. package/src/aldehyde/lowcode-components/decoration/decoration9/index.less +4 -4
  612. package/src/aldehyde/lowcode-components/decoration/decoration9/index.tsx +196 -196
  613. package/src/aldehyde/lowcode-components/effectScatter-map/index.tsx +315 -315
  614. package/src/aldehyde/lowcode-components/effectScatter-map-3d/index.tsx +419 -419
  615. package/src/aldehyde/lowcode-components/gauge-chart/index.tsx +254 -254
  616. package/src/aldehyde/lowcode-components/index.ts +130 -130
  617. package/src/aldehyde/lowcode-components/line-bar-chart/index.tsx +304 -300
  618. package/src/aldehyde/lowcode-components/line-chart/index.tsx +294 -290
  619. package/src/aldehyde/lowcode-components/liquid-chart/index.tsx +250 -250
  620. package/src/aldehyde/lowcode-components/lowcode-view/component/assets.ts +478 -478
  621. package/src/aldehyde/lowcode-components/lowcode-view/component/component-controller.ts +153 -153
  622. package/src/aldehyde/lowcode-components/lowcode-view/component/component-definition.ts +23 -23
  623. package/src/aldehyde/lowcode-components/lowcode-view/component/loading.tsx +20 -20
  624. package/src/aldehyde/lowcode-components/lowcode-view/component/util.ts +27 -27
  625. package/src/aldehyde/lowcode-components/lowcode-view/index.less +19 -19
  626. package/src/aldehyde/lowcode-components/lowcode-view/index.tsx +277 -277
  627. package/src/aldehyde/lowcode-components/lowcode-view/interface.ts +189 -189
  628. package/src/aldehyde/lowcode-components/pie-chart/index.tsx +353 -349
  629. package/src/aldehyde/lowcode-components/progress-chart/index.tsx +295 -295
  630. package/src/aldehyde/lowcode-components/radar-chart/index.tsx +322 -322
  631. package/src/aldehyde/lowcode-components/search-form/index.less +25 -25
  632. package/src/aldehyde/lowcode-components/search-form/index.tsx +121 -121
  633. package/src/aldehyde/lowcode-components/stroke-animation/index.tsx +219 -219
  634. package/src/aldehyde/module/block-menu-tree-drawer.tsx +118 -118
  635. package/src/aldehyde/module/criteria-page.tsx1 +175 -175
  636. package/src/aldehyde/module/draggable-modal.tsx +66 -66
  637. package/src/aldehyde/module/dtmpl-edit-card.tsx +477 -467
  638. package/src/aldehyde/module/dtmpl-edit-drawer.tsx +23 -23
  639. package/src/aldehyde/module/dtmpl-edit-modal.tsx +25 -25
  640. package/src/aldehyde/module/dtmpl-edit-page.tsx +597 -588
  641. package/src/aldehyde/module/dtmpl-editor.tsx +165 -165
  642. package/src/aldehyde/module/dtmpl-view-card.tsx +64 -64
  643. package/src/aldehyde/module/dtmpl-view-drawer.tsx +71 -71
  644. package/src/aldehyde/module/dtmpl-view-modal.tsx +56 -56
  645. package/src/aldehyde/module/embed-dtmpl-edit-page.tsx +137 -137
  646. package/src/aldehyde/module/index.less +4 -4
  647. package/src/aldehyde/module/ltmpl-drawer.tsx +60 -60
  648. package/src/aldehyde/module/ltmpl-modal.tsx +63 -63
  649. package/src/aldehyde/module/ltmpl-table.tsx +379 -379
  650. package/src/aldehyde/module/ttmpl-tree.tsx +47 -47
  651. package/src/aldehyde/routable/dtmpl-route.tsx +173 -173
  652. package/src/aldehyde/routable/import-route.tsx +35 -35
  653. package/src/aldehyde/routable/index.less +25 -25
  654. package/src/aldehyde/routable/ltmpl-route.tsx +539 -539
  655. package/src/aldehyde/routable/splitview-ltmpl-route.tsx +377 -377
  656. package/src/aldehyde/routable/ttmpl-route.tsx +93 -93
  657. package/src/aldehyde/routable/withroute.tsx +36 -36
  658. package/src/aldehyde/sso-Login/index.tsx +73 -73
  659. package/src/aldehyde/sso-Login/service/index.js +16 -16
  660. package/src/aldehyde/sso-Login/service/login.js +75 -75
  661. package/src/aldehyde/table/act-table.tsx +1844 -1838
  662. package/src/aldehyde/table/column/column-builder.tsx +876 -876
  663. package/src/aldehyde/table/column/column-selector.tsx +130 -130
  664. package/src/aldehyde/table/column/index.less +85 -85
  665. package/src/aldehyde/table/column/summary-builder.tsx +712 -712
  666. package/src/aldehyde/table/column/theme-color-getter.tsx +25 -25
  667. package/src/aldehyde/table/control-table-x-axis-wrapper.tsx +80 -80
  668. package/src/aldehyde/table/index.css +211 -211
  669. package/src/aldehyde/table/l2-act-table.tsx +91 -91
  670. package/src/aldehyde/table/modal-select-table.tsx +308 -308
  671. package/src/aldehyde/table/page-chart.less +10 -0
  672. package/src/aldehyde/table/page-chart.tsx +196 -0
  673. package/src/aldehyde/table/page-config-button.tsx +203 -203
  674. package/src/aldehyde/table/pagination.css +14 -14
  675. package/src/aldehyde/table/pagination.tsx +81 -81
  676. package/src/aldehyde/table/query-table.tsx +668 -668
  677. package/src/aldehyde/table/relation-table.tsx +1078 -1078
  678. package/src/aldehyde/table/report-table.tsx +125 -125
  679. package/src/aldehyde/table/resizable-table.tsx +97 -97
  680. package/src/aldehyde/table/row-table.tsx +23 -0
  681. package/src/aldehyde/table/select-table.tsx +559 -559
  682. package/src/aldehyde/table/selected-rows-card.tsx +78 -78
  683. package/src/aldehyde/table/stat/restat.tsx +122 -122
  684. package/src/aldehyde/table/table-util.tsx +25 -25
  685. package/src/aldehyde/tmpl/control-type-supportor.tsx +154 -154
  686. package/src/aldehyde/tmpl/hc-data-source.tsx +574 -574
  687. package/src/aldehyde/tmpl/hcservice-v3.tsx +1590 -1590
  688. package/src/aldehyde/tmpl/interface.tsx +936 -924
  689. package/src/aldehyde/tmpl/model-struc-v3.tsx +111 -111
  690. package/src/aldehyde/tmpl/superagent.js +146 -146
  691. package/src/aldehyde/tmpl/tmpl-config-analysis.tsx +585 -585
  692. package/src/aldehyde/tmpl/web-socket.ts +366 -366
  693. package/src/aldehyde/tree/act-tree.tsx +217 -217
  694. package/src/aldehyde/tree/block-menu-auth-tree.tsx +189 -189
  695. package/src/aldehyde/tree/index.css +22 -22
  696. package/src/aldehyde/tree/navigation-tree.tsx +39 -39
  697. package/src/aldehyde/tree/tmpl-tree.tsx +751 -751
  698. package/src/aldehyde/tree/tree-node.tsx +73 -73
  699. package/src/aldehyde/tree/tree-utils.tsx +317 -317
  700. package/src/aldehyde/units/EncryptUtils.js +37 -37
  701. package/src/aldehyde/units/image.d.ts +7 -7
  702. package/src/aldehyde/units/index.tsx +1367 -1367
  703. package/src/aldehyde/units/storage.js +2 -2
  704. package/src/aldehyde/utils/dsu.ts +27 -27
  705. package/src/aldehyde/welcome/HCWelcome.js +404 -404
  706. package/src/aldehyde/welcome/HCWelcome1.js +259 -259
  707. package/src/aldehyde/welcome/components/menu-card.less +96 -96
  708. package/src/aldehyde/welcome/components/menu-card.tsx +70 -70
  709. package/src/aldehyde/welcome/components/page-card.less +49 -49
  710. package/src/aldehyde/welcome/components/page-card.tsx +97 -97
  711. package/src/aldehyde/welcome/components/quick-entrance.less +120 -120
  712. package/src/aldehyde/welcome/components/quick-entrance.tsx +80 -80
  713. package/src/aldehyde/welcome/components/user-menus.less +192 -192
  714. package/src/aldehyde/welcome/components/user-menus.tsx +279 -279
  715. package/src/aldehyde/welcome/components/workbench.less +118 -118
  716. package/src/aldehyde/welcome/components/workbench.tsx +146 -146
  717. package/src/aldehyde/welcome/index.css +13 -13
@@ -1,1367 +1,1367 @@
1
- // import React from 'react'
2
- import {
3
- CriteriaConfig, CustomButtonConfig,
4
- DtmplConfig,
5
- DtmplData,
6
- DtmplFormProps,
7
- EnumItem,
8
- LtmplConfig,
9
- SelectConfig,
10
- ThemeConfig
11
- } from "../tmpl/interface";
12
- import dayjs from "dayjs";
13
- import TmplConfigAnalysis from "../tmpl/tmpl-config-analysis";
14
- import { ProgramConfig } from "../index";
15
- import { CriteriaFormProps } from "../form/criteria-form";
16
- import ControlTypeSupportor from "../tmpl/control-type-supportor";
17
- import HcserviceV3 from "../tmpl/hcservice-v3";
18
- import { UserInfo } from "../tmpl/interface";
19
-
20
- let storageKeyPrefix = undefined;
21
-
22
- const CUSTOM_PAGE_MAP = {};
23
-
24
- let MENU_MAP = {};
25
-
26
- let MENU_ID_ICON_MAP = {};
27
-
28
- const CustomButtonConfig_Map = {}
29
-
30
- const CUSTOM_VIEW_CONTROL_MAP = {};
31
-
32
- const AppDtmplConfigFuncMap = {};
33
-
34
- const AppCtmplConfigFuncMap = {};
35
-
36
- const CUSTOM_EDIT_CONTROL_MAP = {};
37
-
38
- let currentUser = undefined;
39
-
40
- const extendServerMap = {};
41
-
42
- let antdUseToken = undefined;
43
-
44
- const CUSTOM_COMPONENT_MAP = {};
45
-
46
- // 主题url vx替换正则
47
- const regexTheme = /(?<=#\/)vx/g;
48
-
49
- let themeConfig: ThemeConfig = undefined; // 系统配置主题等
50
-
51
- const pageConfigCommons = {}; // 用户页面自定义配置
52
-
53
- let components2DMap = {}; // 2D图形组件
54
-
55
- // let siderCollapsed:boolean = true;
56
-
57
- export default {
58
- setAntdUseToken(antdUseToken_) {
59
- antdUseToken = antdUseToken_;
60
- },
61
- getAntdUseToken() {
62
- return antdUseToken;
63
- },
64
-
65
- //静态补充
66
- setAppDtmplConfigFunc(
67
- key: string,
68
- func: (dtmplConfig: DtmplConfig, dtmplData: DtmplData) => DtmplConfig
69
- ) {
70
- AppDtmplConfigFuncMap[key] = func;
71
- },
72
-
73
-
74
- setMenuIconMap(menuIconMap) {
75
- MENU_ID_ICON_MAP = menuIconMap;
76
- },
77
- mapMenuIcon(menuId) {
78
- return MENU_ID_ICON_MAP[menuId];
79
- },
80
-
81
- setMenuMap(menuMap) {
82
- MENU_MAP = menuMap;
83
- },
84
- mapMenu(menuId) {
85
- if (menuId == 'home') {
86
- return "首页"
87
- }
88
- return MENU_MAP[menuId];
89
- },
90
-
91
-
92
- getAppDtmplConfig(
93
- dtmplConfig: DtmplConfig,
94
- dtmplData: DtmplData,
95
- props: DtmplFormProps
96
- ) {
97
- if (dtmplConfig) {
98
- if (AppDtmplConfigFuncMap[dtmplConfig.id]) {
99
- return AppDtmplConfigFuncMap[dtmplConfig.id](
100
- dtmplConfig,
101
- dtmplData,
102
- props
103
- );
104
- } else {
105
- //用内置的
106
- return TmplConfigAnalysis.buildInDtmplConfig(
107
- dtmplConfig,
108
- dtmplData,
109
- props
110
- );
111
- }
112
- }
113
- return dtmplConfig;
114
- },
115
-
116
- setCustomButtonConfig(
117
- key: string,
118
- config: CustomButtonConfig
119
- ) {
120
- CustomButtonConfig_Map[key] = config;
121
- },
122
-
123
- getCustomButtonConfig(
124
- key: string
125
- ) {
126
- return CustomButtonConfig_Map[key];
127
- },
128
-
129
- setAppCtmplConfigFunc(
130
- key: string,
131
- func: (ltmplConfig: SelectConfig, data: Object) => SelectConfig
132
- ) {
133
- AppCtmplConfigFuncMap[key] = func;
134
- },
135
-
136
- getAppCtmplConfig(
137
- ltmplConfig: SelectConfig,
138
- criteriaData: Object,
139
- props: CriteriaFormProps
140
- ) {
141
- if (ltmplConfig) {
142
- if (AppCtmplConfigFuncMap[ltmplConfig.id]) {
143
- return AppCtmplConfigFuncMap[ltmplConfig.id](
144
- ltmplConfig,
145
- criteriaData,
146
- props
147
- );
148
- } else {
149
- //用内置的
150
- return TmplConfigAnalysis.buildInCtmplConfig(
151
- ltmplConfig,
152
- criteriaData,
153
- props
154
- );
155
- }
156
- }
157
- return ltmplConfig;
158
- },
159
-
160
- isDynamicDtmplConfig(dtmplConfig: DtmplConfig) {
161
- if (dtmplConfig && AppDtmplConfigFuncMap[dtmplConfig.id]) {
162
- return true;
163
- }
164
- return false;
165
- },
166
-
167
- setCustomPage(key_: string, name: object) {
168
- let key = key_;
169
- if (!key) {
170
- return;
171
- }
172
- if (!key.startsWith("/")) {
173
- key = "/" + key;
174
- }
175
- CUSTOM_PAGE_MAP[key] = name;
176
- },
177
- setCustomControl(key_: string, view: object, edit: object) {
178
- let key = key_;
179
- if (!key.startsWith("/")) {
180
- key = "/" + key;
181
- }
182
- CUSTOM_VIEW_CONTROL_MAP[key] = view;
183
- CUSTOM_EDIT_CONTROL_MAP[key] = edit;
184
- },
185
- getCustomViewControl(key: string) {
186
- if (!key) {
187
- return null;
188
- }
189
- if (!key.startsWith("/")) {
190
- return CUSTOM_VIEW_CONTROL_MAP["/" + key];
191
- } else {
192
- return CUSTOM_VIEW_CONTROL_MAP[key];
193
- }
194
- },
195
- getCustomEditControl(key: string) {
196
- if (!key) {
197
- return null;
198
- }
199
- if (!key.startsWith("/")) {
200
- return CUSTOM_EDIT_CONTROL_MAP["/" + key];
201
- } else {
202
- return CUSTOM_EDIT_CONTROL_MAP[key];
203
- }
204
- },
205
- getCustomPage(key: string) {
206
- if (!key) {
207
- return null;
208
- }
209
- if (!key.startsWith("/")) {
210
- return CUSTOM_PAGE_MAP["/" + key];
211
- } else {
212
- return CUSTOM_PAGE_MAP[key];
213
- }
214
- },
215
- setProgramCode(programCode_: string, key?: string) {
216
- if (programCode_) {
217
- if (key) {
218
- window.localStorage.setItem(key + "programCode", programCode_);
219
- } else {
220
- window.localStorage.setItem("programCode", programCode_);
221
- window.sessionStorage.setItem("programCode", programCode_);
222
- }
223
- }
224
- },
225
- setSessionProgramCode(programCode_: string) {
226
- if (programCode_) {
227
- window.sessionStorage.setItem("programCode", programCode_);
228
- }
229
- },
230
- programCode(key?: string) {
231
- let programCode = null;
232
- if (key) {
233
- programCode = window.localStorage.getItem(key + "programCode");
234
- if (!programCode && key === "localDevopsServer") { // 2D图图片上传模型,配置为空则使用默认值
235
- programCode = "282877560559017986";
236
- }
237
- } else {
238
- programCode = window.sessionStorage.getItem("programCode");
239
- }
240
-
241
- if (!programCode) {
242
- programCode = window.localStorage.getItem("programCode");
243
- this.setSessionProgramCode(programCode);
244
- }
245
- return programCode;
246
- },
247
- setApplicationCode(applicationCode_: string, key?: string) {
248
- if (applicationCode_) {
249
- if (key) {
250
- window.localStorage.setItem(key + "applicationCode", applicationCode_);
251
- } else {
252
- window.localStorage.setItem("applicationCode", applicationCode_);
253
- window.sessionStorage.setItem("applicationCode", applicationCode_);
254
- }
255
- }
256
- },
257
- setSessionApplicationCode(applicationCode_: string) {
258
- if (applicationCode_) {
259
- window.sessionStorage.setItem("applicationCode", applicationCode_);
260
- }
261
- },
262
- applicationCode(key?: string) {
263
- let applicationCode = null;
264
- if (key) {
265
- applicationCode = window.localStorage.getItem(key + "applicationCode");
266
- } else {
267
- applicationCode = window.sessionStorage.getItem("applicationCode");
268
- }
269
-
270
- if (!applicationCode) {
271
- applicationCode = window.localStorage.getItem("applicationCode");
272
- this.setSessionProgramCode(applicationCode);
273
- }
274
- return applicationCode;
275
- },
276
- setHydrocarbonServer(url: string, key?: string) {
277
- if (key) {
278
- window.localStorage.setItem(key + "hydrocarbonServer", url);
279
- } else if (this.programCode()) {
280
- window.localStorage.setItem(
281
- this.programCode() + "hydrocarbonServer",
282
- url
283
- );
284
- } else {
285
- window.localStorage.setItem("hydrocarbonServer", url);
286
- }
287
- },
288
- setProgramName_Logo(logo1: string) {
289
- if (this.programCode()) {
290
- window.localStorage.setItem(
291
- this.programCode() + "programName_Logo",
292
- logo1
293
- );
294
- } else {
295
- window.localStorage.setItem("programName_Logo", logo1);
296
- }
297
- },
298
- api(key?: string) {
299
- let appi = null;
300
- if (key) {
301
- appi = window.localStorage.getItem(key + "hydrocarbonServer");
302
- } else {
303
- appi = window.localStorage.getItem(
304
- this.programCode() + "hydrocarbonServer"
305
- );
306
- }
307
- if (!appi) {
308
- appi = window.localStorage.getItem("hydrocarbonServer");
309
- }
310
-
311
- if (!appi) {
312
- let url = new URL(window.location.href);
313
- let pathname = null;
314
- if (url.pathname.indexOf("/kuangkie") > 0) {
315
- pathname = url.pathname.split("/kuangkie")[0];
316
- }
317
- appi = this.joinPath(url.origin, pathname);
318
- } else if (appi == "/") {
319
- //以当前为主
320
- let url = new URL(window.location.href);
321
- let pathname = url.pathname.split("/kuangkie")[0];
322
- appi = this.joinPath(url.origin, pathname);
323
- } else if (appi.startsWith("/-")) {
324
- let url = new URL(window.location.href);
325
- let afterOrigin = url.href.replace(`${url.origin}/`, '').split("/");
326
- let num = appi.match(/-/g)?.length || 0;
327
- let pathname = afterOrigin.slice(0, num).join("/");
328
- appi = this.joinPath(url.origin, pathname);
329
- } else if (!appi.startsWith("http")) {
330
- appi = this.joinPath(new URL(window.location.href).origin, appi);
331
- }
332
- return appi;
333
- },
334
- hydrocarbonToken(programCode_?: string, applicationCode_?: string) {
335
- let programCode = programCode_ ? programCode_ : this.programCode();
336
- let applicationCode = applicationCode_ || this.applicationCode() || "";
337
- let hydrocarbonToken = window.sessionStorage.getItem(
338
- programCode + applicationCode + "hydrocarbonToken"
339
- );
340
- if (!hydrocarbonToken) {
341
- hydrocarbonToken = window.sessionStorage.getItem("hydrocarbonToken");
342
- }
343
- if (!hydrocarbonToken) {
344
- hydrocarbonToken = window.localStorage.getItem(
345
- programCode + applicationCode + "hydrocarbonToken"
346
- );
347
- if (!hydrocarbonToken) {
348
- hydrocarbonToken = window.localStorage.getItem("hydrocarbonToken");
349
- }
350
- if (hydrocarbonToken) {
351
- this.setSessionHydrocarbonToken(hydrocarbonToken, programCode, applicationCode);
352
- }
353
- }
354
- return hydrocarbonToken;
355
- },
356
- setServerHydrocarbonToken(serverkey: string, token: string) {
357
- if (serverkey && token) {
358
- window.sessionStorage.setItem(serverkey + "hydrocarbonToken", token);
359
- }
360
- this.setHydrocarbonToken(token, serverkey);
361
- },
362
- serverHydrocarbonToken(serverKey: string) {
363
- let hydrocarbonToken = window.sessionStorage.getItem(serverKey + "hydrocarbonToken");
364
- if (!hydrocarbonToken) {
365
- hydrocarbonToken = window.localStorage.getItem(serverKey + "hydrocarbonToken");
366
- }
367
- if (!serverKey || !hydrocarbonToken) { // serverKey不存在
368
- hydrocarbonToken = this.hydrocarbonToken();
369
- }
370
- return hydrocarbonToken;
371
- },
372
- putExtendServers(extendServers) {
373
- for (let es of extendServers) {
374
- extendServerMap[es.key] = es;
375
- if (es.key && es["hydrocarbonServer"]) {
376
- ProgramConfig.setProgramCode(es["programCode"], es.key);
377
- ProgramConfig.setHydrocarbonServer(es["hydrocarbonServer"], es.key);
378
- }
379
- }
380
- },
381
- getExtendServers(serverKey) {
382
- return extendServerMap[serverKey];
383
- },
384
- setHydrocarbonToken(token: string, serverkey?: string) {
385
- let programCode = this.programCode(serverkey);
386
- let applicationCode = this.applicationCode(serverkey);
387
- this.setLocalHydrocarbonToken(token, programCode, applicationCode);
388
- this.setSessionHydrocarbonToken(token, programCode, applicationCode);
389
- },
390
- setLocalHydrocarbonToken(token: string, programCode_?: string, applicationCode_?: string) {
391
- if (!programCode_) {
392
- // if(!window.localStorage.getItem('hydrocarbonToken')){
393
- window.localStorage.setItem("hydrocarbonToken", token);
394
- //}
395
- }
396
- let programCode = programCode_ ? programCode_ : this.programCode();
397
- let applicationCode = applicationCode_ || this.applicationCode() || "";
398
- if (programCode) {
399
- window.localStorage.setItem(programCode + applicationCode + "hydrocarbonToken", token);
400
- //初次设为默认
401
- if (!window.localStorage.getItem("hydrocarbonToken")) {
402
- window.localStorage.setItem("hydrocarbonToken", token);
403
- }
404
- }
405
- // else{
406
- // window.localStorage.setItem('hydrocarbonToken',token);
407
- // }
408
- },
409
- setSessionHydrocarbonToken(token: string, programCode_?: string, applicationCode_?: string) {
410
- if (!programCode_) {
411
- //初次设为默认
412
- //if(!window.sessionStorage.getItem('hydrocarbonToken')){
413
- window.sessionStorage.setItem("hydrocarbonToken", token);
414
- // }
415
- }
416
- let programCode = programCode_ ? programCode_ : this.programCode();
417
- let applicationCode = applicationCode_ || this.applicationCode() || "";
418
- if (programCode) {
419
- window.sessionStorage.setItem(programCode + applicationCode + "hydrocarbonToken", token);
420
- if (!window.sessionStorage.getItem("hydrocarbonToken")) {
421
- window.sessionStorage.setItem("hydrocarbonToken", token);
422
- }
423
- }
424
- // else{
425
- // window.sessionStorage.setItem('hydrocarbonToken',token) ;
426
- // }
427
- },
428
- setProgramName(programName_: string) {
429
- if (this.programCode()) {
430
- window.localStorage.setItem(
431
- this.programCode() + "programName",
432
- programName_
433
- );
434
- } else {
435
- window.localStorage.setItem("programName", programName_);
436
- }
437
- },
438
- programName() {
439
- if (this.programCode()) {
440
- return window.localStorage.getItem(this.programCode() + "programName");
441
- } else {
442
- return window.localStorage.getItem("programName");
443
- }
444
- },
445
- setProgramName_sub(programName_sub_: string) {
446
- if (this.programCode()) {
447
- window.localStorage.setItem(
448
- this.programCode() + "programName_sub",
449
- programName_sub_
450
- );
451
- } else {
452
- window.localStorage.setItem("programName_sub", programName_sub_);
453
- }
454
- },
455
- programName_sub() {
456
- if (this.programCode()) {
457
- return window.localStorage.getItem(
458
- this.programCode() + "programName_sub"
459
- );
460
- } else {
461
- return window.localStorage.getItem("programName_sub");
462
- }
463
- },
464
- setProgramName_NavLeft(programName_NavLeft_: string) {
465
- if (this.programCode()) {
466
- window.localStorage.setItem(
467
- this.programCode() + "programName_NavLeft",
468
- programName_NavLeft_
469
- );
470
- } else {
471
- window.localStorage.setItem("programName_NavLeft", programName_NavLeft_);
472
- }
473
- },
474
- programName_NavLeft() {
475
- let result;
476
- if (this.programCode()) {
477
- result = window.localStorage.getItem(
478
- this.programCode() + "programName_NavLeft"
479
- );
480
- }
481
- if (!result) {
482
- result = window.localStorage.getItem("programName_NavLeft");
483
- }
484
- return result ? result : "管理平台";
485
- },
486
- programName_Logo() {
487
- let item = null;
488
- if (this.programCode()) {
489
- item = window.localStorage.getItem(
490
- this.programCode() + "programName_Logo"
491
- );
492
- }
493
- if (!item) {
494
- item = window.localStorage.getItem("programName_Logo");
495
- }
496
- return item && item == "undefined" ? null : item;
497
- },
498
-
499
- setThemes(themes: string[]) {
500
- const themesStr = themes?.length ? themes.join(",") : "";
501
- if (this.programCode()) {
502
- window.localStorage.setItem(
503
- this.programCode() + "themes",
504
- themesStr
505
- );
506
- } else {
507
- window.localStorage.setItem("themes", themesStr);
508
- }
509
- },
510
-
511
- themes() {
512
- let themes = "";
513
- if (this.programCode()) {
514
- themes = window.localStorage.getItem(
515
- this.programCode() + "themes"
516
- );
517
- } else {
518
- themes = window.localStorage.getItem("themes");
519
- }
520
-
521
- return themes ? themes.split(",") : [];
522
- },
523
-
524
- setDefaultTheme(theme: string) {
525
- let key = "defaultTheme";
526
- if (this.programCode()) {
527
- key = this.programCode() + "defaultTheme";
528
- }
529
- if (!theme) {
530
- window.localStorage.removeItem(key);
531
- return;
532
- }
533
- window.localStorage.setItem(key, theme);
534
- },
535
-
536
- getDefaultTheme() {
537
- let theme = "";
538
- if (this.programCode()) {
539
- theme = window.localStorage.getItem(
540
- this.programCode() + "defaultTheme"
541
- );
542
- } else {
543
- theme = window.localStorage.getItem("defaultTheme");
544
- }
545
- return theme || "v2";
546
- },
547
-
548
- formateDate(time) {
549
- if (!time) return "";
550
- return dayjs(new Date(time)).format("YYYY-MM-DD HH:mm:ss");
551
- //let str=date.getFullYear() + '-' + (date.getMonth() + 1) + '-' + date.getDate() + ' ' + date.getHours() + ':' + date.getMinutes() + ':' + date.getSeconds();
552
- // return str;
553
- },
554
- dateToString(date) {
555
- //日期转字符串
556
- //console.log(date)
557
- let year = date.getFullYear();
558
- let month = (date.getMonth() + 1).toString();
559
- let day = date.getDate().toString();
560
- if (month.length === 1) {
561
- month = "0" + month;
562
- }
563
- if (day.length === 1) {
564
- day = "0" + day;
565
- }
566
- const dateTime = year + "-" + month + "-" + day;
567
- return dateTime;
568
- },
569
- pagination(data, callback) {
570
- const page = {
571
- onchange: (current) => {
572
- callback(current);
573
- },
574
- current: data.pageInfo.pageNo,
575
- pageSize: data.pageInfo.pageSize,
576
- total: data.pageInfo.count,
577
- showTotal: () => {
578
- return `共${data.pageInfo.count}条`;
579
- },
580
- showQuickIumper: true,
581
- };
582
- return page;
583
- },
584
- // getRadioList(data) {
585
- // if (!data) {
586
- // return [];
587
- // }
588
- // const options = []
589
- // data.map((item) => {
590
- // options.push(<Radio value={item.id} key={item.id}>{item.name}</Radio>)
591
- // return false
592
- // })
593
- // return options
594
- // },
595
- // downloadFile_(url) {
596
- // try {
597
- // let elemIF = document.createElement("iframe");
598
- // //elemIF.src = url;
599
- // elemIF.src = "javascript: '<script>location.href=\"" + url + "\"</script>'"
600
- // elemIF.style.display = "none";
601
- // document.body.appendChild(elemIF);
602
- // } catch (e) {
603
- // message.error(e)
604
- // }
605
- // },
606
- openFile(url, fileName, toolbar) {
607
- try {
608
- let a = document.createElement("a");
609
- a.href = url + toolbar;
610
- a.target = "_blank";
611
- document.body.appendChild(a);
612
- a.click();
613
- document.body.removeChild(a);
614
- } catch (e) {
615
- console.log(e);
616
- }
617
- },
618
- toLogin() {
619
- let programCode = this.programCode();
620
- let applicationCode = this.applicationCode();
621
- const version = localStorage.getItem("version");
622
- const themes = this.getAllThemes();
623
- const loginPath = themes[version]?.loginPath || "login2";
624
- if (programCode && programCode != "null" && programCode != "undefined") {
625
- window.location.hash = applicationCode && applicationCode != "null" && applicationCode != "undefined" ? `#/${loginPath}/${programCode}/${applicationCode}` : `#/${loginPath}/${programCode}`;
626
- } else {
627
- window.location.hash = `#/${loginPath}`;
628
- }
629
- },
630
- logout() { // 退出登录,清除数据缓存
631
- currentUser = undefined;
632
- },
633
- async downloadFile(url, fileName) {
634
- try {
635
- // 检查是否跨域
636
- if (new URL(url).origin !== window.location.origin) {
637
- // 跨域资源使用Fetch API方式
638
- const response = await fetch(url);
639
- const blob = await response.blob();
640
- const blobUrl = window.URL.createObjectURL(blob);
641
- let a = document.createElement('a');
642
- a.href = blobUrl;
643
- a.download = fileName;
644
- document.body.appendChild(a);
645
- a.click();
646
- // 清理
647
- window.URL.revokeObjectURL(blobUrl);
648
- document.body.removeChild(a);
649
- } else {
650
- let a = document.createElement("a");
651
- a.download = fileName;
652
- a.href = url;
653
- //a.target= "_blank";
654
- document.body.appendChild(a);
655
- a.click();
656
- document.body.removeChild(a);
657
- }
658
- } catch (e) {
659
- console.log(e);
660
- }
661
- },
662
- downloadFile_old(url) {
663
- try {
664
- let a = document.createElement("form");
665
- a.action = url;
666
- //a.target= "_blank";
667
- document.body.appendChild(a);
668
- a.submit();
669
- document.body.removeChild(a);
670
- } catch (e) {
671
- console.log(e);
672
- }
673
- },
674
- //随机数
675
- getRandomNum(n) {
676
- let rnd = "";
677
- let f = Math.floor(Math.random() * 10);
678
- rnd += f == 0 ? "1" : f + "";
679
- for (let i = 1; i < n; i++) {
680
- rnd += Math.floor(Math.random() * 10);
681
- }
682
- return rnd;
683
- },
684
- /**
685
- * 获得用于在本地持久缓存的数据的Key前缀
686
- * 当前返回的值是第一次访问当前方法时的所在页面链接的pathname
687
- * 表示在不同的pathname下,永久缓存的数据将互不干扰
688
- * @returns {undefined}
689
- */
690
- getStorageKeyPrefix() {
691
- if (storageKeyPrefix === undefined) {
692
- storageKeyPrefix = window.location.pathname || "";
693
- }
694
- return storageKeyPrefix;
695
- },
696
-
697
- getLongTextStyle(value) {
698
- if (!value) {
699
- return {};
700
- }
701
- let style = {
702
- minWidth: "normal",
703
- maxWidth: "1000px",
704
- display: "block",
705
- // textAlign: 'left',
706
- whiteSpace: "normal",
707
- lineHeight: "20px",
708
- };
709
- let min_value_length =
710
- value.length > 200
711
- ? "350px"
712
- : value.length > 150
713
- ? "300px"
714
- : value.length > 100
715
- ? "250px"
716
- : value.length > 50
717
- ? "200px"
718
- : value.length >= 20
719
- ? "160px"
720
- : "80px";
721
- //let min_value_length = value.length > 20 ? '160px' : '80px';
722
- style.minWidth = min_value_length;
723
- return style;
724
- },
725
-
726
- setLocalStorge(key, value, min = 60) {
727
- if (key) {
728
- key = this.getStorageKeyPrefix() + key;
729
- }
730
- // 设置过期原则
731
- if (!value) {
732
- localStorage.removeItem(key);
733
- } else {
734
- const Min = min || 60;
735
- const exp = new Date();
736
- const expireAddTime = Min * 60 * 1000;
737
- localStorage.setItem(
738
- key,
739
- JSON.stringify({
740
- value,
741
- expireAddTime,
742
- expires: exp.getTime() + expireAddTime,
743
- })
744
- );
745
- }
746
- },
747
- getLocalStorge(name) {
748
- if (name) {
749
- name = this.getStorageKeyPrefix() + name;
750
- }
751
- try {
752
- let o = JSON.parse(localStorage[name]);
753
- if (!o || o.expires < Date.now()) {
754
- return null;
755
- } else {
756
- o.expires = Date.now() + o.expireAddTime;
757
- localStorage.setItem(name, JSON.stringify(o));
758
- return o.value;
759
- }
760
- } catch (e) {
761
- // 兼容其他localstorage
762
- return localStorage[name];
763
- } finally {
764
- }
765
- },
766
- getAnoHydrocarbonToken() {
767
- let token = this.getLocalStorge("anoHydrocarbonToken");
768
- if (!token) {
769
- token = "tmpl" + this.getRandomNum(6);
770
- this.setLocalStorge("anoHydrocarbonToken", token);
771
- }
772
- return token;
773
- },
774
- transQueryParamsToStr(data, isPrefix = false, excudekeys = []) {
775
- let prefix = isPrefix ? "?" : "";
776
- let _result = [];
777
- let paramKeys = [];
778
- //寻找参数
779
- for (let key in data) {
780
- if (excudekeys.indexOf(key) >= 0) {
781
- continue;
782
- }
783
- let value = data[key];
784
- // 去掉为空的参数
785
- if ([undefined, null].includes(value)) {
786
- value = "";
787
- continue;
788
- } else {
789
- paramKeys.push(key);
790
- }
791
- }
792
- //排序
793
- paramKeys.sort();
794
- for (let key of paramKeys) {
795
- let value = data[key];
796
- let str = encodeURIComponent(key);
797
- if (!value) {
798
- } else if (key === "sortColIds") {
799
- value.forEach((_value) => {
800
- _result.push(str + "[]=" + encodeURIComponent(_value));
801
- });
802
- } else if (value && value.constructor === Array) {
803
- value.forEach((_value) => {
804
- _result.push(str + "[]=" + encodeURIComponent(_value));
805
- });
806
- } else {
807
- _result.push(str + "=" + encodeURIComponent(value));
808
- }
809
- }
810
- return _result.length ? prefix + _result.join("&") : "";
811
- },
812
- getItemType(name_: string, value: string, ltmplConfig: LtmplConfig) {
813
- let name = name_;
814
- if (!value || !ltmplConfig) {
815
- return null;
816
- }
817
-
818
- if (name.startsWith("c_")) {
819
- name = name.substring(2);
820
- }
821
- let cs: CriteriaConfig[] = [];
822
- if (ltmplConfig.criteria) {
823
- cs.push(...ltmplConfig.criteria);
824
- }
825
- if (ltmplConfig.updrillButtonConfigs) {
826
- cs.push(...ltmplConfig.updrillButtonConfigs);
827
- }
828
- if (ltmplConfig.innerParams) {
829
- cs.push(...ltmplConfig.innerParams);
830
- }
831
- if (ltmplConfig.drillingParams) {
832
- cs.push(...ltmplConfig.drillingParams);
833
- }
834
-
835
- for (let c of cs) {
836
- if (c.id == name) {
837
- return ControlTypeSupportor.getControlType(c, value);
838
- }
839
- }
840
- return null;
841
- },
842
- transQueryStrToParams(str, ltmplConfig: LtmplConfig) {
843
- let obj = {};
844
- const arr1 = str.split("?");
845
-
846
- if (arr1 && arr1.length == 2) {
847
- const arr2 = arr1[1].split("&");
848
- for (let i = 0; i < arr2.length; i++) {
849
- if (arr2[i].indexOf("[]=") > 0) {
850
- const res = arr2[i].split("[]=");
851
- const name = res[0];
852
- if (!obj[name]) {
853
- obj[name] = [];
854
- }
855
- let pvalue = decodeURIComponent(res[1]);
856
- obj[name].push(
857
- this.configParamTrans(
858
- pvalue,
859
- this.getItemType(name, pvalue, ltmplConfig)
860
- )
861
- );
862
- } else {
863
- const res = arr2[i].split("=");
864
- const name = res[0];
865
- if (name) {
866
- let pvalue = decodeURIComponent(res[1]);
867
- obj[name] =
868
- this.configParamTrans(
869
- pvalue,
870
- this.getItemType(name, pvalue, ltmplConfig)
871
- );
872
- }
873
- }
874
- }
875
- }
876
- return obj;
877
- },
878
- isConfigDefaultValue(defaultValue) {
879
- if (!defaultValue) {
880
- return false;
881
- }
882
- return defaultValue.startsWith("$$current");
883
- },
884
- configParamTrans(value: string, itemType: string) {
885
- if (value && value.startsWith && value.startsWith("$$current")) {
886
- return TmplConfigAnalysis.current(value, this.getDayjsFormat(itemType));
887
- } else if (value?.startsWith && value.startsWith("$$user.")) { // 默认值根据用户配置
888
- let userInfo: UserInfo = this.getCurrentUserInfo();
889
- if (!userInfo) {
890
- return null;
891
- }
892
- if (value?.startsWith && value.startsWith("$$user.code")) {
893
- return userInfo.id + "@R@";
894
- } else {
895
- return userInfo?.extInfo?.fieldMap?.[value.split("user.")[1]] || null;
896
- }
897
- } else {
898
- return value;
899
- }
900
-
901
- },
902
-
903
- uniq(array, gWord) {
904
- const res = [];
905
- array.map((item) => {
906
- let flag = true;
907
- res.map((it) => {
908
- if (item[gWord] === it[gWord]) {
909
- flag = false;
910
- }
911
- return false;
912
- });
913
- if (flag) {
914
- res.push(item);
915
- }
916
- return false;
917
- });
918
- return res;
919
- },
920
- deepCopy(obj) {
921
- var result = Array.isArray(obj) ? [] : {};
922
- for (var key in obj) {
923
- if (obj.hasOwnProperty(key)) {
924
- if (typeof obj[key] === "object") {
925
- result[key] = this.deepCopy(obj[key]); //递归复制
926
- } else {
927
- result[key] = obj[key];
928
- }
929
- }
930
- }
931
- return result;
932
- },
933
- // forPic(fieldMap) { //原始数据的图片url转化为图片
934
- // for (let i in fieldMap) {
935
- // if (fieldMap[i] && fieldMap[i].includes("download-files")) {
936
- // const url = this.api() + fieldMap[i]
937
- // fieldMap[i] = <img
938
- // style={{width: 55}}
939
- // src={url}
940
- // alt=""/>
941
- // }
942
- // }
943
- // return fieldMap
944
- // },
945
- getFileUrl(file) {
946
- if (!file) {
947
- return file;
948
- } else if (file.constructor === String) {
949
- return file;
950
- } else if (file.constructor === Object) {
951
- if (file.props.children.props) {
952
- const { href } = file.props.children.props;
953
- return href;
954
- } else if (file.props.owlner) {
955
- return file.props.owlner;
956
- } else {
957
- return file;
958
- }
959
- } else {
960
- return file;
961
- }
962
- },
963
-
964
- getOptionColor(options: EnumItem[], value) {
965
- if (!value) {
966
- return null;
967
- }
968
- let color;
969
- if (options) {
970
- options.forEach((option) => {
971
- if (option.value === value) {
972
- if (option.color) {
973
- color = option.color;
974
- }
975
- return;
976
- }
977
- });
978
- }
979
- return color;
980
- },
981
-
982
- getFieldItemType(item) {
983
- return item.extType
984
- ? item.extType
985
- : item.msExtType
986
- ? item.msExtType
987
- : item.msType
988
- ? item.msType
989
- : item.type;
990
- },
991
- isEmpty(obj) {
992
- if (!obj) {
993
- return true;
994
- }
995
- for (let key in obj) {
996
- return false; //非空
997
- }
998
- return true;
999
- },
1000
- getDayjsFormat(itemType) {
1001
- let format = "YYYY-MM-DD HH:mm:ss";
1002
-
1003
- switch (itemType) {
1004
- case "daterange-YY":
1005
- case "date-YY":
1006
- format = "YYYY";
1007
- break;
1008
- case "date-M1":
1009
- case "daterange-M1":
1010
- format = "YYYY-MM";
1011
- break;
1012
- case "date":
1013
- case "daterange":
1014
- format = "YYYY-MM-DD";
1015
- break;
1016
- case "datetime-HH":
1017
- case "datetimerange-HH":
1018
- format = "YYYY-MM-DD HH";
1019
- break;
1020
- case "datetime-mm":
1021
- case "datetimerange-mm":
1022
- format = "YYYY-MM-DD HH:mm";
1023
- break;
1024
- case "datetime":
1025
- case "datetimerange":
1026
- format = "YYYY-MM-DD HH:mm:ss";
1027
- break;
1028
- case "timestamp":
1029
- format = "YYYY-MM-DD HH:mm:ss SSS";
1030
- break;
1031
- case "time-HH":
1032
- case "timerange-HH":
1033
- case "timerange-HH-unorder":
1034
- format = "HH";
1035
- break;
1036
- case "time-mm":
1037
- case "timerange-mm":
1038
- case "timerange-mm-unorder":
1039
- format = "HH:mm";
1040
- break;
1041
- case "time":
1042
- case "timerange":
1043
- case "timerange-unorder":
1044
- format = "HH:mm:ss";
1045
- break;
1046
- }
1047
-
1048
- return format;
1049
- },
1050
- getDateTimeFormat(itemType) {
1051
- let format = "";
1052
- switch (itemType) {
1053
- case "time-HH":
1054
- case "timerange-HH":
1055
- case "datetime-HH":
1056
- case "datetimerange-HH":
1057
- return "HH";
1058
- case "time-mm":
1059
- case "timerange-mm":
1060
- case "datetime-mm":
1061
- case "datetimerange-mm":
1062
- return "HH:mm";
1063
- case "timestamp":
1064
- case "time":
1065
- case "timerange":
1066
- case "datetime":
1067
- case "datetimerange":
1068
- return "HH:mm:ss";
1069
- default:
1070
- return "";
1071
- }
1072
-
1073
- return format;
1074
- },
1075
- // getSelectOptions(data: EnumItem[]) {
1076
- //
1077
- // if (!data) {
1078
- // return [];
1079
- // }
1080
- // const options = []
1081
- // data.map((item) => {
1082
- // options.push(<Option value={item.value} key={item.title}>{item.title}</Option>)
1083
- // return false
1084
- // })
1085
- // return options
1086
- // },
1087
- // getSelectListOfStrList(data) {
1088
- //
1089
- // if (!data) {
1090
- // return [];
1091
- // }
1092
- // const options = []
1093
- // data.map((item) => {
1094
- // options.push(<Option value={item} key={item}>{item}</Option>)
1095
- // return false
1096
- // })
1097
- // return options
1098
- // },
1099
- // getSelectOptionsOfMstrucId(mstrucId: string) {
1100
- // return this.getSelectOptions(HCDataSource.getEnums(mstrucId));
1101
- // },
1102
- concatValue(value1, vaule2) {
1103
- let newValue = undefined;
1104
- if (value1) {
1105
- newValue = value1 + "~";
1106
- } else {
1107
- newValue = "~";
1108
- }
1109
-
1110
- if (vaule2) {
1111
- newValue = newValue + vaule2;
1112
- }
1113
- return newValue;
1114
- },
1115
- splitValue(value) {
1116
- let valueBegin, valueEnd;
1117
- if (value) {
1118
- if (value.toString().indexOf("~") >= 0) {
1119
- let splitValue: string[] = value.split("~");
1120
- valueBegin = splitValue[0] ? splitValue[0] : undefined;
1121
- valueEnd = splitValue[1] ? splitValue[1] : undefined;
1122
- } else {
1123
- valueBegin = value;
1124
- }
1125
- }
1126
-
1127
- return { valueBegin, valueEnd };
1128
- },
1129
- str2UTF8(str) {
1130
- var bytes = new Array();
1131
- var len, c;
1132
- len = str.length;
1133
- for (var i = 0; i < len; i++) {
1134
- c = str.charCodeAt(i);
1135
- if (c >= 0x010000 && c <= 0x10ffff) {
1136
- bytes.push(((c >> 18) & 0x07) | 0xf0);
1137
- bytes.push(((c >> 12) & 0x3f) | 0x80);
1138
- bytes.push(((c >> 6) & 0x3f) | 0x80);
1139
- bytes.push((c & 0x3f) | 0x80);
1140
- } else if (c >= 0x000800 && c <= 0x00ffff) {
1141
- bytes.push(((c >> 12) & 0x0f) | 0xe0);
1142
- bytes.push(((c >> 6) & 0x3f) | 0x80);
1143
- bytes.push((c & 0x3f) | 0x80);
1144
- } else if (c >= 0x000080 && c <= 0x0007ff) {
1145
- bytes.push(((c >> 6) & 0x1f) | 0xc0);
1146
- bytes.push((c & 0x3f) | 0x80);
1147
- } else {
1148
- bytes.push(c & 0xff);
1149
- }
1150
- }
1151
- return bytes;
1152
- },
1153
- joinPath(path1, path2) {
1154
- let path = path1;
1155
- if (!path.endsWith("/") && !path.endsWith("\\")) {
1156
- path = path + "/";
1157
- }
1158
- if (path2) {
1159
- if (path2.startsWith("/") || path.startsWith("\\")) {
1160
- path = path + path2.slice(1);
1161
- } else {
1162
- path = path + path2;
1163
- }
1164
- }
1165
- return path;
1166
- },
1167
- // getRouteProgramCode(pathProps){
1168
- // if (pathProps && pathProps.match && pathProps.match.params) {
1169
- // const {programCode} = pathProps.match.params;
1170
- // return programCode;
1171
- // }
1172
- // },
1173
- setProgramCode4RoutePath(pathParams) {
1174
- const { programCode, applicationCode } = pathParams;
1175
- this.setProgramCode(programCode);
1176
- this.setApplicationCode(applicationCode);
1177
- },
1178
- setSessionProgramCode4RoutePath(pathParams) {
1179
- const { programCode, applicationCode } = pathParams;
1180
- this.setSessionProgramCode(programCode);
1181
- this.setSessionApplicationCode(applicationCode);
1182
- },
1183
- getReactKey() {
1184
- return new Date().getTime().toString();
1185
- },
1186
- async getUserInfo(programCode?: string, token?: string, applicationCode?: string) {
1187
- if (currentUser?.name) {
1188
- return currentUser;
1189
- }
1190
- let user = await HcserviceV3.getUser(programCode, token, applicationCode);
1191
- if (user?.orgGtmplSourceId && !["null"].includes(user.orgGtmplSourceId)) {
1192
- const { ltmplConfig } = await HcserviceV3.requestLtmplConfig(null, user.orgGtmplSourceId) || {};
1193
- const { entities } = await HcserviceV3.requestLtmplQueryTop(null, user.orgGtmplSourceId, { top: 1 }) || {};
1194
- const primaryColumnId = ltmplConfig?.extDisplayConfig?.primaryColumn?.id; // 首字段
1195
- const mainPictureId = ltmplConfig?.extDisplayConfig?.mainPicture?.id; // 主图字段
1196
- const orgName = entities?.[0]?.fieldMap?.[primaryColumnId];
1197
- const homeImg = entities?.[0]?.fieldMap?.[mainPictureId];
1198
- user = { ...user, orgName, homeImg }
1199
- }
1200
- currentUser = user;
1201
- return currentUser;
1202
- },
1203
- getCurrentUserInfo() {
1204
- return currentUser;
1205
- },
1206
- // 低代码拖拽页面-自定义组件
1207
- setCustomComponent(key_: string, name: object) {
1208
- let key = key_;
1209
- if (!key) {
1210
- return;
1211
- }
1212
- CUSTOM_COMPONENT_MAP[key] = name;
1213
- },
1214
- getCustomComponent(key: string) {
1215
- if (!key) {
1216
- return null;
1217
- }
1218
- return CUSTOM_COMPONENT_MAP[key];
1219
- },
1220
- getAllThemes() { // 主题风格-路径配置
1221
- const themes = {
1222
- v2: { path: "v2", loginPath: "login2" },
1223
- v3: { path: "v3", loginPath: "login3" },
1224
- v4: { path: "v4", loginPath: "login4" },
1225
- v5: { path: "v5", loginPath: "login2" },
1226
- };
1227
- return themes;
1228
- },
1229
- toDefaultTheme(defTheme?: string) {
1230
- const temTheme = defTheme || ProgramConfig.getDefaultTheme();
1231
- let hash = window.location.hash;
1232
- if (regexTheme.test(hash)) {
1233
- hash = hash.replace(regexTheme, `${temTheme}/home`);
1234
- window.location.hash = hash;
1235
- } else {
1236
- const localVersion = localStorage.getItem("version");
1237
- if (!localVersion) {
1238
- window.location.hash = `#/${temTheme}/home`;
1239
- }
1240
- }
1241
- },
1242
- async getThemeConfig(serverKey?: string) {
1243
- if (themeConfig) {
1244
- return themeConfig;
1245
- }
1246
- const programCode = this.programCode();
1247
- const applicationCode = this.applicationCode();
1248
- const server = this.api(serverKey);
1249
- const { themeConfig: temConfig } = await HcserviceV3.getThemeConfig(serverKey, programCode) || {};
1250
- const loginMainPicture = temConfig?.loginMainPicture ? this.joinPath(server, `/v3/theme-files/${temConfig?.loginMainPicture}?@programToken=${programCode}&@applicationToken=${applicationCode}`) : null;
1251
- const programIcon = temConfig?.programIcon ? this.joinPath(server, `/v3/theme-files/${temConfig?.programIcon}?@programToken=${programCode}&@applicationToken=${applicationCode}`) : null;
1252
- themeConfig = { ...temConfig, loginMainPicture, programIcon };
1253
- return themeConfig;
1254
- },
1255
- getThemeConfigInfo() {
1256
- return themeConfig;
1257
- },
1258
- coverUserPageConfig(setting: { [key: string]: any }) { // 页面配置覆盖
1259
- const currentUser = this.getCurrentUserInfo();
1260
- if (!setting || !currentUser) return;
1261
- const programCode = this.programCode();
1262
- const applicationCode = this.applicationCode();
1263
- const localKey = `${currentUser.id}-${programCode}${applicationCode ? `-${applicationCode}` : ""}-userPageConfig`;
1264
- localStorage.setItem(localKey, JSON.stringify(setting));
1265
- },
1266
- setUserPageConfig(key: string, setting: { [key: string]: any }) { // 页面配置(视图、列、分页等)存本地
1267
- const currentUser = this.getCurrentUserInfo();
1268
- if (!key || !setting || !currentUser) return;
1269
- const programCode = this.programCode();
1270
- const applicationCode = this.applicationCode();
1271
- const localKey = `${currentUser.id}-${programCode}${applicationCode ? `-${applicationCode}` : ""}-userPageConfig`;
1272
- const userPageConfig = localStorage.getItem(localKey) || "{}";
1273
- let config = {};
1274
- try {
1275
- config = JSON.parse(userPageConfig);
1276
- } catch {
1277
- config = {};
1278
- }
1279
- config[key] = { ...(config[key] || {}), ...setting };
1280
- localStorage.setItem(localKey, JSON.stringify(config));
1281
- return config[key];
1282
- },
1283
- async getUserPageConfig(key: string) { // 获取当前页面配置本地缓存
1284
- const currentUser = await this.getUserInfo();
1285
- if (!key || !currentUser) return;
1286
- const programCode = this.programCode();
1287
- const applicationCode = this.applicationCode();
1288
- const localKey = `${currentUser.id}-${programCode}${applicationCode ? `-${applicationCode}` : ""}-userPageConfig`;
1289
- const userPageConfig = localStorage.getItem(localKey) || "{}";
1290
- try {
1291
- const config = JSON.parse(userPageConfig);
1292
- return config[key];
1293
- } catch {
1294
- return;
1295
- }
1296
- },
1297
- resetUserPageConfig(key: string) { // 重置当前页面配置本地缓存
1298
- const currentUser = this.getCurrentUserInfo();
1299
- if (!key || !currentUser) return;
1300
- const programCode = this.programCode();
1301
- const applicationCode = this.applicationCode();
1302
- const localKey = `${currentUser.id}-${programCode}${applicationCode ? `-${applicationCode}` : ""}-userPageConfig`;
1303
- const userPageConfig = localStorage.getItem(localKey) || "{}";
1304
- try {
1305
- const config = JSON.parse(userPageConfig);
1306
- config[key] = undefined;
1307
- localStorage.setItem(localKey, JSON.stringify(config));
1308
- } catch {
1309
- return;
1310
- }
1311
- },
1312
- async getPageConfigCommon(menuCode: string, type?: "default" | "refresh") {
1313
- // type == refresh 请求新数据,不使用缓存
1314
- if ((!type || type === "default") && pageConfigCommons[menuCode]) {
1315
- return pageConfigCommons[menuCode];
1316
- }
1317
- const configs = await HcserviceV3.getPageConfigCommon(menuCode);
1318
- pageConfigCommons[menuCode] = configs;
1319
- return configs;
1320
- },
1321
- async getPageConfigDefault() { // 拉取用户默认配置
1322
- const configs = await HcserviceV3.getPageConfigDefault();
1323
- const defUserPageConfig = configs.reduce((total, cur) => {
1324
- total[cur.menuCode] = cur.content ? JSON.parse(cur.content) : undefined;
1325
- return total;
1326
- }, {});
1327
- this.coverUserPageConfig(defUserPageConfig); // 覆盖本地缓存
1328
- return configs;
1329
- },
1330
- findItemByIdIterative(tree: any[], value: string | number, key = "id") { // 查找树级数组中的指定项
1331
- if (!tree?.length) {
1332
- return undefined;
1333
- }
1334
- // 使用一个栈来存储待遍历的节点
1335
- const stack = [...tree];
1336
- while (stack.length > 0) {
1337
- const node = stack.pop();
1338
- if (node[key] === value) {
1339
- return node;
1340
- }
1341
- if (node.children && node.children.length > 0) {
1342
- stack.push(...node.children);
1343
- }
1344
- }
1345
- return undefined;
1346
- },
1347
- async get2DComponent(groups: string[]) { // 获取2D组件数据
1348
- const temGroups = groups.filter(r => !components2DMap[r]);
1349
- if (!temGroups?.length) {
1350
- return components2DMap;
1351
- }
1352
- const res = await HcserviceV3.get2DComponent(temGroups);
1353
- const temObj = Object.keys(res).reduce((total, next) => {
1354
- total[next] = res[next] || [];
1355
- return total;
1356
- }, {});
1357
- components2DMap = { ...components2DMap, ...temObj };
1358
- return components2DMap;
1359
- },
1360
- get2DComponentByType(type: string) { // 获取指定类型组件
1361
- if (!type) {
1362
- return;
1363
- }
1364
- const item = Object.values(components2DMap).flat(Infinity).find((r: any) => r.type === type);
1365
- return item;
1366
- }
1367
- };
1
+ // import React from 'react'
2
+ import {
3
+ CriteriaConfig, CustomButtonConfig,
4
+ DtmplConfig,
5
+ DtmplData,
6
+ DtmplFormProps,
7
+ EnumItem,
8
+ LtmplConfig,
9
+ SelectConfig,
10
+ ThemeConfig
11
+ } from "../tmpl/interface";
12
+ import dayjs from "dayjs";
13
+ import TmplConfigAnalysis from "../tmpl/tmpl-config-analysis";
14
+ import { ProgramConfig } from "../index";
15
+ import { CriteriaFormProps } from "../form/criteria-form";
16
+ import ControlTypeSupportor from "../tmpl/control-type-supportor";
17
+ import HcserviceV3 from "../tmpl/hcservice-v3";
18
+ import { UserInfo } from "../tmpl/interface";
19
+
20
+ let storageKeyPrefix = undefined;
21
+
22
+ const CUSTOM_PAGE_MAP = {};
23
+
24
+ let MENU_MAP = {};
25
+
26
+ let MENU_ID_ICON_MAP = {};
27
+
28
+ const CustomButtonConfig_Map = {}
29
+
30
+ const CUSTOM_VIEW_CONTROL_MAP = {};
31
+
32
+ const AppDtmplConfigFuncMap = {};
33
+
34
+ const AppCtmplConfigFuncMap = {};
35
+
36
+ const CUSTOM_EDIT_CONTROL_MAP = {};
37
+
38
+ let currentUser = undefined;
39
+
40
+ const extendServerMap = {};
41
+
42
+ let antdUseToken = undefined;
43
+
44
+ const CUSTOM_COMPONENT_MAP = {};
45
+
46
+ // 主题url vx替换正则
47
+ const regexTheme = /(?<=#\/)vx/g;
48
+
49
+ let themeConfig: ThemeConfig = undefined; // 系统配置主题等
50
+
51
+ const pageConfigCommons = {}; // 用户页面自定义配置
52
+
53
+ let components2DMap = {}; // 2D图形组件
54
+
55
+ // let siderCollapsed:boolean = true;
56
+
57
+ export default {
58
+ setAntdUseToken(antdUseToken_) {
59
+ antdUseToken = antdUseToken_;
60
+ },
61
+ getAntdUseToken() {
62
+ return antdUseToken;
63
+ },
64
+
65
+ //静态补充
66
+ setAppDtmplConfigFunc(
67
+ key: string,
68
+ func: (dtmplConfig: DtmplConfig, dtmplData: DtmplData) => DtmplConfig
69
+ ) {
70
+ AppDtmplConfigFuncMap[key] = func;
71
+ },
72
+
73
+
74
+ setMenuIconMap(menuIconMap) {
75
+ MENU_ID_ICON_MAP = menuIconMap;
76
+ },
77
+ mapMenuIcon(menuId) {
78
+ return MENU_ID_ICON_MAP[menuId];
79
+ },
80
+
81
+ setMenuMap(menuMap) {
82
+ MENU_MAP = menuMap;
83
+ },
84
+ mapMenu(menuId) {
85
+ if (menuId == 'home') {
86
+ return "首页"
87
+ }
88
+ return MENU_MAP[menuId];
89
+ },
90
+
91
+
92
+ getAppDtmplConfig(
93
+ dtmplConfig: DtmplConfig,
94
+ dtmplData: DtmplData,
95
+ props: DtmplFormProps
96
+ ) {
97
+ if (dtmplConfig) {
98
+ if (AppDtmplConfigFuncMap[dtmplConfig.id]) {
99
+ return AppDtmplConfigFuncMap[dtmplConfig.id](
100
+ dtmplConfig,
101
+ dtmplData,
102
+ props
103
+ );
104
+ } else {
105
+ //用内置的
106
+ return TmplConfigAnalysis.buildInDtmplConfig(
107
+ dtmplConfig,
108
+ dtmplData,
109
+ props
110
+ );
111
+ }
112
+ }
113
+ return dtmplConfig;
114
+ },
115
+
116
+ setCustomButtonConfig(
117
+ key: string,
118
+ config: CustomButtonConfig
119
+ ) {
120
+ CustomButtonConfig_Map[key] = config;
121
+ },
122
+
123
+ getCustomButtonConfig(
124
+ key: string
125
+ ) {
126
+ return CustomButtonConfig_Map[key];
127
+ },
128
+
129
+ setAppCtmplConfigFunc(
130
+ key: string,
131
+ func: (ltmplConfig: SelectConfig, data: Object) => SelectConfig
132
+ ) {
133
+ AppCtmplConfigFuncMap[key] = func;
134
+ },
135
+
136
+ getAppCtmplConfig(
137
+ ltmplConfig: SelectConfig,
138
+ criteriaData: Object,
139
+ props: CriteriaFormProps
140
+ ) {
141
+ if (ltmplConfig) {
142
+ if (AppCtmplConfigFuncMap[ltmplConfig.id]) {
143
+ return AppCtmplConfigFuncMap[ltmplConfig.id](
144
+ ltmplConfig,
145
+ criteriaData,
146
+ props
147
+ );
148
+ } else {
149
+ //用内置的
150
+ return TmplConfigAnalysis.buildInCtmplConfig(
151
+ ltmplConfig,
152
+ criteriaData,
153
+ props
154
+ );
155
+ }
156
+ }
157
+ return ltmplConfig;
158
+ },
159
+
160
+ isDynamicDtmplConfig(dtmplConfig: DtmplConfig) {
161
+ if (dtmplConfig && AppDtmplConfigFuncMap[dtmplConfig.id]) {
162
+ return true;
163
+ }
164
+ return false;
165
+ },
166
+
167
+ setCustomPage(key_: string, name: object) {
168
+ let key = key_;
169
+ if (!key) {
170
+ return;
171
+ }
172
+ if (!key.startsWith("/")) {
173
+ key = "/" + key;
174
+ }
175
+ CUSTOM_PAGE_MAP[key] = name;
176
+ },
177
+ setCustomControl(key_: string, view: object, edit: object) {
178
+ let key = key_;
179
+ if (!key.startsWith("/")) {
180
+ key = "/" + key;
181
+ }
182
+ CUSTOM_VIEW_CONTROL_MAP[key] = view;
183
+ CUSTOM_EDIT_CONTROL_MAP[key] = edit;
184
+ },
185
+ getCustomViewControl(key: string) {
186
+ if (!key) {
187
+ return null;
188
+ }
189
+ if (!key.startsWith("/")) {
190
+ return CUSTOM_VIEW_CONTROL_MAP["/" + key];
191
+ } else {
192
+ return CUSTOM_VIEW_CONTROL_MAP[key];
193
+ }
194
+ },
195
+ getCustomEditControl(key: string) {
196
+ if (!key) {
197
+ return null;
198
+ }
199
+ if (!key.startsWith("/")) {
200
+ return CUSTOM_EDIT_CONTROL_MAP["/" + key];
201
+ } else {
202
+ return CUSTOM_EDIT_CONTROL_MAP[key];
203
+ }
204
+ },
205
+ getCustomPage(key: string) {
206
+ if (!key) {
207
+ return null;
208
+ }
209
+ if (!key.startsWith("/")) {
210
+ return CUSTOM_PAGE_MAP["/" + key];
211
+ } else {
212
+ return CUSTOM_PAGE_MAP[key];
213
+ }
214
+ },
215
+ setProgramCode(programCode_: string, key?: string) {
216
+ if (programCode_) {
217
+ if (key) {
218
+ window.localStorage.setItem(key + "programCode", programCode_);
219
+ } else {
220
+ window.localStorage.setItem("programCode", programCode_);
221
+ window.sessionStorage.setItem("programCode", programCode_);
222
+ }
223
+ }
224
+ },
225
+ setSessionProgramCode(programCode_: string) {
226
+ if (programCode_) {
227
+ window.sessionStorage.setItem("programCode", programCode_);
228
+ }
229
+ },
230
+ programCode(key?: string) {
231
+ let programCode = null;
232
+ if (key) {
233
+ programCode = window.localStorage.getItem(key + "programCode");
234
+ if (!programCode && key === "localDevopsServer") { // 2D图图片上传模型,配置为空则使用默认值
235
+ programCode = "282877560559017986";
236
+ }
237
+ } else {
238
+ programCode = window.sessionStorage.getItem("programCode");
239
+ }
240
+
241
+ if (!programCode) {
242
+ programCode = window.localStorage.getItem("programCode");
243
+ this.setSessionProgramCode(programCode);
244
+ }
245
+ return programCode;
246
+ },
247
+ setApplicationCode(applicationCode_: string, key?: string) {
248
+ if (applicationCode_) {
249
+ if (key) {
250
+ window.localStorage.setItem(key + "applicationCode", applicationCode_);
251
+ } else {
252
+ window.localStorage.setItem("applicationCode", applicationCode_);
253
+ window.sessionStorage.setItem("applicationCode", applicationCode_);
254
+ }
255
+ }
256
+ },
257
+ setSessionApplicationCode(applicationCode_: string) {
258
+ if (applicationCode_) {
259
+ window.sessionStorage.setItem("applicationCode", applicationCode_);
260
+ }
261
+ },
262
+ applicationCode(key?: string) {
263
+ let applicationCode = null;
264
+ if (key) {
265
+ applicationCode = window.localStorage.getItem(key + "applicationCode");
266
+ } else {
267
+ applicationCode = window.sessionStorage.getItem("applicationCode");
268
+ }
269
+
270
+ if (!applicationCode) {
271
+ applicationCode = window.localStorage.getItem("applicationCode");
272
+ this.setSessionProgramCode(applicationCode);
273
+ }
274
+ return applicationCode;
275
+ },
276
+ setHydrocarbonServer(url: string, key?: string) {
277
+ if (key) {
278
+ window.localStorage.setItem(key + "hydrocarbonServer", url);
279
+ } else if (this.programCode()) {
280
+ window.localStorage.setItem(
281
+ this.programCode() + "hydrocarbonServer",
282
+ url
283
+ );
284
+ } else {
285
+ window.localStorage.setItem("hydrocarbonServer", url);
286
+ }
287
+ },
288
+ setProgramName_Logo(logo1: string) {
289
+ if (this.programCode()) {
290
+ window.localStorage.setItem(
291
+ this.programCode() + "programName_Logo",
292
+ logo1
293
+ );
294
+ } else {
295
+ window.localStorage.setItem("programName_Logo", logo1);
296
+ }
297
+ },
298
+ api(key?: string) {
299
+ let appi = null;
300
+ if (key) {
301
+ appi = window.localStorage.getItem(key + "hydrocarbonServer");
302
+ } else {
303
+ appi = window.localStorage.getItem(
304
+ this.programCode() + "hydrocarbonServer"
305
+ );
306
+ }
307
+ if (!appi) {
308
+ appi = window.localStorage.getItem("hydrocarbonServer");
309
+ }
310
+
311
+ if (!appi) {
312
+ let url = new URL(window.location.href);
313
+ let pathname = null;
314
+ if (url.pathname.indexOf("/kuangkie") > 0) {
315
+ pathname = url.pathname.split("/kuangkie")[0];
316
+ }
317
+ appi = this.joinPath(url.origin, pathname);
318
+ } else if (appi == "/") {
319
+ //以当前为主
320
+ let url = new URL(window.location.href);
321
+ let pathname = url.pathname.split("/kuangkie")[0];
322
+ appi = this.joinPath(url.origin, pathname);
323
+ } else if (appi.startsWith("/-")) {
324
+ let url = new URL(window.location.href);
325
+ let afterOrigin = url.href.replace(`${url.origin}/`, '').split("/");
326
+ let num = appi.match(/-/g)?.length || 0;
327
+ let pathname = afterOrigin.slice(0, num).join("/");
328
+ appi = this.joinPath(url.origin, pathname);
329
+ } else if (!appi.startsWith("http")) {
330
+ appi = this.joinPath(new URL(window.location.href).origin, appi);
331
+ }
332
+ return appi;
333
+ },
334
+ hydrocarbonToken(programCode_?: string, applicationCode_?: string) {
335
+ let programCode = programCode_ ? programCode_ : this.programCode();
336
+ let applicationCode = applicationCode_ || this.applicationCode() || "";
337
+ let hydrocarbonToken = window.sessionStorage.getItem(
338
+ programCode + applicationCode + "hydrocarbonToken"
339
+ );
340
+ if (!hydrocarbonToken) {
341
+ hydrocarbonToken = window.sessionStorage.getItem("hydrocarbonToken");
342
+ }
343
+ if (!hydrocarbonToken) {
344
+ hydrocarbonToken = window.localStorage.getItem(
345
+ programCode + applicationCode + "hydrocarbonToken"
346
+ );
347
+ if (!hydrocarbonToken) {
348
+ hydrocarbonToken = window.localStorage.getItem("hydrocarbonToken");
349
+ }
350
+ if (hydrocarbonToken) {
351
+ this.setSessionHydrocarbonToken(hydrocarbonToken, programCode, applicationCode);
352
+ }
353
+ }
354
+ return hydrocarbonToken;
355
+ },
356
+ setServerHydrocarbonToken(serverkey: string, token: string) {
357
+ if (serverkey && token) {
358
+ window.sessionStorage.setItem(serverkey + "hydrocarbonToken", token);
359
+ }
360
+ this.setHydrocarbonToken(token, serverkey);
361
+ },
362
+ serverHydrocarbonToken(serverKey: string) {
363
+ let hydrocarbonToken = window.sessionStorage.getItem(serverKey + "hydrocarbonToken");
364
+ if (!hydrocarbonToken) {
365
+ hydrocarbonToken = window.localStorage.getItem(serverKey + "hydrocarbonToken");
366
+ }
367
+ if (!serverKey || !hydrocarbonToken) { // serverKey不存在
368
+ hydrocarbonToken = this.hydrocarbonToken();
369
+ }
370
+ return hydrocarbonToken;
371
+ },
372
+ putExtendServers(extendServers) {
373
+ for (let es of extendServers) {
374
+ extendServerMap[es.key] = es;
375
+ if (es.key && es["hydrocarbonServer"]) {
376
+ ProgramConfig.setProgramCode(es["programCode"], es.key);
377
+ ProgramConfig.setHydrocarbonServer(es["hydrocarbonServer"], es.key);
378
+ }
379
+ }
380
+ },
381
+ getExtendServers(serverKey) {
382
+ return extendServerMap[serverKey];
383
+ },
384
+ setHydrocarbonToken(token: string, serverkey?: string) {
385
+ let programCode = this.programCode(serverkey);
386
+ let applicationCode = this.applicationCode(serverkey);
387
+ this.setLocalHydrocarbonToken(token, programCode, applicationCode);
388
+ this.setSessionHydrocarbonToken(token, programCode, applicationCode);
389
+ },
390
+ setLocalHydrocarbonToken(token: string, programCode_?: string, applicationCode_?: string) {
391
+ if (!programCode_) {
392
+ // if(!window.localStorage.getItem('hydrocarbonToken')){
393
+ window.localStorage.setItem("hydrocarbonToken", token);
394
+ //}
395
+ }
396
+ let programCode = programCode_ ? programCode_ : this.programCode();
397
+ let applicationCode = applicationCode_ || this.applicationCode() || "";
398
+ if (programCode) {
399
+ window.localStorage.setItem(programCode + applicationCode + "hydrocarbonToken", token);
400
+ //初次设为默认
401
+ if (!window.localStorage.getItem("hydrocarbonToken")) {
402
+ window.localStorage.setItem("hydrocarbonToken", token);
403
+ }
404
+ }
405
+ // else{
406
+ // window.localStorage.setItem('hydrocarbonToken',token);
407
+ // }
408
+ },
409
+ setSessionHydrocarbonToken(token: string, programCode_?: string, applicationCode_?: string) {
410
+ if (!programCode_) {
411
+ //初次设为默认
412
+ //if(!window.sessionStorage.getItem('hydrocarbonToken')){
413
+ window.sessionStorage.setItem("hydrocarbonToken", token);
414
+ // }
415
+ }
416
+ let programCode = programCode_ ? programCode_ : this.programCode();
417
+ let applicationCode = applicationCode_ || this.applicationCode() || "";
418
+ if (programCode) {
419
+ window.sessionStorage.setItem(programCode + applicationCode + "hydrocarbonToken", token);
420
+ if (!window.sessionStorage.getItem("hydrocarbonToken")) {
421
+ window.sessionStorage.setItem("hydrocarbonToken", token);
422
+ }
423
+ }
424
+ // else{
425
+ // window.sessionStorage.setItem('hydrocarbonToken',token) ;
426
+ // }
427
+ },
428
+ setProgramName(programName_: string) {
429
+ if (this.programCode()) {
430
+ window.localStorage.setItem(
431
+ this.programCode() + "programName",
432
+ programName_
433
+ );
434
+ } else {
435
+ window.localStorage.setItem("programName", programName_);
436
+ }
437
+ },
438
+ programName() {
439
+ if (this.programCode()) {
440
+ return window.localStorage.getItem(this.programCode() + "programName");
441
+ } else {
442
+ return window.localStorage.getItem("programName");
443
+ }
444
+ },
445
+ setProgramName_sub(programName_sub_: string) {
446
+ if (this.programCode()) {
447
+ window.localStorage.setItem(
448
+ this.programCode() + "programName_sub",
449
+ programName_sub_
450
+ );
451
+ } else {
452
+ window.localStorage.setItem("programName_sub", programName_sub_);
453
+ }
454
+ },
455
+ programName_sub() {
456
+ if (this.programCode()) {
457
+ return window.localStorage.getItem(
458
+ this.programCode() + "programName_sub"
459
+ );
460
+ } else {
461
+ return window.localStorage.getItem("programName_sub");
462
+ }
463
+ },
464
+ setProgramName_NavLeft(programName_NavLeft_: string) {
465
+ if (this.programCode()) {
466
+ window.localStorage.setItem(
467
+ this.programCode() + "programName_NavLeft",
468
+ programName_NavLeft_
469
+ );
470
+ } else {
471
+ window.localStorage.setItem("programName_NavLeft", programName_NavLeft_);
472
+ }
473
+ },
474
+ programName_NavLeft() {
475
+ let result;
476
+ if (this.programCode()) {
477
+ result = window.localStorage.getItem(
478
+ this.programCode() + "programName_NavLeft"
479
+ );
480
+ }
481
+ if (!result) {
482
+ result = window.localStorage.getItem("programName_NavLeft");
483
+ }
484
+ return result ? result : "管理平台";
485
+ },
486
+ programName_Logo() {
487
+ let item = null;
488
+ if (this.programCode()) {
489
+ item = window.localStorage.getItem(
490
+ this.programCode() + "programName_Logo"
491
+ );
492
+ }
493
+ if (!item) {
494
+ item = window.localStorage.getItem("programName_Logo");
495
+ }
496
+ return item && item == "undefined" ? null : item;
497
+ },
498
+
499
+ setThemes(themes: string[]) {
500
+ const themesStr = themes?.length ? themes.join(",") : "";
501
+ if (this.programCode()) {
502
+ window.localStorage.setItem(
503
+ this.programCode() + "themes",
504
+ themesStr
505
+ );
506
+ } else {
507
+ window.localStorage.setItem("themes", themesStr);
508
+ }
509
+ },
510
+
511
+ themes() {
512
+ let themes = "";
513
+ if (this.programCode()) {
514
+ themes = window.localStorage.getItem(
515
+ this.programCode() + "themes"
516
+ );
517
+ } else {
518
+ themes = window.localStorage.getItem("themes");
519
+ }
520
+
521
+ return themes ? themes.split(",") : [];
522
+ },
523
+
524
+ setDefaultTheme(theme: string) {
525
+ let key = "defaultTheme";
526
+ if (this.programCode()) {
527
+ key = this.programCode() + "defaultTheme";
528
+ }
529
+ if (!theme) {
530
+ window.localStorage.removeItem(key);
531
+ return;
532
+ }
533
+ window.localStorage.setItem(key, theme);
534
+ },
535
+
536
+ getDefaultTheme() {
537
+ let theme = "";
538
+ if (this.programCode()) {
539
+ theme = window.localStorage.getItem(
540
+ this.programCode() + "defaultTheme"
541
+ );
542
+ } else {
543
+ theme = window.localStorage.getItem("defaultTheme");
544
+ }
545
+ return theme || "v2";
546
+ },
547
+
548
+ formateDate(time) {
549
+ if (!time) return "";
550
+ return dayjs(new Date(time)).format("YYYY-MM-DD HH:mm:ss");
551
+ //let str=date.getFullYear() + '-' + (date.getMonth() + 1) + '-' + date.getDate() + ' ' + date.getHours() + ':' + date.getMinutes() + ':' + date.getSeconds();
552
+ // return str;
553
+ },
554
+ dateToString(date) {
555
+ //日期转字符串
556
+ //console.log(date)
557
+ let year = date.getFullYear();
558
+ let month = (date.getMonth() + 1).toString();
559
+ let day = date.getDate().toString();
560
+ if (month.length === 1) {
561
+ month = "0" + month;
562
+ }
563
+ if (day.length === 1) {
564
+ day = "0" + day;
565
+ }
566
+ const dateTime = year + "-" + month + "-" + day;
567
+ return dateTime;
568
+ },
569
+ pagination(data, callback) {
570
+ const page = {
571
+ onchange: (current) => {
572
+ callback(current);
573
+ },
574
+ current: data.pageInfo.pageNo,
575
+ pageSize: data.pageInfo.pageSize,
576
+ total: data.pageInfo.count,
577
+ showTotal: () => {
578
+ return `共${data.pageInfo.count}条`;
579
+ },
580
+ showQuickIumper: true,
581
+ };
582
+ return page;
583
+ },
584
+ // getRadioList(data) {
585
+ // if (!data) {
586
+ // return [];
587
+ // }
588
+ // const options = []
589
+ // data.map((item) => {
590
+ // options.push(<Radio value={item.id} key={item.id}>{item.name}</Radio>)
591
+ // return false
592
+ // })
593
+ // return options
594
+ // },
595
+ // downloadFile_(url) {
596
+ // try {
597
+ // let elemIF = document.createElement("iframe");
598
+ // //elemIF.src = url;
599
+ // elemIF.src = "javascript: '<script>location.href=\"" + url + "\"</script>'"
600
+ // elemIF.style.display = "none";
601
+ // document.body.appendChild(elemIF);
602
+ // } catch (e) {
603
+ // message.error(e)
604
+ // }
605
+ // },
606
+ openFile(url, fileName, toolbar) {
607
+ try {
608
+ let a = document.createElement("a");
609
+ a.href = url + toolbar;
610
+ a.target = "_blank";
611
+ document.body.appendChild(a);
612
+ a.click();
613
+ document.body.removeChild(a);
614
+ } catch (e) {
615
+ console.log(e);
616
+ }
617
+ },
618
+ toLogin() {
619
+ let programCode = this.programCode();
620
+ let applicationCode = this.applicationCode();
621
+ const version = localStorage.getItem("version");
622
+ const themes = this.getAllThemes();
623
+ const loginPath = themes[version]?.loginPath || "login2";
624
+ if (programCode && programCode != "null" && programCode != "undefined") {
625
+ window.location.hash = applicationCode && applicationCode != "null" && applicationCode != "undefined" ? `#/${loginPath}/${programCode}/${applicationCode}` : `#/${loginPath}/${programCode}`;
626
+ } else {
627
+ window.location.hash = `#/${loginPath}`;
628
+ }
629
+ },
630
+ logout() { // 退出登录,清除数据缓存
631
+ currentUser = undefined;
632
+ },
633
+ async downloadFile(url, fileName) {
634
+ try {
635
+ // 检查是否跨域
636
+ if (new URL(url).origin !== window.location.origin) {
637
+ // 跨域资源使用Fetch API方式
638
+ const response = await fetch(url);
639
+ const blob = await response.blob();
640
+ const blobUrl = window.URL.createObjectURL(blob);
641
+ let a = document.createElement('a');
642
+ a.href = blobUrl;
643
+ a.download = fileName;
644
+ document.body.appendChild(a);
645
+ a.click();
646
+ // 清理
647
+ window.URL.revokeObjectURL(blobUrl);
648
+ document.body.removeChild(a);
649
+ } else {
650
+ let a = document.createElement("a");
651
+ a.download = fileName;
652
+ a.href = url;
653
+ //a.target= "_blank";
654
+ document.body.appendChild(a);
655
+ a.click();
656
+ document.body.removeChild(a);
657
+ }
658
+ } catch (e) {
659
+ console.log(e);
660
+ }
661
+ },
662
+ downloadFile_old(url) {
663
+ try {
664
+ let a = document.createElement("form");
665
+ a.action = url;
666
+ //a.target= "_blank";
667
+ document.body.appendChild(a);
668
+ a.submit();
669
+ document.body.removeChild(a);
670
+ } catch (e) {
671
+ console.log(e);
672
+ }
673
+ },
674
+ //随机数
675
+ getRandomNum(n) {
676
+ let rnd = "";
677
+ let f = Math.floor(Math.random() * 10);
678
+ rnd += f == 0 ? "1" : f + "";
679
+ for (let i = 1; i < n; i++) {
680
+ rnd += Math.floor(Math.random() * 10);
681
+ }
682
+ return rnd;
683
+ },
684
+ /**
685
+ * 获得用于在本地持久缓存的数据的Key前缀
686
+ * 当前返回的值是第一次访问当前方法时的所在页面链接的pathname
687
+ * 表示在不同的pathname下,永久缓存的数据将互不干扰
688
+ * @returns {undefined}
689
+ */
690
+ getStorageKeyPrefix() {
691
+ if (storageKeyPrefix === undefined) {
692
+ storageKeyPrefix = window.location.pathname || "";
693
+ }
694
+ return storageKeyPrefix;
695
+ },
696
+
697
+ getLongTextStyle(value) {
698
+ if (!value) {
699
+ return {};
700
+ }
701
+ let style = {
702
+ minWidth: "normal",
703
+ maxWidth: "1000px",
704
+ display: "block",
705
+ // textAlign: 'left',
706
+ whiteSpace: "normal",
707
+ lineHeight: "20px",
708
+ };
709
+ let min_value_length =
710
+ value.length > 200
711
+ ? "350px"
712
+ : value.length > 150
713
+ ? "300px"
714
+ : value.length > 100
715
+ ? "250px"
716
+ : value.length > 50
717
+ ? "200px"
718
+ : value.length >= 20
719
+ ? "160px"
720
+ : "80px";
721
+ //let min_value_length = value.length > 20 ? '160px' : '80px';
722
+ style.minWidth = min_value_length;
723
+ return style;
724
+ },
725
+
726
+ setLocalStorge(key, value, min = 60) {
727
+ if (key) {
728
+ key = this.getStorageKeyPrefix() + key;
729
+ }
730
+ // 设置过期原则
731
+ if (!value) {
732
+ localStorage.removeItem(key);
733
+ } else {
734
+ const Min = min || 60;
735
+ const exp = new Date();
736
+ const expireAddTime = Min * 60 * 1000;
737
+ localStorage.setItem(
738
+ key,
739
+ JSON.stringify({
740
+ value,
741
+ expireAddTime,
742
+ expires: exp.getTime() + expireAddTime,
743
+ })
744
+ );
745
+ }
746
+ },
747
+ getLocalStorge(name) {
748
+ if (name) {
749
+ name = this.getStorageKeyPrefix() + name;
750
+ }
751
+ try {
752
+ let o = JSON.parse(localStorage[name]);
753
+ if (!o || o.expires < Date.now()) {
754
+ return null;
755
+ } else {
756
+ o.expires = Date.now() + o.expireAddTime;
757
+ localStorage.setItem(name, JSON.stringify(o));
758
+ return o.value;
759
+ }
760
+ } catch (e) {
761
+ // 兼容其他localstorage
762
+ return localStorage[name];
763
+ } finally {
764
+ }
765
+ },
766
+ getAnoHydrocarbonToken() {
767
+ let token = this.getLocalStorge("anoHydrocarbonToken");
768
+ if (!token) {
769
+ token = "tmpl" + this.getRandomNum(6);
770
+ this.setLocalStorge("anoHydrocarbonToken", token);
771
+ }
772
+ return token;
773
+ },
774
+ transQueryParamsToStr(data, isPrefix = false, excudekeys = []) {
775
+ let prefix = isPrefix ? "?" : "";
776
+ let _result = [];
777
+ let paramKeys = [];
778
+ //寻找参数
779
+ for (let key in data) {
780
+ if (excudekeys.indexOf(key) >= 0) {
781
+ continue;
782
+ }
783
+ let value = data[key];
784
+ // 去掉为空的参数
785
+ if ([undefined, null].includes(value)) {
786
+ value = "";
787
+ continue;
788
+ } else {
789
+ paramKeys.push(key);
790
+ }
791
+ }
792
+ //排序
793
+ paramKeys.sort();
794
+ for (let key of paramKeys) {
795
+ let value = data[key];
796
+ let str = encodeURIComponent(key);
797
+ if (!value) {
798
+ } else if (key === "sortColIds") {
799
+ value.forEach((_value) => {
800
+ _result.push(str + "[]=" + encodeURIComponent(_value));
801
+ });
802
+ } else if (value && value.constructor === Array) {
803
+ value.forEach((_value) => {
804
+ _result.push(str + "[]=" + encodeURIComponent(_value));
805
+ });
806
+ } else {
807
+ _result.push(str + "=" + encodeURIComponent(value));
808
+ }
809
+ }
810
+ return _result.length ? prefix + _result.join("&") : "";
811
+ },
812
+ getItemType(name_: string, value: string, ltmplConfig: LtmplConfig) {
813
+ let name = name_;
814
+ if (!value || !ltmplConfig) {
815
+ return null;
816
+ }
817
+
818
+ if (name.startsWith("c_")) {
819
+ name = name.substring(2);
820
+ }
821
+ let cs: CriteriaConfig[] = [];
822
+ if (ltmplConfig.criteria) {
823
+ cs.push(...ltmplConfig.criteria);
824
+ }
825
+ if (ltmplConfig.updrillButtonConfigs) {
826
+ cs.push(...ltmplConfig.updrillButtonConfigs);
827
+ }
828
+ if (ltmplConfig.innerParams) {
829
+ cs.push(...ltmplConfig.innerParams);
830
+ }
831
+ if (ltmplConfig.drillingParams) {
832
+ cs.push(...ltmplConfig.drillingParams);
833
+ }
834
+
835
+ for (let c of cs) {
836
+ if (c.id == name) {
837
+ return ControlTypeSupportor.getControlType(c, value);
838
+ }
839
+ }
840
+ return null;
841
+ },
842
+ transQueryStrToParams(str, ltmplConfig: LtmplConfig) {
843
+ let obj = {};
844
+ const arr1 = str.split("?");
845
+
846
+ if (arr1 && arr1.length == 2) {
847
+ const arr2 = arr1[1].split("&");
848
+ for (let i = 0; i < arr2.length; i++) {
849
+ if (arr2[i].indexOf("[]=") > 0) {
850
+ const res = arr2[i].split("[]=");
851
+ const name = res[0];
852
+ if (!obj[name]) {
853
+ obj[name] = [];
854
+ }
855
+ let pvalue = decodeURIComponent(res[1]);
856
+ obj[name].push(
857
+ this.configParamTrans(
858
+ pvalue,
859
+ this.getItemType(name, pvalue, ltmplConfig)
860
+ )
861
+ );
862
+ } else {
863
+ const res = arr2[i].split("=");
864
+ const name = res[0];
865
+ if (name) {
866
+ let pvalue = decodeURIComponent(res[1]);
867
+ obj[name] =
868
+ this.configParamTrans(
869
+ pvalue,
870
+ this.getItemType(name, pvalue, ltmplConfig)
871
+ );
872
+ }
873
+ }
874
+ }
875
+ }
876
+ return obj;
877
+ },
878
+ isConfigDefaultValue(defaultValue) {
879
+ if (!defaultValue) {
880
+ return false;
881
+ }
882
+ return defaultValue.startsWith("$$current");
883
+ },
884
+ configParamTrans(value: string, itemType: string) {
885
+ if (value && value.startsWith && value.startsWith("$$current")) {
886
+ return TmplConfigAnalysis.current(value, this.getDayjsFormat(itemType));
887
+ } else if (value?.startsWith && value.startsWith("$$user.")) { // 默认值根据用户配置
888
+ let userInfo: UserInfo = this.getCurrentUserInfo();
889
+ if (!userInfo) {
890
+ return null;
891
+ }
892
+ if (value?.startsWith && value.startsWith("$$user.code")) {
893
+ return userInfo.id + "@R@";
894
+ } else {
895
+ return userInfo?.extInfo?.fieldMap?.[value.split("user.")[1]] || null;
896
+ }
897
+ } else {
898
+ return value;
899
+ }
900
+
901
+ },
902
+
903
+ uniq(array, gWord) {
904
+ const res = [];
905
+ array.map((item) => {
906
+ let flag = true;
907
+ res.map((it) => {
908
+ if (item[gWord] === it[gWord]) {
909
+ flag = false;
910
+ }
911
+ return false;
912
+ });
913
+ if (flag) {
914
+ res.push(item);
915
+ }
916
+ return false;
917
+ });
918
+ return res;
919
+ },
920
+ deepCopy(obj) {
921
+ var result = Array.isArray(obj) ? [] : {};
922
+ for (var key in obj) {
923
+ if (obj.hasOwnProperty(key)) {
924
+ if (typeof obj[key] === "object") {
925
+ result[key] = this.deepCopy(obj[key]); //递归复制
926
+ } else {
927
+ result[key] = obj[key];
928
+ }
929
+ }
930
+ }
931
+ return result;
932
+ },
933
+ // forPic(fieldMap) { //原始数据的图片url转化为图片
934
+ // for (let i in fieldMap) {
935
+ // if (fieldMap[i] && fieldMap[i].includes("download-files")) {
936
+ // const url = this.api() + fieldMap[i]
937
+ // fieldMap[i] = <img
938
+ // style={{width: 55}}
939
+ // src={url}
940
+ // alt=""/>
941
+ // }
942
+ // }
943
+ // return fieldMap
944
+ // },
945
+ getFileUrl(file) {
946
+ if (!file) {
947
+ return file;
948
+ } else if (file.constructor === String) {
949
+ return file;
950
+ } else if (file.constructor === Object) {
951
+ if (file.props.children.props) {
952
+ const { href } = file.props.children.props;
953
+ return href;
954
+ } else if (file.props.owlner) {
955
+ return file.props.owlner;
956
+ } else {
957
+ return file;
958
+ }
959
+ } else {
960
+ return file;
961
+ }
962
+ },
963
+
964
+ getOptionColor(options: EnumItem[], value) {
965
+ if (!value) {
966
+ return null;
967
+ }
968
+ let color;
969
+ if (options) {
970
+ options.forEach((option) => {
971
+ if (option.value === value) {
972
+ if (option.color) {
973
+ color = option.color;
974
+ }
975
+ return;
976
+ }
977
+ });
978
+ }
979
+ return color;
980
+ },
981
+
982
+ getFieldItemType(item) {
983
+ return item.extType
984
+ ? item.extType
985
+ : item.msExtType
986
+ ? item.msExtType
987
+ : item.msType
988
+ ? item.msType
989
+ : item.type;
990
+ },
991
+ isEmpty(obj) {
992
+ if (!obj) {
993
+ return true;
994
+ }
995
+ for (let key in obj) {
996
+ return false; //非空
997
+ }
998
+ return true;
999
+ },
1000
+ getDayjsFormat(itemType) {
1001
+ let format = "YYYY-MM-DD HH:mm:ss";
1002
+
1003
+ switch (itemType) {
1004
+ case "daterange-YY":
1005
+ case "date-YY":
1006
+ format = "YYYY";
1007
+ break;
1008
+ case "date-M1":
1009
+ case "daterange-M1":
1010
+ format = "YYYY-MM";
1011
+ break;
1012
+ case "date":
1013
+ case "daterange":
1014
+ format = "YYYY-MM-DD";
1015
+ break;
1016
+ case "datetime-HH":
1017
+ case "datetimerange-HH":
1018
+ format = "YYYY-MM-DD HH";
1019
+ break;
1020
+ case "datetime-mm":
1021
+ case "datetimerange-mm":
1022
+ format = "YYYY-MM-DD HH:mm";
1023
+ break;
1024
+ case "datetime":
1025
+ case "datetimerange":
1026
+ format = "YYYY-MM-DD HH:mm:ss";
1027
+ break;
1028
+ case "timestamp":
1029
+ format = "YYYY-MM-DD HH:mm:ss SSS";
1030
+ break;
1031
+ case "time-HH":
1032
+ case "timerange-HH":
1033
+ case "timerange-HH-unorder":
1034
+ format = "HH";
1035
+ break;
1036
+ case "time-mm":
1037
+ case "timerange-mm":
1038
+ case "timerange-mm-unorder":
1039
+ format = "HH:mm";
1040
+ break;
1041
+ case "time":
1042
+ case "timerange":
1043
+ case "timerange-unorder":
1044
+ format = "HH:mm:ss";
1045
+ break;
1046
+ }
1047
+
1048
+ return format;
1049
+ },
1050
+ getDateTimeFormat(itemType) {
1051
+ let format = "";
1052
+ switch (itemType) {
1053
+ case "time-HH":
1054
+ case "timerange-HH":
1055
+ case "datetime-HH":
1056
+ case "datetimerange-HH":
1057
+ return "HH";
1058
+ case "time-mm":
1059
+ case "timerange-mm":
1060
+ case "datetime-mm":
1061
+ case "datetimerange-mm":
1062
+ return "HH:mm";
1063
+ case "timestamp":
1064
+ case "time":
1065
+ case "timerange":
1066
+ case "datetime":
1067
+ case "datetimerange":
1068
+ return "HH:mm:ss";
1069
+ default:
1070
+ return "";
1071
+ }
1072
+
1073
+ return format;
1074
+ },
1075
+ // getSelectOptions(data: EnumItem[]) {
1076
+ //
1077
+ // if (!data) {
1078
+ // return [];
1079
+ // }
1080
+ // const options = []
1081
+ // data.map((item) => {
1082
+ // options.push(<Option value={item.value} key={item.title}>{item.title}</Option>)
1083
+ // return false
1084
+ // })
1085
+ // return options
1086
+ // },
1087
+ // getSelectListOfStrList(data) {
1088
+ //
1089
+ // if (!data) {
1090
+ // return [];
1091
+ // }
1092
+ // const options = []
1093
+ // data.map((item) => {
1094
+ // options.push(<Option value={item} key={item}>{item}</Option>)
1095
+ // return false
1096
+ // })
1097
+ // return options
1098
+ // },
1099
+ // getSelectOptionsOfMstrucId(mstrucId: string) {
1100
+ // return this.getSelectOptions(HCDataSource.getEnums(mstrucId));
1101
+ // },
1102
+ concatValue(value1, vaule2) {
1103
+ let newValue = undefined;
1104
+ if (value1) {
1105
+ newValue = value1 + "~";
1106
+ } else {
1107
+ newValue = "~";
1108
+ }
1109
+
1110
+ if (vaule2) {
1111
+ newValue = newValue + vaule2;
1112
+ }
1113
+ return newValue;
1114
+ },
1115
+ splitValue(value) {
1116
+ let valueBegin, valueEnd;
1117
+ if (value) {
1118
+ if (value.toString().indexOf("~") >= 0) {
1119
+ let splitValue: string[] = value.split("~");
1120
+ valueBegin = splitValue[0] ? splitValue[0] : undefined;
1121
+ valueEnd = splitValue[1] ? splitValue[1] : undefined;
1122
+ } else {
1123
+ valueBegin = value;
1124
+ }
1125
+ }
1126
+
1127
+ return { valueBegin, valueEnd };
1128
+ },
1129
+ str2UTF8(str) {
1130
+ var bytes = new Array();
1131
+ var len, c;
1132
+ len = str.length;
1133
+ for (var i = 0; i < len; i++) {
1134
+ c = str.charCodeAt(i);
1135
+ if (c >= 0x010000 && c <= 0x10ffff) {
1136
+ bytes.push(((c >> 18) & 0x07) | 0xf0);
1137
+ bytes.push(((c >> 12) & 0x3f) | 0x80);
1138
+ bytes.push(((c >> 6) & 0x3f) | 0x80);
1139
+ bytes.push((c & 0x3f) | 0x80);
1140
+ } else if (c >= 0x000800 && c <= 0x00ffff) {
1141
+ bytes.push(((c >> 12) & 0x0f) | 0xe0);
1142
+ bytes.push(((c >> 6) & 0x3f) | 0x80);
1143
+ bytes.push((c & 0x3f) | 0x80);
1144
+ } else if (c >= 0x000080 && c <= 0x0007ff) {
1145
+ bytes.push(((c >> 6) & 0x1f) | 0xc0);
1146
+ bytes.push((c & 0x3f) | 0x80);
1147
+ } else {
1148
+ bytes.push(c & 0xff);
1149
+ }
1150
+ }
1151
+ return bytes;
1152
+ },
1153
+ joinPath(path1, path2) {
1154
+ let path = path1;
1155
+ if (!path.endsWith("/") && !path.endsWith("\\")) {
1156
+ path = path + "/";
1157
+ }
1158
+ if (path2) {
1159
+ if (path2.startsWith("/") || path.startsWith("\\")) {
1160
+ path = path + path2.slice(1);
1161
+ } else {
1162
+ path = path + path2;
1163
+ }
1164
+ }
1165
+ return path;
1166
+ },
1167
+ // getRouteProgramCode(pathProps){
1168
+ // if (pathProps && pathProps.match && pathProps.match.params) {
1169
+ // const {programCode} = pathProps.match.params;
1170
+ // return programCode;
1171
+ // }
1172
+ // },
1173
+ setProgramCode4RoutePath(pathParams) {
1174
+ const { programCode, applicationCode } = pathParams;
1175
+ this.setProgramCode(programCode);
1176
+ this.setApplicationCode(applicationCode);
1177
+ },
1178
+ setSessionProgramCode4RoutePath(pathParams) {
1179
+ const { programCode, applicationCode } = pathParams;
1180
+ this.setSessionProgramCode(programCode);
1181
+ this.setSessionApplicationCode(applicationCode);
1182
+ },
1183
+ getReactKey() {
1184
+ return new Date().getTime().toString();
1185
+ },
1186
+ async getUserInfo(programCode?: string, token?: string, applicationCode?: string) {
1187
+ if (currentUser?.name) {
1188
+ return currentUser;
1189
+ }
1190
+ let user = await HcserviceV3.getUser(programCode, token, applicationCode);
1191
+ if (user?.orgGtmplSourceId && !["null"].includes(user.orgGtmplSourceId)) {
1192
+ const { ltmplConfig } = await HcserviceV3.requestLtmplConfig(null, user.orgGtmplSourceId) || {};
1193
+ const { entities } = await HcserviceV3.requestLtmplQueryTop(null, user.orgGtmplSourceId, { top: 1 }) || {};
1194
+ const primaryColumnId = ltmplConfig?.extDisplayConfig?.primaryColumn?.id; // 首字段
1195
+ const mainPictureId = ltmplConfig?.extDisplayConfig?.mainPicture?.id; // 主图字段
1196
+ const orgName = entities?.[0]?.fieldMap?.[primaryColumnId];
1197
+ const homeImg = entities?.[0]?.fieldMap?.[mainPictureId];
1198
+ user = { ...user, orgName, homeImg }
1199
+ }
1200
+ currentUser = user;
1201
+ return currentUser;
1202
+ },
1203
+ getCurrentUserInfo() {
1204
+ return currentUser;
1205
+ },
1206
+ // 低代码拖拽页面-自定义组件
1207
+ setCustomComponent(key_: string, name: object) {
1208
+ let key = key_;
1209
+ if (!key) {
1210
+ return;
1211
+ }
1212
+ CUSTOM_COMPONENT_MAP[key] = name;
1213
+ },
1214
+ getCustomComponent(key: string) {
1215
+ if (!key) {
1216
+ return null;
1217
+ }
1218
+ return CUSTOM_COMPONENT_MAP[key];
1219
+ },
1220
+ getAllThemes() { // 主题风格-路径配置
1221
+ const themes = {
1222
+ v2: { path: "v2", loginPath: "login2" },
1223
+ v3: { path: "v3", loginPath: "login3" },
1224
+ v4: { path: "v4", loginPath: "login4" },
1225
+ v5: { path: "v5", loginPath: "login2" },
1226
+ };
1227
+ return themes;
1228
+ },
1229
+ toDefaultTheme(defTheme?: string) {
1230
+ const temTheme = defTheme || ProgramConfig.getDefaultTheme();
1231
+ let hash = window.location.hash;
1232
+ if (regexTheme.test(hash)) {
1233
+ hash = hash.replace(regexTheme, `${temTheme}/home`);
1234
+ window.location.hash = hash;
1235
+ } else {
1236
+ const localVersion = localStorage.getItem("version");
1237
+ if (!localVersion) {
1238
+ window.location.hash = `#/${temTheme}/home`;
1239
+ }
1240
+ }
1241
+ },
1242
+ async getThemeConfig(serverKey?: string) {
1243
+ if (themeConfig) {
1244
+ return themeConfig;
1245
+ }
1246
+ const programCode = this.programCode();
1247
+ const applicationCode = this.applicationCode();
1248
+ const server = this.api(serverKey);
1249
+ const { themeConfig: temConfig } = await HcserviceV3.getThemeConfig(serverKey, programCode) || {};
1250
+ const loginMainPicture = temConfig?.loginMainPicture ? this.joinPath(server, `/v3/theme-files/${temConfig?.loginMainPicture}?@programToken=${programCode}&@applicationToken=${applicationCode}`) : null;
1251
+ const programIcon = temConfig?.programIcon ? this.joinPath(server, `/v3/theme-files/${temConfig?.programIcon}?@programToken=${programCode}&@applicationToken=${applicationCode}`) : null;
1252
+ themeConfig = { ...temConfig, loginMainPicture, programIcon };
1253
+ return themeConfig;
1254
+ },
1255
+ getThemeConfigInfo() {
1256
+ return themeConfig;
1257
+ },
1258
+ coverUserPageConfig(setting: { [key: string]: any }) { // 页面配置覆盖
1259
+ const currentUser = this.getCurrentUserInfo();
1260
+ if (!setting || !currentUser) return;
1261
+ const programCode = this.programCode();
1262
+ const applicationCode = this.applicationCode();
1263
+ const localKey = `${currentUser.id}-${programCode}${applicationCode ? `-${applicationCode}` : ""}-userPageConfig`;
1264
+ localStorage.setItem(localKey, JSON.stringify(setting));
1265
+ },
1266
+ setUserPageConfig(key: string, setting: { [key: string]: any }) { // 页面配置(视图、列、分页等)存本地
1267
+ const currentUser = this.getCurrentUserInfo();
1268
+ if (!key || !setting || !currentUser) return;
1269
+ const programCode = this.programCode();
1270
+ const applicationCode = this.applicationCode();
1271
+ const localKey = `${currentUser.id}-${programCode}${applicationCode ? `-${applicationCode}` : ""}-userPageConfig`;
1272
+ const userPageConfig = localStorage.getItem(localKey) || "{}";
1273
+ let config = {};
1274
+ try {
1275
+ config = JSON.parse(userPageConfig);
1276
+ } catch {
1277
+ config = {};
1278
+ }
1279
+ config[key] = { ...(config[key] || {}), ...setting };
1280
+ localStorage.setItem(localKey, JSON.stringify(config));
1281
+ return config[key];
1282
+ },
1283
+ async getUserPageConfig(key: string) { // 获取当前页面配置本地缓存
1284
+ const currentUser = await this.getUserInfo();
1285
+ if (!key || !currentUser) return;
1286
+ const programCode = this.programCode();
1287
+ const applicationCode = this.applicationCode();
1288
+ const localKey = `${currentUser.id}-${programCode}${applicationCode ? `-${applicationCode}` : ""}-userPageConfig`;
1289
+ const userPageConfig = localStorage.getItem(localKey) || "{}";
1290
+ try {
1291
+ const config = JSON.parse(userPageConfig);
1292
+ return config[key];
1293
+ } catch {
1294
+ return;
1295
+ }
1296
+ },
1297
+ resetUserPageConfig(key: string) { // 重置当前页面配置本地缓存
1298
+ const currentUser = this.getCurrentUserInfo();
1299
+ if (!key || !currentUser) return;
1300
+ const programCode = this.programCode();
1301
+ const applicationCode = this.applicationCode();
1302
+ const localKey = `${currentUser.id}-${programCode}${applicationCode ? `-${applicationCode}` : ""}-userPageConfig`;
1303
+ const userPageConfig = localStorage.getItem(localKey) || "{}";
1304
+ try {
1305
+ const config = JSON.parse(userPageConfig);
1306
+ config[key] = undefined;
1307
+ localStorage.setItem(localKey, JSON.stringify(config));
1308
+ } catch {
1309
+ return;
1310
+ }
1311
+ },
1312
+ async getPageConfigCommon(menuCode: string, type?: "default" | "refresh") {
1313
+ // type == refresh 请求新数据,不使用缓存
1314
+ if ((!type || type === "default") && pageConfigCommons[menuCode]) {
1315
+ return pageConfigCommons[menuCode];
1316
+ }
1317
+ const configs = await HcserviceV3.getPageConfigCommon(menuCode);
1318
+ pageConfigCommons[menuCode] = configs;
1319
+ return configs;
1320
+ },
1321
+ async getPageConfigDefault() { // 拉取用户默认配置
1322
+ const configs = await HcserviceV3.getPageConfigDefault();
1323
+ const defUserPageConfig = configs.reduce((total, cur) => {
1324
+ total[cur.menuCode] = cur.content ? JSON.parse(cur.content) : undefined;
1325
+ return total;
1326
+ }, {});
1327
+ this.coverUserPageConfig(defUserPageConfig); // 覆盖本地缓存
1328
+ return configs;
1329
+ },
1330
+ findItemByIdIterative(tree: any[], value: string | number, key = "id") { // 查找树级数组中的指定项
1331
+ if (!tree?.length) {
1332
+ return undefined;
1333
+ }
1334
+ // 使用一个栈来存储待遍历的节点
1335
+ const stack = [...tree];
1336
+ while (stack.length > 0) {
1337
+ const node = stack.pop();
1338
+ if (node[key] === value) {
1339
+ return node;
1340
+ }
1341
+ if (node.children && node.children.length > 0) {
1342
+ stack.push(...node.children);
1343
+ }
1344
+ }
1345
+ return undefined;
1346
+ },
1347
+ async get2DComponent(groups: string[]) { // 获取2D组件数据
1348
+ const temGroups = groups.filter(r => !components2DMap[r]);
1349
+ if (!temGroups?.length) {
1350
+ return components2DMap;
1351
+ }
1352
+ const res = await HcserviceV3.get2DComponent(temGroups);
1353
+ const temObj = Object.keys(res).reduce((total, next) => {
1354
+ total[next] = res[next] || [];
1355
+ return total;
1356
+ }, {});
1357
+ components2DMap = { ...components2DMap, ...temObj };
1358
+ return components2DMap;
1359
+ },
1360
+ get2DComponentByType(type: string) { // 获取指定类型组件
1361
+ if (!type) {
1362
+ return;
1363
+ }
1364
+ const item = Object.values(components2DMap).flat(Infinity).find((r: any) => r.type === type);
1365
+ return item;
1366
+ }
1367
+ };