@yinuo-ngm/server 1.0.15 → 1.0.16

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 (326) hide show
  1. package/lib/plugins/error-handler.plugin.js +5 -0
  2. package/lib/routes/api-client/hub-token.routes.js +22 -0
  3. package/lib/routes/index.js +2 -0
  4. package/lib/routes/node-version.routes.d.ts +2 -0
  5. package/lib/routes/node-version.routes.js +56 -0
  6. package/lib/routes/project.routes.js +5 -0
  7. package/lib/routes/sprite-browse.routes.js +19 -5
  8. package/lib/routes/sprite.routes.js +17 -11
  9. package/lib/routes/static-files.routes.js +16 -0
  10. package/lib/routes/task.routes.js +7 -0
  11. package/package.json +3 -3
  12. package/www/3rdpartylicenses.txt +14 -66
  13. package/www/browser/chunk-2BZRE4G7.js +1 -0
  14. package/www/browser/chunk-2X3MRS27.js +1 -0
  15. package/www/browser/chunk-4KETC6EB.js +1 -0
  16. package/www/browser/chunk-5T5KA5PG.js +1 -0
  17. package/www/browser/chunk-6CGHNKJI.js +1 -0
  18. package/www/browser/chunk-76TVIB33.js +63 -0
  19. package/www/browser/chunk-7J24TP36.js +1 -0
  20. package/www/browser/chunk-ACAZUX6C.js +1 -0
  21. package/www/browser/chunk-B6MBYCXI.js +1 -0
  22. package/www/browser/chunk-BYEU6KGP.js +2 -0
  23. package/www/browser/chunk-CZ5AZ3VW.js +1 -0
  24. package/www/browser/chunk-DW7F5PEA.js +1 -0
  25. package/www/browser/chunk-DXF7BVK5.js +1 -0
  26. package/www/browser/chunk-EEVPZGEY.js +1 -0
  27. package/www/browser/chunk-G2W3B7TJ.js +1 -0
  28. package/www/browser/chunk-GDWS2L66.js +1 -0
  29. package/www/browser/chunk-HFZLJHYR.js +1 -0
  30. package/www/browser/chunk-HGONFYP6.js +1 -0
  31. package/www/browser/chunk-HHBPULJW.js +2 -0
  32. package/www/browser/chunk-HRXCR3IN.js +1 -0
  33. package/www/browser/chunk-INL2PELS.js +1 -0
  34. package/www/browser/chunk-JHMEKUZ5.js +1 -0
  35. package/www/browser/chunk-JU3TEDBV.js +37 -0
  36. package/www/browser/chunk-JZULA5JV.js +1 -0
  37. package/www/browser/chunk-KVFR7GFV.js +20 -0
  38. package/www/browser/chunk-L5D75AMV.js +1 -0
  39. package/www/browser/chunk-L7TMCSHV.js +1 -0
  40. package/www/browser/chunk-LQ5OXSW7.js +3 -0
  41. package/www/browser/chunk-MVQTKINJ.js +1 -0
  42. package/www/browser/chunk-N4LRZJBP.js +1 -0
  43. package/www/browser/chunk-O2EYEF7J.js +1 -0
  44. package/www/browser/chunk-OMDHJIUB.js +1 -0
  45. package/www/browser/chunk-OWUAAOHW.js +2 -0
  46. package/www/browser/chunk-PIK5YPIB.js +1 -0
  47. package/www/browser/chunk-RHLQRQDK.js +9 -0
  48. package/www/browser/chunk-RW2JPJV7.js +1 -0
  49. package/www/browser/chunk-S3SJ4VVM.js +11 -0
  50. package/www/browser/chunk-SIVPP74B.js +0 -0
  51. package/www/browser/chunk-SPRWNZHF.js +15 -0
  52. package/www/browser/chunk-SQQNR223.js +1 -0
  53. package/www/browser/chunk-SVQWPHF5.js +1 -0
  54. package/www/browser/chunk-SYCNSLAW.js +4 -0
  55. package/www/browser/chunk-T3KK7ZXB.js +2 -0
  56. package/www/browser/chunk-TMX5TTV3.js +1 -0
  57. package/www/browser/chunk-UFY3FLDK.js +1 -0
  58. package/www/browser/chunk-UJOHBN2Y.js +1 -0
  59. package/www/browser/chunk-UQGCUFNM.js +1 -0
  60. package/www/browser/chunk-UXXWRMM6.js +1 -0
  61. package/www/browser/chunk-UZRJGJTD.js +2 -0
  62. package/www/browser/chunk-WD4IAQR3.js +1 -0
  63. package/www/browser/chunk-WF2QTF5L.js +1 -0
  64. package/www/browser/chunk-WI67LAOV.js +4 -0
  65. package/www/browser/chunk-WNCM6QKB.js +1 -0
  66. package/www/browser/chunk-XJ5KZQNN.js +1 -0
  67. package/www/browser/chunk-YETDFSQE.js +1 -0
  68. package/www/browser/chunk-YMTC5GZK.js +1 -0
  69. package/www/browser/chunk-YVZHJ76K.js +1 -0
  70. package/www/browser/chunk-ZNTJRLVH.js +1 -0
  71. package/www/browser/dark.css +1 -30433
  72. package/www/browser/default.css +1 -30149
  73. package/www/browser/index.html +3 -3
  74. package/www/browser/main-6LN5C22E.js +34 -0
  75. package/www/browser/scripts-U25HCVEI.js +6 -0
  76. package/www/browser/styles-ROAHD7MY.css +1 -0
  77. package/www/browser/add-widget-drawer.component.css.map +0 -7
  78. package/www/browser/advanced-editor.component.css.map +0 -7
  79. package/www/browser/api-client.component.css.map +0 -7
  80. package/www/browser/api-history-drawer.component.css.map +0 -7
  81. package/www/browser/app.css.map +0 -7
  82. package/www/browser/attachment-viewer.component.css.map +0 -7
  83. package/www/browser/auth-editor.component.css.map +0 -7
  84. package/www/browser/body-editor.component.css.map +0 -7
  85. package/www/browser/chunk-2YSUXBGC.js +0 -627
  86. package/www/browser/chunk-2YSUXBGC.js.map +0 -1
  87. package/www/browser/chunk-3G2GEOPV.js +0 -456
  88. package/www/browser/chunk-3G2GEOPV.js.map +0 -1
  89. package/www/browser/chunk-3L72DF3R.js +0 -1683
  90. package/www/browser/chunk-3L72DF3R.js.map +0 -1
  91. package/www/browser/chunk-3MCIETCQ.js +0 -8279
  92. package/www/browser/chunk-3MCIETCQ.js.map +0 -1
  93. package/www/browser/chunk-665WC4RU.js +0 -5383
  94. package/www/browser/chunk-665WC4RU.js.map +0 -1
  95. package/www/browser/chunk-6QMSEZPT.js +0 -10044
  96. package/www/browser/chunk-6QMSEZPT.js.map +0 -1
  97. package/www/browser/chunk-6TBQERYX.js +0 -280
  98. package/www/browser/chunk-6TBQERYX.js.map +0 -1
  99. package/www/browser/chunk-6UW4MRJZ.js +0 -43
  100. package/www/browser/chunk-6UW4MRJZ.js.map +0 -7
  101. package/www/browser/chunk-6XUMIL3W.js +0 -5495
  102. package/www/browser/chunk-6XUMIL3W.js.map +0 -1
  103. package/www/browser/chunk-724YOJI3.js +0 -903
  104. package/www/browser/chunk-724YOJI3.js.map +0 -1
  105. package/www/browser/chunk-766T7YES.js +0 -437
  106. package/www/browser/chunk-766T7YES.js.map +0 -1
  107. package/www/browser/chunk-7FC7DN65.js +0 -728
  108. package/www/browser/chunk-7FC7DN65.js.map +0 -1
  109. package/www/browser/chunk-APGQRYWX.js +0 -156
  110. package/www/browser/chunk-APGQRYWX.js.map +0 -7
  111. package/www/browser/chunk-AQHSGTHS.js +0 -1960
  112. package/www/browser/chunk-AQHSGTHS.js.map +0 -1
  113. package/www/browser/chunk-CTOEAJQK.js +0 -40
  114. package/www/browser/chunk-CTOEAJQK.js.map +0 -7
  115. package/www/browser/chunk-DEGQJKKZ.js +0 -409
  116. package/www/browser/chunk-DEGQJKKZ.js.map +0 -1
  117. package/www/browser/chunk-DIJX2663.js +0 -1166
  118. package/www/browser/chunk-DIJX2663.js.map +0 -1
  119. package/www/browser/chunk-E4XD4GLT.js +0 -427
  120. package/www/browser/chunk-E4XD4GLT.js.map +0 -1
  121. package/www/browser/chunk-EQOY6A3M.js +0 -212
  122. package/www/browser/chunk-EQOY6A3M.js.map +0 -1
  123. package/www/browser/chunk-ETTBRXVA.js +0 -2643
  124. package/www/browser/chunk-ETTBRXVA.js.map +0 -1
  125. package/www/browser/chunk-FLSUSPBD.js +0 -5569
  126. package/www/browser/chunk-FLSUSPBD.js.map +0 -1
  127. package/www/browser/chunk-FZNHBEAZ.js +0 -102
  128. package/www/browser/chunk-FZNHBEAZ.js.map +0 -1
  129. package/www/browser/chunk-GJC7CZIJ.js +0 -361
  130. package/www/browser/chunk-GJC7CZIJ.js.map +0 -7
  131. package/www/browser/chunk-GMCNMOTD.js +0 -844
  132. package/www/browser/chunk-GMCNMOTD.js.map +0 -7
  133. package/www/browser/chunk-H43HGCRW.js +0 -198
  134. package/www/browser/chunk-H43HGCRW.js.map +0 -7
  135. package/www/browser/chunk-J447GBHM.js +0 -160
  136. package/www/browser/chunk-J447GBHM.js.map +0 -1
  137. package/www/browser/chunk-JN3VOWP7.js +0 -384
  138. package/www/browser/chunk-JN3VOWP7.js.map +0 -1
  139. package/www/browser/chunk-KSHAGY2M.js +0 -399
  140. package/www/browser/chunk-KSHAGY2M.js.map +0 -7
  141. package/www/browser/chunk-KV72AKOD.js +0 -59
  142. package/www/browser/chunk-KV72AKOD.js.map +0 -7
  143. package/www/browser/chunk-LAVMY2SJ.js +0 -26
  144. package/www/browser/chunk-LAVMY2SJ.js.map +0 -7
  145. package/www/browser/chunk-LLRVGHG5.js +0 -73
  146. package/www/browser/chunk-LLRVGHG5.js.map +0 -7
  147. package/www/browser/chunk-LPME4AJ3.js +0 -196
  148. package/www/browser/chunk-LPME4AJ3.js.map +0 -1
  149. package/www/browser/chunk-LVPSURVU.js +0 -4615
  150. package/www/browser/chunk-LVPSURVU.js.map +0 -1
  151. package/www/browser/chunk-MMPO7QLO.js +0 -4146
  152. package/www/browser/chunk-MMPO7QLO.js.map +0 -7
  153. package/www/browser/chunk-O7LB6VFM.js +0 -1953
  154. package/www/browser/chunk-O7LB6VFM.js.map +0 -1
  155. package/www/browser/chunk-P5CWA4FO.js +0 -685
  156. package/www/browser/chunk-P5CWA4FO.js.map +0 -1
  157. package/www/browser/chunk-RBWIWNTL.js +0 -203
  158. package/www/browser/chunk-RBWIWNTL.js.map +0 -7
  159. package/www/browser/chunk-RUXJCM3V.js +0 -26199
  160. package/www/browser/chunk-RUXJCM3V.js.map +0 -1
  161. package/www/browser/chunk-S77VVYUZ.js +0 -168
  162. package/www/browser/chunk-S77VVYUZ.js.map +0 -1
  163. package/www/browser/chunk-SCXPYFOB.js +0 -4316
  164. package/www/browser/chunk-SCXPYFOB.js.map +0 -1
  165. package/www/browser/chunk-SS73S33S.js +0 -471
  166. package/www/browser/chunk-SS73S33S.js.map +0 -7
  167. package/www/browser/chunk-T6UAOWNP.js +0 -600
  168. package/www/browser/chunk-T6UAOWNP.js.map +0 -1
  169. package/www/browser/chunk-TEW4MY4J.js +0 -148
  170. package/www/browser/chunk-TEW4MY4J.js.map +0 -7
  171. package/www/browser/chunk-TVORF3SF.js +0 -82
  172. package/www/browser/chunk-TVORF3SF.js.map +0 -7
  173. package/www/browser/chunk-UAN42EUZ.js +0 -2147
  174. package/www/browser/chunk-UAN42EUZ.js.map +0 -1
  175. package/www/browser/chunk-ULOHDK7Y.js +0 -1
  176. package/www/browser/chunk-ULOHDK7Y.js.map +0 -7
  177. package/www/browser/chunk-UYJ3FVRV.js +0 -3978
  178. package/www/browser/chunk-UYJ3FVRV.js.map +0 -1
  179. package/www/browser/chunk-VXHZMSDM.js +0 -5509
  180. package/www/browser/chunk-VXHZMSDM.js.map +0 -1
  181. package/www/browser/chunk-VYNQPZQO.js +0 -281
  182. package/www/browser/chunk-VYNQPZQO.js.map +0 -1
  183. package/www/browser/chunk-W3J23PZI.js +0 -9213
  184. package/www/browser/chunk-W3J23PZI.js.map +0 -1
  185. package/www/browser/chunk-W5HGHCQT.js +0 -1642
  186. package/www/browser/chunk-W5HGHCQT.js.map +0 -7
  187. package/www/browser/chunk-XF5H7E4L.js +0 -4723
  188. package/www/browser/chunk-XF5H7E4L.js.map +0 -1
  189. package/www/browser/chunk-XNFNEBMY.js +0 -398
  190. package/www/browser/chunk-XNFNEBMY.js.map +0 -7
  191. package/www/browser/chunk-XQY5SPGI.js +0 -30811
  192. package/www/browser/chunk-XQY5SPGI.js.map +0 -1
  193. package/www/browser/chunk-Y7JBZHNK.js +0 -514
  194. package/www/browser/chunk-Y7JBZHNK.js.map +0 -1
  195. package/www/browser/chunk-YWHRP4X3.js +0 -406
  196. package/www/browser/chunk-YWHRP4X3.js.map +0 -1
  197. package/www/browser/chunk-Z7FJIV62.js +0 -95
  198. package/www/browser/chunk-Z7FJIV62.js.map +0 -7
  199. package/www/browser/chunk-ZBZHXS46.js +0 -1674
  200. package/www/browser/chunk-ZBZHXS46.js.map +0 -1
  201. package/www/browser/chunk-ZZA5NVAI.js +0 -735
  202. package/www/browser/chunk-ZZA5NVAI.js.map +0 -1
  203. package/www/browser/collection-modal.component.css.map +0 -7
  204. package/www/browser/collection-tree-item.component.css.map +0 -7
  205. package/www/browser/collection-tree.component.css.map +0 -7
  206. package/www/browser/config-change-bar-component.css.map +0 -7
  207. package/www/browser/config-item-component.css.map +0 -7
  208. package/www/browser/config-nav-component.css.map +0 -7
  209. package/www/browser/config-section-component.css.map +0 -7
  210. package/www/browser/create-summary-aside.component.css.map +0 -7
  211. package/www/browser/curl-actions.component.css.map +0 -7
  212. package/www/browser/dark.css.map +0 -7
  213. package/www/browser/dashboard-canvas.component.css.map +0 -7
  214. package/www/browser/dashboard.component.css.map +0 -7
  215. package/www/browser/default.css.map +0 -7
  216. package/www/browser/detail-item-card.component.css.map +0 -7
  217. package/www/browser/ellipsis-text.component.css.map +0 -7
  218. package/www/browser/env-modal.component.css.map +0 -7
  219. package/www/browser/env-picker.component.css.map +0 -7
  220. package/www/browser/feedback.component.css.map +0 -7
  221. package/www/browser/fs-explorer.component.css.map +0 -7
  222. package/www/browser/git-import-modal.component.css.map +0 -7
  223. package/www/browser/hub-v2-personal-token-modal.component.css.map +0 -7
  224. package/www/browser/issue-action-area.component.css.map +0 -7
  225. package/www/browser/issue-add-participants-dialog.component.css.map +0 -7
  226. package/www/browser/issue-assign-dialog.component.css.map +0 -7
  227. package/www/browser/issue-attachment-area.component.css.map +0 -7
  228. package/www/browser/issue-base-info-area.component.css.map +0 -7
  229. package/www/browser/issue-branches.component.css.map +0 -7
  230. package/www/browser/issue-close-dialog.component.css.map +0 -7
  231. package/www/browser/issue-collaborators-panel.component.css.map +0 -7
  232. package/www/browser/issue-comment-editor.component.css.map +0 -7
  233. package/www/browser/issue-create-branch-dialog.component.css.map +0 -7
  234. package/www/browser/issue-description-area.component.css.map +0 -7
  235. package/www/browser/issue-detail.component.css.map +0 -7
  236. package/www/browser/issue-resolve-dialog.component.css.map +0 -7
  237. package/www/browser/issue-start-own-branch-dialog.component.css.map +0 -7
  238. package/www/browser/issues-list-table.component.css.map +0 -7
  239. package/www/browser/issues.component.css.map +0 -7
  240. package/www/browser/kill-port-widget.component.css.map +0 -7
  241. package/www/browser/kv-table.component.css.map +0 -7
  242. package/www/browser/layout-footer.component.css.map +0 -7
  243. package/www/browser/layout-header.component.css.map +0 -7
  244. package/www/browser/layout-menu.component.css.map +0 -7
  245. package/www/browser/layout-project-nav.component.css.map +0 -7
  246. package/www/browser/layout-sidebar.component.css.map +0 -7
  247. package/www/browser/layout.component.css.map +0 -7
  248. package/www/browser/less-viewport-component.css.map +0 -7
  249. package/www/browser/main.js +0 -1872
  250. package/www/browser/main.js.map +0 -1
  251. package/www/browser/markdown-viewer.component.css.map +0 -7
  252. package/www/browser/news-feed-widget.component.css.map +0 -7
  253. package/www/browser/ng-devtool.component.css.map +0 -7
  254. package/www/browser/nginx-config-editor.component.css.map +0 -7
  255. package/www/browser/nginx-log-viewer.component.css.map +0 -7
  256. package/www/browser/nginx-secondary-logs-tab.component.css.map +0 -7
  257. package/www/browser/nginx-secondary-perf-tab.component.css.map +0 -7
  258. package/www/browser/nginx-secondary-settings-tab.component.css.map +0 -7
  259. package/www/browser/nginx-secondary-ssl-tab.component.css.map +0 -7
  260. package/www/browser/nginx-secondary-test-tab.component.css.map +0 -7
  261. package/www/browser/nginx-secondary-traffic-tab.component.css.map +0 -7
  262. package/www/browser/nginx-secondary-upstream-tab.component.css.map +0 -7
  263. package/www/browser/nginx-section-card.component.css.map +0 -7
  264. package/www/browser/nginx-server-drawer.component.css.map +0 -7
  265. package/www/browser/nginx-server-list.component.css.map +0 -7
  266. package/www/browser/nginx-stat-card.component.css.map +0 -7
  267. package/www/browser/nginx.component.css.map +0 -7
  268. package/www/browser/page-layout.component.css.map +0 -7
  269. package/www/browser/pick-workspace-modal.component.css.map +0 -7
  270. package/www/browser/polyfills.js +0 -26584
  271. package/www/browser/polyfills.js.map +0 -7
  272. package/www/browser/project-conf.component.css.map +0 -7
  273. package/www/browser/project-create-modal.component.css.map +0 -7
  274. package/www/browser/project-create.component.css.map +0 -7
  275. package/www/browser/project-deps.component.css.map +0 -7
  276. package/www/browser/project-edit-modal.component.css.map +0 -7
  277. package/www/browser/project-import.component.css.map +0 -7
  278. package/www/browser/project-item-popover.component.css.map +0 -7
  279. package/www/browser/project-item.component.css.map +0 -7
  280. package/www/browser/project-list.component.css.map +0 -7
  281. package/www/browser/projects.component.css.map +0 -7
  282. package/www/browser/quick-task-widget.component.css.map +0 -7
  283. package/www/browser/rd-action-area.component.css.map +0 -7
  284. package/www/browser/rd-advance-stage-dialog.component.css.map +0 -7
  285. package/www/browser/rd-block-dialog.component.css.map +0 -7
  286. package/www/browser/rd-create-dialog.component.css.map +0 -7
  287. package/www/browser/rd-detail.component.css.map +0 -7
  288. package/www/browser/rd-item-card.component.css.map +0 -7
  289. package/www/browser/rd-list-board.component.css.map +0 -7
  290. package/www/browser/rd-list-table.component.css.map +0 -7
  291. package/www/browser/rd.component.css.map +0 -7
  292. package/www/browser/request-collections.component.css.map +0 -7
  293. package/www/browser/request-editor.component.css.map +0 -7
  294. package/www/browser/request-list-item.component.css.map +0 -7
  295. package/www/browser/request-list.component.css.map +0 -7
  296. package/www/browser/request-tabs-bar.component.css.map +0 -7
  297. package/www/browser/request-tabs.component.css.map +0 -7
  298. package/www/browser/request-urlbar.component.css.map +0 -7
  299. package/www/browser/response-viewer.component.css.map +0 -7
  300. package/www/browser/scripts.js +0 -245
  301. package/www/browser/scripts.js.map +0 -7
  302. package/www/browser/setting.component.css.map +0 -7
  303. package/www/browser/sprite-conf-modal.component.css.map +0 -7
  304. package/www/browser/sprite-icons-panel-component.css.map +0 -7
  305. package/www/browser/sprite-images-panel-component.css.map +0 -7
  306. package/www/browser/sprite-result-tabs.component.css.map +0 -7
  307. package/www/browser/sprite-viewport-component.css.map +0 -7
  308. package/www/browser/sprite.component.css.map +0 -7
  309. package/www/browser/step-advance.component.css.map +0 -7
  310. package/www/browser/step-basic.component.css.map +0 -7
  311. package/www/browser/step-config.component.css.map +0 -7
  312. package/www/browser/step-features.component.css.map +0 -7
  313. package/www/browser/step-preset.component.css.map +0 -7
  314. package/www/browser/step-summary-aside.component.css.map +0 -7
  315. package/www/browser/styles.css +0 -258
  316. package/www/browser/styles.css.map +0 -7
  317. package/www/browser/system-log.component.css.map +0 -7
  318. package/www/browser/task-actions.component.css.map +0 -7
  319. package/www/browser/task-console.component.css.map +0 -7
  320. package/www/browser/task-header.component.css.map +0 -7
  321. package/www/browser/task-list.component.css.map +0 -7
  322. package/www/browser/tasks.component.css.map +0 -7
  323. package/www/browser/terminal-view.component.css.map +0 -7
  324. package/www/browser/welcome-widget.component.css.map +0 -7
  325. package/www/browser/widget-base.component.css.map +0 -7
  326. package/www/browser/widget-host.component.css.map +0 -7
@@ -1,399 +0,0 @@
1
- import {
2
- require_lodash
3
- } from "./chunk-VXHZMSDM.js";
4
- import {
5
- APP_CONFIG
6
- } from "./chunk-APGQRYWX.js";
7
- import {
8
- ApiBizError,
9
- UiNotifierService
10
- } from "./chunk-2YSUXBGC.js";
11
- import {
12
- HttpErrorResponse
13
- } from "./chunk-3MCIETCQ.js";
14
- import {
15
- Injectable,
16
- __decorate,
17
- __toESM,
18
- catchError,
19
- inject,
20
- throwError
21
- } from "./chunk-XQY5SPGI.js";
22
-
23
- // src/app/core/error/error-policy.ts
24
- var ErrorPolicyCode;
25
- (function(ErrorPolicyCode2) {
26
- ErrorPolicyCode2["TASK_NOT_FOUND"] = "TASK_NOT_FOUND";
27
- ErrorPolicyCode2["TASK_ALREADY_RUNNING"] = "TASK_ALREADY_RUNNING";
28
- ErrorPolicyCode2["PROCESS_SPAWN_FAILED"] = "PROCESS_SPAWN_FAILED";
29
- ErrorPolicyCode2["TASK_SPEC_NOT_FOUND"] = "TASK_SPEC_NOT_FOUND";
30
- ErrorPolicyCode2["TASK_NOT_RUNNABLE"] = "TASK_NOT_RUNNABLE";
31
- ErrorPolicyCode2["RUN_NOT_FOUND"] = "RUN_NOT_FOUND";
32
- ErrorPolicyCode2["TASK_ID_REQUIRED"] = "TASK_ID_REQUIRED";
33
- ErrorPolicyCode2["COMMAND_NOT_FOUND"] = "COMMAND_NOT_FOUND";
34
- ErrorPolicyCode2["PROJECT_NOT_FOUND"] = "PROJECT_NOT_FOUND";
35
- ErrorPolicyCode2["PROJECT_ROOT_INVALID"] = "PROJECT_ROOT_INVALID";
36
- ErrorPolicyCode2["PROJECT_ALREADY_EXISTS"] = "PROJECT_ALREADY_EXISTS";
37
- ErrorPolicyCode2["INVALID_NAME"] = "INVALID_NAME";
38
- ErrorPolicyCode2["TARGET_EXISTS"] = "TARGET_EXISTS";
39
- ErrorPolicyCode2["INVALID_REPO_URL"] = "INVALID_REPO_URL";
40
- ErrorPolicyCode2["GIT_CHECKOUT_FAILED"] = "GIT_CHECKOUT_FAILED";
41
- ErrorPolicyCode2["BOOTSTRAP_NOT_IN_PICK_STATE"] = "BOOTSTRAP_NOT_IN_PICK_STATE";
42
- ErrorPolicyCode2["BOOTSTRAP_CTX_NOT_FOUND"] = "BOOTSTRAP_CTX_NOT_FOUND";
43
- ErrorPolicyCode2["BOOTSTRAP_INVALID_PICKED_ROOT"] = "BOOTSTRAP_INVALID_PICKED_ROOT";
44
- ErrorPolicyCode2["BOOTSTRAP_NOT_WAITING_PICK"] = "BOOTSTRAP_NOT_WAITING_PICK";
45
- ErrorPolicyCode2["PROJECT_ANGULAR_JSON_INVALID"] = "PROJECT_ANGULAR_JSON_INVALID";
46
- ErrorPolicyCode2["PROJECT_ANGULAR_JSON_NOT_FOUND"] = "PROJECT_ANGULAR_JSON_NOT_FOUND";
47
- ErrorPolicyCode2["PROJECT_VITE_CONFIG_INVALID"] = "PROJECT_VITE_CONFIG_INVALID";
48
- ErrorPolicyCode2["PROJECT_VUE_CONFIG_NOT_FOUND"] = "PROJECT_VUE_CONFIG_NOT_FOUND";
49
- ErrorPolicyCode2["CONFIG_BACKUP_NOT_FOUND"] = "CONFIG_BACKUP_NOT_FOUND";
50
- ErrorPolicyCode2["CONFIG_READ_FAILED"] = "CONFIG_READ_FAILED";
51
- ErrorPolicyCode2["CONFIG_CONFLICT"] = "CONFIG_CONFLICT";
52
- ErrorPolicyCode2["FS_ALREADY_EXISTS"] = "FS_ALREADY_EXISTS";
53
- ErrorPolicyCode2["FS_PATH_NOT_FOUND"] = "FS_PATH_NOT_FOUND";
54
- ErrorPolicyCode2["FS_PERMISSION_DENIED"] = "FS_PERMISSION_DENIED";
55
- ErrorPolicyCode2["FS_EXISTS_FAILED"] = "FS_EXISTS_FAILED";
56
- ErrorPolicyCode2["FS_INVALID_NAME"] = "FS_INVALID_NAME";
57
- ErrorPolicyCode2["FS_MKDIR_FAILED"] = "FS_MKDIR_FAILED";
58
- ErrorPolicyCode2["INTERNAL_ERROR"] = "INTERNAL_ERROR";
59
- ErrorPolicyCode2["CONNECTION_LOST"] = "CONNECTION_LOST";
60
- ErrorPolicyCode2["HTTP_ERROR"] = "HTTP_ERROR";
61
- ErrorPolicyCode2["UNAUTHORIZED"] = "UNAUTHORIZED";
62
- ErrorPolicyCode2["UNKNOWN_ERROR"] = "UNKNOWN_ERROR";
63
- ErrorPolicyCode2["WS_ERROR"] = "WS_ERROR";
64
- ErrorPolicyCode2["WS_CLOSED"] = "WS_CLOSED";
65
- ErrorPolicyCode2["BAD_JSON"] = "BAD_JSON";
66
- ErrorPolicyCode2["BAD_MSG"] = "BAD_MSG";
67
- ErrorPolicyCode2["OP_NOT_SUPPORTED"] = "OP_NOT_SUPPORTED";
68
- ErrorPolicyCode2["HANDLER_FAILED"] = "HANDLER_FAILED";
69
- ErrorPolicyCode2["TOPIC_NOT_FOUND"] = "TOPIC_NOT_FOUND";
70
- ErrorPolicyCode2["OP_NOT_FOUND"] = "OP_NOT_FOUND";
71
- ErrorPolicyCode2["DEP_INSTALL_FAILED"] = "DEP_INSTALL_FAILED";
72
- ErrorPolicyCode2["DEP_UNINSTALL_FAILED"] = "DEP_UNINSTALL_FAILED";
73
- ErrorPolicyCode2["DEP_NOT_FOUND"] = "DEP_NOT_FOUND";
74
- ErrorPolicyCode2["DASHBOARD_CONFLICT"] = "DASHBOARD_CONFLICT";
75
- ErrorPolicyCode2["WIDGET_NOT_FOUND"] = "WIDGET_NOT_FOUND";
76
- ErrorPolicyCode2["WIDGET_LOCKED"] = "WIDGET_LOCKED";
77
- ErrorPolicyCode2["KILL_PORT_FAILED"] = "KILL_PORT_FAILED";
78
- ErrorPolicyCode2["INVALID_PORT"] = "INVALID_PORT";
79
- ErrorPolicyCode2["RSS_FETCH_FAILED"] = "RSS_FETCH_FAILED";
80
- ErrorPolicyCode2["INVALID_RSS_URL"] = "INVALID_RSS_URL";
81
- ErrorPolicyCode2["COLLECTION_NOT_EMPTY"] = "COLLECTION_NOT_EMPTY";
82
- ErrorPolicyCode2["INVALID_JSON"] = "INVALID_JSON";
83
- ErrorPolicyCode2["INVALID_MSG"] = "INVALID_MSG";
84
- })(ErrorPolicyCode || (ErrorPolicyCode = {}));
85
- var ERROR_POLICY = {
86
- /* ---------- task ---------- */
87
- TASK_NOT_FOUND: {
88
- level: "silent"
89
- // 常见:任务刚结束
90
- },
91
- TASK_ALREADY_RUNNING: {
92
- level: "toast",
93
- message: "\u4EFB\u52A1\u5DF2\u5728\u8FD0\u884C\u4E2D"
94
- },
95
- PROCESS_SPAWN_FAILED: {
96
- level: "toast",
97
- message: "\u4EFB\u52A1\u542F\u52A8\u5931\u8D25"
98
- },
99
- TASK_SPEC_NOT_FOUND: {
100
- level: "toast",
101
- message: "\u4EFB\u52A1\u89C4\u683C\u672A\u627E\u5230"
102
- },
103
- TASK_NOT_RUNNABLE: {
104
- level: "toast",
105
- message: "\u4EFB\u52A1\u4E0D\u53EF\u8FD0\u884C"
106
- },
107
- RUN_NOT_FOUND: {
108
- level: "toast",
109
- message: "\u8FD0\u884C\u5B9E\u4F8B\u672A\u627E\u5230"
110
- },
111
- TASK_ID_REQUIRED: {
112
- level: "toast",
113
- message: "\u4EFB\u52A1 ID \u4E3A\u5FC5\u586B\u9879"
114
- },
115
- COMMAND_NOT_FOUND: {
116
- level: "toast",
117
- message: "\u547D\u4EE4\u672A\u627E\u5230\uFF0C\u8BF7\u786E\u4FDD\u5DF2\u6B63\u786E\u5B89\u88C5\u6240\u9700\u8F6F\u4EF6"
118
- },
119
- /* ---------- project ---------- */
120
- PROJECT_NOT_FOUND: {
121
- level: "toast",
122
- message: "\u9879\u76EE\u4E0D\u5B58\u5728"
123
- },
124
- PROJECT_ROOT_INVALID: {
125
- level: "toast",
126
- message: "\u9879\u76EE\u6839\u76EE\u5F55\u65E0\u6548"
127
- },
128
- PROJECT_ALREADY_EXISTS: {
129
- level: "toast",
130
- message: "\u9879\u76EE\u5DF2\u5B58\u5728"
131
- },
132
- /** project creation */
133
- INVALID_NAME: {
134
- level: "toast",
135
- message: "\u65E0\u6548\u7684\u9879\u76EE\u540D\u79F0"
136
- },
137
- TARGET_EXISTS: {
138
- level: "toast",
139
- message: "\u76EE\u6807\u8DEF\u5F84\u5DF2\u5B58\u5728"
140
- },
141
- INVALID_REPO_URL: {
142
- level: "toast",
143
- message: "\u65E0\u6548\u7684\u4ED3\u5E93\u5730\u5740"
144
- },
145
- GIT_CHECKOUT_FAILED: {
146
- level: "toast",
147
- message: "Git \u68C0\u51FA\u5931\u8D25"
148
- },
149
- BOOTSTRAP_NOT_IN_PICK_STATE: {
150
- level: "toast",
151
- message: "\u5F53\u524D\u4E0D\u5904\u4E8E\u9009\u62E9\u6839\u76EE\u5F55\u72B6\u6001"
152
- },
153
- BOOTSTRAP_CTX_NOT_FOUND: {
154
- level: "toast",
155
- message: "\u5F15\u5BFC\u4E0A\u4E0B\u6587\u672A\u627E\u5230"
156
- },
157
- BOOTSTRAP_INVALID_PICKED_ROOT: {
158
- level: "toast",
159
- message: "\u9009\u62E9\u7684\u6839\u76EE\u5F55\u65E0\u6548"
160
- },
161
- BOOTSTRAP_NOT_WAITING_PICK: {
162
- level: "toast",
163
- message: "\u5F15\u5BFC\u672A\u5904\u4E8E\u7B49\u5F85\u9009\u62E9\u72B6\u6001"
164
- },
165
- /** project analysis */
166
- PROJECT_ANGULAR_JSON_INVALID: {
167
- level: "toast",
168
- message: "angular.json \u65E0\u6548"
169
- },
170
- PROJECT_ANGULAR_JSON_NOT_FOUND: {
171
- level: "toast",
172
- message: "angular.json \u672A\u627E\u5230"
173
- },
174
- PROJECT_VITE_CONFIG_INVALID: {
175
- level: "toast",
176
- message: "vite \u914D\u7F6E\u65E0\u6548"
177
- },
178
- PROJECT_VUE_CONFIG_NOT_FOUND: {
179
- level: "toast",
180
- message: "vite \u914D\u7F6E\u672A\u627E\u5230"
181
- },
182
- /** config */
183
- CONFIG_BACKUP_NOT_FOUND: {
184
- level: "toast",
185
- message: "\u914D\u7F6E\u5907\u4EFD\u672A\u627E\u5230"
186
- },
187
- CONFIG_READ_FAILED: {
188
- level: "toast",
189
- message: "\u914D\u7F6E\u8BFB\u53D6\u5931\u8D25\uFF0C\u6587\u4EF6\u53EF\u80FD\u5DF2\u635F\u574F"
190
- },
191
- CONFIG_CONFLICT: {
192
- level: "toast",
193
- message: "\u914D\u7F6E\u5DF2\u88AB\u5176\u4ED6\u5730\u65B9\u4FEE\u6539\uFF0C\u8BF7\u5237\u65B0\u91CD\u8BD5"
194
- },
195
- /* ---------- fs ---------- */
196
- FS_ALREADY_EXISTS: {
197
- level: "toast",
198
- message: "\u6587\u4EF6\u6216\u6587\u4EF6\u5939\u5DF2\u5B58\u5728"
199
- },
200
- FS_PATH_NOT_FOUND: {
201
- level: "toast",
202
- message: "\u6587\u4EF6\u6216\u6587\u4EF6\u5939\u672A\u627E\u5230"
203
- },
204
- FS_PERMISSION_DENIED: {
205
- level: "toast",
206
- message: "\u6587\u4EF6\u7CFB\u7EDF\u6743\u9650\u88AB\u62D2\u7EDD"
207
- },
208
- FS_EXISTS_FAILED: {
209
- level: "toast",
210
- message: "\u68C0\u67E5\u8DEF\u5F84\u662F\u5426\u5B58\u5728\u65F6\u51FA\u9519"
211
- },
212
- FS_INVALID_NAME: {
213
- level: "toast",
214
- message: "\u65E0\u6548\u7684\u6587\u4EF6\u6216\u6587\u4EF6\u5939\u540D\u79F0"
215
- },
216
- FS_MKDIR_FAILED: {
217
- level: "toast",
218
- message: "\u521B\u5EFA\u6587\u4EF6\u5939\u5931\u8D25"
219
- },
220
- /* ---------- system ---------- */
221
- INTERNAL_ERROR: {
222
- level: "toast",
223
- message: "\u7CFB\u7EDF\u5F02\u5E38\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5"
224
- },
225
- CONNECTION_LOST: {
226
- level: "banner",
227
- message: "\u4E0E\u672C\u5730\u670D\u52A1\u7684\u8FDE\u63A5\u5DF2\u65AD\u5F00",
228
- action: { retry: true }
229
- },
230
- HTTP_ERROR: {
231
- level: "toast",
232
- message: "\u7F51\u7EDC\u8BF7\u6C42\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u60A8\u7684\u7F51\u7EDC\u8FDE\u63A5"
233
- },
234
- UNAUTHORIZED: {
235
- level: "banner",
236
- message: "\u672A\u6388\u6743\u8BBF\u95EE\uFF0C\u8BF7\u91CD\u65B0\u767B\u5F55",
237
- action: { reload: true }
238
- },
239
- UNKNOWN_ERROR: {
240
- level: "toast",
241
- message: "\u53D1\u751F\u672A\u77E5\u9519\u8BEF\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5"
242
- },
243
- /* ---------- ws ---------- */
244
- WS_ERROR: {
245
- level: "banner",
246
- message: "WebSocket \u8FDE\u63A5\u5F02\u5E38",
247
- action: { retry: true }
248
- },
249
- WS_CLOSED: {
250
- level: "banner",
251
- message: "WebSocket \u8FDE\u63A5\u5DF2\u5173\u95ED",
252
- action: { retry: true }
253
- },
254
- BAD_JSON: {
255
- level: "toast",
256
- message: "\u6536\u5230\u65E0\u6548\u7684 JSON \u6570\u636E"
257
- },
258
- BAD_MSG: {
259
- level: "toast",
260
- message: "\u6536\u5230\u65E0\u6548\u7684\u6D88\u606F\u683C\u5F0F"
261
- },
262
- OP_NOT_SUPPORTED: {
263
- level: "toast",
264
- message: "\u64CD\u4F5C\u4E0D\u88AB\u652F\u6301"
265
- },
266
- HANDLER_FAILED: {
267
- level: "toast",
268
- message: "\u6D88\u606F\u5904\u7406\u5931\u8D25"
269
- },
270
- TOPIC_NOT_FOUND: {
271
- level: "toast",
272
- message: "\u672A\u77E5\u7684\u6D88\u606F\u4E3B\u9898"
273
- },
274
- OP_NOT_FOUND: {
275
- level: "toast",
276
- message: "\u672A\u77E5\u7684\u64CD\u4F5C\u7C7B\u578B"
277
- },
278
- /* ---------- deps ---------- */
279
- DEP_INSTALL_FAILED: {
280
- level: "toast",
281
- message: "\u4F9D\u8D56\u5B89\u88C5\u5931\u8D25"
282
- },
283
- DEP_UNINSTALL_FAILED: {
284
- level: "toast",
285
- message: "\u4F9D\u8D56\u5378\u8F7D\u5931\u8D25"
286
- },
287
- DEP_NOT_FOUND: {
288
- level: "toast",
289
- message: "\u4F9D\u8D56\u672A\u627E\u5230"
290
- },
291
- /* ---------- dashboard ---------- */
292
- DASHBOARD_CONFLICT: {
293
- level: "toast",
294
- message: "\u4EEA\u8868\u76D8\u5DF2\u88AB\u5176\u4ED6\u5730\u65B9\u4FEE\u6539\uFF0C\u8BF7\u5237\u65B0\u91CD\u8BD5"
295
- },
296
- WIDGET_NOT_FOUND: {
297
- level: "toast",
298
- message: "\u90E8\u4EF6\u672A\u627E\u5230"
299
- },
300
- WIDGET_LOCKED: {
301
- level: "toast",
302
- message: "\u90E8\u4EF6\u88AB\u9501\u5B9A\uFF0C\u65E0\u6CD5\u4FEE\u6539"
303
- },
304
- /* ---------- dashboard rss ---------- */
305
- RSS_FETCH_FAILED: {
306
- level: "toast",
307
- message: "RSS \u6E90\u83B7\u53D6\u5931\u8D25"
308
- },
309
- INVALID_RSS_URL: {
310
- level: "toast",
311
- message: "\u65E0\u6548\u7684 RSS \u6E90\u5730\u5740"
312
- },
313
- /* ---------- port killer ---------- */
314
- KILL_PORT_FAILED: {
315
- level: "toast",
316
- message: "\u7AEF\u53E3\u91CA\u653E\u5931\u8D25"
317
- },
318
- INVALID_PORT: {
319
- level: "toast",
320
- message: "\u65E0\u6548\u7684\u7AEF\u53E3\u53F7"
321
- },
322
- /* ---------- api client ---------- */
323
- COLLECTION_NOT_EMPTY: {
324
- level: "toast",
325
- message: "\u96C6\u5408\u4E0D\u4E3A\u7A7A\uFF0C\u65E0\u6CD5\u5220\u9664"
326
- },
327
- /* ---------- protocol / dev ---------- */
328
- INVALID_JSON: {
329
- level: "dev-only"
330
- },
331
- INVALID_MSG: {
332
- level: "dev-only"
333
- }
334
- };
335
-
336
- // src/app/core/error/error-dispatcher.service.ts
337
- var ErrorDispatcher = class ErrorDispatcher2 {
338
- ui = inject(UiNotifierService);
339
- dispatch(code, message, ctx) {
340
- const policy = ERROR_POLICY[code];
341
- if (!policy) {
342
- this.ui.error(message ?? "\u672A\u77E5\u9519\u8BEF");
343
- return;
344
- }
345
- const finalMessage = typeof policy.message === "function" ? policy.message(ctx) : policy.message ?? message;
346
- switch (policy.level) {
347
- case "silent":
348
- return;
349
- case "toast":
350
- this.ui.error(finalMessage ?? "\u64CD\u4F5C\u5931\u8D25");
351
- return;
352
- case "banner":
353
- this.ui.banner?.(finalMessage ?? "\u7CFB\u7EDF\u5F02\u5E38", policy.action);
354
- return;
355
- // case "modal":
356
- // this.ui.modal?.(finalMessage ?? "操作异常", policy.action);
357
- // return;
358
- case "dev-only":
359
- if (!APP_CONFIG.production) {
360
- console.warn("[DEV ERROR]", code, ctx);
361
- }
362
- return;
363
- }
364
- }
365
- };
366
- ErrorDispatcher = __decorate([
367
- Injectable({ providedIn: "root" })
368
- ], ErrorDispatcher);
369
-
370
- // src/app/core/http/http-error.interceptor.ts
371
- var _ = __toESM(require_lodash());
372
- var httpErrorInterceptor = (req, next) => {
373
- const dispatcher = inject(ErrorDispatcher);
374
- const requestId = _.uniqueId("req-");
375
- req = req.clone({
376
- setHeaders: { "X-Request-Id": requestId }
377
- });
378
- return next(req).pipe(catchError((err) => {
379
- if (!APP_CONFIG.production) {
380
- console.error(`[HTTP][${requestId}] Error:`, err);
381
- }
382
- if (err instanceof ApiBizError) {
383
- dispatcher.dispatch(err.code, err.message, err.details);
384
- return throwError(() => err);
385
- }
386
- if (err instanceof HttpErrorResponse) {
387
- const code = err.error?.error?.code ?? "HTTP_ERROR";
388
- dispatcher.dispatch(code, err.message, err.error);
389
- return throwError(() => err);
390
- }
391
- dispatcher.dispatch(ErrorPolicyCode.INTERNAL_ERROR);
392
- return throwError(() => err);
393
- }));
394
- };
395
-
396
- export {
397
- httpErrorInterceptor
398
- };
399
- //# sourceMappingURL=chunk-KSHAGY2M.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["src/app/core/error/error-policy.ts", "src/app/core/error/error-dispatcher.service.ts", "src/app/core/http/http-error.interceptor.ts"],
4
- "sourcesContent": ["import type { ErrorLevel, ErrorAction } from \"./error.types\";\r\n\r\nexport const enum ErrorPolicyCode {\r\n /* ---------- task ---------- */\r\n TASK_NOT_FOUND = \"TASK_NOT_FOUND\",\r\n TASK_ALREADY_RUNNING = \"TASK_ALREADY_RUNNING\",\r\n PROCESS_SPAWN_FAILED = \"PROCESS_SPAWN_FAILED\",\r\n TASK_SPEC_NOT_FOUND = \"TASK_SPEC_NOT_FOUND\",\r\n TASK_NOT_RUNNABLE = \"TASK_NOT_RUNNABLE\",\r\n RUN_NOT_FOUND = \"RUN_NOT_FOUND\",\r\n TASK_ID_REQUIRED = \"TASK_ID_REQUIRED\",\r\n COMMAND_NOT_FOUND = \"COMMAND_NOT_FOUND\",\r\n\r\n /* ---------- project ---------- */\r\n PROJECT_NOT_FOUND = \"PROJECT_NOT_FOUND\",\r\n PROJECT_ROOT_INVALID = \"PROJECT_ROOT_INVALID\",\r\n PROJECT_ALREADY_EXISTS = \"PROJECT_ALREADY_EXISTS\",\r\n\r\n /** project creation */\r\n INVALID_NAME = \"INVALID_NAME\",\r\n TARGET_EXISTS = \"TARGET_EXISTS\",\r\n INVALID_REPO_URL = \"INVALID_REPO_URL\",\r\n GIT_CHECKOUT_FAILED = \"GIT_CHECKOUT_FAILED\", // Git 检出失败\r\n BOOTSTRAP_NOT_IN_PICK_STATE = \"BOOTSTRAP_NOT_IN_PICK_STATE\", // 当前不处于选择根目录状态\r\n BOOTSTRAP_CTX_NOT_FOUND = \"BOOTSTRAP_CTX_NOT_FOUND\", // 引导上下文未找到\r\n BOOTSTRAP_INVALID_PICKED_ROOT = \"BOOTSTRAP_INVALID_PICKED_ROOT\", // 选择的根目录无效\r\n BOOTSTRAP_NOT_WAITING_PICK = \"BOOTSTRAP_NOT_WAITING_PICK\", // 引导未处于等待选择状态\r\n\r\n\r\n /** project analysis */\r\n PROJECT_ANGULAR_JSON_INVALID = \"PROJECT_ANGULAR_JSON_INVALID\",\r\n PROJECT_ANGULAR_JSON_NOT_FOUND = \"PROJECT_ANGULAR_JSON_NOT_FOUND\",\r\n PROJECT_VITE_CONFIG_INVALID = \"PROJECT_VITE_CONFIG_INVALID\",\r\n PROJECT_VUE_CONFIG_NOT_FOUND = \"PROJECT_VUE_CONFIG_NOT_FOUND\",\r\n\r\n /** config */\r\n CONFIG_BACKUP_NOT_FOUND = \"CONFIG_BACKUP_NOT_FOUND\",\r\n CONFIG_READ_FAILED = \"CONFIG_READ_FAILED\",\r\n CONFIG_CONFLICT = \"CONFIG_CONFLICT\",\r\n\r\n\r\n /* ---------- fs ---------- */\r\n FS_ALREADY_EXISTS = \"FS_ALREADY_EXISTS\",\r\n FS_PATH_NOT_FOUND = \"FS_PATH_NOT_FOUND\",\r\n FS_PERMISSION_DENIED = \"FS_PERMISSION_DENIED\",\r\n FS_EXISTS_FAILED = \"FS_EXISTS_FAILED\",\r\n FS_INVALID_NAME = \"FS_INVALID_NAME\",\r\n FS_MKDIR_FAILED = \"FS_MKDIR_FAILED\",\r\n\r\n /* ---------- system ---------- */\r\n INTERNAL_ERROR = \"INTERNAL_ERROR\",\r\n CONNECTION_LOST = \"CONNECTION_LOST\",\r\n HTTP_ERROR = \"HTTP_ERROR\",\r\n UNAUTHORIZED = \"UNAUTHORIZED\",\r\n UNKNOWN_ERROR = \"UNKNOWN_ERROR\",\r\n\r\n /* ---------- ws ---------- */\r\n WS_ERROR = \"WS_ERROR\",\r\n WS_CLOSED = \"WS_CLOSED\",\r\n BAD_JSON = \"BAD_JSON\",\r\n BAD_MSG = \"BAD_MSG\",\r\n OP_NOT_SUPPORTED = \"OP_NOT_SUPPORTED\",\r\n HANDLER_FAILED = \"HANDLER_FAILED\",\r\n TOPIC_NOT_FOUND = \"TOPIC_NOT_FOUND\",\r\n OP_NOT_FOUND = \"OP_NOT_FOUND\",\r\n\r\n /* ---------- deps ---------- */\r\n DEP_INSTALL_FAILED = \"DEP_INSTALL_FAILED\",\r\n DEP_UNINSTALL_FAILED = \"DEP_UNINSTALL_FAILED\",\r\n DEP_NOT_FOUND = \"DEP_NOT_FOUND\",\r\n\r\n /* ---------- dashboard ---------- */\r\n DASHBOARD_CONFLICT = \"DASHBOARD_CONFLICT\",\r\n WIDGET_NOT_FOUND = \"WIDGET_NOT_FOUND\",\r\n WIDGET_LOCKED = \"WIDGET_LOCKED\",\r\n\r\n /* ---------- Port Killer ---------- */\r\n KILL_PORT_FAILED = \"KILL_PORT_FAILED\",\r\n INVALID_PORT = \"INVALID_PORT\",\r\n\r\n /* ---------- dashboard rss---------- */\r\n RSS_FETCH_FAILED = \"RSS_FETCH_FAILED\",\r\n INVALID_RSS_URL = \"INVALID_RSS_URL\",\r\n\r\n /* ---------- API client---------- */\r\n COLLECTION_NOT_EMPTY = \"COLLECTION_NOT_EMPTY\", // 409 - collection has child collections/requests\r\n /* ---------- protocol / dev ---------- */\r\n INVALID_JSON = \"INVALID_JSON\",\r\n INVALID_MSG = \"INVALID_MSG\",\r\n\r\n\r\n\r\n}\r\n\r\n\r\nexport type ErrorPolicyItem = {\r\n level: ErrorLevel;\r\n message?: string | ((ctx: any) => string);\r\n action?: ErrorAction;\r\n};\r\n\r\nexport const ERROR_POLICY: Record<ErrorPolicyCode, ErrorPolicyItem> = {\r\n /* ---------- task ---------- */\r\n\r\n TASK_NOT_FOUND: {\r\n level: \"silent\", // 常见:任务刚结束\r\n },\r\n\r\n TASK_ALREADY_RUNNING: {\r\n level: \"toast\",\r\n message: \"任务已在运行中\",\r\n },\r\n PROCESS_SPAWN_FAILED: {\r\n level: \"toast\",\r\n message: \"任务启动失败\",\r\n },\r\n TASK_SPEC_NOT_FOUND: {\r\n level: \"toast\",\r\n message: \"任务规格未找到\",\r\n },\r\n TASK_NOT_RUNNABLE: {\r\n level: \"toast\",\r\n message: \"任务不可运行\",\r\n },\r\n RUN_NOT_FOUND: {\r\n level: \"toast\",\r\n message: \"运行实例未找到\",\r\n },\r\n TASK_ID_REQUIRED: {\r\n level: \"toast\",\r\n message: \"任务 ID 为必填项\",\r\n },\r\n\r\n COMMAND_NOT_FOUND: {\r\n level: \"toast\",\r\n message: \"命令未找到,请确保已正确安装所需软件\",\r\n },\r\n\r\n /* ---------- project ---------- */\r\n\r\n PROJECT_NOT_FOUND: {\r\n level: \"toast\",\r\n message: \"项目不存在\",\r\n },\r\n PROJECT_ROOT_INVALID: {\r\n level: \"toast\",\r\n message: \"项目根目录无效\",\r\n },\r\n PROJECT_ALREADY_EXISTS: {\r\n level: \"toast\",\r\n message: \"项目已存在\",\r\n },\r\n\r\n /** project creation */\r\n INVALID_NAME: {\r\n level: \"toast\",\r\n message: \"无效的项目名称\",\r\n },\r\n TARGET_EXISTS: {\r\n level: \"toast\",\r\n message: \"目标路径已存在\",\r\n },\r\n INVALID_REPO_URL: {\r\n level: \"toast\",\r\n message: \"无效的仓库地址\",\r\n },\r\n GIT_CHECKOUT_FAILED: {\r\n level: \"toast\",\r\n message: \"Git 检出失败\",\r\n },\r\n\r\n BOOTSTRAP_NOT_IN_PICK_STATE: {\r\n level: \"toast\",\r\n message: \"当前不处于选择根目录状态\",\r\n },\r\n BOOTSTRAP_CTX_NOT_FOUND: {\r\n level: \"toast\",\r\n message: \"引导上下文未找到\",\r\n },\r\n BOOTSTRAP_INVALID_PICKED_ROOT: {\r\n level: \"toast\",\r\n message: \"选择的根目录无效\",\r\n },\r\n BOOTSTRAP_NOT_WAITING_PICK: {\r\n level: \"toast\",\r\n message: \"引导未处于等待选择状态\",\r\n },\r\n\r\n /** project analysis */\r\n PROJECT_ANGULAR_JSON_INVALID: {\r\n level: \"toast\",\r\n message: \"angular.json 无效\",\r\n },\r\n PROJECT_ANGULAR_JSON_NOT_FOUND: {\r\n level: \"toast\",\r\n message: \"angular.json 未找到\",\r\n },\r\n PROJECT_VITE_CONFIG_INVALID: {\r\n level: \"toast\",\r\n message: \"vite 配置无效\",\r\n },\r\n PROJECT_VUE_CONFIG_NOT_FOUND: {\r\n level: \"toast\",\r\n message: \"vite 配置未找到\",\r\n },\r\n\r\n /** config */\r\n CONFIG_BACKUP_NOT_FOUND: {\r\n level: \"toast\",\r\n message: \"配置备份未找到\",\r\n },\r\n\r\n CONFIG_READ_FAILED: {\r\n level: \"toast\",\r\n message: \"配置读取失败,文件可能已损坏\",\r\n },\r\n\r\n CONFIG_CONFLICT: {\r\n level: \"toast\",\r\n message: \"配置已被其他地方修改,请刷新重试\",\r\n },\r\n\r\n /* ---------- fs ---------- */\r\n\r\n FS_ALREADY_EXISTS: {\r\n level: \"toast\",\r\n message: \"文件或文件夹已存在\",\r\n },\r\n FS_PATH_NOT_FOUND: {\r\n level: \"toast\",\r\n message: \"文件或文件夹未找到\",\r\n },\r\n FS_PERMISSION_DENIED: {\r\n level: \"toast\",\r\n message: \"文件系统权限被拒绝\",\r\n },\r\n FS_EXISTS_FAILED: {\r\n level: \"toast\",\r\n message: \"检查路径是否存在时出错\",\r\n },\r\n FS_INVALID_NAME: {\r\n level: \"toast\",\r\n message: \"无效的文件或文件夹名称\",\r\n },\r\n FS_MKDIR_FAILED: {\r\n level: \"toast\",\r\n message: \"创建文件夹失败\",\r\n },\r\n\r\n\r\n /* ---------- system ---------- */\r\n INTERNAL_ERROR: {\r\n level: \"toast\",\r\n message: \"系统异常,请稍后重试\",\r\n },\r\n\r\n CONNECTION_LOST: {\r\n level: \"banner\",\r\n message: \"与本地服务的连接已断开\",\r\n action: { retry: true },\r\n },\r\n\r\n HTTP_ERROR: {\r\n level: \"toast\",\r\n message: \"网络请求失败,请检查您的网络连接\",\r\n },\r\n\r\n UNAUTHORIZED: {\r\n level: \"banner\",\r\n message: \"未授权访问,请重新登录\",\r\n action: { reload: true },\r\n },\r\n\r\n UNKNOWN_ERROR: {\r\n level: \"toast\",\r\n message: \"发生未知错误,请稍后重试\",\r\n },\r\n\r\n /* ---------- ws ---------- */\r\n\r\n WS_ERROR: {\r\n level: \"banner\",\r\n message: \"WebSocket 连接异常\",\r\n action: { retry: true },\r\n },\r\n\r\n WS_CLOSED: {\r\n level: \"banner\",\r\n message: \"WebSocket 连接已关闭\",\r\n action: { retry: true },\r\n },\r\n BAD_JSON: {\r\n level: \"toast\",\r\n message: \"收到无效的 JSON 数据\",\r\n },\r\n BAD_MSG: {\r\n level: \"toast\",\r\n message: \"收到无效的消息格式\",\r\n },\r\n OP_NOT_SUPPORTED: {\r\n level: \"toast\",\r\n message: \"操作不被支持\",\r\n },\r\n HANDLER_FAILED: {\r\n level: \"toast\",\r\n message: \"消息处理失败\",\r\n },\r\n TOPIC_NOT_FOUND: {\r\n level: \"toast\",\r\n message: \"未知的消息主题\",\r\n },\r\n OP_NOT_FOUND: {\r\n level: \"toast\",\r\n message: \"未知的操作类型\",\r\n },\r\n\r\n /* ---------- deps ---------- */\r\n DEP_INSTALL_FAILED: {\r\n level: \"toast\",\r\n message: \"依赖安装失败\",\r\n },\r\n DEP_UNINSTALL_FAILED: {\r\n level: \"toast\",\r\n message: \"依赖卸载失败\",\r\n },\r\n DEP_NOT_FOUND: {\r\n level: \"toast\",\r\n message: \"依赖未找到\",\r\n },\r\n\r\n /* ---------- dashboard ---------- */\r\n DASHBOARD_CONFLICT: {\r\n level: \"toast\",\r\n message: \"仪表盘已被其他地方修改,请刷新重试\",\r\n },\r\n WIDGET_NOT_FOUND: {\r\n level: \"toast\",\r\n message: \"部件未找到\",\r\n },\r\n WIDGET_LOCKED: {\r\n level: \"toast\",\r\n message: \"部件被锁定,无法修改\",\r\n },\r\n\r\n /* ---------- dashboard rss ---------- */\r\n RSS_FETCH_FAILED: {\r\n level: \"toast\",\r\n message: \"RSS 源获取失败\",\r\n },\r\n INVALID_RSS_URL: {\r\n level: \"toast\",\r\n message: \"无效的 RSS 源地址\",\r\n },\r\n\r\n /* ---------- port killer ---------- */\r\n KILL_PORT_FAILED: {\r\n level: \"toast\",\r\n message: \"端口释放失败\",\r\n },\r\n INVALID_PORT: {\r\n level: \"toast\",\r\n message: \"无效的端口号\",\r\n },\r\n\r\n /* ---------- api client ---------- */\r\n COLLECTION_NOT_EMPTY: {\r\n level: \"toast\",\r\n message: \"集合不为空,无法删除\",\r\n },\r\n\r\n /* ---------- protocol / dev ---------- */\r\n\r\n INVALID_JSON: {\r\n level: \"dev-only\",\r\n },\r\n\r\n INVALID_MSG: {\r\n level: \"dev-only\",\r\n },\r\n};\r\n", "import { Injectable, inject } from \"@angular/core\";\r\nimport { ERROR_POLICY, ErrorPolicyCode } from \"./error-policy\";\r\nimport { UiNotifierService } from \"../ui-notifier.service\";\r\nimport { APP_CONFIG } from \"@env/environment\";\r\n\r\n@Injectable({ providedIn: \"root\" })\r\nexport class ErrorDispatcher {\r\n private ui = inject(UiNotifierService);\r\n\r\n dispatch(code: ErrorPolicyCode, message?: string, ctx?: any) {\r\n const policy = ERROR_POLICY[code];\r\n\r\n // fallback\r\n if (!policy) {\r\n this.ui.error(message ?? \"未知错误\");\r\n return;\r\n }\r\n\r\n const finalMessage =\r\n typeof policy.message === \"function\"\r\n ? policy.message(ctx)\r\n : policy.message ?? message;\r\n\r\n switch (policy.level) {\r\n case \"silent\":\r\n return;\r\n\r\n case \"toast\":\r\n this.ui.error(finalMessage ?? \"操作失败\");\r\n return;\r\n\r\n case \"banner\":\r\n this.ui.banner?.(finalMessage ?? \"系统异常\", policy.action);\r\n return;\r\n\r\n // case \"modal\":\r\n // this.ui.modal?.(finalMessage ?? \"操作异常\", policy.action);\r\n // return;\r\n\r\n case \"dev-only\":\r\n if (!APP_CONFIG.production) {\r\n console.warn(\"[DEV ERROR]\", code, ctx);\r\n }\r\n return;\r\n }\r\n }\r\n}\r\n", "import { HttpErrorResponse, HttpInterceptorFn } from '@angular/common/http';\r\nimport { inject } from '@angular/core';\r\nimport { catchError, throwError } from 'rxjs';\r\nimport { ErrorDispatcher, ErrorPolicyCode } from '../error';\r\nimport { ApiBizError } from '../api/api-biz-error';\r\nimport { APP_CONFIG } from '@env/environment';\r\nimport * as _ from 'lodash';\r\nimport { UserStore } from '../stores/user/user.store';\r\n\r\nexport const httpErrorInterceptor: HttpInterceptorFn = (req, next) => {\r\n const dispatcher = inject(ErrorDispatcher);\r\n\r\n // 注入 requestId\r\n const requestId = _.uniqueId('req-');\r\n req = req.clone({\r\n setHeaders: { 'X-Request-Id': requestId },\r\n });\r\n\r\n return next(req).pipe(\r\n catchError((err: unknown) => {\r\n if (!APP_CONFIG.production) {\r\n console.error(`[HTTP][${requestId}] Error:`, err);\r\n }\r\n if (err instanceof ApiBizError) {\r\n dispatcher.dispatch(err.code as ErrorPolicyCode, err.message, err.details);\r\n return throwError(() => err);\r\n }\r\n if (err instanceof HttpErrorResponse) {\r\n const code = err.error?.error?.code ?? ('HTTP_ERROR' as ErrorPolicyCode);\r\n dispatcher.dispatch(code, err.message, err.error);\r\n return throwError(() => err);\r\n }\r\n dispatcher.dispatch(ErrorPolicyCode.INTERNAL_ERROR);\r\n return throwError(() => err);\r\n }),\r\n );\r\n};\r\n"],
5
- "mappings": "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",
6
- "names": ["ErrorPolicyCode", "ErrorDispatcher"]
7
- }
@@ -1,59 +0,0 @@
1
- import {
2
- RouterModule
3
- } from "./chunk-665WC4RU.js";
4
- import {
5
- CommonModule
6
- } from "./chunk-3MCIETCQ.js";
7
- import {
8
- Component,
9
- NgModule,
10
- __decorate
11
- } from "./chunk-XQY5SPGI.js";
12
-
13
- // angular:jit:template:src\app\pages\setting\setting.component.html
14
- var setting_component_default = "<p>setting.component works!</p>\r\n";
15
-
16
- // angular:jit:style:src\app\pages\setting\setting.component.less
17
- var setting_component_default2 = "/* src/app/pages/setting/setting.component.less */\n/*# sourceMappingURL=setting.component.css.map */\n";
18
-
19
- // src/app/pages/setting/setting.component.ts
20
- var SettingComponent = class SettingComponent2 {
21
- };
22
- SettingComponent = __decorate([
23
- Component({
24
- selector: "app-setting.component",
25
- imports: [],
26
- template: setting_component_default,
27
- styles: [setting_component_default2]
28
- })
29
- ], SettingComponent);
30
-
31
- // src/app/pages/setting/setting-routing-module.ts
32
- var routes = [
33
- { path: "", component: SettingComponent }
34
- ];
35
- var SettingRoutingModule = class SettingRoutingModule2 {
36
- };
37
- SettingRoutingModule = __decorate([
38
- NgModule({
39
- imports: [RouterModule.forChild(routes)],
40
- exports: [RouterModule]
41
- })
42
- ], SettingRoutingModule);
43
-
44
- // src/app/pages/setting/setting-module.ts
45
- var SettingModule = class SettingModule2 {
46
- };
47
- SettingModule = __decorate([
48
- NgModule({
49
- declarations: [],
50
- imports: [
51
- CommonModule,
52
- SettingRoutingModule
53
- ]
54
- })
55
- ], SettingModule);
56
- export {
57
- SettingModule
58
- };
59
- //# sourceMappingURL=chunk-KV72AKOD.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["angular:jit:template:src\\app\\pages\\setting\\setting.component.html", "angular:jit:style:src\\app\\pages\\setting\\setting.component.less", "src/app/pages/setting/setting.component.ts", "src/app/pages/setting/setting-routing-module.ts", "src/app/pages/setting/setting-module.ts"],
4
- "sourcesContent": ["<p>setting.component works!</p>\r\n", "/* src/app/pages/setting/setting.component.less */\n/*# sourceMappingURL=setting.component.css.map */\n", "import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-setting.component',\r\n imports: [],\r\n templateUrl: './setting.component.html',\r\n styleUrl: './setting.component.less',\r\n})\r\nexport class SettingComponent {\r\n\r\n}\r\n", "import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { SettingComponent } from './setting.component';\r\n\r\nconst routes: Routes = [\r\n { path: '', component: SettingComponent }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class SettingRoutingModule { }\r\n", "import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { SettingRoutingModule } from './setting-routing-module';\r\n\r\n\r\n@NgModule({\r\n declarations: [],\r\n imports: [\r\n CommonModule,\r\n SettingRoutingModule\r\n ]\r\n})\r\nexport class SettingModule { }\r\n"],
5
- "mappings": ";;;;;;;;;;;;;AAAA;;;ACAA,IAAAA,6BAAA;;;ACQO,IAAM,mBAAN,MAAMC,kBAAgB;;AAAhB,mBAAgB,WAAA;EAN5B,UAAU;IACT,UAAU;IACV,SAAS,CAAA;IACT,UAAA;;GAED;GACY,gBAAgB;;;ACJ7B,IAAM,SAAiB;EACrB,EAAE,MAAM,IAAI,WAAW,iBAAgB;;AAOlC,IAAM,uBAAN,MAAMC,sBAAoB;;AAApB,uBAAoB,WAAA;EAJhC,SAAS;IACR,SAAS,CAAC,aAAa,SAAS,MAAM,CAAC;IACvC,SAAS,CAAC,YAAY;GACvB;GACY,oBAAoB;;;ACC1B,IAAM,gBAAN,MAAMC,eAAa;;AAAb,gBAAa,WAAA;EAPzB,SAAS;IACR,cAAc,CAAA;IACd,SAAS;MACP;MACA;;GAEH;GACY,aAAa;",
6
- "names": ["setting_component_default", "SettingComponent", "SettingRoutingModule", "SettingModule"]
7
- }
@@ -1,26 +0,0 @@
1
- import {
2
- RouterModule
3
- } from "./chunk-665WC4RU.js";
4
- import "./chunk-3MCIETCQ.js";
5
- import {
6
- NgModule,
7
- __decorate
8
- } from "./chunk-XQY5SPGI.js";
9
-
10
- // src/app/pages/about/about-routing-module.ts
11
- var routes = [
12
- { path: "", loadComponent: () => import("./chunk-LLRVGHG5.js").then((m) => m.AboutComponent) },
13
- { path: "feedback", loadComponent: () => import("./chunk-H43HGCRW.js").then((m) => m.FeedbackComponent) }
14
- ];
15
- var AboutRoutingModule = class AboutRoutingModule2 {
16
- };
17
- AboutRoutingModule = __decorate([
18
- NgModule({
19
- imports: [RouterModule.forChild(routes)],
20
- exports: [RouterModule]
21
- })
22
- ], AboutRoutingModule);
23
- export {
24
- AboutRoutingModule
25
- };
26
- //# sourceMappingURL=chunk-LAVMY2SJ.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["src/app/pages/about/about-routing-module.ts"],
4
- "sourcesContent": ["import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\n\r\nconst routes: Routes = [\r\n { path: '', loadComponent: () => import('./about.component').then(m => m.AboutComponent) },\r\n { path: 'feedback', loadComponent: () => import('./feedback.component').then(m => m.FeedbackComponent) }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class AboutRoutingModule { }\r\n"],
5
- "mappings": ";;;;;;;;;;AAGA,IAAM,SAAiB;EACrB,EAAE,MAAM,IAAI,eAAe,MAAM,OAAO,qBAAmB,EAAE,KAAK,OAAK,EAAE,cAAc,EAAC;EACxF,EAAE,MAAM,YAAY,eAAe,MAAM,OAAO,qBAAsB,EAAE,KAAK,OAAK,EAAE,iBAAiB,EAAC;;AAOjG,IAAM,qBAAN,MAAMA,oBAAkB;;AAAlB,qBAAkB,WAAA;EAJ9B,SAAS;IACR,SAAS,CAAC,aAAa,SAAS,MAAM,CAAC;IACvC,SAAS,CAAC,YAAY;GACvB;GACY,kBAAkB;",
6
- "names": ["AboutRoutingModule"]
7
- }
@@ -1,73 +0,0 @@
1
- import {
2
- NzFormModule
3
- } from "./chunk-P5CWA4FO.js";
4
- import {
5
- NzSelectModule
6
- } from "./chunk-ETTBRXVA.js";
7
- import {
8
- NzGridModule,
9
- PageLayoutComponent
10
- } from "./chunk-6QMSEZPT.js";
11
- import {
12
- FormsModule,
13
- NzButtonModule,
14
- NzInputModule
15
- } from "./chunk-RUXJCM3V.js";
16
- import "./chunk-VYNQPZQO.js";
17
- import {
18
- CommonModule
19
- } from "./chunk-3MCIETCQ.js";
20
- import {
21
- Component,
22
- __decorate
23
- } from "./chunk-XQY5SPGI.js";
24
-
25
- // src/app/pages/about/about.component.ts
26
- var AboutComponent = class AboutComponent2 {
27
- version = "0.1.12";
28
- };
29
- AboutComponent = __decorate([
30
- Component({
31
- selector: "app-about.component",
32
- imports: [
33
- CommonModule,
34
- FormsModule,
35
- NzGridModule,
36
- NzFormModule,
37
- NzInputModule,
38
- NzSelectModule,
39
- NzButtonModule,
40
- PageLayoutComponent
41
- ],
42
- template: `
43
- <app-page-layout [title]="'\u5173\u4E8E'">
44
- <div class="header">
45
- <h2>\u5173\u4E8E Ng-Manager</h2>
46
- </div>
47
- <div class="content">
48
- <p>Ng-Manager \u662F\u4E00\u4E2A\u5F00\u6E90\u7684 Angular \u9879\u76EE\u7BA1\u7406\u5DE5\u5177\uFF0C\u65E8\u5728\u5E2E\u52A9\u5F00\u53D1\u8005\u66F4\u9AD8\u6548\u5730\u7BA1\u7406\u548C\u7EC4\u7EC7\u4ED6\u4EEC\u7684 Angular/Vue \u9879\u76EE\u3002</p>
49
- <p>\u5B83\u63D0\u4F9B\u4E86\u4E00\u4E2A\u76F4\u89C2\u7684\u754C\u9762\uFF0C\u5141\u8BB8\u7528\u6237\u8F7B\u677E\u521B\u5EFA\u3001\u5BFC\u5165\u548C\u7BA1\u7406\u591A\u4E2A Angular/Vue \u9879\u76EE\uFF0C\u540C\u65F6\u96C6\u6210\u4E86\u5E38\u7528\u7684\u5F00\u53D1\u5DE5\u5177\u548C\u529F\u80FD\u3002</p>
50
- <div>
51
- <p>\u4E3B\u8981\u529F\u80FD\u5305\u62EC\uFF1A</p>
52
- <ul>
53
- <li>\u9879\u76EE\u521B\u5EFA\u4E0E\u5BFC\u5165</li>
54
- <li>\u9879\u76EE\u4EEA\u8868\u76D8\u81EA\u5B9A\u4E49</li>
55
- <li>\u4F9D\u8D56\u7BA1\u7406</li>
56
- <li>\u9879\u76EE\u4EFB\u52A1\u7BA1\u7406</li>
57
- <li>\u591A\u9879\u76EE\u652F\u6301</li>
58
- <li>\u96C6\u6210\u5E38\u7528\u5F00\u53D1\u5DE5\u5177</li>
59
- </ul>
60
- </div>
61
- <p>\u7248\u672C\uFF1A{{ version }}</p>
62
- <p>
63
- \u5B98\u65B9\u7F51\u7AD9\uFF1A<a href="http://192.168.1.31:7006" target="_blank">http://192.168.1.31:7006</a>
64
- </p>
65
- </div>
66
- </app-page-layout>
67
- `
68
- })
69
- ], AboutComponent);
70
- export {
71
- AboutComponent
72
- };
73
- //# sourceMappingURL=chunk-LLRVGHG5.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["src/app/pages/about/about.component.ts"],
4
- "sourcesContent": ["import { CommonModule } from '@angular/common';\r\nimport { Component } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { PageLayoutComponent } from '@app/shared';\r\nimport { NzButtonModule } from 'ng-zorro-antd/button';\r\nimport { NzFormModule } from 'ng-zorro-antd/form';\r\nimport { NzGridModule } from 'ng-zorro-antd/grid';\r\nimport { NzInputModule } from 'ng-zorro-antd/input';\r\nimport { NzSelectModule } from 'ng-zorro-antd/select';\r\n\r\n@Component({\r\n selector: 'app-about.component',\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n NzGridModule,\r\n NzFormModule,\r\n NzInputModule,\r\n NzSelectModule,\r\n NzButtonModule,\r\n PageLayoutComponent,\r\n ],\r\n template: `\r\n <app-page-layout [title]=\"'关于'\">\r\n <div class=\"header\">\r\n <h2>关于 Ng-Manager</h2>\r\n </div>\r\n <div class=\"content\">\r\n <p>Ng-Manager 是一个开源的 Angular 项目管理工具,旨在帮助开发者更高效地管理和组织他们的 Angular/Vue 项目。</p>\r\n <p>它提供了一个直观的界面,允许用户轻松创建、导入和管理多个 Angular/Vue 项目,同时集成了常用的开发工具和功能。</p>\r\n <div>\r\n <p>主要功能包括:</p>\r\n <ul>\r\n <li>项目创建与导入</li>\r\n <li>项目仪表盘自定义</li>\r\n <li>依赖管理</li>\r\n <li>项目任务管理</li>\r\n <li>多项目支持</li>\r\n <li>集成常用开发工具</li>\r\n </ul>\r\n </div>\r\n <p>版本:{{ version }}</p>\r\n <p>\r\n 官方网站:<a href=\"http://192.168.1.31:7006\" target=\"_blank\">http://192.168.1.31:7006</a>\r\n </p>\r\n </div>\r\n </app-page-layout>\r\n `,\r\n styles: [],\r\n})\r\nexport class AboutComponent {\r\n readonly version = '0.1.12';\r\n}\r\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;AAkDO,IAAM,iBAAN,MAAMA,gBAAc;EAChB,UAAU;;AADR,iBAAc,WAAA;EAxC1B,UAAU;IACT,UAAU;IACV,SAAS;MACP;MACA;MACA;MACA;MACA;MACA;MACA;MACA;;IAEF,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BX;GACY,cAAc;",
6
- "names": ["AboutComponent"]
7
- }