agentworkshop 0.7.71 → 0.8.1

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 (629) hide show
  1. package/.AgentWorkShop/prompts/host-tools.json +455 -0
  2. package/.output/.AgentWorkShop/prompts/host-tools.json +455 -0
  3. package/.output/nitro.json +1 -1
  4. package/.output/public/_nuxt/{DJJDigim2.js → -FhgRqJl2.js} +1 -1
  5. package/.output/public/_nuxt/{CGk_VUhO2.js → 0qvcO_KM2.js} +1 -1
  6. package/.output/public/_nuxt/26OL4Ao82.js +1 -0
  7. package/.output/public/_nuxt/{sBDZymdy2.js → 2Kwo_j9G2.js} +1 -1
  8. package/.output/public/_nuxt/{BqYVLAcm.js → 2v5GdspM.js} +1 -1
  9. package/.output/public/_nuxt/{DkQBMVTs2.js → 8M7wFbEN2.js} +1 -1
  10. package/.output/public/_nuxt/{DtiY69xi2.js → 8SZLbrI42.js} +1 -1
  11. package/.output/public/_nuxt/{DF32f5EL2.js → B2NbzUau2.js} +1 -1
  12. package/.output/public/_nuxt/{CwZW1ZCe2.js → B4JlRHBB2.js} +1 -1
  13. package/.output/public/_nuxt/{BQOn0q6Y.js → B6C4WofF.js} +1 -1
  14. package/.output/public/_nuxt/{BC7W6lNm.js → B6UwtJ1a.js} +1 -1
  15. package/.output/public/_nuxt/{BfQ-ptH0.js → B8HFUsMH.js} +1 -1
  16. package/.output/public/_nuxt/{DzBbYWrw2.js → BBB_j2LU2.js} +1 -1
  17. package/.output/public/_nuxt/BCLUwdP52.js +1 -0
  18. package/.output/public/_nuxt/{CLxmY3Rh.js → BK4wbfGS.js} +1 -1
  19. package/.output/public/_nuxt/{BRMVDfPl2.js → BKidykmV2.js} +1 -1
  20. package/.output/public/_nuxt/BPUQZ9Lq2.js +8 -0
  21. package/.output/public/_nuxt/BRYBzVMJ.js +1 -0
  22. package/.output/public/_nuxt/{Bj5sjA5O.js → BRci9D_l.js} +1 -1
  23. package/.output/public/_nuxt/{Dmgqz2np2.js → BVGzwAxr2.js} +1 -1
  24. package/.output/public/_nuxt/BVg2R2VB2.js +1 -0
  25. package/.output/public/_nuxt/{C3aUN4Vp2.js → BW2uTUx52.js} +1 -1
  26. package/.output/public/_nuxt/{B5FKaMM02.js → BY3Lbz3h2.js} +1 -1
  27. package/.output/public/_nuxt/{DIwmMa_7.js → BYzim_Bn.js} +1 -1
  28. package/.output/public/_nuxt/{D8xUsQGt.js → B_Obcbiu.js} +1 -1
  29. package/.output/public/_nuxt/BaYDgyaR.js +3 -0
  30. package/.output/public/_nuxt/{DZJ11BTI.js → BbACaREb.js} +1 -1
  31. package/.output/public/_nuxt/{BJrj5JVe2.js → BcosvNXb2.js} +1 -1
  32. package/.output/public/_nuxt/{B_-vAvzb.js → BfeXib9G.js} +1 -1
  33. package/.output/public/_nuxt/{CeLqojCJ.js → BfgTar9L.js} +1 -1
  34. package/.output/public/_nuxt/BfvuWqSa.js +1 -0
  35. package/.output/public/_nuxt/{D8r8PNQa2.js → BiZWwdcD2.js} +1 -1
  36. package/.output/public/_nuxt/BkEokGX5.js +1 -0
  37. package/.output/public/_nuxt/{CJSohaqk2.js → BklGqEto2.js} +2 -2
  38. package/.output/public/_nuxt/{DkpmSnHX.js → Bko5adbu.js} +1 -1
  39. package/.output/public/_nuxt/{DTQTGA6v2.js → BmBlIIJo2.js} +1 -1
  40. package/.output/public/_nuxt/{D_NjL-Hz.js → Bmvt9ydE.js} +1 -1
  41. package/.output/public/_nuxt/{Cp4r6Eiz.js → BoyuIoSm.js} +1 -1
  42. package/.output/public/_nuxt/{62J4vljm2.js → Bq-tmkst.js} +1 -1
  43. package/.output/public/_nuxt/{BMMoqi94.js → BqFaZ4kS.js} +1 -1
  44. package/.output/public/_nuxt/BsJYieAL2.js +1 -0
  45. package/.output/public/_nuxt/{DD4J2Otc.js → BtZKe9ZV.js} +1 -1
  46. package/.output/public/_nuxt/{BnpY_zNx.js → BtumQhZK.js} +1 -1
  47. package/.output/public/_nuxt/{BjLzqWJH2.js → BwWs9EdO2.js} +1 -1
  48. package/.output/public/_nuxt/{Bx2a9cuY2.js → BxxpJxZf2.js} +1 -1
  49. package/.output/public/_nuxt/{qRXa-PM22.js → ByTnUqFw2.js} +1 -1
  50. package/.output/public/_nuxt/{DvOETuoT2.js → Byiiiwc72.js} +1 -1
  51. package/.output/public/_nuxt/{Car2lkbb.js → C1-SuwUN.js} +1 -1
  52. package/.output/public/_nuxt/{Dg81dOEO.js → C14pM5G4.js} +1 -1
  53. package/.output/public/_nuxt/{MDhaRQq_.js → C2Yp-B8m.js} +1 -1
  54. package/.output/public/_nuxt/{BJ2nJNlK2.js → C4e6_nom2.js} +1 -1
  55. package/.output/public/_nuxt/{CiCEprsp2.js → C5OStZJ62.js} +1 -1
  56. package/.output/public/_nuxt/{ByMj6e7s.js → C6lssmvl.js} +2 -2
  57. package/.output/public/_nuxt/{C6uBP0Xa.js → CC-GEjfN.js} +1 -1
  58. package/.output/public/_nuxt/CC2Pv8VL2.js +1 -0
  59. package/.output/public/_nuxt/{DKiqdYnj.js → CCcMgxV9.js} +1 -1
  60. package/.output/public/_nuxt/{5S26I34j2.js → CDL30A2z2.js} +1 -1
  61. package/.output/public/_nuxt/{B8C-QJB5.js → CDYLasP8.js} +1 -1
  62. package/.output/public/_nuxt/CElzwyXQ.js +1 -0
  63. package/.output/public/_nuxt/{2KE8xGVm.js → CEvJu-xI.js} +1 -1
  64. package/.output/public/_nuxt/{CR612R752.js → CFQRFctQ2.js} +1 -1
  65. package/.output/public/_nuxt/{DnzjxC0u.js → CHk9XxNi.js} +2 -2
  66. package/.output/public/_nuxt/{Bx4MR0jd.js → CLFmtXU7.js} +1 -1
  67. package/.output/public/_nuxt/{DW8k_0dQ.js → CMJi6yYS.js} +1 -1
  68. package/.output/public/_nuxt/{DD-r0S1p.js → CPvFGbr8.js} +1 -1
  69. package/.output/public/_nuxt/{CCgbgkid.js → CQSxS_Ek.js} +2 -2
  70. package/.output/public/_nuxt/{jGxHnjW6.js → CQuo31jF.js} +1 -1
  71. package/.output/public/_nuxt/{SoO2K-di.js → CRCrWy-6.js} +1 -1
  72. package/.output/public/_nuxt/CUCFFL9m.js +84 -0
  73. package/.output/public/_nuxt/CZYNy60j2.js +1 -0
  74. package/.output/public/_nuxt/{WPwdj9pg.js → CZsFf7ck.js} +1 -1
  75. package/.output/public/_nuxt/CfFUK6932.js +2 -0
  76. package/.output/public/_nuxt/{DAsjfdZD.js → CfIbFnJz.js} +1 -1
  77. package/.output/public/_nuxt/{Tk6TQZjU.js → CjF4QY9h.js} +1 -1
  78. package/.output/public/_nuxt/{DlUQa0wn.js → Cjo1t2IF.js} +1 -1
  79. package/.output/public/_nuxt/{CDn0eDn8.js → CmuGMxDP.js} +1 -1
  80. package/.output/public/_nuxt/Cn6EojFe.js +1 -0
  81. package/.output/public/_nuxt/{DLqSQbGv.js → CnYazk8d.js} +1 -1
  82. package/.output/public/_nuxt/{DQfy6R_2.js → CnrGVJIr.js} +1 -1
  83. package/.output/public/_nuxt/{C0YL0HKK.js → CtcBhkci.js} +1 -1
  84. package/.output/public/_nuxt/{h5gsh8E92.js → Cv-Mv7_h2.js} +1 -1
  85. package/.output/public/_nuxt/{vPcnBJsa2.js → CzlZrfq82.js} +1 -1
  86. package/.output/public/_nuxt/{C2YYOgMe.js → CznnUTZx.js} +2 -2
  87. package/.output/public/_nuxt/{csitHKnE2.js → D-80EfyA2.js} +1 -1
  88. package/.output/public/_nuxt/{BRdoISnJ2.js → D1C6qtS12.js} +1 -1
  89. package/.output/public/_nuxt/{Cnrmlixo.js → D1MkndMZ.js} +2 -2
  90. package/.output/public/_nuxt/{BLwDhlaa.js → D37gODe0.js} +1 -1
  91. package/.output/public/_nuxt/{NXY37IO62.js → D6FhDrYe2.js} +1 -1
  92. package/.output/public/_nuxt/{Btx8wL4-.js → D7TZLu4F.js} +1 -1
  93. package/.output/public/_nuxt/{qoUdVDnC.js → D7tEwf-o.js} +3 -3
  94. package/.output/public/_nuxt/D8HQPtm62.js +1 -0
  95. package/.output/public/_nuxt/D9O4L4jK.js +1 -0
  96. package/.output/public/_nuxt/{aQ1B7BZa2.js → D9lL3fJM2.js} +2 -2
  97. package/.output/public/_nuxt/{CT-vTjcG2.js → DC-2eKo62.js} +1 -1
  98. package/.output/public/_nuxt/DF9ETYJ32.js +1 -0
  99. package/.output/public/_nuxt/DGGBrc0q2.js +1 -0
  100. package/.output/public/_nuxt/DGu_fna7.js +1 -0
  101. package/.output/public/_nuxt/{BupBjt6B.js → DKOvbitt.js} +1 -1
  102. package/.output/public/_nuxt/{B1PzYsqN.js → DNxudyND.js} +1 -1
  103. package/.output/public/_nuxt/{BfX6_AjY.js → DOT-XQyi.js} +1 -1
  104. package/.output/public/_nuxt/{BsTZnkVK.js → DPPC9Teq.js} +1 -1
  105. package/.output/public/_nuxt/{HxohXQ_r.js → DRskyE7l.js} +1 -1
  106. package/.output/public/_nuxt/{B-U7E_Mc2.js → DW4ZgInh2.js} +1 -1
  107. package/.output/public/_nuxt/{BErG4kzc2.js → DWe6BMlp2.js} +1 -1
  108. package/.output/public/_nuxt/DWy0AjON.js +1 -0
  109. package/.output/public/_nuxt/{Bc_k6AVA.js → DXgw1dVL.js} +4 -4
  110. package/.output/public/_nuxt/{C3sWJ8SD2.js → DZsKIzKD2.js} +1 -1
  111. package/.output/public/_nuxt/D_59BNP1.js +14 -0
  112. package/.output/public/_nuxt/{BQIO4MkA2.js → D_FZ3KZI2.js} +1 -1
  113. package/.output/public/_nuxt/{n_Njdwii2.js → D__vJGHF2.js} +1 -1
  114. package/.output/public/_nuxt/{C9gErLQc2.js → DaizNGUm2.js} +1 -1
  115. package/.output/public/_nuxt/{C-MY-JQE2.js → DdyE0ylS.js} +1 -1
  116. package/.output/public/_nuxt/DgrK8UCQ.js +0 -0
  117. package/.output/public/_nuxt/DhLlTxQh2.js +1 -0
  118. package/.output/public/_nuxt/DhW7cFOa.js +1 -0
  119. package/.output/public/_nuxt/{Rt2i6k7C2.js → DhjgWrB62.js} +1 -1
  120. package/.output/public/_nuxt/{KwT4sN_d.js → DiWcX4gj.js} +1 -1
  121. package/.output/public/_nuxt/DiloA8vK.js +1 -0
  122. package/.output/public/_nuxt/{DX-c5laM2.js → DlS-SkQ42.js} +1 -1
  123. package/.output/public/_nuxt/{D_Zspo1y.js → DmHp9yQ3.js} +1 -1
  124. package/.output/public/_nuxt/{dq1HKoGD.js → DoL9u6wu.js} +1 -1
  125. package/.output/public/_nuxt/{CIvMT5Ic.js → DqxBCeDe.js} +1 -1
  126. package/.output/public/_nuxt/{BnNmkGJS2.js → DrlnrdvY2.js} +3 -3
  127. package/.output/public/_nuxt/{BAcjVcku2.js → Dt8TL8_X2.js} +1 -1
  128. package/.output/public/_nuxt/{BtfwbNC0.js → Du7gS8RU.js} +1 -1
  129. package/.output/public/_nuxt/DuUc4bbY2.js +1 -0
  130. package/.output/public/_nuxt/{DPUXbTg9.js → DudoisLM.js} +1 -1
  131. package/.output/public/_nuxt/{Ce5R-ZGf2.js → DwgVlehj2.js} +1 -1
  132. package/.output/public/_nuxt/Dyxf2xZw.js +1 -0
  133. package/.output/public/_nuxt/Dz9C2pTa.js +1 -0
  134. package/.output/public/_nuxt/{BYxG9Hb2.js → EMbqTHfT.js} +1 -1
  135. package/.output/public/_nuxt/{B1SzppY12.js → FsRVXpyF2.js} +1 -1
  136. package/.output/public/_nuxt/{0MLy6ogg2.js → GQrEW8nk2.js} +1 -1
  137. package/.output/public/_nuxt/{Tuz5LcLM.js → IXR1BWP5.js} +1 -1
  138. package/.output/public/_nuxt/{-jpUnM1I2.js → Iub61dX92.js} +1 -1
  139. package/.output/public/_nuxt/{CQgOzpvI.js → JegDslce.js} +2 -2
  140. package/.output/public/_nuxt/{DrF3TWoj.js → KzK37yIr.js} +1 -1
  141. package/.output/public/_nuxt/{Br3MggOL.js → N-CCmCsX.js} +1 -1
  142. package/.output/public/_nuxt/{DHhmq7s_.js → NfvZ5Lzv.js} +1 -1
  143. package/.output/public/_nuxt/{CzX_kaPL.js → POTcePF_.js} +1 -1
  144. package/.output/public/_nuxt/{D7s96J3r2.js → Q-JpBT032.js} +1 -1
  145. package/.output/public/_nuxt/{DzwIZ81f2.js → R1g64DNi2.js} +1 -1
  146. package/.output/public/_nuxt/{JgheoP3e.js → R5Pz7BqB.js} +1 -1
  147. package/.output/public/_nuxt/{yLyz0-Yz.js → SvjzWbn8.js} +1 -1
  148. package/.output/public/_nuxt/{Dd7MZc_Q.js → XqXoaoDs.js} +1 -1
  149. package/.output/public/_nuxt/{B6jtLy6z.js → YAA98rWJ.js} +11 -11
  150. package/.output/public/_nuxt/{HX4_xnak2.js → YLYSczSq2.js} +1 -1
  151. package/.output/public/_nuxt/{BBw9ylUY2.js → YNhAoK-R2.js} +1 -1
  152. package/.output/public/_nuxt/Zkbt8Uk5.js +1 -0
  153. package/.output/public/_nuxt/aml.PalMp-5n.css +1 -0
  154. package/.output/public/_nuxt/{C41CcsiD.js → b7UcqLKi.js} +1 -1
  155. package/.output/public/_nuxt/builds/latest.json +1 -1
  156. package/.output/public/_nuxt/builds/meta/fa0af8b5-3929-428d-a6de-3b5cc6b8248f.json +1 -0
  157. package/.output/public/_nuxt/{DVkFSOZi.js → cKj4vSo5.js} +1 -1
  158. package/.output/public/_nuxt/{r1CpGsFp.js → dHwWyr6b.js} +1 -1
  159. package/.output/public/_nuxt/{default.BzOcvmSE.css → default.BEXGWZFQ.css} +1 -1
  160. package/.output/public/_nuxt/{DlcA9Gxl.js → eePbiWEh.js} +1 -1
  161. package/.output/public/_nuxt/{entry.CL2i0F8o.css → entry.C7koBPom.css} +1 -1
  162. package/.output/public/_nuxt/{cjRzSvAg2.js → eymRov9Y2.js} +1 -1
  163. package/.output/public/_nuxt/{B8cViLJT.js → geMze5qw.js} +1 -1
  164. package/.output/public/_nuxt/{uu1wfdfR2.js → gh-WMxV_2.js} +1 -1
  165. package/.output/public/_nuxt/{Ce6e1mPk2.js → hCN555XP2.js} +1 -1
  166. package/.output/public/_nuxt/{rdUE8Khf.js → hZG5MLjK.js} +3 -3
  167. package/.output/public/_nuxt/{CcX_jP-d.js → hlfahYxK.js} +1 -1
  168. package/.output/public/_nuxt/{cGSl2GZp2.js → ilJHF1nA2.js} +1 -1
  169. package/.output/public/_nuxt/{D6ZcgHPz.js → jDuiDtGb.js} +1 -1
  170. package/.output/public/_nuxt/{DbeNMehP.js → k9b520K-.js} +1 -1
  171. package/.output/public/_nuxt/ontology.B_3Wn907.css +1 -0
  172. package/.output/public/_nuxt/optimizer.CLA8I1sy.css +1 -0
  173. package/.output/public/_nuxt/{DSORcpTJ.js → rDvMijKA.js} +2 -2
  174. package/.output/public/_nuxt/{CAiHhX8P2.js → rF7mggl72.js} +2 -2
  175. package/.output/public/_nuxt/ri9UF8rk.js +2 -0
  176. package/.output/public/_nuxt/{KgnxOsMr.js → toG_qAMH.js} +1 -1
  177. package/.output/public/_nuxt/{KQZmHR_K.js → u3h4pGpm.js} +2 -2
  178. package/.output/public/_nuxt/{dJ7gK7C2.js → uomnHjhM.js} +1 -1
  179. package/.output/public/_nuxt/{BUTg4W_x2.js → v77qozuJ2.js} +1 -1
  180. package/.output/public/_nuxt/{BcEr7tIB.js → v7cV7hJa.js} +1 -1
  181. package/.output/public/_nuxt/{D25dVZ822.js → vkQoYNQR2.js} +2 -2
  182. package/.output/public/_nuxt/{wR_w07322.js → vp3LtnTz2.js} +1 -1
  183. package/.output/public/_nuxt/{Bnc8HELj2.js → we7-sMSo2.js} +1 -1
  184. package/.output/public/_nuxt/{kN3ZzR1-.js → wxISMS1i.js} +1 -1
  185. package/.output/public/_nuxt/{DGrrucbG2.js → zy7efYKR.js} +1 -1
  186. package/.output/server/chunks/_/access.mjs +1 -1
  187. package/.output/server/chunks/_/binding-authz.mjs +1 -1
  188. package/.output/server/chunks/_/catalog-view.mjs +1 -1
  189. package/.output/server/chunks/_/character-asset.repo.mjs +1 -1
  190. package/.output/server/chunks/_/chart-repo.mjs +1 -1
  191. package/.output/server/chunks/_/dashboard-repo.mjs +1 -1
  192. package/.output/server/chunks/_/data-export.mjs +6 -6
  193. package/.output/server/chunks/_/data-query.mjs +3 -3
  194. package/.output/server/chunks/_/eda-run.repo.mjs +2 -2
  195. package/.output/server/chunks/_/entity.mjs +1 -1
  196. package/.output/server/chunks/_/features.mjs +5 -5
  197. package/.output/server/chunks/_/golden.mjs +3 -3
  198. package/.output/server/chunks/_/host-bindings.mjs +1 -1
  199. package/.output/server/chunks/_/index.mjs +1 -1
  200. package/.output/server/chunks/_/mes-console.mjs +1 -1
  201. package/.output/server/chunks/_/nitro.mjs +7291 -3540
  202. package/.output/server/chunks/_/nitro.mjs.map +1 -1
  203. package/.output/server/chunks/_/ocap.mjs +1 -1
  204. package/.output/server/chunks/_/rest-auth.mjs +1 -1
  205. package/.output/server/chunks/_/scene-layout.repo.mjs +1 -1
  206. package/.output/server/chunks/_/spc.mjs +2 -2
  207. package/.output/server/chunks/build/TownView-BWMDbosY.mjs +1 -1
  208. package/.output/server/chunks/build/{_wsId_-BNKrrV1H.mjs → _wsId_-BPy-Aj9L.mjs} +3 -3
  209. package/.output/server/chunks/build/{_wsId_-BNKrrV1H.mjs.map → _wsId_-BPy-Aj9L.mjs.map} +1 -1
  210. package/.output/server/chunks/build/{agents-8tV9xL97.mjs → agents-CpNLdI8E.mjs} +6 -6
  211. package/.output/server/chunks/build/{agents-8tV9xL97.mjs.map → agents-CpNLdI8E.mjs.map} +1 -1
  212. package/.output/server/chunks/build/{aml-BNTEDOsl.mjs → aml-DRAFRcGU.mjs} +15 -12
  213. package/.output/server/chunks/build/{aml-BNTEDOsl.mjs.map → aml-DRAFRcGU.mjs.map} +1 -1
  214. package/.output/server/chunks/build/api-BEW_ebY_.mjs +64 -0
  215. package/.output/server/chunks/build/api-BEW_ebY_.mjs.map +1 -0
  216. package/.output/server/chunks/build/{channel-templates-Iot9Y3vV.mjs → channel-templates-ByHOQQkO.mjs} +2 -2
  217. package/.output/server/chunks/build/{channel-templates-Iot9Y3vV.mjs.map → channel-templates-ByHOQQkO.mjs.map} +1 -1
  218. package/.output/server/chunks/build/daq-CdxcfY_G.mjs +1 -1
  219. package/.output/server/chunks/build/dcw-BlDQtS4q.mjs +1 -1
  220. package/.output/server/chunks/build/{default-BeB88U7y.mjs → default-CNWS6NUw.mjs} +17 -11
  221. package/.output/server/chunks/build/{default-BeB88U7y.mjs.map → default-CNWS6NUw.mjs.map} +1 -1
  222. package/.output/server/chunks/build/{dropdown-CjwsxU39.mjs → dropdown-BNwTVGde.mjs} +2 -2
  223. package/.output/server/chunks/build/{dropdown-CjwsxU39.mjs.map → dropdown-BNwTVGde.mjs.map} +1 -1
  224. package/.output/server/chunks/build/{dropdown-C6YH_kSO.mjs → dropdown-Cd-xPhR6.mjs} +2 -2
  225. package/.output/server/chunks/build/{dropdown-C6YH_kSO.mjs.map → dropdown-Cd-xPhR6.mjs.map} +1 -1
  226. package/.output/server/chunks/build/input-number-BNlNDK7H.mjs +1 -1
  227. package/.output/server/chunks/build/{logs-BTfJQ6vQ.mjs → logs-pRb-TMWa.mjs} +3 -3
  228. package/.output/server/chunks/build/{logs-BTfJQ6vQ.mjs.map → logs-pRb-TMWa.mjs.map} +1 -1
  229. package/.output/server/chunks/build/{monitor-DvaR3yo8.mjs → monitor-Cq6hRFeQ.mjs} +6 -6
  230. package/.output/server/chunks/build/{monitor-DvaR3yo8.mjs.map → monitor-Cq6hRFeQ.mjs.map} +1 -1
  231. package/.output/server/chunks/build/ontology-DK0Mf0zT.mjs +1406 -0
  232. package/.output/server/chunks/build/ontology-DK0Mf0zT.mjs.map +1 -0
  233. package/.output/server/chunks/build/{operations-Cl8nVm9D.mjs → operations-SMQrRAcr.mjs} +3 -3
  234. package/.output/server/chunks/build/{operations-Cl8nVm9D.mjs.map → operations-SMQrRAcr.mjs.map} +1 -1
  235. package/.output/server/chunks/build/optimizer-BlWTsM-W.mjs +202 -0
  236. package/.output/server/chunks/build/optimizer-BlWTsM-W.mjs.map +1 -0
  237. package/.output/server/chunks/build/{pagination-KaIvHBzi.mjs → pagination-DTAconUo.mjs} +2 -2
  238. package/.output/server/chunks/build/{pagination-KaIvHBzi.mjs.map → pagination-DTAconUo.mjs.map} +1 -1
  239. package/.output/server/chunks/build/{permissions-CVTfixZj.mjs → permissions-DgXQZSyx.mjs} +6 -6
  240. package/.output/server/chunks/build/{permissions-CVTfixZj.mjs.map → permissions-DgXQZSyx.mjs.map} +1 -1
  241. package/.output/server/chunks/build/{schedules-BLhn2CLn.mjs → schedules-dSnr8url.mjs} +6 -6
  242. package/.output/server/chunks/build/{schedules-BLhn2CLn.mjs.map → schedules-dSnr8url.mjs.map} +1 -1
  243. package/.output/server/chunks/build/{select--XFl7CtY.mjs → select-B3Dsb9yq.mjs} +3 -3
  244. package/.output/server/chunks/build/{select--XFl7CtY.mjs.map → select-B3Dsb9yq.mjs.map} +1 -1
  245. package/.output/server/chunks/build/{settings-DIf_iYdu.mjs → settings-BrIhnS2Z.mjs} +2 -2
  246. package/.output/server/chunks/build/{settings-DIf_iYdu.mjs.map → settings-BrIhnS2Z.mjs.map} +1 -1
  247. package/.output/server/chunks/build/{table-DIu_YCJN.mjs → table-CmVD-cA9.mjs} +4 -4
  248. package/.output/server/chunks/build/{table-DIu_YCJN.mjs.map → table-CmVD-cA9.mjs.map} +1 -1
  249. package/.output/server/chunks/build/{teams-B2J6ouRY.mjs → teams-B1d32eHK.mjs} +4 -4
  250. package/.output/server/chunks/build/{teams-B2J6ouRY.mjs.map → teams-B1d32eHK.mjs.map} +1 -1
  251. package/.output/server/chunks/build/{tokens-DFQGaN2n.mjs → tokens-GYaGJ35Z.mjs} +6 -6
  252. package/.output/server/chunks/build/{tokens-DFQGaN2n.mjs.map → tokens-GYaGJ35Z.mjs.map} +1 -1
  253. package/.output/server/chunks/build/{tools-DWJFnU_t.mjs → tools-s_9U1Djj.mjs} +6 -6
  254. package/.output/server/chunks/build/{tools-DWJFnU_t.mjs.map → tools-s_9U1Djj.mjs.map} +1 -1
  255. package/.output/server/chunks/build/types-D6J7slEa.mjs +6 -2
  256. package/.output/server/chunks/build/useDaqAddNode-D_Rkju0f.mjs +1 -1
  257. package/.output/server/chunks/build/useDaqDetailNode-DeOsDxK5.mjs +1 -1
  258. package/.output/server/chunks/build/useDaqDetailParams-Cm9a9r5G.mjs +1 -1
  259. package/.output/server/chunks/build/useDaqFilters-CctmO03p.mjs +1 -1
  260. package/.output/server/chunks/build/useDaqStream-B9ZBVQrI.mjs +1 -1
  261. package/.output/server/chunks/build/useDaqTemplates-CK37sMfi.mjs +1 -1
  262. package/.output/server/chunks/build/useDcwAddNode-DACVcEHs.mjs +1 -1
  263. package/.output/server/chunks/build/useDcwStream-Dir5ufAU.mjs +1 -1
  264. package/.output/server/chunks/build/{users-BWw0VCr9.mjs → users-DjiVC_tS.mjs} +6 -6
  265. package/.output/server/chunks/build/{users-BWw0VCr9.mjs.map → users-DjiVC_tS.mjs.map} +1 -1
  266. package/.output/server/chunks/routes/api/mcp/workshop.mjs +1 -1
  267. package/.output/server/chunks/routes/api/system/backup/run.post.mjs +2 -2
  268. package/.output/server/chunks/routes/api/workshop/agent-tools/approvals/_id/decide.post.mjs +17 -4
  269. package/.output/server/chunks/routes/api/workshop/agent-tools/approvals/_id/decide.post.mjs.map +1 -1
  270. package/.output/server/chunks/routes/api/workshop/agent-tools/bindings/_id_.delete.mjs +1 -1
  271. package/.output/server/chunks/routes/api/workshop/agent-tools/bindings/_id_.patch.mjs +1 -1
  272. package/.output/server/chunks/routes/api/workshop/agent-tools/bindings/grant.post.mjs +1 -1
  273. package/.output/server/chunks/routes/api/workshop/agent-tools/bindings/revoke.post.mjs +1 -1
  274. package/.output/server/chunks/routes/api/workshop/agent-tools/index.get.mjs +1 -1
  275. package/.output/server/chunks/routes/api/workshop/agent-tools/index.post.mjs +1 -1
  276. package/.output/server/chunks/routes/api/workshop/agent-tools/index2.get.mjs +1 -1
  277. package/.output/server/chunks/routes/api/workshop/agent-tools/invoke.post.mjs +1 -1
  278. package/.output/server/chunks/routes/api/workshop/agent-tools/list.get.mjs +1 -1
  279. package/.output/server/chunks/routes/api/workshop/aml/datasets/_id/preview.get.mjs +1 -1
  280. package/.output/server/chunks/routes/api/workshop/aml/datasets/_id_.delete.mjs +1 -1
  281. package/.output/server/chunks/routes/api/workshop/aml/datasets/_id_.get.mjs +1 -1
  282. package/.output/server/chunks/routes/api/workshop/aml/datasets/_id_.patch.mjs +1 -1
  283. package/.output/server/chunks/routes/api/workshop/aml/env/recheck.post.mjs +1 -1
  284. package/.output/server/chunks/routes/api/workshop/aml/env/uv.post.mjs +1 -1
  285. package/.output/server/chunks/routes/api/workshop/aml/env/venv.post.mjs +1 -1
  286. package/.output/server/chunks/routes/api/workshop/aml/index.get.mjs +1 -1
  287. package/.output/server/chunks/routes/api/workshop/aml/index.post.mjs +1 -1
  288. package/.output/server/chunks/routes/api/workshop/aml/index2.post.mjs +1 -1
  289. package/.output/server/chunks/routes/api/workshop/aml/index3.get.mjs +1 -1
  290. package/.output/server/chunks/routes/api/workshop/aml/index3.post.mjs +1 -1
  291. package/.output/server/chunks/routes/api/workshop/aml/index4.get.mjs +1 -1
  292. package/.output/server/chunks/routes/api/workshop/aml/index5.get.mjs +1 -1
  293. package/.output/server/chunks/routes/api/workshop/aml/index6.get.mjs +1 -1
  294. package/.output/server/chunks/routes/api/workshop/aml/index7.get.mjs +1 -1
  295. package/.output/server/chunks/routes/api/workshop/aml/jobs/_id/cancel.post.mjs +1 -1
  296. package/.output/server/chunks/routes/api/workshop/aml/jobs/_id/logs.get.mjs +1 -1
  297. package/.output/server/chunks/routes/api/workshop/aml/jobs/_id/retry.post.mjs +1 -1
  298. package/.output/server/chunks/routes/api/workshop/aml/jobs/_id_.delete.mjs +1 -1
  299. package/.output/server/chunks/routes/api/workshop/aml/jobs/_id_.get.mjs +1 -1
  300. package/.output/server/chunks/routes/api/workshop/aml/models/_id/predict.post.mjs +1 -1
  301. package/.output/server/chunks/routes/api/workshop/aml/models/_id/promote.post.mjs +1 -1
  302. package/.output/server/chunks/routes/api/workshop/aml/models/_id_.delete.mjs +1 -1
  303. package/.output/server/chunks/routes/api/workshop/aml/models/_id_.patch.mjs +8 -2
  304. package/.output/server/chunks/routes/api/workshop/aml/models/_id_.patch.mjs.map +1 -1
  305. package/.output/server/chunks/routes/api/workshop/aml/training-plans/_id/train.post.mjs +1 -1
  306. package/.output/server/chunks/routes/api/workshop/aml/training-plans/_id_.delete.mjs +1 -1
  307. package/.output/server/chunks/routes/api/workshop/aml/training-plans/_id_.patch.mjs +1 -1
  308. package/.output/server/chunks/routes/api/workshop/aml/twin/providers.get.mjs +1 -1
  309. package/.output/server/chunks/routes/api/workshop/analysis/_id_.delete.mjs +1 -1
  310. package/.output/server/chunks/routes/api/workshop/analysis/_id_.get.mjs +1 -1
  311. package/.output/server/chunks/routes/api/workshop/analysis/_id_.patch.mjs +1 -1
  312. package/.output/server/chunks/routes/api/workshop/approvals/_id/decide.post.mjs +1 -1
  313. package/.output/server/chunks/routes/api/workshop/assets/index.post.mjs +1 -1
  314. package/.output/server/chunks/routes/api/workshop/assets/index2.post.mjs +1 -1
  315. package/.output/server/chunks/routes/api/workshop/channel-templates/_id/instantiate.post.mjs +2 -2
  316. package/.output/server/chunks/routes/api/workshop/channels/_id/activate.post.mjs +1 -1
  317. package/.output/server/chunks/routes/api/workshop/channels/_id/chat/index.post.mjs +1 -1
  318. package/.output/server/chunks/routes/api/workshop/channels/_id/index.post.mjs +1 -1
  319. package/.output/server/chunks/routes/api/workshop/channels/_id/index.put.mjs +1 -1
  320. package/.output/server/chunks/routes/api/workshop/channels/_id/index2.put.mjs +1 -1
  321. package/.output/server/chunks/routes/api/workshop/channels/_id/index3.post.mjs +1 -1
  322. package/.output/server/chunks/routes/api/workshop/channels/_id/index4.post.mjs +1 -1
  323. package/.output/server/chunks/routes/api/workshop/channels/_id/index5.get.mjs +1 -1
  324. package/.output/server/chunks/routes/api/workshop/channels/_id/line.put.mjs +1 -1
  325. package/.output/server/chunks/routes/api/workshop/channels/_id/members/join.post.mjs +1 -1
  326. package/.output/server/chunks/routes/api/workshop/channels/_id/terminals.get.mjs +1 -1
  327. package/.output/server/chunks/routes/api/workshop/channels/_id/tools/reset.post.mjs +1 -1
  328. package/.output/server/chunks/routes/api/workshop/channels/_id/twin-profile.get.mjs +1 -1
  329. package/.output/server/chunks/routes/api/workshop/channels/_id/twin-profile.patch.mjs +1 -1
  330. package/.output/server/chunks/routes/api/workshop/channels/index.get.mjs +1 -1
  331. package/.output/server/chunks/routes/api/workshop/channels.post.mjs +7 -7
  332. package/.output/server/chunks/routes/api/workshop/daq/_id/bind.post.mjs +1 -1
  333. package/.output/server/chunks/routes/api/workshop/daq/_id/bindings.put.mjs +1 -1
  334. package/.output/server/chunks/routes/api/workshop/daq/_id/frames/content.get.mjs +1 -1
  335. package/.output/server/chunks/routes/api/workshop/daq/_id/frames.get.mjs +1 -1
  336. package/.output/server/chunks/routes/api/workshop/daq/_id/ingest.post.mjs +2 -2
  337. package/.output/server/chunks/routes/api/workshop/daq/_id/samples.get.mjs +1 -1
  338. package/.output/server/chunks/routes/api/workshop/daq/_id/test.post.mjs +1 -1
  339. package/.output/server/chunks/routes/api/workshop/daq/_id_.delete.mjs +1 -1
  340. package/.output/server/chunks/routes/api/workshop/daq/_id_.patch.mjs +1 -1
  341. package/.output/server/chunks/routes/api/workshop/daq/alarms/_id/ack.post.mjs +1 -1
  342. package/.output/server/chunks/routes/api/workshop/daq/alarms.get.mjs +1 -1
  343. package/.output/server/chunks/routes/api/workshop/daq/controller.post.mjs +1 -1
  344. package/.output/server/chunks/routes/api/workshop/daq/export/_id_.get.mjs +1 -1
  345. package/.output/server/chunks/routes/api/workshop/daq/index2.post.mjs +1 -1
  346. package/.output/server/chunks/routes/api/workshop/daq/infra/reconnect.post.mjs +1 -1
  347. package/.output/server/chunks/routes/api/workshop/daq/infra.get.mjs +1 -1
  348. package/.output/server/chunks/routes/api/workshop/daq/templates/_key_.delete.mjs +1 -1
  349. package/.output/server/chunks/routes/api/workshop/daq/templates/_key_.patch.mjs +1 -1
  350. package/.output/server/chunks/routes/api/workshop/daq/test-driver.post.mjs +1 -1
  351. package/.output/server/chunks/routes/api/workshop/dcw/_id/bind.post.mjs +1 -1
  352. package/.output/server/chunks/routes/api/workshop/dcw/_id/bindings.put.mjs +1 -1
  353. package/.output/server/chunks/routes/api/workshop/dcw/_id/param-ledger.get.mjs +1 -1
  354. package/.output/server/chunks/routes/api/workshop/dcw/_id/read.post.mjs +1 -1
  355. package/.output/server/chunks/routes/api/workshop/dcw/_id/test.post.mjs +1 -1
  356. package/.output/server/chunks/routes/api/workshop/dcw/_id/write.post.mjs +1 -1
  357. package/.output/server/chunks/routes/api/workshop/dcw/_id_.delete.mjs +1 -1
  358. package/.output/server/chunks/routes/api/workshop/dcw/_id_.patch.mjs +1 -1
  359. package/.output/server/chunks/routes/api/workshop/dcw/controller.post.mjs +1 -1
  360. package/.output/server/chunks/routes/api/workshop/dcw/index.get.mjs +1 -1
  361. package/.output/server/chunks/routes/api/workshop/dcw/index.post.mjs +1 -1
  362. package/.output/server/chunks/routes/api/workshop/dcw/index2.get.mjs +1 -1
  363. package/.output/server/chunks/routes/api/workshop/dcw/index2.post.mjs +1 -1
  364. package/.output/server/chunks/routes/api/workshop/dcw/index3.get.mjs +1 -1
  365. package/.output/server/chunks/routes/api/workshop/dcw/index3.post.mjs +1 -1
  366. package/.output/server/chunks/routes/api/workshop/dcw/index4.get.mjs +1 -1
  367. package/.output/server/chunks/routes/api/workshop/dcw/index4.post.mjs +1 -1
  368. package/.output/server/chunks/routes/api/workshop/dcw/index5.get.mjs +1 -1
  369. package/.output/server/chunks/routes/api/workshop/dcw/index5.post.mjs +1 -1
  370. package/.output/server/chunks/routes/api/workshop/dcw/index6.get.mjs +1 -1
  371. package/.output/server/chunks/routes/api/workshop/dcw/index7.get.mjs +1 -1
  372. package/.output/server/chunks/routes/api/workshop/dcw/journal/node/_nodeId/rollback.post.mjs +1 -1
  373. package/.output/server/chunks/routes/api/workshop/dcw/line/query.get.mjs +1 -1
  374. package/.output/server/chunks/routes/api/workshop/dcw/lines/_id/start.post.mjs +1 -1
  375. package/.output/server/chunks/routes/api/workshop/dcw/lines/_id/stop.post.mjs +1 -1
  376. package/.output/server/chunks/routes/api/workshop/dcw/lines/_id_.delete.mjs +1 -1
  377. package/.output/server/chunks/routes/api/workshop/dcw/lines/_id_.patch.mjs +1 -1
  378. package/.output/server/chunks/routes/api/workshop/dcw/mes-artifacts/file.get.mjs +1 -1
  379. package/.output/server/chunks/routes/api/workshop/dcw/mes-hook-test.post.mjs +1 -1
  380. package/.output/server/chunks/routes/api/workshop/dcw/mes-test-read.post.mjs +1 -1
  381. package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id/judge.post.mjs +1 -1
  382. package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id/rollback.post.mjs +1 -1
  383. package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id/series.get.mjs +1 -1
  384. package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id_.get.mjs +1 -1
  385. package/.output/server/chunks/routes/api/workshop/dcw/params/_id/read.post.mjs +1 -1
  386. package/.output/server/chunks/routes/api/workshop/dcw/params/_id/write.post.mjs +1 -1
  387. package/.output/server/chunks/routes/api/workshop/dcw/params/_id_.delete.mjs +1 -1
  388. package/.output/server/chunks/routes/api/workshop/dcw/params/_id_.patch.mjs +1 -1
  389. package/.output/server/chunks/routes/api/workshop/dcw/products/_id_.delete.mjs +1 -1
  390. package/.output/server/chunks/routes/api/workshop/dcw/products/_id_.patch.mjs +1 -1
  391. package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/apply.post.mjs +1 -1
  392. package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/mark-good.post.mjs +1 -1
  393. package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/revert.post.mjs +1 -1
  394. package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/rollback-good.post.mjs +1 -1
  395. package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/versions.get.mjs +1 -1
  396. package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id_.delete.mjs +1 -1
  397. package/.output/server/chunks/routes/api/workshop/dcw/recipes/index.patch.mjs +1 -1
  398. package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/close.post.mjs +1 -1
  399. package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/data.get.mjs +1 -1
  400. package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/rollback.post.mjs +1 -1
  401. package/.output/server/chunks/routes/api/workshop/dcw/templates/_key_.delete.mjs +1 -1
  402. package/.output/server/chunks/routes/api/workshop/dcw/templates/_key_.patch.mjs +1 -1
  403. package/.output/server/chunks/routes/api/workshop/dcw/test-driver.post.mjs +1 -1
  404. package/.output/server/chunks/routes/api/workshop/device-twins/_id/control.post.mjs +1 -1
  405. package/.output/server/chunks/routes/api/workshop/device-twins/_id/telemetry.post.mjs +1 -1
  406. package/.output/server/chunks/routes/api/workshop/device-twins/_id_.delete.mjs +1 -1
  407. package/.output/server/chunks/routes/api/workshop/device-twins/_id_.patch.mjs +1 -1
  408. package/.output/server/chunks/routes/api/workshop/eda/commonality.get.mjs +1 -1
  409. package/.output/server/chunks/routes/api/workshop/eda/features/run.post.mjs +1 -1
  410. package/.output/server/chunks/routes/api/workshop/eda/index3.get.mjs +1 -1
  411. package/.output/server/chunks/routes/api/workshop/eda/index6.get.mjs +1 -1
  412. package/.output/server/chunks/routes/api/workshop/eda/index6.post.mjs +1 -1
  413. package/.output/server/chunks/routes/api/workshop/eda/runs/_id/labels.patch.mjs +1 -1
  414. package/.output/server/chunks/routes/api/workshop/eda/runs.get.mjs +1 -1
  415. package/.output/server/chunks/routes/api/workshop/eda/vm/predict.post.mjs +1 -1
  416. package/.output/server/chunks/routes/api/workshop/exp/confirmations/_id/decide.post.mjs +1 -1
  417. package/.output/server/chunks/routes/api/workshop/exp/index.get.mjs +1 -1
  418. package/.output/server/chunks/routes/api/workshop/fs/dirs.get.mjs +1 -1
  419. package/.output/server/chunks/routes/api/workshop/harnesses/_id/providers.get.mjs +1 -1
  420. package/.output/server/chunks/routes/api/workshop/harnesses.get.mjs +1 -1
  421. package/.output/server/chunks/routes/api/workshop/hitl/pending.get.mjs +1 -1
  422. package/.output/server/chunks/routes/api/workshop/hitl/respond.post.mjs +1 -1
  423. package/.output/server/chunks/routes/api/workshop/index.mjs +62 -0
  424. package/.output/server/chunks/routes/api/workshop/index.mjs.map +1 -0
  425. package/.output/server/chunks/routes/api/workshop/index.put.mjs +1 -1
  426. package/.output/server/chunks/routes/api/workshop/index10.get.mjs +1 -1
  427. package/.output/server/chunks/routes/api/workshop/index11.get.mjs +1 -1
  428. package/.output/server/chunks/routes/api/workshop/index12.get.mjs +1 -1
  429. package/.output/server/chunks/routes/api/workshop/index2.get.mjs +1 -1
  430. package/.output/server/chunks/routes/api/workshop/index3.get.mjs +1 -1
  431. package/.output/server/chunks/routes/api/workshop/index3.post.mjs +1 -1
  432. package/.output/server/chunks/routes/api/workshop/index4.post.mjs +1 -1
  433. package/.output/server/chunks/routes/api/workshop/index5.post.mjs +1 -1
  434. package/.output/server/chunks/routes/api/workshop/index6.get.mjs +1 -1
  435. package/.output/server/chunks/routes/api/workshop/index6.post.mjs +1 -1
  436. package/.output/server/chunks/routes/api/workshop/index7.get.mjs +1 -1
  437. package/.output/server/chunks/routes/api/workshop/index8.get.mjs +1 -1
  438. package/.output/server/chunks/routes/api/workshop/mes/datasets.get.mjs +1 -1
  439. package/.output/server/chunks/routes/api/workshop/mes/preview.post.mjs +1 -1
  440. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/autofix.mjs +52 -0
  441. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/autofix.mjs.map +1 -0
  442. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/compile.mjs +54 -0
  443. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/compile.mjs.map +1 -0
  444. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/evidence.mjs +51 -0
  445. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/evidence.mjs.map +1 -0
  446. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/publish.mjs +67 -0
  447. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/publish.mjs.map +1 -0
  448. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/rules/_ruleId/approval-decision.mjs +49 -0
  449. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/rules/_ruleId/approval-decision.mjs.map +1 -0
  450. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/rules/_ruleId/approval.mjs +35 -0
  451. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/rules/_ruleId/approval.mjs.map +1 -0
  452. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/rules/_ruleId/transition.mjs +49 -0
  453. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/rules/_ruleId/transition.mjs.map +1 -0
  454. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/subgraph.mjs +38 -0
  455. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/subgraph.mjs.map +1 -0
  456. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/validate.mjs +35 -0
  457. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/validate.mjs.map +1 -0
  458. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId_.mjs +70 -0
  459. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId_.mjs.map +1 -0
  460. package/.output/server/chunks/routes/api/workshop/ontology/export/_ontologyId_.mjs +64 -0
  461. package/.output/server/chunks/routes/api/workshop/ontology/export/_ontologyId_.mjs.map +1 -0
  462. package/.output/server/chunks/routes/api/workshop/ontology/index.mjs +44 -0
  463. package/.output/server/chunks/routes/api/workshop/ontology/index.mjs.map +1 -0
  464. package/.output/server/chunks/routes/api/workshop/ontology/scene.mjs +43 -0
  465. package/.output/server/chunks/routes/api/workshop/ontology/scene.mjs.map +1 -0
  466. package/.output/server/chunks/routes/api/workshop/ontology/traces/_ontologyId_.mjs +38 -0
  467. package/.output/server/chunks/routes/api/workshop/ontology/traces/_ontologyId_.mjs.map +1 -0
  468. package/.output/server/chunks/routes/api/workshop/ontology/versions/_ontologyId/compare.mjs +40 -0
  469. package/.output/server/chunks/routes/api/workshop/ontology/versions/_ontologyId/compare.mjs.map +1 -0
  470. package/.output/server/chunks/routes/api/workshop/ontology/versions/_ontologyId_.mjs +63 -0
  471. package/.output/server/chunks/routes/api/workshop/ontology/versions/_ontologyId_.mjs.map +1 -0
  472. package/.output/server/chunks/routes/api/workshop/optimization/capabilities.get.mjs +1 -1
  473. package/.output/server/chunks/routes/api/workshop/optimization/index.get.mjs +1 -1
  474. package/.output/server/chunks/routes/api/workshop/optimization/index.mjs +1 -1
  475. package/.output/server/chunks/routes/api/workshop/optimization/index2.mjs +1 -1
  476. package/.output/server/chunks/routes/api/workshop/optimization/profiles/_id/publish.post.mjs +1 -1
  477. package/.output/server/chunks/routes/api/workshop/optimization/recommendations/_id/crosscheck.post.mjs +1 -1
  478. package/.output/server/chunks/routes/api/workshop/optimization/recommendations/_id/dispatch.post.mjs +1 -1
  479. package/.output/server/chunks/routes/api/workshop/optimization/solve.post.mjs +1 -1
  480. package/.output/server/chunks/routes/api/workshop/plugins/_name/disable.post.mjs +1 -1
  481. package/.output/server/chunks/routes/api/workshop/plugins/_name/enable.post.mjs +1 -1
  482. package/.output/server/chunks/routes/api/workshop/process-model/datasets.post.mjs +1 -1
  483. package/.output/server/chunks/routes/api/workshop/process-model/eligibility.mjs +1 -1
  484. package/.output/server/chunks/routes/api/workshop/process-model/experiments.mjs +1 -1
  485. package/.output/server/chunks/routes/api/workshop/process-model/index.mjs +1 -1
  486. package/.output/server/chunks/routes/api/workshop/process-model/specs/_id/publish.post.mjs +1 -1
  487. package/.output/server/chunks/routes/api/workshop/process-model/train.post.mjs +1 -1
  488. package/.output/server/chunks/routes/api/workshop/scene/layouts/_channelId_.delete.mjs +1 -1
  489. package/.output/server/chunks/routes/api/workshop/scene/layouts/_channelId_.put.mjs +1 -1
  490. package/.output/server/chunks/routes/api/workshop/teams/_id/deploy.post.mjs +1 -1
  491. package/.output/server/chunks/routes/api/workshop/teams/_id/index.put.mjs +1 -1
  492. package/.output/server/chunks/routes/api/workshop/teams/_id/index2.get.mjs +1 -1
  493. package/.output/server/chunks/routes/api/workshop/tools/_name_.get.mjs +1 -1
  494. package/.output/server/chunks/routes/api/workshop/tools/sync.post.mjs +1 -1
  495. package/.output/server/chunks/routes/api/workshop/workspaces/_id/channel-templates/_tplId_.post.mjs +2 -2
  496. package/.output/server/chunks/routes/renderer.mjs +2 -2
  497. package/.output/server/chunks/virtual/entry.mjs +323 -18
  498. package/.output/server/chunks/virtual/precomputed.mjs +1 -1
  499. package/.output/server/package.json +1 -1
  500. package/README-zh.md +28 -6
  501. package/README.md +26 -4
  502. package/app/components/AppSidebar.vue +1 -0
  503. package/app/components/aml/AmlModelsTable.vue +5 -0
  504. package/app/components/ontology/OntologyGraph.vue +356 -0
  505. package/app/pages/aml/styles.css +1 -0
  506. package/app/pages/ontology/api.ts +18 -0
  507. package/app/pages/ontology/index.vue +1062 -0
  508. package/app/pages/ontology/types.ts +164 -0
  509. package/app/pages/optimizer/index.vue +21 -4
  510. package/config.yml +1 -1
  511. package/docs/cli.en.md +2 -2
  512. package/docs/cli.md +2 -2
  513. package/docs/plugins.en.md +1 -1
  514. package/docs/plugins.md +1 -1
  515. package/docs/sdk.en.md +1 -1
  516. package/docs/sdk.md +1 -1
  517. package/i18n/locales/en.ts +84 -0
  518. package/i18n/locales/zh-CN.ts +84 -0
  519. package/mcp/aw-mcp-server.mjs +53 -1
  520. package/package.json +1 -1
  521. package/scripts/docs-shots.mjs +36 -0
  522. package/scripts/e2e-direct-rest-simulator-paper.mjs +624 -0
  523. package/scripts/e2e-idd-results.mjs +177 -0
  524. package/scripts/e2e-model-loop-live.mjs +785 -0
  525. package/scripts/e2e-ontology-live.mjs +909 -0
  526. package/scripts/e2e-ontology.mjs +393 -0
  527. package/scripts/e2e-pi-simulator-paper.mjs +2316 -0
  528. package/scripts/e2e-registered-harness-simulator-paper.mjs +1926 -0
  529. package/scripts/e2e-simulator-optimizer-paper.mjs +264 -0
  530. package/scripts/fixtures/omp-paper-harness.mjs +163 -0
  531. package/scripts/ontology-idd-rag-e2e.mjs +449 -0
  532. package/sdk/context.mjs +6 -0
  533. package/sdk/index.d.mts +2 -0
  534. package/server/api/workshop/agent-tools/approvals/[id]/decide.post.ts +16 -0
  535. package/server/api/workshop/aml/models/[id].patch.ts +36 -30
  536. package/server/api/workshop/ontology/drafts/[draftId]/autofix.ts +31 -0
  537. package/server/api/workshop/ontology/drafts/[draftId]/compile.ts +39 -0
  538. package/server/api/workshop/ontology/drafts/[draftId]/evidence.ts +33 -0
  539. package/server/api/workshop/ontology/drafts/[draftId]/publish.ts +44 -0
  540. package/server/api/workshop/ontology/drafts/[draftId]/rules/[ruleId]/approval-decision.ts +28 -0
  541. package/server/api/workshop/ontology/drafts/[draftId]/rules/[ruleId]/approval.ts +17 -0
  542. package/server/api/workshop/ontology/drafts/[draftId]/rules/[ruleId]/transition.ts +32 -0
  543. package/server/api/workshop/ontology/drafts/[draftId]/subgraph.ts +24 -0
  544. package/server/api/workshop/ontology/drafts/[draftId]/validate.ts +16 -0
  545. package/server/api/workshop/ontology/drafts/[draftId].ts +52 -0
  546. package/server/api/workshop/ontology/drafts/index.ts +20 -0
  547. package/server/api/workshop/ontology/export/[ontologyId].ts +50 -0
  548. package/server/api/workshop/ontology/index.ts +38 -0
  549. package/server/api/workshop/ontology/scene.ts +34 -0
  550. package/server/api/workshop/ontology/traces/[ontologyId].ts +19 -0
  551. package/server/api/workshop/ontology/versions/[ontologyId]/compare.ts +21 -0
  552. package/server/api/workshop/ontology/versions/[ontologyId].ts +42 -0
  553. package/server/plugins-builtin/diag-bridge/client.mjs +390 -239
  554. package/server/plugins-builtin/diag-bridge/host/helpers.mjs +80 -0
  555. package/server/plugins-builtin/diag-bridge/host/plugin.mjs +264 -2
  556. package/server/plugins-builtin/diag-bridge/i18n.json +84 -4
  557. package/server/services/workshop/agents/adapters/omp-rpc-client/frames.ts +129 -111
  558. package/server/services/workshop/agents/hitl-decision/dispatcher.ts +15 -0
  559. package/server/services/workshop/agents/host-tool-bridge/tools/industrial.ts +17 -2
  560. package/server/services/workshop/agents/industrial/aml-job-tools.ts +602 -569
  561. package/server/services/workshop/agents/industrial/grant-guard.ts +73 -0
  562. package/server/services/workshop/agents/industrial/index.ts +38 -32
  563. package/server/services/workshop/agents/industrial/ontology-tools.ts +380 -0
  564. package/server/services/workshop/agents/industrial/ops-tools.ts +54 -16
  565. package/server/services/workshop/agents/industrial/optimizer-tools.ts +81 -0
  566. package/server/services/workshop/agents/industrial/recipe-gate.ts +19 -6
  567. package/server/services/workshop/agents/industrial/recipe-propose-tools.ts +1 -1
  568. package/server/services/workshop/agents/industrial/tool-verify.ts +32 -2
  569. package/server/services/workshop/agents/omp-agent/supervision-history.ts +38 -0
  570. package/server/services/workshop/agents/omp-agent/tools-steer.ts +18 -1
  571. package/server/services/workshop/agents/tool-reference-spec.ts +1 -1
  572. package/server/services/workshop/aml/aml.repo.ts +16 -0
  573. package/server/services/workshop/aml/twin/physics-spec.ts +6 -22
  574. package/server/services/workshop/daq/bus/index.ts +12 -5
  575. package/server/services/workshop/daq/storage/index.ts +6 -5
  576. package/server/services/workshop/daq/storage/sqlite.adapter.ts +25 -13
  577. package/server/services/workshop/db/database/open.ts +97 -95
  578. package/server/services/workshop/db/database/schema.ts +156 -1
  579. package/server/services/workshop/ontology/autofix.ts +198 -0
  580. package/server/services/workshop/ontology/compiler.ts +474 -0
  581. package/server/services/workshop/ontology/contracts.ts +443 -0
  582. package/server/services/workshop/ontology/guards.ts +139 -0
  583. package/server/services/workshop/ontology/index.ts +12 -0
  584. package/server/services/workshop/ontology/ontology.service.ts +938 -0
  585. package/server/services/workshop/ontology/repo.ts +449 -0
  586. package/server/services/workshop/ontology/semantic-binding.service.ts +226 -0
  587. package/server/services/workshop/ontology/subgraph.core.ts +300 -0
  588. package/server/services/workshop/ontology/subgraph.service.ts +113 -0
  589. package/server/services/workshop/ontology/validator.ts +218 -0
  590. package/server/services/workshop/optimization/binding.repo.ts +7 -0
  591. package/server/services/workshop/optimization/contracts.ts +16 -0
  592. package/server/services/workshop/optimization/dispatch.service.ts +16 -0
  593. package/server/services/workshop/optimization/profile-adopt.service.ts +261 -0
  594. package/server/services/workshop/optimization/profile.repo.ts +24 -6
  595. package/server/services/workshop/optimization/python/__pycache__/problems.cpython-312.pyc +0 -0
  596. package/shared/dimensions.ts +124 -0
  597. package/.output/public/_nuxt/B3Y5bCrM.js +0 -1
  598. package/.output/public/_nuxt/B7s2qeyT.js +0 -14
  599. package/.output/public/_nuxt/B8N8nsad2.js +0 -2
  600. package/.output/public/_nuxt/BO0BJx3w.js +0 -8
  601. package/.output/public/_nuxt/BWn-lfCp2.js +0 -1
  602. package/.output/public/_nuxt/Bcs9zzO62.js +0 -1
  603. package/.output/public/_nuxt/BwO2Y5FH2.js +0 -1
  604. package/.output/public/_nuxt/C-LU6xv_.js +0 -1
  605. package/.output/public/_nuxt/CJ0bjZ6v2.js +0 -1
  606. package/.output/public/_nuxt/CJ3Vul2u.js +0 -1
  607. package/.output/public/_nuxt/CNwx04ln.js +0 -84
  608. package/.output/public/_nuxt/CVCscYzb2.js +0 -1
  609. package/.output/public/_nuxt/C_A0MCol2.js +0 -1
  610. package/.output/public/_nuxt/CnP6snIz.js +0 -3
  611. package/.output/public/_nuxt/D3buuIkE.js +0 -1
  612. package/.output/public/_nuxt/D4_INWgq.js +0 -1
  613. package/.output/public/_nuxt/D5kCimyw.js +0 -1
  614. package/.output/public/_nuxt/DBtXLkyA.js +0 -1
  615. package/.output/public/_nuxt/DHURbGkn2.js +0 -1
  616. package/.output/public/_nuxt/DaBzS-iu.js +0 -1
  617. package/.output/public/_nuxt/DnlhV7Xe.js +0 -1
  618. package/.output/public/_nuxt/GtI6PUI32.js +0 -1
  619. package/.output/public/_nuxt/LHIav-Kv.js +0 -1
  620. package/.output/public/_nuxt/Nw_6OpQZ.js +0 -1
  621. package/.output/public/_nuxt/RuMLNeQE.js +0 -1
  622. package/.output/public/_nuxt/Y4sMSPrS.js +0 -1
  623. package/.output/public/_nuxt/aml.CeLxRzvI.css +0 -1
  624. package/.output/public/_nuxt/builds/meta/0ae8cb0f-6ce5-4096-9692-9b1fc197b30d.json +0 -1
  625. package/.output/public/_nuxt/goF_oZHF.js +0 -2
  626. package/.output/public/_nuxt/optimizer.B8gCbU1b.css +0 -1
  627. package/.output/public/_nuxt/rJ7To74v2.js +0 -1
  628. package/.output/server/chunks/build/optimizer-BOtGWEtc.mjs +0 -200
  629. package/.output/server/chunks/build/optimizer-BOtGWEtc.mjs.map +0 -1
@@ -37,6 +37,7 @@ import { getDcwLineRepo } from '../dcw/dcw-line.repo'
37
37
  import { assertRecipeOpInterval } from '../dcw/recipe-op-anchor'
38
38
  import { getToolApprovals } from '../agents/tool-approvals'
39
39
  import { amlActivityForLine } from '../agents/industrial/aml-activity'
40
+ import { assertOntologyUnchanged, evaluateOntologyGuardsForNodes } from '../ontology/ontology.service'
40
41
  import type { RecipeProposePayload } from '../agents/industrial/recipe-propose-tools'
41
42
 
42
43
  export function isOptimizerDispatchCard(nodeId: string): boolean {
@@ -342,6 +343,21 @@ export async function createDispatchCard(initiator: ResolvedUser, recommendation
342
343
  }
343
344
  })
344
345
  const { recipe } = loadRec(recommendationId)
346
+ // 本体运行时守卫(ONT):已发布本体的 block 级守卫对本次下发意图求值。
347
+ // 只增拒不放行;无本体/无守卫时零开销。批准时刻 D13 仍全量重验。
348
+ const ontologyGuard = evaluateOntologyGuardsForNodes(spec.lineId, paramRows.map(p => ({ nodeId: p.nodeId, from: p.from, to: p.to })))
349
+ if (ontologyGuard.blocked) {
350
+ const violation = ontologyGuard.violations[0]!
351
+ throw new AppError(409, 'ONTOLOGY_GUARD_BLOCKED',
352
+ `本体运行时守卫阻断下发:${violation.message}(规则 ${violation.ruleId};本体包 ${ontologyGuard.packHash.slice(0, 12)})`)
353
+ }
354
+ // Profile 冻结的本体引用漂移:独立校验(不进 IR hash,不变更 D13 八项语义)
355
+ const dispatchRun = db().prepare('SELECT profile_id AS profileId, profile_version AS profileVersion FROM optimizer_runs WHERE id = ?')
356
+ .get(rec.runId) as { profileId?: string, profileVersion?: number } | undefined
357
+ if (dispatchRun?.profileId) {
358
+ const dispatchProfileRow = getProfileRepo().get(dispatchRun.profileId, Number(dispatchRun.profileVersion ?? 1))
359
+ if (dispatchProfileRow) assertOntologyUnchanged(parseProfileRow(dispatchProfileRow).ontologyRefs)
360
+ }
345
361
  // 闸序预检(建卡时刻;批准时刻 D13 全量重验)
346
362
  const gate = await assertDispatchApprovable(recommendationId, { modelFirstMove, packages: [{ params: paramRows }] })
347
363
  if (!gate.ok) throw new AppError(gate.code.startsWith('DISPATCH_GATE') || gate.code === 'DISPATCH_STEP_EXCEEDED' ? 403 : 409, gate.code, gate.comment)
@@ -0,0 +1,261 @@
1
+ /**
2
+ * Profile 模型采纳服务 —— Agent 迭代闭环的"采纳"环节(OW-adopt)。
3
+ *
4
+ * 闭环语义:Agent 训练出新模型(aml_job_submit→done)后,可以用
5
+ * `optimizer_profile_propose` 工具发起「采纳提议」:复制当前已发布 Profile
6
+ * 的全部求解配置、换上新模型工件、生成新草稿版本,并挂一张 HITL 卡。
7
+ * 人类批准 → **发布新版本 + 自动重绑**所有绑定在旧版本的 Agent(绑定 revision+1,
8
+ * 在飞求解按 BINDING_STALE 收敛,下一次 solve 即用新模型);拒绝 → 零写,意见回流。
9
+ *
10
+ * 治理不变量:
11
+ * - 提议 = 草稿 + 卡,本身不改运行行为(旧版本继续求解);
12
+ * - 发布只发生在人类批准之后(单一咽喉,dispatcher/decide 双入口同路由);
13
+ * - 模型工件/求解器/模板兼容性在提议时校验(D21 矩阵,不兼容 422);
14
+ * - 全链审计(actor 三态,publish/adopt/rebind 各一条)。
15
+ */
16
+ import { AppError } from '../../../utils/errors'
17
+ import { getAmlRuntime } from '../aml/runtime'
18
+ import { recordOps } from '../ops/ops'
19
+ import { getProfileRepo, parseProfileRow } from './profile.repo'
20
+ import { getBindingRepo } from './binding.repo'
21
+ import { assertProfileSolverCompatible, type OptimizationProfile } from './contracts'
22
+ import type { ProblemTemplateRef, SolverRef } from '../process-model/contracts'
23
+ import { securityRecipeDispatchTimeoutMs } from '../settings'
24
+ import { createLogger } from '../logger'
25
+
26
+ import { getToolApprovals } from '../agents/tool-approvals'
27
+
28
+ const log = createLogger('optimizer.profile-adopt')
29
+
30
+ export const PROFILE_ADOPT_PREFIX = 'optimizer-profile:'
31
+
32
+ export function isProfileAdoptCard(nodeId: string): boolean {
33
+ return nodeId.startsWith(PROFILE_ADOPT_PREFIX)
34
+ }
35
+
36
+ export interface ProposeAdoptionInput {
37
+ /** 发起 Agent 的 channel 实例 id(HITL 卡挂在其频道) */
38
+ agentInstanceId: string
39
+ /** 人类发起时为用户 id;Agent 发起传 agentId(actorKind='agent') */
40
+ initiatorId: string
41
+ initiatorKind?: 'user' | 'agent'
42
+ profileId: string
43
+ modelId: string
44
+ /** 可选切换问题模板/求解器(不兼容 → 422,D21 矩阵) */
45
+ templateRef?: ProblemTemplateRef
46
+ solverRef?: SolverRef
47
+ /** 提议理由(必填;审批卡展示) */
48
+ reason: string
49
+ /** 可选:新版本的人读名称/描述(缺省沿用基线描述) */
50
+ profileName?: string
51
+ profileDescription?: string
52
+ /** 依赖注入(单测 stub 用) */
53
+ deps?: {
54
+ requestApproval?: (agentId: string, nodeId: string, kind: 'dcw', detail: string, opts?: { title?: string, timeoutMs?: number, payload?: unknown }) => Promise<{ approved: boolean, comment: string, choice: number | null }>
55
+ }
56
+ }
57
+
58
+ export interface ProposeAdoptionResult {
59
+ cardId: string
60
+ profileId: string
61
+ version: number
62
+ priorVersion: number
63
+ modelId: string
64
+ decision: { approved: boolean, comment: string, choice: number | null }
65
+ published: boolean
66
+ rebindCount: number
67
+ }
68
+
69
+ /** 提议采纳:建草稿新版本 + 挂 HITL 卡 + 等待裁决(approved 时已完成发布与重绑)。 */
70
+ export async function proposeProfileAdoption(input: ProposeAdoptionInput): Promise<ProposeAdoptionResult> {
71
+ const repo = getProfileRepo()
72
+ const published = repo.latestPublished(input.profileId)
73
+ if (!published) {
74
+ throw new AppError(404, 'PROFILE_NOT_PUBLISHED', `Profile ${input.profileId} 没有已发布版本;采纳以已发布版本为基线`)
75
+ }
76
+ const model = getAmlRuntime().repo.model.get(input.modelId)
77
+ if (!model) throw new AppError(404, 'MODEL_NOT_FOUND', `模型 ${input.modelId} 不存在(先经 AML 训练登记)`)
78
+
79
+ const prior = parseProfileRow(published)
80
+ const version = published.version + 1
81
+ const nextProfile: OptimizationProfile = {
82
+ ...prior,
83
+ version,
84
+ status: 'draft',
85
+ modelRef: {
86
+ modelId: input.modelId,
87
+ artifactKind: (model.artifactKind || 'onnx_one_step@1') as OptimizationProfile['modelRef']['artifactKind'],
88
+ modelInterface: (model.modelInterface || 'one_step') as OptimizationProfile['modelRef']['modelInterface'],
89
+ artifactHash: model.artifactHash || '',
90
+ stage: 'candidate',
91
+ },
92
+ ...(input.templateRef ? { problemTemplateRef: input.templateRef } : {}),
93
+ ...(input.solverRef ? { solverRef: input.solverRef } : {}),
94
+ ...(input.profileName != null ? { name: input.profileName } : {}),
95
+ ...(input.profileDescription != null ? { description: input.profileDescription } : {}),
96
+ }
97
+ // D21 分派矩阵:工件×模板×求解器不兼容在此显式拒绝(不产生草稿)
98
+ assertProfileSolverCompatible(nextProfile)
99
+ repo.insert(nextProfile, input.initiatorId)
100
+
101
+ const cardId = `${PROFILE_ADOPT_PREFIX}${input.profileId}@${version}`
102
+ const detail = [
103
+ `模型采纳提议:${input.profileId} v${published.version} → v${version}`,
104
+ `新模型:${input.modelId}(${nextProfile.modelRef.artifactKind},hash ${String(nextProfile.modelRef.artifactHash).slice(0, 12)}…)`,
105
+ nextProfile.problemTemplateRef !== prior.problemTemplateRef || nextProfile.solverRef !== prior.solverRef
106
+ ? `求解配置变更:模板 ${prior.problemTemplateRef}→${nextProfile.problemTemplateRef},求解器 ${prior.solverRef}→${nextProfile.solverRef}`
107
+ : `求解配置不变(模板 ${nextProfile.problemTemplateRef} / ${nextProfile.solverRef})`,
108
+ `理由:${input.reason}`,
109
+ `批准 = 冻结发布 v${version} 并把绑定在 v${published.version} 的 Agent 自动重绑(在飞求解 BINDING_STALE 收敛);拒绝 = 零写。`,
110
+ ].join('\n')
111
+
112
+ recordOps({
113
+ actor: input.initiatorId,
114
+ actorName: input.initiatorId,
115
+ actorKind: input.initiatorKind ?? 'agent',
116
+ action: 'optimizer.profile.adopt_propose',
117
+ kind: 'system',
118
+ targetKind: 'optimizer_profile',
119
+ targetId: `${input.profileId}@${version}`,
120
+ summary: `提议采纳模型 ${input.modelId} → ${input.profileId}@${version}(卡 ${cardId})`,
121
+ detail: { profileId: input.profileId, version, priorVersion: published.version, modelId: input.modelId, reason: input.reason },
122
+ })
123
+
124
+ const requestApproval = input.deps?.requestApproval
125
+ ?? ((agentId: string, nodeId: string, kind: 'dcw', detail_: string, opts?: { title?: string, timeoutMs?: number, payload?: unknown }) =>
126
+ getToolApprovals().request(agentId, nodeId, kind, detail_, opts))
127
+
128
+ const decision = await requestApproval(input.agentInstanceId, cardId, 'dcw', detail, {
129
+ title: `模型采纳:${input.profileId} → v${version}`,
130
+ timeoutMs: securityRecipeDispatchTimeoutMs(),
131
+ payload: { schemaVersion: 1, profileId: input.profileId, version, priorVersion: published.version, modelId: input.modelId },
132
+ })
133
+
134
+ if (!decision.approved) {
135
+ return { cardId, profileId: input.profileId, version, priorVersion: published.version, modelId: input.modelId, decision: { approved: false, comment: decision.comment, choice: decision.choice ?? null }, published: false, rebindCount: 0 }
136
+ }
137
+ // 批准路径的发布/重绑在单一咽喉(decideProfileAdoption)已完成;此处防御式复核
138
+ const publishedRow = repo.get(input.profileId, version)
139
+ const rebindCount = countBindingsOn(input.profileId, version)
140
+ return {
141
+ cardId,
142
+ profileId: input.profileId,
143
+ version,
144
+ priorVersion: published.version,
145
+ modelId: input.modelId,
146
+ decision: { approved: true, comment: decision.comment, choice: decision.choice ?? null },
147
+ published: publishedRow?.status === 'published',
148
+ rebindCount,
149
+ }
150
+ }
151
+
152
+ function countBindingsOn(profileId: string, version: number): number {
153
+ return getBindingRepo().listAll(500).filter(b => b.profileId === profileId && b.profileVersionNumber === version).length
154
+ }
155
+
156
+ export interface DecideAdoptionInput {
157
+ /** 审批单 id(ap-…;listPending 的主键) */
158
+ cardId: string
159
+ /** 卡的 nodeId(optimizer-profile:<id>@<v>);缺省时经审批单反查 */
160
+ nodeId?: string
161
+ approved: boolean
162
+ comment: string
163
+ actingUser: { id: string, name?: string }
164
+ via: 'hitl/respond' | 'decide-endpoint'
165
+ /** 依赖注入(单测 stub);缺省走真实 ToolApprovalService(卡必须在册) */
166
+ deps?: {
167
+ decideApproval?: (id: string, approved: boolean, comment: string, by: string, name: string) => void
168
+ }
169
+ }
170
+
171
+ /** 卡落定(真实面:审批必须在册;stub 面:直接回调)。失败不击穿咽喉主流程。 */
172
+ function settle(deps: DecideAdoptionInput['deps'], cardId: string, approved: boolean, comment: string, by: string, name: string): void {
173
+ try {
174
+ const decide = deps?.decideApproval ?? ((id: string, ok: boolean, msg: string, by2: string, name2: string) => getToolApprovals().decide(id, ok, msg, by2, name2))
175
+ decide(cardId, approved, comment, by, name)
176
+ }
177
+ catch (err) {
178
+ log.warn(`[profile-adopt] 卡落定失败(不影响裁决结果):${err instanceof Error ? err.message : String(err)}`)
179
+ }
180
+ }
181
+
182
+ export interface DecideAdoptionResult {
183
+ handled: boolean
184
+ approved: boolean
185
+ comment: string
186
+ code?: string
187
+ published?: { profileId: string, version: number, rebindCount: number }
188
+ }
189
+
190
+ /** 单一咽喉:optimizer-profile:* 卡的裁决 → 发布 + 重绑 + 审计(业务拒绝在咽喉内落定)。 */
191
+ export async function decideProfileAdoption(input: DecideAdoptionInput): Promise<DecideAdoptionResult> {
192
+ // nodeId 解析:分支显式传入优先;否则经审批单反查(卡 id ≠ nodeId,两个命名空间)
193
+ const nodeId = input.nodeId
194
+ ?? getToolApprovals().listPending().find(a => a.id === input.cardId)?.nodeId
195
+ ?? input.cardId
196
+ if (!isProfileAdoptCard(nodeId)) return { handled: false, approved: input.approved, comment: input.comment }
197
+ const parsed = nodeId.slice(PROFILE_ADOPT_PREFIX.length).split('@')
198
+ const profileId = parsed[0] ?? ''
199
+ const version = Number(parsed[1])
200
+ if (!profileId || !Number.isInteger(version)) {
201
+ throw new AppError(422, 'PROFILE_ADOPT_CARD_INVALID', `采纳卡 nodeId 形状非法:${nodeId}`)
202
+ }
203
+ const repo = getProfileRepo()
204
+ const row = repo.get(profileId, version)
205
+ if (!row) {
206
+ settle(input.deps, input.cardId, false, `Profile ${profileId}@${version} 已不存在;按拒收敛`, input.actingUser.id, input.actingUser.name ?? '')
207
+ return { handled: true, approved: false, comment: '目标 Profile 版本不存在', code: 'PROFILE_NOT_FOUND' }
208
+ }
209
+
210
+ if (!input.approved) {
211
+ // 拒绝:草稿保留(可修订后重新 propose,新卡重走),零写
212
+ settle(input.deps, input.cardId, false, input.comment || '采纳提议被拒绝', input.actingUser.id, input.actingUser.name ?? '')
213
+ recordOps({
214
+ actor: input.actingUser.id, actorName: input.actingUser.name ?? input.actingUser.id, actorKind: 'user',
215
+ action: 'optimizer.profile.adopt_reject', kind: 'system',
216
+ targetKind: 'optimizer_profile', targetId: `${profileId}@${version}`,
217
+ summary: `拒绝模型采纳 ${profileId}@${version}(草稿保留,零写)`,
218
+ detail: { profileId, version, comment: input.comment, via: input.via },
219
+ })
220
+ return { handled: true, approved: false, comment: input.comment || '采纳提议被拒绝', code: 'PROFILE_ADOPT_REJECTED' }
221
+ }
222
+
223
+ // 批准:发布冻结 + 自动重绑(旧 published 版本 → 新版本;revision+1 使在飞求解 BINDING_STALE 收敛)
224
+ const priorVersion = version - 1
225
+ try {
226
+ repo.publish(profileId, version)
227
+ const rebindCount = rebindBindings(profileId, priorVersion, version)
228
+ recordOps({
229
+ actor: input.actingUser.id, actorName: input.actingUser.name ?? input.actingUser.id, actorKind: 'user',
230
+ action: 'optimizer.profile.adopt', kind: 'system',
231
+ targetKind: 'optimizer_profile', targetId: `${profileId}@${version}`,
232
+ summary: `批准并发布 ${profileId}@${version}(重绑 ${rebindCount} 个绑定;来自采纳卡)`,
233
+ detail: { profileId, version, priorVersion, rebindCount, via: input.via, comment: input.comment },
234
+ })
235
+ settle(input.deps, input.cardId, true, input.comment || `已发布 v${version},重绑 ${rebindCount} 个绑定`, input.actingUser.id, input.actingUser.name ?? '')
236
+ return { handled: true, approved: true, comment: input.comment, published: { profileId, version, rebindCount } }
237
+ }
238
+ catch (err) {
239
+ const message = err instanceof Error ? err.message : String(err)
240
+ settle(input.deps, input.cardId, false, `发布失败,按拒收敛:${message}`, input.actingUser.id, input.actingUser.name ?? '')
241
+ recordOps({
242
+ actor: input.actingUser.id, actorName: input.actingUser.name ?? input.actingUser.id, actorKind: 'user',
243
+ action: 'optimizer.profile.adopt_reject', kind: 'system', level: 'error',
244
+ targetKind: 'optimizer_profile', targetId: `${profileId}@${version}`,
245
+ summary: `采纳发布失败按拒收敛 ${profileId}@${version}:${message}`,
246
+ detail: { profileId, version, error: message, via: input.via },
247
+ })
248
+ return { handled: true, approved: false, comment: `发布失败:${message}`, code: 'PROFILE_ADOPT_PUBLISH_FAILED' }
249
+ }
250
+ }
251
+
252
+ function rebindBindings(profileId: string, fromVersion: number, toVersion: number): number {
253
+ const repo = getBindingRepo()
254
+ let count = 0
255
+ for (const b of repo.listAll(500)) {
256
+ if (b.profileId !== profileId || b.profileVersionNumber !== fromVersion) continue
257
+ const moved = repo.rebindVersion(b.id, toVersion)
258
+ if (moved > 0) count += 1
259
+ }
260
+ return count
261
+ }
@@ -13,6 +13,7 @@ export interface ProfileRow {
13
13
  id: string
14
14
  version: number
15
15
  name: string
16
+ description: string
16
17
  modelRef: string
17
18
  modelArtifactHash: string
18
19
  modelArtifactKind: string
@@ -28,16 +29,19 @@ export interface ProfileRow {
28
29
  problemIrHash: string
29
30
  /** 发布不可变校验:内容 hash(不含 status/createdAt/problemIrHash) */
30
31
  contentHash: string
32
+ /** 本体引用冻结(JSON 数组;缺省 '[]' = 无本体约束域) */
33
+ ontologyRefsJson: string
31
34
  createdAt: string
32
35
  updatedAt: string
33
36
  }
34
37
 
35
- const COLS = `id, version, name, model_ref AS modelRef, model_artifact_hash AS modelArtifactHash,
38
+ const COLS = `id, version, name, description, model_ref AS modelRef, model_artifact_hash AS modelArtifactHash,
36
39
  model_artifact_kind AS modelArtifactKind, model_interface AS modelInterface,
37
40
  problem_template_ref AS problemTemplateRef, problem_config_json AS problemConfigJson,
38
41
  process_spec_ref AS processSpecRef,
39
42
  solver_ref AS solverRef, solver_version AS solverVersion, condition_ids_json AS conditionIdsJson,
40
43
  status, owner_user_id AS ownerUserId, problem_ir_hash AS problemIrHash, content_hash AS contentHash,
44
+ ontology_refs_json AS ontologyRefsJson,
41
45
  created_at AS createdAt, updated_at AS updatedAt`
42
46
 
43
47
  export function profileContentHash(profile: OptimizationProfile): string {
@@ -59,14 +63,15 @@ export function createProfileRepo(db: DatabaseSync) {
59
63
  return existing
60
64
  }
61
65
  db.prepare(`INSERT INTO optimizer_profiles
62
- (id, version, name, model_ref, model_artifact_hash, model_artifact_kind, model_interface,
66
+ (id, version, name, description, model_ref, model_artifact_hash, model_artifact_kind, model_interface,
63
67
  problem_template_ref, problem_config_json, process_spec_ref, solver_ref, solver_version, condition_ids_json,
64
- status, owner_user_id, problem_ir_hash, content_hash, created_at, updated_at)
65
- VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`)
66
- .run(profile.id, profile.version, profile.name ?? '', profile.modelRef.modelId, profile.modelRef.artifactHash,
68
+ status, owner_user_id, problem_ir_hash, content_hash, ontology_refs_json, created_at, updated_at)
69
+ VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`)
70
+ .run(profile.id, profile.version, profile.name ?? '', profile.description ?? '', profile.modelRef.modelId, profile.modelRef.artifactHash,
67
71
  profile.modelRef.artifactKind, profile.modelRef.modelInterface, profile.problemTemplateRef,
68
72
  JSON.stringify(profile.problemConfig ?? {}), profile.processSpecRef ?? '', profile.solverRef, profile.solverVersion,
69
- JSON.stringify(profile.conditionIds ?? []), profile.status, ownerUserId, profile.problemIrHash ?? '', contentHash, now, now)
73
+ JSON.stringify(profile.conditionIds ?? []), profile.status, ownerUserId, profile.problemIrHash ?? '', contentHash,
74
+ JSON.stringify(profile.ontologyRefs ?? []), now, now)
70
75
  return this.get(profile.id, profile.version)!
71
76
  },
72
77
 
@@ -92,6 +97,11 @@ export function createProfileRepo(db: DatabaseSync) {
92
97
  return (r.v ?? 0) + 1
93
98
  },
94
99
 
100
+ /** 最近已发布版本(采纳服务以它为基线;无则 undefined) */
101
+ latestPublished(id: string): ProfileRow | undefined {
102
+ return db.prepare(`SELECT ${COLS} FROM optimizer_profiles WHERE id = ? AND status = 'published' ORDER BY version DESC LIMIT 1`).get(id) as unknown as ProfileRow | undefined
103
+ },
104
+
95
105
  /** 发布:冻结 problemIrHash;published 行禁止原地修改(服务层拒绝 UPDATE)。 */
96
106
  publish(id: string, version: number, problemIrHash?: string): ProfileRow {
97
107
  const row = this.get(id, version)
@@ -137,6 +147,7 @@ export function parseProfileRow(row: ProfileRow): OptimizationProfile {
137
147
  id: row.id,
138
148
  version: row.version,
139
149
  name: row.name,
150
+ description: row.description || undefined,
140
151
  modelRef: {
141
152
  modelId: row.modelRef,
142
153
  artifactHash: row.modelArtifactHash,
@@ -153,6 +164,13 @@ export function parseProfileRow(row: ProfileRow): OptimizationProfile {
153
164
  status: row.status,
154
165
  ownerUserId: row.ownerUserId,
155
166
  problemIrHash: row.problemIrHash || undefined,
167
+ ontologyRefs: (() => {
168
+ try {
169
+ const parsed = JSON.parse(row.ontologyRefsJson || '[]') as OptimizationProfile['ontologyRefs']
170
+ return parsed && parsed.length > 0 ? parsed : undefined
171
+ }
172
+ catch { return undefined }
173
+ })(),
156
174
  createdAt: row.createdAt,
157
175
  }
158
176
  }
@@ -0,0 +1,124 @@
1
+ /**
2
+ * 单位 → 量纲归一(共享叶子模块)。
3
+ *
4
+ * 本体(Ontology)与 PhysicsSpec 共用同一张量纲表:先把单位别名归一为规范键,
5
+ * 再比对量纲是否相容。**本模块不做任何数值换算** —— 工程↔模型单位换算的
6
+ * 唯一边界是 shared/units.ts(D23),禁止在此按 1/0 兜底。
7
+ *
8
+ * 归一覆盖的真实缺口(2026-10-24):`℃`(U+2103)与 `°C` 此前都落不进
9
+ * UNIT_DIMENSIONS(旧实现只做 `'°'→'deg'`),而平台模板单位正是 `℃`
10
+ * (shared/daq-protocol.ts 温度变送器)。这里统一收敛。
11
+ */
12
+ import type { UnitTransform } from './units'
13
+
14
+ /** 无量纲单位(可直接与 scalar 相容) */
15
+ export const DIMENSIONLESS_UNITS: ReadonlySet<string> = new Set(['', '1', 'ratio', 'fraction', 'percent', '%'])
16
+
17
+ /** 单位别名 → 量纲。键为 normalizeUnit() 后的规范键。 */
18
+ export const UNIT_DIMENSIONS: Readonly<Record<string, string>> = {
19
+ s: 'time',
20
+ sec: 'time',
21
+ ms: 'time',
22
+ min: 'time',
23
+ h: 'time',
24
+ degc: 'temperature',
25
+ c: 'temperature',
26
+ k: 'temperature',
27
+ degf: 'temperature',
28
+ f: 'temperature',
29
+ pa: 'pressure',
30
+ kpa: 'pressure',
31
+ mpa: 'pressure',
32
+ bar: 'pressure',
33
+ psi: 'pressure',
34
+ g: 'mass',
35
+ kg: 'mass',
36
+ mg: 'mass',
37
+ m: 'length',
38
+ cm: 'length',
39
+ mm: 'length',
40
+ um: 'length',
41
+ km: 'length',
42
+ a: 'current',
43
+ v: 'voltage',
44
+ w: 'power',
45
+ j: 'energy',
46
+ n: 'force',
47
+ }
48
+
49
+ /**
50
+ * 归一味素单位。`℃`(U+2103)/`℃`变体与 `°C` 都收敛到 `degc`;`℉` → `degf`。
51
+ * 只保留小写与去空白,不做乘法/指数展开(复合单位以原串作 compound 量纲)。
52
+ */
53
+ export function normalizeUnit(unit: string | undefined | null): string {
54
+ return (unit ?? '')
55
+ .trim()
56
+ .toLowerCase()
57
+ .replaceAll('\u2103', 'degc')
58
+ .replaceAll('\u2109', 'degf')
59
+ .replaceAll('\u03bc', 'u')
60
+ .replaceAll('\u00b5', 'u')
61
+ .replace('°', 'deg')
62
+ .replace(/\s+/g, '')
63
+ }
64
+
65
+ /**
66
+ * 量纲判定:
67
+ * - 无量纲 → 'dimensionless'
68
+ * - 已知单位别名 → 规范量纲名(如 'temperature')
69
+ * - 含 `/` `*` `^` → 'compound:<归一串>'(仅与完全相同者相容)
70
+ * - 其他 → 'unit:<归一串>'(未知单位自成一体,不与任何其他未知单位误配)
71
+ */
72
+ export function dimensionOf(unit: string | undefined | null): string {
73
+ const key = normalizeUnit(unit)
74
+ if (DIMENSIONLESS_UNITS.has(key)) return 'dimensionless'
75
+ const known = UNIT_DIMENSIONS[key]
76
+ if (known) return known
77
+ // 后缀归一:um/mm/cm/km 之外的复合与指数形态原样保留
78
+ if (key.includes('/') || key.includes('*') || key.includes('^')) return `compound:${key}`
79
+ return key ? `unit:${key}` : 'scalar'
80
+ }
81
+
82
+ /** 两个量纲是否相容('*' 为显式通配;dimensionless 与 scalar 互认) */
83
+ export function dimensionsCompatible(a: string, b: string): boolean {
84
+ if (a === '*' || b === '*') return true
85
+ if (a === b) return true
86
+ return (a === 'dimensionless' && b === 'scalar') || (b === 'dimensionless' && a === 'scalar')
87
+ }
88
+
89
+ /** 两单位是否同为可判定量纲且相容(未知单位只与自身同串相容) */
90
+ export function unitsCompatible(a: string | undefined | null, b: string | undefined | null): boolean {
91
+ return dimensionsCompatible(dimensionOf(a), dimensionOf(b))
92
+ }
93
+
94
+ /**
95
+ * 判断两单位之间是否需要显式换算:
96
+ * - 归一后字面相同 → 无需换算
97
+ * - 同量纲但字面不同(如 degc/k)→ 需要显式 scale/offset(调用方必须给出)
98
+ * - 不同量纲 → 不可换算
99
+ */
100
+ export function unitRelation(a: string | undefined | null, b: string | undefined | null):
101
+ | { kind: 'same' }
102
+ | { kind: 'convertible' }
103
+ | { kind: 'incompatible', from: string, to: string } {
104
+ const ka = normalizeUnit(a)
105
+ const kb = normalizeUnit(b)
106
+ if (ka === kb) return { kind: 'same' }
107
+ if (dimensionsCompatible(dimensionOf(a), dimensionOf(b))) return { kind: 'convertible' }
108
+ return { kind: 'incompatible', from: dimensionOf(a), to: dimensionOf(b) }
109
+ }
110
+
111
+ /**
112
+ * 校验一个换算契约与单位声明的自洽性(只校验形状与方向,不求值换算)。
113
+ * 语义:`scale` 非零有限、`offset` 有限;同量纲可换算单位必须显式给契约。
114
+ */
115
+ export function assertUnitTransformShape(t: UnitTransform | undefined, what = '绑定'): { scale: number, offset: number } {
116
+ const scale = Number(t?.scale)
117
+ const offset = Number(t?.offset)
118
+ if (!Number.isFinite(scale) || scale === 0 || !Number.isFinite(offset)) {
119
+ const err = new Error(`${what} 的单位换算契约非法(scale=${String(t?.scale)},offset=${String(t?.offset)}):scale 必须为非零有限数,offset 必须为有限数;禁止兜底`)
120
+ Object.assign(err, { status: 422, code: 'UNIT_CONTRACT_INVALID' })
121
+ throw err
122
+ }
123
+ return { scale, offset }
124
+ }
@@ -1 +0,0 @@
1
- import{N as e,dt as t,mt as n,u as r}from"./CavpkQb0.js";import{Q as i,S as a,V as o,b as s,d as c,et as l,f as u,h as d,i as f,k as p,m,nt as h,p as g,y as _}from"./ByMj6e7s.js";import{d as v,p as y}from"./B8C-QJB5.js";import{n as b}from"./Cnrmlixo.js";import{Mt as x,Tt as S,d as C,n as w,t as T,u as E}from"./C2YYOgMe.js";import{c as D,d as O}from"./CNwx04ln.js";import{t as k}from"./KQZmHR_K.js";import{f as A,p as ee,s as j}from"./Bc_k6AVA.js";import{t as M}from"./aQ1B7BZa2.js";import{t as N}from"./vPcnBJsa2.js";import{t as P}from"./C9gErLQc2.js";import{t as F}from"./uu1wfdfR2.js";import{t as I}from"./CR612R752.js";import{t as te}from"./h5gsh8E92.js";import{t as L}from"./BDNMzG2s.js";import{t as ne}from"./CNs_Ozdc.js";import{i as re,n as R,t as z}from"./CLxmY3Rh.js";import{n as B,t as V}from"./D6ZcgHPz.js";import{t as H}from"./DSORcpTJ.js";import{t as U}from"./SoO2K-di.js";import{t as W}from"./BxHBIVAg.js";var G={icon:{tag:`svg`,attrs:{viewBox:`64 64 896 896`,focusable:`false`},children:[{tag:`path`,attrs:{d:`M955.7 856l-416-720c-6.2-10.7-16.9-16-27.7-16s-21.6 5.3-27.7 16l-416 720C56 877.4 71.4 904 96 904h832c24.6 0 40-26.6 27.7-48zM480 416c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v184c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V416zm32 352a48.01 48.01 0 010-96 48.01 48.01 0 010 96z`}}]},name:`warning`,theme:`filled`};function K(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:Object(arguments[t]),r=Object.keys(n);typeof Object.getOwnPropertySymbols==`function`&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){q(e,t,n[t])})}return e}function q(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var J=function(e,t){var n=K({},e,t.attrs);return s(O,K({},n,{icon:G}),null)};J.displayName=`WarningFilled`,J.inheritAttrs=!1;var Y=()=>s(`svg`,{width:`252`,height:`294`},[s(`defs`,null,[s(`path`,{d:`M0 .387h251.772v251.772H0z`},null)]),s(`g`,{fill:`none`,"fill-rule":`evenodd`},[s(`g`,{transform:`translate(0 .012)`},[s(`mask`,{fill:`#fff`},null),s(`path`,{d:`M0 127.32v-2.095C0 56.279 55.892.387 124.838.387h2.096c68.946 0 124.838 55.892 124.838 124.838v2.096c0 68.946-55.892 124.838-124.838 124.838h-2.096C55.892 252.16 0 196.267 0 127.321`,fill:`#E4EBF7`,mask:`url(#b)`},null)]),s(`path`,{d:`M39.755 130.84a8.276 8.276 0 1 1-16.468-1.66 8.276 8.276 0 0 1 16.468 1.66`,fill:`#FFF`},null),s(`path`,{d:`M36.975 134.297l10.482 5.943M48.373 146.508l-12.648 10.788`,stroke:`#FFF`,"stroke-width":`2`},null),s(`path`,{d:`M39.875 159.352a5.667 5.667 0 1 1-11.277-1.136 5.667 5.667 0 0 1 11.277 1.136M57.588 143.247a5.708 5.708 0 1 1-11.358-1.145 5.708 5.708 0 0 1 11.358 1.145M99.018 26.875l29.82-.014a4.587 4.587 0 1 0-.003-9.175l-29.82.013a4.587 4.587 0 1 0 .003 9.176M110.424 45.211l29.82-.013a4.588 4.588 0 0 0-.004-9.175l-29.82.013a4.587 4.587 0 1 0 .004 9.175`,fill:`#FFF`},null),s(`path`,{d:`M112.798 26.861v-.002l15.784-.006a4.588 4.588 0 1 0 .003 9.175l-15.783.007v-.002a4.586 4.586 0 0 0-.004-9.172M184.523 135.668c-.553 5.485-5.447 9.483-10.931 8.93-5.485-.553-9.483-5.448-8.93-10.932.552-5.485 5.447-9.483 10.932-8.93 5.485.553 9.483 5.447 8.93 10.932`,fill:`#FFF`},null),s(`path`,{d:`M179.26 141.75l12.64 7.167M193.006 156.477l-15.255 13.011`,stroke:`#FFF`,"stroke-width":`2`},null),s(`path`,{d:`M184.668 170.057a6.835 6.835 0 1 1-13.6-1.372 6.835 6.835 0 0 1 13.6 1.372M203.34 153.325a6.885 6.885 0 1 1-13.7-1.382 6.885 6.885 0 0 1 13.7 1.382`,fill:`#FFF`},null),s(`path`,{d:`M151.931 192.324a2.222 2.222 0 1 1-4.444 0 2.222 2.222 0 0 1 4.444 0zM225.27 116.056a2.222 2.222 0 1 1-4.445 0 2.222 2.222 0 0 1 4.444 0zM216.38 151.08a2.223 2.223 0 1 1-4.446-.001 2.223 2.223 0 0 1 4.446 0zM176.917 107.636a2.223 2.223 0 1 1-4.445 0 2.223 2.223 0 0 1 4.445 0zM195.291 92.165a2.223 2.223 0 1 1-4.445 0 2.223 2.223 0 0 1 4.445 0zM202.058 180.711a2.223 2.223 0 1 1-4.446 0 2.223 2.223 0 0 1 4.446 0z`,stroke:`#FFF`,"stroke-width":`2`},null),s(`path`,{stroke:`#FFF`,"stroke-width":`2`,d:`M214.404 153.302l-1.912 20.184-10.928 5.99M173.661 174.792l-6.356 9.814h-11.36l-4.508 6.484M174.941 125.168v-15.804M220.824 117.25l-12.84 7.901-15.31-7.902V94.39`},null),s(`path`,{d:`M166.588 65.936h-3.951a4.756 4.756 0 0 1-4.743-4.742 4.756 4.756 0 0 1 4.743-4.743h3.951a4.756 4.756 0 0 1 4.743 4.743 4.756 4.756 0 0 1-4.743 4.742`,fill:`#FFF`},null),s(`path`,{d:`M174.823 30.03c0-16.281 13.198-29.48 29.48-29.48 16.28 0 29.48 13.199 29.48 29.48 0 16.28-13.2 29.48-29.48 29.48-16.282 0-29.48-13.2-29.48-29.48`,fill:`#1890FF`},null),s(`path`,{d:`M205.952 38.387c.5.5.785 1.142.785 1.928s-.286 1.465-.785 1.964c-.572.5-1.214.75-2 .75-.785 0-1.429-.285-1.929-.785-.572-.5-.82-1.143-.82-1.929s.248-1.428.82-1.928c.5-.5 1.144-.75 1.93-.75.785 0 1.462.25 1.999.75m4.285-19.463c1.428 1.249 2.143 2.963 2.143 5.142 0 1.712-.427 3.13-1.219 4.25-.067.096-.137.18-.218.265-.416.429-1.41 1.346-2.956 2.699a5.07 5.07 0 0 0-1.428 1.75 5.207 5.207 0 0 0-.536 2.357v.5h-4.107v-.5c0-1.357.215-2.536.714-3.5.464-.964 1.857-2.464 4.178-4.536l.43-.5c.643-.785.964-1.643.964-2.535 0-1.18-.358-2.108-1-2.785-.678-.68-1.643-1.001-2.858-1.001-1.536 0-2.642.464-3.357 1.43-.37.5-.621 1.135-.76 1.904a1.999 1.999 0 0 1-1.971 1.63h-.004c-1.277 0-2.257-1.183-1.98-2.43.337-1.518 1.02-2.78 2.073-3.784 1.536-1.5 3.607-2.25 6.25-2.25 2.32 0 4.214.607 5.642 1.894`,fill:`#FFF`},null),s(`path`,{d:`M52.04 76.131s21.81 5.36 27.307 15.945c5.575 10.74-6.352 9.26-15.73 4.935-10.86-5.008-24.7-11.822-11.577-20.88`,fill:`#FFB594`},null),s(`path`,{d:`M90.483 67.504l-.449 2.893c-.753.49-4.748-2.663-4.748-2.663l-1.645.748-1.346-5.684s6.815-4.589 8.917-5.018c2.452-.501 9.884.94 10.7 2.278 0 0 1.32.486-2.227.69-3.548.203-5.043.447-6.79 3.132-1.747 2.686-2.412 3.624-2.412 3.624`,fill:`#FFC6A0`},null),s(`path`,{d:`M128.055 111.367c-2.627-7.724-6.15-13.18-8.917-15.478-3.5-2.906-9.34-2.225-11.366-4.187-1.27-1.231-3.215-1.197-3.215-1.197s-14.98-3.158-16.828-3.479c-2.37-.41-2.124-.714-6.054-1.405-1.57-1.907-2.917-1.122-2.917-1.122l-7.11-1.383c-.853-1.472-2.423-1.023-2.423-1.023l-2.468-.897c-1.645 9.976-7.74 13.796-7.74 13.796 1.795 1.122 15.703 8.3 15.703 8.3l5.107 37.11s-3.321 5.694 1.346 9.109c0 0 19.883-3.743 34.921-.329 0 0 3.047-2.546.972-8.806.523-3.01 1.394-8.263 1.736-11.622.385.772 2.019 1.918 3.14 3.477 0 0 9.407-7.365 11.052-14.012-.832-.723-1.598-1.585-2.267-2.453-.567-.736-.358-2.056-.765-2.717-.669-1.084-1.804-1.378-1.907-1.682`,fill:`#FFF`},null),s(`path`,{d:`M101.09 289.998s4.295 2.041 7.354 1.021c2.821-.94 4.53.668 7.08 1.178 2.55.51 6.874 1.1 11.686-1.26-.103-5.51-6.889-3.98-11.96-6.713-2.563-1.38-3.784-4.722-3.598-8.799h-9.402s-1.392 10.52-1.16 14.573`,fill:`#CBD1D1`},null),s(`path`,{d:`M101.067 289.826s2.428 1.271 6.759.653c3.058-.437 3.712.481 7.423 1.031 3.712.55 10.724-.069 11.823-.894.413 1.1-.343 2.063-.343 2.063s-1.512.603-4.812.824c-2.03.136-5.8.291-7.607-.503-1.787-1.375-5.247-1.903-5.728-.241-3.918.95-7.355-.286-7.355-.286l-.16-2.647z`,fill:`#2B0849`},null),s(`path`,{d:`M108.341 276.044h3.094s-.103 6.702 4.536 8.558c-4.64.618-8.558-2.303-7.63-8.558`,fill:`#A4AABA`},null),s(`path`,{d:`M57.542 272.401s-2.107 7.416-4.485 12.306c-1.798 3.695-4.225 7.492 5.465 7.492 6.648 0 8.953-.48 7.423-6.599-1.53-6.12.266-13.199.266-13.199h-8.669z`,fill:`#CBD1D1`},null),s(`path`,{d:`M51.476 289.793s2.097 1.169 6.633 1.169c6.083 0 8.249-1.65 8.249-1.65s.602 1.114-.619 2.165c-.993.855-3.597 1.591-7.39 1.546-4.145-.048-5.832-.566-6.736-1.168-.825-.55-.687-1.58-.137-2.062`,fill:`#2B0849`},null),s(`path`,{d:`M58.419 274.304s.033 1.519-.314 2.93c-.349 1.42-1.078 3.104-1.13 4.139-.058 1.151 4.537 1.58 5.155.034.62-1.547 1.294-6.427 1.913-7.252.619-.825-4.903-2.119-5.624.15`,fill:`#A4AABA`},null),s(`path`,{d:`M99.66 278.514l13.378.092s1.298-54.52 1.853-64.403c.554-9.882 3.776-43.364 1.002-63.128l-12.547-.644-22.849.78s-.434 3.966-1.195 9.976c-.063.496-.682.843-.749 1.365-.075.585.423 1.354.32 1.966-2.364 14.08-6.377 33.104-8.744 46.677-.116.666-1.234 1.009-1.458 2.691-.04.302.211 1.525.112 1.795-6.873 18.744-10.949 47.842-14.277 61.885l14.607-.014s2.197-8.57 4.03-16.97c2.811-12.886 23.111-85.01 23.111-85.01l3.016-.521 1.043 46.35s-.224 1.234.337 2.02c.56.785-.56 1.123-.392 2.244l.392 1.794s-.449 7.178-.898 11.89c-.448 4.71-.092 39.165-.092 39.165`,fill:`#7BB2F9`},null),s(`path`,{d:`M76.085 221.626c1.153.094 4.038-2.019 6.955-4.935M106.36 225.142s2.774-1.11 6.103-3.883`,stroke:`#648BD8`,"stroke-width":`1.051`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M107.275 222.1s2.773-1.11 6.102-3.884`,stroke:`#648BD8`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M74.74 224.767s2.622-.591 6.505-3.365M86.03 151.634c-.27 3.106.3 8.525-4.336 9.123M103.625 149.88s.11 14.012-1.293 15.065c-2.219 1.664-2.99 1.944-2.99 1.944M99.79 150.438s.035 12.88-1.196 24.377M93.673 175.911s7.212-1.664 9.431-1.664M74.31 205.861a212.013 212.013 0 0 1-.979 4.56s-1.458 1.832-1.009 3.776c.449 1.944-.947 2.045-4.985 15.355-1.696 5.59-4.49 18.591-6.348 27.597l-.231 1.12M75.689 197.807a320.934 320.934 0 0 1-.882 4.754M82.591 152.233L81.395 162.7s-1.097.15-.5 2.244c.113 1.346-2.674 15.775-5.18 30.43M56.12 274.418h13.31`,stroke:`#648BD8`,"stroke-width":`1.051`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M116.241 148.22s-17.047-3.104-35.893.2c.158 2.514-.003 4.15-.003 4.15s14.687-2.818 35.67-.312c.252-2.355.226-4.038.226-4.038`,fill:`#192064`},null),s(`path`,{d:`M106.322 151.165l.003-4.911a.81.81 0 0 0-.778-.815c-2.44-.091-5.066-.108-7.836-.014a.818.818 0 0 0-.789.815l-.003 4.906a.81.81 0 0 0 .831.813c2.385-.06 4.973-.064 7.73.017a.815.815 0 0 0 .842-.81`,fill:`#FFF`},null),s(`path`,{d:`M105.207 150.233l.002-3.076a.642.642 0 0 0-.619-.646 94.321 94.321 0 0 0-5.866-.01.65.65 0 0 0-.63.647v3.072a.64.64 0 0 0 .654.644 121.12 121.12 0 0 1 5.794.011c.362.01.665-.28.665-.642`,fill:`#192064`},null),s(`path`,{d:`M100.263 275.415h12.338M101.436 270.53c.006 3.387.042 5.79.111 6.506M101.451 264.548a915.75 915.75 0 0 0-.015 4.337M100.986 174.965l.898 44.642s.673 1.57-.225 2.692c-.897 1.122 2.468.673.898 2.243-1.57 1.57.897 1.122 0 3.365-.596 1.489-.994 21.1-1.096 35.146`,stroke:`#648BD8`,"stroke-width":`1.051`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M46.876 83.427s-.516 6.045 7.223 5.552c11.2-.712 9.218-9.345 31.54-21.655-.786-2.708-2.447-4.744-2.447-4.744s-11.068 3.11-22.584 8.046c-6.766 2.9-13.395 6.352-13.732 12.801M104.46 91.057l.941-5.372-8.884-11.43-5.037 5.372-1.74 7.834a.321.321 0 0 0 .108.32c.965.8 6.5 5.013 14.347 3.544a.332.332 0 0 0 .264-.268`,fill:`#FFC6A0`},null),s(`path`,{d:`M93.942 79.387s-4.533-2.853-2.432-6.855c1.623-3.09 4.513 1.133 4.513 1.133s.52-3.642 3.121-3.642c.52-1.04 1.561-4.162 1.561-4.162s11.445 2.601 13.526 3.121c0 5.203-2.304 19.424-7.84 19.861-8.892.703-12.449-9.456-12.449-9.456`,fill:`#FFC6A0`},null),s(`path`,{d:`M113.874 73.446c2.601-2.081 3.47-9.722 3.47-9.722s-2.479-.49-6.64-2.05c-4.683-2.081-12.798-4.747-17.48.976-9.668 3.223-2.05 19.823-2.05 19.823l2.713-3.021s-3.935-3.287-2.08-6.243c2.17-3.462 3.92 1.073 3.92 1.073s.637-2.387 3.581-3.342c.355-.71 1.036-2.674 1.432-3.85a1.073 1.073 0 0 1 1.263-.704c2.4.558 8.677 2.019 11.356 2.662.522.125.871.615.82 1.15l-.305 3.248z`,fill:`#520038`},null),s(`path`,{d:`M104.977 76.064c-.103.61-.582 1.038-1.07.956-.489-.083-.801-.644-.698-1.254.103-.61.582-1.038 1.07-.956.488.082.8.644.698 1.254M112.132 77.694c-.103.61-.582 1.038-1.07.956-.488-.083-.8-.644-.698-1.254.103-.61.582-1.038 1.07-.956.488.082.8.643.698 1.254`,fill:`#552950`},null),s(`path`,{stroke:`#DB836E`,"stroke-width":`1.118`,"stroke-linecap":`round`,"stroke-linejoin":`round`,d:`M110.13 74.84l-.896 1.61-.298 4.357h-2.228`},null),s(`path`,{d:`M110.846 74.481s1.79-.716 2.506.537`,stroke:`#5C2552`,"stroke-width":`1.118`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M92.386 74.282s.477-1.114 1.113-.716c.637.398 1.274 1.433.558 1.99-.717.556.159 1.67.159 1.67`,stroke:`#DB836E`,"stroke-width":`1.118`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M103.287 72.93s1.83 1.113 4.137.954`,stroke:`#5C2552`,"stroke-width":`1.118`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M103.685 81.762s2.227 1.193 4.376 1.193M104.64 84.308s.954.398 1.511.318M94.693 81.205s2.308 7.4 10.424 7.639`,stroke:`#DB836E`,"stroke-width":`1.118`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M81.45 89.384s.45 5.647-4.935 12.787M69 82.654s-.726 9.282-8.204 14.206`,stroke:`#E4EBF7`,"stroke-width":`1.101`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M129.405 122.865s-5.272 7.403-9.422 10.768`,stroke:`#E4EBF7`,"stroke-width":`1.051`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M119.306 107.329s.452 4.366-2.127 32.062`,stroke:`#E4EBF7`,"stroke-width":`1.101`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M150.028 151.232h-49.837a1.01 1.01 0 0 1-1.01-1.01v-31.688c0-.557.452-1.01 1.01-1.01h49.837c.558 0 1.01.453 1.01 1.01v31.688a1.01 1.01 0 0 1-1.01 1.01`,fill:`#F2D7AD`},null),s(`path`,{d:`M150.29 151.232h-19.863v-33.707h20.784v32.786a.92.92 0 0 1-.92.92`,fill:`#F4D19D`},null),s(`path`,{d:`M123.554 127.896H92.917a.518.518 0 0 1-.425-.816l6.38-9.113c.193-.277.51-.442.85-.442h31.092l-7.26 10.371z`,fill:`#F2D7AD`},null),s(`path`,{fill:`#CC9B6E`,d:`M123.689 128.447H99.25v-.519h24.169l7.183-10.26.424.298z`},null),s(`path`,{d:`M158.298 127.896h-18.669a2.073 2.073 0 0 1-1.659-.83l-7.156-9.541h19.965c.49 0 .95.23 1.244.622l6.69 8.92a.519.519 0 0 1-.415.83`,fill:`#F4D19D`},null),s(`path`,{fill:`#CC9B6E`,d:`M157.847 128.479h-19.384l-7.857-10.475.415-.31 7.7 10.266h19.126zM130.554 150.685l-.032-8.177.519-.002.032 8.177z`},null),s(`path`,{fill:`#CC9B6E`,d:`M130.511 139.783l-.08-21.414.519-.002.08 21.414zM111.876 140.932l-.498-.143 1.479-5.167.498.143zM108.437 141.06l-2.679-2.935 2.665-3.434.41.318-2.397 3.089 2.384 2.612zM116.607 141.06l-.383-.35 2.383-2.612-2.397-3.089.41-.318 2.665 3.434z`},null),s(`path`,{d:`M154.316 131.892l-3.114-1.96.038 3.514-1.043.092c-1.682.115-3.634.23-4.789.23-1.902 0-2.693 2.258 2.23 2.648l-2.645-.596s-2.168 1.317.504 2.3c0 0-1.58 1.217.561 2.58-.584 3.504 5.247 4.058 7.122 3.59 1.876-.47 4.233-2.359 4.487-5.16.28-3.085-.89-5.432-3.35-7.238`,fill:`#FFC6A0`},null),s(`path`,{d:`M153.686 133.577s-6.522.47-8.36.372c-1.836-.098-1.904 2.19 2.359 2.264 3.739.15 5.451-.044 5.451-.044`,stroke:`#DB836E`,"stroke-width":`1.051`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M145.16 135.877c-1.85 1.346.561 2.355.561 2.355s3.478.898 6.73.617`,stroke:`#DB836E`,"stroke-width":`1.051`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M151.89 141.71s-6.28.111-6.73-2.132c-.223-1.346.45-1.402.45-1.402M146.114 140.868s-1.103 3.16 5.44 3.533M151.202 129.932v3.477M52.838 89.286c3.533-.337 8.423-1.248 13.582-7.754`,stroke:`#DB836E`,"stroke-width":`1.051`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M168.567 248.318a6.647 6.647 0 0 1-6.647-6.647v-66.466a6.647 6.647 0 1 1 13.294 0v66.466a6.647 6.647 0 0 1-6.647 6.647`,fill:`#5BA02E`},null),s(`path`,{d:`M176.543 247.653a6.647 6.647 0 0 1-6.646-6.647v-33.232a6.647 6.647 0 1 1 13.293 0v33.232a6.647 6.647 0 0 1-6.647 6.647`,fill:`#92C110`},null),s(`path`,{d:`M186.443 293.613H158.92a3.187 3.187 0 0 1-3.187-3.187v-46.134a3.187 3.187 0 0 1 3.187-3.187h27.524a3.187 3.187 0 0 1 3.187 3.187v46.134a3.187 3.187 0 0 1-3.187 3.187`,fill:`#F2D7AD`},null),s(`path`,{d:`M88.979 89.48s7.776 5.384 16.6 2.842`,stroke:`#E4EBF7`,"stroke-width":`1.101`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null)])]),X=()=>s(`svg`,{width:`254`,height:`294`},[s(`defs`,null,[s(`path`,{d:`M0 .335h253.49v253.49H0z`},null),s(`path`,{d:`M0 293.665h253.49V.401H0z`},null)]),s(`g`,{fill:`none`,"fill-rule":`evenodd`},[s(`g`,{transform:`translate(0 .067)`},[s(`mask`,{fill:`#fff`},null),s(`path`,{d:`M0 128.134v-2.11C0 56.608 56.273.334 125.69.334h2.11c69.416 0 125.69 56.274 125.69 125.69v2.11c0 69.417-56.274 125.69-125.69 125.69h-2.11C56.273 253.824 0 197.551 0 128.134`,fill:`#E4EBF7`,mask:`url(#b)`},null)]),s(`path`,{d:`M39.989 132.108a8.332 8.332 0 1 1-16.581-1.671 8.332 8.332 0 0 1 16.58 1.671`,fill:`#FFF`},null),s(`path`,{d:`M37.19 135.59l10.553 5.983M48.665 147.884l-12.734 10.861`,stroke:`#FFF`,"stroke-width":`2`},null),s(`path`,{d:`M40.11 160.816a5.706 5.706 0 1 1-11.354-1.145 5.706 5.706 0 0 1 11.354 1.145M57.943 144.6a5.747 5.747 0 1 1-11.436-1.152 5.747 5.747 0 0 1 11.436 1.153M99.656 27.434l30.024-.013a4.619 4.619 0 1 0-.004-9.238l-30.024.013a4.62 4.62 0 0 0 .004 9.238M111.14 45.896l30.023-.013a4.62 4.62 0 1 0-.004-9.238l-30.024.013a4.619 4.619 0 1 0 .004 9.238`,fill:`#FFF`},null),s(`path`,{d:`M113.53 27.421v-.002l15.89-.007a4.619 4.619 0 1 0 .005 9.238l-15.892.007v-.002a4.618 4.618 0 0 0-.004-9.234M150.167 70.091h-3.979a4.789 4.789 0 0 1-4.774-4.775 4.788 4.788 0 0 1 4.774-4.774h3.979a4.789 4.789 0 0 1 4.775 4.774 4.789 4.789 0 0 1-4.775 4.775`,fill:`#FFF`},null),s(`path`,{d:`M171.687 30.234c0-16.392 13.289-29.68 29.681-29.68 16.392 0 29.68 13.288 29.68 29.68 0 16.393-13.288 29.681-29.68 29.681s-29.68-13.288-29.68-29.68`,fill:`#FF603B`},null),s(`path`,{d:`M203.557 19.435l-.676 15.035a1.514 1.514 0 0 1-3.026 0l-.675-15.035a2.19 2.19 0 1 1 4.377 0m-.264 19.378c.513.477.77 1.1.77 1.87s-.257 1.393-.77 1.907c-.55.476-1.21.733-1.943.733a2.545 2.545 0 0 1-1.87-.77c-.55-.514-.806-1.136-.806-1.87 0-.77.256-1.393.806-1.87.513-.513 1.137-.733 1.87-.733.77 0 1.43.22 1.943.733`,fill:`#FFF`},null),s(`path`,{d:`M119.3 133.275c4.426-.598 3.612-1.204 4.079-4.778.675-5.18-3.108-16.935-8.262-25.118-1.088-10.72-12.598-11.24-12.598-11.24s4.312 4.895 4.196 16.199c1.398 5.243.804 14.45.804 14.45s5.255 11.369 11.78 10.487`,fill:`#FFB594`},null),s(`path`,{d:`M100.944 91.61s1.463-.583 3.211.582c8.08 1.398 10.368 6.706 11.3 11.368 1.864 1.282 1.864 2.33 1.864 3.496.365.777 1.515 3.03 1.515 3.03s-7.225 1.748-10.954 6.758c-1.399-6.41-6.936-25.235-6.936-25.235`,fill:`#FFF`},null),s(`path`,{d:`M94.008 90.5l1.019-5.815-9.23-11.874-5.233 5.581-2.593 9.863s8.39 5.128 16.037 2.246`,fill:`#FFB594`},null),s(`path`,{d:`M82.931 78.216s-4.557-2.868-2.445-6.892c1.632-3.107 4.537 1.139 4.537 1.139s.524-3.662 3.139-3.662c.523-1.046 1.569-4.184 1.569-4.184s11.507 2.615 13.6 3.138c-.001 5.23-2.317 19.529-7.884 19.969-8.94.706-12.516-9.508-12.516-9.508`,fill:`#FFC6A0`},null),s(`path`,{d:`M102.971 72.243c2.616-2.093 3.489-9.775 3.489-9.775s-2.492-.492-6.676-2.062c-4.708-2.092-12.867-4.771-17.575.982-9.54 4.41-2.062 19.93-2.062 19.93l2.729-3.037s-3.956-3.304-2.092-6.277c2.183-3.48 3.943 1.08 3.943 1.08s.64-2.4 3.6-3.36c.356-.714 1.04-2.69 1.44-3.872a1.08 1.08 0 0 1 1.27-.707c2.41.56 8.723 2.03 11.417 2.676.524.126.876.619.825 1.156l-.308 3.266z`,fill:`#520038`},null),s(`path`,{d:`M101.22 76.514c-.104.613-.585 1.044-1.076.96-.49-.082-.805-.646-.702-1.26.104-.613.585-1.044 1.076-.961.491.083.805.647.702 1.26M94.26 75.074c-.104.613-.585 1.044-1.076.96-.49-.082-.805-.646-.702-1.26.104-.613.585-1.044 1.076-.96.491.082.805.646.702 1.26`,fill:`#552950`},null),s(`path`,{stroke:`#DB836E`,"stroke-width":`1.063`,"stroke-linecap":`round`,"stroke-linejoin":`round`,d:`M99.206 73.644l-.9 1.62-.3 4.38h-2.24`},null),s(`path`,{d:`M99.926 73.284s1.8-.72 2.52.54`,stroke:`#5C2552`,"stroke-width":`1.117`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M81.367 73.084s.48-1.12 1.12-.72c.64.4 1.28 1.44.56 2s.16 1.68.16 1.68`,stroke:`#DB836E`,"stroke-width":`1.117`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M92.326 71.724s1.84 1.12 4.16.96`,stroke:`#5C2552`,"stroke-width":`1.117`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M92.726 80.604s2.24 1.2 4.4 1.2M93.686 83.164s.96.4 1.52.32M83.687 80.044s1.786 6.547 9.262 7.954`,stroke:`#DB836E`,"stroke-width":`1.063`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M95.548 91.663s-1.068 2.821-8.298 2.105c-7.23-.717-10.29-5.044-10.29-5.044`,stroke:`#E4EBF7`,"stroke-width":`1.136`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M78.126 87.478s6.526 4.972 16.47 2.486c0 0 9.577 1.02 11.536 5.322 5.36 11.77.543 36.835 0 39.962 3.496 4.055-.466 8.483-.466 8.483-15.624-3.548-35.81-.6-35.81-.6-4.849-3.546-1.223-9.044-1.223-9.044L62.38 110.32c-2.485-15.227.833-19.803 3.549-20.743 3.03-1.049 8.04-1.282 8.04-1.282.496-.058 1.08-.076 1.37-.233 2.36-1.282 2.787-.583 2.787-.583`,fill:`#FFF`},null),s(`path`,{d:`M65.828 89.81s-6.875.465-7.59 8.156c-.466 8.857 3.03 10.954 3.03 10.954s6.075 22.102 16.796 22.957c8.39-2.176 4.758-6.702 4.661-11.42-.233-11.304-7.108-16.897-7.108-16.897s-4.212-13.75-9.789-13.75`,fill:`#FFC6A0`},null),s(`path`,{d:`M71.716 124.225s.855 11.264 9.828 6.486c4.765-2.536 7.581-13.828 9.789-22.568 1.456-5.768 2.58-12.197 2.58-12.197l-4.973-1.709s-2.408 5.516-7.769 12.275c-4.335 5.467-9.144 11.11-9.455 17.713`,fill:`#FFC6A0`},null),s(`path`,{d:`M108.463 105.191s1.747 2.724-2.331 30.535c2.376 2.216 1.053 6.012-.233 7.51`,stroke:`#E4EBF7`,"stroke-width":`1.085`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M123.262 131.527s-.427 2.732-11.77 1.981c-15.187-1.006-25.326-3.25-25.326-3.25l.933-5.8s.723.215 9.71-.068c11.887-.373 18.714-6.07 24.964-1.022 4.039 3.263 1.489 8.16 1.489 8.16`,fill:`#FFC6A0`},null),s(`path`,{d:`M70.24 90.974s-5.593-4.739-11.054 2.68c-3.318 7.223.517 15.284 2.664 19.578-.31 3.729 2.33 4.311 2.33 4.311s.108.895 1.516 2.68c4.078-7.03 6.72-9.166 13.711-12.546-.328-.656-1.877-3.265-1.825-3.767.175-1.69-1.282-2.623-1.282-2.623s-.286-.156-1.165-2.738c-.788-2.313-2.036-5.177-4.895-7.575`,fill:`#FFF`},null),s(`path`,{d:`M90.232 288.027s4.855 2.308 8.313 1.155c3.188-1.063 5.12.755 8.002 1.331 2.881.577 7.769 1.243 13.207-1.424-.117-6.228-7.786-4.499-13.518-7.588-2.895-1.56-4.276-5.336-4.066-9.944H91.544s-1.573 11.89-1.312 16.47`,fill:`#CBD1D1`},null),s(`path`,{d:`M90.207 287.833s2.745 1.437 7.639.738c3.456-.494 3.223.66 7.418 1.282 4.195.621 13.092-.194 14.334-1.126.466 1.242-.388 2.33-.388 2.33s-1.709.682-5.438.932c-2.295.154-8.098.276-10.14-.621-2.02-1.554-4.894-1.515-6.06-.234-4.427 1.075-7.184-.31-7.184-.31l-.181-2.991z`,fill:`#2B0849`},null),s(`path`,{d:`M98.429 272.257h3.496s-.117 7.574 5.127 9.671c-5.244.7-9.672-2.602-8.623-9.671`,fill:`#A4AABA`},null),s(`path`,{d:`M44.425 272.046s-2.208 7.774-4.702 12.899c-1.884 3.874-4.428 7.854 5.729 7.854 6.97 0 9.385-.503 7.782-6.917-1.604-6.415.279-13.836.279-13.836h-9.088z`,fill:`#CBD1D1`},null),s(`path`,{d:`M38.066 290.277s2.198 1.225 6.954 1.225c6.376 0 8.646-1.73 8.646-1.73s.63 1.168-.649 2.27c-1.04.897-3.77 1.668-7.745 1.621-4.347-.05-6.115-.593-7.062-1.224-.864-.577-.72-1.657-.144-2.162`,fill:`#2B0849`},null),s(`path`,{d:`M45.344 274.041s.035 1.592-.329 3.07c-.365 1.49-1.13 3.255-1.184 4.34-.061 1.206 4.755 1.657 5.403.036.65-1.622 1.357-6.737 2.006-7.602.648-.865-5.14-2.222-5.896.156`,fill:`#A4AABA`},null),s(`path`,{d:`M89.476 277.57l13.899.095s1.349-56.643 1.925-66.909c.576-10.267 3.923-45.052 1.042-65.585l-13.037-.669-23.737.81s-.452 4.12-1.243 10.365c-.065.515-.708.874-.777 1.417-.078.608.439 1.407.332 2.044-2.455 14.627-5.797 32.736-8.256 46.837-.121.693-1.282 1.048-1.515 2.796-.042.314.22 1.584.116 1.865-7.14 19.473-12.202 52.601-15.66 67.19l15.176-.015s2.282-10.145 4.185-18.871c2.922-13.389 24.012-88.32 24.012-88.32l3.133-.954-.158 48.568s-.233 1.282.35 2.098c.583.815-.581 1.167-.408 2.331l.408 1.864s-.466 7.458-.932 12.352c-.467 4.895 1.145 40.69 1.145 40.69`,fill:`#7BB2F9`},null),s(`path`,{d:`M64.57 218.881c1.197.099 4.195-2.097 7.225-5.127M96.024 222.534s2.881-1.152 6.34-4.034`,stroke:`#648BD8`,"stroke-width":`1.085`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M96.973 219.373s2.882-1.153 6.34-4.034`,stroke:`#648BD8`,"stroke-width":`1.032`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M63.172 222.144s2.724-.614 6.759-3.496M74.903 146.166c-.281 3.226.31 8.856-4.506 9.478M93.182 144.344s.115 14.557-1.344 15.65c-2.305 1.73-3.107 2.02-3.107 2.02M89.197 144.923s.269 13.144-1.01 25.088M83.525 170.71s6.81-1.051 9.116-1.051M46.026 270.045l-.892 4.538M46.937 263.289l-.815 4.157M62.725 202.503c-.33 1.618-.102 1.904-.449 3.438 0 0-2.756 1.903-2.29 3.923.466 2.02-.31 3.424-4.505 17.252-1.762 5.807-4.233 18.922-6.165 28.278-.03.144-.521 2.646-1.14 5.8M64.158 194.136c-.295 1.658-.6 3.31-.917 4.938M71.33 146.787l-1.244 10.877s-1.14.155-.519 2.33c.117 1.399-2.778 16.39-5.382 31.615M44.242 273.727H58.07`,stroke:`#648BD8`,"stroke-width":`1.085`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M106.18 142.117c-3.028-.489-18.825-2.744-36.219.2a.625.625 0 0 0-.518.644c.063 1.307.044 2.343.015 2.995a.617.617 0 0 0 .716.636c3.303-.534 17.037-2.412 35.664-.266.347.04.66-.214.692-.56.124-1.347.16-2.425.17-3.029a.616.616 0 0 0-.52-.62`,fill:`#192064`},null),s(`path`,{d:`M96.398 145.264l.003-5.102a.843.843 0 0 0-.809-.847 114.104 114.104 0 0 0-8.141-.014.85.85 0 0 0-.82.847l-.003 5.097c0 .476.388.857.864.845 2.478-.064 5.166-.067 8.03.017a.848.848 0 0 0 .876-.843`,fill:`#FFF`},null),s(`path`,{d:`M95.239 144.296l.002-3.195a.667.667 0 0 0-.643-.672c-1.9-.061-3.941-.073-6.094-.01a.675.675 0 0 0-.654.672l-.002 3.192c0 .376.305.677.68.669 1.859-.042 3.874-.043 6.02.012.376.01.69-.291.691-.668`,fill:`#192064`},null),s(`path`,{d:`M90.102 273.522h12.819M91.216 269.761c.006 3.519-.072 5.55 0 6.292M90.923 263.474c-.009 1.599-.016 2.558-.016 4.505M90.44 170.404l.932 46.38s.7 1.631-.233 2.796c-.932 1.166 2.564.7.932 2.33-1.63 1.633.933 1.166 0 3.497-.618 1.546-1.031 21.921-1.138 36.513`,stroke:`#648BD8`,"stroke-width":`1.085`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M73.736 98.665l2.214 4.312s2.098.816 1.865 2.68l.816 2.214M64.297 116.611c.233-.932 2.176-7.147 12.585-10.488M77.598 90.042s7.691 6.137 16.547 2.72`,stroke:`#E4EBF7`,"stroke-width":`1.085`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M91.974 86.954s5.476-.816 7.574-4.545c1.297-.345.72 2.212-.33 3.671-.7.971-1.01 1.554-1.01 1.554s.194.31.155.816c-.053.697-.175.653-.272 1.048-.081.335.108.657 0 1.049-.046.17-.198.5-.382.878-.12.249-.072.687-.2.948-.231.469-1.562 1.87-2.622 2.855-3.826 3.554-5.018 1.644-6.001-.408-.894-1.865-.661-5.127-.874-6.875-.35-2.914-2.622-3.03-1.923-4.429.343-.685 2.87.69 3.263 1.748.757 2.04 2.952 1.807 2.622 1.69`,fill:`#FFC6A0`},null),s(`path`,{d:`M99.8 82.429c-.465.077-.35.272-.97 1.243-.622.971-4.817 2.932-6.39 3.224-2.589.48-2.278-1.56-4.254-2.855-1.69-1.107-3.562-.638-1.398 1.398.99.932.932 1.107 1.398 3.205.335 1.506-.64 3.67.7 5.593`,stroke:`#DB836E`,"stroke-width":`.774`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M79.543 108.673c-2.1 2.926-4.266 6.175-5.557 8.762`,stroke:`#E59788`,"stroke-width":`.774`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M87.72 124.768s-2.098-1.942-5.127-2.719c-3.03-.777-3.574-.155-5.516.078-1.942.233-3.885-.932-3.652.7.233 1.63 5.05 1.01 5.206 2.097.155 1.087-6.37 2.796-8.313 2.175-.777.777.466 1.864 2.02 2.175.233 1.554 2.253 1.554 2.253 1.554s.699 1.01 2.641 1.088c2.486 1.32 8.934-.7 10.954-1.554 2.02-.855-.466-5.594-.466-5.594`,fill:`#FFC6A0`},null),s(`path`,{d:`M73.425 122.826s.66 1.127 3.167 1.418c2.315.27 2.563.583 2.563.583s-2.545 2.894-9.07 2.272M72.416 129.274s3.826.097 4.933-.718M74.98 130.75s1.961.136 3.36-.505M77.232 131.916s1.748.019 2.914-.505M73.328 122.321s-.595-1.032 1.262-.427c1.671.544 2.833.055 5.128.155 1.389.061 3.067-.297 3.982.15 1.606.784 3.632 2.181 3.632 2.181s10.526 1.204 19.033-1.127M78.864 108.104s-8.39 2.758-13.168 12.12`,stroke:`#E59788`,"stroke-width":`.774`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M109.278 112.533s3.38-3.613 7.575-4.662`,stroke:`#E4EBF7`,"stroke-width":`1.085`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M107.375 123.006s9.697-2.745 11.445-.88`,stroke:`#E59788`,"stroke-width":`.774`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M194.605 83.656l3.971-3.886M187.166 90.933l3.736-3.655M191.752 84.207l-4.462-4.56M198.453 91.057l-4.133-4.225M129.256 163.074l3.718-3.718M122.291 170.039l3.498-3.498M126.561 163.626l-4.27-4.27M132.975 170.039l-3.955-3.955`,stroke:`#BFCDDD`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M190.156 211.779h-1.604a4.023 4.023 0 0 1-4.011-4.011V175.68a4.023 4.023 0 0 1 4.01-4.01h1.605a4.023 4.023 0 0 1 4.011 4.01v32.088a4.023 4.023 0 0 1-4.01 4.01`,fill:`#A3B4C6`},null),s(`path`,{d:`M237.824 212.977a4.813 4.813 0 0 1-4.813 4.813h-86.636a4.813 4.813 0 0 1 0-9.626h86.636a4.813 4.813 0 0 1 4.813 4.813`,fill:`#A3B4C6`},null),s(`mask`,{fill:`#fff`},null),s(`path`,{fill:`#A3B4C6`,mask:`url(#d)`,d:`M154.098 190.096h70.513v-84.617h-70.513z`},null),s(`path`,{d:`M224.928 190.096H153.78a3.219 3.219 0 0 1-3.208-3.209V167.92a3.219 3.219 0 0 1 3.208-3.21h71.148a3.219 3.219 0 0 1 3.209 3.21v18.967a3.219 3.219 0 0 1-3.21 3.209M224.928 130.832H153.78a3.218 3.218 0 0 1-3.208-3.208v-18.968a3.219 3.219 0 0 1 3.208-3.209h71.148a3.219 3.219 0 0 1 3.209 3.21v18.967a3.218 3.218 0 0 1-3.21 3.208`,fill:`#BFCDDD`,mask:`url(#d)`},null),s(`path`,{d:`M159.563 120.546a2.407 2.407 0 1 1 0-4.813 2.407 2.407 0 0 1 0 4.813M166.98 120.546a2.407 2.407 0 1 1 0-4.813 2.407 2.407 0 0 1 0 4.813M174.397 120.546a2.407 2.407 0 1 1 0-4.813 2.407 2.407 0 0 1 0 4.813M222.539 120.546h-22.461a.802.802 0 0 1-.802-.802v-3.208c0-.443.359-.803.802-.803h22.46c.444 0 .803.36.803.803v3.208c0 .443-.36.802-.802.802`,fill:`#FFF`,mask:`url(#d)`},null),s(`path`,{d:`M224.928 160.464H153.78a3.218 3.218 0 0 1-3.208-3.209v-18.967a3.219 3.219 0 0 1 3.208-3.209h71.148a3.219 3.219 0 0 1 3.209 3.209v18.967a3.218 3.218 0 0 1-3.21 3.209`,fill:`#BFCDDD`,mask:`url(#d)`},null),s(`path`,{d:`M173.455 130.832h49.301M164.984 130.832h6.089M155.952 130.832h6.75M173.837 160.613h49.3M165.365 160.613h6.089M155.57 160.613h6.751`,stroke:`#7C90A5`,"stroke-width":`1.124`,"stroke-linecap":`round`,"stroke-linejoin":`round`,mask:`url(#d)`},null),s(`path`,{d:`M159.563 151.038a2.407 2.407 0 1 1 0-4.814 2.407 2.407 0 0 1 0 4.814M166.98 151.038a2.407 2.407 0 1 1 0-4.814 2.407 2.407 0 0 1 0 4.814M174.397 151.038a2.407 2.407 0 1 1 .001-4.814 2.407 2.407 0 0 1 0 4.814M222.539 151.038h-22.461a.802.802 0 0 1-.802-.802v-3.209c0-.443.359-.802.802-.802h22.46c.444 0 .803.36.803.802v3.209c0 .443-.36.802-.802.802M159.563 179.987a2.407 2.407 0 1 1 0-4.813 2.407 2.407 0 0 1 0 4.813M166.98 179.987a2.407 2.407 0 1 1 0-4.813 2.407 2.407 0 0 1 0 4.813M174.397 179.987a2.407 2.407 0 1 1 0-4.813 2.407 2.407 0 0 1 0 4.813M222.539 179.987h-22.461a.802.802 0 0 1-.802-.802v-3.209c0-.443.359-.802.802-.802h22.46c.444 0 .803.36.803.802v3.209c0 .443-.36.802-.802.802`,fill:`#FFF`,mask:`url(#d)`},null),s(`path`,{d:`M203.04 221.108h-27.372a2.413 2.413 0 0 1-2.406-2.407v-11.448a2.414 2.414 0 0 1 2.406-2.407h27.372a2.414 2.414 0 0 1 2.407 2.407V218.7a2.413 2.413 0 0 1-2.407 2.407`,fill:`#BFCDDD`,mask:`url(#d)`},null),s(`path`,{d:`M177.259 207.217v11.52M201.05 207.217v11.52`,stroke:`#A3B4C6`,"stroke-width":`1.124`,"stroke-linecap":`round`,"stroke-linejoin":`round`,mask:`url(#d)`},null),s(`path`,{d:`M162.873 267.894a9.422 9.422 0 0 1-9.422-9.422v-14.82a9.423 9.423 0 0 1 18.845 0v14.82a9.423 9.423 0 0 1-9.423 9.422`,fill:`#5BA02E`,mask:`url(#d)`},null),s(`path`,{d:`M171.22 267.83a9.422 9.422 0 0 1-9.422-9.423v-3.438a9.423 9.423 0 0 1 18.845 0v3.438a9.423 9.423 0 0 1-9.422 9.423`,fill:`#92C110`,mask:`url(#d)`},null),s(`path`,{d:`M181.31 293.666h-27.712a3.209 3.209 0 0 1-3.209-3.21V269.79a3.209 3.209 0 0 1 3.209-3.21h27.711a3.209 3.209 0 0 1 3.209 3.21v20.668a3.209 3.209 0 0 1-3.209 3.209`,fill:`#F2D7AD`,mask:`url(#d)`},null)])]),ie=()=>s(`svg`,{width:`251`,height:`294`},[s(`g`,{fill:`none`,"fill-rule":`evenodd`},[s(`path`,{d:`M0 129.023v-2.084C0 58.364 55.591 2.774 124.165 2.774h2.085c68.574 0 124.165 55.59 124.165 124.165v2.084c0 68.575-55.59 124.166-124.165 124.166h-2.085C55.591 253.189 0 197.598 0 129.023`,fill:`#E4EBF7`},null),s(`path`,{d:`M41.417 132.92a8.231 8.231 0 1 1-16.38-1.65 8.231 8.231 0 0 1 16.38 1.65`,fill:`#FFF`},null),s(`path`,{d:`M38.652 136.36l10.425 5.91M49.989 148.505l-12.58 10.73`,stroke:`#FFF`,"stroke-width":`2`},null),s(`path`,{d:`M41.536 161.28a5.636 5.636 0 1 1-11.216-1.13 5.636 5.636 0 0 1 11.216 1.13M59.154 145.261a5.677 5.677 0 1 1-11.297-1.138 5.677 5.677 0 0 1 11.297 1.138M100.36 29.516l29.66-.013a4.562 4.562 0 1 0-.004-9.126l-29.66.013a4.563 4.563 0 0 0 .005 9.126M111.705 47.754l29.659-.013a4.563 4.563 0 1 0-.004-9.126l-29.66.013a4.563 4.563 0 1 0 .005 9.126`,fill:`#FFF`},null),s(`path`,{d:`M114.066 29.503V29.5l15.698-.007a4.563 4.563 0 1 0 .004 9.126l-15.698.007v-.002a4.562 4.562 0 0 0-.004-9.122M185.405 137.723c-.55 5.455-5.418 9.432-10.873 8.882-5.456-.55-9.432-5.418-8.882-10.873.55-5.455 5.418-9.432 10.873-8.882 5.455.55 9.432 5.418 8.882 10.873`,fill:`#FFF`},null),s(`path`,{d:`M180.17 143.772l12.572 7.129M193.841 158.42L178.67 171.36`,stroke:`#FFF`,"stroke-width":`2`},null),s(`path`,{d:`M185.55 171.926a6.798 6.798 0 1 1-13.528-1.363 6.798 6.798 0 0 1 13.527 1.363M204.12 155.285a6.848 6.848 0 1 1-13.627-1.375 6.848 6.848 0 0 1 13.626 1.375`,fill:`#FFF`},null),s(`path`,{d:`M152.988 194.074a2.21 2.21 0 1 1-4.42 0 2.21 2.21 0 0 1 4.42 0zM225.931 118.217a2.21 2.21 0 1 1-4.421 0 2.21 2.21 0 0 1 4.421 0zM217.09 153.051a2.21 2.21 0 1 1-4.421 0 2.21 2.21 0 0 1 4.42 0zM177.84 109.842a2.21 2.21 0 1 1-4.422 0 2.21 2.21 0 0 1 4.421 0zM196.114 94.454a2.21 2.21 0 1 1-4.421 0 2.21 2.21 0 0 1 4.421 0zM202.844 182.523a2.21 2.21 0 1 1-4.42 0 2.21 2.21 0 0 1 4.42 0z`,stroke:`#FFF`,"stroke-width":`2`},null),s(`path`,{stroke:`#FFF`,"stroke-width":`2`,d:`M215.125 155.262l-1.902 20.075-10.87 5.958M174.601 176.636l-6.322 9.761H156.98l-4.484 6.449M175.874 127.28V111.56M221.51 119.404l-12.77 7.859-15.228-7.86V96.668`},null),s(`path`,{d:`M180.68 29.32C180.68 13.128 193.806 0 210 0c16.193 0 29.32 13.127 29.32 29.32 0 16.194-13.127 29.322-29.32 29.322-16.193 0-29.32-13.128-29.32-29.321`,fill:`#A26EF4`},null),s(`path`,{d:`M221.45 41.706l-21.563-.125a1.744 1.744 0 0 1-1.734-1.754l.071-12.23a1.744 1.744 0 0 1 1.754-1.734l21.562.125c.964.006 1.74.791 1.735 1.755l-.071 12.229a1.744 1.744 0 0 1-1.754 1.734`,fill:`#FFF`},null),s(`path`,{d:`M215.106 29.192c-.015 2.577-2.049 4.654-4.543 4.64-2.494-.014-4.504-2.115-4.489-4.693l.04-6.925c.016-2.577 2.05-4.654 4.543-4.64 2.494.015 4.504 2.116 4.49 4.693l-.04 6.925zm-4.53-14.074a6.877 6.877 0 0 0-6.916 6.837l-.043 7.368a6.877 6.877 0 0 0 13.754.08l.042-7.368a6.878 6.878 0 0 0-6.837-6.917zM167.566 68.367h-3.93a4.73 4.73 0 0 1-4.717-4.717 4.73 4.73 0 0 1 4.717-4.717h3.93a4.73 4.73 0 0 1 4.717 4.717 4.73 4.73 0 0 1-4.717 4.717`,fill:`#FFF`},null),s(`path`,{d:`M168.214 248.838a6.611 6.611 0 0 1-6.61-6.611v-66.108a6.611 6.611 0 0 1 13.221 0v66.108a6.611 6.611 0 0 1-6.61 6.61`,fill:`#5BA02E`},null),s(`path`,{d:`M176.147 248.176a6.611 6.611 0 0 1-6.61-6.61v-33.054a6.611 6.611 0 1 1 13.221 0v33.053a6.611 6.611 0 0 1-6.61 6.611`,fill:`#92C110`},null),s(`path`,{d:`M185.994 293.89h-27.376a3.17 3.17 0 0 1-3.17-3.17v-45.887a3.17 3.17 0 0 1 3.17-3.17h27.376a3.17 3.17 0 0 1 3.17 3.17v45.886a3.17 3.17 0 0 1-3.17 3.17`,fill:`#F2D7AD`},null),s(`path`,{d:`M81.972 147.673s6.377-.927 17.566-1.28c11.729-.371 17.57 1.086 17.57 1.086s3.697-3.855.968-8.424c1.278-12.077 5.982-32.827.335-48.273-1.116-1.339-3.743-1.512-7.536-.62-1.337.315-7.147-.149-7.983-.1l-15.311-.347s-3.487-.17-8.035-.508c-1.512-.113-4.227-1.683-5.458-.338-.406.443-2.425 5.669-1.97 16.077l8.635 35.642s-3.141 3.61 1.219 7.085`,fill:`#FFF`},null),s(`path`,{d:`M75.768 73.325l-.9-6.397 11.982-6.52s7.302-.118 8.038 1.205c.737 1.324-5.616.993-5.616.993s-1.836 1.388-2.615 2.5c-1.654 2.363-.986 6.471-8.318 5.986-1.708.284-2.57 2.233-2.57 2.233`,fill:`#FFC6A0`},null),s(`path`,{d:`M52.44 77.672s14.217 9.406 24.973 14.444c1.061.497-2.094 16.183-11.892 11.811-7.436-3.318-20.162-8.44-21.482-14.496-.71-3.258 2.543-7.643 8.401-11.76M141.862 80.113s-6.693 2.999-13.844 6.876c-3.894 2.11-10.137 4.704-12.33 7.988-6.224 9.314 3.536 11.22 12.947 7.503 6.71-2.651 28.999-12.127 13.227-22.367`,fill:`#FFB594`},null),s(`path`,{d:`M76.166 66.36l3.06 3.881s-2.783 2.67-6.31 5.747c-7.103 6.195-12.803 14.296-15.995 16.44-3.966 2.662-9.754 3.314-12.177-.118-3.553-5.032.464-14.628 31.422-25.95`,fill:`#FFC6A0`},null),s(`path`,{d:`M64.674 85.116s-2.34 8.413-8.912 14.447c.652.548 18.586 10.51 22.144 10.056 5.238-.669 6.417-18.968 1.145-20.531-.702-.208-5.901-1.286-8.853-2.167-.87-.26-1.611-1.71-3.545-.936l-1.98-.869zM128.362 85.826s5.318 1.956 7.325 13.734c-.546.274-17.55 12.35-21.829 7.805-6.534-6.94-.766-17.393 4.275-18.61 4.646-1.121 5.03-1.37 10.23-2.929`,fill:`#FFF`},null),s(`path`,{d:`M78.18 94.656s.911 7.41-4.914 13.078`,stroke:`#E4EBF7`,"stroke-width":`1.051`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M87.397 94.68s3.124 2.572 10.263 2.572c7.14 0 9.074-3.437 9.074-3.437`,stroke:`#E4EBF7`,"stroke-width":`.932`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M117.184 68.639l-6.781-6.177s-5.355-4.314-9.223-.893c-3.867 3.422 4.463 2.083 5.653 4.165 1.19 2.082.848 1.143-2.083.446-5.603-1.331-2.082.893 2.975 5.355 2.091 1.845 6.992.955 6.992.955l2.467-3.851z`,fill:`#FFC6A0`},null),s(`path`,{d:`M105.282 91.315l-.297-10.937-15.918-.027-.53 10.45c-.026.403.17.788.515.999 2.049 1.251 9.387 5.093 15.799.424.287-.21.443-.554.431-.91`,fill:`#FFB594`},null),s(`path`,{d:`M107.573 74.24c.817-1.147.982-9.118 1.015-11.928a1.046 1.046 0 0 0-.965-1.055l-4.62-.365c-7.71-1.044-17.071.624-18.253 6.346-5.482 5.813-.421 13.244-.421 13.244s1.963 3.566 4.305 6.791c.756 1.041.398-3.731 3.04-5.929 5.524-4.594 15.899-7.103 15.899-7.103`,fill:`#5C2552`},null),s(`path`,{d:`M88.426 83.206s2.685 6.202 11.602 6.522c7.82.28 8.973-7.008 7.434-17.505l-.909-5.483c-6.118-2.897-15.478.54-15.478.54s-.576 2.044-.19 5.504c-2.276 2.066-1.824 5.618-1.824 5.618s-.905-1.922-1.98-2.321c-.86-.32-1.897.089-2.322 1.98-1.04 4.632 3.667 5.145 3.667 5.145`,fill:`#FFC6A0`},null),s(`path`,{stroke:`#DB836E`,"stroke-width":`1.145`,"stroke-linecap":`round`,"stroke-linejoin":`round`,d:`M100.843 77.099l1.701-.928-1.015-4.324.674-1.406`},null),s(`path`,{d:`M105.546 74.092c-.022.713-.452 1.279-.96 1.263-.51-.016-.904-.607-.882-1.32.021-.713.452-1.278.96-1.263.51.016.904.607.882 1.32M97.592 74.349c-.022.713-.452 1.278-.961 1.263-.509-.016-.904-.607-.882-1.32.022-.713.452-1.279.961-1.263.51.016.904.606.882 1.32`,fill:`#552950`},null),s(`path`,{d:`M91.132 86.786s5.269 4.957 12.679 2.327`,stroke:`#DB836E`,"stroke-width":`1.145`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M99.776 81.903s-3.592.232-1.44-2.79c1.59-1.496 4.897-.46 4.897-.46s1.156 3.906-3.457 3.25`,fill:`#DB836E`},null),s(`path`,{d:`M102.88 70.6s2.483.84 3.402.715M93.883 71.975s2.492-1.144 4.778-1.073`,stroke:`#5C2552`,"stroke-width":`1.526`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M86.32 77.374s.961.879 1.458 2.106c-.377.48-1.033 1.152-.236 1.809M99.337 83.719s1.911.151 2.509-.254`,stroke:`#DB836E`,"stroke-width":`1.145`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M87.782 115.821l15.73-3.012M100.165 115.821l10.04-2.008`,stroke:`#E4EBF7`,"stroke-width":`1.051`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M66.508 86.763s-1.598 8.83-6.697 14.078`,stroke:`#E4EBF7`,"stroke-width":`1.114`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M128.31 87.934s3.013 4.121 4.06 11.785`,stroke:`#E4EBF7`,"stroke-width":`1.051`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M64.09 84.816s-6.03 9.912-13.607 9.903`,stroke:`#DB836E`,"stroke-width":`.795`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M112.366 65.909l-.142 5.32s5.993 4.472 11.945 9.202c4.482 3.562 8.888 7.455 10.985 8.662 4.804 2.766 8.9 3.355 11.076 1.808 4.071-2.894 4.373-9.878-8.136-15.263-4.271-1.838-16.144-6.36-25.728-9.73`,fill:`#FFC6A0`},null),s(`path`,{d:`M130.532 85.488s4.588 5.757 11.619 6.214`,stroke:`#DB836E`,"stroke-width":`.75`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M121.708 105.73s-.393 8.564-1.34 13.612`,stroke:`#E4EBF7`,"stroke-width":`1.051`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M115.784 161.512s-3.57-1.488-2.678-7.14`,stroke:`#648BD8`,"stroke-width":`1.051`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M101.52 290.246s4.326 2.057 7.408 1.03c2.842-.948 4.564.673 7.132 1.186 2.57.514 6.925 1.108 11.772-1.269-.104-5.551-6.939-4.01-12.048-6.763-2.582-1.39-3.812-4.757-3.625-8.863h-9.471s-1.402 10.596-1.169 14.68`,fill:`#CBD1D1`},null),s(`path`,{d:`M101.496 290.073s2.447 1.281 6.809.658c3.081-.44 3.74.485 7.479 1.039 3.739.554 10.802-.07 11.91-.9.415 1.108-.347 2.077-.347 2.077s-1.523.608-4.847.831c-2.045.137-5.843.293-7.663-.507-1.8-1.385-5.286-1.917-5.77-.243-3.947.958-7.41-.288-7.41-.288l-.16-2.667z`,fill:`#2B0849`},null),s(`path`,{d:`M108.824 276.19h3.116s-.103 6.751 4.57 8.62c-4.673.624-8.62-2.32-7.686-8.62`,fill:`#A4AABA`},null),s(`path`,{d:`M57.65 272.52s-2.122 7.47-4.518 12.396c-1.811 3.724-4.255 7.548 5.505 7.548 6.698 0 9.02-.483 7.479-6.648-1.541-6.164.268-13.296.268-13.296H57.65z`,fill:`#CBD1D1`},null),s(`path`,{d:`M51.54 290.04s2.111 1.178 6.682 1.178c6.128 0 8.31-1.662 8.31-1.662s.605 1.122-.624 2.18c-1 .862-3.624 1.603-7.444 1.559-4.177-.049-5.876-.57-6.786-1.177-.831-.554-.692-1.593-.138-2.078`,fill:`#2B0849`},null),s(`path`,{d:`M58.533 274.438s.034 1.529-.315 2.95c-.352 1.431-1.087 3.127-1.139 4.17-.058 1.16 4.57 1.592 5.194.035.623-1.559 1.303-6.475 1.927-7.306.622-.831-4.94-2.135-5.667.15`,fill:`#A4AABA`},null),s(`path`,{d:`M100.885 277.015l13.306.092s1.291-54.228 1.843-64.056c.552-9.828 3.756-43.13.997-62.788l-12.48-.64-22.725.776s-.433 3.944-1.19 9.921c-.062.493-.677.838-.744 1.358-.075.582.42 1.347.318 1.956-2.35 14.003-6.343 32.926-8.697 46.425-.116.663-1.227 1.004-1.45 2.677-.04.3.21 1.516.112 1.785-6.836 18.643-10.89 47.584-14.2 61.551l14.528-.014s2.185-8.524 4.008-16.878c2.796-12.817 22.987-84.553 22.987-84.553l3-.517 1.037 46.1s-.223 1.228.334 2.008c.558.782-.556 1.117-.39 2.233l.39 1.784s-.446 7.14-.892 11.826c-.446 4.685-.092 38.954-.092 38.954`,fill:`#7BB2F9`},null),s(`path`,{d:`M77.438 220.434c1.146.094 4.016-2.008 6.916-4.91M107.55 223.931s2.758-1.103 6.069-3.862`,stroke:`#648BD8`,"stroke-width":`1.051`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M108.459 220.905s2.759-1.104 6.07-3.863`,stroke:`#648BD8`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M76.099 223.557s2.608-.587 6.47-3.346M87.33 150.82c-.27 3.088.297 8.478-4.315 9.073M104.829 149.075s.11 13.936-1.286 14.983c-2.207 1.655-2.975 1.934-2.975 1.934M101.014 149.63s.035 12.81-1.19 24.245M94.93 174.965s7.174-1.655 9.38-1.655M75.671 204.754c-.316 1.55-.64 3.067-.973 4.535 0 0-1.45 1.822-1.003 3.756.446 1.934-.943 2.034-4.96 15.273-1.686 5.559-4.464 18.49-6.313 27.447-.078.38-4.018 18.06-4.093 18.423M77.043 196.743a313.269 313.269 0 0 1-.877 4.729M83.908 151.414l-1.19 10.413s-1.091.148-.496 2.23c.111 1.34-2.66 15.692-5.153 30.267M57.58 272.94h13.238`,stroke:`#648BD8`,"stroke-width":`1.051`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null),s(`path`,{d:`M117.377 147.423s-16.955-3.087-35.7.199c.157 2.501-.002 4.128-.002 4.128s14.607-2.802 35.476-.31c.251-2.342.226-4.017.226-4.017`,fill:`#192064`},null),s(`path`,{d:`M107.511 150.353l.004-4.885a.807.807 0 0 0-.774-.81c-2.428-.092-5.04-.108-7.795-.014a.814.814 0 0 0-.784.81l-.003 4.88c0 .456.371.82.827.808a140.76 140.76 0 0 1 7.688.017.81.81 0 0 0 .837-.806`,fill:`#FFF`},null),s(`path`,{d:`M106.402 149.426l.002-3.06a.64.64 0 0 0-.616-.643 94.135 94.135 0 0 0-5.834-.009.647.647 0 0 0-.626.643l-.001 3.056c0 .36.291.648.651.64 1.78-.04 3.708-.041 5.762.012.36.009.662-.279.662-.64`,fill:`#192064`},null),s(`path`,{d:`M101.485 273.933h12.272M102.652 269.075c.006 3.368.04 5.759.11 6.47M102.667 263.125c-.009 1.53-.015 2.98-.016 4.313M102.204 174.024l.893 44.402s.669 1.561-.224 2.677c-.892 1.116 2.455.67.893 2.231-1.562 1.562.893 1.116 0 3.347-.592 1.48-.988 20.987-1.09 34.956`,stroke:`#648BD8`,"stroke-width":`1.051`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null)])]),ae=e=>{let{componentCls:t,lineHeightHeading3:n,iconCls:r,padding:i,paddingXL:a,paddingXS:o,paddingLG:s,marginXS:c,lineHeight:l}=e;return{[t]:{padding:`${s*2}px ${a}px`,"&-rtl":{direction:`rtl`}},[`${t} ${t}-image`]:{width:e.imageWidth,height:e.imageHeight,margin:`auto`},[`${t} ${t}-icon`]:{marginBottom:s,textAlign:`center`,[`& > ${r}`]:{fontSize:e.resultIconFontSize}},[`${t} ${t}-title`]:{color:e.colorTextHeading,fontSize:e.resultTitleFontSize,lineHeight:n,marginBlock:c,textAlign:`center`},[`${t} ${t}-subtitle`]:{color:e.colorTextDescription,fontSize:e.resultSubtitleFontSize,lineHeight:l,textAlign:`center`},[`${t} ${t}-content`]:{marginTop:s,padding:`${s}px ${i*2.5}px`,backgroundColor:e.colorFillAlter},[`${t} ${t}-extra`]:{margin:e.resultExtraMargin,textAlign:`center`,"& > *":{marginInlineEnd:o,"&:last-child":{marginInlineEnd:0}}}}},oe=e=>{let{componentCls:t,iconCls:n}=e;return{[`${t}-success ${t}-icon > ${n}`]:{color:e.resultSuccessIconColor},[`${t}-error ${t}-icon > ${n}`]:{color:e.resultErrorIconColor},[`${t}-info ${t}-icon > ${n}`]:{color:e.resultInfoIconColor},[`${t}-warning ${t}-icon > ${n}`]:{color:e.resultWarningIconColor}}},se=e=>[ae(e),oe(e)],ce=e=>se(e),le=C(`Result`,e=>{let{paddingLG:t,fontSizeHeading3:n}=e,r=e.fontSize,i=`${t}px 0 0 0`,a=e.colorInfo,o=e.colorError,s=e.colorSuccess,c=e.colorWarning;return[ce(E(e,{resultTitleFontSize:n,resultSubtitleFontSize:r,resultIconFontSize:n*3,resultExtraMargin:i,resultInfoIconColor:a,resultErrorIconColor:o,resultSuccessIconColor:s,resultWarningIconColor:c}))]},{imageWidth:250,imageHeight:295}),ue={success:ee,error:D,info:A,warning:J},Z={404:Y,500:X,403:ie},de=Object.keys(Z),fe=()=>({prefixCls:String,icon:T.any,status:{type:[Number,String],default:`info`},title:T.any,subTitle:T.any,extra:T.any}),pe=(e,t)=>{let{status:n,icon:r}=t;if(de.includes(`${n}`)){let t=Z[n];return s(`div`,{class:`${e}-icon ${e}-image`},[s(t,null,null)])}let i=ue[n],a=r||s(i,null,null);return s(`div`,{class:`${e}-icon`},[a])},me=(e,t)=>t&&s(`div`,{class:`${e}-extra`},[t]),Q=a({compatConfig:{MODE:3},name:`AResult`,inheritAttrs:!1,props:fe(),slots:Object,setup(e,t){let{slots:n,attrs:r}=t,{prefixCls:i,direction:a}=w(`result`,e),[o,l]=le(i),u=c(()=>S(i.value,l.value,`${i.value}-${e.status}`,{[`${i.value}-rtl`]:a.value===`rtl`}));return()=>{let t=e.title??n.title?.call(n),a=e.subTitle??n.subTitle?.call(n),c=e.icon??n.icon?.call(n),l=e.extra??n.extra?.call(n),d=i.value;return o(s(`div`,x(x({},r),{},{class:[u.value,r.class]}),[pe(d,{status:e.status,icon:c}),s(`div`,{class:`${d}-title`},[t]),a&&s(`div`,{class:`${d}-subtitle`},[a]),me(d,l),n.default&&s(`div`,{class:`${d}-content`},[n.default()])]))}}});Q.PRESENTED_IMAGE_403=Z[403],Q.PRESENTED_IMAGE_404=Z[404],Q.PRESENTED_IMAGE_500=Z[500],Q.install=function(e){return e.component(Q.name,Q),e};var he={class:`aw-mono count-extra`},ge={key:3,class:`aw-mono`},_e={key:4,class:`aw-mono`},ve={key:0},ye={key:1,class:`aw-mono`},be=Object.assign(L(a({__name:`MonitorAgentTable`,props:{rows:{},loading:{type:Boolean},terminating:{type:Boolean}},emits:[`openTerminal`,`terminate`],setup(t){let{t:r}=b(),{shortId:i}=B(),{stateColor:a,stateText:c}=V(),l=z();return(p,v)=>{let y=M,b=j,x=N,S=F,C=k,w=P;return o(),g(w,{class:`aw-panel`,title:e(r)(`monitor.agentRuntimes`)},{extra:h(()=>[u(`span`,he,n(t.rows.length)+` wired`,1)]),default:h(()=>[s(C,{columns:e(l),"data-source":t.rows,pagination:!1,loading:t.loading,"row-key":`agentId`,size:`small`,scroll:{x:980}},{bodyCell:h(({column:l,record:C})=>[l.key===`role`?(o(),g(y,{key:0,color:C.role===`lead`?`gold`:`blue`},{default:h(()=>[_(n(C.role),1)]),_:2},1032,[`color`])):l.key===`harness`?(o(),g(y,{key:1},{default:h(()=>[_(n(C.harness),1)]),_:2},1024)):l.key===`state`?(o(),g(y,{key:2,color:e(a)[C.state]??`default`},{default:h(()=>[_(n(e(c)[C.state]??C.state),1)]),_:2},1032,[`color`])):l.key===`currentTaskId`?(o(),d(`span`,ge,n(e(i)(C.currentTaskId)),1)):l.key===`channelId`?(o(),d(`span`,_e,n(e(i)(C.channelId)),1)):l.key===`pid`?(o(),d(f,{key:5},[C.process?(o(),d(`span`,ve,[s(y,{color:C.process.alive?`success`:`default`,class:`aw-mono`},{default:h(()=>[_(` PID `+n(C.process.pid),1)]),_:2},1032,[`color`])])):(o(),d(`span`,ye,`in-proc`))],64)):l.key===`actions`?(o(),g(S,{key:6,size:4},{default:h(()=>[C.process?.alive?(o(),g(b,{key:0,size:`small`,type:`primary`,ghost:``,title:e(r)(`monitor.openTerminalHint`),onClick:e=>p.$emit(`openTerminal`,C.process.pid,C.name,C.role)},{icon:h(()=>[...v[0]||=[u(`span`,{class:`i-tabler-terminal-2`},null,-1)]]),default:h(()=>[_(` `+n(e(r)(`monitor.openTerminal`)),1)]),_:1},8,[`title`,`onClick`])):m(``,!0),s(x,{title:`${e(r)(`monitor.terminateConfirm`)}(${C.name})`,"ok-text":e(r)(`common.confirm`),"cancel-text":e(r)(`common.cancel`),onConfirm:e=>p.$emit(`terminate`,C)},{default:h(()=>[s(b,{size:`small`,danger:``,disabled:t.terminating},{icon:h(()=>[...v[1]||=[u(`span`,{class:`i-tabler-square-x`},null,-1)]]),default:h(()=>[_(` `+n(e(r)(`monitor.terminate`)),1)]),_:1},8,[`disabled`])]),_:1},8,[`title`,`ok-text`,`cancel-text`,`onConfirm`])]),_:2},1024)):m(``,!0)]),_:1},8,[`columns`,`data-source`,`loading`])]),_:1},8,[`title`])}}}),[[`__scopeId`,`data-v-adda8c25`]]),{__name:`MonitorAgentTable`}),xe={class:`aw-mono count-extra`},Se={key:0,class:`aw-mono`},Ce={key:2,class:`aw-mono`},we=Object.assign(L(a({__name:`MonitorChannelTable`,props:{rows:{},loading:{type:Boolean}},setup(t){let{t:r}=b(),{shortId:i}=B(),a=R();return(c,l)=>{let p=M,v=k,y=P;return o(),g(y,{class:`aw-panel`,title:e(r)(`monitor.channelRuntimes`)},{extra:h(()=>[u(`span`,xe,n(t.rows.length)+` wired`,1)]),default:h(()=>[s(v,{columns:e(a),"data-source":t.rows,pagination:!1,loading:t.loading,"row-key":`channelId`,size:`small`,scroll:{x:720}},{bodyCell:h(({column:t,record:a})=>[t.key===`channelId`?(o(),d(`span`,Se,n(e(i)(a.channelId)),1)):t.key===`hasScheduler`?(o(),d(f,{key:1},[a.hasScheduler?(o(),g(p,{key:0,color:`purple`},{default:h(()=>[_(n(e(r)(`monitor.scheduling`)),1)]),_:1})):(o(),g(p,{key:1},{default:h(()=>[...l[0]||=[_(` – `,-1)]]),_:1}))],64)):t.key===`leadAgentId`?(o(),d(`span`,Ce,n(e(i)(a.leadAgentId)),1)):m(``,!0)]),_:1},8,[`columns`,`data-source`,`loading`])]),_:1},8,[`title`])}}}),[[`__scopeId`,`data-v-479df441`]]),{__name:`MonitorChannelTable`}),Te=Object.assign(a({__name:`MonitorLoginGate`,setup(t){let{t:r}=b();return(t,i)=>{let a=j,c=Q,l=P;return o(),g(l,{class:`aw-panel`},{default:h(()=>[s(c,{title:e(r)(`monitor.needLogin`)},{extra:h(()=>[s(a,{type:`primary`,onClick:i[0]||=n=>(`navigateTo`in t?t.navigateTo:e(v))(`/workshop`)},{default:h(()=>[_(n(e(r)(`monitor.goLogin`)),1)]),_:1})]),_:1},8,[`title`])]),_:1})}}}),{__name:`MonitorLoginGate`}),Ee={class:`aw-page-head`},De={class:`aw-kicker`},Oe={class:`head-right`},ke={class:`toggle-label`},Ae=Object.assign(L(a({__name:`MonitorPageHead`,props:p({scope:{},loading:{type:Boolean}},{autoRefresh:{type:Boolean,required:!0},autoRefreshModifiers:{}}),emits:p([`refresh`],[`update:autoRefresh`]),setup(r){let a=i(r,`autoRefresh`),{t:c}=b();return(i,l)=>{let f=M,p=I,m=j;return o(),d(`div`,Ee,[u(`div`,null,[u(`p`,De,n(e(c)(`menu.system`))+` / runtime ledger `,1),u(`h1`,null,[_(n(e(c)(`monitor.title`))+` `,1),s(f,{color:r.scope===`admin`?`volcano`:`blue`,class:`scope-tag`},{default:h(()=>[u(`span`,{class:t(r.scope===`admin`?`i-tabler-shield-check`:`i-tabler-user`)},null,2),_(` `+n(r.scope===`admin`?i.$t(`monitor.k16zpmg9002`):i.$t(`monitor.k1dzryry003`)),1)]),_:1},8,[`color`])])]),u(`div`,Oe,[s(p,{checked:a.value,"onUpdate:checked":l[0]||=e=>a.value=e,size:`small`},null,8,[`checked`]),u(`span`,ke,n(e(c)(`monitor.autoRefresh`)),1),s(m,{size:`small`,loading:r.loading,onClick:l[1]||=e=>i.$emit(`refresh`)},{icon:h(()=>[...l[2]||=[u(`span`,{class:`i-tabler-refresh`},null,-1)]]),default:h(()=>[_(` `+n(e(c)(`monitor.refresh`)),1)]),_:1},8,[`loading`])])])}}}),[[`__scopeId`,`data-v-d1aac75a`]]),{__name:`MonitorPageHead`}),je={class:`aw-mono count-extra`},Me={key:0,class:`aw-mono`},Ne={key:0,class:`aw-mono agent-sub`},Pe={key:0},Fe={key:1},Ie={key:4,class:`aw-mono small`},Le={key:5,class:`aw-mono small`},Re=Object.assign(L(a({__name:`MonitorProcessTable`,props:{rows:{},loading:{type:Boolean},terminating:{type:Boolean},orphanCount:{}},emits:[`openTerminal`,`terminate`],setup(t){let{t:r}=b(),{shortId:i,startedAtText:a}=B(),c=re();return(l,p)=>{let v=M,y=j,b=N,x=F,S=k,C=P;return o(),g(C,{class:`aw-panel`,title:e(r)(`monitor.harnessProcesses`)},{extra:h(()=>[u(`span`,je,n(t.rows.length)+` spawned · `+n(t.orphanCount??0)+` orphan `,1)]),default:h(()=>[s(S,{columns:e(c),"data-source":t.rows,pagination:!1,loading:t.loading,"row-key":`pid`,size:`small`,scroll:{x:900}},{bodyCell:h(({column:c,record:S})=>[c.key===`pid`?(o(),d(`span`,Me,n(S.pid),1)):c.key===`bound`?(o(),g(v,{key:1,color:S.bound?`success`:`warning`},{default:h(()=>[_(n(S.bound?e(r)(`monitor.bound`):e(r)(`monitor.orphan`)),1)]),_:2},1032,[`color`])):c.key===`name`?(o(),d(f,{key:2},[u(`span`,null,n(S.name??`–`),1),S.agentId?(o(),d(`span`,Ne,n(e(i)(S.agentId)),1)):m(``,!0)],64)):c.key===`role`?(o(),d(f,{key:3},[S.role?(o(),d(`span`,Pe,n(S.role),1)):(o(),d(`span`,Fe,`–`))],64)):c.key===`command`?(o(),d(`span`,Ie,n(S.command),1)):c.key===`startedAt`?(o(),d(`span`,Le,n(e(a)(S.startedAt)),1)):c.key===`alive`?(o(),g(v,{key:6,color:S.alive?`success`:`error`},{default:h(()=>[_(n(S.alive?e(r)(`monitor.alive`):`${e(r)(`monitor.exited`)} ${S.exitCode??``}`),1)]),_:2},1032,[`color`])):c.key===`actions`?(o(),g(x,{key:7,size:4},{default:h(()=>[S.terminal?(o(),g(y,{key:0,size:`small`,type:`primary`,ghost:``,title:e(r)(`monitor.openTerminalHint`),onClick:e=>l.$emit(`openTerminal`,S.pid,S.name,S.role)},{icon:h(()=>[...p[0]||=[u(`span`,{class:`i-tabler-terminal-2`},null,-1)]]),default:h(()=>[_(` `+n(e(r)(`monitor.openTerminal`)),1)]),_:1},8,[`title`,`onClick`])):m(``,!0),s(b,{title:e(r)(`monitor.terminatePidConfirm`),"ok-text":e(r)(`common.confirm`),"cancel-text":e(r)(`common.cancel`),onConfirm:e=>l.$emit(`terminate`,S)},{default:h(()=>[s(y,{size:`small`,danger:``,disabled:t.terminating||!S.alive},{icon:h(()=>[...p[1]||=[u(`span`,{class:`i-tabler-square-x`},null,-1)]]),default:h(()=>[_(` `+n(e(r)(`monitor.terminate`)),1)]),_:1},8,[`disabled`])]),_:2},1032,[`title`,`ok-text`,`cancel-text`,`onConfirm`])]),_:2},1024)):m(``,!0)]),_:1},8,[`columns`,`data-source`,`loading`])]),_:1},8,[`title`])}}}),[[`__scopeId`,`data-v-c323204d`]]),{__name:`MonitorProcessTable`}),ze={class:`stat-grid`},Be={class:`stat-label`},Ve={class:`stat-value aw-mono`},$={class:`stat-label`},He={class:`stat-value aw-mono`},Ue={class:`stat-label`},We={class:`stat-value aw-mono`},Ge={key:0,class:`orphan-badge`},Ke={class:`stat-label`},qe={class:`stat-value aw-mono small`},Je={class:`stat-updated`},Ye=Object.assign(L(a({__name:`MonitorStatGrid`,props:{counts:{},serverPid:{},uptimeMs:{},generatedAt:{},lastUpdated:{}},setup(t){let{t:r}=b(),{uptimeText:i}=B();return(a,c)=>{let l=P;return o(),d(`div`,ze,[s(l,{class:`aw-panel stat`},{default:h(()=>[u(`p`,Be,n(e(r)(`monitor.channels`)),1),u(`p`,Ve,n(t.counts?.channels??`–`),1)]),_:1}),s(l,{class:`aw-panel stat`},{default:h(()=>[u(`p`,$,n(e(r)(`monitor.agents`)),1),u(`p`,He,n(t.counts?.agents??`–`),1)]),_:1}),s(l,{class:`aw-panel stat`},{default:h(()=>[u(`p`,Ue,n(e(r)(`monitor.aliveProcesses`)),1),u(`p`,We,[_(n(t.counts?.aliveProcesses??`–`)+` `,1),(t.counts?.orphanProcesses??0)>0?(o(),d(`span`,Ge,` +`+n(t.counts?.orphanProcesses)+` `+n(e(r)(`monitor.orphan`)),1)):m(``,!0)])]),_:1}),s(l,{class:`aw-panel stat`},{default:h(()=>[u(`p`,Ke,n(e(r)(`monitor.server`)),1),u(`p`,qe,` PID `+n(t.serverPid??`–`)+` · `+n(t.uptimeMs===void 0?``:e(i)(t.uptimeMs)),1),u(`p`,Je,n(t.lastUpdated)+` · `+n(e(r)(`monitor.updated`))+` `+n(t.generatedAt??``),1)]),_:1})])}}}),[[`__scopeId`,`data-v-d0de903d`]]),{__name:`MonitorStatGrid`}),Xe={class:`monitor`},Ze=L(a({__name:`monitor`,setup(t){ne({layout:`default`});let n=y(),i=te(),{terminalOpen:a,terminalPid:c,terminalAgentId:u,terminalChannelId:p,terminalSubtitle:m,openTerminal:h}=W(),{snapshot:_,loading:b,autoRefresh:x,lastUpdated:S,terminating:C,poll:w,doTerminateAgent:T,doTerminatePid:E}=U({onInitialPoll:D});function D(){let e=n.query.agentId;if(typeof e!=`string`||!e)return;let t=typeof n.query.channelId==`string`?n.query.channelId:``,r=_.value?.processes.find(n=>n.agentId===e&&(!t||n.channelId===t));h(r?.pid??null,r?.name??e,r?.role??`agent`,e,t||null),v({path:`/monitor`},{replace:!0})}return l(()=>[n.query.agentId,n.query.channelId],async([e])=>{typeof e!=`string`||!e||(await w(),D())}),(t,n)=>(o(),d(`div`,Xe,[s(Ae,{"auto-refresh":e(x),"onUpdate:autoRefresh":n[0]||=e=>r(x)?x.value=e:null,scope:e(_)?.scope,loading:e(b),onRefresh:e(w)},null,8,[`auto-refresh`,`scope`,`loading`,`onRefresh`]),e(i).token?(o(),d(f,{key:1},[s(Ye,{counts:e(_)?.counts,"server-pid":e(_)?.serverPid,"uptime-ms":e(_)?.uptimeMs,"generated-at":e(_)?.generatedAt,"last-updated":e(S)},null,8,[`counts`,`server-pid`,`uptime-ms`,`generated-at`,`last-updated`]),s(we,{rows:e(_)?.channels??[],loading:e(b)},null,8,[`rows`,`loading`]),s(be,{rows:e(_)?.agents??[],loading:e(b),terminating:e(C),onOpenTerminal:e(h),onTerminate:e(T)},null,8,[`rows`,`loading`,`terminating`,`onOpenTerminal`,`onTerminate`]),s(Re,{rows:e(_)?.processes??[],loading:e(b),terminating:e(C),"orphan-count":e(_)?.counts.orphanProcesses,onOpenTerminal:e(h),onTerminate:e(E)},null,8,[`rows`,`loading`,`terminating`,`orphan-count`,`onOpenTerminal`,`onTerminate`]),s(H,{open:e(a),"onUpdate:open":n[1]||=e=>r(a)?a.value=e:null,pid:e(c),"agent-id":e(u),"channel-id":e(p),subtitle:e(m)},null,8,[`open`,`pid`,`agent-id`,`channel-id`,`subtitle`])],64)):(o(),g(Te,{key:0}))]))}}),[[`__scopeId`,`data-v-992a39ad`]]);export{Ze as default};