unspaghettit 0.7.0 → 0.8.0

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 (359) hide show
  1. package/build/client/_app/immutable/chunks/{Bw8aCT1Q2.js → B9Q7cSuz2.js} +1 -1
  2. package/build/client/_app/immutable/chunks/B9Q7cSuz2.js.br +0 -0
  3. package/build/client/_app/immutable/chunks/B9Q7cSuz2.js.gz +0 -0
  4. package/build/client/_app/immutable/chunks/{DDKHPhI8.js → BDNWGeD3.js} +1 -1
  5. package/build/client/_app/immutable/chunks/BDNWGeD3.js.br +0 -0
  6. package/build/client/_app/immutable/chunks/BDNWGeD3.js.gz +0 -0
  7. package/build/client/_app/immutable/chunks/{DGz3YZQB.js → BEi9bPpt.js} +1 -1
  8. package/build/client/_app/immutable/chunks/BEi9bPpt.js.br +0 -0
  9. package/build/client/_app/immutable/chunks/BEi9bPpt.js.gz +0 -0
  10. package/build/client/_app/immutable/chunks/{B-nR0Q3f.js → BGjKBqhd.js} +1 -1
  11. package/build/client/_app/immutable/chunks/BGjKBqhd.js.br +0 -0
  12. package/build/client/_app/immutable/chunks/BGjKBqhd.js.gz +0 -0
  13. package/build/client/_app/immutable/chunks/BLlLbCwR.js +1 -0
  14. package/build/client/_app/immutable/chunks/BLlLbCwR.js.br +2 -0
  15. package/build/client/_app/immutable/chunks/BLlLbCwR.js.gz +0 -0
  16. package/build/client/_app/immutable/chunks/{CfhTGim_.js → BZzfs2NN.js} +1 -1
  17. package/build/client/_app/immutable/chunks/BZzfs2NN.js.br +0 -0
  18. package/build/client/_app/immutable/chunks/BZzfs2NN.js.gz +0 -0
  19. package/build/client/_app/immutable/chunks/{DORQYps52.js → Bb7G5rrB2.js} +1 -1
  20. package/build/client/_app/immutable/chunks/Bb7G5rrB2.js.br +0 -0
  21. package/build/client/_app/immutable/chunks/Bb7G5rrB2.js.gz +0 -0
  22. package/build/client/_app/immutable/chunks/{DsW-fl3n.js → BdU1Yt_e.js} +1 -1
  23. package/build/client/_app/immutable/chunks/BdU1Yt_e.js.br +0 -0
  24. package/build/client/_app/immutable/chunks/BdU1Yt_e.js.gz +0 -0
  25. package/build/client/_app/immutable/chunks/{B-duocHJ.js → BlkPyloS.js} +1 -1
  26. package/build/client/_app/immutable/chunks/BlkPyloS.js.br +0 -0
  27. package/build/client/_app/immutable/chunks/BlkPyloS.js.gz +0 -0
  28. package/build/client/_app/immutable/chunks/{CyN2OJjk.js → CHmg-Am5.js} +1 -1
  29. package/build/client/_app/immutable/chunks/CHmg-Am5.js.br +0 -0
  30. package/build/client/_app/immutable/chunks/CHmg-Am5.js.gz +0 -0
  31. package/build/client/_app/immutable/chunks/{CuahcwUn.js → CPYkXatp.js} +1 -1
  32. package/build/client/_app/immutable/chunks/CPYkXatp.js.br +2 -0
  33. package/build/client/_app/immutable/chunks/CPYkXatp.js.gz +0 -0
  34. package/build/client/_app/immutable/chunks/{CAtyGLyp2.js → CV2_qPHL2.js} +1 -1
  35. package/build/client/_app/immutable/chunks/CV2_qPHL2.js.br +0 -0
  36. package/build/client/_app/immutable/chunks/CV2_qPHL2.js.gz +0 -0
  37. package/build/client/_app/immutable/chunks/{BNNcE74V.js → CXhiS9kD.js} +1 -1
  38. package/build/client/_app/immutable/chunks/CXhiS9kD.js.br +0 -0
  39. package/build/client/_app/immutable/chunks/CXhiS9kD.js.gz +0 -0
  40. package/build/client/_app/immutable/chunks/{BYlGYFfX2.js → CmaTEgmy2.js} +1 -1
  41. package/build/client/_app/immutable/chunks/CmaTEgmy2.js.br +0 -0
  42. package/build/client/_app/immutable/chunks/CmaTEgmy2.js.gz +0 -0
  43. package/build/client/_app/immutable/chunks/{DX8e74SH.js → CuI8wNzS.js} +1 -1
  44. package/build/client/_app/immutable/chunks/CuI8wNzS.js.br +0 -0
  45. package/build/client/_app/immutable/chunks/CuI8wNzS.js.gz +0 -0
  46. package/build/client/_app/immutable/chunks/{D8TG_CZy2.js → DFsgZTOD2.js} +1 -1
  47. package/build/client/_app/immutable/chunks/DFsgZTOD2.js.br +0 -0
  48. package/build/client/_app/immutable/chunks/DFsgZTOD2.js.gz +0 -0
  49. package/build/client/_app/immutable/chunks/DPrNvhwL.js +1 -0
  50. package/build/client/_app/immutable/chunks/DPrNvhwL.js.br +0 -0
  51. package/build/client/_app/immutable/chunks/DPrNvhwL.js.gz +0 -0
  52. package/build/client/_app/immutable/chunks/{Bpq8kJkb.js → DQ6pI1Eb.js} +1 -1
  53. package/build/client/_app/immutable/chunks/DQ6pI1Eb.js.br +0 -0
  54. package/build/client/_app/immutable/chunks/DQ6pI1Eb.js.gz +0 -0
  55. package/build/client/_app/immutable/chunks/{Bt8Ir-i1.js → DUlWXa5h.js} +1 -1
  56. package/build/client/_app/immutable/chunks/DUlWXa5h.js.br +0 -0
  57. package/build/client/_app/immutable/chunks/DUlWXa5h.js.gz +0 -0
  58. package/build/client/_app/immutable/chunks/{DfrZClGN.js → DVZgPZIa.js} +1 -1
  59. package/build/client/_app/immutable/chunks/DVZgPZIa.js.br +0 -0
  60. package/build/client/_app/immutable/chunks/DVZgPZIa.js.gz +0 -0
  61. package/build/client/_app/immutable/chunks/{B40Y6LyW2.js → DsI4egLI2.js} +1 -1
  62. package/build/client/_app/immutable/chunks/DsI4egLI2.js.br +0 -0
  63. package/build/client/_app/immutable/chunks/DsI4egLI2.js.gz +0 -0
  64. package/build/client/_app/immutable/chunks/{BkBJU1hz2.js → DwwbPhx_2.js} +1 -1
  65. package/build/client/_app/immutable/chunks/DwwbPhx_2.js.br +0 -0
  66. package/build/client/_app/immutable/chunks/DwwbPhx_2.js.gz +0 -0
  67. package/build/client/_app/immutable/chunks/{Dp0FovUz2.js → SoqLurki2.js} +1 -1
  68. package/build/client/_app/immutable/chunks/SoqLurki2.js.br +0 -0
  69. package/build/client/_app/immutable/chunks/SoqLurki2.js.gz +0 -0
  70. package/build/client/_app/immutable/chunks/{YZICekcT.js → bYs7XjWt.js} +1 -1
  71. package/build/client/_app/immutable/chunks/bYs7XjWt.js.br +0 -0
  72. package/build/client/_app/immutable/chunks/bYs7XjWt.js.gz +0 -0
  73. package/build/client/_app/immutable/chunks/{BwJIzYpC2.js → j_2fbb1D2.js} +1 -1
  74. package/build/client/_app/immutable/chunks/j_2fbb1D2.js.br +0 -0
  75. package/build/client/_app/immutable/chunks/j_2fbb1D2.js.gz +0 -0
  76. package/build/client/_app/immutable/chunks/kF7Ff6kI2.js +1 -0
  77. package/build/client/_app/immutable/chunks/kF7Ff6kI2.js.br +0 -0
  78. package/build/client/_app/immutable/chunks/kF7Ff6kI2.js.gz +0 -0
  79. package/build/client/_app/immutable/chunks/{BnXjNPst2.js → m6hfVWqp2.js} +1 -1
  80. package/build/client/_app/immutable/chunks/m6hfVWqp2.js.br +0 -0
  81. package/build/client/_app/immutable/chunks/m6hfVWqp2.js.gz +0 -0
  82. package/build/client/_app/immutable/entry/{app.vmpO2T7W.js → app.BoGKtCbP.js} +2 -2
  83. package/build/client/_app/immutable/entry/app.BoGKtCbP.js.br +0 -0
  84. package/build/client/_app/immutable/entry/app.BoGKtCbP.js.gz +0 -0
  85. package/build/client/_app/immutable/entry/start.CGYUjE_a.js +1 -0
  86. package/build/client/_app/immutable/entry/start.CGYUjE_a.js.br +1 -0
  87. package/build/client/_app/immutable/entry/start.CGYUjE_a.js.gz +0 -0
  88. package/build/client/_app/immutable/nodes/{0.qoKQn--w.js → 0.D2l1xsYO.js} +1 -1
  89. package/build/client/_app/immutable/nodes/0.D2l1xsYO.js.br +0 -0
  90. package/build/client/_app/immutable/nodes/0.D2l1xsYO.js.gz +0 -0
  91. package/build/client/_app/immutable/nodes/{1.CER_7ska.js → 1.C41ljjsg.js} +1 -1
  92. package/build/client/_app/immutable/nodes/1.C41ljjsg.js.br +2 -0
  93. package/build/client/_app/immutable/nodes/1.C41ljjsg.js.gz +0 -0
  94. package/build/client/_app/immutable/nodes/{11.CxS5hZWC.js → 11.cksFH0wF.js} +1 -1
  95. package/build/client/_app/immutable/nodes/11.cksFH0wF.js.br +0 -0
  96. package/build/client/_app/immutable/nodes/11.cksFH0wF.js.gz +0 -0
  97. package/build/client/_app/immutable/nodes/{12.C29FaMcf.js → 12.iC-hNmiA.js} +1 -1
  98. package/build/client/_app/immutable/nodes/12.iC-hNmiA.js.br +0 -0
  99. package/build/client/_app/immutable/nodes/12.iC-hNmiA.js.gz +0 -0
  100. package/build/client/_app/immutable/nodes/{13.G3Q6sIJn.js → 13.CncQNyXC.js} +1 -1
  101. package/build/client/_app/immutable/nodes/13.CncQNyXC.js.br +0 -0
  102. package/build/client/_app/immutable/nodes/13.CncQNyXC.js.gz +0 -0
  103. package/build/client/_app/immutable/nodes/{14.CiDtyE0J.js → 14.ChOUpRmd.js} +1 -1
  104. package/build/client/_app/immutable/nodes/14.ChOUpRmd.js.br +0 -0
  105. package/build/client/_app/immutable/nodes/14.ChOUpRmd.js.gz +0 -0
  106. package/build/client/_app/immutable/nodes/{15.6a1Z5OgA.js → 15.g5Y872zQ.js} +1 -1
  107. package/build/client/_app/immutable/nodes/15.g5Y872zQ.js.br +0 -0
  108. package/build/client/_app/immutable/nodes/15.g5Y872zQ.js.gz +0 -0
  109. package/build/client/_app/immutable/nodes/{16.BZ7dint1.js → 16.CwBnCMQO.js} +1 -1
  110. package/build/client/_app/immutable/nodes/16.CwBnCMQO.js.br +0 -0
  111. package/build/client/_app/immutable/nodes/16.CwBnCMQO.js.gz +0 -0
  112. package/build/client/_app/immutable/nodes/{2.BCvGSWSR.js → 2.Bt4Iqxol.js} +1 -1
  113. package/build/client/_app/immutable/nodes/2.Bt4Iqxol.js.br +0 -0
  114. package/build/client/_app/immutable/nodes/2.Bt4Iqxol.js.gz +0 -0
  115. package/build/client/_app/immutable/nodes/{3.DX8L1NwG.js → 3.BRgVPHQO.js} +1 -1
  116. package/build/client/_app/immutable/nodes/3.BRgVPHQO.js.br +0 -0
  117. package/build/client/_app/immutable/nodes/3.BRgVPHQO.js.gz +0 -0
  118. package/build/client/_app/immutable/nodes/{4.C-RdaoBn.js → 4.CeWHKt3l.js} +1 -1
  119. package/build/client/_app/immutable/nodes/4.CeWHKt3l.js.br +0 -0
  120. package/build/client/_app/immutable/nodes/4.CeWHKt3l.js.gz +0 -0
  121. package/build/client/_app/immutable/nodes/{5.DHqpNLi-.js → 5.BsDykxT_.js} +2 -2
  122. package/build/client/_app/immutable/nodes/5.BsDykxT_.js.br +0 -0
  123. package/build/client/_app/immutable/nodes/5.BsDykxT_.js.gz +0 -0
  124. package/build/client/_app/immutable/nodes/{6.qe40qnap.js → 6.D27zNYvX.js} +1 -1
  125. package/build/client/_app/immutable/nodes/6.D27zNYvX.js.br +0 -0
  126. package/build/client/_app/immutable/nodes/6.D27zNYvX.js.gz +0 -0
  127. package/build/client/_app/immutable/nodes/{7.B6YxOsoe.js → 7.DowKev60.js} +1 -1
  128. package/build/client/_app/immutable/nodes/7.DowKev60.js.br +0 -0
  129. package/build/client/_app/immutable/nodes/7.DowKev60.js.gz +0 -0
  130. package/build/client/_app/immutable/nodes/{8.CBpQ7YN-.js → 8.TZdtToNp.js} +1 -1
  131. package/build/client/_app/immutable/nodes/8.TZdtToNp.js.br +0 -0
  132. package/build/client/_app/immutable/nodes/8.TZdtToNp.js.gz +0 -0
  133. package/build/client/_app/immutable/nodes/{9.BkHM1utz.js → 9.D1ZY4q0l.js} +1 -1
  134. package/build/client/_app/immutable/nodes/9.D1ZY4q0l.js.br +0 -0
  135. package/build/client/_app/immutable/nodes/9.D1ZY4q0l.js.gz +0 -0
  136. package/build/client/_app/version.json +1 -1
  137. package/build/client/_app/version.json.br +0 -0
  138. package/build/client/_app/version.json.gz +0 -0
  139. package/build/server/chunks/0-C67Giiqz.js +15 -0
  140. package/build/server/chunks/1-D4TEKZxt.js +9 -0
  141. package/build/server/chunks/11-JKWtxQrH.js +9 -0
  142. package/build/server/chunks/12-Cy5zVfzG.js +9 -0
  143. package/build/server/chunks/13-Cyv2nG1W.js +9 -0
  144. package/build/server/chunks/14-Dpp_GKen.js +9 -0
  145. package/build/server/chunks/15-Cgbjy5Fv.js +9 -0
  146. package/build/server/chunks/16-B54PgQ3v.js +9 -0
  147. package/build/server/chunks/2-CBlBs4e7.js +9 -0
  148. package/build/server/chunks/{3-SeMwqxmb.js → 3-BeZ4I6nb.js} +3 -3
  149. package/build/server/chunks/4-Cr4eJKVo.js +16 -0
  150. package/build/server/chunks/5-BB-F-IMG.js +9 -0
  151. package/build/server/chunks/6-W_zj8m6s.js +9 -0
  152. package/build/server/chunks/7-BzVt_L8e.js +9 -0
  153. package/build/server/chunks/8-F74e52_o.js +9 -0
  154. package/build/server/chunks/9-VglDkcOF.js +9 -0
  155. package/build/server/chunks/{DeleteFeature-DE-3RZ2b.js → DeleteFeature-C-0RJeFW.js} +5 -4
  156. package/build/server/chunks/{DeleteProject-BPtLIg9P.js → DeleteProject-DJvXB5DR.js} +2 -2
  157. package/build/server/chunks/{DigestView-sP9bkEvU.js → DigestView-Bc6k5k3-.js} +3 -3
  158. package/build/server/chunks/{FeatureCard-D-R-qvuO.js → FeatureCard-DeKMF5V8.js} +4 -4
  159. package/build/server/chunks/{FeatureJson-CQd7hjHT.js → FeatureJson-BoxOjsY6.js} +2 -2
  160. package/build/server/chunks/{FeatureTransforms-CbzB1XIp.js → FeatureTransforms-Ce5inqgh.js} +2 -2
  161. package/build/server/chunks/{ManageTagsDialog-Cer8H3Ez.js → ManageTagsDialog-CVU8mDqF.js} +5 -5
  162. package/build/server/chunks/{ProgressBar-BNGdXSZ6.js → ProgressBar-DXpOQRB8.js} +2 -2
  163. package/build/server/chunks/{ProjectionViewer-BnRASq1Y.js → ProjectionViewer-DGH0qozK.js} +5 -5
  164. package/build/server/chunks/{ProjectsIndex-uQ5h2PyR.js → ProjectsIndex-D1cxuUk9.js} +10 -10
  165. package/build/server/chunks/{RenameTag-CY-VSX7n.js → RenameTag-Bj6Ma2hM.js} +2 -2
  166. package/build/server/chunks/{ScenarioApplier-F4gjKYXA.js → ScenarioApplier-lJmwGaNE.js} +2 -2
  167. package/build/server/chunks/{SimulationClock-BSIt5t00.js → SimulationClock-htaCZkF-.js} +2 -2
  168. package/build/server/chunks/{SimulatorEngine-B5qETs6q.js → SimulatorEngine-B3SFrB6Z.js} +51 -29
  169. package/build/server/chunks/{TagDotStrip-LFLm40Mg.js → TagDotStrip-akUNaLK0.js} +4 -4
  170. package/build/server/chunks/{TagFilterSelect-B9wHuewI.js → TagFilterSelect-JpXYvcx3.js} +7 -7
  171. package/build/server/chunks/{TagPalette-CbroGmlj.js → TagPalette-BRFwaJjA.js} +15 -3
  172. package/build/server/chunks/{_layout.svelte-CnwVmdlP.js → _layout.svelte-XYiCBYdR.js} +18 -18
  173. package/build/server/chunks/{_page.svelte-BUCA93DM.js → _page.svelte-BABuSfQV.js} +20 -20
  174. package/build/server/chunks/{_page.svelte-Drheu4Sc.js → _page.svelte-BF1rZX3W.js} +15 -15
  175. package/build/server/chunks/{_page.svelte-BaF3pHgB.js → _page.svelte-BIPuluus.js} +14 -14
  176. package/build/server/chunks/{_page.svelte-Dq0Tdkcm.js → _page.svelte-BX7sPTsd.js} +14 -14
  177. package/build/server/chunks/{_page.svelte-DFP_li5t.js → _page.svelte-Bhh4sSnB.js} +17 -17
  178. package/build/server/chunks/{_page.svelte-1NQEREb2.js → _page.svelte-Bj9UPFlS.js} +24 -19
  179. package/build/server/chunks/{_page.svelte-BmSS2QNT.js → _page.svelte-CVVhryMZ.js} +11 -11
  180. package/build/server/chunks/{_page.svelte-B0dI7FlY.js → _page.svelte-CjGy40CV.js} +15 -15
  181. package/build/server/chunks/{_page.svelte-BjD6Q_5v.js → _page.svelte-CpnSlvUc.js} +10 -10
  182. package/build/server/chunks/{_page.svelte-Dn0VbwtV.js → _page.svelte-Cszy-ZLO.js} +13 -13
  183. package/build/server/chunks/{_page.svelte-CQT9ve4u.js → _page.svelte-DOL20vdP.js} +13 -13
  184. package/build/server/chunks/_page.svelte-OT0nZoW2.js +37 -0
  185. package/build/server/chunks/_page.svelte-TsXHWCXP.js +37 -0
  186. package/build/server/chunks/{_page.svelte-DROmfQ25.js → _page.svelte-lAHWug7_.js} +14 -14
  187. package/build/server/chunks/{_server.ts-BnuhqwaJ.js → _server.ts-0ElCHXbG.js} +5 -5
  188. package/build/server/chunks/{_server.ts-CnMprzbG.js → _server.ts-BYXrkEFe.js} +4 -4
  189. package/build/server/chunks/{_server.ts-CIz2rGpR.js → _server.ts-BtJ5IP-M.js} +7 -7
  190. package/build/server/chunks/{_server.ts-2urZgAS9.js → _server.ts-CCl3IQPG.js} +7 -7
  191. package/build/server/chunks/{_server.ts-CQWsV6ZV.js → _server.ts-CPFhLm4S.js} +4 -4
  192. package/build/server/chunks/{_server.ts-BrnnOMny.js → _server.ts-CUstD9T_.js} +6 -6
  193. package/build/server/chunks/{_server.ts-C0Zb1cgb.js → _server.ts-CWwUVXTu.js} +5 -5
  194. package/build/server/chunks/{_server.ts-ChSbFwzR.js → _server.ts-ChVZie6n.js} +4 -4
  195. package/build/server/chunks/{_server.ts-BgjSHMu3.js → _server.ts-D-hWM98k.js} +4 -4
  196. package/build/server/chunks/{_server.ts-C2JEr8Ms.js → _server.ts-D7CeBX6G.js} +4 -4
  197. package/build/server/chunks/{_server.ts-CQdrnL9E.js → _server.ts-DAK1uZqQ.js} +4 -4
  198. package/build/server/chunks/{_server.ts-fqltL-8B.js → _server.ts-DDJ1CJmi.js} +4 -4
  199. package/build/server/chunks/{_server.ts-CD1VpPeh.js → _server.ts-DaPmxSzD.js} +4 -4
  200. package/build/server/chunks/{_server.ts-CrPa9LE0.js → _server.ts-DanVrsO_.js} +4 -4
  201. package/build/server/chunks/{_server.ts-C7wV323V.js → _server.ts-DbDbbE8L.js} +8 -8
  202. package/build/server/chunks/{_server.ts-Drbtrq8V.js → _server.ts-Do7W0Hva.js} +7 -7
  203. package/build/server/chunks/{_server.ts--1a7NsXG.js → _server.ts-DqhRyh23.js} +4 -4
  204. package/build/server/chunks/{_server.ts-DV5s47_V.js → _server.ts-l6LlaJtw.js} +4 -4
  205. package/build/server/chunks/{browserContainer-D_2TJuP-.js → browserContainer-f9Fxc9Ip.js} +7 -7
  206. package/build/server/chunks/{buildSearchDocs-DPRjpkAj.js → buildSearchDocs-Dp3eMgv-.js} +2 -2
  207. package/build/server/chunks/{builderModeStore.svelte-BY30XYLJ.js → builderModeStore.svelte-Cq1G1oUM.js} +7 -7
  208. package/build/server/chunks/{client-B0bcPJeN.js → client-BsBoZ_uZ.js} +2 -2
  209. package/build/server/chunks/{error.svelte-B5IrBKdc.js → error.svelte-CSlSmxpR.js} +4 -4
  210. package/build/server/chunks/{featureQueueContext-BuXDR14x.js → featureQueueContext-BBZ5nfog.js} +2 -2
  211. package/build/server/chunks/{featureStore.svelte-BdgsfQDX.js → featureStore.svelte-B_DzQPpz.js} +5 -5
  212. package/build/server/chunks/{internal-Ba5KvKbV.js → internal-DwL-IGZS.js} +2 -2
  213. package/build/server/chunks/{projectBundleClient-D1962hal.js → projectBundleClient-DiNldrQC.js} +3 -3
  214. package/build/server/chunks/{projectContextStore.svelte-COGVBGnw.js → projectContextStore.svelte-BOQaFWQu.js} +3 -3
  215. package/build/server/chunks/{projectFeaturesStore.svelte-BBR-EhGC.js → projectFeaturesStore.svelte-DpLnV8j6.js} +2 -2
  216. package/build/server/chunks/{projectStore.svelte-DgQmCxMU.js → projectStore.svelte-DUesqJNB.js} +4 -4
  217. package/build/server/chunks/{reconcile-D7A5sTg2.js → reconcile-zgOYJYbP.js} +2 -2
  218. package/build/server/chunks/{snapshotRepository-B5Hqj2v7.js → snapshotRepository-CNzTq4py.js} +3 -3
  219. package/build/server/chunks/{state-U7AhtEk3.js → state-BRTzak3G.js} +3 -3
  220. package/build/server/chunks/{stores-DN4bP6Fh.js → stores-uVljJ-SP.js} +3 -3
  221. package/build/server/chunks/{sync-DoAYV9CG.js → sync-DzhcwD3l.js} +2 -2
  222. package/build/server/chunks/{syncAwareRepositories-AXOwohe8.js → syncAwareRepositories-B8hccc-z.js} +2 -2
  223. package/build/server/chunks/{tagPaletteStore.svelte-BF7ri4-8.js → tagPaletteStore.svelte-DUHRIfMM.js} +4 -4
  224. package/build/server/index.js +1 -1
  225. package/build/server/manifest.js +35 -35
  226. package/cli/scenarios/codegen.ts +4 -0
  227. package/mcp-server/resources/operations.ts +17 -4
  228. package/mcp-server/tools/read.ts +108 -0
  229. package/mcp-server/tools/rule.ts +1 -1
  230. package/mcp-server/tools/scenario.ts +2 -0
  231. package/mcp-server/tools/specGaps.ts +59 -4
  232. package/package.json +1 -1
  233. package/src/features/behavior-model/domain/entities/Constant.ts +32 -0
  234. package/src/features/behavior-model/domain/entities/Feature.ts +9 -0
  235. package/src/features/behavior-model/domain/services/DerivedState.ts +6 -2
  236. package/src/features/behavior-model/domain/services/EffectApplier.ts +10 -6
  237. package/src/features/behavior-model/domain/services/FeatureSharedStateNormalizer.ts +1 -0
  238. package/src/features/behavior-model/domain/services/InvariantChecker.ts +3 -2
  239. package/src/features/behavior-model/domain/services/RuleEvaluator.ts +5 -2
  240. package/src/features/behavior-model/domain/services/StatePathReferences.ts +2 -0
  241. package/src/features/behavior-model/domain/services/validation/referenceIntegrity.ts +3 -0
  242. package/src/features/behavior-model/domain/value-objects/Expression.ts +21 -0
  243. package/src/features/behavior-model/domain/value-objects/Operator.ts +8 -0
  244. package/src/features/behavior-model/domain/value-objects/ids.ts +2 -0
  245. package/src/features/maturity/domain/MaturityScorer.ts +1 -0
  246. package/src/features/mcp-tools/application/tools/getDigest.ts +52 -0
  247. package/src/features/mcp-tools/application/tools/index.ts +6 -0
  248. package/src/features/simulator/domain/SimulatorEngine.ts +53 -13
  249. package/build/client/_app/immutable/chunks/B-duocHJ.js.br +0 -0
  250. package/build/client/_app/immutable/chunks/B-duocHJ.js.gz +0 -0
  251. package/build/client/_app/immutable/chunks/B-nR0Q3f.js.br +0 -0
  252. package/build/client/_app/immutable/chunks/B-nR0Q3f.js.gz +0 -0
  253. package/build/client/_app/immutable/chunks/B40Y6LyW2.js.br +0 -0
  254. package/build/client/_app/immutable/chunks/B40Y6LyW2.js.gz +0 -0
  255. package/build/client/_app/immutable/chunks/BNNcE74V.js.br +0 -0
  256. package/build/client/_app/immutable/chunks/BNNcE74V.js.gz +0 -0
  257. package/build/client/_app/immutable/chunks/BYlGYFfX2.js.br +0 -0
  258. package/build/client/_app/immutable/chunks/BYlGYFfX2.js.gz +0 -0
  259. package/build/client/_app/immutable/chunks/BiCeHePl.js +0 -1
  260. package/build/client/_app/immutable/chunks/BiCeHePl.js.br +0 -2
  261. package/build/client/_app/immutable/chunks/BiCeHePl.js.gz +0 -0
  262. package/build/client/_app/immutable/chunks/BkBJU1hz2.js.br +0 -0
  263. package/build/client/_app/immutable/chunks/BkBJU1hz2.js.gz +0 -0
  264. package/build/client/_app/immutable/chunks/BnXjNPst2.js.br +0 -0
  265. package/build/client/_app/immutable/chunks/BnXjNPst2.js.gz +0 -0
  266. package/build/client/_app/immutable/chunks/Bpq8kJkb.js.br +0 -0
  267. package/build/client/_app/immutable/chunks/Bpq8kJkb.js.gz +0 -0
  268. package/build/client/_app/immutable/chunks/Bt8Ir-i1.js.br +0 -0
  269. package/build/client/_app/immutable/chunks/Bt8Ir-i1.js.gz +0 -0
  270. package/build/client/_app/immutable/chunks/Bw8aCT1Q2.js.br +0 -0
  271. package/build/client/_app/immutable/chunks/Bw8aCT1Q2.js.gz +0 -0
  272. package/build/client/_app/immutable/chunks/BwJIzYpC2.js.br +0 -0
  273. package/build/client/_app/immutable/chunks/BwJIzYpC2.js.gz +0 -0
  274. package/build/client/_app/immutable/chunks/CAtyGLyp2.js.br +0 -5
  275. package/build/client/_app/immutable/chunks/CAtyGLyp2.js.gz +0 -0
  276. package/build/client/_app/immutable/chunks/CfhTGim_.js.br +0 -0
  277. package/build/client/_app/immutable/chunks/CfhTGim_.js.gz +0 -0
  278. package/build/client/_app/immutable/chunks/CuahcwUn.js.br +0 -0
  279. package/build/client/_app/immutable/chunks/CuahcwUn.js.gz +0 -0
  280. package/build/client/_app/immutable/chunks/CyN2OJjk.js.br +0 -0
  281. package/build/client/_app/immutable/chunks/CyN2OJjk.js.gz +0 -0
  282. package/build/client/_app/immutable/chunks/D8TG_CZy2.js.br +0 -0
  283. package/build/client/_app/immutable/chunks/D8TG_CZy2.js.gz +0 -0
  284. package/build/client/_app/immutable/chunks/DDKHPhI8.js.br +0 -0
  285. package/build/client/_app/immutable/chunks/DDKHPhI8.js.gz +0 -0
  286. package/build/client/_app/immutable/chunks/DGz3YZQB.js.br +0 -0
  287. package/build/client/_app/immutable/chunks/DGz3YZQB.js.gz +0 -0
  288. package/build/client/_app/immutable/chunks/DORQYps52.js.br +0 -0
  289. package/build/client/_app/immutable/chunks/DORQYps52.js.gz +0 -0
  290. package/build/client/_app/immutable/chunks/DX8e74SH.js.br +0 -0
  291. package/build/client/_app/immutable/chunks/DX8e74SH.js.gz +0 -0
  292. package/build/client/_app/immutable/chunks/DfrZClGN.js.br +0 -0
  293. package/build/client/_app/immutable/chunks/DfrZClGN.js.gz +0 -0
  294. package/build/client/_app/immutable/chunks/Dp0FovUz2.js.br +0 -0
  295. package/build/client/_app/immutable/chunks/Dp0FovUz2.js.gz +0 -0
  296. package/build/client/_app/immutable/chunks/DsW-fl3n.js.br +0 -0
  297. package/build/client/_app/immutable/chunks/DsW-fl3n.js.gz +0 -0
  298. package/build/client/_app/immutable/chunks/Dz7lEIMt.js +0 -1
  299. package/build/client/_app/immutable/chunks/Dz7lEIMt.js.br +0 -0
  300. package/build/client/_app/immutable/chunks/Dz7lEIMt.js.gz +0 -0
  301. package/build/client/_app/immutable/chunks/L9Wh3w302.js +0 -1
  302. package/build/client/_app/immutable/chunks/L9Wh3w302.js.br +0 -0
  303. package/build/client/_app/immutable/chunks/L9Wh3w302.js.gz +0 -0
  304. package/build/client/_app/immutable/chunks/YZICekcT.js.br +0 -0
  305. package/build/client/_app/immutable/chunks/YZICekcT.js.gz +0 -0
  306. package/build/client/_app/immutable/entry/app.vmpO2T7W.js.br +0 -0
  307. package/build/client/_app/immutable/entry/app.vmpO2T7W.js.gz +0 -0
  308. package/build/client/_app/immutable/entry/start.C55Lvj0g.js +0 -1
  309. package/build/client/_app/immutable/entry/start.C55Lvj0g.js.br +0 -0
  310. package/build/client/_app/immutable/entry/start.C55Lvj0g.js.gz +0 -0
  311. package/build/client/_app/immutable/nodes/0.qoKQn--w.js.br +0 -0
  312. package/build/client/_app/immutable/nodes/0.qoKQn--w.js.gz +0 -0
  313. package/build/client/_app/immutable/nodes/1.CER_7ska.js.br +0 -3
  314. package/build/client/_app/immutable/nodes/1.CER_7ska.js.gz +0 -0
  315. package/build/client/_app/immutable/nodes/11.CxS5hZWC.js.br +0 -0
  316. package/build/client/_app/immutable/nodes/11.CxS5hZWC.js.gz +0 -0
  317. package/build/client/_app/immutable/nodes/12.C29FaMcf.js.br +0 -0
  318. package/build/client/_app/immutable/nodes/12.C29FaMcf.js.gz +0 -0
  319. package/build/client/_app/immutable/nodes/13.G3Q6sIJn.js.br +0 -0
  320. package/build/client/_app/immutable/nodes/13.G3Q6sIJn.js.gz +0 -0
  321. package/build/client/_app/immutable/nodes/14.CiDtyE0J.js.br +0 -0
  322. package/build/client/_app/immutable/nodes/14.CiDtyE0J.js.gz +0 -0
  323. package/build/client/_app/immutable/nodes/15.6a1Z5OgA.js.br +0 -0
  324. package/build/client/_app/immutable/nodes/15.6a1Z5OgA.js.gz +0 -0
  325. package/build/client/_app/immutable/nodes/16.BZ7dint1.js.br +0 -0
  326. package/build/client/_app/immutable/nodes/16.BZ7dint1.js.gz +0 -0
  327. package/build/client/_app/immutable/nodes/2.BCvGSWSR.js.br +0 -0
  328. package/build/client/_app/immutable/nodes/2.BCvGSWSR.js.gz +0 -0
  329. package/build/client/_app/immutable/nodes/3.DX8L1NwG.js.br +0 -0
  330. package/build/client/_app/immutable/nodes/3.DX8L1NwG.js.gz +0 -0
  331. package/build/client/_app/immutable/nodes/4.C-RdaoBn.js.br +0 -0
  332. package/build/client/_app/immutable/nodes/4.C-RdaoBn.js.gz +0 -0
  333. package/build/client/_app/immutable/nodes/5.DHqpNLi-.js.br +0 -0
  334. package/build/client/_app/immutable/nodes/5.DHqpNLi-.js.gz +0 -0
  335. package/build/client/_app/immutable/nodes/6.qe40qnap.js.br +0 -0
  336. package/build/client/_app/immutable/nodes/6.qe40qnap.js.gz +0 -0
  337. package/build/client/_app/immutable/nodes/7.B6YxOsoe.js.br +0 -0
  338. package/build/client/_app/immutable/nodes/7.B6YxOsoe.js.gz +0 -0
  339. package/build/client/_app/immutable/nodes/8.CBpQ7YN-.js.br +0 -0
  340. package/build/client/_app/immutable/nodes/8.CBpQ7YN-.js.gz +0 -0
  341. package/build/client/_app/immutable/nodes/9.BkHM1utz.js.br +0 -0
  342. package/build/client/_app/immutable/nodes/9.BkHM1utz.js.gz +0 -0
  343. package/build/server/chunks/0-DSFA_Bb9.js +0 -15
  344. package/build/server/chunks/1-BwwzBqTb.js +0 -9
  345. package/build/server/chunks/11-C4I9N-aS.js +0 -9
  346. package/build/server/chunks/12-C39MQICH.js +0 -9
  347. package/build/server/chunks/13-C7hEZequ.js +0 -9
  348. package/build/server/chunks/14-Cc2E3DET.js +0 -9
  349. package/build/server/chunks/15-C3zjzlfF.js +0 -9
  350. package/build/server/chunks/16-DwEY1iTf.js +0 -9
  351. package/build/server/chunks/2-Du6IuYNA.js +0 -9
  352. package/build/server/chunks/4-DiWbB1M5.js +0 -16
  353. package/build/server/chunks/5-DSCQTuoC.js +0 -9
  354. package/build/server/chunks/6-NnEpqfOa.js +0 -9
  355. package/build/server/chunks/7-DHkackDf.js +0 -9
  356. package/build/server/chunks/8-4wTCMW8s.js +0 -9
  357. package/build/server/chunks/9-DLSjXbuB.js +0 -9
  358. package/build/server/chunks/_page.svelte-3l5VeVfw.js +0 -37
  359. package/build/server/chunks/_page.svelte-CCJEAAff.js +0 -37
@@ -1 +1 @@
1
- import{H as e,U as t,V as n,W as r,it as i,lt as a,r as o,rt as s,t as c}from"./D50Xf4Qj.js";import{i as l,n as u,r as d,t as f}from"./BuFlayix.js";new URL(`sveltekit-internal://`);function p(e,t){return e===`/`||t===`ignore`?e:t===`never`?e.endsWith(`/`)?e.slice(0,-1):e:t===`always`&&!e.endsWith(`/`)?e+`/`:e}function ee(e){return e.split(`%25`).map(decodeURI).join(`%25`)}function te(e){for(let t in e)e[t]=decodeURIComponent(e[t]);return e}function m({href:e}){return e.split(`#`)[0]}function h(e,t,n,r=!1){let i=new URL(e);Object.defineProperty(i,"searchParams",{value:new Proxy(i.searchParams,{get(e,r){if(r===`get`||r===`getAll`||r===`has`)return(t,...i)=>(n(t),e[r](t,...i));t();let i=Reflect.get(e,r);return typeof i==`function`?i.bind(e):i}}),enumerable:!0,configurable:!0});let a=[`href`,`pathname`,`search`,`toString`,`toJSON`];r&&a.push(`hash`);for(let n of a)Object.defineProperty(i,n,{get(){return t(),e[n]},enumerable:!0,configurable:!0});return i}function g(){}function ne(...e){let t=5381;for(let n of e)if(typeof n==`string`){let e=n.length;for(;e;)t=t*33^n.charCodeAt(--e)}else if(ArrayBuffer.isView(n)){let e=new Uint8Array(n.buffer,n.byteOffset,n.byteLength),r=e.length;for(;r;)t=t*33^e[--r]}else throw TypeError(`value must be a string or TypedArray`);return(t>>>0).toString(36)}var re=window.fetch;window.fetch=(e,t)=>((e instanceof Request?e.method:t?.method||`GET`)!==`GET`&&_.delete(v(e)),re(e,t));var _=new Map;function ie(e,t){let n=v(e,t),r=document.querySelector(n);if(r?.textContent){r.remove();let{body:e,...t}=JSON.parse(r.textContent),i=r.getAttribute(`data-ttl`);return i&&_.set(n,{body:e,init:t,ttl:1e3*Number(i)}),r.getAttribute(`data-b64`)!==null&&(e=f(e)),Promise.resolve(new Response(e,t))}return window.fetch(e,t)}function ae(e,t,n){if(_.size>0){let t=v(e,n),r=_.get(t);if(r){if(performance.now()<r.ttl&&[`default`,`force-cache`,`only-if-cached`,void 0].includes(n?.cache))return new Response(r.body,r.init);_.delete(t)}}return window.fetch(t,n)}function v(e,t){let n=`script[data-sveltekit-fetched][data-url=${JSON.stringify(e instanceof Request?e.url:e)}]`;if(t?.headers||t?.body){let e=[];t.headers&&e.push([...new Headers(t.headers)].join(`,`)),t.body&&(typeof t.body==`string`||ArrayBuffer.isView(t.body))&&e.push(t.body),n+=`[data-hash="${ne(...e)}"]`}return n}var y=/^(\[)?(\.\.\.)?(\w+)(?:=(\w+))?(\])?$/,oe=/^\/\((?:.+)\)$/;function se(e){let t=[];return{pattern:e===`/`||oe.test(e)?/^\/$/:RegExp(`^${le(e).map(e=>{let n=/^\[\.\.\.(\w+)(?:=(\w+))?\]$/.exec(e);if(n)return t.push({name:n[1],matcher:n[2],optional:!1,rest:!0,chained:!0}),`(?:/([^]*))?`;let r=/^\[\[(\w+)(?:=(\w+))?\]\]$/.exec(e);if(r)return t.push({name:r[1],matcher:r[2],optional:!0,rest:!1,chained:!0}),`(?:/([^/]+))?`;if(!e)return;let i=e.split(/\[(.+?)\](?!\])/);return`/`+i.map((e,n)=>{if(n%2){if(e.startsWith(`x+`))return de(String.fromCharCode(parseInt(e.slice(2),16)));if(e.startsWith(`u+`))return de(String.fromCharCode(...e.slice(2).split(`-`).map(e=>parseInt(e,16))));let[,r,a,o,s]=y.exec(e);return t.push({name:o,matcher:s,optional:!!r,rest:!!a,chained:a?n===1&&i[0]===``:!1}),a?`([^]*?)`:r?`([^/]*)?`:`([^/]+?)`}return de(e)}).join(``)}).join(``)}/?$`),params:t}}function ce(e){return e!==``&&!/^\([^)]+\)$/.test(e)}function le(e){return e.slice(1).split(`/`).filter(ce)}function ue(e,t,n){let r={},i=e.slice(1),a=i.filter(e=>e!==void 0),o=0;for(let e=0;e<t.length;e+=1){let s=t[e],c=i[e-o];if(s.chained&&s.rest&&o&&(c=i.slice(e-o,e+1).filter(e=>e).join(`/`),o=0),c===void 0)if(s.rest)c=``;else continue;if(!s.matcher||n[s.matcher](c)){r[s.name]=c;let n=t[e+1],l=i[e+1];n&&!n.rest&&n.optional&&l&&s.chained&&(o=0),!n&&!l&&Object.keys(r).length===a.length&&(o=0);continue}if(s.optional&&s.chained){o++;continue}return}if(!o)return r}function de(e){return e.normalize().replace(/[[\]]/g,`\\$&`).replace(/%/g,`%25`).replace(/\//g,`%2[Ff]`).replace(/\?/g,`%3[Ff]`).replace(/#/g,`%23`).replace(/[.*+?^${}()|\\]/g,`\\$&`)}function fe({nodes:e,server_loads:t,dictionary:n,matchers:r}){let i=new Set(t);return Object.entries(n).map(([t,[n,i,s]])=>{let{pattern:c,params:l}=se(t),u={id:t,exec:e=>{let t=c.exec(e);if(t)return ue(t,l,r)},errors:[1,...s||[]].map(t=>e[t]),layouts:[0,...i||[]].map(o),leaf:a(n)};return u.errors.length=u.layouts.length=Math.max(u.errors.length,u.layouts.length),u});function a(t){let n=t<0;return n&&(t=~t),[n,e[t]]}function o(t){return t===void 0?t:[i.has(t),e[t]]}}function pe(e,t=JSON.parse){try{return t(sessionStorage[e])}catch{}}function me(e,t,n=JSON.stringify){let r=n(t);try{sessionStorage[e]=r}catch{}}var b=globalThis.__sveltekit_1i17lsk?.base??``,he=globalThis.__sveltekit_1i17lsk?.assets??b??``,ge=`1783382728796`,_e=`sveltekit:snapshot`,ve=`sveltekit:scroll`,ye=`sveltekit:states`,be=`sveltekit:pageurl`,x=`sveltekit:history`,S=`sveltekit:navigation`,C={tap:1,hover:2,viewport:3,eager:4,off:-1,false:-1},xe=location.origin;function w(e){if(e instanceof URL)return e;let t=document.baseURI;if(!t){let e=document.getElementsByTagName(`base`);t=e.length?e[0].href:document.URL}return new URL(e,t)}function T(){return{x:pageXOffset,y:pageYOffset}}function E(e,t){return e.getAttribute(`data-sveltekit-${t}`)}var Se={...C,"":C.hover};function Ce(e){let t=e.assignedSlot??e.parentNode;return t?.nodeType===11&&(t=t.host),t}function we(e,t){for(;e&&e!==t;){if(e.nodeName.toUpperCase()===`A`&&e.hasAttribute(`href`))return e;e=Ce(e)}}function Te(e,t,n){let r;try{if(r=new URL(e instanceof SVGAElement?e.href.baseVal:e.href,document.baseURI),n&&r.hash.match(/^#[^/]/)){let e=location.hash.split(`#`)[1]||`/`;r.hash=`#${e}${r.hash}`}}catch{}let i=e instanceof SVGAElement?e.target.baseVal:e.target,a=!r||!!i||O(r,t,n)||(e.getAttribute(`rel`)||``).split(/\s+/).includes(`external`),o=r?.origin===xe&&e.hasAttribute(`download`);return{url:r,external:a,target:i,download:o}}function D(e){let t=null,n=null,r=null,i=null,a=null,o=null,s=e;for(;s&&s!==document.documentElement;)r===null&&(r=E(s,`preload-code`)),i===null&&(i=E(s,`preload-data`)),t===null&&(t=E(s,`keepfocus`)),n===null&&(n=E(s,`noscroll`)),a===null&&(a=E(s,`reload`)),o===null&&(o=E(s,`replacestate`)),s=Ce(s);function c(e){switch(e){case``:case`true`:return!0;case`off`:case`false`:return!1;default:return}}return{preload_code:Se[r??`off`],preload_data:Se[i??`off`],keepfocus:c(t),noscroll:c(n),reload:c(a),replace_state:c(o)}}function Ee(e){let t=a(e),n=!0;function r(){n=!0,t.update(e=>e)}function i(e){n=!1,t.set(e)}function o(e){let r;return t.subscribe(t=>{(r===void 0||n&&t!==r)&&e(r=t)})}return{notify:r,set:i,subscribe:o}}var De={v:g};function Oe(){let{set:e,subscribe:t}=a(!1);async function n(){clearTimeout(void 0);try{let t=await fetch(`${he}/_app/version.json`,{headers:{pragma:`no-cache`,"cache-control":`no-cache`}});if(!t.ok)return!1;let n=(await t.json()).version!==ge;return n&&(e(!0),De.v(),clearTimeout(void 0)),n}catch{return!1}}return{subscribe:t,check:n}}function O(e,t,n){return e.origin!==xe||!e.pathname.startsWith(t)?!0:n?e.pathname!==location.pathname:!1}function ke(e){}Uint8Array.fromBase64,typeof process==`object`&&process.versions?.node;var Ae=new Set([`load`,`prerender`,`csr`,`ssr`,`trailingSlash`,`config`]);new Set([...Ae,`entries`]);var je=new Set([...Ae]);new Set([...je,`actions`,`entries`]),new Set([`GET`,`POST`,`PATCH`,`PUT`,`DELETE`,`OPTIONS`,`HEAD`,`fallback`,`prerender`,`trailingSlash`,`config`,`entries`]);function Me(e){return e.filter(e=>e!=null)}function Ne(e,t){return e+`/`+t}function Pe(e){return e instanceof u||e instanceof l?e.status:500}function Fe(e){return e instanceof l?e.text:`Internal Error`}var k,A,Ie,Le=o.toString().includes(`$$`)||/function \w+\(\) \{\}/.test(o.toString()),Re=`a:`;Le?(k={data:{},form:null,error:null,params:{},route:{id:null},state:{},status:-1,url:new URL(Re)},A={current:null},Ie={current:!1}):(k=new class{#e=i({});get data(){return n(this.#e)}set data(e){s(this.#e,e)}#t=i(null);get form(){return n(this.#t)}set form(e){s(this.#t,e)}#n=i(null);get error(){return n(this.#n)}set error(e){s(this.#n,e)}#r=i({});get params(){return n(this.#r)}set params(e){s(this.#r,e)}#i=i({id:null});get route(){return n(this.#i)}set route(e){s(this.#i,e)}#a=i({});get state(){return n(this.#a)}set state(e){s(this.#a,e)}#o=i(-1);get status(){return n(this.#o)}set status(e){s(this.#o,e)}#s=i(new URL(Re));get url(){return n(this.#s)}set url(e){s(this.#s,e)}},A=new class{#e=i(null);get current(){return n(this.#e)}set current(e){s(this.#e,e)}},Ie=new class{#e=i(!1);get current(){return n(this.#e)}set current(e){s(this.#e,e)}},De.v=()=>Ie.current=!0);function ze(e){Object.assign(k,e)}var Be={spanContext(){return Ve},setAttribute(){return this},setAttributes(){return this},addEvent(){return this},setStatus(){return this},updateName(){return this},end(){return this},isRecording(){return!1},recordException(){return this},addLink(){return this},addLinks(){return this}},Ve={traceId:``,spanId:``,traceFlags:0},{onMount:He,tick:Ue}=c,We=r??(e=>e()),Ge=new Set([`icon`,`shortcut icon`,`apple-touch-icon`]),j=null,M=pe(`sveltekit:scroll`)??{},N=pe(`sveltekit:snapshot`)??{},P={url:Ee({}),page:Ee({}),navigating:a(null),updated:Oe()};function Ke(e){M[e]=T()}function qe(e,t){let n=e+1;for(;M[n];)delete M[n],n+=1;for(n=t+1;N[n];)delete N[n],n+=1}function F(e,t=!1){return t?location.replace(e.href):location.href=e.href,new Promise(g)}async function Je(){if(`serviceWorker`in navigator){let e=await navigator.serviceWorker.getRegistration(b||`/`);e&&await e.update()}}var Ye,Xe,I,L,Ze,R,z=[],B=[],V=null;function H(){V?.fork?.then(e=>e?.discard()),V=null}var U=new Map,Qe=new Set,$e=new Set,W=new Set,G={branch:[],error:null,url:null,nav:null},et=!1,tt=!1,nt=!0,K=!1,q=!1,rt=!1,it=!1,at,J,Y,X,ot=new Set,st=new Map,ct=new Map;async function lt(e,t,n){globalThis.__sveltekit_1i17lsk&&(globalThis.__sveltekit_1i17lsk.query,globalThis.__sveltekit_1i17lsk.prerender),document.URL!==location.href&&(location.href=location.href),R=e,await e.hooks.init?.(),Ye=fe(e),L=document.documentElement,Ze=t,Xe=e.nodes[0],I=e.nodes[1],Xe(),I(),J=history.state?.[x],Y=history.state?.[S],J||(J=Y=Date.now(),history.replaceState({...history.state,[x]:J,[S]:Y},``));let r=M[J];function i(){r&&(history.scrollRestoration=`manual`,scrollTo(r.x,r.y))}n?(i(),await Bt(Ze,n)):(await Q({type:`enter`,url:w(R.hash?Kt(new URL(location.href)):location.href),replace_state:!0}),i()),zt()}function ut(){z.length=0,it=!1}function dt(e){B.some(e=>e?.snapshot)&&(N[e]=B.map(e=>e?.snapshot?.capture()))}function ft(e){N[e]?.forEach((e,t)=>{B[t]?.snapshot?.restore(e)})}function pt(){Ke(J),me(ve,M),dt(Y),me(_e,N)}async function mt(e,n,r,i){let a,o;n.invalidateAll&&H(),await Q({type:`goto`,url:w(e),keepfocus:n.keepFocus,noscroll:n.noScroll,replace_state:n.replaceState,state:n.state,redirect_count:r,nav_token:i,accept:()=>{if(n.invalidateAll){it=!0,a=new Set;for(let[e,t]of st)for(let n of t.keys())a.add(Ne(e,n));o=new Set;for(let[e,t]of ct)for(let n of t.keys())o.add(Ne(e,n))}n.invalidate&&n.invalidate.forEach(Lt)}}),n.invalidateAll&&t().then(t).then(()=>{for(let[e,t]of st)for(let[n,{resource:r}]of t)a?.has(Ne(e,n))&&r.refresh();for(let[e,t]of ct)for(let[n,{resource:r}]of t)o?.has(Ne(e,n))&&r.reconnect()})}async function ht(e){if(e.id!==V?.id){H();let t={};ot.add(t),V={id:e.id,token:t,promise:Tt({...e,preload:t}).then(e=>(ot.delete(t),e.type===`loaded`&&e.state.error&&H(),e)),fork:null}}return V.promise}async function gt(e){let t=(await Z(e,!1))?.route;t&&await Promise.all([...t.layouts,t.leaf].filter(Boolean).map(e=>e[1]()))}async function _t(e,t,n){let r={params:G.params,route:{id:G.route?.id??null},url:new URL(location.href)};if(G={...e.state,nav:r},ze(e.props.page),at=new R.root({target:t,props:{...e.props,stores:P,components:B},hydrate:n,sync:!1,transformError:void 0}),await Promise.resolve(),ft(Y),n){let e={from:null,to:{...r,scroll:M[J]??T()},willUnload:!1,type:`enter`,complete:Promise.resolve()};W.forEach(t=>t(e))}tt=!0}async function vt({url:e,params:t,branch:n,errors:r,status:i,error:a,route:o,form:s}){let c=`never`;if(b&&(e.pathname===b||e.pathname===b+`/`))c=`always`;else for(let e of n)e?.slash!==void 0&&(c=e.slash);e.pathname=p(e.pathname,c),e.search=e.search;let l={type:`loaded`,state:{url:e,params:t,branch:n,error:a,route:o},props:{constructors:Me(n).map(e=>e.node.component),page:Gt(k)}};s!==void 0&&(l.props.form=s);let u={},d=!k,f=0;for(let e=0;e<Math.max(n.length,G.branch.length);e+=1){let t=n[e],r=G.branch[e];t?.data!==r?.data&&(d=!0),t&&(u={...u,...t.data},d&&(l.props[`data_${f}`]=u),f+=1)}return(!G.url||e.href!==G.url.href||G.error!==a||s!==void 0&&s!==k.form||d)&&(l.props.page={error:a,params:t,route:{id:o?.id??null},state:{},status:i,url:new URL(e),form:s??null,data:d?u:k.data}),l}async function yt({loader:e,parent:t,url:n,params:r,route:i,server_data_node:a}){let o=null,s=!0,c={dependencies:new Set,params:new Set,parent:!1,route:!1,url:!1,search_params:new Set},l=await e();if(l.universal?.load){function e(...e){for(let t of e){let{href:e}=new URL(t,n);c.dependencies.add(e)}}let u={tracing:{enabled:!1,root:Be,current:Be},route:new Proxy(i,{get:(e,t)=>(s&&(c.route=!0),e[t])}),params:new Proxy(r,{get:(e,t)=>(s&&c.params.add(t),e[t])}),data:a?.data??null,url:h(n,()=>{s&&(c.url=!0)},e=>{s&&c.search_params.add(e)},R.hash),async fetch(t,r){t instanceof Request&&(r={body:t.method===`GET`||t.method===`HEAD`?void 0:await t.blob(),cache:t.cache,credentials:t.credentials,headers:[...t.headers].length>0?t?.headers:void 0,integrity:t.integrity,keepalive:t.keepalive,method:t.method,mode:t.mode,redirect:t.redirect,referrer:t.referrer,referrerPolicy:t.referrerPolicy,signal:t.signal,...r});let{resolved:i,promise:a}=bt(t,r,n);return s&&e(i.href),a},setHeaders:g,depends:e,parent(){return s&&(c.parent=!0),t()},untrack(e){s=!1;try{return e()}finally{s=!0}}};o=await l.universal.load.call(null,u)??null}return{node:l,loader:e,server:a,universal:l.universal?.load?{type:`data`,data:o,uses:c}:null,data:o??a?.data??null,slash:l.universal?.trailingSlash??a?.slash}}function bt(e,t,n){let r=e instanceof Request?e.url:e,i=new URL(r,n);return i.origin===n.origin&&(r=i.href.slice(n.origin.length)),{resolved:i,promise:tt?ae(r,i.href,t):ie(r,t)}}function xt(e,t,n,r,i,a){if(it)return!0;if(!i)return!1;if(i.parent&&e||i.route&&t||i.url&&n)return!0;for(let e of i.search_params)if(r.has(e))return!0;for(let e of i.params)if(a[e]!==G.params[e])return!0;for(let e of i.dependencies)if(z.some(t=>t(new URL(e))))return!0;return!1}function St(e,t){return e?.type===`data`?e:e?.type===`skip`?t??null:null}function Ct(e,t){if(!e)return new Set(t.searchParams.keys());let n=new Set([...e.searchParams.keys(),...t.searchParams.keys()]);for(let r of n){let i=e.searchParams.getAll(r),a=t.searchParams.getAll(r);i.every(e=>a.includes(e))&&a.every(e=>i.includes(e))&&n.delete(r)}return n}function wt({error:e,url:t,route:n,params:r}){return{type:`loaded`,state:{error:e,url:t,route:n,params:r,branch:[]},props:{page:Gt(k),constructors:[]}}}async function Tt({id:e,invalidating:t,url:n,params:r,route:i,preload:a}){if(V?.id===e)return ot.delete(V.token),V.promise;let{errors:o,layouts:s,leaf:c}=i,l=[...s,c];o.forEach(e=>e?.().catch(g)),l.forEach(e=>e?.[1]().catch(g));let f=G.url?e!==At(G.url):!1,p=G.route?i.id!==G.route.id:!1,ee=Ct(G.url,n),te=!1,m=l.map(async(e,t)=>{if(!e)return;let a=G.branch[t];return e[1]===a?.loader&&!xt(te,p,f,ee,a.universal?.uses,r)?a:(te=!0,yt({loader:e[1],url:n,params:r,route:i,parent:async()=>{let e={};for(let n=0;n<t;n+=1)Object.assign(e,(await m[n])?.data);return e},server_data_node:St(e[0]?{type:`skip`}:null,e[0]?a?.server:void 0)}))});for(let e of m)e.catch(g);let h=[];for(let e=0;e<l.length;e+=1)if(l[e])try{h.push(await m[e])}catch(t){if(t instanceof d)return{type:`redirect`,location:t.location};if(ot.has(a))return wt({error:await $(t,{params:r,url:n,route:{id:i.id}}),url:n,params:r,route:i});let s=Pe(t),c;if(t instanceof u)c=t.body;else{if(await P.updated.check())return await Je(),await F(n);c=await $(t,{params:r,url:n,route:{id:i.id}})}let l=await Et(e,h,o);return l?vt({url:n,params:r,branch:h.slice(0,l.idx).concat(l.node),errors:o,status:s,error:c,route:i}):await Mt(n,{id:i.id},c,s)}else h.push(void 0);return vt({url:n,params:r,branch:h,errors:o,status:200,error:null,route:i,form:t?void 0:null})}async function Et(e,t,n){for(;e--;)if(n[e]){let r=e;for(;!t[r];)--r;try{return{idx:r+1,node:{node:await n[e](),loader:n[e],data:{},server:null,universal:null}}}catch{continue}}}async function Dt({status:e,error:t,url:n,route:r}){let i={};try{return vt({url:n,params:i,branch:[await yt({loader:Xe,url:n,params:i,route:r,parent:()=>Promise.resolve({}),server_data_node:St(null)}),{node:await I(),loader:I,universal:null,server:null,data:null}],status:e,error:t,errors:[],route:null})}catch(e){if(e instanceof d)return mt(new URL(e.location,location.href),{},0);throw e}}async function Ot(e){let t=e.href;if(U.has(t))return U.get(t);let n;try{let r=(async()=>{let t=await R.hooks.reroute({url:new URL(e),fetch:async(t,n)=>bt(t,n,e).promise})??e;if(typeof t==`string`){let n=new URL(e);R.hash?n.hash=t:n.pathname=t,t=n}return t})();U.set(t,r),n=await r}catch{U.delete(t);return}return n}async function Z(e,t){if(e&&!O(e,b,R.hash)){let n=await Ot(e);if(!n)return;let r=kt(n);for(let n of Ye){let i=n.exec(r);if(i)return{id:At(e),invalidating:t,route:n,params:te(i),url:e}}}}function kt(e){return ee(R.hash?e.hash.replace(/^#/,``).replace(/[?#].+/,``):e.pathname.slice(b.length))||`/`}function At(e){return(R.hash?e.hash.replace(/^#/,``):e.pathname)+e.search}function jt({url:e,type:t,intent:n,delta:r,event:i,scroll:a}){let o=!1,s=Wt(G,n,e,t,a??null);r!==void 0&&(s.navigation.delta=r),i!==void 0&&(s.navigation.event=i);let c={...s.navigation,cancel:()=>{o=!0,s.reject(Error(`navigation cancelled`))}};return K||Qe.forEach(e=>e(c)),o?null:s}async function Q({type:n,url:r,popped:i,keepfocus:a,noscroll:o,replace_state:s,state:c={},redirect_count:u=0,nav_token:d={},accept:f=g,block:p=g,event:ee}){let te=X;X=d;let m=await Z(r,!1),h=n===`enter`?Wt(G,m,r,n):jt({url:r,type:n,delta:i?.delta,intent:m,scroll:i?.scroll,event:ee});if(!h){p(),X===d&&(X=te);return}let ne=J,re=Y;f(),K=!0,tt&&h.navigation.type!==`enter`&&P.navigating.set(A.current=h.navigation);let _=m&&await Tt(m);if(!_){if(O(r,b,R.hash))return await F(r,s);_=await Mt(r,{id:null},await $(new l(404,`Not Found`,`Not found: ${r.pathname}`),{url:r,params:{},route:{id:null}}),404,s)}if(r=m?.url||r,X!==d)return h.reject(Error(`navigation aborted`)),!1;if(_.type===`redirect`){if(u<20){await Q({type:n,url:new URL(_.location,r),popped:i,keepfocus:a,noscroll:o,replace_state:s,state:c,redirect_count:u+1,nav_token:d}),h.fulfil(void 0);return}_=await Dt({status:500,error:await $(Error(`Redirect loop`),{url:r,params:{},route:{id:null}}),url:r,route:{id:null}})}else _.props.page.status>=400&&await P.updated.check()&&(await Je(),await F(r,s));if(ut(),Ke(ne),dt(re),_.props.page.url.pathname!==r.pathname&&(r.pathname=_.props.page.url.pathname),c=i?i.state:c,!i){let e=+!s,t={[x]:J+=e,[S]:Y+=e,[ye]:c};(s?history.replaceState:history.pushState).call(history,t,``,r),s||qe(J,Y)}let ie=m&&V?.id===m.id?V.fork:null;V?.fork&&!ie&&H(),V=null,_.props.page.state=c;let ae;if(tt){let t=(await Promise.all(Array.from($e,e=>e(h.navigation)))).filter(e=>typeof e==`function`);if(t.length>0){function e(){t.forEach(e=>{W.delete(e)})}t.push(e),t.forEach(e=>{W.add(e)})}let n=h.navigation.to;G={..._.state,nav:{params:n.params,route:n.route,url:n.url}},_.props.page&&(_.props.page.url=r);let i=ie&&await ie;i?ae=i.commit():(j=null,at.$set(_.props),j&&Object.assign(_.props.page,j),ze(_.props.page),ae=e?.()),rt=!0}else await _t(_,Ze,!1);let{activeElement:v}=document;if(await ae,await t(),await t(),X!==d)return h.reject(Error(`navigation aborted`)),!1;_.props.page&&j&&Object.assign(_.props.page,j);let y=null;if(nt){let e=i?i.scroll:o?T():null;e?scrollTo(e.x,e.y):(y=r.hash&&document.getElementById(qt(r)))?y.scrollIntoView():scrollTo(0,0)}let oe=document.activeElement!==v&&document.activeElement!==document.body;!a&&!oe&&Ut(r,!y),nt=!0,K=!1,n===`popstate`&&ft(Y),h.fulfil(void 0),h.navigation.to&&(h.navigation.to.scroll=T()),W.forEach(e=>e(h.navigation)),P.navigating.set(A.current=null)}async function Mt(e,t,n,r,i){return e.origin===xe&&e.pathname===location.pathname&&!et?await Dt({status:r,error:n,url:e,route:t}):await F(e,i)}function Nt(){let e,t={element:void 0,href:void 0},n;L.addEventListener(`mousemove`,t=>{let n=t.target;clearTimeout(e),e=setTimeout(()=>{a(n,C.hover)},20)});function r(e){e.defaultPrevented||a(e.composedPath()[0],C.tap)}L.addEventListener(`mousedown`,r),L.addEventListener(`touchstart`,r,{passive:!0});let i=new IntersectionObserver(e=>{for(let t of e)t.isIntersecting&&(gt(new URL(t.target.href)),i.unobserve(t.target))},{threshold:0});async function a(e,r){let i=we(e,L),a=i===t.element&&i?.href===t.href&&r>=n;if(!i||a)return;let{url:o,external:s,download:c}=Te(i,b,R.hash);if(s||c)return;let l=D(i),u=o&&At(G.url)===At(o);if(!(l.reload||u))if(r<=l.preload_data){t={element:i,href:i.href},n=C.tap;let e=await Z(o,!1);if(!e)return;ht(e)}else r<=l.preload_code&&(t={element:i,href:i.href},n=r,gt(o))}function o(){i.disconnect();for(let e of L.querySelectorAll(`a`)){let{url:t,external:n,download:r}=Te(e,b,R.hash);if(n||r)continue;let a=D(e);a.reload||(a.preload_code===C.viewport&&i.observe(e),a.preload_code===C.eager&&gt(t))}}W.add(o),o()}function $(e,t){if(e instanceof u)return e.body;let n=Pe(e),r=Fe(e);return R.hooks.handleError({error:e,event:t,status:n,message:r})??{message:r}}function Pt(e,t){He(()=>(e.add(t),()=>{e.delete(t)}))}function Ft(e){Pt(W,e)}function It(e,t={}){return e=new URL(w(e)),e.origin===xe?mt(e,t,0):Promise.reject(Error(`goto: invalid URL`))}function Lt(e){if(typeof e==`function`)z.push(e);else{let{href:t}=new URL(e,location.href);z.push(e=>e.href===t)}}function Rt(e,t){let n={[x]:J,[S]:Y,[be]:k.url.href,[ye]:t};history.replaceState(n,``,w(e)),k.state=t,at.$set({page:We(()=>Gt(k))})}function zt(){history.scrollRestoration=`manual`,addEventListener(`beforeunload`,e=>{let t=!1;if(pt(),!K){let e=Wt(G,void 0,null,`leave`),n={...e.navigation,cancel:()=>{t=!0,e.reject(Error(`navigation cancelled`))}};Qe.forEach(e=>e(n))}t?(e.preventDefault(),e.returnValue=``):history.scrollRestoration=`auto`}),addEventListener(`visibilitychange`,()=>{document.visibilityState===`hidden`&&pt()}),!navigator.connection?.saveData&&!/2g/.test(navigator.connection?.effectiveType)&&Nt(),L.addEventListener(`click`,async t=>{if(t.button||t.which!==1||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.defaultPrevented)return;let n=we(t.composedPath()[0],L);if(!n)return;let{url:r,external:i,target:a,download:o}=Te(n,b,R.hash);if(!r)return;if(a===`_parent`||a===`_top`){if(window.parent!==window)return}else if(a&&a!==`_self`)return;let s=D(n);if(!(n instanceof SVGAElement)&&r.protocol!==location.protocol&&!(r.protocol===`https:`||r.protocol===`http:`)||o)return;let[c,l]=(R.hash?r.hash.replace(/^#/,``):r.href).split(`#`),u=c===m(location);if(i||s.reload&&(!u||!l)){jt({url:r,type:`link`,event:t})?K=!0:t.preventDefault();return}if(l!==void 0&&u){let[,i]=G.url.href.split(`#`);if(i===l){if(t.preventDefault(),l===``||l===`top`&&n.ownerDocument.getElementById(`top`)===null)scrollTo({top:0});else{let e=n.ownerDocument.getElementById(decodeURIComponent(l));e&&(e.scrollIntoView(),e.focus())}return}if(q=!0,Ke(J),e(r),!s.replace_state)return;q=!1}t.preventDefault(),await new Promise(e=>{requestAnimationFrame(()=>{setTimeout(e,0)}),setTimeout(e,100)}),await Q({type:`link`,url:r,keepfocus:s.keepfocus,noscroll:s.noscroll,replace_state:s.replace_state??r.href===location.href,event:t})}),L.addEventListener(`submit`,e=>{if(e.defaultPrevented)return;let t=HTMLFormElement.prototype.cloneNode.call(e.target),n=e.submitter;if((n?.formTarget||t.target)===`_blank`||(n?.formMethod||t.method)!==`get`)return;let r=new URL(n?.hasAttribute(`formaction`)&&n?.formAction||t.action);if(O(r,b,!1))return;let i=e.target,a=D(i);if(a.reload)return;e.preventDefault(),e.stopPropagation();let o=new FormData(i,n);r.search=new URLSearchParams(o).toString(),Q({type:`form`,url:r,keepfocus:a.keepfocus,noscroll:a.noscroll,replace_state:a.replace_state??r.href===location.href,event:e})}),addEventListener(`popstate`,async t=>{if(!Ht)if(t.state?.[`sveltekit:history`]){let n=t.state[x];if(X={},n===J)return;let r=M[n],i=t.state[`sveltekit:states`]??{},a=new URL(t.state[`sveltekit:pageurl`]??location.href),o=t.state[S],s=G.url?m(location)===m(G.url):!1;if(o===Y&&(rt||s)){i!==k.state&&(k.state=i),e(a),M[J]=T(),r&&scrollTo(r.x,r.y),J=n;return}let c=n-J;await Q({type:`popstate`,url:a,popped:{state:i,scroll:r,delta:c},accept:()=>{J=n,Y=o},block:()=>{history.go(-c)},nav_token:X,event:t})}else q||(e(new URL(location.href)),R.hash&&location.reload())}),addEventListener(`hashchange`,()=>{q&&(q=!1,history.replaceState({...history.state,[x]:++J,[S]:Y},``,location.href))});for(let e of document.querySelectorAll(`link`))Ge.has(e.rel)&&(e.href=e.href);addEventListener(`pageshow`,e=>{e.persisted&&P.navigating.set(A.current=null)});function e(e){G.url=k.url=e,P.page.set(Gt(k)),P.page.notify()}}async function Bt(e,{status:t=200,error:n,node_ids:r,params:i,route:a,server_route:o,data:s,form:c}){et=!0;let l=new URL(location.href),u;({params:i={},route:a={id:null}}=await Z(l,!1)||{}),u=Ye.find(({id:e})=>e===a.id);let f,p=!0;try{let e=r.map(async(t,n)=>{let r=s[n];return r?.uses&&(r.uses=Vt(r.uses)),yt({loader:R.nodes[t],url:l,params:i,route:a,parent:async()=>{let t={};for(let r=0;r<n;r+=1)Object.assign(t,(await e[r]).data);return t},server_data_node:St(r)})}),o=await Promise.all(e);if(u){let e=u.layouts;for(let t=0;t<e.length;t++)e[t]||o.splice(t,0,void 0)}f=await vt({url:l,params:i,branch:o,status:t,error:n,errors:u?.errors,form:c,route:u??null})}catch(t){if(t instanceof d){await F(new URL(t.location,location.href));return}f=await Dt({status:Pe(t),error:await $(t,{url:l,params:i,route:a}),url:l,route:a}),e.textContent=``,p=!1}f.props.page&&(f.props.page.state={}),await _t(f,e,p)}function Vt(e){return{dependencies:new Set(e?.dependencies??[]),params:new Set(e?.params??[]),parent:!!e?.parent,route:!!e?.route,url:!!e?.url,search_params:new Set(e?.search_params??[])}}var Ht=!1;function Ut(e,t=!0){let n=document.querySelector(`[autofocus]`);if(n)n.focus();else{let n=qt(e);if(n&&document.getElementById(n)){let{x:r,y:i}=T();setTimeout(()=>{let a=history.state;Ht=!0,location.replace(new URL(`#${n}`,location.href)),history.replaceState(a,``,e),t&&scrollTo(r,i),Ht=!1})}else{let e=document.body,t=e.getAttribute(`tabindex`);e.tabIndex=-1,e.focus({preventScroll:!0,focusVisible:!1}),t===null?e.removeAttribute(`tabindex`):e.setAttribute(`tabindex`,t)}let r=getSelection();if(r&&r.type!==`None`){let e=[];for(let t=0;t<r.rangeCount;t+=1)e.push(r.getRangeAt(t));setTimeout(()=>{if(r.rangeCount===e.length){for(let t=0;t<r.rangeCount;t+=1){let n=e[t],i=r.getRangeAt(t);if(n.commonAncestorContainer!==i.commonAncestorContainer||n.startContainer!==i.startContainer||n.endContainer!==i.endContainer||n.startOffset!==i.startOffset||n.endOffset!==i.endOffset)return}r.removeAllRanges()}})}}}function Wt(e,t,n,r,i=null){let a,o,s=new Promise((e,t)=>{a=e,o=t});return s.catch(g),{navigation:{from:{params:e.params,route:{id:e.route?.id??null},url:e.url,scroll:T()},to:n&&{params:t?.params??null,route:{id:t?.route?.id??null},url:n,scroll:i},willUnload:!t,type:r,complete:s},fulfil:a,reject:o}}function Gt(e){return{data:e.data,error:e.error,form:e.form,params:e.params,route:e.route,state:e.state,status:e.status,url:e.url}}function Kt(e){let t=new URL(e);return t.hash=decodeURIComponent(e.hash),t}function qt(e){let t;if(R.hash){let[,,n]=e.hash.split(`#`,3);t=n??``}else t=e.hash.slice(1);return decodeURIComponent(t)}export{P as a,Ie as c,lt as i,ke as l,It as n,A as o,Rt as r,k as s,Ft as t};
1
+ import{H as e,U as t,V as n,W as r,it as i,lt as a,r as o,rt as s,t as c}from"./D50Xf4Qj.js";import{i as l,n as u,r as d,t as f}from"./BuFlayix.js";new URL(`sveltekit-internal://`);function p(e,t){return e===`/`||t===`ignore`?e:t===`never`?e.endsWith(`/`)?e.slice(0,-1):e:t===`always`&&!e.endsWith(`/`)?e+`/`:e}function ee(e){return e.split(`%25`).map(decodeURI).join(`%25`)}function te(e){for(let t in e)e[t]=decodeURIComponent(e[t]);return e}function m({href:e}){return e.split(`#`)[0]}function h(e,t,n,r=!1){let i=new URL(e);Object.defineProperty(i,"searchParams",{value:new Proxy(i.searchParams,{get(e,r){if(r===`get`||r===`getAll`||r===`has`)return(t,...i)=>(n(t),e[r](t,...i));t();let i=Reflect.get(e,r);return typeof i==`function`?i.bind(e):i}}),enumerable:!0,configurable:!0});let a=[`href`,`pathname`,`search`,`toString`,`toJSON`];r&&a.push(`hash`);for(let n of a)Object.defineProperty(i,n,{get(){return t(),e[n]},enumerable:!0,configurable:!0});return i}function g(){}function ne(...e){let t=5381;for(let n of e)if(typeof n==`string`){let e=n.length;for(;e;)t=t*33^n.charCodeAt(--e)}else if(ArrayBuffer.isView(n)){let e=new Uint8Array(n.buffer,n.byteOffset,n.byteLength),r=e.length;for(;r;)t=t*33^e[--r]}else throw TypeError(`value must be a string or TypedArray`);return(t>>>0).toString(36)}var re=window.fetch;window.fetch=(e,t)=>((e instanceof Request?e.method:t?.method||`GET`)!==`GET`&&_.delete(v(e)),re(e,t));var _=new Map;function ie(e,t){let n=v(e,t),r=document.querySelector(n);if(r?.textContent){r.remove();let{body:e,...t}=JSON.parse(r.textContent),i=r.getAttribute(`data-ttl`);return i&&_.set(n,{body:e,init:t,ttl:1e3*Number(i)}),r.getAttribute(`data-b64`)!==null&&(e=f(e)),Promise.resolve(new Response(e,t))}return window.fetch(e,t)}function ae(e,t,n){if(_.size>0){let t=v(e,n),r=_.get(t);if(r){if(performance.now()<r.ttl&&[`default`,`force-cache`,`only-if-cached`,void 0].includes(n?.cache))return new Response(r.body,r.init);_.delete(t)}}return window.fetch(t,n)}function v(e,t){let n=`script[data-sveltekit-fetched][data-url=${JSON.stringify(e instanceof Request?e.url:e)}]`;if(t?.headers||t?.body){let e=[];t.headers&&e.push([...new Headers(t.headers)].join(`,`)),t.body&&(typeof t.body==`string`||ArrayBuffer.isView(t.body))&&e.push(t.body),n+=`[data-hash="${ne(...e)}"]`}return n}var y=/^(\[)?(\.\.\.)?(\w+)(?:=(\w+))?(\])?$/,oe=/^\/\((?:.+)\)$/;function se(e){let t=[];return{pattern:e===`/`||oe.test(e)?/^\/$/:RegExp(`^${le(e).map(e=>{let n=/^\[\.\.\.(\w+)(?:=(\w+))?\]$/.exec(e);if(n)return t.push({name:n[1],matcher:n[2],optional:!1,rest:!0,chained:!0}),`(?:/([^]*))?`;let r=/^\[\[(\w+)(?:=(\w+))?\]\]$/.exec(e);if(r)return t.push({name:r[1],matcher:r[2],optional:!0,rest:!1,chained:!0}),`(?:/([^/]+))?`;if(!e)return;let i=e.split(/\[(.+?)\](?!\])/);return`/`+i.map((e,n)=>{if(n%2){if(e.startsWith(`x+`))return de(String.fromCharCode(parseInt(e.slice(2),16)));if(e.startsWith(`u+`))return de(String.fromCharCode(...e.slice(2).split(`-`).map(e=>parseInt(e,16))));let[,r,a,o,s]=y.exec(e);return t.push({name:o,matcher:s,optional:!!r,rest:!!a,chained:a?n===1&&i[0]===``:!1}),a?`([^]*?)`:r?`([^/]*)?`:`([^/]+?)`}return de(e)}).join(``)}).join(``)}/?$`),params:t}}function ce(e){return e!==``&&!/^\([^)]+\)$/.test(e)}function le(e){return e.slice(1).split(`/`).filter(ce)}function ue(e,t,n){let r={},i=e.slice(1),a=i.filter(e=>e!==void 0),o=0;for(let e=0;e<t.length;e+=1){let s=t[e],c=i[e-o];if(s.chained&&s.rest&&o&&(c=i.slice(e-o,e+1).filter(e=>e).join(`/`),o=0),c===void 0)if(s.rest)c=``;else continue;if(!s.matcher||n[s.matcher](c)){r[s.name]=c;let n=t[e+1],l=i[e+1];n&&!n.rest&&n.optional&&l&&s.chained&&(o=0),!n&&!l&&Object.keys(r).length===a.length&&(o=0);continue}if(s.optional&&s.chained){o++;continue}return}if(!o)return r}function de(e){return e.normalize().replace(/[[\]]/g,`\\$&`).replace(/%/g,`%25`).replace(/\//g,`%2[Ff]`).replace(/\?/g,`%3[Ff]`).replace(/#/g,`%23`).replace(/[.*+?^${}()|\\]/g,`\\$&`)}function fe({nodes:e,server_loads:t,dictionary:n,matchers:r}){let i=new Set(t);return Object.entries(n).map(([t,[n,i,s]])=>{let{pattern:c,params:l}=se(t),u={id:t,exec:e=>{let t=c.exec(e);if(t)return ue(t,l,r)},errors:[1,...s||[]].map(t=>e[t]),layouts:[0,...i||[]].map(o),leaf:a(n)};return u.errors.length=u.layouts.length=Math.max(u.errors.length,u.layouts.length),u});function a(t){let n=t<0;return n&&(t=~t),[n,e[t]]}function o(t){return t===void 0?t:[i.has(t),e[t]]}}function pe(e,t=JSON.parse){try{return t(sessionStorage[e])}catch{}}function me(e,t,n=JSON.stringify){let r=n(t);try{sessionStorage[e]=r}catch{}}var b=globalThis.__sveltekit_143b9q7?.base??``,he=globalThis.__sveltekit_143b9q7?.assets??b??``,ge=`1783690918697`,_e=`sveltekit:snapshot`,ve=`sveltekit:scroll`,ye=`sveltekit:states`,be=`sveltekit:pageurl`,x=`sveltekit:history`,S=`sveltekit:navigation`,C={tap:1,hover:2,viewport:3,eager:4,off:-1,false:-1},xe=location.origin;function w(e){if(e instanceof URL)return e;let t=document.baseURI;if(!t){let e=document.getElementsByTagName(`base`);t=e.length?e[0].href:document.URL}return new URL(e,t)}function T(){return{x:pageXOffset,y:pageYOffset}}function E(e,t){return e.getAttribute(`data-sveltekit-${t}`)}var Se={...C,"":C.hover};function Ce(e){let t=e.assignedSlot??e.parentNode;return t?.nodeType===11&&(t=t.host),t}function we(e,t){for(;e&&e!==t;){if(e.nodeName.toUpperCase()===`A`&&e.hasAttribute(`href`))return e;e=Ce(e)}}function Te(e,t,n){let r;try{if(r=new URL(e instanceof SVGAElement?e.href.baseVal:e.href,document.baseURI),n&&r.hash.match(/^#[^/]/)){let e=location.hash.split(`#`)[1]||`/`;r.hash=`#${e}${r.hash}`}}catch{}let i=e instanceof SVGAElement?e.target.baseVal:e.target,a=!r||!!i||O(r,t,n)||(e.getAttribute(`rel`)||``).split(/\s+/).includes(`external`),o=r?.origin===xe&&e.hasAttribute(`download`);return{url:r,external:a,target:i,download:o}}function D(e){let t=null,n=null,r=null,i=null,a=null,o=null,s=e;for(;s&&s!==document.documentElement;)r===null&&(r=E(s,`preload-code`)),i===null&&(i=E(s,`preload-data`)),t===null&&(t=E(s,`keepfocus`)),n===null&&(n=E(s,`noscroll`)),a===null&&(a=E(s,`reload`)),o===null&&(o=E(s,`replacestate`)),s=Ce(s);function c(e){switch(e){case``:case`true`:return!0;case`off`:case`false`:return!1;default:return}}return{preload_code:Se[r??`off`],preload_data:Se[i??`off`],keepfocus:c(t),noscroll:c(n),reload:c(a),replace_state:c(o)}}function Ee(e){let t=a(e),n=!0;function r(){n=!0,t.update(e=>e)}function i(e){n=!1,t.set(e)}function o(e){let r;return t.subscribe(t=>{(r===void 0||n&&t!==r)&&e(r=t)})}return{notify:r,set:i,subscribe:o}}var De={v:g};function Oe(){let{set:e,subscribe:t}=a(!1);async function n(){clearTimeout(void 0);try{let t=await fetch(`${he}/_app/version.json`,{headers:{pragma:`no-cache`,"cache-control":`no-cache`}});if(!t.ok)return!1;let n=(await t.json()).version!==ge;return n&&(e(!0),De.v(),clearTimeout(void 0)),n}catch{return!1}}return{subscribe:t,check:n}}function O(e,t,n){return e.origin!==xe||!e.pathname.startsWith(t)?!0:n?e.pathname!==location.pathname:!1}function ke(e){}Uint8Array.fromBase64,typeof process==`object`&&process.versions?.node;var Ae=new Set([`load`,`prerender`,`csr`,`ssr`,`trailingSlash`,`config`]);new Set([...Ae,`entries`]);var je=new Set([...Ae]);new Set([...je,`actions`,`entries`]),new Set([`GET`,`POST`,`PATCH`,`PUT`,`DELETE`,`OPTIONS`,`HEAD`,`fallback`,`prerender`,`trailingSlash`,`config`,`entries`]);function Me(e){return e.filter(e=>e!=null)}function Ne(e,t){return e+`/`+t}function Pe(e){return e instanceof u||e instanceof l?e.status:500}function Fe(e){return e instanceof l?e.text:`Internal Error`}var k,A,Ie,Le=o.toString().includes(`$$`)||/function \w+\(\) \{\}/.test(o.toString()),Re=`a:`;Le?(k={data:{},form:null,error:null,params:{},route:{id:null},state:{},status:-1,url:new URL(Re)},A={current:null},Ie={current:!1}):(k=new class{#e=i({});get data(){return n(this.#e)}set data(e){s(this.#e,e)}#t=i(null);get form(){return n(this.#t)}set form(e){s(this.#t,e)}#n=i(null);get error(){return n(this.#n)}set error(e){s(this.#n,e)}#r=i({});get params(){return n(this.#r)}set params(e){s(this.#r,e)}#i=i({id:null});get route(){return n(this.#i)}set route(e){s(this.#i,e)}#a=i({});get state(){return n(this.#a)}set state(e){s(this.#a,e)}#o=i(-1);get status(){return n(this.#o)}set status(e){s(this.#o,e)}#s=i(new URL(Re));get url(){return n(this.#s)}set url(e){s(this.#s,e)}},A=new class{#e=i(null);get current(){return n(this.#e)}set current(e){s(this.#e,e)}},Ie=new class{#e=i(!1);get current(){return n(this.#e)}set current(e){s(this.#e,e)}},De.v=()=>Ie.current=!0);function ze(e){Object.assign(k,e)}var Be={spanContext(){return Ve},setAttribute(){return this},setAttributes(){return this},addEvent(){return this},setStatus(){return this},updateName(){return this},end(){return this},isRecording(){return!1},recordException(){return this},addLink(){return this},addLinks(){return this}},Ve={traceId:``,spanId:``,traceFlags:0},{onMount:He,tick:Ue}=c,We=r??(e=>e()),Ge=new Set([`icon`,`shortcut icon`,`apple-touch-icon`]),j=null,M=pe(`sveltekit:scroll`)??{},N=pe(`sveltekit:snapshot`)??{},P={url:Ee({}),page:Ee({}),navigating:a(null),updated:Oe()};function Ke(e){M[e]=T()}function qe(e,t){let n=e+1;for(;M[n];)delete M[n],n+=1;for(n=t+1;N[n];)delete N[n],n+=1}function F(e,t=!1){return t?location.replace(e.href):location.href=e.href,new Promise(g)}async function Je(){if(`serviceWorker`in navigator){let e=await navigator.serviceWorker.getRegistration(b||`/`);e&&await e.update()}}var Ye,Xe,I,L,Ze,R,z=[],B=[],V=null;function H(){V?.fork?.then(e=>e?.discard()),V=null}var U=new Map,Qe=new Set,$e=new Set,W=new Set,G={branch:[],error:null,url:null,nav:null},et=!1,tt=!1,nt=!0,K=!1,q=!1,rt=!1,it=!1,at,J,Y,X,ot=new Set,st=new Map,ct=new Map;async function lt(e,t,n){globalThis.__sveltekit_143b9q7&&(globalThis.__sveltekit_143b9q7.query,globalThis.__sveltekit_143b9q7.prerender),document.URL!==location.href&&(location.href=location.href),R=e,await e.hooks.init?.(),Ye=fe(e),L=document.documentElement,Ze=t,Xe=e.nodes[0],I=e.nodes[1],Xe(),I(),J=history.state?.[x],Y=history.state?.[S],J||(J=Y=Date.now(),history.replaceState({...history.state,[x]:J,[S]:Y},``));let r=M[J];function i(){r&&(history.scrollRestoration=`manual`,scrollTo(r.x,r.y))}n?(i(),await Bt(Ze,n)):(await Q({type:`enter`,url:w(R.hash?Kt(new URL(location.href)):location.href),replace_state:!0}),i()),zt()}function ut(){z.length=0,it=!1}function dt(e){B.some(e=>e?.snapshot)&&(N[e]=B.map(e=>e?.snapshot?.capture()))}function ft(e){N[e]?.forEach((e,t)=>{B[t]?.snapshot?.restore(e)})}function pt(){Ke(J),me(ve,M),dt(Y),me(_e,N)}async function mt(e,n,r,i){let a,o;n.invalidateAll&&H(),await Q({type:`goto`,url:w(e),keepfocus:n.keepFocus,noscroll:n.noScroll,replace_state:n.replaceState,state:n.state,redirect_count:r,nav_token:i,accept:()=>{if(n.invalidateAll){it=!0,a=new Set;for(let[e,t]of st)for(let n of t.keys())a.add(Ne(e,n));o=new Set;for(let[e,t]of ct)for(let n of t.keys())o.add(Ne(e,n))}n.invalidate&&n.invalidate.forEach(Lt)}}),n.invalidateAll&&t().then(t).then(()=>{for(let[e,t]of st)for(let[n,{resource:r}]of t)a?.has(Ne(e,n))&&r.refresh();for(let[e,t]of ct)for(let[n,{resource:r}]of t)o?.has(Ne(e,n))&&r.reconnect()})}async function ht(e){if(e.id!==V?.id){H();let t={};ot.add(t),V={id:e.id,token:t,promise:Tt({...e,preload:t}).then(e=>(ot.delete(t),e.type===`loaded`&&e.state.error&&H(),e)),fork:null}}return V.promise}async function gt(e){let t=(await Z(e,!1))?.route;t&&await Promise.all([...t.layouts,t.leaf].filter(Boolean).map(e=>e[1]()))}async function _t(e,t,n){let r={params:G.params,route:{id:G.route?.id??null},url:new URL(location.href)};if(G={...e.state,nav:r},ze(e.props.page),at=new R.root({target:t,props:{...e.props,stores:P,components:B},hydrate:n,sync:!1,transformError:void 0}),await Promise.resolve(),ft(Y),n){let e={from:null,to:{...r,scroll:M[J]??T()},willUnload:!1,type:`enter`,complete:Promise.resolve()};W.forEach(t=>t(e))}tt=!0}async function vt({url:e,params:t,branch:n,errors:r,status:i,error:a,route:o,form:s}){let c=`never`;if(b&&(e.pathname===b||e.pathname===b+`/`))c=`always`;else for(let e of n)e?.slash!==void 0&&(c=e.slash);e.pathname=p(e.pathname,c),e.search=e.search;let l={type:`loaded`,state:{url:e,params:t,branch:n,error:a,route:o},props:{constructors:Me(n).map(e=>e.node.component),page:Gt(k)}};s!==void 0&&(l.props.form=s);let u={},d=!k,f=0;for(let e=0;e<Math.max(n.length,G.branch.length);e+=1){let t=n[e],r=G.branch[e];t?.data!==r?.data&&(d=!0),t&&(u={...u,...t.data},d&&(l.props[`data_${f}`]=u),f+=1)}return(!G.url||e.href!==G.url.href||G.error!==a||s!==void 0&&s!==k.form||d)&&(l.props.page={error:a,params:t,route:{id:o?.id??null},state:{},status:i,url:new URL(e),form:s??null,data:d?u:k.data}),l}async function yt({loader:e,parent:t,url:n,params:r,route:i,server_data_node:a}){let o=null,s=!0,c={dependencies:new Set,params:new Set,parent:!1,route:!1,url:!1,search_params:new Set},l=await e();if(l.universal?.load){function e(...e){for(let t of e){let{href:e}=new URL(t,n);c.dependencies.add(e)}}let u={tracing:{enabled:!1,root:Be,current:Be},route:new Proxy(i,{get:(e,t)=>(s&&(c.route=!0),e[t])}),params:new Proxy(r,{get:(e,t)=>(s&&c.params.add(t),e[t])}),data:a?.data??null,url:h(n,()=>{s&&(c.url=!0)},e=>{s&&c.search_params.add(e)},R.hash),async fetch(t,r){t instanceof Request&&(r={body:t.method===`GET`||t.method===`HEAD`?void 0:await t.blob(),cache:t.cache,credentials:t.credentials,headers:[...t.headers].length>0?t?.headers:void 0,integrity:t.integrity,keepalive:t.keepalive,method:t.method,mode:t.mode,redirect:t.redirect,referrer:t.referrer,referrerPolicy:t.referrerPolicy,signal:t.signal,...r});let{resolved:i,promise:a}=bt(t,r,n);return s&&e(i.href),a},setHeaders:g,depends:e,parent(){return s&&(c.parent=!0),t()},untrack(e){s=!1;try{return e()}finally{s=!0}}};o=await l.universal.load.call(null,u)??null}return{node:l,loader:e,server:a,universal:l.universal?.load?{type:`data`,data:o,uses:c}:null,data:o??a?.data??null,slash:l.universal?.trailingSlash??a?.slash}}function bt(e,t,n){let r=e instanceof Request?e.url:e,i=new URL(r,n);return i.origin===n.origin&&(r=i.href.slice(n.origin.length)),{resolved:i,promise:tt?ae(r,i.href,t):ie(r,t)}}function xt(e,t,n,r,i,a){if(it)return!0;if(!i)return!1;if(i.parent&&e||i.route&&t||i.url&&n)return!0;for(let e of i.search_params)if(r.has(e))return!0;for(let e of i.params)if(a[e]!==G.params[e])return!0;for(let e of i.dependencies)if(z.some(t=>t(new URL(e))))return!0;return!1}function St(e,t){return e?.type===`data`?e:e?.type===`skip`?t??null:null}function Ct(e,t){if(!e)return new Set(t.searchParams.keys());let n=new Set([...e.searchParams.keys(),...t.searchParams.keys()]);for(let r of n){let i=e.searchParams.getAll(r),a=t.searchParams.getAll(r);i.every(e=>a.includes(e))&&a.every(e=>i.includes(e))&&n.delete(r)}return n}function wt({error:e,url:t,route:n,params:r}){return{type:`loaded`,state:{error:e,url:t,route:n,params:r,branch:[]},props:{page:Gt(k),constructors:[]}}}async function Tt({id:e,invalidating:t,url:n,params:r,route:i,preload:a}){if(V?.id===e)return ot.delete(V.token),V.promise;let{errors:o,layouts:s,leaf:c}=i,l=[...s,c];o.forEach(e=>e?.().catch(g)),l.forEach(e=>e?.[1]().catch(g));let f=G.url?e!==At(G.url):!1,p=G.route?i.id!==G.route.id:!1,ee=Ct(G.url,n),te=!1,m=l.map(async(e,t)=>{if(!e)return;let a=G.branch[t];return e[1]===a?.loader&&!xt(te,p,f,ee,a.universal?.uses,r)?a:(te=!0,yt({loader:e[1],url:n,params:r,route:i,parent:async()=>{let e={};for(let n=0;n<t;n+=1)Object.assign(e,(await m[n])?.data);return e},server_data_node:St(e[0]?{type:`skip`}:null,e[0]?a?.server:void 0)}))});for(let e of m)e.catch(g);let h=[];for(let e=0;e<l.length;e+=1)if(l[e])try{h.push(await m[e])}catch(t){if(t instanceof d)return{type:`redirect`,location:t.location};if(ot.has(a))return wt({error:await $(t,{params:r,url:n,route:{id:i.id}}),url:n,params:r,route:i});let s=Pe(t),c;if(t instanceof u)c=t.body;else{if(await P.updated.check())return await Je(),await F(n);c=await $(t,{params:r,url:n,route:{id:i.id}})}let l=await Et(e,h,o);return l?vt({url:n,params:r,branch:h.slice(0,l.idx).concat(l.node),errors:o,status:s,error:c,route:i}):await Mt(n,{id:i.id},c,s)}else h.push(void 0);return vt({url:n,params:r,branch:h,errors:o,status:200,error:null,route:i,form:t?void 0:null})}async function Et(e,t,n){for(;e--;)if(n[e]){let r=e;for(;!t[r];)--r;try{return{idx:r+1,node:{node:await n[e](),loader:n[e],data:{},server:null,universal:null}}}catch{continue}}}async function Dt({status:e,error:t,url:n,route:r}){let i={};try{return vt({url:n,params:i,branch:[await yt({loader:Xe,url:n,params:i,route:r,parent:()=>Promise.resolve({}),server_data_node:St(null)}),{node:await I(),loader:I,universal:null,server:null,data:null}],status:e,error:t,errors:[],route:null})}catch(e){if(e instanceof d)return mt(new URL(e.location,location.href),{},0);throw e}}async function Ot(e){let t=e.href;if(U.has(t))return U.get(t);let n;try{let r=(async()=>{let t=await R.hooks.reroute({url:new URL(e),fetch:async(t,n)=>bt(t,n,e).promise})??e;if(typeof t==`string`){let n=new URL(e);R.hash?n.hash=t:n.pathname=t,t=n}return t})();U.set(t,r),n=await r}catch{U.delete(t);return}return n}async function Z(e,t){if(e&&!O(e,b,R.hash)){let n=await Ot(e);if(!n)return;let r=kt(n);for(let n of Ye){let i=n.exec(r);if(i)return{id:At(e),invalidating:t,route:n,params:te(i),url:e}}}}function kt(e){return ee(R.hash?e.hash.replace(/^#/,``).replace(/[?#].+/,``):e.pathname.slice(b.length))||`/`}function At(e){return(R.hash?e.hash.replace(/^#/,``):e.pathname)+e.search}function jt({url:e,type:t,intent:n,delta:r,event:i,scroll:a}){let o=!1,s=Wt(G,n,e,t,a??null);r!==void 0&&(s.navigation.delta=r),i!==void 0&&(s.navigation.event=i);let c={...s.navigation,cancel:()=>{o=!0,s.reject(Error(`navigation cancelled`))}};return K||Qe.forEach(e=>e(c)),o?null:s}async function Q({type:n,url:r,popped:i,keepfocus:a,noscroll:o,replace_state:s,state:c={},redirect_count:u=0,nav_token:d={},accept:f=g,block:p=g,event:ee}){let te=X;X=d;let m=await Z(r,!1),h=n===`enter`?Wt(G,m,r,n):jt({url:r,type:n,delta:i?.delta,intent:m,scroll:i?.scroll,event:ee});if(!h){p(),X===d&&(X=te);return}let ne=J,re=Y;f(),K=!0,tt&&h.navigation.type!==`enter`&&P.navigating.set(A.current=h.navigation);let _=m&&await Tt(m);if(!_){if(O(r,b,R.hash))return await F(r,s);_=await Mt(r,{id:null},await $(new l(404,`Not Found`,`Not found: ${r.pathname}`),{url:r,params:{},route:{id:null}}),404,s)}if(r=m?.url||r,X!==d)return h.reject(Error(`navigation aborted`)),!1;if(_.type===`redirect`){if(u<20){await Q({type:n,url:new URL(_.location,r),popped:i,keepfocus:a,noscroll:o,replace_state:s,state:c,redirect_count:u+1,nav_token:d}),h.fulfil(void 0);return}_=await Dt({status:500,error:await $(Error(`Redirect loop`),{url:r,params:{},route:{id:null}}),url:r,route:{id:null}})}else _.props.page.status>=400&&await P.updated.check()&&(await Je(),await F(r,s));if(ut(),Ke(ne),dt(re),_.props.page.url.pathname!==r.pathname&&(r.pathname=_.props.page.url.pathname),c=i?i.state:c,!i){let e=+!s,t={[x]:J+=e,[S]:Y+=e,[ye]:c};(s?history.replaceState:history.pushState).call(history,t,``,r),s||qe(J,Y)}let ie=m&&V?.id===m.id?V.fork:null;V?.fork&&!ie&&H(),V=null,_.props.page.state=c;let ae;if(tt){let t=(await Promise.all(Array.from($e,e=>e(h.navigation)))).filter(e=>typeof e==`function`);if(t.length>0){function e(){t.forEach(e=>{W.delete(e)})}t.push(e),t.forEach(e=>{W.add(e)})}let n=h.navigation.to;G={..._.state,nav:{params:n.params,route:n.route,url:n.url}},_.props.page&&(_.props.page.url=r);let i=ie&&await ie;i?ae=i.commit():(j=null,at.$set(_.props),j&&Object.assign(_.props.page,j),ze(_.props.page),ae=e?.()),rt=!0}else await _t(_,Ze,!1);let{activeElement:v}=document;if(await ae,await t(),await t(),X!==d)return h.reject(Error(`navigation aborted`)),!1;_.props.page&&j&&Object.assign(_.props.page,j);let y=null;if(nt){let e=i?i.scroll:o?T():null;e?scrollTo(e.x,e.y):(y=r.hash&&document.getElementById(qt(r)))?y.scrollIntoView():scrollTo(0,0)}let oe=document.activeElement!==v&&document.activeElement!==document.body;!a&&!oe&&Ut(r,!y),nt=!0,K=!1,n===`popstate`&&ft(Y),h.fulfil(void 0),h.navigation.to&&(h.navigation.to.scroll=T()),W.forEach(e=>e(h.navigation)),P.navigating.set(A.current=null)}async function Mt(e,t,n,r,i){return e.origin===xe&&e.pathname===location.pathname&&!et?await Dt({status:r,error:n,url:e,route:t}):await F(e,i)}function Nt(){let e,t={element:void 0,href:void 0},n;L.addEventListener(`mousemove`,t=>{let n=t.target;clearTimeout(e),e=setTimeout(()=>{a(n,C.hover)},20)});function r(e){e.defaultPrevented||a(e.composedPath()[0],C.tap)}L.addEventListener(`mousedown`,r),L.addEventListener(`touchstart`,r,{passive:!0});let i=new IntersectionObserver(e=>{for(let t of e)t.isIntersecting&&(gt(new URL(t.target.href)),i.unobserve(t.target))},{threshold:0});async function a(e,r){let i=we(e,L),a=i===t.element&&i?.href===t.href&&r>=n;if(!i||a)return;let{url:o,external:s,download:c}=Te(i,b,R.hash);if(s||c)return;let l=D(i),u=o&&At(G.url)===At(o);if(!(l.reload||u))if(r<=l.preload_data){t={element:i,href:i.href},n=C.tap;let e=await Z(o,!1);if(!e)return;ht(e)}else r<=l.preload_code&&(t={element:i,href:i.href},n=r,gt(o))}function o(){i.disconnect();for(let e of L.querySelectorAll(`a`)){let{url:t,external:n,download:r}=Te(e,b,R.hash);if(n||r)continue;let a=D(e);a.reload||(a.preload_code===C.viewport&&i.observe(e),a.preload_code===C.eager&&gt(t))}}W.add(o),o()}function $(e,t){if(e instanceof u)return e.body;let n=Pe(e),r=Fe(e);return R.hooks.handleError({error:e,event:t,status:n,message:r})??{message:r}}function Pt(e,t){He(()=>(e.add(t),()=>{e.delete(t)}))}function Ft(e){Pt(W,e)}function It(e,t={}){return e=new URL(w(e)),e.origin===xe?mt(e,t,0):Promise.reject(Error(`goto: invalid URL`))}function Lt(e){if(typeof e==`function`)z.push(e);else{let{href:t}=new URL(e,location.href);z.push(e=>e.href===t)}}function Rt(e,t){let n={[x]:J,[S]:Y,[be]:k.url.href,[ye]:t};history.replaceState(n,``,w(e)),k.state=t,at.$set({page:We(()=>Gt(k))})}function zt(){history.scrollRestoration=`manual`,addEventListener(`beforeunload`,e=>{let t=!1;if(pt(),!K){let e=Wt(G,void 0,null,`leave`),n={...e.navigation,cancel:()=>{t=!0,e.reject(Error(`navigation cancelled`))}};Qe.forEach(e=>e(n))}t?(e.preventDefault(),e.returnValue=``):history.scrollRestoration=`auto`}),addEventListener(`visibilitychange`,()=>{document.visibilityState===`hidden`&&pt()}),!navigator.connection?.saveData&&!/2g/.test(navigator.connection?.effectiveType)&&Nt(),L.addEventListener(`click`,async t=>{if(t.button||t.which!==1||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.defaultPrevented)return;let n=we(t.composedPath()[0],L);if(!n)return;let{url:r,external:i,target:a,download:o}=Te(n,b,R.hash);if(!r)return;if(a===`_parent`||a===`_top`){if(window.parent!==window)return}else if(a&&a!==`_self`)return;let s=D(n);if(!(n instanceof SVGAElement)&&r.protocol!==location.protocol&&!(r.protocol===`https:`||r.protocol===`http:`)||o)return;let[c,l]=(R.hash?r.hash.replace(/^#/,``):r.href).split(`#`),u=c===m(location);if(i||s.reload&&(!u||!l)){jt({url:r,type:`link`,event:t})?K=!0:t.preventDefault();return}if(l!==void 0&&u){let[,i]=G.url.href.split(`#`);if(i===l){if(t.preventDefault(),l===``||l===`top`&&n.ownerDocument.getElementById(`top`)===null)scrollTo({top:0});else{let e=n.ownerDocument.getElementById(decodeURIComponent(l));e&&(e.scrollIntoView(),e.focus())}return}if(q=!0,Ke(J),e(r),!s.replace_state)return;q=!1}t.preventDefault(),await new Promise(e=>{requestAnimationFrame(()=>{setTimeout(e,0)}),setTimeout(e,100)}),await Q({type:`link`,url:r,keepfocus:s.keepfocus,noscroll:s.noscroll,replace_state:s.replace_state??r.href===location.href,event:t})}),L.addEventListener(`submit`,e=>{if(e.defaultPrevented)return;let t=HTMLFormElement.prototype.cloneNode.call(e.target),n=e.submitter;if((n?.formTarget||t.target)===`_blank`||(n?.formMethod||t.method)!==`get`)return;let r=new URL(n?.hasAttribute(`formaction`)&&n?.formAction||t.action);if(O(r,b,!1))return;let i=e.target,a=D(i);if(a.reload)return;e.preventDefault(),e.stopPropagation();let o=new FormData(i,n);r.search=new URLSearchParams(o).toString(),Q({type:`form`,url:r,keepfocus:a.keepfocus,noscroll:a.noscroll,replace_state:a.replace_state??r.href===location.href,event:e})}),addEventListener(`popstate`,async t=>{if(!Ht)if(t.state?.[`sveltekit:history`]){let n=t.state[x];if(X={},n===J)return;let r=M[n],i=t.state[`sveltekit:states`]??{},a=new URL(t.state[`sveltekit:pageurl`]??location.href),o=t.state[S],s=G.url?m(location)===m(G.url):!1;if(o===Y&&(rt||s)){i!==k.state&&(k.state=i),e(a),M[J]=T(),r&&scrollTo(r.x,r.y),J=n;return}let c=n-J;await Q({type:`popstate`,url:a,popped:{state:i,scroll:r,delta:c},accept:()=>{J=n,Y=o},block:()=>{history.go(-c)},nav_token:X,event:t})}else q||(e(new URL(location.href)),R.hash&&location.reload())}),addEventListener(`hashchange`,()=>{q&&(q=!1,history.replaceState({...history.state,[x]:++J,[S]:Y},``,location.href))});for(let e of document.querySelectorAll(`link`))Ge.has(e.rel)&&(e.href=e.href);addEventListener(`pageshow`,e=>{e.persisted&&P.navigating.set(A.current=null)});function e(e){G.url=k.url=e,P.page.set(Gt(k)),P.page.notify()}}async function Bt(e,{status:t=200,error:n,node_ids:r,params:i,route:a,server_route:o,data:s,form:c}){et=!0;let l=new URL(location.href),u;({params:i={},route:a={id:null}}=await Z(l,!1)||{}),u=Ye.find(({id:e})=>e===a.id);let f,p=!0;try{let e=r.map(async(t,n)=>{let r=s[n];return r?.uses&&(r.uses=Vt(r.uses)),yt({loader:R.nodes[t],url:l,params:i,route:a,parent:async()=>{let t={};for(let r=0;r<n;r+=1)Object.assign(t,(await e[r]).data);return t},server_data_node:St(r)})}),o=await Promise.all(e);if(u){let e=u.layouts;for(let t=0;t<e.length;t++)e[t]||o.splice(t,0,void 0)}f=await vt({url:l,params:i,branch:o,status:t,error:n,errors:u?.errors,form:c,route:u??null})}catch(t){if(t instanceof d){await F(new URL(t.location,location.href));return}f=await Dt({status:Pe(t),error:await $(t,{url:l,params:i,route:a}),url:l,route:a}),e.textContent=``,p=!1}f.props.page&&(f.props.page.state={}),await _t(f,e,p)}function Vt(e){return{dependencies:new Set(e?.dependencies??[]),params:new Set(e?.params??[]),parent:!!e?.parent,route:!!e?.route,url:!!e?.url,search_params:new Set(e?.search_params??[])}}var Ht=!1;function Ut(e,t=!0){let n=document.querySelector(`[autofocus]`);if(n)n.focus();else{let n=qt(e);if(n&&document.getElementById(n)){let{x:r,y:i}=T();setTimeout(()=>{let a=history.state;Ht=!0,location.replace(new URL(`#${n}`,location.href)),history.replaceState(a,``,e),t&&scrollTo(r,i),Ht=!1})}else{let e=document.body,t=e.getAttribute(`tabindex`);e.tabIndex=-1,e.focus({preventScroll:!0,focusVisible:!1}),t===null?e.removeAttribute(`tabindex`):e.setAttribute(`tabindex`,t)}let r=getSelection();if(r&&r.type!==`None`){let e=[];for(let t=0;t<r.rangeCount;t+=1)e.push(r.getRangeAt(t));setTimeout(()=>{if(r.rangeCount===e.length){for(let t=0;t<r.rangeCount;t+=1){let n=e[t],i=r.getRangeAt(t);if(n.commonAncestorContainer!==i.commonAncestorContainer||n.startContainer!==i.startContainer||n.endContainer!==i.endContainer||n.startOffset!==i.startOffset||n.endOffset!==i.endOffset)return}r.removeAllRanges()}})}}}function Wt(e,t,n,r,i=null){let a,o,s=new Promise((e,t)=>{a=e,o=t});return s.catch(g),{navigation:{from:{params:e.params,route:{id:e.route?.id??null},url:e.url,scroll:T()},to:n&&{params:t?.params??null,route:{id:t?.route?.id??null},url:n,scroll:i},willUnload:!t,type:r,complete:s},fulfil:a,reject:o}}function Gt(e){return{data:e.data,error:e.error,form:e.form,params:e.params,route:e.route,state:e.state,status:e.status,url:e.url}}function Kt(e){let t=new URL(e);return t.hash=decodeURIComponent(e.hash),t}function qt(e){let t;if(R.hash){let[,,n]=e.hash.split(`#`,3);t=n??``}else t=e.hash.slice(1);return decodeURIComponent(t)}export{P as a,Ie as c,lt as i,ke as l,It as n,A as o,Rt as r,k as s,Ft as t};
@@ -1 +1 @@
1
- import{V as e,it as t,nt as n,ot as r,rt as i}from"./D50Xf4Qj.js";import{t as a}from"./Dz7lEIMt.js";import{t as o}from"./Cl7Z3e6-.js";import{n as s,r as c}from"./DGz3YZQB.js";var l=new class{#e=t(!0);get loading(){return e(this.#e)}set loading(e){i(this.#e,e,!0)}#t=t(null);get project(){return e(this.#t)}set project(e){i(this.#t,e,!0)}#n=r(()=>this.project?String(this.project.id):``);get id(){return e(this.#n)}set id(e){i(this.#n,e)}#r=r(()=>this.project?.name??``);get name(){return e(this.#r)}set name(e){i(this.#r,e)}#i=r(()=>this.project?this.project.featureIds.map(String):[]);get featureIds(){return e(this.#i)}set featureIds(e){i(this.#i,e)}#a=t(null);get error(){return e(this.#a)}set error(e){i(this.#a,e,!0)}#o=t(null);get saveError(){return e(this.#o)}set saveError(e){i(this.#o,e,!0)}#s=t(!1);get saving(){return e(this.#s)}set saving(e){i(this.#s,e,!0)}#c=t(!1);get dirty(){return e(this.#c)}set dirty(e){i(this.#c,e,!0)}#l=t(``);get lastSavedAt(){return e(this.#l)}set lastSavedAt(e){i(this.#l,e,!0)}#u=t(`features`);get activePanel(){return e(this.#u)}set activePanel(e){i(this.#u,e,!0)}#d=t(``);get selectedFeatureId(){return e(this.#d)}set selectedFeatureId(e){i(this.#d,e,!0)}#f=t(``);get search(){return e(this.#f)}set search(e){i(this.#f,e,!0)}#p=t(n([]));get historyEntries(){return e(this.#p)}set historyEntries(e){i(this.#p,e,!0)}#m=t(-1);get historyCursor(){return e(this.#m)}set historyCursor(e){i(this.#m,e,!0)}currentId=null;client=null;clientUnsubscribe=null;historyUnsubscribe=null;async load(e){try{this.loading=!0,this.error=null,this.currentId=e;let t=await(await a()).useCases.getProject(e);this.project=t,this.dirty=!1,this.lastSavedAt=t?.updatedAt??``,this.subscribeRoom(e)}catch(e){this.error=e.message}finally{this.loading=!1}}setActivePanel(e){this.activePanel=e,o(`project.panel_switched`,{panel:e})}setSearch(e){this.search=e,o(`project.editor_search_updated`,{query:e})}setSelectedFeature(e){this.selectedFeatureId=e,e&&o(`project.feature_opened`,{featureId:e})}async addFeature(e){if(!(!this.project||!this.currentId)){this.saving=!0,this.saveError=null;try{let t=await(await a()).useCases.addFeatureToProject(this.currentId,e);this.applyProject(t),o(`project.feature_added`,{projectId:String(this.currentId),featureId:String(e)})}catch(e){this.saveError=e.message}finally{this.saving=!1}}}async removeFeature(e){if(!(!this.project||!this.currentId)){this.saving=!0,this.saveError=null;try{let t=await(await a()).useCases.removeFeatureFromProject(this.currentId,e);this.applyProject(t),o(`project.feature_removed`,{projectId:String(this.currentId),featureId:String(e)})}catch(e){this.saveError=e.message}finally{this.saving=!1}}}async rename(e){if(this.project){this.saving=!0,this.saveError=null;try{let t=await(await a()).useCases.saveProject({...this.project,name:e.trim()});this.applyProject(t)}catch(e){this.saveError=e.message}finally{this.saving=!1}}}async updateMetadata(e,t){if(!this.project)return;let n=e.trim();if(n.length!==0){this.saving=!0,this.saveError=null;try{let e=await a(),r=t.trim(),i=await e.useCases.saveProject({...this.project,name:n,description:r.length>0?r:void 0});this.applyProject(i),o(`project.saved`,{id:String(i.id),name:i.name})}catch(e){this.saveError=e.message}finally{this.saving=!1}}}async setDescription(e){if(this.project){this.saving=!0,this.saveError=null;try{let t=await a(),n=e.trim(),r=await t.useCases.saveProject({...this.project,description:n.length>0?n:void 0});this.applyProject(r)}catch(e){this.saveError=e.message}finally{this.saving=!1}}}dismissSaveError(){this.saveError=null}reset(){this.clientUnsubscribe&&=(this.clientUnsubscribe(),null),this.historyUnsubscribe&&=(this.historyUnsubscribe(),null),this.client=null,this.currentId=null,this.project=null,this.historyEntries=[],this.historyCursor=-1,this.error=null,this.saveError=null,this.loading=!0,this.saving=!1,this.dirty=!1,this.lastSavedAt=``,this.activePanel=`features`,this.selectedFeatureId=``,this.search=``}applyProject(e){this.project?s(this.project,e):this.project=e,this.dirty=!1,this.lastSavedAt=e.updatedAt}subscribeRoom(e){this.clientUnsubscribe&&=(this.clientUnsubscribe(),null),this.historyUnsubscribe&&=(this.historyUnsubscribe(),null);let t=c(`project`,e);this.client=t,this.clientUnsubscribe=t.observe((t,n)=>{n!==`local`&&t&&this.currentId===e&&(this.project?s(this.project,t):this.project=t,this.lastSavedAt=t.updatedAt)}),this.historyEntries=t.history.entries,this.historyCursor=t.history.cursor,this.historyUnsubscribe=t.observeHistory(t=>{this.currentId===e&&(this.historyEntries=t.entries,this.historyCursor=t.cursor)})}};export{l as t};
1
+ import{V as e,it as t,nt as n,ot as r,rt as i}from"./D50Xf4Qj.js";import{t as a}from"./DPrNvhwL.js";import{t as o}from"./Cl7Z3e6-.js";import{n as s,r as c}from"./BEi9bPpt.js";var l=new class{#e=t(!0);get loading(){return e(this.#e)}set loading(e){i(this.#e,e,!0)}#t=t(null);get project(){return e(this.#t)}set project(e){i(this.#t,e,!0)}#n=r(()=>this.project?String(this.project.id):``);get id(){return e(this.#n)}set id(e){i(this.#n,e)}#r=r(()=>this.project?.name??``);get name(){return e(this.#r)}set name(e){i(this.#r,e)}#i=r(()=>this.project?this.project.featureIds.map(String):[]);get featureIds(){return e(this.#i)}set featureIds(e){i(this.#i,e)}#a=t(null);get error(){return e(this.#a)}set error(e){i(this.#a,e,!0)}#o=t(null);get saveError(){return e(this.#o)}set saveError(e){i(this.#o,e,!0)}#s=t(!1);get saving(){return e(this.#s)}set saving(e){i(this.#s,e,!0)}#c=t(!1);get dirty(){return e(this.#c)}set dirty(e){i(this.#c,e,!0)}#l=t(``);get lastSavedAt(){return e(this.#l)}set lastSavedAt(e){i(this.#l,e,!0)}#u=t(`features`);get activePanel(){return e(this.#u)}set activePanel(e){i(this.#u,e,!0)}#d=t(``);get selectedFeatureId(){return e(this.#d)}set selectedFeatureId(e){i(this.#d,e,!0)}#f=t(``);get search(){return e(this.#f)}set search(e){i(this.#f,e,!0)}#p=t(n([]));get historyEntries(){return e(this.#p)}set historyEntries(e){i(this.#p,e,!0)}#m=t(-1);get historyCursor(){return e(this.#m)}set historyCursor(e){i(this.#m,e,!0)}currentId=null;client=null;clientUnsubscribe=null;historyUnsubscribe=null;async load(e){try{this.loading=!0,this.error=null,this.currentId=e;let t=await(await a()).useCases.getProject(e);this.project=t,this.dirty=!1,this.lastSavedAt=t?.updatedAt??``,this.subscribeRoom(e)}catch(e){this.error=e.message}finally{this.loading=!1}}setActivePanel(e){this.activePanel=e,o(`project.panel_switched`,{panel:e})}setSearch(e){this.search=e,o(`project.editor_search_updated`,{query:e})}setSelectedFeature(e){this.selectedFeatureId=e,e&&o(`project.feature_opened`,{featureId:e})}async addFeature(e){if(!(!this.project||!this.currentId)){this.saving=!0,this.saveError=null;try{let t=await(await a()).useCases.addFeatureToProject(this.currentId,e);this.applyProject(t),o(`project.feature_added`,{projectId:String(this.currentId),featureId:String(e)})}catch(e){this.saveError=e.message}finally{this.saving=!1}}}async removeFeature(e){if(!(!this.project||!this.currentId)){this.saving=!0,this.saveError=null;try{let t=await(await a()).useCases.removeFeatureFromProject(this.currentId,e);this.applyProject(t),o(`project.feature_removed`,{projectId:String(this.currentId),featureId:String(e)})}catch(e){this.saveError=e.message}finally{this.saving=!1}}}async rename(e){if(this.project){this.saving=!0,this.saveError=null;try{let t=await(await a()).useCases.saveProject({...this.project,name:e.trim()});this.applyProject(t)}catch(e){this.saveError=e.message}finally{this.saving=!1}}}async updateMetadata(e,t){if(!this.project)return;let n=e.trim();if(n.length!==0){this.saving=!0,this.saveError=null;try{let e=await a(),r=t.trim(),i=await e.useCases.saveProject({...this.project,name:n,description:r.length>0?r:void 0});this.applyProject(i),o(`project.saved`,{id:String(i.id),name:i.name})}catch(e){this.saveError=e.message}finally{this.saving=!1}}}async setDescription(e){if(this.project){this.saving=!0,this.saveError=null;try{let t=await a(),n=e.trim(),r=await t.useCases.saveProject({...this.project,description:n.length>0?n:void 0});this.applyProject(r)}catch(e){this.saveError=e.message}finally{this.saving=!1}}}dismissSaveError(){this.saveError=null}reset(){this.clientUnsubscribe&&=(this.clientUnsubscribe(),null),this.historyUnsubscribe&&=(this.historyUnsubscribe(),null),this.client=null,this.currentId=null,this.project=null,this.historyEntries=[],this.historyCursor=-1,this.error=null,this.saveError=null,this.loading=!0,this.saving=!1,this.dirty=!1,this.lastSavedAt=``,this.activePanel=`features`,this.selectedFeatureId=``,this.search=``}applyProject(e){this.project?s(this.project,e):this.project=e,this.dirty=!1,this.lastSavedAt=e.updatedAt}subscribeRoom(e){this.clientUnsubscribe&&=(this.clientUnsubscribe(),null),this.historyUnsubscribe&&=(this.historyUnsubscribe(),null);let t=c(`project`,e);this.client=t,this.clientUnsubscribe=t.observe((t,n)=>{n!==`local`&&t&&this.currentId===e&&(this.project?s(this.project,t):this.project=t,this.lastSavedAt=t.updatedAt)}),this.historyEntries=t.history.entries,this.historyCursor=t.history.cursor,this.historyUnsubscribe=t.observeHistory(t=>{this.currentId===e&&(this.historyEntries=t.entries,this.historyCursor=t.cursor)})}};export{l as t};
@@ -1 +1 @@
1
- import{V as e,it as t,nt as n,ot as r,rt as i}from"./D50Xf4Qj.js";import{C as a,b as o,t as s,x as c,y as l}from"./Dz7lEIMt.js";var u=[{name:`Rose`,color:`#f43f5e`},{name:`Orange`,color:`#f97316`},{name:`Amber`,color:`#f59e0b`},{name:`Lime`,color:`#84cc16`},{name:`Emerald`,color:`#10b981`},{name:`Teal`,color:`#14b8a6`},{name:`Sky`,color:`#0ea5e9`},{name:`Violet`,color:`#8b5cf6`},{name:`Fuchsia`,color:`#d946ef`},{name:`Slate`,color:`#64748b`}],d=(e,t)=>{let n=new Map;if(u.length===0)return n;let r=[...new Set(e.map(e=>e.trim().toLowerCase()).filter(e=>e.length>0))].sort(),i=new Set;for(let e of Object.values(t.assignments))typeof e==`string`&&i.add(e);let a=u.filter(e=>!i.has(e.color)),o=a.length>0?a:u,s=0;for(let e of r){let r=t.assignments[e];typeof r!=`string`&&r!==null&&(n.set(e,o[s%o.length].color),s++)}return n},f=new class{#e=t(n(l));get palette(){return e(this.#e)}set palette(e){i(this.#e,e,!0)}#t=t(!1);get loaded(){return e(this.#t)}set loaded(e){i(this.#t,e,!0)}#n=t(null);get error(){return e(this.#n)}set error(e){i(this.#n,e,!0)}#r=t(n([]));get knownTypes(){return e(this.#r)}set knownTypes(e){i(this.#r,e,!0)}#i=r(()=>d(this.knownTypes,this.palette));get autoColors(){return e(this.#i)}set autoColors(e){i(this.#i,e)}async refresh(){try{let e=await s();this.palette=await e.useCases.getTagPalette(),this.loaded=!0,this.error=null}catch(e){this.error=e.message}}registerTypes(e){if(e.length===0)return;let t=new Set(this.knownTypes),n=!1;for(let r of e){let e=r.trim().toLowerCase();e&&(t.has(e)||(t.add(e),n=!0))}n&&(this.knownTypes=[...t])}colorFor(e){return c(this.palette,e)?null:o(this.palette,e)||(this.autoColors.get(e.trim().toLowerCase())??null)}colorForTag(e){return this.colorFor(e.type)}explicitAssignmentFor(e){return c(this.palette,e)?null:o(this.palette,e)??void 0}isExplicitlyCleared(e){return c(this.palette,e)}async setTypeColor(e,t){let n=this.palette;t!==null&&(this.palette=a(n,e,t));try{let n=await(await s()).useCases.setTagTypeColor({type:e,color:t});this.palette=n}catch(e){throw this.palette=n,this.error=e.message,e}}async renameTag(e,t){let n=await(await s()).useCases.renameTag({from:e,to:t});return await this.refresh(),{projectsUpdated:n.projectsUpdated,featuresUpdated:n.featuresUpdated}}};export{u as n,f as t};
1
+ import{V as e,it as t,nt as n,ot as r,rt as i}from"./D50Xf4Qj.js";import{C as a,b as o,t as s,x as c,y as l}from"./DPrNvhwL.js";var u=[{name:`Rose`,color:`#f43f5e`},{name:`Orange`,color:`#f97316`},{name:`Amber`,color:`#f59e0b`},{name:`Lime`,color:`#84cc16`},{name:`Emerald`,color:`#10b981`},{name:`Teal`,color:`#14b8a6`},{name:`Sky`,color:`#0ea5e9`},{name:`Violet`,color:`#8b5cf6`},{name:`Fuchsia`,color:`#d946ef`},{name:`Slate`,color:`#64748b`}],d=(e,t)=>{let n=new Map;if(u.length===0)return n;let r=[...new Set(e.map(e=>e.trim().toLowerCase()).filter(e=>e.length>0))].sort(),i=new Set;for(let e of Object.values(t.assignments))typeof e==`string`&&i.add(e);let a=u.filter(e=>!i.has(e.color)),o=a.length>0?a:u,s=0;for(let e of r){let r=t.assignments[e];typeof r!=`string`&&r!==null&&(n.set(e,o[s%o.length].color),s++)}return n},f=new class{#e=t(n(l));get palette(){return e(this.#e)}set palette(e){i(this.#e,e,!0)}#t=t(!1);get loaded(){return e(this.#t)}set loaded(e){i(this.#t,e,!0)}#n=t(null);get error(){return e(this.#n)}set error(e){i(this.#n,e,!0)}#r=t(n([]));get knownTypes(){return e(this.#r)}set knownTypes(e){i(this.#r,e,!0)}#i=r(()=>d(this.knownTypes,this.palette));get autoColors(){return e(this.#i)}set autoColors(e){i(this.#i,e)}async refresh(){try{let e=await s();this.palette=await e.useCases.getTagPalette(),this.loaded=!0,this.error=null}catch(e){this.error=e.message}}registerTypes(e){if(e.length===0)return;let t=new Set(this.knownTypes),n=!1;for(let r of e){let e=r.trim().toLowerCase();e&&(t.has(e)||(t.add(e),n=!0))}n&&(this.knownTypes=[...t])}colorFor(e){return c(this.palette,e)?null:o(this.palette,e)||(this.autoColors.get(e.trim().toLowerCase())??null)}colorForTag(e){return this.colorFor(e.type)}explicitAssignmentFor(e){return c(this.palette,e)?null:o(this.palette,e)??void 0}isExplicitlyCleared(e){return c(this.palette,e)}async setTypeColor(e,t){let n=this.palette;t!==null&&(this.palette=a(n,e,t));try{let n=await(await s()).useCases.setTagTypeColor({type:e,color:t});this.palette=n}catch(e){throw this.palette=n,this.error=e.message,e}}async renameTag(e,t){let n=await(await s()).useCases.renameTag({from:e,to:t});return await this.refresh(),{projectsUpdated:n.projectsUpdated,featuresUpdated:n.featuresUpdated}}};export{u as n,f as t};
@@ -1 +1 @@
1
- import{ht as e}from"./Dz7lEIMt.js";var t=null,n=new Set,r=()=>{if(t)return;let r=e.token,i=r.length>0?`/api/sync/events?token=${encodeURIComponent(r)}`:`/api/sync/events`;t=new EventSource(i),t.addEventListener(`sync`,e=>{let t;try{t=JSON.parse(e.data)}catch{return}for(let e of n)try{e(t)}catch{}})},i=e=>(r(),n.add(e),()=>{n.delete(e)});export{i as t};
1
+ import{ht as e}from"./DPrNvhwL.js";var t=null,n=new Set,r=()=>{if(t)return;let r=e.token,i=r.length>0?`/api/sync/events?token=${encodeURIComponent(r)}`:`/api/sync/events`;t=new EventSource(i),t.addEventListener(`sync`,e=>{let t;try{t=JSON.parse(e.data)}catch{return}for(let e of n)try{e(t)}catch{}})},i=e=>(r(),n.add(e),()=>{n.delete(e)});export{i as t};
@@ -0,0 +1,2 @@
1
+ a dU��fl��E��:t�z�r�Q�=�%-L����4��㙸tE_���ĬK�
2
+ ��$���}���SY����ߟ7���,Y"G���c�s|��G��3�#����g�U�~��wۦĹ�w��/*v��6����K'��11��V�e1�*'V�� ��<z8�P�9�-�w��^�Fc�<���)ݘ;0FB���И���������
@@ -1 +1 @@
1
- import{V as e,it as t,rt as n}from"./D50Xf4Qj.js";import{j as r}from"./Dz7lEIMt.js";import{r as i}from"./DGz3YZQB.js";var a=new class{#e=t(!1);get loading(){return e(this.#e)}set loading(e){n(this.#e,e,!0)}#t=t(!1);get refreshing(){return e(this.#t)}set refreshing(e){n(this.#t,e,!0)}#n=t(null);get status(){return e(this.#n)}set status(e){n(this.#n,e,!0)}#r=t(null);get error(){return e(this.#r)}set error(e){n(this.#r,e,!0)}#i=t(null);get lastFetchedAt(){return e(this.#i)}set lastFetchedAt(e){n(this.#i,e,!0)}#a=t(null);get lastUpdateSignalAt(){return e(this.#a)}set lastUpdateSignalAt(e){n(this.#a,e,!0)}currentId=null;client=null;clientUnsubscribe=null;async load(e){this.currentId=e,this.error=null,this.loading=!0;try{await this.fetchOnce(e),this.subscribeRoom(e)}finally{this.loading=!1}}async refresh(){if(!(!this.currentId||this.refreshing)){this.refreshing=!0,this.error=null;try{await this.fetchOnce(this.currentId)}finally{this.refreshing=!1}}}reset(){this.clientUnsubscribe&&=(this.clientUnsubscribe(),null),this.client=null,this.currentId=null,this.status=null,this.error=null,this.loading=!1,this.refreshing=!1,this.lastFetchedAt=null,this.lastUpdateSignalAt=null}async fetchOnce(e){try{let t=await r(`/api/snapshots/${e}/implementation-status`);if(!t.ok){this.status=null;return}let n=await t.json();this.status=n??null,this.lastFetchedAt=new Date().toISOString()}catch(e){this.error=e.message}}subscribeRoom(e){this.clientUnsubscribe&&=(this.clientUnsubscribe(),null);let t=i(`implementation-status`,e);this.client=t,this.clientUnsubscribe=t.observe((t,n)=>{this.currentId===e&&n!==`local`&&(this.lastUpdateSignalAt=new Date().toISOString(),this.status=t,this.lastFetchedAt=this.lastUpdateSignalAt)})}};export{a as t};
1
+ import{V as e,it as t,rt as n}from"./D50Xf4Qj.js";import{j as r}from"./DPrNvhwL.js";import{r as i}from"./BEi9bPpt.js";var a=new class{#e=t(!1);get loading(){return e(this.#e)}set loading(e){n(this.#e,e,!0)}#t=t(!1);get refreshing(){return e(this.#t)}set refreshing(e){n(this.#t,e,!0)}#n=t(null);get status(){return e(this.#n)}set status(e){n(this.#n,e,!0)}#r=t(null);get error(){return e(this.#r)}set error(e){n(this.#r,e,!0)}#i=t(null);get lastFetchedAt(){return e(this.#i)}set lastFetchedAt(e){n(this.#i,e,!0)}#a=t(null);get lastUpdateSignalAt(){return e(this.#a)}set lastUpdateSignalAt(e){n(this.#a,e,!0)}currentId=null;client=null;clientUnsubscribe=null;async load(e){this.currentId=e,this.error=null,this.loading=!0;try{await this.fetchOnce(e),this.subscribeRoom(e)}finally{this.loading=!1}}async refresh(){if(!(!this.currentId||this.refreshing)){this.refreshing=!0,this.error=null;try{await this.fetchOnce(this.currentId)}finally{this.refreshing=!1}}}reset(){this.clientUnsubscribe&&=(this.clientUnsubscribe(),null),this.client=null,this.currentId=null,this.status=null,this.error=null,this.loading=!1,this.refreshing=!1,this.lastFetchedAt=null,this.lastUpdateSignalAt=null}async fetchOnce(e){try{let t=await r(`/api/snapshots/${e}/implementation-status`);if(!t.ok){this.status=null;return}let n=await t.json();this.status=n??null,this.lastFetchedAt=new Date().toISOString()}catch(e){this.error=e.message}}subscribeRoom(e){this.clientUnsubscribe&&=(this.clientUnsubscribe(),null);let t=i(`implementation-status`,e);this.client=t,this.clientUnsubscribe=t.observe((t,n)=>{this.currentId===e&&n!==`local`&&(this.lastUpdateSignalAt=new Date().toISOString(),this.status=t,this.lastFetchedAt=this.lastUpdateSignalAt)})}};export{a as t};
@@ -1 +1 @@
1
- import{V as e,it as t,nt as n,rt as r}from"./D50Xf4Qj.js";import{i,t as a}from"./Dz7lEIMt.js";var o=new class{#e=t(!1);get loading(){return e(this.#e)}set loading(e){r(this.#e,e,!0)}#t=t(null);get project(){return e(this.#t)}set project(e){r(this.#t,e,!0)}#n=t(n([]));get siblings(){return e(this.#n)}set siblings(e){r(this.#n,e,!0)}#r=t(null);get error(){return e(this.#r)}set error(e){r(this.#r,e,!0)}currentFeatureId=null;async load(e){this.currentFeatureId=e,this.loading=!0,this.error=null;try{let t=await a(),n=await t.useCases.findProjectContainingFeature(e);if(this.currentFeatureId!==e)return;if(this.project=n,!n){this.siblings=[];return}let r=n.featureIds.filter(t=>t!==e),i=[];for(let n of r){let r=await t.useCases.getFeature(n);if(this.currentFeatureId!==e)return;r&&i.push(r)}this.siblings=i}catch(e){this.error=e.message}finally{this.currentFeatureId===e&&(this.loading=!1)}}reset(){this.currentFeatureId=null,this.project=null,this.siblings=[],this.error=null,this.loading=!1}get isInProject(){return this.project!==null}isActionQueued(e,t){let n=this.project?.implementationQueue??[],r=`action:${String(e)}:${String(t)}`;return n.some(e=>i(e)===r)}isSurfaceQueued(e,t){let n=this.project?.implementationQueue??[],r=`surface:${String(e)}:${String(t)}`;return n.some(e=>i(e)===r)}async enqueueAction(e,t){let n=this.project;if(!n)return!1;try{let r=await(await a()).useCases.enqueueQueueItem(n.id,{kind:`action`,featureId:e,actionId:t});return this.project=r.project,!0}catch(e){return this.error=e.message,!1}}async enqueueSurface(e,t){let n=this.project;if(!n)return!1;try{let r=await(await a()).useCases.enqueueQueueItem(n.id,{kind:`surface`,featureId:e,surfaceId:t});return this.project=r.project,!0}catch(e){return this.error=e.message,!1}}async dequeueByItemId(e){let t=this.project;if(t)try{let n=await(await a()).useCases.dequeueQueueItem(t.id,e);this.project=n}catch(e){this.error=e.message}}findQueueItemIdForAction(e,t){let n=this.project?.implementationQueue??[],r=`action:${String(e)}:${String(t)}`,a=n.find(e=>i(e)===r);return a?a.id:null}findQueueItemIdForSurface(e,t){let n=this.project?.implementationQueue??[],r=`surface:${String(e)}:${String(t)}`,a=n.find(e=>i(e)===r);return a?a.id:null}};export{o as t};
1
+ import{V as e,it as t,nt as n,rt as r}from"./D50Xf4Qj.js";import{i,t as a}from"./DPrNvhwL.js";var o=new class{#e=t(!1);get loading(){return e(this.#e)}set loading(e){r(this.#e,e,!0)}#t=t(null);get project(){return e(this.#t)}set project(e){r(this.#t,e,!0)}#n=t(n([]));get siblings(){return e(this.#n)}set siblings(e){r(this.#n,e,!0)}#r=t(null);get error(){return e(this.#r)}set error(e){r(this.#r,e,!0)}currentFeatureId=null;async load(e){this.currentFeatureId=e,this.loading=!0,this.error=null;try{let t=await a(),n=await t.useCases.findProjectContainingFeature(e);if(this.currentFeatureId!==e)return;if(this.project=n,!n){this.siblings=[];return}let r=n.featureIds.filter(t=>t!==e),i=[];for(let n of r){let r=await t.useCases.getFeature(n);if(this.currentFeatureId!==e)return;r&&i.push(r)}this.siblings=i}catch(e){this.error=e.message}finally{this.currentFeatureId===e&&(this.loading=!1)}}reset(){this.currentFeatureId=null,this.project=null,this.siblings=[],this.error=null,this.loading=!1}get isInProject(){return this.project!==null}isActionQueued(e,t){let n=this.project?.implementationQueue??[],r=`action:${String(e)}:${String(t)}`;return n.some(e=>i(e)===r)}isSurfaceQueued(e,t){let n=this.project?.implementationQueue??[],r=`surface:${String(e)}:${String(t)}`;return n.some(e=>i(e)===r)}async enqueueAction(e,t){let n=this.project;if(!n)return!1;try{let r=await(await a()).useCases.enqueueQueueItem(n.id,{kind:`action`,featureId:e,actionId:t});return this.project=r.project,!0}catch(e){return this.error=e.message,!1}}async enqueueSurface(e,t){let n=this.project;if(!n)return!1;try{let r=await(await a()).useCases.enqueueQueueItem(n.id,{kind:`surface`,featureId:e,surfaceId:t});return this.project=r.project,!0}catch(e){return this.error=e.message,!1}}async dequeueByItemId(e){let t=this.project;if(t)try{let n=await(await a()).useCases.dequeueQueueItem(t.id,e);this.project=n}catch(e){this.error=e.message}}findQueueItemIdForAction(e,t){let n=this.project?.implementationQueue??[],r=`action:${String(e)}:${String(t)}`,a=n.find(e=>i(e)===r);return a?a.id:null}findQueueItemIdForSurface(e,t){let n=this.project?.implementationQueue??[],r=`surface:${String(e)}:${String(t)}`,a=n.find(e=>i(e)===r);return a?a.id:null}};export{o as t};
@@ -1 +1 @@
1
- import{$ as e,B as t,F as n,J as r,M as i,N as a,O as o,P as s,Q as c,R as l,V as u,_t as d,a as f,d as p,dt as m,et as h,ft as g,gt as _,it as v,j as y,l as b,m as x,ot as S,q as C,rt as w,s as T,tt as E,u as D,v as O,y as k,z as A}from"./D50Xf4Qj.js";import"./xihTtKlq.js";import{A as j,S as M,T as N,k as P}from"./Dz7lEIMt.js";import{n as F,t as I}from"./CyN2OJjk.js";import{n as L}from"./DDKHPhI8.js";var R=n(`<button type="button"></button>`),z=n(`<div class="absolute right-0 z-30 mt-2 w-56 rounded-lg border border-hairline bg-white p-3 shadow-lg" role="dialog" aria-label="Color picker"><p class="mb-2 text-[10px] font-semibold uppercase tracking-wider text-slate-500">Presets</p> <div class="grid grid-cols-5 gap-2"></div> <div class="mt-3 border-t border-hairline pt-3"><label class="flex items-center justify-between gap-2 text-xs text-slate-700"><span class="font-medium">Custom</span> <input type="color" class="h-7 w-12 cursor-pointer rounded border border-slate-300 bg-white p-0.5"/></label></div> <div class="mt-2"><button type="button" class="flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-left text-xs font-medium text-slate-600 transition hover:bg-slate-50 hover:text-red-700 disabled:cursor-default disabled:opacity-40 disabled:hover:bg-transparent disabled:hover:text-slate-600"><!> <span>No color</span></button></div></div>`),B=n(`<div class="relative inline-block"><button type="button" class="flex size-6 cursor-pointer items-center justify-center overflow-hidden rounded-full ring-1 ring-inset ring-slate-300 transition hover:ring-slate-500" aria-haspopup="dialog" title="Pick a color"><!></button> <!></div>`);function V(t,n){g(n,!0);let i=f(n,`label`,3,`tag`),s=v(!1),c=v(null),l=v(null);function h(){w(s,!u(s))}function b(){w(s,!1)}r(()=>{if(!u(s))return;let e=e=>{let t=e.target;u(c)?.contains(t)||u(l)?.contains(t)||b()},t=e=>{e.key===`Escape`&&b()};return window.addEventListener(`pointerdown`,e,!0),window.addEventListener(`keydown`,t),()=>{window.removeEventListener(`pointerdown`,e,!0),window.removeEventListener(`keydown`,t)}});function j(e){n.onChange(e),b()}function N(e){let t=e.target.value;n.onChange(M(t))}function P(e){let t=e.target.value;n.onChange(M(t)),b()}var I=B(),V=e(I),H=e(V),U=e=>{L(e,{color:null,size:4})};y(H,e=>{n.value||e(U)}),d(V),T(V,e=>w(l,e),()=>u(l));var W=E(V,2),G=t=>{var r=z(),s=E(e(r),2);o(s,21,()=>F,e=>e.color,(e,t)=>{let r=S(()=>n.value===u(t).color);var o=R();let s;C(()=>{s=k(o,1,`flex size-7 items-center justify-center rounded-full ring-offset-2 transition hover:scale-110`,null,s,{"ring-2":u(r),"ring-slate-900":u(r)}),O(o,`background-color: ${u(t).color??``};`),p(o,`title`,u(t).name),p(o,`aria-label`,`Set ${i()} color to ${u(t).name}`)}),A(`click`,o,()=>j(u(t).color)),a(e,o)}),d(s);var l=E(s,2),f=e(l),m=E(e(f),2);D(m),d(f),d(l);var h=E(l,2),g=e(h);L(e(g),{color:null,size:4}),_(2),d(g),d(h),d(r),T(r,e=>w(c,e),()=>u(c)),C(()=>{x(m,n.value??`#94a3b8`),p(m,`aria-label`,`Custom color for ${i()}`),g.disabled=n.value===null}),A(`input`,m,N),A(`change`,m,P),A(`click`,g,()=>j(null)),a(t,r)};y(W,e=>{u(s)&&e(G)}),d(I),C(()=>{O(V,n.value?`background-color: ${n.value};`:`background-color: white;`),p(V,`aria-expanded`,u(s)),p(V,`aria-label`,`Pick a color for ${i()}`)}),A(`click`,V,h),a(t,I),m()}l([`click`,`input`,`change`]);var H=n(`<p class="text-sm text-slate-500">No tags yet. Add a tag to a project or feature to start grouping.</p>`),U=n(`<li class="flex items-center justify-between gap-3 rounded-md px-2 py-1 text-sm hover:bg-slate-50"><span class="truncate text-slate-700"> </span> <button type="button" class="rounded px-2 py-1 text-xs font-medium text-slate-500 hover:bg-slate-100 hover:text-slate-900">Rename</button></li>`),W=n(`<li class="space-y-2"><div class="flex items-center justify-between gap-3"><div class="flex min-w-0 items-center gap-2"><!> <span class="truncate text-sm font-semibold text-slate-900"> </span> <span class="text-xs text-slate-500"> </span></div> <!></div> <ul class="space-y-1 pl-5"></ul></li>`),G=n(`<ul class="space-y-5"></ul>`),K=n(`<p class="text-sm text-red-700"> </p>`),q=n(`<div class="fixed inset-0 z-50 flex items-start justify-center bg-slate-950/40 px-4 py-24 backdrop-blur-sm" role="presentation"><div class="w-full max-w-md overflow-hidden rounded-xl border border-hairline bg-white shadow-xl" role="dialog" aria-modal="true" aria-labelledby="rename-tag-title"><header class="border-b border-hairline px-5 py-4"><h3 id="rename-tag-title" class="text-base font-semibold text-slate-950"> </h3> <p class="mt-1 text-xs text-slate-500">Updates every project and feature that uses this tag.</p></header> <div class="space-y-3 px-5 py-4"><label class="block text-sm"><span class="mb-1 block text-xs font-medium uppercase tracking-wide text-slate-500">Type</span> <input type="text" class="h-9 w-full rounded-md border border-slate-300 px-3 text-sm outline-none focus:border-brand-700"/></label> <label class="block text-sm"><span class="mb-1 block text-xs font-medium uppercase tracking-wide text-slate-500">Value</span> <input type="text" class="h-9 w-full rounded-md border border-slate-300 px-3 text-sm outline-none focus:border-brand-700"/></label> <!></div> <footer class="flex items-center justify-end gap-2 border-t border-hairline bg-slate-50 px-5 py-3"><button type="button" class="rounded-md px-3 py-1.5 text-sm font-medium text-slate-700 hover:bg-slate-100 disabled:opacity-40">Cancel</button> <button type="button" class="rounded-md bg-slate-900 px-3 py-1.5 text-sm font-medium text-white hover:bg-slate-800 disabled:opacity-40"> </button></footer></div></div>`),J=n(`<div class="fixed inset-0 z-40 flex items-start justify-center bg-slate-950/30 px-4 py-16 backdrop-blur-sm" role="presentation"><div class="w-full max-w-2xl overflow-hidden rounded-xl border border-hairline bg-white shadow-xl" role="dialog" aria-modal="true" aria-labelledby="manage-tags-title"><header class="flex items-start justify-between gap-4 border-b border-hairline px-5 py-4"><div><h2 id="manage-tags-title" class="text-base font-semibold text-slate-950">Manage tags</h2> <p class="mt-1 text-sm text-slate-500">Set a color per tag type, or rename a tag everywhere it appears.</p></div> <button type="button" class="rounded-md px-2 py-1 text-sm text-slate-500 hover:bg-slate-100 hover:text-slate-900" aria-label="Close">x</button></header> <div class="max-h-[60vh] overflow-y-auto px-5 py-4"><!></div> <footer class="flex items-center justify-end gap-2 border-t border-hairline bg-slate-50 px-5 py-3"><button type="button" class="rounded-md px-3 py-1.5 text-sm font-medium text-slate-700 hover:bg-slate-100">Done</button></footer></div></div> <!>`,1);function Y(n,r){g(r,!0);let l=v(null),f=S(()=>{let e=new Map;for(let t of r.tags){let n=t.type.trim().toLowerCase();if(!n)continue;let r=e.get(n);r?r.tags.some(e=>P(e)===P(t))||r.tags.push(t):e.set(n,{tags:[t]})}return[...e.entries()].sort(([e],[t])=>e.localeCompare(t)).map(([e,t])=>({key:e,display:N(e),tags:[...t.tags].sort((e,t)=>e.value.localeCompare(t.value))}))});async function x(e,t){try{await I.setTypeColor(e,t)}catch(e){console.error(`Failed to set tag color`,e)}}function T(e){w(l,{tag:e,type:N(e.type),value:N(e.value),busy:!1,error:null},!0)}function O(){w(l,null)}async function k(){let e=u(l);if(!e)return;let t=e.tag,n={type:e.type.trim(),value:e.value.trim()};if(!n.type||!n.value){w(l,{...e,error:`Type and value are required`},!0);return}if(P(t)===P(n)){w(l,null);return}w(l,{...e,busy:!0,error:null},!0);try{let e=await I.renameTag(t,n);w(l,null),await r.onRenamed?.({from:t,to:n,projectsUpdated:e.projectsUpdated,featuresUpdated:e.featuresUpdated})}catch(t){w(l,{...e,busy:!1,error:t.message},!0)}}function M(e){e.key===`Escape`&&(u(l)?O():r.onClose())}var F=s();t(`keydown`,c,M);var R=h(F),z=t=>{var n=J(),s=h(n),c=e(s),m=e(c),g=E(e(m),2);d(m);var v=E(m,2),w=e(v),M=e=>{a(e,H())},F=t=>{var n=G();o(n,21,()=>u(f),e=>e.key,(t,n)=>{let r=S(()=>I.colorFor(u(n).key));var s=W(),c=e(s),l=e(c),f=e(l);L(f,{get color(){return u(r)},size:2.5});var m=E(f,2),h=e(m,!0);d(m);var g=E(m,2),_=e(g);d(g),d(l),V(E(l,2),{get value(){return u(r)},onChange:e=>x(u(n).key,e),get label(){return u(n).display}}),d(c);var v=E(c,2);o(v,21,()=>u(n).tags,e=>P(e),(t,n)=>{var r=U(),o=e(r),s=e(o,!0);d(o);var c=E(o,2);d(r),C((e,t)=>{p(o,`title`,e),i(s,t)},[()=>j(u(n)),()=>N(u(n).value)]),A(`click`,c,()=>T(u(n))),a(t,r)}),d(v),d(s),C(()=>{i(h,u(n).display),i(_,`(${u(n).tags.length??``} value${u(n).tags.length===1?``:`s`})`)}),a(t,s)}),d(n),a(t,n)};y(w,e=>{u(f).length===0?e(M):e(F,-1)}),d(v);var R=E(v,2),z=e(R);d(R),d(c),d(s);var B=E(s,2),Y=t=>{var n=q(),r=e(n),o=e(r),s=e(o),c=e(s);d(s),_(2),d(o);var f=E(o,2),p=e(f),m=E(e(p),2);D(m),d(p);var h=E(p,2),g=E(e(h),2);D(g),d(h);var v=E(h,2),x=t=>{var n=K(),r=e(n,!0);d(n),C(()=>i(r,u(l).error)),a(t,n)};y(v,e=>{u(l).error&&e(x)}),d(f);var S=E(f,2),w=e(S),T=E(w,2),M=e(T,!0);d(T),d(S),d(r),d(n),C(e=>{i(c,`Rename "${e??``}"`),m.disabled=u(l).busy,g.disabled=u(l).busy,w.disabled=u(l).busy,T.disabled=u(l).busy,i(M,u(l).busy?`Renaming...`:`Rename everywhere`)},[()=>j(u(l).tag)]),A(`click`,n,e=>{e.currentTarget===e.target&&!u(l)?.busy&&O()}),b(m,()=>u(l).type,e=>u(l).type=e),b(g,()=>u(l).value,e=>u(l).value=e),A(`click`,w,O),A(`click`,T,k),a(t,n)};y(B,e=>{u(l)&&e(Y)}),A(`click`,s,e=>{e.currentTarget===e.target&&r.onClose()}),A(`click`,g,function(...e){r.onClose?.apply(this,e)}),A(`click`,z,function(...e){r.onClose?.apply(this,e)}),a(t,n)};y(R,e=>{r.open&&e(z)}),a(n,F),m()}l([`click`]);export{Y as t};
1
+ import{$ as e,B as t,F as n,J as r,M as i,N as a,O as o,P as s,Q as c,R as l,V as u,_t as d,a as f,d as p,dt as m,et as h,ft as g,gt as _,it as v,j as y,l as b,m as x,ot as S,q as C,rt as w,s as T,tt as E,u as D,v as O,y as k,z as A}from"./D50Xf4Qj.js";import"./xihTtKlq.js";import{A as j,S as M,T as N,k as P}from"./DPrNvhwL.js";import{n as F,t as I}from"./CHmg-Am5.js";import{n as L}from"./BDNWGeD3.js";var R=n(`<button type="button"></button>`),z=n(`<div class="absolute right-0 z-30 mt-2 w-56 rounded-lg border border-hairline bg-white p-3 shadow-lg" role="dialog" aria-label="Color picker"><p class="mb-2 text-[10px] font-semibold uppercase tracking-wider text-slate-500">Presets</p> <div class="grid grid-cols-5 gap-2"></div> <div class="mt-3 border-t border-hairline pt-3"><label class="flex items-center justify-between gap-2 text-xs text-slate-700"><span class="font-medium">Custom</span> <input type="color" class="h-7 w-12 cursor-pointer rounded border border-slate-300 bg-white p-0.5"/></label></div> <div class="mt-2"><button type="button" class="flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-left text-xs font-medium text-slate-600 transition hover:bg-slate-50 hover:text-red-700 disabled:cursor-default disabled:opacity-40 disabled:hover:bg-transparent disabled:hover:text-slate-600"><!> <span>No color</span></button></div></div>`),B=n(`<div class="relative inline-block"><button type="button" class="flex size-6 cursor-pointer items-center justify-center overflow-hidden rounded-full ring-1 ring-inset ring-slate-300 transition hover:ring-slate-500" aria-haspopup="dialog" title="Pick a color"><!></button> <!></div>`);function V(t,n){g(n,!0);let i=f(n,`label`,3,`tag`),s=v(!1),c=v(null),l=v(null);function h(){w(s,!u(s))}function b(){w(s,!1)}r(()=>{if(!u(s))return;let e=e=>{let t=e.target;u(c)?.contains(t)||u(l)?.contains(t)||b()},t=e=>{e.key===`Escape`&&b()};return window.addEventListener(`pointerdown`,e,!0),window.addEventListener(`keydown`,t),()=>{window.removeEventListener(`pointerdown`,e,!0),window.removeEventListener(`keydown`,t)}});function j(e){n.onChange(e),b()}function N(e){let t=e.target.value;n.onChange(M(t))}function P(e){let t=e.target.value;n.onChange(M(t)),b()}var I=B(),V=e(I),H=e(V),U=e=>{L(e,{color:null,size:4})};y(H,e=>{n.value||e(U)}),d(V),T(V,e=>w(l,e),()=>u(l));var W=E(V,2),G=t=>{var r=z(),s=E(e(r),2);o(s,21,()=>F,e=>e.color,(e,t)=>{let r=S(()=>n.value===u(t).color);var o=R();let s;C(()=>{s=k(o,1,`flex size-7 items-center justify-center rounded-full ring-offset-2 transition hover:scale-110`,null,s,{"ring-2":u(r),"ring-slate-900":u(r)}),O(o,`background-color: ${u(t).color??``};`),p(o,`title`,u(t).name),p(o,`aria-label`,`Set ${i()} color to ${u(t).name}`)}),A(`click`,o,()=>j(u(t).color)),a(e,o)}),d(s);var l=E(s,2),f=e(l),m=E(e(f),2);D(m),d(f),d(l);var h=E(l,2),g=e(h);L(e(g),{color:null,size:4}),_(2),d(g),d(h),d(r),T(r,e=>w(c,e),()=>u(c)),C(()=>{x(m,n.value??`#94a3b8`),p(m,`aria-label`,`Custom color for ${i()}`),g.disabled=n.value===null}),A(`input`,m,N),A(`change`,m,P),A(`click`,g,()=>j(null)),a(t,r)};y(W,e=>{u(s)&&e(G)}),d(I),C(()=>{O(V,n.value?`background-color: ${n.value};`:`background-color: white;`),p(V,`aria-expanded`,u(s)),p(V,`aria-label`,`Pick a color for ${i()}`)}),A(`click`,V,h),a(t,I),m()}l([`click`,`input`,`change`]);var H=n(`<p class="text-sm text-slate-500">No tags yet. Add a tag to a project or feature to start grouping.</p>`),U=n(`<li class="flex items-center justify-between gap-3 rounded-md px-2 py-1 text-sm hover:bg-slate-50"><span class="truncate text-slate-700"> </span> <button type="button" class="rounded px-2 py-1 text-xs font-medium text-slate-500 hover:bg-slate-100 hover:text-slate-900">Rename</button></li>`),W=n(`<li class="space-y-2"><div class="flex items-center justify-between gap-3"><div class="flex min-w-0 items-center gap-2"><!> <span class="truncate text-sm font-semibold text-slate-900"> </span> <span class="text-xs text-slate-500"> </span></div> <!></div> <ul class="space-y-1 pl-5"></ul></li>`),G=n(`<ul class="space-y-5"></ul>`),K=n(`<p class="text-sm text-red-700"> </p>`),q=n(`<div class="fixed inset-0 z-50 flex items-start justify-center bg-slate-950/40 px-4 py-24 backdrop-blur-sm" role="presentation"><div class="w-full max-w-md overflow-hidden rounded-xl border border-hairline bg-white shadow-xl" role="dialog" aria-modal="true" aria-labelledby="rename-tag-title"><header class="border-b border-hairline px-5 py-4"><h3 id="rename-tag-title" class="text-base font-semibold text-slate-950"> </h3> <p class="mt-1 text-xs text-slate-500">Updates every project and feature that uses this tag.</p></header> <div class="space-y-3 px-5 py-4"><label class="block text-sm"><span class="mb-1 block text-xs font-medium uppercase tracking-wide text-slate-500">Type</span> <input type="text" class="h-9 w-full rounded-md border border-slate-300 px-3 text-sm outline-none focus:border-brand-700"/></label> <label class="block text-sm"><span class="mb-1 block text-xs font-medium uppercase tracking-wide text-slate-500">Value</span> <input type="text" class="h-9 w-full rounded-md border border-slate-300 px-3 text-sm outline-none focus:border-brand-700"/></label> <!></div> <footer class="flex items-center justify-end gap-2 border-t border-hairline bg-slate-50 px-5 py-3"><button type="button" class="rounded-md px-3 py-1.5 text-sm font-medium text-slate-700 hover:bg-slate-100 disabled:opacity-40">Cancel</button> <button type="button" class="rounded-md bg-slate-900 px-3 py-1.5 text-sm font-medium text-white hover:bg-slate-800 disabled:opacity-40"> </button></footer></div></div>`),J=n(`<div class="fixed inset-0 z-40 flex items-start justify-center bg-slate-950/30 px-4 py-16 backdrop-blur-sm" role="presentation"><div class="w-full max-w-2xl overflow-hidden rounded-xl border border-hairline bg-white shadow-xl" role="dialog" aria-modal="true" aria-labelledby="manage-tags-title"><header class="flex items-start justify-between gap-4 border-b border-hairline px-5 py-4"><div><h2 id="manage-tags-title" class="text-base font-semibold text-slate-950">Manage tags</h2> <p class="mt-1 text-sm text-slate-500">Set a color per tag type, or rename a tag everywhere it appears.</p></div> <button type="button" class="rounded-md px-2 py-1 text-sm text-slate-500 hover:bg-slate-100 hover:text-slate-900" aria-label="Close">x</button></header> <div class="max-h-[60vh] overflow-y-auto px-5 py-4"><!></div> <footer class="flex items-center justify-end gap-2 border-t border-hairline bg-slate-50 px-5 py-3"><button type="button" class="rounded-md px-3 py-1.5 text-sm font-medium text-slate-700 hover:bg-slate-100">Done</button></footer></div></div> <!>`,1);function Y(n,r){g(r,!0);let l=v(null),f=S(()=>{let e=new Map;for(let t of r.tags){let n=t.type.trim().toLowerCase();if(!n)continue;let r=e.get(n);r?r.tags.some(e=>P(e)===P(t))||r.tags.push(t):e.set(n,{tags:[t]})}return[...e.entries()].sort(([e],[t])=>e.localeCompare(t)).map(([e,t])=>({key:e,display:N(e),tags:[...t.tags].sort((e,t)=>e.value.localeCompare(t.value))}))});async function x(e,t){try{await I.setTypeColor(e,t)}catch(e){console.error(`Failed to set tag color`,e)}}function T(e){w(l,{tag:e,type:N(e.type),value:N(e.value),busy:!1,error:null},!0)}function O(){w(l,null)}async function k(){let e=u(l);if(!e)return;let t=e.tag,n={type:e.type.trim(),value:e.value.trim()};if(!n.type||!n.value){w(l,{...e,error:`Type and value are required`},!0);return}if(P(t)===P(n)){w(l,null);return}w(l,{...e,busy:!0,error:null},!0);try{let e=await I.renameTag(t,n);w(l,null),await r.onRenamed?.({from:t,to:n,projectsUpdated:e.projectsUpdated,featuresUpdated:e.featuresUpdated})}catch(t){w(l,{...e,busy:!1,error:t.message},!0)}}function M(e){e.key===`Escape`&&(u(l)?O():r.onClose())}var F=s();t(`keydown`,c,M);var R=h(F),z=t=>{var n=J(),s=h(n),c=e(s),m=e(c),g=E(e(m),2);d(m);var v=E(m,2),w=e(v),M=e=>{a(e,H())},F=t=>{var n=G();o(n,21,()=>u(f),e=>e.key,(t,n)=>{let r=S(()=>I.colorFor(u(n).key));var s=W(),c=e(s),l=e(c),f=e(l);L(f,{get color(){return u(r)},size:2.5});var m=E(f,2),h=e(m,!0);d(m);var g=E(m,2),_=e(g);d(g),d(l),V(E(l,2),{get value(){return u(r)},onChange:e=>x(u(n).key,e),get label(){return u(n).display}}),d(c);var v=E(c,2);o(v,21,()=>u(n).tags,e=>P(e),(t,n)=>{var r=U(),o=e(r),s=e(o,!0);d(o);var c=E(o,2);d(r),C((e,t)=>{p(o,`title`,e),i(s,t)},[()=>j(u(n)),()=>N(u(n).value)]),A(`click`,c,()=>T(u(n))),a(t,r)}),d(v),d(s),C(()=>{i(h,u(n).display),i(_,`(${u(n).tags.length??``} value${u(n).tags.length===1?``:`s`})`)}),a(t,s)}),d(n),a(t,n)};y(w,e=>{u(f).length===0?e(M):e(F,-1)}),d(v);var R=E(v,2),z=e(R);d(R),d(c),d(s);var B=E(s,2),Y=t=>{var n=q(),r=e(n),o=e(r),s=e(o),c=e(s);d(s),_(2),d(o);var f=E(o,2),p=e(f),m=E(e(p),2);D(m),d(p);var h=E(p,2),g=E(e(h),2);D(g),d(h);var v=E(h,2),x=t=>{var n=K(),r=e(n,!0);d(n),C(()=>i(r,u(l).error)),a(t,n)};y(v,e=>{u(l).error&&e(x)}),d(f);var S=E(f,2),w=e(S),T=E(w,2),M=e(T,!0);d(T),d(S),d(r),d(n),C(e=>{i(c,`Rename "${e??``}"`),m.disabled=u(l).busy,g.disabled=u(l).busy,w.disabled=u(l).busy,T.disabled=u(l).busy,i(M,u(l).busy?`Renaming...`:`Rename everywhere`)},[()=>j(u(l).tag)]),A(`click`,n,e=>{e.currentTarget===e.target&&!u(l)?.busy&&O()}),b(m,()=>u(l).type,e=>u(l).type=e),b(g,()=>u(l).value,e=>u(l).value=e),A(`click`,w,O),A(`click`,T,k),a(t,n)};y(B,e=>{u(l)&&e(Y)}),A(`click`,s,e=>{e.currentTarget===e.target&&r.onClose()}),A(`click`,g,function(...e){r.onClose?.apply(this,e)}),A(`click`,z,function(...e){r.onClose?.apply(this,e)}),a(t,n)};y(R,e=>{r.open&&e(z)}),a(n,F),m()}l([`click`]);export{Y as t};
@@ -1 +1 @@
1
- import{R as e}from"./Dz7lEIMt.js";var t=class extends Error{kind;id;constructor(e,t){super(`${e} ${t} not found in feature`),this.kind=e,this.id=t,this.name=`EntityNotFoundInFeatureError`}},n=(e,n,r,i)=>{let a=!1,o=e.map(e=>e.id===n?(a=!0,i(e)):e);if(!a)throw new t(r,n);return o},r=(e,t,r)=>({...e,surfaces:n(e.surfaces,String(t),`surface`,r)}),i=(e,t,r)=>({...e,actions:n(e.actions,String(t),`action`,r)}),a=(e,t,n)=>{if(t===n||t<0||n<0||t>=e.length||n>=e.length)return e;let r=e.slice(),i=r[t];return r[t]=r[n],r[n]=i,r},o=(e,t)=>({...e,surfaces:[...e.surfaces,t]}),s=(e,t)=>({...e,surfaces:e.surfaces.filter(e=>e.id!==t)}),c=(e,t)=>{let n=h(e,e[t].id),r=t;for(let i=t+1;i<e.length&&!(h(e,e[i].id)<=n);i+=1)r=i;return{start:t,end:r}},l=(e,t,n)=>{let r=e.surfaces,i=r.findIndex(e=>e.id===t);if(i<0)return e;let a=h(r,t),o=c(r,i);if(n===1){let t=o.end+1;if(t>=r.length||h(r,r[t].id)!==a)return e;let n=c(r,t);return{...e,surfaces:[...r.slice(0,o.start),...r.slice(n.start,n.end+1),...r.slice(o.start,o.end+1),...r.slice(n.end+1)]}}if(o.start===0)return e;let s=o.start-1;if(h(r,r[s].id)<a)return e;let l=s;for(;l>0&&h(r,r[l].id)>a;)--l;return{...e,surfaces:[...r.slice(0,l),...r.slice(o.start,o.end+1),...r.slice(l,o.start),...r.slice(o.end+1)]}},u=(e,t)=>{let n=e.findIndex(e=>e.id===t);if(n<=0)return!1;let r=h(e,t);return h(e,e[n-1].id)>=r},d=(e,t)=>{let n=e.findIndex(e=>e.id===t);if(n<0)return!1;let r=h(e,t),i=c(e,n).end+1;return i>=e.length?!1:h(e,e[i].id)===r},f=(e,t,n)=>{if(n.targetId===t)return e;let r=e.surfaces,i=r.findIndex(e=>e.id===t),a=r.findIndex(e=>e.id===n.targetId);if(i<0||a<0)return e;let o=c(r,i);if(a>=o.start&&a<=o.end)return e;let s=r[a],l=n.kind===`inside`?s.id:s.parentSurfaceId??null;if(l===t||l!==null&&p(r,l,t))return e;let u=[{...r[i],parentSurfaceId:l??void 0},...r.slice(o.start+1,o.end+1)],d=[...r.slice(0,o.start),...r.slice(o.end+1)],f=d.findIndex(e=>e.id===n.targetId);if(f<0)return e;let m;return m=n.kind===`before`?f:c(d,f).end+1,{...e,surfaces:[...d.slice(0,m),...u,...d.slice(m)]}},p=(e,t,n)=>{let r=e.find(e=>e.id===t),i=0;for(;r?.parentSurfaceId&&i<32;){if(r.parentSurfaceId===n)return!0;r=e.find(e=>e.id===r.parentSurfaceId),i++}return!1},m=(e,t,n)=>n!==null&&(n===t||!e.surfaces.some(e=>e.id===n)||p(e.surfaces,n,t))?e:r(e,t,e=>({...e,parentSurfaceId:n??void 0})),h=(e,t)=>{let n=0,r=e.find(e=>e.id===t);for(;r?.parentSurfaceId&&n<32;){let t=e.find(e=>e.id===r.parentSurfaceId);if(!t)break;r=t,n++}return n},ee=(e,t,n)=>r(e,t,e=>({...e,...n})),g=(e,t,n)=>r(e,t,e=>({...e,stateDefinitions:[...e.stateDefinitions,n]})),_=(e,n,i,a)=>r(e,n,e=>{let n=e.stateDefinitions.find(e=>e.id===i);if(!n)throw new t(`stateDefinition`,String(i));let r={...n,...a},o=`enumValues`in a&&!v(n.enumValues,r.enumValues),s=`type`in a&&n.type!==r.type,c=e.stateDefinitions.map(e=>e.id===i?r:e);if(!o&&!s)return{...e,stateDefinitions:c};let l=r.path,u=r.type===`enum`?r.enumValues:void 0,d=r.type===`enum`;return{...e,stateDefinitions:c,actions:e.actions.map(e=>({...e,parameters:e.parameters.map(e=>{if(e.bindToStatePath!==l||e.type!==`enum`)return e;if(!d){let{enumValues:t,...n}=e;return n}return u===void 0?e:{...e,enumValues:u}})}))}}),v=(e,t)=>{if(e===t)return!0;if(!e||!t||e.length!==t.length)return!1;for(let n=0;n<e.length;n+=1)if(e[n]!==t[n])return!1;return!0},y=(e,t,n)=>r(e,t,e=>({...e,stateDefinitions:e.stateDefinitions.filter(e=>e.id!==n)})),b=(e,t,n,i)=>r(e,t,e=>{let t=e.stateDefinitions.findIndex(e=>e.id===n);return t<0?e:{...e,stateDefinitions:a(e.stateDefinitions,t,t+i)}}),x=(e,t,n)=>r(e,t,e=>({...e,actions:[...e.actions,n]})),S=(e,t,n)=>r(e,t,e=>({...e,actions:e.actions.filter(e=>e.id!==n)})),C=(e,t)=>({...e,surfaces:e.surfaces.map(e=>({...e,actions:e.actions.map(e=>{if(e.id!==t||e.evolution===void 0)return e;let{evolution:n,...r}=e;return r})}))}),w=(e,t)=>({...e,surfaces:e.surfaces.map(e=>({...e,actions:e.actions.map(e=>e.id===t&&e.evolution!==void 0&&e.evolution.dismissed!==!0?{...e,evolution:{...e.evolution,dismissed:!0}}:e)}))}),T=(e,t,n,i)=>r(e,t,e=>{let t=e.actions.findIndex(e=>e.id===n);return t<0?e:{...e,actions:a(e.actions,t,t+i)}}),E=(e,t,n,o,s)=>r(e,t,e=>i(e,n,e=>{let t=e.parameters.findIndex(e=>e.id===o);return t<0?e:{...e,parameters:a(e.parameters,t,t+s)}})),D=(e,t,n,a)=>r(e,t,e=>i(e,n,e=>({...e,...a}))),O=(t,a,o,s,c)=>r(t,a,t=>{let r=i(t,o,e=>({...e,parameters:n(e.parameters,String(s),`parameter`,e=>({...e,...c}))})),a=r.actions.find(e=>e.id===o)?.parameters.find(e=>e.id===s);if(!a||!a.bindToStatePath)return r;let l=a.bindToStatePath,u=e(a.type);return{...r,stateDefinitions:r.stateDefinitions.map(e=>e.path===l?{...e,type:u,enumValues:a.type===`enum`?a.enumValues:void 0}:e)}}),k=(e,t,n)=>r(e,t,e=>({...e,rules:[...e.rules,n]})),A=(e,t,n)=>r(e,t,e=>({...e,rules:e.rules.filter(e=>e.id!==n)})),j=(e,t,i)=>r(e,t,e=>({...e,rules:n(e.rules,String(i.id),`rule`,()=>i)})),M=(e,t,n,a)=>r(e,t,e=>i(e,n,e=>({...e,rules:[...e.rules,a]}))),N=(e,t,n,a)=>r(e,t,e=>i(e,n,e=>({...e,rules:e.rules.filter(e=>e.id!==a)}))),P=(e,t,a,o)=>r(e,t,e=>i(e,a,e=>({...e,rules:n(e.rules,String(o.id),`rule`,()=>o)}))),F=(e,t,n,a)=>r(e,t,e=>i(e,n,e=>({...e,effects:[...e.effects,a]}))),I=(e,t,n,a)=>r(e,t,e=>i(e,n,e=>({...e,effects:e.effects.filter(e=>e.id!==a)}))),L=(e,t,n,a)=>r(e,t,e=>i(e,n,e=>({...e,invariants:[...e.invariants,a]}))),R=(e,t,a,o,s)=>r(e,t,e=>i(e,a,e=>({...e,invariants:n(e.invariants,String(o),`invariant`,e=>({...e,...s}))}))),z=(e,t,n,a)=>r(e,t,e=>i(e,n,e=>({...e,invariants:e.invariants.filter(e=>e.id!==a)}))),te=(e,t,n)=>r(e,t,e=>({...e,invariants:[...e.invariants,n]})),B=(e,t,i,a)=>r(e,t,e=>({...e,invariants:n(e.invariants,String(i),`invariant`,e=>({...e,...a}))})),V=(e,t,n)=>r(e,t,e=>({...e,invariants:e.invariants.filter(e=>e.id!==n)})),H=(e,t)=>({...e,featureInvariants:[...e.featureInvariants??[],t]}),U=(e,t,r)=>({...e,featureInvariants:n(e.featureInvariants??[],String(t),`featureInvariant`,e=>({...e,...r}))}),W=(e,t)=>({...e,featureInvariants:(e.featureInvariants??[]).filter(e=>e.id!==t)}),G=(e,t,n)=>r(e,t,e=>({...e,transitions:[...e.transitions,n]})),K=(e,t,i,a)=>r(e,t,e=>({...e,transitions:n(e.transitions,String(i),`transition`,e=>({...e,...a}))})),q=(e,t,n)=>r(e,t,e=>({...e,transitions:e.transitions.filter(e=>e.id!==n)})),J=(e,t,n,a)=>r(e,t,e=>i(e,n,e=>({...e,scenarios:[...e.scenarios??[],a]}))),Y=(e,t,a,o,s)=>r(e,t,e=>i(e,a,e=>({...e,scenarios:n(e.scenarios??[],String(o),`scenario`,e=>({...e,...s}))}))),X=(e,t,n,a)=>r(e,t,e=>i(e,n,e=>({...e,scenarios:(e.scenarios??[]).filter(e=>e.id!==a)}))),Z=(e,t)=>({...e,reachabilityGoals:[...e.reachabilityGoals??[],t]}),Q=(e,t,r)=>({...e,reachabilityGoals:n(e.reachabilityGoals??[],String(t),`reachabilityGoal`,e=>({...e,...r}))}),ne=(e,t)=>({...e,reachabilityGoals:(e.reachabilityGoals??[]).filter(e=>e.id!==t)}),re=(e,t)=>({...e,resources:[...e.resources,t]}),ie=(e,t)=>({...e,resources:n(e.resources,String(t.id),`resource`,()=>t)}),ae=(e,t)=>({...e,resources:e.resources.filter(e=>e.id!==t)}),oe=(e,t)=>({...e,entities:[...e.entities,t]}),$=(e,t)=>({...e,entities:n(e.entities,String(t.id),`entity`,()=>t)}),se=(e,t)=>({...e,entities:e.entities.filter(e=>e.id!==t)}),ce=(e,t)=>({...e,events:[...e.events??[],t]}),le=(e,t)=>({...e,events:n(e.events??[],String(t.id),`event`,()=>t)}),ue=(e,t)=>({...e,events:(e.events??[]).filter(e=>e.id!==t)});export{ee as $,A,E as B,M as C,z as D,W as E,j as F,o as G,D as H,x as I,b as J,d as K,C as L,R as M,B as N,V as O,P,s as Q,w as R,te as S,I as T,O as U,S as V,g as W,f as X,l as Y,y as Z,Y as _,se as a,H as b,ae as c,Q as d,m as et,ie as f,q as g,X as h,re as i,U as j,N as k,$ as l,G as m,ce as n,_ as nt,ue as o,J as p,u as q,Z as r,ne as s,oe as t,h as tt,le as u,K as v,k as w,L as x,F as y,T as z};
1
+ import{R as e}from"./DPrNvhwL.js";var t=class extends Error{kind;id;constructor(e,t){super(`${e} ${t} not found in feature`),this.kind=e,this.id=t,this.name=`EntityNotFoundInFeatureError`}},n=(e,n,r,i)=>{let a=!1,o=e.map(e=>e.id===n?(a=!0,i(e)):e);if(!a)throw new t(r,n);return o},r=(e,t,r)=>({...e,surfaces:n(e.surfaces,String(t),`surface`,r)}),i=(e,t,r)=>({...e,actions:n(e.actions,String(t),`action`,r)}),a=(e,t,n)=>{if(t===n||t<0||n<0||t>=e.length||n>=e.length)return e;let r=e.slice(),i=r[t];return r[t]=r[n],r[n]=i,r},o=(e,t)=>({...e,surfaces:[...e.surfaces,t]}),s=(e,t)=>({...e,surfaces:e.surfaces.filter(e=>e.id!==t)}),c=(e,t)=>{let n=h(e,e[t].id),r=t;for(let i=t+1;i<e.length&&!(h(e,e[i].id)<=n);i+=1)r=i;return{start:t,end:r}},l=(e,t,n)=>{let r=e.surfaces,i=r.findIndex(e=>e.id===t);if(i<0)return e;let a=h(r,t),o=c(r,i);if(n===1){let t=o.end+1;if(t>=r.length||h(r,r[t].id)!==a)return e;let n=c(r,t);return{...e,surfaces:[...r.slice(0,o.start),...r.slice(n.start,n.end+1),...r.slice(o.start,o.end+1),...r.slice(n.end+1)]}}if(o.start===0)return e;let s=o.start-1;if(h(r,r[s].id)<a)return e;let l=s;for(;l>0&&h(r,r[l].id)>a;)--l;return{...e,surfaces:[...r.slice(0,l),...r.slice(o.start,o.end+1),...r.slice(l,o.start),...r.slice(o.end+1)]}},u=(e,t)=>{let n=e.findIndex(e=>e.id===t);if(n<=0)return!1;let r=h(e,t);return h(e,e[n-1].id)>=r},d=(e,t)=>{let n=e.findIndex(e=>e.id===t);if(n<0)return!1;let r=h(e,t),i=c(e,n).end+1;return i>=e.length?!1:h(e,e[i].id)===r},f=(e,t,n)=>{if(n.targetId===t)return e;let r=e.surfaces,i=r.findIndex(e=>e.id===t),a=r.findIndex(e=>e.id===n.targetId);if(i<0||a<0)return e;let o=c(r,i);if(a>=o.start&&a<=o.end)return e;let s=r[a],l=n.kind===`inside`?s.id:s.parentSurfaceId??null;if(l===t||l!==null&&p(r,l,t))return e;let u=[{...r[i],parentSurfaceId:l??void 0},...r.slice(o.start+1,o.end+1)],d=[...r.slice(0,o.start),...r.slice(o.end+1)],f=d.findIndex(e=>e.id===n.targetId);if(f<0)return e;let m;return m=n.kind===`before`?f:c(d,f).end+1,{...e,surfaces:[...d.slice(0,m),...u,...d.slice(m)]}},p=(e,t,n)=>{let r=e.find(e=>e.id===t),i=0;for(;r?.parentSurfaceId&&i<32;){if(r.parentSurfaceId===n)return!0;r=e.find(e=>e.id===r.parentSurfaceId),i++}return!1},m=(e,t,n)=>n!==null&&(n===t||!e.surfaces.some(e=>e.id===n)||p(e.surfaces,n,t))?e:r(e,t,e=>({...e,parentSurfaceId:n??void 0})),h=(e,t)=>{let n=0,r=e.find(e=>e.id===t);for(;r?.parentSurfaceId&&n<32;){let t=e.find(e=>e.id===r.parentSurfaceId);if(!t)break;r=t,n++}return n},ee=(e,t,n)=>r(e,t,e=>({...e,...n})),g=(e,t,n)=>r(e,t,e=>({...e,stateDefinitions:[...e.stateDefinitions,n]})),_=(e,n,i,a)=>r(e,n,e=>{let n=e.stateDefinitions.find(e=>e.id===i);if(!n)throw new t(`stateDefinition`,String(i));let r={...n,...a},o=`enumValues`in a&&!v(n.enumValues,r.enumValues),s=`type`in a&&n.type!==r.type,c=e.stateDefinitions.map(e=>e.id===i?r:e);if(!o&&!s)return{...e,stateDefinitions:c};let l=r.path,u=r.type===`enum`?r.enumValues:void 0,d=r.type===`enum`;return{...e,stateDefinitions:c,actions:e.actions.map(e=>({...e,parameters:e.parameters.map(e=>{if(e.bindToStatePath!==l||e.type!==`enum`)return e;if(!d){let{enumValues:t,...n}=e;return n}return u===void 0?e:{...e,enumValues:u}})}))}}),v=(e,t)=>{if(e===t)return!0;if(!e||!t||e.length!==t.length)return!1;for(let n=0;n<e.length;n+=1)if(e[n]!==t[n])return!1;return!0},y=(e,t,n)=>r(e,t,e=>({...e,stateDefinitions:e.stateDefinitions.filter(e=>e.id!==n)})),b=(e,t,n,i)=>r(e,t,e=>{let t=e.stateDefinitions.findIndex(e=>e.id===n);return t<0?e:{...e,stateDefinitions:a(e.stateDefinitions,t,t+i)}}),x=(e,t,n)=>r(e,t,e=>({...e,actions:[...e.actions,n]})),S=(e,t,n)=>r(e,t,e=>({...e,actions:e.actions.filter(e=>e.id!==n)})),C=(e,t)=>({...e,surfaces:e.surfaces.map(e=>({...e,actions:e.actions.map(e=>{if(e.id!==t||e.evolution===void 0)return e;let{evolution:n,...r}=e;return r})}))}),w=(e,t)=>({...e,surfaces:e.surfaces.map(e=>({...e,actions:e.actions.map(e=>e.id===t&&e.evolution!==void 0&&e.evolution.dismissed!==!0?{...e,evolution:{...e.evolution,dismissed:!0}}:e)}))}),T=(e,t,n,i)=>r(e,t,e=>{let t=e.actions.findIndex(e=>e.id===n);return t<0?e:{...e,actions:a(e.actions,t,t+i)}}),E=(e,t,n,o,s)=>r(e,t,e=>i(e,n,e=>{let t=e.parameters.findIndex(e=>e.id===o);return t<0?e:{...e,parameters:a(e.parameters,t,t+s)}})),D=(e,t,n,a)=>r(e,t,e=>i(e,n,e=>({...e,...a}))),O=(t,a,o,s,c)=>r(t,a,t=>{let r=i(t,o,e=>({...e,parameters:n(e.parameters,String(s),`parameter`,e=>({...e,...c}))})),a=r.actions.find(e=>e.id===o)?.parameters.find(e=>e.id===s);if(!a||!a.bindToStatePath)return r;let l=a.bindToStatePath,u=e(a.type);return{...r,stateDefinitions:r.stateDefinitions.map(e=>e.path===l?{...e,type:u,enumValues:a.type===`enum`?a.enumValues:void 0}:e)}}),k=(e,t,n)=>r(e,t,e=>({...e,rules:[...e.rules,n]})),A=(e,t,n)=>r(e,t,e=>({...e,rules:e.rules.filter(e=>e.id!==n)})),j=(e,t,i)=>r(e,t,e=>({...e,rules:n(e.rules,String(i.id),`rule`,()=>i)})),M=(e,t,n,a)=>r(e,t,e=>i(e,n,e=>({...e,rules:[...e.rules,a]}))),N=(e,t,n,a)=>r(e,t,e=>i(e,n,e=>({...e,rules:e.rules.filter(e=>e.id!==a)}))),P=(e,t,a,o)=>r(e,t,e=>i(e,a,e=>({...e,rules:n(e.rules,String(o.id),`rule`,()=>o)}))),F=(e,t,n,a)=>r(e,t,e=>i(e,n,e=>({...e,effects:[...e.effects,a]}))),I=(e,t,n,a)=>r(e,t,e=>i(e,n,e=>({...e,effects:e.effects.filter(e=>e.id!==a)}))),L=(e,t,n,a)=>r(e,t,e=>i(e,n,e=>({...e,invariants:[...e.invariants,a]}))),R=(e,t,a,o,s)=>r(e,t,e=>i(e,a,e=>({...e,invariants:n(e.invariants,String(o),`invariant`,e=>({...e,...s}))}))),z=(e,t,n,a)=>r(e,t,e=>i(e,n,e=>({...e,invariants:e.invariants.filter(e=>e.id!==a)}))),te=(e,t,n)=>r(e,t,e=>({...e,invariants:[...e.invariants,n]})),B=(e,t,i,a)=>r(e,t,e=>({...e,invariants:n(e.invariants,String(i),`invariant`,e=>({...e,...a}))})),V=(e,t,n)=>r(e,t,e=>({...e,invariants:e.invariants.filter(e=>e.id!==n)})),H=(e,t)=>({...e,featureInvariants:[...e.featureInvariants??[],t]}),U=(e,t,r)=>({...e,featureInvariants:n(e.featureInvariants??[],String(t),`featureInvariant`,e=>({...e,...r}))}),W=(e,t)=>({...e,featureInvariants:(e.featureInvariants??[]).filter(e=>e.id!==t)}),G=(e,t,n)=>r(e,t,e=>({...e,transitions:[...e.transitions,n]})),K=(e,t,i,a)=>r(e,t,e=>({...e,transitions:n(e.transitions,String(i),`transition`,e=>({...e,...a}))})),q=(e,t,n)=>r(e,t,e=>({...e,transitions:e.transitions.filter(e=>e.id!==n)})),J=(e,t,n,a)=>r(e,t,e=>i(e,n,e=>({...e,scenarios:[...e.scenarios??[],a]}))),Y=(e,t,a,o,s)=>r(e,t,e=>i(e,a,e=>({...e,scenarios:n(e.scenarios??[],String(o),`scenario`,e=>({...e,...s}))}))),X=(e,t,n,a)=>r(e,t,e=>i(e,n,e=>({...e,scenarios:(e.scenarios??[]).filter(e=>e.id!==a)}))),Z=(e,t)=>({...e,reachabilityGoals:[...e.reachabilityGoals??[],t]}),Q=(e,t,r)=>({...e,reachabilityGoals:n(e.reachabilityGoals??[],String(t),`reachabilityGoal`,e=>({...e,...r}))}),ne=(e,t)=>({...e,reachabilityGoals:(e.reachabilityGoals??[]).filter(e=>e.id!==t)}),re=(e,t)=>({...e,resources:[...e.resources,t]}),ie=(e,t)=>({...e,resources:n(e.resources,String(t.id),`resource`,()=>t)}),ae=(e,t)=>({...e,resources:e.resources.filter(e=>e.id!==t)}),oe=(e,t)=>({...e,entities:[...e.entities,t]}),$=(e,t)=>({...e,entities:n(e.entities,String(t.id),`entity`,()=>t)}),se=(e,t)=>({...e,entities:e.entities.filter(e=>e.id!==t)}),ce=(e,t)=>({...e,events:[...e.events??[],t]}),le=(e,t)=>({...e,events:n(e.events??[],String(t.id),`event`,()=>t)}),ue=(e,t)=>({...e,events:(e.events??[]).filter(e=>e.id!==t)});export{ee as $,A,E as B,M as C,z as D,W as E,j as F,o as G,D as H,x as I,b as J,d as K,C as L,R as M,B as N,V as O,P,s as Q,w as R,te as S,I as T,O as U,S as V,g as W,f as X,l as Y,y as Z,Y as _,se as a,H as b,ae as c,Q as d,m as et,ie as f,q as g,X as h,re as i,U as j,N as k,$ as l,G as m,ce as n,_ as nt,ue as o,J as p,u as q,Z as r,ne as s,oe as t,h as tt,le as u,K as v,k as w,L as x,F as y,T as z};
@@ -1 +1 @@
1
- import{V as e,it as t,nt as n,rt as r}from"./D50Xf4Qj.js";import{t as i}from"./Dz7lEIMt.js";var a=new class{#e=t(!1);get loading(){return e(this.#e)}set loading(e){r(this.#e,e,!0)}#t=t(n([]));get features(){return e(this.#t)}set features(e){r(this.#t,e,!0)}#n=t(n([]));get allSummaries(){return e(this.#n)}set allSummaries(e){r(this.#n,e,!0)}#r=t(null);get error(){return e(this.#r)}set error(e){r(this.#r,e,!0)}async load(e){this.loading=!0,this.error=null;try{let t=await i(),n=await Promise.all(e.map(e=>t.useCases.getFeature(e)));this.features=n.filter(e=>e!==null)}catch(e){this.error=e.message}finally{this.loading=!1}}async syncWith(e){let t=new Set(e.map(String)),n=new Map(this.features.map(e=>[String(e.id),e])),r=e.filter(e=>!n.has(String(e))),a=n;if(r.length>0)try{let e=await i(),t=await Promise.all(r.map(t=>e.useCases.getFeature(t)));a=new Map(n);for(let e of t)e&&a.set(String(e.id),e)}catch(e){this.error=e.message;return}this.features=e.map(e=>a.get(String(e))).filter(e=>e!==void 0&&t.has(String(e.id)))}async refetchOne(e){try{let t=await(await i()).useCases.getFeature(e),n=this.features.findIndex(t=>String(t.id)===String(e));if(!t){n>=0&&(this.features=[...this.features.slice(0,n),...this.features.slice(n+1)]);return}n>=0?this.features=[...this.features.slice(0,n),t,...this.features.slice(n+1)]:this.features=[...this.features,t]}catch(e){this.error=e.message}}async loadAllSummaries(){try{let e=await i();this.allSummaries=[...await e.useCases.listFeatures()]}catch(e){this.error=e.message}}reset(){this.features=[],this.allSummaries=[],this.loading=!1,this.error=null}};export{a as t};
1
+ import{V as e,it as t,nt as n,rt as r}from"./D50Xf4Qj.js";import{t as i}from"./DPrNvhwL.js";var a=new class{#e=t(!1);get loading(){return e(this.#e)}set loading(e){r(this.#e,e,!0)}#t=t(n([]));get features(){return e(this.#t)}set features(e){r(this.#t,e,!0)}#n=t(n([]));get allSummaries(){return e(this.#n)}set allSummaries(e){r(this.#n,e,!0)}#r=t(null);get error(){return e(this.#r)}set error(e){r(this.#r,e,!0)}async load(e){this.loading=!0,this.error=null;try{let t=await i(),n=await Promise.all(e.map(e=>t.useCases.getFeature(e)));this.features=n.filter(e=>e!==null)}catch(e){this.error=e.message}finally{this.loading=!1}}async syncWith(e){let t=new Set(e.map(String)),n=new Map(this.features.map(e=>[String(e.id),e])),r=e.filter(e=>!n.has(String(e))),a=n;if(r.length>0)try{let e=await i(),t=await Promise.all(r.map(t=>e.useCases.getFeature(t)));a=new Map(n);for(let e of t)e&&a.set(String(e.id),e)}catch(e){this.error=e.message;return}this.features=e.map(e=>a.get(String(e))).filter(e=>e!==void 0&&t.has(String(e.id)))}async refetchOne(e){try{let t=await(await i()).useCases.getFeature(e),n=this.features.findIndex(t=>String(t.id)===String(e));if(!t){n>=0&&(this.features=[...this.features.slice(0,n),...this.features.slice(n+1)]);return}n>=0?this.features=[...this.features.slice(0,n),t,...this.features.slice(n+1)]:this.features=[...this.features,t]}catch(e){this.error=e.message}}async loadAllSummaries(){try{let e=await i();this.allSummaries=[...await e.useCases.listFeatures()]}catch(e){this.error=e.message}}reset(){this.features=[],this.allSummaries=[],this.loading=!1,this.error=null}};export{a as t};