vue2-client 1.12.44 → 1.12.45

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 (383) hide show
  1. package/.cursorrules +19 -19
  2. package/.env +19 -19
  3. package/.env.gaslink +19 -19
  4. package/.env.his +19 -19
  5. package/.env.iot +19 -19
  6. package/.env.liuli +19 -19
  7. package/.env.revenue +19 -19
  8. package/.env.scada +19 -19
  9. package/.eslintrc.js +90 -90
  10. package/CHANGELOG.md +824 -824
  11. package/Components.md +60 -60
  12. package/docs/Logic/345/207/275/346/225/260/344/275/277/347/224/250/347/233/270/345/205/263.md +45 -45
  13. package/docs/LowCode/lowcode.md +155 -155
  14. package/docs/LowCode/lowcodeForDeveloper.md +230 -230
  15. package/docs/index.md +30 -30
  16. package/index.js +31 -31
  17. package/jest-transform-stub.js +8 -8
  18. package/jest.setup.js +7 -7
  19. package/jsconfig.json +19 -19
  20. package/package.json +1 -1
  21. package/public/his/editor/editor.html +51 -51
  22. package/public/his/editor/mock/bind_data.html +779 -779
  23. package/public/his/editor/mock/data_table.html +40 -40
  24. package/public/his/editor/mock/sign.html +75 -75
  25. package/public/his/editor/vender/JsBarcode.all.js +3669 -3669
  26. package/public/his/editor/vender/date97/My97DatePicker.htm +65 -65
  27. package/public/his/editor/vender/date97/WdatePicker.js +677 -677
  28. package/public/his/editor/vender/date97/calendar.js +4 -4
  29. package/public/his/editor/vender/date97/lang/en.js +13 -13
  30. package/public/his/editor/vender/date97/lang/zh-cn.js +13 -13
  31. package/public/his/editor/vender/date97/lang/zh-tw.js +13 -13
  32. package/public/his/editor/vender/date97/skin/WdatePicker.css +10 -10
  33. package/public/his/editor/vender/date97/skin/default/datepicker.css +328 -328
  34. package/public/his/editor/vender/date97/skin/ext/datepicker.css +308 -308
  35. package/public/his/editor/vender/date97/skin/whyGreen/datepicker.css +255 -255
  36. package/public/his/editor/vender/diff.js +1627 -1627
  37. package/public/his/editor/vender/editor.js +1 -1
  38. package/public/his/editor/vender/fabric.js +31187 -31187
  39. package/public/his/editor/vender/jquery/jquery.base64.js +190 -190
  40. package/public/his/editor/vender/jquery/jquery.js +10872 -10872
  41. package/public/his/editor/vender/jquery/jquery.print.js +255 -255
  42. package/public/his/editor/vender/jquery/zTreeStyle/zTreeStyle.css +96 -96
  43. package/public/his/editor/vender/mui/mui.min.css +4 -4
  44. package/public/his/editor/vender/mui/mui.min.js +5 -5
  45. package/public/his/editor/vender/mui/mui.picker.min.css +6 -6
  46. package/public/his/editor/vender/mui/mui.picker.min.js +6 -6
  47. package/public/his/editor/vender/qrcode.js +7 -7
  48. package/public/his/editor/vender/requirejs/require.js +2145 -2145
  49. package/public/his/editor/vender/signature/jSignature.CompressorSVG.js +518 -518
  50. package/public/his/editor/vender/signature/jSignature.UndoButton.js +164 -164
  51. package/public/his/editor/vender/signature/jSignature.js +1486 -1486
  52. package/public/his/editor/vender/validator.js +5094 -5094
  53. package/public/his/editor/vender/weui/weui.css +5659 -5659
  54. package/public/his/editor/vender/weui/weui.min.css +4 -4
  55. package/public/his/editor/vender/weui/weui.min.js +11 -11
  56. package/public/index.html +27 -27
  57. package/src/ReportView.js +19 -19
  58. package/src/assets/img/querySlotDemo.svg +15 -15
  59. package/src/assets/svg/badtwo.svg +1 -1
  60. package/src/assets/svg/goodtwo.svg +1 -1
  61. package/src/base-client/components/AI/AskAiBtn.vue +136 -136
  62. package/src/base-client/components/AI/demo.vue +31 -31
  63. package/src/base-client/components/common/AMisRender/index.js +3 -3
  64. package/src/base-client/components/common/AMisRender/index.vue +263 -263
  65. package/src/base-client/components/common/AddressSearchCombobox/AddressSearchCombobox.vue +470 -470
  66. package/src/base-client/components/common/AddressSearchCombobox/IcMapIcon.vue +16 -16
  67. package/src/base-client/components/common/AddressSearchCombobox/demo.vue +36 -36
  68. package/src/base-client/components/common/AddressSearchCombobox/ic_map.svg +6 -6
  69. package/src/base-client/components/common/AmapMarker/AmapPointRendering.vue +120 -120
  70. package/src/base-client/components/common/CitySelect/index.js +3 -3
  71. package/src/base-client/components/common/CitySelect/index.md +109 -109
  72. package/src/base-client/components/common/CreateQuery/CreateQuery.vue +669 -669
  73. package/src/base-client/components/common/CreateQuery/CreateQueryItem.vue +1014 -1014
  74. package/src/base-client/components/common/CreateQuery/index.js +3 -3
  75. package/src/base-client/components/common/CreateQuery/index.md +42 -42
  76. package/src/base-client/components/common/CreateSimpleFormQuery/CreateSimpleFormQuery.vue +452 -452
  77. package/src/base-client/components/common/CreateSimpleFormQuery/CreateSimpleFormQueryItem.vue +511 -511
  78. package/src/base-client/components/common/CreateSimpleFormQuery/index.js +3 -3
  79. package/src/base-client/components/common/CreateSimpleFormQuery/index.md +42 -42
  80. package/src/base-client/components/common/FormGroupEdit/FormGroupEdit.vue +149 -149
  81. package/src/base-client/components/common/FormGroupEdit/index.js +3 -3
  82. package/src/base-client/components/common/FormGroupEdit/index.md +43 -43
  83. package/src/base-client/components/common/FormGroupQuery/FormGroupQuery.vue +166 -166
  84. package/src/base-client/components/common/FormGroupQuery/index.js +3 -3
  85. package/src/base-client/components/common/FormGroupQuery/index.md +43 -43
  86. package/src/base-client/components/common/JSONToTree/jsontotree.vue +271 -271
  87. package/src/base-client/components/common/LowCodeComponent/LowCodeEditorModal.vue +108 -108
  88. package/src/base-client/components/common/LowCodeComponent/LowCodeEditorPanel.vue +413 -413
  89. package/src/base-client/components/common/LowCodeComponent/LowCodePageOrganization.vue +502 -502
  90. package/src/base-client/components/common/LowCodeComponent/LowCodeRender.vue +728 -728
  91. package/src/base-client/components/common/LowCodeComponent/LowCodeRenderEnter.vue +29 -29
  92. package/src/base-client/components/common/LowCodeComponent/LowCodeUIStore.vue +219 -219
  93. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeAddPageModal.vue +117 -117
  94. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeCustomJSModal.vue +80 -80
  95. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeEventEditorModal.vue +398 -398
  96. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeLifeCycleModal.vue +65 -65
  97. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeLogicCallbackModal.vue +64 -64
  98. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeLogicParamModal.vue +73 -73
  99. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeRunFunctionParamModal.vue +76 -76
  100. package/src/base-client/components/common/PersonSetting/PersonSetting.vue +208 -208
  101. package/src/base-client/components/common/PersonSetting/index.js +3 -3
  102. package/src/base-client/components/common/Recording/Recording.vue +243 -243
  103. package/src/base-client/components/common/Recording/index.js +3 -3
  104. package/src/base-client/components/common/Tree/Tree.vue +149 -149
  105. package/src/base-client/components/common/Tree/index.js +2 -2
  106. package/src/base-client/components/common/Upload/index.js +3 -3
  107. package/src/base-client/components/common/XAddForm/XAddForm.vue +113 -113
  108. package/src/base-client/components/common/XAddNativeForm/XAddNativeForm.vue +1146 -1146
  109. package/src/base-client/components/common/XAddNativeForm/index.md +146 -146
  110. package/src/base-client/components/common/XAddNativeFormOA/XAddNativeFormOA.vue +303 -303
  111. package/src/base-client/components/common/XAddNativeFormOA/index.js +3 -3
  112. package/src/base-client/components/common/XAddNativeFormOA/index.md +146 -146
  113. package/src/base-client/components/common/XAddReport/index.js +3 -3
  114. package/src/base-client/components/common/XAddReport/index.md +56 -56
  115. package/src/base-client/components/common/XBadge/XBadge.vue +94 -94
  116. package/src/base-client/components/common/XButtons/XButtonDemo.vue +28 -28
  117. package/src/base-client/components/common/XButtons/XButtons.vue +71 -71
  118. package/src/base-client/components/common/XButtons/index.js +3 -3
  119. package/src/base-client/components/common/XButtons/index.md +61 -61
  120. package/src/base-client/components/common/XCard/XCard.vue +64 -64
  121. package/src/base-client/components/common/XCheckList/XCheckList.vue +106 -106
  122. package/src/base-client/components/common/XCheckList/XCheckListDemo.vue +41 -41
  123. package/src/base-client/components/common/XCollapse/XCollapse.vue +154 -154
  124. package/src/base-client/components/common/XDataCard/index.js +3 -3
  125. package/src/base-client/components/common/XDataCard/index.md +1 -1
  126. package/src/base-client/components/common/XDataDrawer/XDataDrawer.vue +180 -180
  127. package/src/base-client/components/common/XDataDrawer/index.js +3 -3
  128. package/src/base-client/components/common/XDataDrawer/index.md +41 -41
  129. package/src/base-client/components/common/XDatePicker/demo.vue +153 -153
  130. package/src/base-client/components/common/XDatePicker/index.vue +269 -269
  131. package/src/base-client/components/common/XDescriptions/XDescriptions.vue +169 -169
  132. package/src/base-client/components/common/XDescriptions/index.js +3 -3
  133. package/src/base-client/components/common/XDescriptions/index.md +83 -83
  134. package/src/base-client/components/common/XDetailsView/XDetailsView.vue +238 -238
  135. package/src/base-client/components/common/XDetailsView/index.js +3 -3
  136. package/src/base-client/components/common/XForm/XStatusButton.vue +54 -54
  137. package/src/base-client/components/common/XForm/index.md +178 -178
  138. package/src/base-client/components/common/XForm/itemComponent/XClickChangeBtn/index.vue +49 -49
  139. package/src/base-client/components/common/XFormGroup/index.js +3 -3
  140. package/src/base-client/components/common/XFormGroup/index.md +38 -38
  141. package/src/base-client/components/common/XFormGroupDetails/XFormGroupDetails.vue +72 -72
  142. package/src/base-client/components/common/XFormGroupDetails/index.js +3 -3
  143. package/src/base-client/components/common/XFormTable/demo.vue +1 -1
  144. package/src/base-client/components/common/XFormTable/index.md +92 -92
  145. package/src/base-client/components/common/XImportExcel/XImportExcel.vue +167 -167
  146. package/src/base-client/components/common/XLabelSelect/XLabelSelect.vue +110 -110
  147. package/src/base-client/components/common/XLabelSelect/XLabelSelectDemo.vue +35 -35
  148. package/src/base-client/components/common/XLicensePlate/XLicensePlate.vue +193 -193
  149. package/src/base-client/components/common/XLicensePlate/XLicensePlateDemo.vue +48 -48
  150. package/src/base-client/components/common/XPrint/OpenInvoice.vue +21 -21
  151. package/src/base-client/components/common/XPrint/PrintBill.vue +302 -302
  152. package/src/base-client/components/common/XPrint/PrintHtml.js +98 -98
  153. package/src/base-client/components/common/XPrint/css/hiPrintCss.js +359 -359
  154. package/src/base-client/components/common/XPrint/css/lodopCss.js +26 -26
  155. package/src/base-client/components/common/XPrint/css/print-lock.css +351 -351
  156. package/src/base-client/components/common/XPrint/index.vue +97 -97
  157. package/src/base-client/components/common/XReport/XReport.vue +892 -892
  158. package/src/base-client/components/common/XReport/XReportDesign.vue +463 -463
  159. package/src/base-client/components/common/XReport/XReportJsonRender.vue +381 -381
  160. package/src/base-client/components/common/XReport/index.js +3 -3
  161. package/src/base-client/components/common/XReport/index.md +44 -44
  162. package/src/base-client/components/common/XReport/print.js +186 -186
  163. package/src/base-client/components/common/XReportDrawer/index.js +3 -3
  164. package/src/base-client/components/common/XReportGrid/index.js +3 -3
  165. package/src/base-client/components/common/XReportGrid/index.md +44 -44
  166. package/src/base-client/components/common/XReportSlot/XReportSlot.vue +110 -110
  167. package/src/base-client/components/common/XReportSlot/index.js +3 -3
  168. package/src/base-client/components/common/XReportSlot/index.md +48 -48
  169. package/src/base-client/components/common/XSimpleDescriptions/XSimpleDescriptions.vue +166 -166
  170. package/src/base-client/components/common/XSimpleDescriptions/index.js +3 -3
  171. package/src/base-client/components/common/XSimpleDescriptions/index.md +7 -7
  172. package/src/base-client/components/common/XStepView/XStepView.vue +252 -252
  173. package/src/base-client/components/common/XStepView/index.js +3 -3
  174. package/src/base-client/components/common/XStepView/index.md +31 -31
  175. package/src/base-client/components/common/XTab/XTabDemo.vue +22 -22
  176. package/src/base-client/components/common/XTab/index.js +3 -3
  177. package/src/base-client/components/common/XTable/CustomFuncCel.vue +51 -51
  178. package/src/base-client/components/common/XTable/TableCellRenderer.vue +161 -161
  179. package/src/base-client/components/common/XTable/XTableWrapper.vue +12 -2
  180. package/src/base-client/components/common/XTable/index.md +255 -255
  181. package/src/base-client/components/common/XTagGroup/index.vue +52 -52
  182. package/src/base-client/components/common/XTree/XTree.vue +424 -424
  183. package/src/base-client/components/common/XTree/index.js +3 -3
  184. package/src/base-client/components/common/XTree/index.md +36 -36
  185. package/src/base-client/components/common/XTreeOne/XTreeOne.vue +113 -113
  186. package/src/base-client/components/common/XTreeOne/XTreeOnePro.vue +128 -128
  187. package/src/base-client/components/common/richTextModal/index.vue +56 -56
  188. package/src/base-client/components/common/richTextModal/richDemo.vue +48 -48
  189. package/src/base-client/components/his/XHisEditor/index.js +3 -3
  190. package/src/base-client/components/index.js +51 -51
  191. package/src/base-client/components/layout/XPageView/XErrorView.vue +11 -11
  192. package/src/base-client/components/layout/XPageView/XPageView.vue +155 -155
  193. package/src/base-client/components/layout/XPageView/index.js +3 -3
  194. package/src/base-client/components/layout/XPageView/index.md +38 -38
  195. package/src/base-client/components/layout/XTreeView/XTreeView.vue +130 -130
  196. package/src/base-client/components/layout/XTreeView/index.js +3 -3
  197. package/src/base-client/components/layout/XTreeView/index.md +46 -46
  198. package/src/base-client/components/system/DictionaryDetailsView/DictionaryDetailsView.vue +232 -232
  199. package/src/base-client/components/system/QueryParamsDetailsView/QueryParamsDetailsView.vue +281 -281
  200. package/src/base-client/plugins/AppData.js +121 -121
  201. package/src/base-client/plugins/Config.js +19 -19
  202. package/src/base-client/plugins/GetLoginInfoService.js +183 -183
  203. package/src/base-client/plugins/Recording.js +258 -258
  204. package/src/base-client/plugins/index.js +23 -23
  205. package/src/base-client/plugins/tabs-page-plugin.js +39 -39
  206. package/src/bootstrap.js +42 -42
  207. package/src/components/Charts/Bar.vue +62 -62
  208. package/src/components/Charts/ChartCard.vue +134 -134
  209. package/src/components/Charts/Liquid.vue +67 -67
  210. package/src/components/Charts/MiniArea.vue +39 -39
  211. package/src/components/Charts/MiniBar.vue +39 -39
  212. package/src/components/Charts/MiniProgress.vue +75 -75
  213. package/src/components/Charts/MiniSmoothArea.vue +40 -40
  214. package/src/components/Charts/Radar.vue +68 -68
  215. package/src/components/Charts/RankList.vue +77 -77
  216. package/src/components/Charts/TagCloud.vue +113 -113
  217. package/src/components/Charts/TransferBar.vue +64 -64
  218. package/src/components/Charts/Trend.vue +82 -82
  219. package/src/components/Charts/chart.less +12 -12
  220. package/src/components/Charts/smooth.area.less +13 -13
  221. package/src/components/CodeMirror/inedx.vue +118 -118
  222. package/src/components/CodeMirror/setting.js +40 -40
  223. package/src/components/FilePreview/FilePreview.vue +166 -166
  224. package/src/components/HeightScanner/index.vue +571 -571
  225. package/src/components/NumberInfo/NumberInfo.vue +54 -54
  226. package/src/components/NumberInfo/index.js +3 -3
  227. package/src/components/NumberInfo/index.less +54 -54
  228. package/src/components/NumberInfo/index.md +43 -43
  229. package/src/components/STable/index.js +435 -426
  230. package/src/components/card/ChartCard.vue +79 -79
  231. package/src/components/chart/Bar.vue +60 -60
  232. package/src/components/chart/MiniArea.vue +67 -67
  233. package/src/components/chart/MiniBar.vue +59 -59
  234. package/src/components/chart/MiniProgress.vue +57 -57
  235. package/src/components/chart/Radar.vue +80 -80
  236. package/src/components/chart/RankingList.vue +60 -60
  237. package/src/components/chart/Trend.vue +79 -79
  238. package/src/components/chart/index.less +9 -9
  239. package/src/components/checkbox/ColorCheckbox.vue +157 -157
  240. package/src/components/checkbox/ImgCheckbox.vue +117 -117
  241. package/src/components/checkbox/ImgCheckboxGroup.vue +76 -76
  242. package/src/components/checkbox/index.js +9 -9
  243. package/src/components/exception/ExceptionPage.vue +70 -70
  244. package/src/components/g2Charts/constants.js +202 -202
  245. package/src/components/g2Charts/demo.vue +808 -808
  246. package/src/components/g2Charts/designer.vue +228 -228
  247. package/src/components/g2Charts/designerBaseConfig.vue +61 -61
  248. package/src/components/g2Charts/designerDataConfig.vue +259 -259
  249. package/src/components/g2Charts/designerStyleConfig.vue +16 -16
  250. package/src/components/g2Charts/index.vue +397 -397
  251. package/src/components/index.js +36 -36
  252. package/src/components/input/IInput.vue +66 -66
  253. package/src/components/menu/SideMenu.vue +75 -75
  254. package/src/components/menu/menu.js +273 -273
  255. package/src/components/setting/Setting.vue +234 -234
  256. package/src/components/tool/AStepItem.vue +60 -60
  257. package/src/config/CreateQueryConfig.js +325 -325
  258. package/src/config/default/antd.config.js +89 -89
  259. package/src/config/default/setting.config.js +55 -55
  260. package/src/font-style/font.css +4 -4
  261. package/src/layouts/CommonLayout.vue +56 -56
  262. package/src/layouts/PageLayout.vue +151 -151
  263. package/src/layouts/SinglePageView.vue +136 -136
  264. package/src/layouts/header/AdminHeader.vue +132 -132
  265. package/src/layouts/header/HeaderNotice.vue +177 -177
  266. package/src/layouts/header/InstitutionDetail.vue +181 -181
  267. package/src/layouts/tabs/TabsHead.vue +189 -189
  268. package/src/layouts/tabs/TabsView.vue +389 -389
  269. package/src/lib.js +1 -1
  270. package/src/main.js +34 -34
  271. package/src/mock/extend/index.js +84 -84
  272. package/src/mock/goods/index.js +108 -108
  273. package/src/pages/AMisDemo/AMisDemo.vue +325 -325
  274. package/src/pages/AMisDemo/AMisDemo2.vue +74 -74
  275. package/src/pages/DefaultExample/index.vue +77 -77
  276. package/src/pages/DynamicStatistics/ChartSelector.vue +331 -331
  277. package/src/pages/DynamicStatistics/DataTabs.vue +83 -83
  278. package/src/pages/DynamicStatistics/DynamicTable.vue +128 -128
  279. package/src/pages/DynamicStatistics/EvaluationArea.vue +69 -69
  280. package/src/pages/DynamicStatistics/FavoriteList.vue +50 -50
  281. package/src/pages/DynamicStatistics/QuestionHistoryAndFavorites.vue +591 -591
  282. package/src/pages/DynamicStatistics/SearchBar.vue +192 -192
  283. package/src/pages/DynamicStatistics/index.vue +282 -282
  284. package/src/pages/Example/childIndex.vue +15 -15
  285. package/src/pages/Example/index.vue +30 -30
  286. package/src/pages/NewDynamicStatistics/ChartSelector.vue +331 -331
  287. package/src/pages/NewDynamicStatistics/DataTabs.vue +122 -122
  288. package/src/pages/NewDynamicStatistics/DynamicTable.vue +128 -128
  289. package/src/pages/NewDynamicStatistics/EvaluationArea.vue +69 -69
  290. package/src/pages/NewDynamicStatistics/FavoriteList.vue +50 -50
  291. package/src/pages/NewDynamicStatistics/QuestionHistoryAndFavorites.vue +289 -289
  292. package/src/pages/NewDynamicStatistics/SearchBar.vue +193 -193
  293. package/src/pages/NewDynamicStatistics/index.vue +258 -258
  294. package/src/pages/Recording/index.vue +77 -77
  295. package/src/pages/ServiceReview/index.vue +284 -284
  296. package/src/pages/SubExample/index.vue +26 -26
  297. package/src/pages/WorkflowDetail/WorkflowDetail.vue +235 -235
  298. package/src/pages/WorkflowDetail/WorkflowPageDetail/LeaveMessage.vue +131 -131
  299. package/src/pages/WorkflowDetail/WorkflowPageDetail/TrimTextTail.vue +23 -23
  300. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkFlowBaseInformation.vue +302 -302
  301. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkFlowBaseInformationDetails.vue +276 -276
  302. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkFlowHandleReso.vue +997 -997
  303. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkFlowTimeline.vue +222 -222
  304. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkOrderParentDetails.vue +233 -233
  305. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkflowDetailResso.vue +261 -261
  306. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkflowListResolution.vue +248 -248
  307. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkflowLog.vue +73 -73
  308. package/src/pages/XPageViewExample/index.vue +38 -38
  309. package/src/pages/XReportView/index.vue +64 -64
  310. package/src/pages/XTreeOneProExample/index.vue +67 -67
  311. package/src/pages/dashboard/workplace/WorkPlace.vue +141 -141
  312. package/src/pages/login/Login.vue +378 -378
  313. package/src/pages/login/LoginV3.vue +389 -389
  314. package/src/pages/lowCode/lowCodeEditor.vue +1219 -1219
  315. package/src/pages/lowCode/lowCodeRenderPage.vue +43 -43
  316. package/src/pages/report/ReportTable.js +124 -124
  317. package/src/pages/resourceManage/orgListManage.vue +98 -98
  318. package/src/pages/system/dictionary/index.vue +44 -44
  319. package/src/pages/system/monitor/loginInfor/index.vue +37 -37
  320. package/src/pages/system/monitor/operLog/index.vue +37 -37
  321. package/src/pages/system/settings/modifyPassword.vue +117 -117
  322. package/src/pages/system/ticket/index.vue +480 -480
  323. package/src/pages/system/ticket/submitTicketSuccess.vue +484 -484
  324. package/src/pages/userInfoDetailManage/ChangeMeterRecordQuery/index.vue +64 -64
  325. package/src/pages/userInfoDetailManage/FillCardRecordQuery/index.vue +76 -76
  326. package/src/pages/userInfoDetailManage/FillGasRecordQuery/index.vue +74 -74
  327. package/src/pages/userInfoDetailManage/InfoChangeRecordQuery/index.vue +64 -64
  328. package/src/pages/userInfoDetailManage/InstructRecordQuery/index.vue +64 -64
  329. package/src/pages/userInfoDetailManage/MachineRecordQuery/index.vue +74 -74
  330. package/src/pages/userInfoDetailManage/MeterParamRecordQuery/index.vue +64 -64
  331. package/src/pages/userInfoDetailManage/OtherChargeRecordQuery/index.vue +74 -74
  332. package/src/pages/userInfoDetailManage/TransferRecordQuery/index.vue +66 -66
  333. package/src/pages/userInfoDetailManage/UserChargeRecordQuery/index.vue +92 -92
  334. package/src/pages/userInfoDetailManage/UserHandRecordQuery/index.vue +86 -86
  335. package/src/pages/userInfoDetailManage/UserRecordQuery/index.vue +73 -73
  336. package/src/pages/userInfoDetailManage/WatchCollectionRecordQuery/index.vue +64 -64
  337. package/src/pages/userInfoDetailManage/userInfoDetailQueryTabs.vue +132 -132
  338. package/src/plugins/EventLogPlugin.js +33 -33
  339. package/src/plugins/FindParentsData.js +17 -17
  340. package/src/router/async/config.async.js +35 -35
  341. package/src/router/async/router.map.js +117 -118
  342. package/src/router/index.js +27 -27
  343. package/src/router.js +19 -19
  344. package/src/services/DataModel.js +30 -30
  345. package/src/services/LodopFuncs.js +137 -137
  346. package/src/services/api/TicketDetailsViewApi.js +46 -46
  347. package/src/services/api/cas.js +79 -79
  348. package/src/services/api/common.js +346 -346
  349. package/src/services/api/entity.js +18 -18
  350. package/src/services/api/index.js +17 -17
  351. package/src/services/api/restTools.js +145 -145
  352. package/src/services/api/workFlow.js +63 -63
  353. package/src/services/apiService.js +16 -16
  354. package/src/store/modules/account.js +115 -115
  355. package/src/store/modules/index.js +5 -5
  356. package/src/store/modules/lowCode.js +33 -33
  357. package/src/store/modules/setting.js +119 -119
  358. package/src/theme/default/style.less +58 -58
  359. package/src/theme/global.less +159 -159
  360. package/src/utils/authority-utils.js +85 -85
  361. package/src/utils/errorCode.js +6 -6
  362. package/src/utils/formatter.js +74 -74
  363. package/src/utils/htmlToPDF.js +108 -108
  364. package/src/utils/htmlToPDFApi.js +5 -5
  365. package/src/utils/login.js +188 -188
  366. package/src/utils/lowcode/lowcodeComponentMixin.js +120 -120
  367. package/src/utils/lowcode/lowcodeLog.js +29 -29
  368. package/src/utils/lowcode/lowcodeUtils.js +373 -373
  369. package/src/utils/lowcode/registerComponentForEditor.js +1 -1
  370. package/src/utils/lowcode/registerComponentForRender.js +11 -11
  371. package/src/utils/map-utils.js +47 -47
  372. package/src/utils/reg.js +95 -95
  373. package/src/utils/runEvalFunction.js +14 -14
  374. package/src/utils/theme-color-replacer-extend.js +92 -92
  375. package/src/utils/util.js +329 -329
  376. package/src/utils/waterMark.js +31 -31
  377. package/test/Amis.spec.js +164 -164
  378. package/test/Tree.spec.js +168 -168
  379. package/test/myDialog.spec.js +47 -47
  380. package/test/util.test.js +53 -53
  381. package/test/v3Api.test.js +1984 -1984
  382. package//350/277/201/347/247/273/346/227/245/345/277/227.md +15 -15
  383. package/src/base-client/components/common/XCollapse/XCollapseDemo.vue +0 -15
@@ -1 +1 @@
1
- export {}
1
+ export {}
@@ -1,11 +1,11 @@
1
- import XFormTable from '@vue2-client/base-client/components/common/XFormTable/XFormTable.vue'
2
- import XTreeOne from '@vue2-client/base-client/components/common/XTreeOne/XTreeOne.vue'
3
- import XAddNativeForm from '@vue2-client/base-client/components/common/XAddNativeForm/XAddNativeForm.vue'
4
- import XDescriptions from '@vue2-client/base-client/components/common/XDescriptions/XDescriptions.vue'
5
-
6
- export {
7
- XFormTable,
8
- XTreeOne,
9
- XAddNativeForm,
10
- XDescriptions
11
- }
1
+ import XFormTable from '@vue2-client/base-client/components/common/XFormTable/XFormTable.vue'
2
+ import XTreeOne from '@vue2-client/base-client/components/common/XTreeOne/XTreeOne.vue'
3
+ import XAddNativeForm from '@vue2-client/base-client/components/common/XAddNativeForm/XAddNativeForm.vue'
4
+ import XDescriptions from '@vue2-client/base-client/components/common/XDescriptions/XDescriptions.vue'
5
+
6
+ export {
7
+ XFormTable,
8
+ XTreeOne,
9
+ XAddNativeForm,
10
+ XDescriptions
11
+ }
@@ -1,47 +1,47 @@
1
- import AMapLoader from '@amap/amap-jsapi-loader'
2
- let Amap
3
- async function GetGDMap (secretKey, key) {
4
- if (!Amap) {
5
- window._AMapSecurityConfig = {
6
- securityJsCode: secretKey
7
- }
8
- // 解决高德地图加载报错 ---> 禁止多种API加载方式混用
9
- AMapLoader.reset()
10
- Amap = await AMapLoader.load({
11
- key: key, // 申请好的Web端开发者Key,首次调用 load 时必填
12
- version: '2.0', // 指定要加载的 JSAPI 的版本,缺省时默认为 1.4.15
13
- plugins: ['AMap.IndexCluster', 'AMP.MarkerCluster', 'AMap.InfoWindow', 'AMap.HeatMap', 'AMap.HawkEye', 'AMap.DistrictSearch',
14
- 'AMap.ToolBar', 'AMap.Geolocation', 'AMap.MouseTool',
15
- 'AMap.Geocoder', 'AMap.MarkerClusterer', 'AMap.AutoComplete', 'AMap.Scale'], // 需要使用的的插件列表,如比例尺'AMap.Scale'等
16
- AMapUI: {
17
- version: '1.1', // AMapUI 缺省 1.1
18
- plugins: ['misc/PositionPicker'] // 需要加载的 AMapUI ui插件
19
- }
20
- })
21
- }
22
- return Amap
23
- }
24
-
25
- async function getGDMap (address) {
26
- new (await GetGDMap()).Geocoder({
27
- radius: 500 // 范围,默认:500
28
- }).getLocation(address, function (status, result) {
29
- if (status === 'complete' && result.geocodes.length) {
30
- return ({ lng: result.geocodes[0].location.lng, lat: result.geocodes[0].location.lat })
31
- } else {
32
- // eslint-disable-next-line prefer-promise-reject-errors
33
- throw new Error('根据经纬度查询地址失败')
34
- }
35
- })
36
- }
37
-
38
- async function GetLocation (address) {
39
- return new Promise((resolve, reject) => {
40
- try {
41
- resolve(getGDMap(address))
42
- } catch (e) {
43
- reject(e)
44
- }
45
- })
46
- }
47
- export { GetGDMap, GetLocation }
1
+ import AMapLoader from '@amap/amap-jsapi-loader'
2
+ let Amap
3
+ async function GetGDMap (secretKey, key) {
4
+ if (!Amap) {
5
+ window._AMapSecurityConfig = {
6
+ securityJsCode: secretKey
7
+ }
8
+ // 解决高德地图加载报错 ---> 禁止多种API加载方式混用
9
+ AMapLoader.reset()
10
+ Amap = await AMapLoader.load({
11
+ key: key, // 申请好的Web端开发者Key,首次调用 load 时必填
12
+ version: '2.0', // 指定要加载的 JSAPI 的版本,缺省时默认为 1.4.15
13
+ plugins: ['AMap.IndexCluster', 'AMP.MarkerCluster', 'AMap.InfoWindow', 'AMap.HeatMap', 'AMap.HawkEye', 'AMap.DistrictSearch',
14
+ 'AMap.ToolBar', 'AMap.Geolocation', 'AMap.MouseTool',
15
+ 'AMap.Geocoder', 'AMap.MarkerClusterer', 'AMap.AutoComplete', 'AMap.Scale'], // 需要使用的的插件列表,如比例尺'AMap.Scale'等
16
+ AMapUI: {
17
+ version: '1.1', // AMapUI 缺省 1.1
18
+ plugins: ['misc/PositionPicker'] // 需要加载的 AMapUI ui插件
19
+ }
20
+ })
21
+ }
22
+ return Amap
23
+ }
24
+
25
+ async function getGDMap (address) {
26
+ new (await GetGDMap()).Geocoder({
27
+ radius: 500 // 范围,默认:500
28
+ }).getLocation(address, function (status, result) {
29
+ if (status === 'complete' && result.geocodes.length) {
30
+ return ({ lng: result.geocodes[0].location.lng, lat: result.geocodes[0].location.lat })
31
+ } else {
32
+ // eslint-disable-next-line prefer-promise-reject-errors
33
+ throw new Error('根据经纬度查询地址失败')
34
+ }
35
+ })
36
+ }
37
+
38
+ async function GetLocation (address) {
39
+ return new Promise((resolve, reject) => {
40
+ try {
41
+ resolve(getGDMap(address))
42
+ } catch (e) {
43
+ reject(e)
44
+ }
45
+ })
46
+ }
47
+ export { GetGDMap, GetLocation }
package/src/utils/reg.js CHANGED
@@ -1,95 +1,95 @@
1
- /** 手机号 */
2
- export const REG_PHONE =
3
- /^[1](([3][0-9])|([4][01456789])|([5][012356789])|([6][2567])|([7][0-8])|([8][0-9])|([9][012356789]))[0-9]{8}$/
4
-
5
- /** 邮箱 */
6
- export const REG_EMAIL = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/
7
-
8
- /** url */
9
- export const REG_URL =
10
- /(((^https?:(?:\/\/)?)(?:[-;:&=+$,\w]+@)?[A-Za-z0-9.-]+(?::\d+)?|(?:www.|[-;:&=+$,\w]+@)[A-Za-z0-9.-]+)((?:\/[+~%/.\w-_]*)?\??(?:[-+=&;%@.\w_]*)#?(?:[\w]*))?)$/
11
-
12
- /** 身份证号校验 */
13
- export function checkIdNumber (value) {
14
- const psidno = String(value)
15
- // 1.校验身份证号格式和长度
16
- const regPsidno = /^(^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$)|(^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])((\d{4})|\d{3}[X])$)$/
17
- if (!regPsidno.test(psidno)) {
18
- return false
19
- }
20
- // 2.校验前两位的省份编码是否正确
21
- const province = { 11: '北京', 12: '天津', 13: '河北', 14: '山西', 15: '内蒙古', 21: '辽宁', 22: '吉林', 23: '黑龙江 ', 31: '上海', 32: '江苏', 33: '浙江', 34: '安徽', 35: '福建', 36: '江西', 37: '山东', 41: '河南', 42: '湖北 ', 43: '湖南', 44: '广东', 45: '广西', 46: '海南', 50: '重庆', 51: '四川', 52: '贵州', 53: '云南', 54: '西藏 ', 61: '陕西', 62: '甘肃', 63: '青海', 64: '宁夏', 65: '新疆', 71: '台湾', 81: '香港', 82: '澳门', 91: '国外' }
22
- if (!province[Number(psidno.slice(0, 2))]) {
23
- return false
24
- }
25
- // 3.校验出生日期
26
- if (psidno.length === 15) {
27
- // 15位号码 省(2位)市(2位)县(2位)年(2位)月(2位)日(2位)校验码(3位)
28
- const reg = /^(\d{6})(\d{2})(\d{2})(\d{2})(\d{3})$/
29
- const arrSplit = psidno.match(reg)
30
- // 15位号码在年份前补 19 或 20
31
- const year = Number(arrSplit[2].charAt(0)) > 0 ? '19' + arrSplit[2] : '20' + arrSplit[2]
32
- const month = arrSplit[3]
33
- const day = arrSplit[4]
34
- if (!validateBirthday(year, month, day)) {
35
- return false
36
- }
37
- } else if (psidno.length === 18) {
38
- // 18位号码 省(2位)市(2位)县(2位)年(4位)月(2位)日(2位)校验码(4位)
39
- const reg = /^(\d{6})(\d{4})(\d{2})(\d{2})(\d{3})([0-9]|X)$/
40
- const arrSplit = psidno.match(reg)
41
- const year = arrSplit[2]
42
- const month = arrSplit[3]
43
- const day = arrSplit[4]
44
- if (!validateBirthday(year, month, day)) {
45
- return false
46
- }
47
- } else {
48
- return false
49
- }
50
- // 校验出生日期是否合理
51
- function validateBirthday (year, month, day) {
52
- year = Number(year) // 年
53
- month = Number(month) // 月
54
- day = Number(day) // 日
55
- const nowTime = new Date().getTime() // 当前时间戳
56
- const birthTime = new Date(`${year}-${month}-${day}`).getTime() // 获取出生日期的时间戳
57
- // 不能是明天出生的吧
58
- if (birthTime > nowTime) {
59
- return false
60
- }
61
- // 一般人活不到150岁吧
62
- const nowYear = new Date().getFullYear()
63
- if ((nowYear - year) > 150) {
64
- return false
65
- }
66
- // 不能是13月出生的吧
67
- if (month < 1 || month > 12) {
68
- return false
69
- }
70
- // 不能是2月30号、4月31号、5月32号出生的吧
71
- const date = new Date(year, month, 0) // 获取当月的最后一天
72
- if (day < 1 || day > date.getDate()) {
73
- return false
74
- }
75
- return true
76
- }
77
- // 4.18位号码校验生成的校验码
78
- if (psidno.length === 18) {
79
- const Wi = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2] // 加权因子
80
- const parity = ['1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2'] // 校验码
81
- let sum = 0
82
- for (let i = 0; i < 17; i++) {
83
- sum += Number(psidno.charAt(i)) * Wi[i]
84
- }
85
- if (parity[sum % 11] !== psidno[17]) {
86
- return false
87
- }
88
- }
89
- return true
90
- }
91
- /** 座机号 */
92
- export const REG_LANDLINE = /\d{3}-\d{8}|\d{4}-\d{7}/
93
-
94
- /** 营业执照 */
95
- export const REG_BUSINESS_LICENSE = /^[0-9a-zA-Z]{15}$/
1
+ /** 手机号 */
2
+ export const REG_PHONE =
3
+ /^[1](([3][0-9])|([4][01456789])|([5][012356789])|([6][2567])|([7][0-8])|([8][0-9])|([9][012356789]))[0-9]{8}$/
4
+
5
+ /** 邮箱 */
6
+ export const REG_EMAIL = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/
7
+
8
+ /** url */
9
+ export const REG_URL =
10
+ /(((^https?:(?:\/\/)?)(?:[-;:&=+$,\w]+@)?[A-Za-z0-9.-]+(?::\d+)?|(?:www.|[-;:&=+$,\w]+@)[A-Za-z0-9.-]+)((?:\/[+~%/.\w-_]*)?\??(?:[-+=&;%@.\w_]*)#?(?:[\w]*))?)$/
11
+
12
+ /** 身份证号校验 */
13
+ export function checkIdNumber (value) {
14
+ const psidno = String(value)
15
+ // 1.校验身份证号格式和长度
16
+ const regPsidno = /^(^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$)|(^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])((\d{4})|\d{3}[X])$)$/
17
+ if (!regPsidno.test(psidno)) {
18
+ return false
19
+ }
20
+ // 2.校验前两位的省份编码是否正确
21
+ const province = { 11: '北京', 12: '天津', 13: '河北', 14: '山西', 15: '内蒙古', 21: '辽宁', 22: '吉林', 23: '黑龙江 ', 31: '上海', 32: '江苏', 33: '浙江', 34: '安徽', 35: '福建', 36: '江西', 37: '山东', 41: '河南', 42: '湖北 ', 43: '湖南', 44: '广东', 45: '广西', 46: '海南', 50: '重庆', 51: '四川', 52: '贵州', 53: '云南', 54: '西藏 ', 61: '陕西', 62: '甘肃', 63: '青海', 64: '宁夏', 65: '新疆', 71: '台湾', 81: '香港', 82: '澳门', 91: '国外' }
22
+ if (!province[Number(psidno.slice(0, 2))]) {
23
+ return false
24
+ }
25
+ // 3.校验出生日期
26
+ if (psidno.length === 15) {
27
+ // 15位号码 省(2位)市(2位)县(2位)年(2位)月(2位)日(2位)校验码(3位)
28
+ const reg = /^(\d{6})(\d{2})(\d{2})(\d{2})(\d{3})$/
29
+ const arrSplit = psidno.match(reg)
30
+ // 15位号码在年份前补 19 或 20
31
+ const year = Number(arrSplit[2].charAt(0)) > 0 ? '19' + arrSplit[2] : '20' + arrSplit[2]
32
+ const month = arrSplit[3]
33
+ const day = arrSplit[4]
34
+ if (!validateBirthday(year, month, day)) {
35
+ return false
36
+ }
37
+ } else if (psidno.length === 18) {
38
+ // 18位号码 省(2位)市(2位)县(2位)年(4位)月(2位)日(2位)校验码(4位)
39
+ const reg = /^(\d{6})(\d{4})(\d{2})(\d{2})(\d{3})([0-9]|X)$/
40
+ const arrSplit = psidno.match(reg)
41
+ const year = arrSplit[2]
42
+ const month = arrSplit[3]
43
+ const day = arrSplit[4]
44
+ if (!validateBirthday(year, month, day)) {
45
+ return false
46
+ }
47
+ } else {
48
+ return false
49
+ }
50
+ // 校验出生日期是否合理
51
+ function validateBirthday (year, month, day) {
52
+ year = Number(year) // 年
53
+ month = Number(month) // 月
54
+ day = Number(day) // 日
55
+ const nowTime = new Date().getTime() // 当前时间戳
56
+ const birthTime = new Date(`${year}-${month}-${day}`).getTime() // 获取出生日期的时间戳
57
+ // 不能是明天出生的吧
58
+ if (birthTime > nowTime) {
59
+ return false
60
+ }
61
+ // 一般人活不到150岁吧
62
+ const nowYear = new Date().getFullYear()
63
+ if ((nowYear - year) > 150) {
64
+ return false
65
+ }
66
+ // 不能是13月出生的吧
67
+ if (month < 1 || month > 12) {
68
+ return false
69
+ }
70
+ // 不能是2月30号、4月31号、5月32号出生的吧
71
+ const date = new Date(year, month, 0) // 获取当月的最后一天
72
+ if (day < 1 || day > date.getDate()) {
73
+ return false
74
+ }
75
+ return true
76
+ }
77
+ // 4.18位号码校验生成的校验码
78
+ if (psidno.length === 18) {
79
+ const Wi = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2] // 加权因子
80
+ const parity = ['1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2'] // 校验码
81
+ let sum = 0
82
+ for (let i = 0; i < 17; i++) {
83
+ sum += Number(psidno.charAt(i)) * Wi[i]
84
+ }
85
+ if (parity[sum % 11] !== psidno[17]) {
86
+ return false
87
+ }
88
+ }
89
+ return true
90
+ }
91
+ /** 座机号 */
92
+ export const REG_LANDLINE = /\d{3}-\d{8}|\d{4}-\d{7}/
93
+
94
+ /** 营业执照 */
95
+ export const REG_BUSINESS_LICENSE = /^[0-9a-zA-Z]{15}$/
@@ -1,14 +1,14 @@
1
- export function executeStrFunction (funcString, args) {
2
- // 使用 eval 执行传入的函数字符串
3
- // eslint-disable-next-line no-eval
4
- return eval(`(${funcString})`)(...args)
5
- }
6
-
7
- export function executeStrFunctionByContext (context, fnStr, args) {
8
- // 使用 new Function 创建函数,并绑定 context 作为 this
9
- // eslint-disable-next-line no-eval,no-new-func
10
- const fn = new Function(`return (${fnStr});`)()
11
-
12
- // 使用 bind 绑定 context,并立即调用
13
- return fn.bind(context)(...args)
14
- }
1
+ export function executeStrFunction (funcString, args) {
2
+ // 使用 eval 执行传入的函数字符串
3
+ // eslint-disable-next-line no-eval
4
+ return eval(`(${funcString})`)(...args)
5
+ }
6
+
7
+ export function executeStrFunctionByContext (context, fnStr, args) {
8
+ // 使用 new Function 创建函数,并绑定 context 作为 this
9
+ // eslint-disable-next-line no-eval,no-new-func
10
+ const fn = new Function(`return (${fnStr});`)()
11
+
12
+ // 使用 bind 绑定 context,并立即调用
13
+ return fn.bind(context)(...args)
14
+ }
@@ -1,92 +1,92 @@
1
- const { cssResolve } = require('../config/replacer')
2
- // 修正 webpack-theme-color-replacer 插件提取的 css 结果
3
- function resolveCss (output, srcArr) {
4
- const regExps = []
5
- // 提取 resolve 配置中所有的正则配置
6
- Object.keys(cssResolve).forEach(key => {
7
- let isRegExp
8
- let reg = {}
9
- try {
10
- // eslint-disable-next-line no-eval
11
- reg = eval(key)
12
- isRegExp = reg instanceof RegExp
13
- } catch (e) {
14
- isRegExp = false
15
- }
16
- if (isRegExp) {
17
- regExps.push([reg, cssResolve[key]])
18
- }
19
- })
20
-
21
- // 去重
22
- srcArr = dropDuplicate(srcArr)
23
-
24
- // 处理 css
25
- const outArr = []
26
- srcArr.forEach(text => {
27
- // 转换为 css 对象
28
- const cssObj = parseCssObj(text)
29
- // 根据selector匹配配置,匹配成功,则按配置处理 css
30
- if (cssResolve[cssObj.selector] !== undefined) {
31
- const cfg = cssResolve[cssObj.selector]
32
- if (cfg) {
33
- outArr.push(cfg.resolve(text, cssObj))
34
- }
35
- } else {
36
- let cssText = ''
37
- // 匹配不成功,则测试是否有匹配的正则配置,有则按正则对应的配置处理
38
- for (const regExp of regExps) {
39
- if (regExp[0].test(cssObj.selector)) {
40
- const cssCfg = regExp[1]
41
- cssText = cssCfg ? cssCfg.resolve(text, cssObj) : ''
42
- break
43
- }
44
- // 未匹配到正则,则设置 cssText 为默认的 css(即不处理)
45
- cssText = text
46
- }
47
- if (cssText !== '') {
48
- outArr.push(cssText)
49
- }
50
- }
51
- })
52
- output = outArr.join('\n')
53
- return output
54
- }
55
-
56
- // 数组去重
57
- function dropDuplicate (arr) {
58
- const map = {}
59
- const r = []
60
- for (const s of arr) {
61
- if (!map[s]) {
62
- r.push(s)
63
- map[s] = 1
64
- }
65
- }
66
- return r
67
- }
68
-
69
- /**
70
- * 从字符串解析 css 对象
71
- * @param cssText
72
- * @returns {{
73
- * name: String,
74
- * rules: Array[String],
75
- * toText: function
76
- * }}
77
- */
78
- function parseCssObj (cssText) {
79
- const css = {}
80
- const ruleIndex = cssText.indexOf('{')
81
- css.selector = cssText.substring(0, ruleIndex)
82
- const ruleBody = cssText.substring(ruleIndex + 1, cssText.length - 1)
83
- css.rules = ruleBody.split(';')
84
- css.toText = function () {
85
- let body = ''
86
- this.rules.forEach(item => { body += item + ';' })
87
- return `${this.selector}{${body}}`
88
- }
89
- return css
90
- }
91
-
92
- module.exports = { resolveCss }
1
+ const { cssResolve } = require('../config/replacer')
2
+ // 修正 webpack-theme-color-replacer 插件提取的 css 结果
3
+ function resolveCss (output, srcArr) {
4
+ const regExps = []
5
+ // 提取 resolve 配置中所有的正则配置
6
+ Object.keys(cssResolve).forEach(key => {
7
+ let isRegExp
8
+ let reg = {}
9
+ try {
10
+ // eslint-disable-next-line no-eval
11
+ reg = eval(key)
12
+ isRegExp = reg instanceof RegExp
13
+ } catch (e) {
14
+ isRegExp = false
15
+ }
16
+ if (isRegExp) {
17
+ regExps.push([reg, cssResolve[key]])
18
+ }
19
+ })
20
+
21
+ // 去重
22
+ srcArr = dropDuplicate(srcArr)
23
+
24
+ // 处理 css
25
+ const outArr = []
26
+ srcArr.forEach(text => {
27
+ // 转换为 css 对象
28
+ const cssObj = parseCssObj(text)
29
+ // 根据selector匹配配置,匹配成功,则按配置处理 css
30
+ if (cssResolve[cssObj.selector] !== undefined) {
31
+ const cfg = cssResolve[cssObj.selector]
32
+ if (cfg) {
33
+ outArr.push(cfg.resolve(text, cssObj))
34
+ }
35
+ } else {
36
+ let cssText = ''
37
+ // 匹配不成功,则测试是否有匹配的正则配置,有则按正则对应的配置处理
38
+ for (const regExp of regExps) {
39
+ if (regExp[0].test(cssObj.selector)) {
40
+ const cssCfg = regExp[1]
41
+ cssText = cssCfg ? cssCfg.resolve(text, cssObj) : ''
42
+ break
43
+ }
44
+ // 未匹配到正则,则设置 cssText 为默认的 css(即不处理)
45
+ cssText = text
46
+ }
47
+ if (cssText !== '') {
48
+ outArr.push(cssText)
49
+ }
50
+ }
51
+ })
52
+ output = outArr.join('\n')
53
+ return output
54
+ }
55
+
56
+ // 数组去重
57
+ function dropDuplicate (arr) {
58
+ const map = {}
59
+ const r = []
60
+ for (const s of arr) {
61
+ if (!map[s]) {
62
+ r.push(s)
63
+ map[s] = 1
64
+ }
65
+ }
66
+ return r
67
+ }
68
+
69
+ /**
70
+ * 从字符串解析 css 对象
71
+ * @param cssText
72
+ * @returns {{
73
+ * name: String,
74
+ * rules: Array[String],
75
+ * toText: function
76
+ * }}
77
+ */
78
+ function parseCssObj (cssText) {
79
+ const css = {}
80
+ const ruleIndex = cssText.indexOf('{')
81
+ css.selector = cssText.substring(0, ruleIndex)
82
+ const ruleBody = cssText.substring(ruleIndex + 1, cssText.length - 1)
83
+ css.rules = ruleBody.split(';')
84
+ css.toText = function () {
85
+ let body = ''
86
+ this.rules.forEach(item => { body += item + ';' })
87
+ return `${this.selector}{${body}}`
88
+ }
89
+ return css
90
+ }
91
+
92
+ module.exports = { resolveCss }