vue2-client 1.17.48 → 1.17.50

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 (343) hide show
  1. package/.claude/settings.local.json +20 -20
  2. package/.cursorrules +19 -19
  3. package/.env +20 -20
  4. package/.env.apply +19 -19
  5. package/.env.gaslink +19 -19
  6. package/.env.his +19 -19
  7. package/.env.liuli +20 -20
  8. package/.env.scada +19 -19
  9. package/.eslintrc.js +90 -90
  10. package/.serena/memories/code_style_conventions.md +217 -217
  11. package/.serena/memories/project_overview.md +54 -54
  12. package/.serena/memories/project_structure.md +329 -329
  13. package/.serena/memories/suggested_commands.md +127 -127
  14. package/.serena/memories/task_completion_checklist.md +183 -183
  15. package/.serena/memories/tech_stack.md +94 -94
  16. package/CHANGELOG.md +830 -830
  17. package/CLAUDE.md +97 -97
  18. package/Components.md +60 -60
  19. package/docs/LowCode/lowcode.md +155 -155
  20. package/docs/LowCode/lowcodeForDeveloper.md +230 -230
  21. package/docs/index.md +30 -30
  22. package/index.js +31 -31
  23. package/jest-transform-stub.js +8 -8
  24. package/jest.setup.js +7 -7
  25. package/jsconfig.json +19 -19
  26. package/package.json +1 -1
  27. package/public/his/editor/editor.html +51 -51
  28. package/public/his/editor/mock/bind_data.html +779 -779
  29. package/public/his/editor/mock/data_table.html +40 -40
  30. package/public/his/editor/mock/sign.html +75 -75
  31. package/public/his/editor/vender/JsBarcode.all.js +3669 -3669
  32. package/public/his/editor/vender/date97/My97DatePicker.htm +65 -65
  33. package/public/his/editor/vender/date97/WdatePicker.js +677 -677
  34. package/public/his/editor/vender/date97/calendar.js +4 -4
  35. package/public/his/editor/vender/date97/lang/en.js +13 -13
  36. package/public/his/editor/vender/date97/lang/zh-cn.js +13 -13
  37. package/public/his/editor/vender/date97/lang/zh-tw.js +13 -13
  38. package/public/his/editor/vender/date97/skin/WdatePicker.css +10 -10
  39. package/public/his/editor/vender/date97/skin/default/datepicker.css +328 -328
  40. package/public/his/editor/vender/date97/skin/ext/datepicker.css +308 -308
  41. package/public/his/editor/vender/date97/skin/whyGreen/datepicker.css +255 -255
  42. package/public/his/editor/vender/diff.js +1627 -1627
  43. package/public/his/editor/vender/editor.js +1 -1
  44. package/public/his/editor/vender/fabric.js +31187 -31187
  45. package/public/his/editor/vender/jquery/jquery.base64.js +190 -190
  46. package/public/his/editor/vender/jquery/jquery.js +10872 -10872
  47. package/public/his/editor/vender/jquery/jquery.print.js +255 -255
  48. package/public/his/editor/vender/jquery/zTreeStyle/zTreeStyle.css +96 -96
  49. package/public/his/editor/vender/mui/mui.min.css +4 -4
  50. package/public/his/editor/vender/mui/mui.min.js +5 -5
  51. package/public/his/editor/vender/mui/mui.picker.min.css +6 -6
  52. package/public/his/editor/vender/mui/mui.picker.min.js +6 -6
  53. package/public/his/editor/vender/qrcode.js +7 -7
  54. package/public/his/editor/vender/requirejs/require.js +2145 -2145
  55. package/public/his/editor/vender/signature/jSignature.CompressorSVG.js +518 -518
  56. package/public/his/editor/vender/signature/jSignature.UndoButton.js +164 -164
  57. package/public/his/editor/vender/signature/jSignature.js +1486 -1486
  58. package/public/his/editor/vender/validator.js +5094 -5094
  59. package/public/his/editor/vender/weui/weui.css +5659 -5659
  60. package/public/his/editor/vender/weui/weui.min.css +4 -4
  61. package/public/his/editor/vender/weui/weui.min.js +11 -11
  62. package/src/assets/img/paymentMethod/package.info +1 -1
  63. package/src/assets/img/querySlotDemo.svg +15 -15
  64. package/src/assets/svg/badtwo.svg +1 -1
  65. package/src/assets/svg/goodtwo.svg +1 -1
  66. package/src/base-client/components/AI/AskAiBtn.vue +136 -136
  67. package/src/base-client/components/AI/demo.vue +31 -31
  68. package/src/base-client/components/common/AddressSearchCombobox/IcMapIcon.vue +16 -16
  69. package/src/base-client/components/common/AddressSearchCombobox/demo.vue +36 -36
  70. package/src/base-client/components/common/AddressSearchCombobox/ic_map.svg +6 -6
  71. package/src/base-client/components/common/AmapMarker/AmapPointRendering.vue +120 -120
  72. package/src/base-client/components/common/CitySelect/index.js +3 -3
  73. package/src/base-client/components/common/CitySelect/index.md +109 -109
  74. package/src/base-client/components/common/CreateQuery/CreateQuery.vue +669 -669
  75. package/src/base-client/components/common/CreateQuery/CreateQueryItem.vue +1014 -1014
  76. package/src/base-client/components/common/CreateQuery/index.js +3 -3
  77. package/src/base-client/components/common/CreateQuery/index.md +42 -42
  78. package/src/base-client/components/common/CreateSimpleFormQuery/CreateSimpleFormQuery.vue +452 -452
  79. package/src/base-client/components/common/CreateSimpleFormQuery/CreateSimpleFormQueryItem.vue +511 -511
  80. package/src/base-client/components/common/CreateSimpleFormQuery/index.js +3 -3
  81. package/src/base-client/components/common/CreateSimpleFormQuery/index.md +42 -42
  82. package/src/base-client/components/common/FormGroupEdit/index.js +3 -3
  83. package/src/base-client/components/common/FormGroupEdit/index.md +43 -43
  84. package/src/base-client/components/common/FormGroupQuery/FormGroupQuery.vue +166 -166
  85. package/src/base-client/components/common/FormGroupQuery/index.js +3 -3
  86. package/src/base-client/components/common/FormGroupQuery/index.md +43 -43
  87. package/src/base-client/components/common/HIS/demo.vue +61 -61
  88. package/src/base-client/components/common/JSONToTree/jsontotree.vue +271 -271
  89. package/src/base-client/components/common/LowCodeComponent/LowCodeEditorModal.vue +108 -108
  90. package/src/base-client/components/common/LowCodeComponent/LowCodeEditorPanel.vue +413 -413
  91. package/src/base-client/components/common/LowCodeComponent/LowCodePageOrganization.vue +502 -502
  92. package/src/base-client/components/common/LowCodeComponent/LowCodeRender.vue +728 -728
  93. package/src/base-client/components/common/LowCodeComponent/LowCodeRenderEnter.vue +29 -29
  94. package/src/base-client/components/common/LowCodeComponent/LowCodeUIStore.vue +219 -219
  95. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeAddPageModal.vue +117 -117
  96. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeCustomJSModal.vue +80 -80
  97. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeEventEditorModal.vue +398 -398
  98. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeLifeCycleModal.vue +65 -65
  99. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeLogicCallbackModal.vue +64 -64
  100. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeLogicParamModal.vue +73 -73
  101. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeRunFunctionParamModal.vue +76 -76
  102. package/src/base-client/components/common/PersonSetting/PersonSetting.vue +208 -208
  103. package/src/base-client/components/common/PersonSetting/index.js +3 -3
  104. package/src/base-client/components/common/Recording/Recording.vue +243 -243
  105. package/src/base-client/components/common/Recording/index.js +3 -3
  106. package/src/base-client/components/common/Tree/Tree.vue +149 -149
  107. package/src/base-client/components/common/Tree/index.js +2 -2
  108. package/src/base-client/components/common/Upload/index.js +3 -3
  109. package/src/base-client/components/common/XAddForm/XAddForm.vue +113 -113
  110. package/src/base-client/components/common/XAddNativeForm/index.md +146 -146
  111. package/src/base-client/components/common/XAddNativeFormOA/XAddNativeFormOA.vue +304 -304
  112. package/src/base-client/components/common/XAddNativeFormOA/index.js +3 -3
  113. package/src/base-client/components/common/XAddNativeFormOA/index.md +146 -146
  114. package/src/base-client/components/common/XAddReport/index.js +3 -3
  115. package/src/base-client/components/common/XAddReport/index.md +56 -56
  116. package/src/base-client/components/common/XBadge/XBadge.vue +94 -94
  117. package/src/base-client/components/common/XButtons/XButtonDemo.vue +28 -28
  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/XCalendar/XCalendar.vue +4 -4
  121. package/src/base-client/components/common/XCard/XCard.vue +64 -64
  122. package/src/base-client/components/common/XCheckList/XCheckList.vue +106 -106
  123. package/src/base-client/components/common/XCheckList/XCheckListDemo.vue +41 -41
  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 +0 -2
  131. package/src/base-client/components/common/XDescriptions/index.js +3 -3
  132. package/src/base-client/components/common/XDescriptions/index.md +83 -83
  133. package/src/base-client/components/common/XDetailsView/XDetailsView.vue +238 -238
  134. package/src/base-client/components/common/XDetailsView/index.js +3 -3
  135. package/src/base-client/components/common/XForm/XForm.vue +16 -10
  136. package/src/base-client/components/common/XForm/XStatusButton.vue +54 -54
  137. package/src/base-client/components/common/XForm/XTreeSelect.vue +276 -276
  138. package/src/base-client/components/common/XForm/index.md +178 -178
  139. package/src/base-client/components/common/XForm/itemComponent/XClickChangeBtn/index.vue +49 -49
  140. package/src/base-client/components/common/XFormGroup/index.js +3 -3
  141. package/src/base-client/components/common/XFormGroup/index.md +38 -38
  142. package/src/base-client/components/common/XFormGroupDetails/index.js +3 -3
  143. package/src/base-client/components/common/XFormTable/XFormTable.vue +1252 -1093
  144. package/src/base-client/components/common/XFormTable/demo.vue +12 -34
  145. package/src/base-client/components/common/XFormTable/index.md +92 -92
  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/PrintHtml.js +98 -98
  152. package/src/base-client/components/common/XPrint/css/hiPrintCss.js +359 -359
  153. package/src/base-client/components/common/XPrint/css/lodopCss.js +26 -26
  154. package/src/base-client/components/common/XPrint/css/print-lock.css +351 -351
  155. package/src/base-client/components/common/XPrint/index.vue +97 -97
  156. package/src/base-client/components/common/XReport/XReportDesign.vue +463 -463
  157. package/src/base-client/components/common/XReport/XReportJsonRender.vue +381 -381
  158. package/src/base-client/components/common/XReport/index.js +3 -3
  159. package/src/base-client/components/common/XReport/print.js +186 -186
  160. package/src/base-client/components/common/XReportDrawer/index.js +3 -3
  161. package/src/base-client/components/common/XReportGrid/index.js +3 -3
  162. package/src/base-client/components/common/XReportGrid/index.md +44 -44
  163. package/src/base-client/components/common/XReportSlot/XReportSlot.vue +110 -110
  164. package/src/base-client/components/common/XReportSlot/index.js +3 -3
  165. package/src/base-client/components/common/XReportSlot/index.md +48 -48
  166. package/src/base-client/components/common/XSimpleDescriptions/XSimpleDescriptions.vue +166 -166
  167. package/src/base-client/components/common/XSimpleDescriptions/index.js +3 -3
  168. package/src/base-client/components/common/XSimpleDescriptions/index.md +7 -7
  169. package/src/base-client/components/common/XStepView/XStepView.vue +252 -252
  170. package/src/base-client/components/common/XStepView/index.js +3 -3
  171. package/src/base-client/components/common/XStepView/index.md +31 -31
  172. package/src/base-client/components/common/XTab/XTabDemo.vue +22 -22
  173. package/src/base-client/components/common/XTab/index.js +3 -3
  174. package/src/base-client/components/common/XTable/CustomFuncCel.vue +51 -51
  175. package/src/base-client/components/common/XTable/TableCellRenderer.vue +161 -161
  176. package/src/base-client/components/common/XTable/XTable.vue +4 -1
  177. package/src/base-client/components/common/XTable/XTableWrapper.vue +738 -732
  178. package/src/base-client/components/common/XTable/index.md +255 -255
  179. package/src/base-client/components/common/XTagGroup/index.vue +52 -52
  180. package/src/base-client/components/common/XTree/XTree.vue +424 -424
  181. package/src/base-client/components/common/XTree/index.js +3 -3
  182. package/src/base-client/components/common/XTree/index.md +36 -36
  183. package/src/base-client/components/common/XTreeOne/XTreeOne.vue +113 -113
  184. package/src/base-client/components/common/XTreeOne/XTreeOnePro.vue +128 -128
  185. package/src/base-client/components/common/richTextModal/index.vue +56 -56
  186. package/src/base-client/components/common/richTextModal/richDemo.vue +48 -48
  187. package/src/base-client/components/his/XCharge/XChargeDemo.vue +145 -145
  188. package/src/base-client/components/his/XHisEditor/index.js +3 -3
  189. package/src/base-client/components/index.js +51 -51
  190. package/src/base-client/components/layout/XTreeView/XTreeView.vue +130 -130
  191. package/src/base-client/components/layout/XTreeView/index.js +3 -3
  192. package/src/base-client/components/layout/XTreeView/index.md +46 -46
  193. package/src/base-client/components/system/DictionaryDetailsView/DictionaryDetailsView.vue +232 -232
  194. package/src/base-client/components/system/QueryParamsDetailsView/QueryParamsDetailsView.vue +281 -281
  195. package/src/base-client/plugins/Config.js +19 -19
  196. package/src/base-client/plugins/GetLoginInfoService.js +183 -183
  197. package/src/base-client/plugins/Recording.js +258 -258
  198. package/src/base-client/plugins/index.js +23 -23
  199. package/src/base-client/plugins/tabs-page-plugin.js +39 -39
  200. package/src/components/Charts/Bar.vue +62 -62
  201. package/src/components/Charts/ChartCard.vue +134 -134
  202. package/src/components/Charts/Liquid.vue +67 -67
  203. package/src/components/Charts/MiniArea.vue +39 -39
  204. package/src/components/Charts/MiniBar.vue +39 -39
  205. package/src/components/Charts/MiniProgress.vue +75 -75
  206. package/src/components/Charts/MiniSmoothArea.vue +40 -40
  207. package/src/components/Charts/Radar.vue +68 -68
  208. package/src/components/Charts/RankList.vue +77 -77
  209. package/src/components/Charts/TagCloud.vue +113 -113
  210. package/src/components/Charts/TransferBar.vue +64 -64
  211. package/src/components/Charts/Trend.vue +82 -82
  212. package/src/components/Charts/chart.less +12 -12
  213. package/src/components/Charts/smooth.area.less +13 -13
  214. package/src/components/CodeMirror/inedx.vue +118 -118
  215. package/src/components/CodeMirror/setting.js +40 -40
  216. package/src/components/FileImageItem/FileItemGroup.vue +22 -6
  217. package/src/components/NumberInfo/NumberInfo.vue +54 -54
  218. package/src/components/NumberInfo/index.js +3 -3
  219. package/src/components/NumberInfo/index.less +54 -54
  220. package/src/components/NumberInfo/index.md +43 -43
  221. package/src/components/card/ChartCard.vue +79 -79
  222. package/src/components/chart/Bar.vue +60 -60
  223. package/src/components/chart/MiniArea.vue +67 -67
  224. package/src/components/chart/MiniBar.vue +59 -59
  225. package/src/components/chart/MiniProgress.vue +57 -57
  226. package/src/components/chart/Radar.vue +80 -80
  227. package/src/components/chart/RankingList.vue +60 -60
  228. package/src/components/chart/Trend.vue +79 -79
  229. package/src/components/chart/index.less +9 -9
  230. package/src/components/checkbox/ColorCheckbox.vue +157 -157
  231. package/src/components/checkbox/ImgCheckbox.vue +117 -117
  232. package/src/components/checkbox/ImgCheckboxGroup.vue +76 -76
  233. package/src/components/checkbox/index.js +9 -9
  234. package/src/components/exception/ExceptionPage.vue +70 -70
  235. package/src/components/g2Charts/constants.js +202 -202
  236. package/src/components/g2Charts/demo.vue +808 -808
  237. package/src/components/g2Charts/designer.vue +228 -228
  238. package/src/components/g2Charts/designerBaseConfig.vue +61 -61
  239. package/src/components/g2Charts/designerDataConfig.vue +259 -259
  240. package/src/components/g2Charts/designerStyleConfig.vue +16 -16
  241. package/src/components/g2Charts/index.vue +397 -397
  242. package/src/components/index.js +36 -36
  243. package/src/components/input/IInput.vue +66 -66
  244. package/src/components/menu/SideMenu.vue +75 -75
  245. package/src/components/menu/menu.js +273 -273
  246. package/src/components/setting/Setting.vue +234 -234
  247. package/src/components/tool/AStepItem.vue +60 -60
  248. package/src/config/CreateQueryConfig.js +325 -325
  249. package/src/config/default/antd.config.js +89 -89
  250. package/src/config/default/setting.config.js +55 -55
  251. package/src/font-style/font.css +60 -60
  252. package/src/layouts/CommonLayout.vue +56 -56
  253. package/src/layouts/PageLayout.vue +151 -151
  254. package/src/layouts/SinglePageView.vue +136 -136
  255. package/src/layouts/header/AdminHeader.vue +132 -132
  256. package/src/layouts/header/HeaderNotice.vue +177 -177
  257. package/src/layouts/header/InstitutionDetail.vue +181 -181
  258. package/src/layouts/tabs/TabsHead.vue +189 -189
  259. package/src/lib.js +1 -1
  260. package/src/mock/extend/index.js +84 -84
  261. package/src/mock/goods/index.js +108 -108
  262. package/src/pages/DefaultExample/index.vue +77 -77
  263. package/src/pages/DynamicStatistics/ChartSelector.vue +331 -331
  264. package/src/pages/DynamicStatistics/DataTabs.vue +83 -83
  265. package/src/pages/DynamicStatistics/DynamicTable.vue +128 -128
  266. package/src/pages/DynamicStatistics/EvaluationArea.vue +69 -69
  267. package/src/pages/DynamicStatistics/FavoriteList.vue +50 -50
  268. package/src/pages/DynamicStatistics/QuestionHistoryAndFavorites.vue +591 -591
  269. package/src/pages/DynamicStatistics/SearchBar.vue +192 -192
  270. package/src/pages/DynamicStatistics/index.vue +282 -282
  271. package/src/pages/Example/childIndex.vue +15 -15
  272. package/src/pages/Example/index.vue +30 -30
  273. package/src/pages/NewDynamicStatistics/ChartSelector.vue +331 -331
  274. package/src/pages/NewDynamicStatistics/DataTabs.vue +122 -122
  275. package/src/pages/NewDynamicStatistics/DynamicTable.vue +128 -128
  276. package/src/pages/NewDynamicStatistics/EvaluationArea.vue +69 -69
  277. package/src/pages/NewDynamicStatistics/FavoriteList.vue +50 -50
  278. package/src/pages/NewDynamicStatistics/QuestionHistoryAndFavorites.vue +289 -289
  279. package/src/pages/NewDynamicStatistics/SearchBar.vue +193 -193
  280. package/src/pages/NewDynamicStatistics/index.vue +258 -258
  281. package/src/pages/Recording/index.vue +77 -77
  282. package/src/pages/ServiceReview/index.vue +284 -284
  283. package/src/pages/SubExample/index.vue +26 -26
  284. package/src/pages/WorkflowDetail/WorkflowPageDetail/TrimTextTail.vue +23 -23
  285. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkFlowBaseInformation.vue +417 -417
  286. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkFlowHandle.vue +1815 -1815
  287. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkFlowTimeline.vue +1014 -1014
  288. package/src/pages/XReportView/index.vue +64 -64
  289. package/src/pages/XTreeOneProExample/index.vue +67 -67
  290. package/src/pages/dashboard/workplace/WorkPlace.vue +141 -141
  291. package/src/pages/login/Login.vue +379 -379
  292. package/src/pages/login/LoginV3.vue +389 -389
  293. package/src/pages/lowCode/lowCodeEditor.vue +1219 -1219
  294. package/src/pages/lowCode/lowCodeRenderPage.vue +43 -43
  295. package/src/pages/report/ReportTable.js +124 -124
  296. package/src/pages/resourceManage/orgListManage.vue +98 -98
  297. package/src/pages/system/dictionary/index.vue +44 -44
  298. package/src/pages/system/monitor/loginInfor/index.vue +37 -37
  299. package/src/pages/system/monitor/operLog/index.vue +37 -37
  300. package/src/pages/system/settings/modifyPassword.vue +117 -117
  301. package/src/pages/system/ticket/index.vue +480 -480
  302. package/src/pages/system/ticket/submitTicketSuccess.vue +484 -484
  303. package/src/pages/userInfoDetailManage/ChangeMeterRecordQuery/index.vue +64 -64
  304. package/src/pages/userInfoDetailManage/InfoChangeRecordQuery/index.vue +64 -64
  305. package/src/pages/userInfoDetailManage/InstructRecordQuery/index.vue +64 -64
  306. package/src/pages/userInfoDetailManage/MeterParamRecordQuery/index.vue +64 -64
  307. package/src/pages/userInfoDetailManage/TransferRecordQuery/index.vue +66 -66
  308. package/src/pages/userInfoDetailManage/WatchCollectionRecordQuery/index.vue +64 -64
  309. package/src/plugins/EventLogPlugin.js +33 -33
  310. package/src/plugins/FindParentsData.js +17 -17
  311. package/src/router/async/router.map.js +134 -134
  312. package/src/services/DataModel.js +30 -30
  313. package/src/services/LodopFuncs.js +137 -137
  314. package/src/services/api/TicketDetailsViewApi.js +46 -46
  315. package/src/services/api/cas.js +79 -79
  316. package/src/services/api/entity.js +18 -18
  317. package/src/services/api/index.js +17 -17
  318. package/src/services/api/restTools.js +215 -215
  319. package/src/store/modules/account.js +121 -121
  320. package/src/store/modules/index.js +5 -5
  321. package/src/store/modules/lowCode.js +33 -33
  322. package/src/store/modules/setting.js +119 -119
  323. package/src/theme/default/style.less +58 -58
  324. package/src/theme/global.less +313 -313
  325. package/src/utils/authority-utils.js +85 -85
  326. package/src/utils/errorCode.js +6 -6
  327. package/src/utils/formatter.js +74 -74
  328. package/src/utils/htmlToPDF.js +108 -108
  329. package/src/utils/htmlToPDFApi.js +5 -5
  330. package/src/utils/login.js +188 -188
  331. package/src/utils/lowcode/lowcodeComponentMixin.js +120 -120
  332. package/src/utils/lowcode/lowcodeLog.js +29 -29
  333. package/src/utils/lowcode/lowcodeUtils.js +373 -373
  334. package/src/utils/lowcode/registerComponentForEditor.js +1 -1
  335. package/src/utils/lowcode/registerComponentForRender.js +11 -11
  336. package/src/utils/map-utils.js +47 -47
  337. package/src/utils/reg.js +95 -95
  338. package/src/utils/runEvalFunction.js +14 -14
  339. package/src/utils/theme-color-replacer-extend.js +92 -92
  340. package/src/utils/util.js +329 -329
  341. package/src/utils/waterMark.js +31 -31
  342. package//350/277/201/347/247/273/346/227/245/345/277/227.md +15 -15
  343. package/src/pages/WorkflowDetail/WorkFlowDemo4.vue +0 -127
@@ -1,258 +1,258 @@
1
- // recordingPlugin.js
2
- export default {
3
- install (Vue) {
4
- Vue.prototype.$recording = {
5
- isRecording: false, // 标识是否正在录音
6
- mediaRecorder: null, // MediaRecorder 实例
7
- audioChunks: [], // 存储录音数据块
8
- audioUrl: null, // 录音生成的 URL
9
- inputData: '',
10
- audioContext: null,
11
- audioStream: null,
12
- ws: null,
13
- resolvePromise: null, // 用于保存 Promise 的 resolve 函数
14
-
15
- async startRecording () {
16
- this.inputData = ''
17
- this.audioChunks = []
18
-
19
- const url = 'ws://192.168.50.67:30288/websocket/bash' // WebSocket地址
20
- this.setupWebSocket(url)
21
-
22
- // 等待 WebSocket 连接成功
23
- const result = await this.waitForWebSocketConnection()
24
-
25
- if (result) {
26
- return {
27
- code: 500,
28
- msg: result
29
- }
30
- }
31
-
32
- this.isRecording = true
33
-
34
- // 初始化 AudioContext
35
- this.audioContext = new (window.AudioContext || window.webkitAudioContext)()
36
-
37
- if (!navigator.mediaDevices || !navigator.mediaDevices.getUserMedia) {
38
- this.ws.close()
39
- return {
40
- code: 500,
41
- msg: '录音软件不支持您的浏览器!请使用现代浏览器或确保您正在使用 HTTPS。'
42
- }
43
- }
44
- // 获取麦克风输入流
45
- this.audioStream = await navigator.mediaDevices.getUserMedia({ audio: true })
46
-
47
- // 设置音频处理流程
48
- this.setupAudioProcessing()
49
-
50
- return {
51
- code: 200,
52
- msg: '开始录音'
53
- }
54
- },
55
-
56
- setupWebSocket (url) {
57
- this.ws = new WebSocket(url)
58
-
59
- this.ws.onmessage = (event) => {
60
- const data = JSON.parse(event.data)
61
- console.log('Result:', data.result)
62
- if (data.result !== undefined) {
63
- this.inputData += data.result
64
- }
65
- if (!this.isRecording) {
66
- this.ws.close()
67
- }
68
- }
69
-
70
- this.ws.onclose = () => {
71
- console.log('WebSocket closed.')
72
- this.resRecordingData()
73
- this.resolvePromise(this.inputData)
74
- }
75
- this.ws.onerror = (error) => console.error('WebSocket error:', error)
76
- },
77
-
78
- waitForWebSocketConnection () {
79
- return new Promise((resolve) => {
80
- this.ws.onopen = () => {
81
- console.log('WebSocket 连接成功')
82
- resolve()
83
- }
84
-
85
- this.ws.onerror = (error) => {
86
- resolve('WebSocket 连接失败: ' + error.message)
87
- }
88
- })
89
- },
90
-
91
- setupAudioProcessing () {
92
- try {
93
- const source = this.audioContext.createMediaStreamSource(this.audioStream)
94
- const processor = this.audioContext.createScriptProcessor(4096, 1, 1)
95
-
96
- processor.onaudioprocess = (e) => {
97
- // if (!this.isRecording) return
98
-
99
- const inputData = e.inputBuffer.getChannelData(0)
100
-
101
- // Resample to 16000 Hz if needed
102
- const resampledData = this.resample(inputData, this.audioContext.sampleRate, 16000)
103
-
104
- this.audioChunks.push(new Float32Array(resampledData))
105
-
106
- // Convert to 16-bit PCM and send via WebSocket
107
- const byteArray = this.convertTo16BitPCM(resampledData)
108
-
109
- const finalData = new Uint8Array(1 + byteArray.length) // 创建最终数据数组
110
- finalData[0] = 1 // 第一个字节为类型,值为1
111
- finalData.set(byteArray, 1) // 设置实际数据
112
-
113
- this.ws.send(finalData) // 发送最终数据
114
- }
115
-
116
- source.connect(processor)
117
- processor.connect(this.audioContext.destination)
118
- return {
119
- code: 200,
120
- msg: '录音初始化成功'
121
- }
122
- } catch (error) {
123
- console.error('Error setting up audio processing:', error)
124
- return {
125
- code: 500,
126
- msg: '录音初始化出错:' + error.message
127
- }
128
- }
129
- },
130
-
131
- stopRecording () {
132
- console.log('停止录音')
133
-
134
- // 停止麦克风流
135
- if (this.audioStream) {
136
- this.audioStream.getTracks().forEach((track) => track.stop())
137
- }
138
-
139
- if (this.audioContext) {
140
- this.audioContext.close()
141
- }
142
-
143
- // 发送结束信号
144
- const endSignal = new Uint8Array(1) // 创建一个长度为1的Uint8Array
145
- endSignal[0] = 2 // 直接发送类型,值为2
146
- this.ws.send(endSignal) // 发送结束信号
147
-
148
- this.isRecording = false
149
-
150
- return {
151
- code: 200,
152
- msg: '录音已停止'
153
- }
154
- },
155
-
156
- saveAudioFile () {
157
- const audioBuffer = this.mergeAudioChunks(this.audioChunks)
158
-
159
- // 转换为 WAV 格式
160
- const wavBlob = this.encodeWAV(audioBuffer, 16000)
161
-
162
- // 创建下载链接并触发下载
163
- const url = URL.createObjectURL(wavBlob)
164
- const a = document.createElement('a')
165
- a.style.display = 'none'
166
- a.href = url
167
- a.download = 'recording.wav'
168
- document.body.appendChild(a)
169
- a.click()
170
- window.URL.revokeObjectURL(url)
171
- },
172
-
173
- mergeAudioChunks (chunks) {
174
- const length = chunks.reduce((sum, chunk) => sum + chunk.length, 0)
175
- const result = new Float32Array(length)
176
- let offset = 0
177
- for (const chunk of chunks) {
178
- result.set(chunk, offset)
179
- offset += chunk.length
180
- }
181
- return result
182
- },
183
-
184
- encodeWAV (samples, sampleRate) {
185
- const buffer = new ArrayBuffer(44 + samples.length * 2)
186
- const view = new DataView(buffer)
187
-
188
- const writeString = (view, offset, string) => {
189
- for (let i = 0; i < string.length; i++) {
190
- view.setUint8(offset + i, string.charCodeAt(i))
191
- }
192
- }
193
-
194
- writeString(view, 0, 'RIFF')
195
- view.setUint32(4, 36 + samples.length * 2, true)
196
- writeString(view, 8, 'WAVE')
197
-
198
- writeString(view, 12, 'fmt ')
199
- view.setUint32(16, 16, true)
200
- view.setUint16(20, 1, true)
201
- view.setUint16(22, 1, true)
202
- view.setUint32(24, sampleRate, true)
203
- view.setUint32(28, sampleRate * 2, true)
204
- view.setUint16(32, 2, true)
205
- view.setUint16(34, 16, true)
206
-
207
- writeString(view, 36, 'data')
208
- view.setUint32(40, samples.length * 2, true)
209
-
210
- let offset = 44
211
- for (let i = 0; i < samples.length; i++) {
212
- const s = Math.max(-1, Math.min(1, samples[i]))
213
- view.setInt16(offset, s < 0 ? s * 0x8000 : s * 0x7fff, true)
214
- offset += 2
215
- }
216
-
217
- return new Blob([buffer], { type: 'audio/wav' })
218
- },
219
-
220
- resample (data, inputSampleRate, outputSampleRate) {
221
- if (inputSampleRate === outputSampleRate) {
222
- return data
223
- }
224
- const sampleRateRatio = inputSampleRate / outputSampleRate
225
- const newLength = Math.round(data.length / sampleRateRatio)
226
- const resampledData = new Float32Array(newLength)
227
- for (let i = 0; i < newLength; i++) {
228
- const index = Math.round(i * sampleRateRatio)
229
- resampledData[i] = data[index]
230
- }
231
- return resampledData
232
- },
233
-
234
- convertTo16BitPCM (data) {
235
- const output = new Int16Array(data.length)
236
- for (let i = 0; i < data.length; i++) {
237
- output[i] = Math.max(-1, Math.min(1, data[i])) * 0x7fff
238
- }
239
- return new Uint8Array(output.buffer)
240
- },
241
-
242
- async getRecordingData () {
243
- return new Promise((resolve) => {
244
- this.resolvePromise = resolve
245
-
246
- if (!this.ws) {
247
- // 如果 WebSocket 未初始化,直接拒绝
248
- console.log('错误结束')
249
- resolve(this.inputData)
250
- }
251
- })
252
- },
253
-
254
- resRecordingData () {
255
- }
256
- }
257
- }
258
- }
1
+ // recordingPlugin.js
2
+ export default {
3
+ install (Vue) {
4
+ Vue.prototype.$recording = {
5
+ isRecording: false, // 标识是否正在录音
6
+ mediaRecorder: null, // MediaRecorder 实例
7
+ audioChunks: [], // 存储录音数据块
8
+ audioUrl: null, // 录音生成的 URL
9
+ inputData: '',
10
+ audioContext: null,
11
+ audioStream: null,
12
+ ws: null,
13
+ resolvePromise: null, // 用于保存 Promise 的 resolve 函数
14
+
15
+ async startRecording () {
16
+ this.inputData = ''
17
+ this.audioChunks = []
18
+
19
+ const url = 'ws://192.168.50.67:30288/websocket/bash' // WebSocket地址
20
+ this.setupWebSocket(url)
21
+
22
+ // 等待 WebSocket 连接成功
23
+ const result = await this.waitForWebSocketConnection()
24
+
25
+ if (result) {
26
+ return {
27
+ code: 500,
28
+ msg: result
29
+ }
30
+ }
31
+
32
+ this.isRecording = true
33
+
34
+ // 初始化 AudioContext
35
+ this.audioContext = new (window.AudioContext || window.webkitAudioContext)()
36
+
37
+ if (!navigator.mediaDevices || !navigator.mediaDevices.getUserMedia) {
38
+ this.ws.close()
39
+ return {
40
+ code: 500,
41
+ msg: '录音软件不支持您的浏览器!请使用现代浏览器或确保您正在使用 HTTPS。'
42
+ }
43
+ }
44
+ // 获取麦克风输入流
45
+ this.audioStream = await navigator.mediaDevices.getUserMedia({ audio: true })
46
+
47
+ // 设置音频处理流程
48
+ this.setupAudioProcessing()
49
+
50
+ return {
51
+ code: 200,
52
+ msg: '开始录音'
53
+ }
54
+ },
55
+
56
+ setupWebSocket (url) {
57
+ this.ws = new WebSocket(url)
58
+
59
+ this.ws.onmessage = (event) => {
60
+ const data = JSON.parse(event.data)
61
+ console.log('Result:', data.result)
62
+ if (data.result !== undefined) {
63
+ this.inputData += data.result
64
+ }
65
+ if (!this.isRecording) {
66
+ this.ws.close()
67
+ }
68
+ }
69
+
70
+ this.ws.onclose = () => {
71
+ console.log('WebSocket closed.')
72
+ this.resRecordingData()
73
+ this.resolvePromise(this.inputData)
74
+ }
75
+ this.ws.onerror = (error) => console.error('WebSocket error:', error)
76
+ },
77
+
78
+ waitForWebSocketConnection () {
79
+ return new Promise((resolve) => {
80
+ this.ws.onopen = () => {
81
+ console.log('WebSocket 连接成功')
82
+ resolve()
83
+ }
84
+
85
+ this.ws.onerror = (error) => {
86
+ resolve('WebSocket 连接失败: ' + error.message)
87
+ }
88
+ })
89
+ },
90
+
91
+ setupAudioProcessing () {
92
+ try {
93
+ const source = this.audioContext.createMediaStreamSource(this.audioStream)
94
+ const processor = this.audioContext.createScriptProcessor(4096, 1, 1)
95
+
96
+ processor.onaudioprocess = (e) => {
97
+ // if (!this.isRecording) return
98
+
99
+ const inputData = e.inputBuffer.getChannelData(0)
100
+
101
+ // Resample to 16000 Hz if needed
102
+ const resampledData = this.resample(inputData, this.audioContext.sampleRate, 16000)
103
+
104
+ this.audioChunks.push(new Float32Array(resampledData))
105
+
106
+ // Convert to 16-bit PCM and send via WebSocket
107
+ const byteArray = this.convertTo16BitPCM(resampledData)
108
+
109
+ const finalData = new Uint8Array(1 + byteArray.length) // 创建最终数据数组
110
+ finalData[0] = 1 // 第一个字节为类型,值为1
111
+ finalData.set(byteArray, 1) // 设置实际数据
112
+
113
+ this.ws.send(finalData) // 发送最终数据
114
+ }
115
+
116
+ source.connect(processor)
117
+ processor.connect(this.audioContext.destination)
118
+ return {
119
+ code: 200,
120
+ msg: '录音初始化成功'
121
+ }
122
+ } catch (error) {
123
+ console.error('Error setting up audio processing:', error)
124
+ return {
125
+ code: 500,
126
+ msg: '录音初始化出错:' + error.message
127
+ }
128
+ }
129
+ },
130
+
131
+ stopRecording () {
132
+ console.log('停止录音')
133
+
134
+ // 停止麦克风流
135
+ if (this.audioStream) {
136
+ this.audioStream.getTracks().forEach((track) => track.stop())
137
+ }
138
+
139
+ if (this.audioContext) {
140
+ this.audioContext.close()
141
+ }
142
+
143
+ // 发送结束信号
144
+ const endSignal = new Uint8Array(1) // 创建一个长度为1的Uint8Array
145
+ endSignal[0] = 2 // 直接发送类型,值为2
146
+ this.ws.send(endSignal) // 发送结束信号
147
+
148
+ this.isRecording = false
149
+
150
+ return {
151
+ code: 200,
152
+ msg: '录音已停止'
153
+ }
154
+ },
155
+
156
+ saveAudioFile () {
157
+ const audioBuffer = this.mergeAudioChunks(this.audioChunks)
158
+
159
+ // 转换为 WAV 格式
160
+ const wavBlob = this.encodeWAV(audioBuffer, 16000)
161
+
162
+ // 创建下载链接并触发下载
163
+ const url = URL.createObjectURL(wavBlob)
164
+ const a = document.createElement('a')
165
+ a.style.display = 'none'
166
+ a.href = url
167
+ a.download = 'recording.wav'
168
+ document.body.appendChild(a)
169
+ a.click()
170
+ window.URL.revokeObjectURL(url)
171
+ },
172
+
173
+ mergeAudioChunks (chunks) {
174
+ const length = chunks.reduce((sum, chunk) => sum + chunk.length, 0)
175
+ const result = new Float32Array(length)
176
+ let offset = 0
177
+ for (const chunk of chunks) {
178
+ result.set(chunk, offset)
179
+ offset += chunk.length
180
+ }
181
+ return result
182
+ },
183
+
184
+ encodeWAV (samples, sampleRate) {
185
+ const buffer = new ArrayBuffer(44 + samples.length * 2)
186
+ const view = new DataView(buffer)
187
+
188
+ const writeString = (view, offset, string) => {
189
+ for (let i = 0; i < string.length; i++) {
190
+ view.setUint8(offset + i, string.charCodeAt(i))
191
+ }
192
+ }
193
+
194
+ writeString(view, 0, 'RIFF')
195
+ view.setUint32(4, 36 + samples.length * 2, true)
196
+ writeString(view, 8, 'WAVE')
197
+
198
+ writeString(view, 12, 'fmt ')
199
+ view.setUint32(16, 16, true)
200
+ view.setUint16(20, 1, true)
201
+ view.setUint16(22, 1, true)
202
+ view.setUint32(24, sampleRate, true)
203
+ view.setUint32(28, sampleRate * 2, true)
204
+ view.setUint16(32, 2, true)
205
+ view.setUint16(34, 16, true)
206
+
207
+ writeString(view, 36, 'data')
208
+ view.setUint32(40, samples.length * 2, true)
209
+
210
+ let offset = 44
211
+ for (let i = 0; i < samples.length; i++) {
212
+ const s = Math.max(-1, Math.min(1, samples[i]))
213
+ view.setInt16(offset, s < 0 ? s * 0x8000 : s * 0x7fff, true)
214
+ offset += 2
215
+ }
216
+
217
+ return new Blob([buffer], { type: 'audio/wav' })
218
+ },
219
+
220
+ resample (data, inputSampleRate, outputSampleRate) {
221
+ if (inputSampleRate === outputSampleRate) {
222
+ return data
223
+ }
224
+ const sampleRateRatio = inputSampleRate / outputSampleRate
225
+ const newLength = Math.round(data.length / sampleRateRatio)
226
+ const resampledData = new Float32Array(newLength)
227
+ for (let i = 0; i < newLength; i++) {
228
+ const index = Math.round(i * sampleRateRatio)
229
+ resampledData[i] = data[index]
230
+ }
231
+ return resampledData
232
+ },
233
+
234
+ convertTo16BitPCM (data) {
235
+ const output = new Int16Array(data.length)
236
+ for (let i = 0; i < data.length; i++) {
237
+ output[i] = Math.max(-1, Math.min(1, data[i])) * 0x7fff
238
+ }
239
+ return new Uint8Array(output.buffer)
240
+ },
241
+
242
+ async getRecordingData () {
243
+ return new Promise((resolve) => {
244
+ this.resolvePromise = resolve
245
+
246
+ if (!this.ws) {
247
+ // 如果 WebSocket 未初始化,直接拒绝
248
+ console.log('错误结束')
249
+ resolve(this.inputData)
250
+ }
251
+ })
252
+ },
253
+
254
+ resRecordingData () {
255
+ }
256
+ }
257
+ }
258
+ }
@@ -1,23 +1,23 @@
1
- import GetLoginInfoService from '@vue2-client/base-client/plugins/GetLoginInfoService'
2
- import GetAppDataService from '@vue2-client/base-client/plugins/AppData'
3
- import getConfig from '@vue2-client/base-client/plugins/Config'
4
- import moment from '@vue2-client/base-client/plugins/moment'
5
- import recording from '@vue2-client/base-client/plugins/Recording'
6
-
7
- import VueI18nPlugin from './i18n-extend'
8
- import AuthorityPlugin from './authority-plugin'
9
- import TabsPagePlugin from './tabs-page-plugin'
10
-
11
- const Plugins = {
12
- install: function (Vue) {
13
- Vue.use(GetLoginInfoService)
14
- Vue.use(GetAppDataService)
15
- Vue.use(getConfig)
16
- Vue.use(moment)
17
- Vue.use(VueI18nPlugin)
18
- Vue.use(AuthorityPlugin)
19
- Vue.use(TabsPagePlugin)
20
- Vue.use(recording)
21
- }
22
- }
23
- export default Plugins
1
+ import GetLoginInfoService from '@vue2-client/base-client/plugins/GetLoginInfoService'
2
+ import GetAppDataService from '@vue2-client/base-client/plugins/AppData'
3
+ import getConfig from '@vue2-client/base-client/plugins/Config'
4
+ import moment from '@vue2-client/base-client/plugins/moment'
5
+ import recording from '@vue2-client/base-client/plugins/Recording'
6
+
7
+ import VueI18nPlugin from './i18n-extend'
8
+ import AuthorityPlugin from './authority-plugin'
9
+ import TabsPagePlugin from './tabs-page-plugin'
10
+
11
+ const Plugins = {
12
+ install: function (Vue) {
13
+ Vue.use(GetLoginInfoService)
14
+ Vue.use(GetAppDataService)
15
+ Vue.use(getConfig)
16
+ Vue.use(moment)
17
+ Vue.use(VueI18nPlugin)
18
+ Vue.use(AuthorityPlugin)
19
+ Vue.use(TabsPagePlugin)
20
+ Vue.use(recording)
21
+ }
22
+ }
23
+ export default Plugins
@@ -1,39 +1,39 @@
1
- const TabsPagePlugin = {
2
- install (Vue) {
3
- Vue.mixin({
4
- methods: {
5
- $closePage (closeRoute, nextRoute) {
6
- const event = new CustomEvent('page:close', { detail: { closeRoute, nextRoute } })
7
- window.dispatchEvent(event)
8
- },
9
- $refreshPage (route) {
10
- const path = typeof route === 'object' ? route.path : route
11
- const event = new CustomEvent('page:refresh', { detail: { pageKey: path } })
12
- window.dispatchEvent(event)
13
- },
14
- $openPage (route, title) {
15
- this.$setPageTitle(route, title)
16
- this.$router.push(route)
17
- },
18
- $setPageTitle (route, title) {
19
- if (title) {
20
- // let path = typeof route === 'object' ? route.path : route
21
- // path = path && path.split('?')[0]
22
- const path = typeof route === 'object' ? this.$router.resolve(route).route.fullPath : route
23
- this.$store.commit('setting/setCustomTitle', { path, title })
24
- }
25
- }
26
- },
27
- computed: {
28
- customTitle () {
29
- const customTitles = this.$store.state.setting.customTitles
30
- // const path = this.$route.path.split('?')[0]
31
- const custom = customTitles.find(item => item.path === this.$route.fullPath)
32
- return custom && custom.title
33
- }
34
- }
35
- })
36
- }
37
- }
38
-
39
- export default TabsPagePlugin
1
+ const TabsPagePlugin = {
2
+ install (Vue) {
3
+ Vue.mixin({
4
+ methods: {
5
+ $closePage (closeRoute, nextRoute) {
6
+ const event = new CustomEvent('page:close', { detail: { closeRoute, nextRoute } })
7
+ window.dispatchEvent(event)
8
+ },
9
+ $refreshPage (route) {
10
+ const path = typeof route === 'object' ? route.path : route
11
+ const event = new CustomEvent('page:refresh', { detail: { pageKey: path } })
12
+ window.dispatchEvent(event)
13
+ },
14
+ $openPage (route, title) {
15
+ this.$setPageTitle(route, title)
16
+ this.$router.push(route)
17
+ },
18
+ $setPageTitle (route, title) {
19
+ if (title) {
20
+ // let path = typeof route === 'object' ? route.path : route
21
+ // path = path && path.split('?')[0]
22
+ const path = typeof route === 'object' ? this.$router.resolve(route).route.fullPath : route
23
+ this.$store.commit('setting/setCustomTitle', { path, title })
24
+ }
25
+ }
26
+ },
27
+ computed: {
28
+ customTitle () {
29
+ const customTitles = this.$store.state.setting.customTitles
30
+ // const path = this.$route.path.split('?')[0]
31
+ const custom = customTitles.find(item => item.path === this.$route.fullPath)
32
+ return custom && custom.title
33
+ }
34
+ }
35
+ })
36
+ }
37
+ }
38
+
39
+ export default TabsPagePlugin