agentworkshop 0.7.59 → 0.7.61

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 (541) hide show
  1. package/.AgentWorkShop/prompts/host-tools.json +108 -0
  2. package/.output/.AgentWorkShop/prompts/host-tools.json +108 -0
  3. package/.output/.AgentWorkShop/schema.json +1 -0
  4. package/.output/nitro.json +1 -1
  5. package/.output/public/_nuxt/9j2J4k4w.js +1 -0
  6. package/.output/public/_nuxt/{DTx_DtUo.js → B0w8DZ4C.js} +1 -1
  7. package/.output/public/_nuxt/{cBI0JqsV.js → BMlesJth.js} +1 -1
  8. package/.output/public/_nuxt/BTXdYngG.js +1 -0
  9. package/.output/public/_nuxt/{DMPpE41S2.js → BXbKTAwC2.js} +1 -1
  10. package/.output/public/_nuxt/{Bn1N3mJv.js → B_6yBa_Z.js} +1 -1
  11. package/.output/public/_nuxt/{D6c5ppqB.js → B_ic601Y.js} +1 -1
  12. package/.output/public/_nuxt/BegV7-FE2.js +1 -0
  13. package/.output/public/_nuxt/BhllzW3K2.js +1 -0
  14. package/.output/public/_nuxt/BrRXGr472.js +1 -0
  15. package/.output/public/_nuxt/{BMZ1d25O.js → BtBgrPNT.js} +1 -1
  16. package/.output/public/_nuxt/C5MPzgon2.js +1 -0
  17. package/.output/public/_nuxt/CGChCy-w2.js +1 -0
  18. package/.output/public/_nuxt/CI5sliIF2.js +1 -0
  19. package/.output/public/_nuxt/{DTZO6WMs2.js → CI8awYVQ2.js} +1 -1
  20. package/.output/public/_nuxt/{B03LfmKR.js → CK2ts9sD.js} +1 -1
  21. package/.output/public/_nuxt/CPZKwmLQ.js +1 -0
  22. package/.output/public/_nuxt/CUjdqsjC2.js +1 -0
  23. package/.output/public/_nuxt/{C5wBzGO7.js → CVUMEGa1.js} +1 -1
  24. package/.output/public/_nuxt/{CYGkUj5M2.js → CcLFZjCI2.js} +1 -1
  25. package/.output/public/_nuxt/{iZa330UY.js → Cdw4juXw.js} +1 -1
  26. package/.output/public/_nuxt/{h46i74oE.js → CeEzUIvN.js} +4 -4
  27. package/.output/public/_nuxt/{zGDAozGA.js → CfIGBe_4.js} +4 -4
  28. package/.output/public/_nuxt/{CmTqFlYZ.js → Ci5kuU1q.js} +1 -1
  29. package/.output/public/_nuxt/CiyTTgqr.js +106 -0
  30. package/.output/public/_nuxt/{Dy-V8OEW2.js → CkYk8bj02.js} +6 -6
  31. package/.output/public/_nuxt/Cmiz_VOb2.js +47 -0
  32. package/.output/public/_nuxt/{VVomhVqu2.js → Cnf1PFhB2.js} +1 -1
  33. package/.output/public/_nuxt/CoTm7jd3.js +28 -0
  34. package/.output/public/_nuxt/{BzKT-ne_2.js → CsN8RHJ02.js} +1 -1
  35. package/.output/public/_nuxt/Cst8yEet.js +1 -0
  36. package/.output/public/_nuxt/Cuw2--X2.js +2 -0
  37. package/.output/public/_nuxt/D-jg-SoR.js +1 -0
  38. package/.output/public/_nuxt/{B4R5CHkk.js → D-z6N1Cz.js} +1 -1
  39. package/.output/public/_nuxt/D3gfSKKi2.js +1 -0
  40. package/.output/public/_nuxt/{BtNT93vm2.js → D4elH6Bo2.js} +1 -1
  41. package/.output/public/_nuxt/{BuVH9MB-.js → D4tAdwYm.js} +1 -1
  42. package/.output/public/_nuxt/D5-QB_-l.js +1 -0
  43. package/.output/public/_nuxt/DBzdrPzw2.js +1 -0
  44. package/.output/public/_nuxt/{CCCq9H7D2.js → DC7WzYCf2.js} +1 -1
  45. package/.output/public/_nuxt/DD4J2Otc.js +1 -0
  46. package/.output/public/_nuxt/DE-qkHRd2.js +1 -0
  47. package/.output/public/_nuxt/{BXKCB3rS.js → DE2kUGPK.js} +1 -1
  48. package/.output/public/_nuxt/{CoGETbe-2.js → DI4sdLmu2.js} +1 -1
  49. package/.output/public/_nuxt/DKHA3XxF.js +2 -0
  50. package/.output/public/_nuxt/{Drhta6gr.js → DL6fliAT.js} +2 -2
  51. package/.output/public/_nuxt/{DvUt9uMt2.js → DP6tsk912.js} +1 -1
  52. package/.output/public/_nuxt/DP_e7Vwv.js +24 -0
  53. package/.output/public/_nuxt/{DKhRushG.js → DR83EvmX.js} +1 -1
  54. package/.output/public/_nuxt/DSWuWYx_2.js +1 -0
  55. package/.output/public/_nuxt/{BhrnGVGz.js → DSdxfFX_.js} +1 -1
  56. package/.output/public/_nuxt/DVS06wUy2.js +13 -0
  57. package/.output/public/_nuxt/DXlAfhEi.js +3 -0
  58. package/.output/public/_nuxt/Dc5NeCDq.js +1 -0
  59. package/.output/public/_nuxt/{CW1HGp5X.js → DiHL9ehB.js} +1 -1
  60. package/.output/public/_nuxt/DjtDexGg.js +1 -0
  61. package/.output/public/_nuxt/{CuRtzvsa2.js → DnunMTRD2.js} +1 -1
  62. package/.output/public/_nuxt/{CZ0Gt81h.js → Dok0B4Ol.js} +2 -2
  63. package/.output/public/_nuxt/DqT2_Jtw2.js +1 -0
  64. package/.output/public/_nuxt/{DJZzthKt2.js → DtMlAxCm2.js} +1 -1
  65. package/.output/public/_nuxt/{Du0zf-d3.js → DwzJpr7P.js} +1 -1
  66. package/.output/public/_nuxt/J94L7hHq2.js +1 -0
  67. package/.output/public/_nuxt/LQBLwrYS2.js +1 -0
  68. package/.output/public/_nuxt/N9TYd_Mk2.js +1 -0
  69. package/.output/public/_nuxt/QSY9fE482.js +1 -0
  70. package/.output/public/_nuxt/{MEwEMEMl2.js → Qa9rS9oK2.js} +6 -6
  71. package/.output/public/_nuxt/{pNy4V4kd.js → R3gBFghJ2.js} +1 -1
  72. package/.output/public/_nuxt/{BAqtRt0q.js → ZxBwmbs9.js} +1 -1
  73. package/.output/public/_nuxt/{BMUEVeOK.js → _mD4IkJj.js} +1 -1
  74. package/.output/public/_nuxt/analysis.DfMg76el.css +1 -0
  75. package/.output/public/_nuxt/builds/latest.json +1 -1
  76. package/.output/public/_nuxt/builds/meta/eba8574d-1991-47df-944c-18608bb58181.json +1 -0
  77. package/.output/public/_nuxt/c_nqArmG.js +1 -0
  78. package/.output/public/_nuxt/{default.8ac6QU28.css → default.Bx6RJSbr.css} +1 -1
  79. package/.output/public/_nuxt/{entry.BHNNQA9H.css → entry.BlbU43qz.css} +1 -1
  80. package/.output/public/_nuxt/h8ddxY892.js +1 -0
  81. package/.output/public/_nuxt/{TjGWqrHo.js → i3KBHle7.js} +1 -1
  82. package/.output/public/_nuxt/jmKfTQMN.js +13 -0
  83. package/.output/public/_nuxt/{CZwDnomB.js → taHLOXkS.js} +1 -1
  84. package/.output/public/_nuxt/uYP6z4G72.js +1 -0
  85. package/.output/public/_nuxt/{CIz7SM4H.js → yuIP6K9s.js} +1 -1
  86. package/.output/public/_nuxt/zWg-9WN6.js +19 -0
  87. package/.output/public/_nuxt/zrgcKVTq.js +2 -0
  88. package/.output/server/chunks/_/LeftOutlined.mjs +1 -1
  89. package/.output/server/chunks/_/character-asset.repo.mjs +1 -1
  90. package/.output/server/chunks/_/host-bindings.mjs +1 -1
  91. package/.output/server/chunks/_/nitro.mjs +1662 -1232
  92. package/.output/server/chunks/_/nitro.mjs.map +1 -1
  93. package/.output/server/chunks/_/scene-layout.repo.mjs +1 -1
  94. package/.output/server/chunks/build/{AuthGate-DDPYswkA.mjs → AuthGate-BK2RqkbD.mjs} +5 -5
  95. package/.output/server/chunks/build/{AuthGate-DDPYswkA.mjs.map → AuthGate-BK2RqkbD.mjs.map} +1 -1
  96. package/.output/server/chunks/build/Checkbox-4EdGAAl_.mjs +1 -1
  97. package/.output/server/chunks/build/{FormItemContext-4ORSzhWv.mjs → FormItemContext-BqtgOBDe.mjs} +2 -2
  98. package/.output/server/chunks/build/{FormItemContext-4ORSzhWv.mjs.map → FormItemContext-BqtgOBDe.mjs.map} +1 -1
  99. package/.output/server/chunks/build/{OmpTerminalPanel-DZ2wHMS1.mjs → OmpTerminalPanel-Bun6rpAk.mjs} +4 -4
  100. package/.output/server/chunks/build/{OmpTerminalPanel-DZ2wHMS1.mjs.map → OmpTerminalPanel-Bun6rpAk.mjs.map} +1 -1
  101. package/.output/server/chunks/build/{PluginSlot-CT4YaNrB.mjs → PluginSlot-Do6dX0RE.mjs} +2 -2
  102. package/.output/server/chunks/build/{PluginSlot-CT4YaNrB.mjs.map → PluginSlot-Do6dX0RE.mjs.map} +1 -1
  103. package/.output/server/chunks/build/{TownView-CZbFn6mO.mjs → TownView-kQZFf4zj.mjs} +3 -3
  104. package/.output/server/chunks/build/{TownView-CZbFn6mO.mjs.map → TownView-kQZFf4zj.mjs.map} +1 -1
  105. package/.output/server/chunks/build/{_id_-Df2pgsAq.mjs → _id_-Bbx1b74O.mjs} +3 -3
  106. package/.output/server/chunks/build/{_id_-Df2pgsAq.mjs.map → _id_-Bbx1b74O.mjs.map} +1 -1
  107. package/.output/server/chunks/build/{_id_-CCVhpJtj.mjs → _id_-IijrRw3f.mjs} +3 -3
  108. package/.output/server/chunks/build/{_id_-CCVhpJtj.mjs.map → _id_-IijrRw3f.mjs.map} +1 -1
  109. package/.output/server/chunks/build/{_wsId_-CJqF-hmP.mjs → _wsId_-Dp3ACbQ5.mjs} +22 -21
  110. package/.output/server/chunks/build/{_wsId_-CJqF-hmP.mjs.map → _wsId_-Dp3ACbQ5.mjs.map} +1 -1
  111. package/.output/server/chunks/build/{agents-BTsbna5H.mjs → agents-BfIoGr_p.mjs} +18 -17
  112. package/.output/server/chunks/build/agents-BfIoGr_p.mjs.map +1 -0
  113. package/.output/server/chunks/build/{aml-BBKfWto1.mjs → aml-B5zKrvB3.mjs} +7 -7
  114. package/.output/server/chunks/build/{aml-BBKfWto1.mjs.map → aml-B5zKrvB3.mjs.map} +1 -1
  115. package/.output/server/chunks/build/analysis-MVEnlO7A.mjs +531 -0
  116. package/.output/server/chunks/build/analysis-MVEnlO7A.mjs.map +1 -0
  117. package/.output/server/chunks/build/{card-DJOYGuVH.mjs → card-IyQjdGXA.mjs} +4 -4
  118. package/.output/server/chunks/build/{card-DJOYGuVH.mjs.map → card-IyQjdGXA.mjs.map} +1 -1
  119. package/.output/server/chunks/build/{channel-templates-BPKJ8e4l.mjs → channel-templates-Bd8bgBCh.mjs} +11 -10
  120. package/.output/server/chunks/build/channel-templates-Bd8bgBCh.mjs.map +1 -0
  121. package/.output/server/chunks/build/{checkbox-C4AKj81e.mjs → checkbox-NnjtOam0.mjs} +3 -3
  122. package/.output/server/chunks/build/{checkbox-C4AKj81e.mjs.map → checkbox-NnjtOam0.mjs.map} +1 -1
  123. package/.output/server/chunks/build/{daq-Cz7TaUAM.mjs → daq-mC3-5A0L.mjs} +5 -5
  124. package/.output/server/chunks/build/{daq-Cz7TaUAM.mjs.map → daq-mC3-5A0L.mjs.map} +1 -1
  125. package/.output/server/chunks/build/dcw-EhjJpVQM.mjs +2 -2
  126. package/.output/server/chunks/build/{default-DweMY872.mjs → default-flcNWlNg.mjs} +30 -19
  127. package/.output/server/chunks/build/{default-DweMY872.mjs.map → default-flcNWlNg.mjs.map} +1 -1
  128. package/.output/server/chunks/build/{descriptions-CFaUq4y4.mjs → descriptions-DuAefuzp.mjs} +2 -2
  129. package/.output/server/chunks/build/{descriptions-CFaUq4y4.mjs.map → descriptions-DuAefuzp.mjs.map} +1 -1
  130. package/.output/server/chunks/build/{drawer-Cfh9_zft.mjs → drawer-DEIB1_X6.mjs} +2 -2
  131. package/.output/server/chunks/build/{drawer-Cfh9_zft.mjs.map → drawer-DEIB1_X6.mjs.map} +1 -1
  132. package/.output/server/chunks/build/{dropdown-CV9GW3z9.mjs → dropdown-BuD1pxH2.mjs} +6 -5
  133. package/.output/server/chunks/build/{dropdown-CV9GW3z9.mjs.map → dropdown-BuD1pxH2.mjs.map} +1 -1
  134. package/.output/server/chunks/build/{dropdown-CIsqbX4P.mjs → dropdown-w7qhyN2D.mjs} +2 -2
  135. package/.output/server/chunks/build/{dropdown-CIsqbX4P.mjs.map → dropdown-w7qhyN2D.mjs.map} +1 -1
  136. package/.output/server/chunks/build/es-DfgEl5n-.mjs +42 -0
  137. package/.output/server/chunks/build/es-DfgEl5n-.mjs.map +1 -0
  138. package/.output/server/chunks/build/{form-cs_RcfGx.mjs → form-CMLL_-Xx.mjs} +7 -6
  139. package/.output/server/chunks/build/{form-cs_RcfGx.mjs.map → form-CMLL_-Xx.mjs.map} +1 -1
  140. package/.output/server/chunks/build/{input-CobQ5LJ5.mjs → input-DZcioTwL.mjs} +93 -3449
  141. package/.output/server/chunks/build/input-DZcioTwL.mjs.map +1 -0
  142. package/.output/server/chunks/build/{input-number-BpPYAWMk.mjs → input-number-BRnbiKLd.mjs} +6 -5
  143. package/.output/server/chunks/build/{input-number-BpPYAWMk.mjs.map → input-number-BRnbiKLd.mjs.map} +1 -1
  144. package/.output/server/chunks/build/{logs-As9fZqU-.mjs → logs-BYop3JfX.mjs} +3 -3
  145. package/.output/server/chunks/build/{logs-As9fZqU-.mjs.map → logs-BYop3JfX.mjs.map} +1 -1
  146. package/.output/server/chunks/build/{menu-CVmvHyFT.mjs → menu-DXfhc0qN.mjs} +4 -3
  147. package/.output/server/chunks/build/{menu-CVmvHyFT.mjs.map → menu-DXfhc0qN.mjs.map} +1 -1
  148. package/.output/server/chunks/build/{monitor-CdFQ2z4g.mjs → monitor-BjBGkUm2.mjs} +20 -19
  149. package/.output/server/chunks/build/{monitor-CdFQ2z4g.mjs.map → monitor-BjBGkUm2.mjs.map} +1 -1
  150. package/.output/server/chunks/build/{operations-B2gHCWgZ.mjs → operations-fxI8lEBJ.mjs} +3 -3
  151. package/.output/server/chunks/build/{operations-B2gHCWgZ.mjs.map → operations-fxI8lEBJ.mjs.map} +1 -1
  152. package/.output/server/chunks/build/{pages-BItCt1ar.mjs → pages-6JD9VSbx.mjs} +5 -5
  153. package/.output/server/chunks/build/{pages-BItCt1ar.mjs.map → pages-6JD9VSbx.mjs.map} +1 -1
  154. package/.output/server/chunks/build/{permissions-D6mQw_9j.mjs → permissions-u5SZL8Fe.mjs} +14 -13
  155. package/.output/server/chunks/build/permissions-u5SZL8Fe.mjs.map +1 -0
  156. package/.output/server/chunks/build/{plugins-NAS9MQ5r.mjs → plugins-Cas6KOF-.mjs} +5 -5
  157. package/.output/server/chunks/build/{plugins-NAS9MQ5r.mjs.map → plugins-Cas6KOF-.mjs.map} +1 -1
  158. package/.output/server/chunks/build/{popconfirm-DFfoFhmt.mjs → popconfirm-BWxt-53K.mjs} +3 -3
  159. package/.output/server/chunks/build/{popconfirm-DFfoFhmt.mjs.map → popconfirm-BWxt-53K.mjs.map} +1 -1
  160. package/.output/server/chunks/build/{schedules-BjWNDWL5.mjs → schedules-Ct68Jrvw.mjs} +20 -19
  161. package/.output/server/chunks/build/{schedules-BjWNDWL5.mjs.map → schedules-Ct68Jrvw.mjs.map} +1 -1
  162. package/.output/server/chunks/build/{segmented-D7FkCgg7.mjs → segmented-DN62bOFu.mjs} +3 -3
  163. package/.output/server/chunks/build/{segmented-D7FkCgg7.mjs.map → segmented-DN62bOFu.mjs.map} +1 -1
  164. package/.output/server/chunks/build/{select-FqBNxgxT.mjs → select-DQv1DXcW.mjs} +5 -4
  165. package/.output/server/chunks/build/{select-FqBNxgxT.mjs.map → select-DQv1DXcW.mjs.map} +1 -1
  166. package/.output/server/chunks/build/{settings-Cl_KRyEn.mjs → settings-CQzR1YXR.mjs} +14 -13
  167. package/.output/server/chunks/build/settings-CQzR1YXR.mjs.map +1 -0
  168. package/.output/server/chunks/build/{space-B2uhHJG8.mjs → space-6FfG3llN.mjs} +2 -2
  169. package/.output/server/chunks/build/{space-B2uhHJG8.mjs.map → space-6FfG3llN.mjs.map} +1 -1
  170. package/.output/server/chunks/build/{switch-DZAUIbIN.mjs → switch-CfsCVFQP.mjs} +3 -3
  171. package/.output/server/chunks/build/{switch-DZAUIbIN.mjs.map → switch-CfsCVFQP.mjs.map} +1 -1
  172. package/.output/server/chunks/build/{table-CeOYERqr.mjs → table-HOjbB5YY.mjs} +11 -10
  173. package/.output/server/chunks/build/{table-CeOYERqr.mjs.map → table-HOjbB5YY.mjs.map} +1 -1
  174. package/.output/server/chunks/build/{tabs-LLNSdLl2.mjs → tabs-CC26Rbcw.mjs} +6 -5
  175. package/.output/server/chunks/build/{tabs-LLNSdLl2.mjs.map → tabs-CC26Rbcw.mjs.map} +1 -1
  176. package/.output/server/chunks/build/{tag-Dwvkh0Dj.mjs → tag-BtOMjpDx.mjs} +5 -4
  177. package/.output/server/chunks/build/{tag-Dwvkh0Dj.mjs.map → tag-BtOMjpDx.mjs.map} +1 -1
  178. package/.output/server/chunks/build/{teams-CGDZHaQl.mjs → teams-Re0wY2SQ.mjs} +19 -18
  179. package/.output/server/chunks/build/teams-Re0wY2SQ.mjs.map +1 -0
  180. package/.output/server/chunks/build/{tokens-BOYkZuoB.mjs → tokens-DLFIUvXE.mjs} +19 -18
  181. package/.output/server/chunks/build/tokens-DLFIUvXE.mjs.map +1 -0
  182. package/.output/server/chunks/build/tooltip-BSDwL_LM.mjs +3362 -0
  183. package/.output/server/chunks/build/tooltip-BSDwL_LM.mjs.map +1 -0
  184. package/.output/server/chunks/build/town-BV-hbwb5.mjs +1 -1
  185. package/.output/server/chunks/build/{town-P1rYoi0v.mjs → town-Bfme7P2I.mjs} +5 -5
  186. package/.output/server/chunks/build/{town-P1rYoi0v.mjs.map → town-Bfme7P2I.mjs.map} +1 -1
  187. package/.output/server/chunks/build/types-D6J7slEa.mjs +1 -1
  188. package/.output/server/chunks/build/types-DWqIeMRP.mjs +75 -0
  189. package/.output/server/chunks/build/types-DWqIeMRP.mjs.map +1 -0
  190. package/.output/server/chunks/build/{useAgentTemplateActions-DsBRUQni.mjs → useAgentTemplateActions-CjBwCb3u.mjs} +1 -1
  191. package/.output/server/chunks/build/{useAgentTemplateActions-DsBRUQni.mjs.map → useAgentTemplateActions-CjBwCb3u.mjs.map} +1 -1
  192. package/.output/server/chunks/build/{useAgentTemplateForm-DzQ_t2Ue.mjs → useAgentTemplateForm-BX9_xqj8.mjs} +1 -1
  193. package/.output/server/chunks/build/{useAgentTemplateForm-DzQ_t2Ue.mjs.map → useAgentTemplateForm-BX9_xqj8.mjs.map} +1 -1
  194. package/.output/server/chunks/build/{useAmlEntities-BMLHU_39.mjs → useAmlEntities-BrcTqHwa.mjs} +2 -2
  195. package/.output/server/chunks/build/{useAmlEntities-BMLHU_39.mjs.map → useAmlEntities-BrcTqHwa.mjs.map} +1 -1
  196. package/.output/server/chunks/build/{useAmlEnv-DdlyVzPu.mjs → useAmlEnv-jiGYK790.mjs} +1 -1
  197. package/.output/server/chunks/build/{useAmlEnv-DdlyVzPu.mjs.map → useAmlEnv-jiGYK790.mjs.map} +1 -1
  198. package/.output/server/chunks/build/{useAmlJobs-BG_v21hJ.mjs → useAmlJobs-CVZ1btzg.mjs} +1 -1
  199. package/.output/server/chunks/build/{useAmlJobs-BG_v21hJ.mjs.map → useAmlJobs-CVZ1btzg.mjs.map} +1 -1
  200. package/.output/server/chunks/build/{useAmlModels-D7MuOWOy.mjs → useAmlModels-DJkQzcCU.mjs} +1 -1
  201. package/.output/server/chunks/build/{useAmlModels-D7MuOWOy.mjs.map → useAmlModels-DJkQzcCU.mjs.map} +1 -1
  202. package/.output/server/chunks/build/{useAmlNotes-CTZe-GI0.mjs → useAmlNotes-DKnx9a8x.mjs} +1 -1
  203. package/.output/server/chunks/build/{useAmlNotes-CTZe-GI0.mjs.map → useAmlNotes-DKnx9a8x.mjs.map} +1 -1
  204. package/.output/server/chunks/build/{useAmlPredict-BToRrVRV.mjs → useAmlPredict-Bp4ehwKw.mjs} +1 -1
  205. package/.output/server/chunks/build/{useAmlPredict-BToRrVRV.mjs.map → useAmlPredict-Bp4ehwKw.mjs.map} +1 -1
  206. package/.output/server/chunks/build/useAnalysisFeed-B4OwUd7p.mjs +128 -0
  207. package/.output/server/chunks/build/useAnalysisFeed-B4OwUd7p.mjs.map +1 -0
  208. package/.output/server/chunks/build/useDaqAddNode-CaOCbe4-.mjs +1 -1
  209. package/.output/server/chunks/build/{useDaqDetailNode-DXgwAu5u.mjs → useDaqDetailNode-DtZ0oDAn.mjs} +3 -3
  210. package/.output/server/chunks/build/{useDaqDetailNode-DXgwAu5u.mjs.map → useDaqDetailNode-DtZ0oDAn.mjs.map} +1 -1
  211. package/.output/server/chunks/build/useDaqDetailParams-CrTMDs-2.mjs +1 -1
  212. package/.output/server/chunks/build/{useDaqFilters-Jx6EERfr.mjs → useDaqFilters-DYHGhECw.mjs} +3 -3
  213. package/.output/server/chunks/build/{useDaqFilters-Jx6EERfr.mjs.map → useDaqFilters-DYHGhECw.mjs.map} +1 -1
  214. package/.output/server/chunks/build/useDaqStream-DhzdoyIR.mjs +1 -1
  215. package/.output/server/chunks/build/useDaqTemplates-C7GzQmdJ.mjs +1 -1
  216. package/.output/server/chunks/build/{useDashboardData-Ce-EU5DJ.mjs → useDashboardData-B3lZjE7x.mjs} +3 -3
  217. package/.output/server/chunks/build/{useDashboardData-Ce-EU5DJ.mjs.map → useDashboardData-B3lZjE7x.mjs.map} +1 -1
  218. package/.output/server/chunks/build/useDcwAddNode-4mTPQ6T8.mjs +1 -1
  219. package/.output/server/chunks/build/{useDcwDetailScope-4j3B03Pi.mjs → useDcwDetailScope-BWH7jnVh.mjs} +2 -2
  220. package/.output/server/chunks/build/{useDcwDetailScope-4j3B03Pi.mjs.map → useDcwDetailScope-BWH7jnVh.mjs.map} +1 -1
  221. package/.output/server/chunks/build/useDcwStream-BXJ2V8HM.mjs +1 -1
  222. package/.output/server/chunks/build/{useLogsManual-CMjD62nt.mjs → useLogsManual-CElmZuJh.mjs} +1 -1
  223. package/.output/server/chunks/build/{useLogsManual-CMjD62nt.mjs.map → useLogsManual-CElmZuJh.mjs.map} +1 -1
  224. package/.output/server/chunks/build/{useMonitorData-D2gFSonG.mjs → useMonitorData-DcIfMEiz.mjs} +1 -1
  225. package/.output/server/chunks/build/{useMonitorData-D2gFSonG.mjs.map → useMonitorData-DcIfMEiz.mjs.map} +1 -1
  226. package/.output/server/chunks/build/{useTeamActions-BOLQkYxg.mjs → useTeamActions-C3_O_AIU.mjs} +1 -1
  227. package/.output/server/chunks/build/{useTeamActions-BOLQkYxg.mjs.map → useTeamActions-C3_O_AIU.mjs.map} +1 -1
  228. package/.output/server/chunks/build/{useTeamAddMemberDialog-BCgrLPxI.mjs → useTeamAddMemberDialog-DWAoZCKd.mjs} +1 -1
  229. package/.output/server/chunks/build/{useTeamAddMemberDialog-BCgrLPxI.mjs.map → useTeamAddMemberDialog-DWAoZCKd.mjs.map} +1 -1
  230. package/.output/server/chunks/build/{useTeamCreateDialog-CJk40LqS.mjs → useTeamCreateDialog-911mIPWd.mjs} +1 -1
  231. package/.output/server/chunks/build/{useTeamCreateDialog-CJk40LqS.mjs.map → useTeamCreateDialog-911mIPWd.mjs.map} +1 -1
  232. package/.output/server/chunks/build/{useTeamDeployDialog-49hdUXQP.mjs → useTeamDeployDialog-D0STROoQ.mjs} +1 -1
  233. package/.output/server/chunks/build/{useTeamDeployDialog-49hdUXQP.mjs.map → useTeamDeployDialog-D0STROoQ.mjs.map} +1 -1
  234. package/.output/server/chunks/build/{useTeamPluginDialog-Dh-QOoiU.mjs → useTeamPluginDialog-Df6-e2OW.mjs} +1 -1
  235. package/.output/server/chunks/build/{useTeamPluginDialog-Dh-QOoiU.mjs.map → useTeamPluginDialog-Df6-e2OW.mjs.map} +1 -1
  236. package/.output/server/chunks/build/{useTokenCreate-DkYvEQUD.mjs → useTokenCreate-DOojAhM5.mjs} +1 -1
  237. package/.output/server/chunks/build/{useTokenCreate-DkYvEQUD.mjs.map → useTokenCreate-DOojAhM5.mjs.map} +1 -1
  238. package/.output/server/chunks/build/{useTokenRename-DOCP4aeI.mjs → useTokenRename-CMA5dLHx.mjs} +1 -1
  239. package/.output/server/chunks/build/{useTokenRename-DOCP4aeI.mjs.map → useTokenRename-CMA5dLHx.mjs.map} +1 -1
  240. package/.output/server/chunks/build/{useTokenReveal-CybwwflV.mjs → useTokenReveal-C19aCKzt.mjs} +1 -1
  241. package/.output/server/chunks/build/{useTokenReveal-CybwwflV.mjs.map → useTokenReveal-C19aCKzt.mjs.map} +1 -1
  242. package/.output/server/chunks/build/{useTokensList-BLiMvrc4.mjs → useTokensList-D0ZpLOhR.mjs} +1 -1
  243. package/.output/server/chunks/build/{useTokensList-BLiMvrc4.mjs.map → useTokensList-D0ZpLOhR.mjs.map} +1 -1
  244. package/.output/server/chunks/build/{useWorkbenchAuth-DAabQl7X.mjs → useWorkbenchAuth-CN5E3J5L.mjs} +1 -1
  245. package/.output/server/chunks/build/{useWorkbenchAuth-DAabQl7X.mjs.map → useWorkbenchAuth-CN5E3J5L.mjs.map} +1 -1
  246. package/.output/server/chunks/build/{useWorkbenchWorkspaces-6-mpCGCR.mjs → useWorkbenchWorkspaces-ChKByQSD.mjs} +1 -1
  247. package/.output/server/chunks/build/{useWorkbenchWorkspaces-6-mpCGCR.mjs.map → useWorkbenchWorkspaces-ChKByQSD.mjs.map} +1 -1
  248. package/.output/server/chunks/build/{users-B_pHStEa.mjs → users-BW4jowK4.mjs} +15 -14
  249. package/.output/server/chunks/build/users-BW4jowK4.mjs.map +1 -0
  250. package/.output/server/chunks/build/{workshop-C0DefygA.mjs → workshop-Bx55czXL.mjs} +11 -10
  251. package/.output/server/chunks/build/workshop-Bx55czXL.mjs.map +1 -0
  252. package/.output/server/chunks/routes/api/mcp/workshop.mjs +1 -1
  253. package/.output/server/chunks/routes/api/system/backup/run.post.mjs +2 -2
  254. package/.output/server/chunks/routes/api/workshop/analysis/_id_.delete.mjs +46 -0
  255. package/.output/server/chunks/routes/api/workshop/analysis/_id_.delete.mjs.map +1 -0
  256. package/.output/server/chunks/routes/api/workshop/analysis/_id_.get.mjs +40 -0
  257. package/.output/server/chunks/routes/api/workshop/analysis/_id_.get.mjs.map +1 -0
  258. package/.output/server/chunks/routes/api/workshop/analysis/_id_.patch.mjs +103 -0
  259. package/.output/server/chunks/routes/api/workshop/analysis/_id_.patch.mjs.map +1 -0
  260. package/.output/server/chunks/routes/api/workshop/assets/index.post.mjs +1 -1
  261. package/.output/server/chunks/routes/api/workshop/assets/index2.post.mjs +1 -1
  262. package/.output/server/chunks/routes/api/workshop/channel-templates/_id/instantiate.post.mjs +2 -2
  263. package/.output/server/chunks/routes/api/workshop/channels/_id/activate.post.mjs +1 -1
  264. package/.output/server/chunks/routes/api/workshop/channels/_id/chat/index.post.mjs +1 -1
  265. package/.output/server/chunks/routes/api/workshop/channels/_id/index.post.mjs +1 -1
  266. package/.output/server/chunks/routes/api/workshop/channels/_id/index.put.mjs +1 -1
  267. package/.output/server/chunks/routes/api/workshop/channels/_id/index3.post.mjs +1 -1
  268. package/.output/server/chunks/routes/api/workshop/channels/_id/index4.post.mjs +1 -1
  269. package/.output/server/chunks/routes/api/workshop/channels/_id/index5.get.mjs +1 -1
  270. package/.output/server/chunks/routes/api/workshop/channels/_id/line.put.mjs +1 -1
  271. package/.output/server/chunks/routes/api/workshop/channels/_id/terminals.get.mjs +1 -1
  272. package/.output/server/chunks/routes/api/workshop/channels/_id/twin-profile.get.mjs +1 -1
  273. package/.output/server/chunks/routes/api/workshop/channels/_id/twin-profile.patch.mjs +1 -1
  274. package/.output/server/chunks/routes/api/workshop/channels/index.get.mjs +1 -1
  275. package/.output/server/chunks/routes/api/workshop/channels.post.mjs +7 -7
  276. package/.output/server/chunks/routes/api/workshop/daq/_id/samples.get.mjs +1 -1
  277. package/.output/server/chunks/routes/api/workshop/daq/index.post.mjs +1 -1
  278. package/.output/server/chunks/routes/api/workshop/daq/infra/reconnect.post.mjs +1 -1
  279. package/.output/server/chunks/routes/api/workshop/daq/infra.get.mjs +1 -1
  280. package/.output/server/chunks/routes/api/workshop/daq/templates/_key_.delete.mjs +1 -1
  281. package/.output/server/chunks/routes/api/workshop/daq/templates/_key_.patch.mjs +1 -1
  282. package/.output/server/chunks/routes/api/workshop/daq/test-driver.post.mjs +1 -1
  283. package/.output/server/chunks/routes/api/workshop/dcw/_id/bind.post.mjs +1 -1
  284. package/.output/server/chunks/routes/api/workshop/dcw/_id/bindings.put.mjs +1 -1
  285. package/.output/server/chunks/routes/api/workshop/dcw/_id/param-ledger.get.mjs +1 -1
  286. package/.output/server/chunks/routes/api/workshop/dcw/_id/read.post.mjs +1 -1
  287. package/.output/server/chunks/routes/api/workshop/dcw/_id/test.post.mjs +1 -1
  288. package/.output/server/chunks/routes/api/workshop/dcw/_id/write.post.mjs +1 -1
  289. package/.output/server/chunks/routes/api/workshop/dcw/_id_.delete.mjs +1 -1
  290. package/.output/server/chunks/routes/api/workshop/dcw/_id_.patch.mjs +1 -1
  291. package/.output/server/chunks/routes/api/workshop/dcw/controller.post.mjs +1 -1
  292. package/.output/server/chunks/routes/api/workshop/dcw/index.get.mjs +1 -1
  293. package/.output/server/chunks/routes/api/workshop/dcw/index.post.mjs +1 -1
  294. package/.output/server/chunks/routes/api/workshop/dcw/index2.get.mjs +1 -1
  295. package/.output/server/chunks/routes/api/workshop/dcw/index2.post.mjs +1 -1
  296. package/.output/server/chunks/routes/api/workshop/dcw/index3.get.mjs +1 -1
  297. package/.output/server/chunks/routes/api/workshop/dcw/index3.post.mjs +1 -1
  298. package/.output/server/chunks/routes/api/workshop/dcw/index4.get.mjs +1 -1
  299. package/.output/server/chunks/routes/api/workshop/dcw/index4.post.mjs +1 -1
  300. package/.output/server/chunks/routes/api/workshop/dcw/index5.get.mjs +1 -1
  301. package/.output/server/chunks/routes/api/workshop/dcw/index5.post.mjs +1 -1
  302. package/.output/server/chunks/routes/api/workshop/dcw/index6.get.mjs +1 -1
  303. package/.output/server/chunks/routes/api/workshop/dcw/index7.get.mjs +1 -1
  304. package/.output/server/chunks/routes/api/workshop/dcw/journal/node/_nodeId/rollback.post.mjs +1 -1
  305. package/.output/server/chunks/routes/api/workshop/dcw/line/query.get.mjs +1 -1
  306. package/.output/server/chunks/routes/api/workshop/dcw/lines/_id/start.post.mjs +1 -1
  307. package/.output/server/chunks/routes/api/workshop/dcw/lines/_id/stop.post.mjs +1 -1
  308. package/.output/server/chunks/routes/api/workshop/dcw/lines/_id_.delete.mjs +1 -1
  309. package/.output/server/chunks/routes/api/workshop/dcw/mes-artifacts/file.get.mjs +1 -1
  310. package/.output/server/chunks/routes/api/workshop/dcw/mes-hook-test.post.mjs +1 -1
  311. package/.output/server/chunks/routes/api/workshop/dcw/mes-test-read.post.mjs +1 -1
  312. package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id/judge.post.mjs +1 -1
  313. package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id/rollback.post.mjs +1 -1
  314. package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id/series.get.mjs +1 -1
  315. package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id_.get.mjs +1 -1
  316. package/.output/server/chunks/routes/api/workshop/dcw/params/_id/read.post.mjs +1 -1
  317. package/.output/server/chunks/routes/api/workshop/dcw/params/_id/write.post.mjs +1 -1
  318. package/.output/server/chunks/routes/api/workshop/dcw/params/_id_.delete.mjs +1 -1
  319. package/.output/server/chunks/routes/api/workshop/dcw/params/_id_.patch.mjs +1 -1
  320. package/.output/server/chunks/routes/api/workshop/dcw/products/_id_.delete.mjs +1 -1
  321. package/.output/server/chunks/routes/api/workshop/dcw/products/_id_.patch.mjs +1 -1
  322. package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/apply.post.mjs +1 -1
  323. package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/mark-good.post.mjs +1 -1
  324. package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/rollback-good.post.mjs +1 -1
  325. package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id_.delete.mjs +1 -1
  326. package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/close.post.mjs +1 -1
  327. package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/data.get.mjs +1 -1
  328. package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/rollback.post.mjs +1 -1
  329. package/.output/server/chunks/routes/api/workshop/dcw/templates/_key_.delete.mjs +1 -1
  330. package/.output/server/chunks/routes/api/workshop/dcw/templates/_key_.patch.mjs +1 -1
  331. package/.output/server/chunks/routes/api/workshop/dcw/test-driver.post.mjs +1 -1
  332. package/.output/server/chunks/routes/api/workshop/device-twins/_id/control.post.mjs +1 -1
  333. package/.output/server/chunks/routes/api/workshop/device-twins/_id/telemetry.post.mjs +1 -1
  334. package/.output/server/chunks/routes/api/workshop/device-twins/_id_.delete.mjs +1 -1
  335. package/.output/server/chunks/routes/api/workshop/device-twins/_id_.patch.mjs +1 -1
  336. package/.output/server/chunks/routes/api/workshop/exp/confirmations/_id/decide.post.mjs +1 -1
  337. package/.output/server/chunks/routes/api/workshop/exp/index.get.mjs +1 -1
  338. package/.output/server/chunks/routes/api/workshop/fs/dirs.get.mjs +1 -1
  339. package/.output/server/chunks/routes/api/workshop/harnesses/_id/providers.get.mjs +1 -1
  340. package/.output/server/chunks/routes/api/workshop/harnesses.get.mjs +1 -1
  341. package/.output/server/chunks/routes/api/workshop/hitl/pending.get.mjs +1 -1
  342. package/.output/server/chunks/routes/api/workshop/hitl/respond.post.mjs +1 -1
  343. package/.output/server/chunks/routes/api/workshop/index.put.mjs +1 -1
  344. package/.output/server/chunks/routes/api/workshop/index10.get.mjs +20 -23
  345. package/.output/server/chunks/routes/api/workshop/index10.get.mjs.map +1 -1
  346. package/.output/server/chunks/routes/api/workshop/index11.get.mjs +25 -11
  347. package/.output/server/chunks/routes/api/workshop/index11.get.mjs.map +1 -1
  348. package/.output/server/chunks/routes/api/workshop/index12.get.mjs +10 -4
  349. package/.output/server/chunks/routes/api/workshop/index12.get.mjs.map +1 -1
  350. package/.output/server/chunks/routes/api/workshop/index13.get.mjs +2 -3
  351. package/.output/server/chunks/routes/api/workshop/index13.get.mjs.map +1 -1
  352. package/.output/server/chunks/routes/api/workshop/index14.get.mjs +3 -2
  353. package/.output/server/chunks/routes/api/workshop/index14.get.mjs.map +1 -1
  354. package/.output/server/chunks/routes/api/workshop/index15.get.mjs +30 -0
  355. package/.output/server/chunks/routes/api/workshop/index15.get.mjs.map +1 -0
  356. package/.output/server/chunks/routes/api/workshop/index3.get.mjs +24 -9
  357. package/.output/server/chunks/routes/api/workshop/index3.get.mjs.map +1 -1
  358. package/.output/server/chunks/routes/api/workshop/index3.post.mjs +1 -1
  359. package/.output/server/chunks/routes/api/workshop/index4.get.mjs +10 -4
  360. package/.output/server/chunks/routes/api/workshop/index4.get.mjs.map +1 -1
  361. package/.output/server/chunks/routes/api/workshop/index4.post.mjs +1 -1
  362. package/.output/server/chunks/routes/api/workshop/index5.get.mjs +4 -29
  363. package/.output/server/chunks/routes/api/workshop/index5.get.mjs.map +1 -1
  364. package/.output/server/chunks/routes/api/workshop/index5.post.mjs +1 -1
  365. package/.output/server/chunks/routes/api/workshop/index6.get.mjs +25 -22
  366. package/.output/server/chunks/routes/api/workshop/index6.get.mjs.map +1 -1
  367. package/.output/server/chunks/routes/api/workshop/index7.get.mjs +26 -5
  368. package/.output/server/chunks/routes/api/workshop/index7.get.mjs.map +1 -1
  369. package/.output/server/chunks/routes/api/workshop/index8.get.mjs +4 -39
  370. package/.output/server/chunks/routes/api/workshop/index8.get.mjs.map +1 -1
  371. package/.output/server/chunks/routes/api/workshop/index9.get.mjs +40 -20
  372. package/.output/server/chunks/routes/api/workshop/index9.get.mjs.map +1 -1
  373. package/.output/server/chunks/routes/api/workshop/plugins/_name/disable.post.mjs +1 -1
  374. package/.output/server/chunks/routes/api/workshop/plugins/_name/enable.post.mjs +1 -1
  375. package/.output/server/chunks/routes/api/workshop/scene/layouts/_channelId_.delete.mjs +1 -1
  376. package/.output/server/chunks/routes/api/workshop/scene/layouts/_channelId_.put.mjs +1 -1
  377. package/.output/server/chunks/routes/api/workshop/teams/_id/deploy.post.mjs +1 -1
  378. package/.output/server/chunks/routes/api/workshop/teams/_id/index.put.mjs +1 -1
  379. package/.output/server/chunks/routes/api/workshop/teams/_id/index2.get.mjs +1 -1
  380. package/.output/server/chunks/routes/api/workshop/workspaces/_id/channel-templates/_tplId_.post.mjs +2 -2
  381. package/.output/server/chunks/routes/renderer.mjs +3 -3
  382. package/.output/server/chunks/virtual/entry.mjs +199 -468
  383. package/.output/server/chunks/virtual/precomputed.mjs +1 -1
  384. package/.output/server/package.json +1 -1
  385. package/README-zh.md +17 -0
  386. package/README.md +20 -0
  387. package/app/components/AppSidebar.vue +1 -0
  388. package/app/components/analysis/AnalysisEditModal.vue +192 -0
  389. package/app/components/analysis/AnalysisFilterCard.vue +159 -0
  390. package/app/components/analysis/AnalysisPageHead.vue +47 -0
  391. package/app/components/analysis/AnalysisTable.vue +322 -0
  392. package/app/composables/useRouteMeta.ts +1 -0
  393. package/app/config/schema.ts +1 -0
  394. package/app/pages/analysis/composables/useAnalysisFeed.ts +85 -0
  395. package/app/pages/analysis/index.vue +128 -0
  396. package/app/pages/analysis/types.ts +50 -0
  397. package/cli/commands/mcp.mjs +160 -160
  398. package/i18n/locales/en.ts +63 -0
  399. package/i18n/locales/zh-CN.ts +63 -0
  400. package/mcp/aw-mcp-server.mjs +799 -799
  401. package/package.json +2 -2
  402. package/scripts/onboarding/onboard.mjs +5 -2
  403. package/scripts/onboarding/sim-twin.mjs +312 -0
  404. package/server/api/workshop/analysis/[id].delete.ts +30 -0
  405. package/server/api/workshop/analysis/[id].get.ts +25 -0
  406. package/server/api/workshop/analysis/[id].patch.ts +100 -0
  407. package/server/api/workshop/analysis/index.get.ts +39 -0
  408. package/server/plugins/workshop.ts +4 -0
  409. package/server/repositories/user.repository.ts +2 -2
  410. package/server/services/workshop/agents/host-tool-bridge/catalog.ts +4 -1
  411. package/server/services/workshop/agents/host-tool-bridge/tools/industrial.ts +5 -2
  412. package/server/services/workshop/agents/industrial/analysis-tools.ts +242 -0
  413. package/server/services/workshop/agents/industrial/index.ts +1 -0
  414. package/server/services/workshop/agents/industrial/ops-tools.ts +3 -2
  415. package/server/services/workshop/analysis/analysis.repo.ts +241 -0
  416. package/server/services/workshop/db/database/migrations.ts +10 -0
  417. package/server/services/workshop/db/database/open.ts +3 -1
  418. package/server/services/workshop/db/database/schema.ts +32 -1
  419. package/server/services/workshop/db/ops.repo.ts +1 -1
  420. package/server/services/workshop/db/retention.ts +2 -0
  421. package/server/services/workshop/db/schema.sql +31 -0
  422. package/server/services/workshop/settings.ts +1 -0
  423. package/shared/config/schema.json +1 -0
  424. package/.output/public/_nuxt/B-Y_rsfn.js +0 -106
  425. package/.output/public/_nuxt/B02cxZz72.js +0 -1
  426. package/.output/public/_nuxt/BKHd_sKD2.js +0 -47
  427. package/.output/public/_nuxt/BikIgp9R.js +0 -1
  428. package/.output/public/_nuxt/BkGqyjWm.js +0 -3
  429. package/.output/public/_nuxt/Br2LgfbH2.js +0 -13
  430. package/.output/public/_nuxt/BrFF_9742.js +0 -1
  431. package/.output/public/_nuxt/BtYg4aGR2.js +0 -1
  432. package/.output/public/_nuxt/C4X_Z1lA.js +0 -1
  433. package/.output/public/_nuxt/CBATzTUf.js +0 -13
  434. package/.output/public/_nuxt/CEP4UrDv.js +0 -1
  435. package/.output/public/_nuxt/CIPKYgrH2.js +0 -1
  436. package/.output/public/_nuxt/CPSHP_EI.js +0 -1
  437. package/.output/public/_nuxt/CSyIwYcJ2.js +0 -1
  438. package/.output/public/_nuxt/CZkTlW93.js +0 -2
  439. package/.output/public/_nuxt/CZyYdpqZ2.js +0 -1
  440. package/.output/public/_nuxt/CeDkXWCz.js +0 -1
  441. package/.output/public/_nuxt/Cl19UD7U.js +0 -1
  442. package/.output/public/_nuxt/ClrkV0C4.js +0 -1
  443. package/.output/public/_nuxt/Cv_H1gOM2.js +0 -1
  444. package/.output/public/_nuxt/D5i2ofVw2.js +0 -1
  445. package/.output/public/_nuxt/D6XGn5vM.js +0 -2
  446. package/.output/public/_nuxt/D8VQGThE.js +0 -28
  447. package/.output/public/_nuxt/DBwuADr82.js +0 -1
  448. package/.output/public/_nuxt/DfqRQSFn.js +0 -19
  449. package/.output/public/_nuxt/DraEWn4N2.js +0 -1
  450. package/.output/public/_nuxt/DyMgrV29.js +0 -1
  451. package/.output/public/_nuxt/H7Rbu32y2.js +0 -1
  452. package/.output/public/_nuxt/YDs3mbQu2.js +0 -1
  453. package/.output/public/_nuxt/Z3MSTcdu2.js +0 -1
  454. package/.output/public/_nuxt/_vR_sc7t.js +0 -24
  455. package/.output/public/_nuxt/builds/meta/92fd7e2e-18f2-45c3-8588-d93004dda6e3.json +0 -1
  456. package/.output/public/_nuxt/gbaq2UOO.js +0 -1
  457. package/.output/public/_nuxt/o-G6YtmK2.js +0 -1
  458. package/.output/public/_nuxt/ylowSquM2.js +0 -1
  459. package/.output/server/chunks/build/agents-BTsbna5H.mjs.map +0 -1
  460. package/.output/server/chunks/build/channel-templates-BPKJ8e4l.mjs.map +0 -1
  461. package/.output/server/chunks/build/input-CobQ5LJ5.mjs.map +0 -1
  462. package/.output/server/chunks/build/permissions-D6mQw_9j.mjs.map +0 -1
  463. package/.output/server/chunks/build/settings-Cl_KRyEn.mjs.map +0 -1
  464. package/.output/server/chunks/build/teams-CGDZHaQl.mjs.map +0 -1
  465. package/.output/server/chunks/build/tokens-BOYkZuoB.mjs.map +0 -1
  466. package/.output/server/chunks/build/users-B_pHStEa.mjs.map +0 -1
  467. package/.output/server/chunks/build/workshop-C0DefygA.mjs.map +0 -1
  468. package/scripts/_audit/.tmp/audit-data/dcw-params.json +0 -15
  469. package/scripts/_audit/.tmp/audit-data/dcws.json +0 -30
  470. package/scripts/_audit/aml-layout-diag.mjs +0 -83
  471. package/scripts/_audit/channel-inspect.mjs +0 -49
  472. package/scripts/_audit/cleanup-apply.mjs +0 -89
  473. package/scripts/_audit/cleanup-plan.mjs +0 -82
  474. package/scripts/_audit/contrast-check.mjs +0 -43
  475. package/scripts/_audit/dcw-controller-e2e.ts +0 -106
  476. package/scripts/_audit/dcw-flush-cost.ts +0 -43
  477. package/scripts/_audit/dcw-rollback-ledger.ts +0 -156
  478. package/scripts/_audit/dcw-unrecorded-write.ts +0 -171
  479. package/scripts/_audit/dcw-write-mutex.ts +0 -157
  480. package/scripts/_audit/design-shots.mjs +0 -145
  481. package/scripts/_audit/docs-font-probe.mjs +0 -68
  482. package/scripts/_audit/docs-probe.mjs +0 -107
  483. package/scripts/_audit/docs-shots.mjs +0 -171
  484. package/scripts/_audit/docs-v3-verify.mjs +0 -255
  485. package/scripts/_audit/docs-vue-lint.mjs +0 -81
  486. package/scripts/_audit/docs-vue-lint2.mjs +0 -91
  487. package/scripts/_audit/exp-cost-scaling.mjs +0 -57
  488. package/scripts/_audit/exp-envelope-and-png.mjs +0 -78
  489. package/scripts/_audit/exp-png-decode.mjs +0 -67
  490. package/scripts/_audit/exp-retention-plan.mjs +0 -61
  491. package/scripts/_audit/exp-retention-rescan.mjs +0 -42
  492. package/scripts/_audit/exp-sweep-fairness.mjs +0 -50
  493. package/scripts/_audit/feature-audit-e2e.mjs +0 -342
  494. package/scripts/_audit/fix-settings-count.mjs +0 -57
  495. package/scripts/_audit/full-e2e-adopt.mjs +0 -238
  496. package/scripts/_audit/full-e2e-close-loop.mjs +0 -134
  497. package/scripts/_audit/full-e2e-retrain.mjs +0 -320
  498. package/scripts/_audit/full-e2e-supplement.mjs +0 -192
  499. package/scripts/_audit/full-e2e-ui-final.mjs +0 -111
  500. package/scripts/_audit/full-e2e-ui-mount.mjs +0 -111
  501. package/scripts/_audit/full-feature-e2e-20260927.mjs +0 -627
  502. package/scripts/_audit/glass-verify.mjs +0 -155
  503. package/scripts/_audit/hydration-diff.mjs +0 -104
  504. package/scripts/_audit/hydration-head.mjs +0 -36
  505. package/scripts/_audit/hydration-probe.mjs +0 -59
  506. package/scripts/_audit/idd-scenarios-e2e.mjs +0 -239
  507. package/scripts/_audit/kb-diag-complete.mjs +0 -261
  508. package/scripts/_audit/kb-diag-complete2.mjs +0 -271
  509. package/scripts/_audit/kb-diag-loop-e2e.mjs +0 -357
  510. package/scripts/_audit/kb-diag-loop-mock.mjs +0 -416
  511. package/scripts/_audit/kb-diag-loop-v2.mjs +0 -314
  512. package/scripts/_audit/lead-matrix-test.mjs +0 -172
  513. package/scripts/_audit/plc-agent-task.mjs +0 -74
  514. package/scripts/_audit/plc-clean-scenario.mjs +0 -434
  515. package/scripts/_audit/plc-clean-shots.mjs +0 -161
  516. package/scripts/_audit/plc-fc10-probe.mjs +0 -30
  517. package/scripts/_audit/probe-binding.mjs +0 -114
  518. package/scripts/_audit/recipe-save-e2e.mjs +0 -365
  519. package/scripts/_audit/review-fix-verify.mjs +0 -158
  520. package/scripts/_audit/runtime-dir-e2e.mjs +0 -393
  521. package/scripts/_audit/town-focus-shot.mjs +0 -129
  522. package/scripts/_audit/town-reposition.mjs +0 -85
  523. package/scripts/_audit/verify-cleanup.mjs +0 -67
  524. package/scripts/_audit/verify-data-integrity.mjs +0 -112
  525. package/scripts/_audit/watchdog-recovery-test.mjs +0 -149
  526. package/scripts/_dbg-optloop-ui-shots.mjs +0 -52
  527. /package/.output/public/_nuxt/{4RTUlYvj2.js → 4RTUlYvj.js} +0 -0
  528. /package/.output/public/_nuxt/{BBhLVYdM.js → BBhLVYdM2.js} +0 -0
  529. /package/.output/public/_nuxt/{BG7XSX-S2.js → BG7XSX-S.js} +0 -0
  530. /package/.output/public/_nuxt/{BU7WuuKh.js → BU7WuuKh2.js} +0 -0
  531. /package/.output/public/_nuxt/{BrRX-l9B2.js → BrRX-l9B.js} +0 -0
  532. /package/.output/public/_nuxt/{CHyzK5m52.js → CHyzK5m5.js} +0 -0
  533. /package/.output/public/_nuxt/{Ckafrjnw2.js → Ckafrjnw.js} +0 -0
  534. /package/.output/public/_nuxt/{D1Xw30Dj2.js → D1Xw30Dj.js} +0 -0
  535. /package/.output/public/_nuxt/{DEhjFhZ2.js → DEhjFhZ22.js} +0 -0
  536. /package/.output/public/_nuxt/{DdNujZN5.js → DdNujZN52.js} +0 -0
  537. /package/.output/public/_nuxt/{DzwIZ81f.js → DzwIZ81f2.js} +0 -0
  538. /package/.output/public/_nuxt/{M6NcguDO.js → M6NcguDO2.js} +0 -0
  539. /package/.output/public/_nuxt/{MW-V7IIP2.js → MW-V7IIP.js} +0 -0
  540. /package/.output/public/_nuxt/{WmMwIS4y.js → WmMwIS4y2.js} +0 -0
  541. /package/.output/public/_nuxt/{qIQFsHtF.js → qIQFsHtF2.js} +0 -0
@@ -1,5 +1,5 @@
1
- import { d as defineApiHandler, g as getWorkshopManager } from '../../../_/nitro.mjs';
2
- import { resolveUser, withOwnerNames } from './caller.mjs';
1
+ import { d as defineApiHandler, b as getOps, l as getQuery } from '../../../_/nitro.mjs';
2
+ import { resolveUser, isAdmin } from './caller.mjs';
3
3
  import 'node:crypto';
4
4
  import 'node:http';
5
5
  import 'node:https';
@@ -22,9 +22,15 @@ import 'node:util';
22
22
  import 'node:v8';
23
23
 
24
24
  const index_get = defineApiHandler(async (event) => {
25
+ var _a;
25
26
  const user = resolveUser(event);
26
- const templates = getWorkshopManager().listChannelTemplatesVisibleTo(user);
27
- return withOwnerNames(templates);
27
+ const repo = (_a = getOps()) == null ? void 0 : _a.approvalRequests;
28
+ if (!repo) return { requests: [] };
29
+ const q = getQuery(event);
30
+ const scope = q.scope === "all" ? "all" : "pending";
31
+ const rows = scope === "pending" ? repo.listPending() : repo.list(200);
32
+ const visible = isAdmin(user) || user.role === "editor" ? rows : rows.filter((r) => r.requestedBy === user.id);
33
+ return { requests: visible };
28
34
  });
29
35
 
30
36
  export { index_get as default };
@@ -1 +1 @@
1
- {"version":3,"file":"index4.get.mjs","sources":["../../../../../../server/api/workshop/channel-templates/index.get.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAQA,kBAAe,gBAAA,CAAiB,OAAO,KAAA,KAAU;AAC/C,EAAA,MAAM,IAAA,GAAO,YAAY,KAAK,CAAA;AAC9B,EAAA,MAAM,SAAA,GAAY,kBAAA,EAAmB,CAAE,6BAAA,CAA8B,IAAI,CAAA;AACzE,EAAA,OAAO,eAAe,SAAS,CAAA;AACjC,CAAC,CAAA;;;;"}
1
+ {"version":3,"file":"index4.get.mjs","sources":["../../../../../../server/api/workshop/approvals/index.get.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAUA,kBAAe,gBAAA,CAAiB,OAAO,KAAA,KAAU;AAVjD,EAAA,IAAA,EAAA;AAWE,EAAA,MAAM,IAAA,GAAO,YAAY,KAAK,CAAA;AAC9B,EAAA,MAAM,IAAA,GAAA,CAAO,EAAA,GAAA,MAAA,EAAO,KAAP,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAU,gBAAA;AACvB,EAAA,IAAI,CAAC,IAAA,EAAM,OAAO,EAAE,QAAA,EAAU,EAAC,EAAE;AACjC,EAAA,MAAM,CAAA,GAAI,SAAS,KAAK,CAAA;AACxB,EAAA,MAAM,KAAA,GAAQ,CAAA,CAAE,KAAA,KAAU,KAAA,GAAQ,KAAA,GAAQ,SAAA;AAC1C,EAAA,MAAM,IAAA,GAAO,UAAU,SAAA,GAAY,IAAA,CAAK,aAAY,GAAI,IAAA,CAAK,KAAK,GAAG,CAAA;AACrE,EAAA,MAAM,OAAA,GAAU,OAAA,CAAQ,IAAI,CAAA,IAAK,KAAK,IAAA,KAAS,QAAA,GAC3C,IAAA,GACA,IAAA,CAAK,MAAA,CAAO,CAAA,CAAA,KAAK,CAAA,CAAE,WAAA,KAAgB,KAAK,EAAE,CAAA;AAC9C,EAAA,OAAO,EAAE,UAAU,OAAA,EAAQ;AAC7B,CAAC,CAAA;;;;"}
@@ -1,4 +1,4 @@
1
- import { d as defineApiHandler, a$ as bindDcwBroadcast, as as broadcastSceneEvent, r as readBody, aD as getDcwLineRepo, A as AppError, Y as ErrorCodes, $ as getDcwController, V as audit } from '../../../_/nitro.mjs';
1
+ import { d as defineApiHandler, b0 as bindDcwBroadcast, as as broadcastSceneEvent, r as readBody, aF as getDcwLineRepo, A as AppError, Y as ErrorCodes, $ as getDcwController, V as audit } from '../../../_/nitro.mjs';
2
2
  import { requireRole } from './caller.mjs';
3
3
  import 'node:crypto';
4
4
  import 'node:http';
@@ -1,6 +1,5 @@
1
- import { resolveUser } from './caller.mjs';
2
- import { d as defineApiHandler, as as broadcastSceneEvent, aU as tsdbReady, aV as getDaqQueue, _ as getDaqController, aW as listDaqTemplates, aX as daqInfraStatus, ab as filterByLine } from '../../../_/nitro.mjs';
3
- import { bindDaqHost } from '../../../_/host-bindings.mjs';
1
+ import { d as defineApiHandler, g as getWorkshopManager } from '../../../_/nitro.mjs';
2
+ import { resolveUser, withOwnerNames } from './caller.mjs';
4
3
  import 'node:crypto';
5
4
  import 'node:http';
6
5
  import 'node:https';
@@ -23,33 +22,9 @@ import 'node:util';
23
22
  import 'node:v8';
24
23
 
25
24
  const index_get = defineApiHandler(async (event) => {
26
- var _a, _b, _c, _d;
27
25
  const user = resolveUser(event);
28
- bindDaqHost(broadcastSceneEvent);
29
- await Promise.all([tsdbReady, getDaqQueue()]);
30
- const ctrl = getDaqController();
31
- ctrl.provisionLegacyTwins();
32
- const state = ctrl.controllerState();
33
- return {
34
- controller: state,
35
- // 产线级权限:普通用户仅见授权产线的节点(admin/editor 全量)
36
- nodes: filterByLine(user, ctrl.listViews(), (n) => n.lineId),
37
- meta: {
38
- ...ctrl.backends(),
39
- produced: (_a = state.produced) != null ? _a : 0,
40
- consumed: (_b = state.consumed) != null ? _b : 0,
41
- dropped: (_c = state.dropped) != null ? _c : 0,
42
- samplesStored: (_d = state.samplesStored) != null ? _d : 0
43
- },
44
- // 驱动协议栈可用性(包缺失 → UI 显示"未安装";含插件驱动)
45
- driverAvailable: await ctrl.driverAvailability(),
46
- // 驱动目录(内置 + 协议插件自描述合并;前端添加节点下拉/参数表单同源消费)
47
- drivers: await ctrl.driverCatalog(),
48
- // 基础设施在线状态(降级 → 前端横幅 + 重连入口)
49
- infra: daqInfraStatus(),
50
- // 信号模板目录(内置 + 用户自定义;前端下拉/左轨/控制台同源消费)
51
- templates: listDaqTemplates()
52
- };
26
+ const templates = getWorkshopManager().listChannelTemplatesVisibleTo(user);
27
+ return withOwnerNames(templates);
53
28
  });
54
29
 
55
30
  export { index_get as default };
@@ -1 +1 @@
1
- {"version":3,"file":"index5.get.mjs","sources":["../../../../../../server/api/workshop/daq/index.get.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAeA,kBAAe,gBAAA,CAAiB,OAAO,KAAA,KAAU;AAfjD,EAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA;AAgBE,EAAA,MAAM,IAAA,GAAO,YAAY,KAAK,CAAA;AAE9B,EAAA,WAAA,CAAY,mBAAmB,CAAA;AAC/B,EAAA,MAAM,QAAQ,GAAA,CAAI,CAAC,SAAA,EAAW,WAAA,EAAa,CAAC,CAAA;AAC5C,EAAA,MAAM,OAAO,gBAAA,EAAiB;AAC9B,EAAA,IAAA,CAAK,oBAAA,EAAqB;AAC1B,EAAA,MAAM,KAAA,GAAQ,KAAK,eAAA,EAAgB;AACnC,EAAA,OAAO;AAAA,IACL,UAAA,EAAY,KAAA;AAAA;AAAA,IAEZ,KAAA,EAAO,aAAa,IAAA,EAAM,IAAA,CAAK,WAAU,EAAG,CAAA,CAAA,KAAK,EAAE,MAAM,CAAA;AAAA,IACzD,IAAA,EAAM;AAAA,MACJ,GAAG,KAAK,QAAA,EAAS;AAAA,MACjB,QAAA,EAAA,CAAU,EAAA,GAAA,KAAA,CAAM,QAAA,KAAN,IAAA,GAAA,EAAA,GAAkB,CAAA;AAAA,MAC5B,QAAA,EAAA,CAAU,EAAA,GAAA,KAAA,CAAM,QAAA,KAAN,IAAA,GAAA,EAAA,GAAkB,CAAA;AAAA,MAC5B,OAAA,EAAA,CAAS,EAAA,GAAA,KAAA,CAAM,OAAA,KAAN,IAAA,GAAA,EAAA,GAAiB,CAAA;AAAA,MAC1B,aAAA,EAAA,CAAe,EAAA,GAAA,KAAA,CAAM,aAAA,KAAN,IAAA,GAAA,EAAA,GAAuB;AAAA,KACxC;AAAA;AAAA,IAEA,eAAA,EAAiB,MAAM,IAAA,CAAK,kBAAA,EAAmB;AAAA;AAAA,IAE/C,OAAA,EAAS,MAAM,IAAA,CAAK,aAAA,EAAc;AAAA;AAAA,IAElC,OAAO,cAAA,EAAe;AAAA;AAAA,IAEtB,WAAW,gBAAA;AAAiB,GAC9B;AACF,CAAC,CAAA;;;;"}
1
+ {"version":3,"file":"index5.get.mjs","sources":["../../../../../../server/api/workshop/channel-templates/index.get.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAQA,kBAAe,gBAAA,CAAiB,OAAO,KAAA,KAAU;AAC/C,EAAA,MAAM,IAAA,GAAO,YAAY,KAAK,CAAA;AAC9B,EAAA,MAAM,SAAA,GAAY,kBAAA,EAAmB,CAAE,6BAAA,CAA8B,IAAI,CAAA;AACzE,EAAA,OAAO,eAAe,SAAS,CAAA;AACjC,CAAC,CAAA;;;;"}
@@ -1,4 +1,4 @@
1
- import { d as defineApiHandler, r as readBody, A as AppError, aR as getDeviceTwinRepo, as as broadcastSceneEvent, aS as deviceScenePayload } from '../../../_/nitro.mjs';
1
+ import { d as defineApiHandler, r as readBody, A as AppError, aS as getDeviceTwinRepo, as as broadcastSceneEvent, aT as deviceScenePayload } from '../../../_/nitro.mjs';
2
2
  import { resolveUser } from './caller.mjs';
3
3
  import 'node:crypto';
4
4
  import 'node:http';
@@ -1,5 +1,6 @@
1
1
  import { resolveUser } from './caller.mjs';
2
- import { d as defineApiHandler, a$ as bindDcwBroadcast, as as broadcastSceneEvent, $ as getDcwController, a3 as visibleLineIds, b3 as isPrivilegedRole, b4 as dcwDriverCatalog, b5 as listDcwTemplates, ab as filterByLine } from '../../../_/nitro.mjs';
2
+ import { d as defineApiHandler, as as broadcastSceneEvent, aV as tsdbReady, aW as getDaqQueue, _ as getDaqController, aX as listDaqTemplates, aY as daqInfraStatus, ab as filterByLine } from '../../../_/nitro.mjs';
3
+ import { bindDaqHost } from '../../../_/host-bindings.mjs';
3
4
  import 'node:crypto';
4
5
  import 'node:http';
5
6
  import 'node:https';
@@ -22,30 +23,32 @@ import 'node:util';
22
23
  import 'node:v8';
23
24
 
24
25
  const index_get = defineApiHandler(async (event) => {
26
+ var _a, _b, _c, _d;
25
27
  const user = resolveUser(event);
26
- bindDcwBroadcast(broadcastSceneEvent);
27
- const ctrl = getDcwController();
28
- const visible = visibleLineIds(user);
29
- const privileged = isPrivilegedRole(user);
30
- const inLine = (lineId) => lineId != null && lineId !== "" && visible != null && visible.has(lineId);
31
- const nodeLine = (nodeId) => {
32
- var _a;
33
- return (_a = ctrl.byId(nodeId)) == null ? void 0 : _a.lineId;
34
- };
28
+ bindDaqHost(broadcastSceneEvent);
29
+ await Promise.all([tsdbReady, getDaqQueue()]);
30
+ const ctrl = getDaqController();
31
+ ctrl.provisionLegacyTwins();
32
+ const state = ctrl.controllerState();
35
33
  return {
36
- controller: privileged ? ctrl.controllerState() : { running: ctrl.controllerState().running === true },
34
+ controller: state,
35
+ // 产线级权限:普通用户仅见授权产线的节点(admin/editor 全量)
37
36
  nodes: filterByLine(user, ctrl.listViews(), (n) => n.lineId),
38
- /** 工艺参数映射面(用户/Agent 的参数语义读写面;PLC 寻址细节不透出) */
39
- params: visible ? ctrl.listParamViews().filter((p) => inLine(p.lineId)) : ctrl.listParamViews(),
40
- templates: listDcwTemplates(),
41
- // 写驱动目录(内置 + 协议插件自描述合并;前端写控节点向导同源消费)
42
- drivers: await dcwDriverCatalog(),
43
- recipes: visible ? ctrl.listRecipes().filter((r) => inLine(r.lineId)) : ctrl.listRecipes(),
44
- runs: visible ? ctrl.listRuns().filter((r) => inLine(r.lineId)) : ctrl.listRuns(),
45
- history: visible ? ctrl.listHistory(400).filter((h) => inLine(nodeLine(h.nodeId))).slice(0, 60) : ctrl.listHistory(60),
46
- products: visible ? ctrl.listProducts().filter((p) => inLine(p.lineId)) : ctrl.listProducts(),
47
- lines: visible ? ctrl.listLines().filter((l) => visible.has(l.id)) : ctrl.listLines(),
48
- lineStates: visible ? ctrl.allLineStates().filter((s) => visible.has(s.lineId)) : ctrl.allLineStates()
37
+ meta: {
38
+ ...ctrl.backends(),
39
+ produced: (_a = state.produced) != null ? _a : 0,
40
+ consumed: (_b = state.consumed) != null ? _b : 0,
41
+ dropped: (_c = state.dropped) != null ? _c : 0,
42
+ samplesStored: (_d = state.samplesStored) != null ? _d : 0
43
+ },
44
+ // 驱动协议栈可用性(包缺失 → UI 显示"未安装";含插件驱动)
45
+ driverAvailable: await ctrl.driverAvailability(),
46
+ // 驱动目录(内置 + 协议插件自描述合并;前端添加节点下拉/参数表单同源消费)
47
+ drivers: await ctrl.driverCatalog(),
48
+ // 基础设施在线状态(降级 → 前端横幅 + 重连入口)
49
+ infra: daqInfraStatus(),
50
+ // 信号模板目录(内置 + 用户自定义;前端下拉/左轨/控制台同源消费)
51
+ templates: listDaqTemplates()
49
52
  };
50
53
  });
51
54
 
@@ -1 +1 @@
1
- {"version":3,"file":"index6.get.mjs","sources":["../../../../../../server/api/workshop/dcw/index.get.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAWA,kBAAe,gBAAA,CAAiB,OAAO,KAAA,KAAU;AAC/C,EAAA,MAAM,IAAA,GAAO,YAAY,KAAK,CAAA;AAC9B,EAAA,gBAAA,CAAiB,mBAAmB,CAAA;AACpC,EAAA,MAAM,OAAO,gBAAA,EAAiB;AAI9B,EAAA,MAAM,OAAA,GAAU,eAAe,IAAI,CAAA;AACnC,EAAA,MAAM,UAAA,GAAa,iBAAiB,IAAI,CAAA;AACxC,EAAA,MAAM,MAAA,GAAS,CAAC,MAAA,KACd,MAAA,IAAU,IAAA,IAAQ,MAAA,KAAW,EAAA,IAAM,OAAA,IAAW,IAAA,IAAQ,OAAA,CAAQ,GAAA,CAAI,MAAM,CAAA;AAC1E,EAAA,MAAM,QAAA,GAAW,CAAC,MAAA,KAAoC;AAtBxD,IAAA,IAAA,EAAA;AAsB2D,IAAA,OAAA,CAAA,EAAA,GAAA,IAAA,CAAK,IAAA,CAAK,MAAM,CAAA,KAAhB,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAmB,MAAA;AAAA,EAAA,CAAA;AAC5E,EAAA,OAAO;AAAA,IACL,UAAA,EAAY,UAAA,GACR,IAAA,CAAK,eAAA,EAAgB,GACrB,EAAE,OAAA,EAAS,IAAA,CAAK,eAAA,EAAgB,CAAE,OAAA,KAAY,IAAA,EAAK;AAAA,IACvD,KAAA,EAAO,aAAa,IAAA,EAAM,IAAA,CAAK,WAAU,EAAG,CAAA,CAAA,KAAK,EAAE,MAAM,CAAA;AAAA;AAAA,IAEzD,MAAA,EAAQ,OAAA,GAAU,IAAA,CAAK,cAAA,EAAe,CAAE,MAAA,CAAO,CAAA,CAAA,KAAK,MAAA,CAAO,CAAA,CAAE,MAAM,CAAC,CAAA,GAAI,KAAK,cAAA,EAAe;AAAA,IAC5F,WAAW,gBAAA,EAAiB;AAAA;AAAA,IAE5B,OAAA,EAAS,MAAM,gBAAA,EAAiB;AAAA,IAChC,OAAA,EAAS,OAAA,GAAU,IAAA,CAAK,WAAA,EAAY,CAAE,MAAA,CAAO,CAAA,CAAA,KAAK,MAAA,CAAO,CAAA,CAAE,MAAM,CAAC,CAAA,GAAI,KAAK,WAAA,EAAY;AAAA,IACvF,IAAA,EAAM,OAAA,GAAU,IAAA,CAAK,QAAA,EAAS,CAAE,MAAA,CAAO,CAAA,CAAA,KAAK,MAAA,CAAO,CAAA,CAAE,MAAM,CAAC,CAAA,GAAI,KAAK,QAAA,EAAS;AAAA,IAC9E,OAAA,EAAS,UACL,IAAA,CAAK,WAAA,CAAY,GAAG,CAAA,CAAE,MAAA,CAAO,OAAK,MAAA,CAAO,QAAA,CAAS,EAAE,MAAM,CAAC,CAAC,CAAA,CAAE,KAAA,CAAM,GAAG,EAAE,CAAA,GACzE,IAAA,CAAK,WAAA,CAAY,EAAE,CAAA;AAAA,IACvB,QAAA,EAAU,OAAA,GAAU,IAAA,CAAK,YAAA,EAAa,CAAE,MAAA,CAAO,CAAA,CAAA,KAAK,MAAA,CAAO,CAAA,CAAE,MAAM,CAAC,CAAA,GAAI,KAAK,YAAA,EAAa;AAAA,IAC1F,KAAA,EAAO,OAAA,GAAU,IAAA,CAAK,SAAA,GAAY,MAAA,CAAO,CAAA,CAAA,KAAK,OAAA,CAAQ,GAAA,CAAI,CAAA,CAAE,EAAE,CAAC,CAAA,GAAI,KAAK,SAAA,EAAU;AAAA,IAClF,UAAA,EAAY,OAAA,GAAU,IAAA,CAAK,aAAA,GAAgB,MAAA,CAAO,CAAA,CAAA,KAAK,OAAA,CAAQ,GAAA,CAAI,CAAA,CAAE,MAAM,CAAC,CAAA,GAAI,KAAK,aAAA;AAAc,GACrG;AACF,CAAC,CAAA;;;;"}
1
+ {"version":3,"file":"index6.get.mjs","sources":["../../../../../../server/api/workshop/daq/index.get.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAeA,kBAAe,gBAAA,CAAiB,OAAO,KAAA,KAAU;AAfjD,EAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA;AAgBE,EAAA,MAAM,IAAA,GAAO,YAAY,KAAK,CAAA;AAE9B,EAAA,WAAA,CAAY,mBAAmB,CAAA;AAC/B,EAAA,MAAM,QAAQ,GAAA,CAAI,CAAC,SAAA,EAAW,WAAA,EAAa,CAAC,CAAA;AAC5C,EAAA,MAAM,OAAO,gBAAA,EAAiB;AAC9B,EAAA,IAAA,CAAK,oBAAA,EAAqB;AAC1B,EAAA,MAAM,KAAA,GAAQ,KAAK,eAAA,EAAgB;AACnC,EAAA,OAAO;AAAA,IACL,UAAA,EAAY,KAAA;AAAA;AAAA,IAEZ,KAAA,EAAO,aAAa,IAAA,EAAM,IAAA,CAAK,WAAU,EAAG,CAAA,CAAA,KAAK,EAAE,MAAM,CAAA;AAAA,IACzD,IAAA,EAAM;AAAA,MACJ,GAAG,KAAK,QAAA,EAAS;AAAA,MACjB,QAAA,EAAA,CAAU,EAAA,GAAA,KAAA,CAAM,QAAA,KAAN,IAAA,GAAA,EAAA,GAAkB,CAAA;AAAA,MAC5B,QAAA,EAAA,CAAU,EAAA,GAAA,KAAA,CAAM,QAAA,KAAN,IAAA,GAAA,EAAA,GAAkB,CAAA;AAAA,MAC5B,OAAA,EAAA,CAAS,EAAA,GAAA,KAAA,CAAM,OAAA,KAAN,IAAA,GAAA,EAAA,GAAiB,CAAA;AAAA,MAC1B,aAAA,EAAA,CAAe,EAAA,GAAA,KAAA,CAAM,aAAA,KAAN,IAAA,GAAA,EAAA,GAAuB;AAAA,KACxC;AAAA;AAAA,IAEA,eAAA,EAAiB,MAAM,IAAA,CAAK,kBAAA,EAAmB;AAAA;AAAA,IAE/C,OAAA,EAAS,MAAM,IAAA,CAAK,aAAA,EAAc;AAAA;AAAA,IAElC,OAAO,cAAA,EAAe;AAAA;AAAA,IAEtB,WAAW,gBAAA;AAAiB,GAC9B;AACF,CAAC,CAAA;;;;"}
@@ -1,5 +1,5 @@
1
- import { d as defineApiHandler, l as getQuery, aR as getDeviceTwinRepo } from '../../../_/nitro.mjs';
2
1
  import { resolveUser } from './caller.mjs';
2
+ import { d as defineApiHandler, b0 as bindDcwBroadcast, as as broadcastSceneEvent, $ as getDcwController, a3 as visibleLineIds, b4 as isPrivilegedRole, b5 as dcwDriverCatalog, b6 as listDcwTemplates, ab as filterByLine } from '../../../_/nitro.mjs';
3
3
  import 'node:crypto';
4
4
  import 'node:http';
5
5
  import 'node:https';
@@ -22,10 +22,31 @@ import 'node:util';
22
22
  import 'node:v8';
23
23
 
24
24
  const index_get = defineApiHandler(async (event) => {
25
- resolveUser(event);
26
- const q = getQuery(event);
27
- const workspaceId = typeof q.workspaceId === "string" ? q.workspaceId : "";
28
- return { twins: getDeviceTwinRepo().listAll(workspaceId) };
25
+ const user = resolveUser(event);
26
+ bindDcwBroadcast(broadcastSceneEvent);
27
+ const ctrl = getDcwController();
28
+ const visible = visibleLineIds(user);
29
+ const privileged = isPrivilegedRole(user);
30
+ const inLine = (lineId) => lineId != null && lineId !== "" && visible != null && visible.has(lineId);
31
+ const nodeLine = (nodeId) => {
32
+ var _a;
33
+ return (_a = ctrl.byId(nodeId)) == null ? void 0 : _a.lineId;
34
+ };
35
+ return {
36
+ controller: privileged ? ctrl.controllerState() : { running: ctrl.controllerState().running === true },
37
+ nodes: filterByLine(user, ctrl.listViews(), (n) => n.lineId),
38
+ /** 工艺参数映射面(用户/Agent 的参数语义读写面;PLC 寻址细节不透出) */
39
+ params: visible ? ctrl.listParamViews().filter((p) => inLine(p.lineId)) : ctrl.listParamViews(),
40
+ templates: listDcwTemplates(),
41
+ // 写驱动目录(内置 + 协议插件自描述合并;前端写控节点向导同源消费)
42
+ drivers: await dcwDriverCatalog(),
43
+ recipes: visible ? ctrl.listRecipes().filter((r) => inLine(r.lineId)) : ctrl.listRecipes(),
44
+ runs: visible ? ctrl.listRuns().filter((r) => inLine(r.lineId)) : ctrl.listRuns(),
45
+ history: visible ? ctrl.listHistory(400).filter((h) => inLine(nodeLine(h.nodeId))).slice(0, 60) : ctrl.listHistory(60),
46
+ products: visible ? ctrl.listProducts().filter((p) => inLine(p.lineId)) : ctrl.listProducts(),
47
+ lines: visible ? ctrl.listLines().filter((l) => visible.has(l.id)) : ctrl.listLines(),
48
+ lineStates: visible ? ctrl.allLineStates().filter((s) => visible.has(s.lineId)) : ctrl.allLineStates()
49
+ };
29
50
  });
30
51
 
31
52
  export { index_get as default };
@@ -1 +1 @@
1
- {"version":3,"file":"index7.get.mjs","sources":["../../../../../../server/api/workshop/device-twins/index.get.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAUA,kBAAe,gBAAA,CAAiB,OAAO,KAAA,KAAU;AAC/C,EAAA,WAAA,CAAY,KAAK,CAAA;AACjB,EAAA,MAAM,CAAA,GAAI,SAAS,KAAK,CAAA;AACxB,EAAA,MAAM,cAAc,OAAO,CAAA,CAAE,WAAA,KAAgB,QAAA,GAAW,EAAE,WAAA,GAAc,EAAA;AACxE,EAAA,OAAO,EAAE,KAAA,EAAO,iBAAA,EAAkB,CAAE,OAAA,CAAQ,WAAW,CAAA,EAAE;AAC3D,CAAC,CAAA;;;;"}
1
+ {"version":3,"file":"index7.get.mjs","sources":["../../../../../../server/api/workshop/dcw/index.get.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAWA,kBAAe,gBAAA,CAAiB,OAAO,KAAA,KAAU;AAC/C,EAAA,MAAM,IAAA,GAAO,YAAY,KAAK,CAAA;AAC9B,EAAA,gBAAA,CAAiB,mBAAmB,CAAA;AACpC,EAAA,MAAM,OAAO,gBAAA,EAAiB;AAI9B,EAAA,MAAM,OAAA,GAAU,eAAe,IAAI,CAAA;AACnC,EAAA,MAAM,UAAA,GAAa,iBAAiB,IAAI,CAAA;AACxC,EAAA,MAAM,MAAA,GAAS,CAAC,MAAA,KACd,MAAA,IAAU,IAAA,IAAQ,MAAA,KAAW,EAAA,IAAM,OAAA,IAAW,IAAA,IAAQ,OAAA,CAAQ,GAAA,CAAI,MAAM,CAAA;AAC1E,EAAA,MAAM,QAAA,GAAW,CAAC,MAAA,KAAoC;AAtBxD,IAAA,IAAA,EAAA;AAsB2D,IAAA,OAAA,CAAA,EAAA,GAAA,IAAA,CAAK,IAAA,CAAK,MAAM,CAAA,KAAhB,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAmB,MAAA;AAAA,EAAA,CAAA;AAC5E,EAAA,OAAO;AAAA,IACL,UAAA,EAAY,UAAA,GACR,IAAA,CAAK,eAAA,EAAgB,GACrB,EAAE,OAAA,EAAS,IAAA,CAAK,eAAA,EAAgB,CAAE,OAAA,KAAY,IAAA,EAAK;AAAA,IACvD,KAAA,EAAO,aAAa,IAAA,EAAM,IAAA,CAAK,WAAU,EAAG,CAAA,CAAA,KAAK,EAAE,MAAM,CAAA;AAAA;AAAA,IAEzD,MAAA,EAAQ,OAAA,GAAU,IAAA,CAAK,cAAA,EAAe,CAAE,MAAA,CAAO,CAAA,CAAA,KAAK,MAAA,CAAO,CAAA,CAAE,MAAM,CAAC,CAAA,GAAI,KAAK,cAAA,EAAe;AAAA,IAC5F,WAAW,gBAAA,EAAiB;AAAA;AAAA,IAE5B,OAAA,EAAS,MAAM,gBAAA,EAAiB;AAAA,IAChC,OAAA,EAAS,OAAA,GAAU,IAAA,CAAK,WAAA,EAAY,CAAE,MAAA,CAAO,CAAA,CAAA,KAAK,MAAA,CAAO,CAAA,CAAE,MAAM,CAAC,CAAA,GAAI,KAAK,WAAA,EAAY;AAAA,IACvF,IAAA,EAAM,OAAA,GAAU,IAAA,CAAK,QAAA,EAAS,CAAE,MAAA,CAAO,CAAA,CAAA,KAAK,MAAA,CAAO,CAAA,CAAE,MAAM,CAAC,CAAA,GAAI,KAAK,QAAA,EAAS;AAAA,IAC9E,OAAA,EAAS,UACL,IAAA,CAAK,WAAA,CAAY,GAAG,CAAA,CAAE,MAAA,CAAO,OAAK,MAAA,CAAO,QAAA,CAAS,EAAE,MAAM,CAAC,CAAC,CAAA,CAAE,KAAA,CAAM,GAAG,EAAE,CAAA,GACzE,IAAA,CAAK,WAAA,CAAY,EAAE,CAAA;AAAA,IACvB,QAAA,EAAU,OAAA,GAAU,IAAA,CAAK,YAAA,EAAa,CAAE,MAAA,CAAO,CAAA,CAAA,KAAK,MAAA,CAAO,CAAA,CAAE,MAAM,CAAC,CAAA,GAAI,KAAK,YAAA,EAAa;AAAA,IAC1F,KAAA,EAAO,OAAA,GAAU,IAAA,CAAK,SAAA,GAAY,MAAA,CAAO,CAAA,CAAA,KAAK,OAAA,CAAQ,GAAA,CAAI,CAAA,CAAE,EAAE,CAAC,CAAA,GAAI,KAAK,SAAA,EAAU;AAAA,IAClF,UAAA,EAAY,OAAA,GAAU,IAAA,CAAK,aAAA,GAAgB,MAAA,CAAO,CAAA,CAAA,KAAK,OAAA,CAAQ,GAAA,CAAI,CAAA,CAAE,MAAM,CAAC,CAAA,GAAI,KAAK,aAAA;AAAc,GACrG;AACF,CAAC,CAAA;;;;"}
@@ -1,4 +1,4 @@
1
- import { d as defineApiHandler, l as getQuery, g as getWorkshopManager } from '../../../_/nitro.mjs';
1
+ import { d as defineApiHandler, l as getQuery, aS as getDeviceTwinRepo } from '../../../_/nitro.mjs';
2
2
  import { resolveUser } from './caller.mjs';
3
3
  import 'node:crypto';
4
4
  import 'node:http';
@@ -22,45 +22,10 @@ import 'node:util';
22
22
  import 'node:v8';
23
23
 
24
24
  const index_get = defineApiHandler(async (event) => {
25
- const user = resolveUser(event);
25
+ resolveUser(event);
26
26
  const q = getQuery(event);
27
- const manager = getWorkshopManager();
28
- const limitRaw = Number.parseInt(typeof q.limit === "string" ? q.limit : "", 10);
29
- const limit = Number.isFinite(limitRaw) ? Math.min(Math.max(limitRaw, 1), 200) : 50;
30
- const unreadOnly = q.unreadOnly === "1" || q.unreadOnly === "true";
31
- let cursor = null;
32
- if (typeof q.cursor === "string" && q.cursor.includes("|")) {
33
- const [createdAt, id] = q.cursor.split("|");
34
- if (createdAt && id) cursor = { createdAt, id };
35
- } else if (typeof q.cursorId === "string" && q.cursorId) {
36
- cursor = manager.groupChat.notifications.cursorOf(q.cursorId);
37
- }
38
- const rows = cursor ? manager.listNotificationsAfter(user.id, cursor, limit) : manager.listNotifications(user.id, { limit, unreadOnly });
39
- return {
40
- notifications: rows.map((r) => ({
41
- id: r.id,
42
- recipientUserId: r.recipientUserId,
43
- channelId: r.channelId,
44
- chatMessageId: r.chatMessageId,
45
- hitlKind: r.hitlKind,
46
- hitlId: r.hitlId,
47
- eventId: r.eventId,
48
- type: r.type,
49
- title: r.title,
50
- body: r.body,
51
- payload: JSON.parse(r.payloadJson || "{}"),
52
- createdAt: r.createdAt,
53
- readAt: r.readAt
54
- })),
55
- unreadCount: manager.groupChat.notifications.unreadCount(user.id),
56
- cursor,
57
- // 升序补发时给出下一个游标(便于客户端续拉)
58
- nextCursor: (() => {
59
- if (!cursor || rows.length === 0) return null;
60
- const last = rows[rows.length - 1];
61
- return { createdAt: last.createdAt, id: last.id };
62
- })()
63
- };
27
+ const workspaceId = typeof q.workspaceId === "string" ? q.workspaceId : "";
28
+ return { twins: getDeviceTwinRepo().listAll(workspaceId) };
64
29
  });
65
30
 
66
31
  export { index_get as default };
@@ -1 +1 @@
1
- {"version":3,"file":"index8.get.mjs","sources":["../../../../../../server/api/workshop/notifications/index.get.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAaA,kBAAe,gBAAA,CAAiB,OAAO,KAAA,KAAU;AAC/C,EAAA,MAAM,IAAA,GAAO,YAAY,KAAK,CAAA;AAC9B,EAAA,MAAM,CAAA,GAAI,SAAS,KAAK,CAAA;AACxB,EAAA,MAAM,UAAU,kBAAA,EAAmB;AACnC,EAAA,MAAM,QAAA,GAAW,MAAA,CAAO,QAAA,CAAS,OAAO,CAAA,CAAE,UAAU,QAAA,GAAW,CAAA,CAAE,KAAA,GAAQ,EAAA,EAAI,EAAE,CAAA;AAC/E,EAAA,MAAM,KAAA,GAAQ,MAAA,CAAO,QAAA,CAAS,QAAQ,CAAA,GAAI,IAAA,CAAK,GAAA,CAAI,IAAA,CAAK,GAAA,CAAI,QAAA,EAAU,CAAC,CAAA,EAAG,GAAG,CAAA,GAAI,EAAA;AACjF,EAAA,MAAM,UAAA,GAAa,CAAA,CAAE,UAAA,KAAe,GAAA,IAAO,EAAE,UAAA,KAAe,MAAA;AAE5D,EAAA,IAAI,MAAA,GAAmD,IAAA;AACvD,EAAA,IAAI,OAAO,EAAE,MAAA,KAAW,QAAA,IAAY,EAAE,MAAA,CAAO,QAAA,CAAS,GAAG,CAAA,EAAG;AAC1D,IAAA,MAAM,CAAC,SAAA,EAAW,EAAE,IAAI,CAAA,CAAE,MAAA,CAAO,MAAM,GAAG,CAAA;AAC1C,IAAA,IAAI,SAAA,IAAa,EAAA,EAAI,MAAA,GAAS,EAAE,WAAW,EAAA,EAAG;AAAA,EAChD,WACS,OAAO,CAAA,CAAE,QAAA,KAAa,QAAA,IAAY,EAAE,QAAA,EAAU;AACrD,IAAA,MAAA,GAAS,OAAA,CAAQ,SAAA,CAAU,aAAA,CAAc,QAAA,CAAS,EAAE,QAAQ,CAAA;AAAA,EAC9D;AAEA,EAAA,MAAM,OAAO,MAAA,GACT,OAAA,CAAQ,sBAAA,CAAuB,IAAA,CAAK,IAAI,MAAA,EAAQ,KAAK,CAAA,GACrD,OAAA,CAAQ,kBAAkB,IAAA,CAAK,EAAA,EAAI,EAAE,KAAA,EAAO,YAAY,CAAA;AAE5D,EAAA,OAAO;AAAA,IACL,aAAA,EAAe,IAAA,CAAK,GAAA,CAAI,CAAA,CAAA,MAAM;AAAA,MAC5B,IAAI,CAAA,CAAE,EAAA;AAAA,MACN,iBAAiB,CAAA,CAAE,eAAA;AAAA,MACnB,WAAW,CAAA,CAAE,SAAA;AAAA,MACb,eAAe,CAAA,CAAE,aAAA;AAAA,MACjB,UAAU,CAAA,CAAE,QAAA;AAAA,MACZ,QAAQ,CAAA,CAAE,MAAA;AAAA,MACV,SAAS,CAAA,CAAE,OAAA;AAAA,MACX,MAAM,CAAA,CAAE,IAAA;AAAA,MACR,OAAO,CAAA,CAAE,KAAA;AAAA,MACT,MAAM,CAAA,CAAE,IAAA;AAAA,MACR,OAAA,EAAS,IAAA,CAAK,KAAA,CAAM,CAAA,CAAE,eAAe,IAAI,CAAA;AAAA,MACzC,WAAW,CAAA,CAAE,SAAA;AAAA,MACb,QAAQ,CAAA,CAAE;AAAA,KACZ,CAAE,CAAA;AAAA,IACF,aAAa,OAAA,CAAQ,SAAA,CAAU,aAAA,CAAc,WAAA,CAAY,KAAK,EAAE,CAAA;AAAA,IAChE,MAAA;AAAA;AAAA,IAEA,aAAa,MAAM;AACjB,MAAA,IAAI,CAAC,MAAA,IAAU,IAAA,CAAK,MAAA,KAAW,GAAG,OAAO,IAAA;AACzC,MAAA,MAAM,IAAA,GAAO,IAAA,CAAK,IAAA,CAAK,MAAA,GAAS,CAAC,CAAA;AACjC,MAAA,OAAO,EAAE,SAAA,EAAW,IAAA,CAAK,SAAA,EAAW,EAAA,EAAI,KAAK,EAAA,EAAG;AAAA,IAClD,CAAA;AAAG,GACL;AACF,CAAC,CAAA;;;;"}
1
+ {"version":3,"file":"index8.get.mjs","sources":["../../../../../../server/api/workshop/device-twins/index.get.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAUA,kBAAe,gBAAA,CAAiB,OAAO,KAAA,KAAU;AAC/C,EAAA,WAAA,CAAY,KAAK,CAAA;AACjB,EAAA,MAAM,CAAA,GAAI,SAAS,KAAK,CAAA;AACxB,EAAA,MAAM,cAAc,OAAO,CAAA,CAAE,WAAA,KAAgB,QAAA,GAAW,EAAE,WAAA,GAAc,EAAA;AACxE,EAAA,OAAO,EAAE,KAAA,EAAO,iBAAA,EAAkB,CAAE,OAAA,CAAQ,WAAW,CAAA,EAAE;AAC3D,CAAC,CAAA;;;;"}
@@ -1,5 +1,5 @@
1
- import { d as defineApiHandler, b as getOps, A as AppError, l as getQuery } from '../../../_/nitro.mjs';
2
- import { requireRole } from './caller.mjs';
1
+ import { d as defineApiHandler, l as getQuery, g as getWorkshopManager } from '../../../_/nitro.mjs';
2
+ import { resolveUser } from './caller.mjs';
3
3
  import 'node:crypto';
4
4
  import 'node:http';
5
5
  import 'node:https';
@@ -22,25 +22,45 @@ import 'node:util';
22
22
  import 'node:v8';
23
23
 
24
24
  const index_get = defineApiHandler(async (event) => {
25
- var _a, _b;
26
- requireRole(event);
27
- const repo = (_a = getOps()) == null ? void 0 : _a.audit;
28
- if (!repo)
29
- throw new AppError(503, "UNAVAILABLE", "\u8FD0\u7EF4\u65E5\u5FD7\u4ED3\u50A8\u672A\u5C31\u7EEA");
25
+ const user = resolveUser(event);
30
26
  const q = getQuery(event);
31
- const logs = repo.query({
32
- lineId: q.lineId || void 0,
33
- productId: q.productId || void 0,
34
- recipeId: q.recipeId || void 0,
35
- actorKind: q.actorKind || void 0,
36
- kind: q.kind || void 0,
37
- level: q.level || void 0,
38
- q: q.q || void 0,
39
- from: q.from || void 0,
40
- to: q.to || void 0,
41
- limit: Math.min(500, Number((_b = q.limit) != null ? _b : 200) || 200)
42
- });
43
- return { logs, count: logs.length };
27
+ const manager = getWorkshopManager();
28
+ const limitRaw = Number.parseInt(typeof q.limit === "string" ? q.limit : "", 10);
29
+ const limit = Number.isFinite(limitRaw) ? Math.min(Math.max(limitRaw, 1), 200) : 50;
30
+ const unreadOnly = q.unreadOnly === "1" || q.unreadOnly === "true";
31
+ let cursor = null;
32
+ if (typeof q.cursor === "string" && q.cursor.includes("|")) {
33
+ const [createdAt, id] = q.cursor.split("|");
34
+ if (createdAt && id) cursor = { createdAt, id };
35
+ } else if (typeof q.cursorId === "string" && q.cursorId) {
36
+ cursor = manager.groupChat.notifications.cursorOf(q.cursorId);
37
+ }
38
+ const rows = cursor ? manager.listNotificationsAfter(user.id, cursor, limit) : manager.listNotifications(user.id, { limit, unreadOnly });
39
+ return {
40
+ notifications: rows.map((r) => ({
41
+ id: r.id,
42
+ recipientUserId: r.recipientUserId,
43
+ channelId: r.channelId,
44
+ chatMessageId: r.chatMessageId,
45
+ hitlKind: r.hitlKind,
46
+ hitlId: r.hitlId,
47
+ eventId: r.eventId,
48
+ type: r.type,
49
+ title: r.title,
50
+ body: r.body,
51
+ payload: JSON.parse(r.payloadJson || "{}"),
52
+ createdAt: r.createdAt,
53
+ readAt: r.readAt
54
+ })),
55
+ unreadCount: manager.groupChat.notifications.unreadCount(user.id),
56
+ cursor,
57
+ // 升序补发时给出下一个游标(便于客户端续拉)
58
+ nextCursor: (() => {
59
+ if (!cursor || rows.length === 0) return null;
60
+ const last = rows[rows.length - 1];
61
+ return { createdAt: last.createdAt, id: last.id };
62
+ })()
63
+ };
44
64
  });
45
65
 
46
66
  export { index_get as default };
@@ -1 +1 @@
1
- {"version":3,"file":"index9.get.mjs","sources":["../../../../../../server/api/workshop/ops-logs/index.get.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAWA,kBAAe,gBAAA,CAAiB,OAAO,KAAA,KAAU;AAXjD,EAAA,IAAA,EAAA,EAAA,EAAA;AAaE,EAAA,WAAA,CAAY,KAAK,CAAA;AACjB,EAAA,MAAM,IAAA,GAAA,CAAO,EAAA,GAAA,MAAA,EAAO,KAAP,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAU,KAAA;AACvB,EAAA,IAAI,CAAC,IAAA;AACH,IAAA,MAAM,IAAI,QAAA,CAAS,GAAA,EAAK,aAAA,EAAe,wDAAW,CAAA;AACpD,EAAA,MAAM,CAAA,GAAI,SAAS,KAAK,CAAA;AACxB,EAAA,MAAM,IAAA,GAAO,KAAK,KAAA,CAAM;AAAA,IACtB,MAAA,EAAQ,EAAE,MAAA,IAAU,KAAA,CAAA;AAAA,IACpB,SAAA,EAAW,EAAE,SAAA,IAAa,KAAA,CAAA;AAAA,IAC1B,QAAA,EAAU,EAAE,QAAA,IAAY,KAAA,CAAA;AAAA,IACxB,SAAA,EAAW,EAAE,SAAA,IAAa,KAAA,CAAA;AAAA,IAC1B,IAAA,EAAM,EAAE,IAAA,IAAQ,KAAA,CAAA;AAAA,IAChB,KAAA,EAAO,EAAE,KAAA,IAAS,KAAA,CAAA;AAAA,IAClB,CAAA,EAAG,EAAE,CAAA,IAAK,KAAA,CAAA;AAAA,IACV,IAAA,EAAM,EAAE,IAAA,IAAQ,KAAA,CAAA;AAAA,IAChB,EAAA,EAAI,EAAE,EAAA,IAAM,KAAA,CAAA;AAAA,IACZ,KAAA,EAAO,IAAA,CAAK,GAAA,CAAI,GAAA,EAAK,MAAA,CAAA,CAAO,OAAE,KAAA,KAAF,IAAA,GAAA,EAAA,GAAW,GAAG,CAAA,IAAK,GAAG;AAAA,GACnD,CAAA;AACD,EAAA,OAAO,EAAE,IAAA,EAAM,KAAA,EAAO,IAAA,CAAK,MAAA,EAAO;AACpC,CAAC,CAAA;;;;"}
1
+ {"version":3,"file":"index9.get.mjs","sources":["../../../../../../server/api/workshop/notifications/index.get.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAaA,kBAAe,gBAAA,CAAiB,OAAO,KAAA,KAAU;AAC/C,EAAA,MAAM,IAAA,GAAO,YAAY,KAAK,CAAA;AAC9B,EAAA,MAAM,CAAA,GAAI,SAAS,KAAK,CAAA;AACxB,EAAA,MAAM,UAAU,kBAAA,EAAmB;AACnC,EAAA,MAAM,QAAA,GAAW,MAAA,CAAO,QAAA,CAAS,OAAO,CAAA,CAAE,UAAU,QAAA,GAAW,CAAA,CAAE,KAAA,GAAQ,EAAA,EAAI,EAAE,CAAA;AAC/E,EAAA,MAAM,KAAA,GAAQ,MAAA,CAAO,QAAA,CAAS,QAAQ,CAAA,GAAI,IAAA,CAAK,GAAA,CAAI,IAAA,CAAK,GAAA,CAAI,QAAA,EAAU,CAAC,CAAA,EAAG,GAAG,CAAA,GAAI,EAAA;AACjF,EAAA,MAAM,UAAA,GAAa,CAAA,CAAE,UAAA,KAAe,GAAA,IAAO,EAAE,UAAA,KAAe,MAAA;AAE5D,EAAA,IAAI,MAAA,GAAmD,IAAA;AACvD,EAAA,IAAI,OAAO,EAAE,MAAA,KAAW,QAAA,IAAY,EAAE,MAAA,CAAO,QAAA,CAAS,GAAG,CAAA,EAAG;AAC1D,IAAA,MAAM,CAAC,SAAA,EAAW,EAAE,IAAI,CAAA,CAAE,MAAA,CAAO,MAAM,GAAG,CAAA;AAC1C,IAAA,IAAI,SAAA,IAAa,EAAA,EAAI,MAAA,GAAS,EAAE,WAAW,EAAA,EAAG;AAAA,EAChD,WACS,OAAO,CAAA,CAAE,QAAA,KAAa,QAAA,IAAY,EAAE,QAAA,EAAU;AACrD,IAAA,MAAA,GAAS,OAAA,CAAQ,SAAA,CAAU,aAAA,CAAc,QAAA,CAAS,EAAE,QAAQ,CAAA;AAAA,EAC9D;AAEA,EAAA,MAAM,OAAO,MAAA,GACT,OAAA,CAAQ,sBAAA,CAAuB,IAAA,CAAK,IAAI,MAAA,EAAQ,KAAK,CAAA,GACrD,OAAA,CAAQ,kBAAkB,IAAA,CAAK,EAAA,EAAI,EAAE,KAAA,EAAO,YAAY,CAAA;AAE5D,EAAA,OAAO;AAAA,IACL,aAAA,EAAe,IAAA,CAAK,GAAA,CAAI,CAAA,CAAA,MAAM;AAAA,MAC5B,IAAI,CAAA,CAAE,EAAA;AAAA,MACN,iBAAiB,CAAA,CAAE,eAAA;AAAA,MACnB,WAAW,CAAA,CAAE,SAAA;AAAA,MACb,eAAe,CAAA,CAAE,aAAA;AAAA,MACjB,UAAU,CAAA,CAAE,QAAA;AAAA,MACZ,QAAQ,CAAA,CAAE,MAAA;AAAA,MACV,SAAS,CAAA,CAAE,OAAA;AAAA,MACX,MAAM,CAAA,CAAE,IAAA;AAAA,MACR,OAAO,CAAA,CAAE,KAAA;AAAA,MACT,MAAM,CAAA,CAAE,IAAA;AAAA,MACR,OAAA,EAAS,IAAA,CAAK,KAAA,CAAM,CAAA,CAAE,eAAe,IAAI,CAAA;AAAA,MACzC,WAAW,CAAA,CAAE,SAAA;AAAA,MACb,QAAQ,CAAA,CAAE;AAAA,KACZ,CAAE,CAAA;AAAA,IACF,aAAa,OAAA,CAAQ,SAAA,CAAU,aAAA,CAAc,WAAA,CAAY,KAAK,EAAE,CAAA;AAAA,IAChE,MAAA;AAAA;AAAA,IAEA,aAAa,MAAM;AACjB,MAAA,IAAI,CAAC,MAAA,IAAU,IAAA,CAAK,MAAA,KAAW,GAAG,OAAO,IAAA;AACzC,MAAA,MAAM,IAAA,GAAO,IAAA,CAAK,IAAA,CAAK,MAAA,GAAS,CAAC,CAAA;AACjC,MAAA,OAAO,EAAE,SAAA,EAAW,IAAA,CAAK,SAAA,EAAW,EAAA,EAAI,KAAK,EAAA,EAAG;AAAA,IAClD,CAAA;AAAG,GACL;AACF,CAAC,CAAA;;;;"}
@@ -1,5 +1,5 @@
1
1
  import { resolveUser, requireAdmin } from '../../caller.mjs';
2
- import { d as defineApiHandler, j as pluginManifest, A as AppError, Y as ErrorCodes, bu as setPluginEnabled, bv as reloadPluginHost } from '../../../../../_/nitro.mjs';
2
+ import { d as defineApiHandler, j as pluginManifest, A as AppError, Y as ErrorCodes, bv as setPluginEnabled, bw as reloadPluginHost } from '../../../../../_/nitro.mjs';
3
3
  import 'node:crypto';
4
4
  import 'node:http';
5
5
  import 'node:https';
@@ -1,5 +1,5 @@
1
1
  import { resolveUser, requireAdmin } from '../../caller.mjs';
2
- import { d as defineApiHandler, j as pluginManifest, A as AppError, Y as ErrorCodes, bu as setPluginEnabled, bv as reloadPluginHost } from '../../../../../_/nitro.mjs';
2
+ import { d as defineApiHandler, j as pluginManifest, A as AppError, Y as ErrorCodes, bv as setPluginEnabled, bw as reloadPluginHost } from '../../../../../_/nitro.mjs';
3
3
  import 'node:crypto';
4
4
  import 'node:http';
5
5
  import 'node:https';
@@ -1,4 +1,4 @@
1
- import { d as defineApiHandler, f as getRouterParam, g as getWorkshopManager, A as AppError, bw as publishSceneLayoutEvent } from '../../../../../_/nitro.mjs';
1
+ import { d as defineApiHandler, f as getRouterParam, g as getWorkshopManager, A as AppError, bx as publishSceneLayoutEvent } from '../../../../../_/nitro.mjs';
2
2
  import { resolveUser } from '../../caller.mjs';
3
3
  import { g as getSceneLayoutRepo } from '../../../../../_/scene-layout.repo.mjs';
4
4
  import 'node:crypto';
@@ -1,4 +1,4 @@
1
- import { d as defineApiHandler, f as getRouterParam, r as readBody, g as getWorkshopManager, bw as publishSceneLayoutEvent } from '../../../../../_/nitro.mjs';
1
+ import { d as defineApiHandler, f as getRouterParam, r as readBody, g as getWorkshopManager, bx as publishSceneLayoutEvent } from '../../../../../_/nitro.mjs';
2
2
  import { resolveUser } from '../../caller.mjs';
3
3
  import { g as getSceneLayoutRepo } from '../../../../../_/scene-layout.repo.mjs';
4
4
  import 'node:crypto';
@@ -1,4 +1,4 @@
1
- import { d as defineApiHandler, f as getRouterParam, H as readValidatedBody, I as zValidator, g as getWorkshopManager, A as AppError, aB as ensureLeadSchedulerLoop } from '../../../../../_/nitro.mjs';
1
+ import { d as defineApiHandler, f as getRouterParam, H as readValidatedBody, I as zValidator, g as getWorkshopManager, A as AppError, aD as ensureLeadSchedulerLoop } from '../../../../../_/nitro.mjs';
2
2
  import { z } from 'zod';
3
3
  import { resolveUser } from '../../caller.mjs';
4
4
  import 'node:crypto';
@@ -1,4 +1,4 @@
1
- import { d as defineApiHandler, g as getWorkshopManager, A as AppError, Y as ErrorCodes, r as readBody, e as getPluginHost, j as pluginManifest, aE as getChannelPluginsRepo, aF as notifyToolChange } from '../../../../../_/nitro.mjs';
1
+ import { d as defineApiHandler, g as getWorkshopManager, A as AppError, Y as ErrorCodes, r as readBody, e as getPluginHost, j as pluginManifest, aG as getChannelPluginsRepo, aH as notifyToolChange } from '../../../../../_/nitro.mjs';
2
2
  import { resolveUser } from '../../caller.mjs';
3
3
  import 'node:crypto';
4
4
  import 'node:http';
@@ -1,5 +1,5 @@
1
1
  import { resolveUser, isAdmin } from '../../caller.mjs';
2
- import { d as defineApiHandler, g as getWorkshopManager, A as AppError, Y as ErrorCodes, e as getPluginHost, j as pluginManifest, aE as getChannelPluginsRepo } from '../../../../../_/nitro.mjs';
2
+ import { d as defineApiHandler, g as getWorkshopManager, A as AppError, Y as ErrorCodes, e as getPluginHost, j as pluginManifest, aG as getChannelPluginsRepo } from '../../../../../_/nitro.mjs';
3
3
  import 'node:crypto';
4
4
  import 'node:http';
5
5
  import 'node:https';
@@ -1,5 +1,5 @@
1
1
  import { z } from 'zod';
2
- import { d as defineApiHandler, f as getRouterParam, H as readValidatedBody, I as zValidator, g as getWorkshopManager, aB as ensureLeadSchedulerLoop } from '../../../../../../_/nitro.mjs';
2
+ import { d as defineApiHandler, f as getRouterParam, H as readValidatedBody, I as zValidator, g as getWorkshopManager, aD as ensureLeadSchedulerLoop } from '../../../../../../_/nitro.mjs';
3
3
  import { resolveUser } from '../../../caller.mjs';
4
4
  import 'node:crypto';
5
5
  import 'node:http';
@@ -35,7 +35,7 @@ const _tplId__post = defineApiHandler(async (event) => {
35
35
  if (result.leadAgentId) {
36
36
  ensureLeadSchedulerLoop(manager, result.channelId);
37
37
  }
38
- const { ensureStream } = await import('../../../../../../_/nitro.mjs').then(function (n) { return n.ce; });
38
+ const { ensureStream } = await import('../../../../../../_/nitro.mjs').then(function (n) { return n.cf; });
39
39
  ensureStream(manager, result.channelId);
40
40
  return result;
41
41
  });
@@ -1,4 +1,4 @@
1
- import { b1 as useRuntimeConfig, bJ as encodePath, bK as buildAssetsURL, bL as publicAssetsURL, bM as defineRenderHandler, l as getQuery, c as createError, bN as destr, bO as getRouteRules, bP as relative, bQ as joinURL, bR as getResponseStatusText, bS as getResponseStatus, bT as useNitroApp } from '../_/nitro.mjs';
1
+ import { b2 as useRuntimeConfig, bK as encodePath, bL as buildAssetsURL, bM as publicAssetsURL, bN as defineRenderHandler, l as getQuery, c as createError, bO as destr, bP as getRouteRules, bQ as relative, bR as joinURL, bS as getResponseStatusText, bT as getResponseStatus, bU as useNitroApp } from '../_/nitro.mjs';
2
2
  import { createHead as createHead$1, propsToString, renderSSRHead } from 'unhead/server';
3
3
  import { hasInjectionContext, inject, isRef, toValue } from 'vue';
4
4
  import { DeprecationsPlugin } from 'unhead/legacy';
@@ -154,7 +154,7 @@ globalThis.__buildAssetsURL = buildAssetsURL;
154
154
  globalThis.__publicAssetsURL = publicAssetsURL;
155
155
  const APP_ROOT_OPEN_TAG = `<${appRootTag}${propsToString(appRootAttrs)}>`;
156
156
  const APP_ROOT_CLOSE_TAG = `</${appRootTag}>`;
157
- const getServerEntry = () => import('../virtual/entry.mjs').then(function (n) { return n.by; }).then((r) => r.default || r);
157
+ const getServerEntry = () => import('../virtual/entry.mjs').then(function (n) { return n.bx; }).then((r) => r.default || r);
158
158
  const getPrecomputedDependencies = () => import('../virtual/precomputed.mjs').then((r) => "default" in r ? r.default : r).then((r) => typeof r === "function" ? r() : r);
159
159
  const getSSRRenderer = lazyCachedFunction(async () => {
160
160
  const createSSRApp = await getServerEntry();
@@ -230,7 +230,7 @@ function encodeForwardSlashes(str) {
230
230
 
231
231
  const renderSSRHeadOptions = {"omitLineBreaks":true};
232
232
 
233
- const entryFileName = "h46i74oE.js";
233
+ const entryFileName = "CeEzUIvN.js";
234
234
 
235
235
  //#region src/runtime/handlers/renderer.ts
236
236
  globalThis.__buildAssetsURL = buildAssetsURL;