@selvajs/selva 4.20.0-beta.14 → 4.20.0-beta.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1577) hide show
  1. package/build/client/_app/immutable/assets/0.D1rXwE-H.css +2 -0
  2. package/build/client/_app/immutable/assets/0.D1rXwE-H.css.br +0 -0
  3. package/build/client/_app/immutable/assets/0.D1rXwE-H.css.gz +0 -0
  4. package/build/client/_app/immutable/assets/21.jbAJ3qFw.css +1 -0
  5. package/build/client/_app/immutable/assets/21.jbAJ3qFw.css.br +0 -0
  6. package/build/client/_app/immutable/assets/21.jbAJ3qFw.css.gz +0 -0
  7. package/build/client/_app/immutable/chunks/BCch4665.js +1 -0
  8. package/build/client/_app/immutable/chunks/BCch4665.js.br +1 -0
  9. package/build/client/_app/immutable/chunks/BCch4665.js.gz +0 -0
  10. package/build/client/_app/immutable/chunks/BCliE8WI.js +1 -0
  11. package/build/client/_app/immutable/chunks/BCliE8WI.js.br +0 -0
  12. package/build/client/_app/immutable/chunks/BCliE8WI.js.gz +0 -0
  13. package/build/client/_app/immutable/chunks/BQAnKYth.js +1 -0
  14. package/build/client/_app/immutable/chunks/BQAnKYth.js.br +0 -0
  15. package/build/client/_app/immutable/chunks/BQAnKYth.js.gz +0 -0
  16. package/build/client/_app/immutable/chunks/Bga9Qxze.js +55 -0
  17. package/build/client/_app/immutable/chunks/Bga9Qxze.js.br +0 -0
  18. package/build/client/_app/immutable/chunks/Bga9Qxze.js.gz +0 -0
  19. package/build/client/_app/immutable/chunks/BqYuJpCe.js +2 -0
  20. package/build/client/_app/immutable/chunks/BqYuJpCe.js.br +0 -0
  21. package/build/client/_app/immutable/chunks/BqYuJpCe.js.gz +0 -0
  22. package/build/client/_app/immutable/chunks/Br-hDqZV.js +1 -0
  23. package/build/client/_app/immutable/chunks/Br-hDqZV.js.br +0 -0
  24. package/build/client/_app/immutable/chunks/Br-hDqZV.js.gz +0 -0
  25. package/build/client/_app/immutable/chunks/BsFJ4Tkb.js +1 -0
  26. package/build/client/_app/immutable/chunks/BsFJ4Tkb.js.br +0 -0
  27. package/build/client/_app/immutable/chunks/BsFJ4Tkb.js.gz +0 -0
  28. package/build/client/_app/immutable/chunks/Bv4sOmO3.js +1 -0
  29. package/build/client/_app/immutable/chunks/Bv4sOmO3.js.br +0 -0
  30. package/build/client/_app/immutable/chunks/Bv4sOmO3.js.gz +0 -0
  31. package/build/client/_app/immutable/chunks/CcWwBvi8.js +1 -0
  32. package/build/client/_app/immutable/chunks/CcWwBvi8.js.br +0 -0
  33. package/build/client/_app/immutable/chunks/CcWwBvi8.js.gz +0 -0
  34. package/build/client/_app/immutable/chunks/CkT0pz42.js +1 -0
  35. package/build/client/_app/immutable/chunks/CkT0pz42.js.br +0 -0
  36. package/build/client/_app/immutable/chunks/CkT0pz42.js.gz +0 -0
  37. package/build/client/_app/immutable/chunks/Cq8baQYl.js +1 -0
  38. package/build/client/_app/immutable/chunks/Cq8baQYl.js.br +0 -0
  39. package/build/client/_app/immutable/chunks/Cq8baQYl.js.gz +0 -0
  40. package/build/client/_app/immutable/chunks/CxjDNptA.js +1 -0
  41. package/build/client/_app/immutable/chunks/CxjDNptA.js.br +0 -0
  42. package/build/client/_app/immutable/chunks/CxjDNptA.js.gz +0 -0
  43. package/build/client/_app/immutable/chunks/D1qLYIn2.js +1 -0
  44. package/build/client/_app/immutable/chunks/D1qLYIn2.js.br +1 -0
  45. package/build/client/_app/immutable/chunks/D1qLYIn2.js.gz +0 -0
  46. package/build/client/_app/immutable/chunks/DKELOm5C.js +1 -0
  47. package/build/client/_app/immutable/chunks/DKELOm5C.js.br +0 -0
  48. package/build/client/_app/immutable/chunks/DKELOm5C.js.gz +0 -0
  49. package/build/client/_app/immutable/chunks/Dw1oeR41.js +1 -0
  50. package/build/client/_app/immutable/chunks/Dw1oeR41.js.br +0 -0
  51. package/build/client/_app/immutable/chunks/Dw1oeR41.js.gz +0 -0
  52. package/build/client/_app/immutable/chunks/I4bYfY0F.js +1 -0
  53. package/build/client/_app/immutable/chunks/I4bYfY0F.js.br +0 -0
  54. package/build/client/_app/immutable/chunks/I4bYfY0F.js.gz +0 -0
  55. package/build/client/_app/immutable/chunks/TtW8qOd8.js +1 -0
  56. package/build/client/_app/immutable/chunks/TtW8qOd8.js.br +2 -0
  57. package/build/client/_app/immutable/chunks/TtW8qOd8.js.gz +0 -0
  58. package/build/client/_app/immutable/chunks/ZUuL_8U2.js +5668 -0
  59. package/build/client/_app/immutable/chunks/ZUuL_8U2.js.br +0 -0
  60. package/build/client/_app/immutable/chunks/ZUuL_8U2.js.gz +0 -0
  61. package/build/client/_app/immutable/chunks/rPzey9q1.js +1 -0
  62. package/build/client/_app/immutable/chunks/rPzey9q1.js.br +0 -0
  63. package/build/client/_app/immutable/chunks/rPzey9q1.js.gz +0 -0
  64. package/build/client/_app/immutable/chunks/t5TAza2h.js +1 -0
  65. package/build/client/_app/immutable/chunks/t5TAza2h.js.br +0 -0
  66. package/build/client/_app/immutable/chunks/t5TAza2h.js.gz +0 -0
  67. package/build/client/_app/immutable/entry/app.BXdMlN1l.js +2 -0
  68. package/build/client/_app/immutable/entry/app.BXdMlN1l.js.br +0 -0
  69. package/build/client/_app/immutable/entry/app.BXdMlN1l.js.gz +0 -0
  70. package/build/client/_app/immutable/entry/start.C4-a3B_z.js +1 -0
  71. package/build/client/_app/immutable/entry/start.C4-a3B_z.js.br +1 -0
  72. package/build/client/_app/immutable/entry/start.C4-a3B_z.js.gz +0 -0
  73. package/build/client/_app/immutable/nodes/1.CuqH6Mt0.js +1 -0
  74. package/build/client/_app/immutable/nodes/1.CuqH6Mt0.js.br +0 -0
  75. package/build/client/_app/immutable/nodes/1.CuqH6Mt0.js.gz +0 -0
  76. package/build/client/_app/immutable/nodes/11.C6drypmp.js +3 -0
  77. package/build/client/_app/immutable/nodes/11.C6drypmp.js.br +0 -0
  78. package/build/client/_app/immutable/nodes/11.C6drypmp.js.gz +0 -0
  79. package/build/client/_app/immutable/nodes/13.DwNvl9MK.js +2 -0
  80. package/build/client/_app/immutable/nodes/13.DwNvl9MK.js.br +0 -0
  81. package/build/client/_app/immutable/nodes/13.DwNvl9MK.js.gz +0 -0
  82. package/build/client/_app/immutable/nodes/14.C7gRFljQ.js +2 -0
  83. package/build/client/_app/immutable/nodes/14.C7gRFljQ.js.br +0 -0
  84. package/build/client/_app/immutable/nodes/14.C7gRFljQ.js.gz +0 -0
  85. package/build/client/_app/immutable/nodes/15.UcjJOSY-.js +28 -0
  86. package/build/client/_app/immutable/nodes/15.UcjJOSY-.js.br +0 -0
  87. package/build/client/_app/immutable/nodes/15.UcjJOSY-.js.gz +0 -0
  88. package/build/client/_app/immutable/nodes/16.D7NsPsuY.js +5 -0
  89. package/build/client/_app/immutable/nodes/16.D7NsPsuY.js.br +0 -0
  90. package/build/client/_app/immutable/nodes/16.D7NsPsuY.js.gz +0 -0
  91. package/build/client/_app/immutable/nodes/17.BXuiEdk0.js +2 -0
  92. package/build/client/_app/immutable/nodes/17.BXuiEdk0.js.br +0 -0
  93. package/build/client/_app/immutable/nodes/17.BXuiEdk0.js.gz +0 -0
  94. package/build/client/_app/immutable/nodes/19.CnVVQQgJ.js +7 -0
  95. package/build/client/_app/immutable/nodes/19.CnVVQQgJ.js.br +0 -0
  96. package/build/client/_app/immutable/nodes/19.CnVVQQgJ.js.gz +0 -0
  97. package/build/client/_app/immutable/nodes/2.DPbfY1ur.js +1 -0
  98. package/build/client/_app/immutable/nodes/2.DPbfY1ur.js.br +0 -0
  99. package/build/client/_app/immutable/nodes/2.DPbfY1ur.js.gz +0 -0
  100. package/build/client/_app/immutable/nodes/20.pDAY8z9B.js +2 -0
  101. package/build/client/_app/immutable/nodes/20.pDAY8z9B.js.br +0 -0
  102. package/build/client/_app/immutable/nodes/20.pDAY8z9B.js.gz +0 -0
  103. package/build/client/_app/immutable/nodes/21.CXC2uv3j.js +1 -0
  104. package/build/client/_app/immutable/nodes/21.CXC2uv3j.js.br +1 -0
  105. package/build/client/_app/immutable/nodes/21.CXC2uv3j.js.gz +0 -0
  106. package/build/client/_app/immutable/nodes/22.BIOFTxwg.js +6 -0
  107. package/build/client/_app/immutable/nodes/22.BIOFTxwg.js.br +0 -0
  108. package/build/client/_app/immutable/nodes/22.BIOFTxwg.js.gz +0 -0
  109. package/build/client/_app/immutable/nodes/24.Clf63xDP.js +3 -0
  110. package/build/client/_app/immutable/nodes/24.Clf63xDP.js.br +0 -0
  111. package/build/client/_app/immutable/nodes/24.Clf63xDP.js.gz +0 -0
  112. package/build/client/_app/immutable/nodes/25.CKAywN8T.js +16 -0
  113. package/build/client/_app/immutable/nodes/25.CKAywN8T.js.br +0 -0
  114. package/build/client/_app/immutable/nodes/25.CKAywN8T.js.gz +0 -0
  115. package/build/client/_app/immutable/nodes/26.D88_-NW5.js +6 -0
  116. package/build/client/_app/immutable/nodes/26.D88_-NW5.js.br +0 -0
  117. package/build/client/_app/immutable/nodes/26.D88_-NW5.js.gz +0 -0
  118. package/build/client/_app/immutable/nodes/29.BNZv8HeX.js +4 -0
  119. package/build/client/_app/immutable/nodes/29.BNZv8HeX.js.br +0 -0
  120. package/build/client/_app/immutable/nodes/29.BNZv8HeX.js.gz +0 -0
  121. package/build/client/_app/immutable/nodes/3._SKx-VPP.js +1 -0
  122. package/build/client/_app/immutable/nodes/3._SKx-VPP.js.br +0 -0
  123. package/build/client/_app/immutable/nodes/3._SKx-VPP.js.gz +0 -0
  124. package/build/client/_app/immutable/nodes/30.C5eDo44s.js +6 -0
  125. package/build/client/_app/immutable/nodes/30.C5eDo44s.js.br +0 -0
  126. package/build/client/_app/immutable/nodes/30.C5eDo44s.js.gz +0 -0
  127. package/build/client/_app/immutable/nodes/31.CopfqRzD.js +2 -0
  128. package/build/client/_app/immutable/nodes/31.CopfqRzD.js.br +0 -0
  129. package/build/client/_app/immutable/nodes/31.CopfqRzD.js.gz +0 -0
  130. package/build/client/_app/immutable/nodes/32.DLSXVX1o.js +2 -0
  131. package/build/client/_app/immutable/nodes/32.DLSXVX1o.js.br +0 -0
  132. package/build/client/_app/immutable/nodes/32.DLSXVX1o.js.gz +0 -0
  133. package/build/client/_app/immutable/nodes/34.DN3j7Owo.js +1 -0
  134. package/build/client/_app/immutable/nodes/34.DN3j7Owo.js.br +0 -0
  135. package/build/client/_app/immutable/nodes/34.DN3j7Owo.js.gz +0 -0
  136. package/build/client/_app/immutable/nodes/35.Cr1EcvDM.js +5 -0
  137. package/build/client/_app/immutable/nodes/35.Cr1EcvDM.js.br +0 -0
  138. package/build/client/_app/immutable/nodes/35.Cr1EcvDM.js.gz +0 -0
  139. package/build/client/_app/immutable/nodes/5.DjlShbtw.js +1 -0
  140. package/build/client/_app/immutable/nodes/5.DjlShbtw.js.br +0 -0
  141. package/build/client/_app/immutable/nodes/5.DjlShbtw.js.gz +0 -0
  142. package/build/client/_app/immutable/nodes/6.BdNb13Z8.js +1 -0
  143. package/build/client/_app/immutable/nodes/6.BdNb13Z8.js.br +0 -0
  144. package/build/client/_app/immutable/nodes/6.BdNb13Z8.js.gz +0 -0
  145. package/build/client/_app/immutable/nodes/7.DWRt3LiX.js +1 -0
  146. package/build/client/_app/immutable/nodes/7.DWRt3LiX.js.br +0 -0
  147. package/build/client/_app/immutable/nodes/7.DWRt3LiX.js.gz +0 -0
  148. package/build/client/_app/immutable/nodes/8.CiWjIWKl.js +3 -0
  149. package/build/client/_app/immutable/nodes/8.CiWjIWKl.js.br +0 -0
  150. package/build/client/_app/immutable/nodes/8.CiWjIWKl.js.gz +0 -0
  151. package/build/client/_app/immutable/nodes/9.DnRaYIJC.js +1 -0
  152. package/build/client/_app/immutable/nodes/9.DnRaYIJC.js.br +0 -0
  153. package/build/client/_app/immutable/nodes/9.DnRaYIJC.js.gz +0 -0
  154. package/build/client/_app/version.json +1 -1
  155. package/build/client/_app/version.json.br +0 -0
  156. package/build/client/_app/version.json.gz +0 -0
  157. package/build/handler.js +17 -16
  158. package/build/handler.js.map +1 -1
  159. package/build/index.js +17 -16
  160. package/build/index.js.map +1 -1
  161. package/build/server/chunks/chunks/AppHeader.js-CNfKgz87.js +315 -0
  162. package/build/server/chunks/chunks/AppHeader.js-CNfKgz87.js.map +1 -0
  163. package/build/server/chunks/chunks/Callout.js-Bs8qA73B.js +57 -0
  164. package/build/server/chunks/chunks/Callout.js-Bs8qA73B.js.map +1 -0
  165. package/build/server/chunks/chunks/ConfirmDialog.js-HFdP27IY.js +151 -0
  166. package/build/server/chunks/chunks/ConfirmDialog.js-HFdP27IY.js.map +1 -0
  167. package/build/server/chunks/chunks/DataTable.js-KtE-5lx7.js +33 -0
  168. package/build/server/chunks/chunks/DataTable.js-KtE-5lx7.js.map +1 -0
  169. package/build/server/chunks/chunks/DefinitionCard.js-Bk58QdKw.js +141 -0
  170. package/build/server/chunks/chunks/DefinitionCard.js-Bk58QdKw.js.map +1 -0
  171. package/build/server/chunks/chunks/EmptyState.js-u9Skjkej.js +36 -0
  172. package/build/server/chunks/chunks/EmptyState.js-u9Skjkej.js.map +1 -0
  173. package/build/server/chunks/chunks/ErrorScreen.js-Cxf4pUnH.js +116 -0
  174. package/build/server/chunks/chunks/ErrorScreen.js-Cxf4pUnH.js.map +1 -0
  175. package/build/server/chunks/chunks/FilterableDropdown.js-COxcZtMW.js +2722 -0
  176. package/build/server/chunks/chunks/FilterableDropdown.js-COxcZtMW.js.map +1 -0
  177. package/build/server/chunks/chunks/PageContent.js-DOlTfr05.js +12 -0
  178. package/build/server/chunks/chunks/PageContent.js-DOlTfr05.js.map +1 -0
  179. package/build/server/chunks/chunks/SectionHeader.js-BxE_OjCU.js +22 -0
  180. package/build/server/chunks/chunks/SectionHeader.js-BxE_OjCU.js.map +1 -0
  181. package/build/server/chunks/chunks/SettingsMenu.js-bAsytzfC.js +2644 -0
  182. package/build/server/chunks/chunks/SettingsMenu.js-bAsytzfC.js.map +1 -0
  183. package/build/server/chunks/chunks/SideNav.js-Btm37Q62.js +194 -0
  184. package/build/server/chunks/chunks/SideNav.js-Btm37Q62.js.map +1 -0
  185. package/build/server/chunks/chunks/StatCard.js-Bd6qctS_.js +52 -0
  186. package/build/server/chunks/chunks/StatCard.js-Bd6qctS_.js.map +1 -0
  187. package/build/server/chunks/chunks/UserAvatar.js-DApEF2jf.js +14 -0
  188. package/build/server/chunks/chunks/UserAvatar.js-DApEF2jf.js.map +1 -0
  189. package/build/server/chunks/chunks/UserRowIdentity.js-DXGKkQbe.js +112 -0
  190. package/build/server/chunks/chunks/UserRowIdentity.js-DXGKkQbe.js.map +1 -0
  191. package/build/server/chunks/chunks/ViewToggle.js-Br51zZmF.js +138 -0
  192. package/build/server/chunks/chunks/ViewToggle.js-Br51zZmF.js.map +1 -0
  193. package/build/server/chunks/chunks/access.js-BfMTTCTH.js +828 -0
  194. package/build/server/chunks/chunks/access.js-BfMTTCTH.js.map +1 -0
  195. package/build/server/chunks/chunks/access.server.js-CwcMbS6y.js +15 -0
  196. package/build/server/chunks/chunks/access.server.js-CwcMbS6y.js.map +1 -0
  197. package/build/server/chunks/chunks/access2.server.js-CGXEalQg.js +64 -0
  198. package/build/server/chunks/chunks/access2.server.js-CGXEalQg.js.map +1 -0
  199. package/build/server/chunks/chunks/activity.js-BUIPDWt1.js +17 -0
  200. package/build/server/chunks/chunks/activity.js-BUIPDWt1.js.map +1 -0
  201. package/build/server/chunks/chunks/admin-auth.server.js-CuH8RmWr.js +353 -0
  202. package/build/server/chunks/chunks/admin-auth.server.js-CuH8RmWr.js.map +1 -0
  203. package/build/server/chunks/chunks/alert-dialog.js-BG8Wa5yR.js +461 -0
  204. package/build/server/chunks/chunks/alert-dialog.js-BG8Wa5yR.js.map +1 -0
  205. package/build/server/chunks/chunks/api-errors.js-YdxnrmH7.js +55 -0
  206. package/build/server/chunks/chunks/api-errors.js-YdxnrmH7.js.map +1 -0
  207. package/build/server/chunks/chunks/api.js-Chw-vSDJ.js +882 -0
  208. package/build/server/chunks/chunks/api.js-Chw-vSDJ.js.map +1 -0
  209. package/build/server/chunks/chunks/arrow-left.js-C91xD_i2.js +17 -0
  210. package/build/server/chunks/chunks/arrow-left.js-C91xD_i2.js.map +1 -0
  211. package/build/server/chunks/chunks/arrow-right.js-Dd2VzUvu.js +17 -0
  212. package/build/server/chunks/chunks/arrow-right.js-Dd2VzUvu.js.map +1 -0
  213. package/build/server/chunks/chunks/auth-bootstrap.server.js-x03Oudbh.js +154 -0
  214. package/build/server/chunks/chunks/auth-bootstrap.server.js-x03Oudbh.js.map +1 -0
  215. package/build/server/chunks/chunks/badge.js-D2XQ42hh.js +35 -0
  216. package/build/server/chunks/chunks/badge.js-D2XQ42hh.js.map +1 -0
  217. package/build/server/chunks/chunks/bootHealth.server.js-DlFiVgGw.js +90 -0
  218. package/build/server/chunks/chunks/bootHealth.server.js-DlFiVgGw.js.map +1 -0
  219. package/build/server/chunks/chunks/building-complex.js-B0vpG_9C.js +24 -0
  220. package/build/server/chunks/chunks/building-complex.js-B0vpG_9C.js.map +1 -0
  221. package/build/server/chunks/chunks/button.js-BtRm7eTa.js +71 -0
  222. package/build/server/chunks/chunks/button.js-BtRm7eTa.js.map +1 -0
  223. package/build/server/chunks/chunks/card-content.js-kmmdF2Cw.js +20 -0
  224. package/build/server/chunks/chunks/card-content.js-kmmdF2Cw.js.map +1 -0
  225. package/build/server/chunks/chunks/card-description.js-B0JIeUuh.js +20 -0
  226. package/build/server/chunks/chunks/card-description.js-B0JIeUuh.js.map +1 -0
  227. package/build/server/chunks/chunks/card-header.js-Di5TKNrh.js +20 -0
  228. package/build/server/chunks/chunks/card-header.js-Di5TKNrh.js.map +1 -0
  229. package/build/server/chunks/chunks/card-title.js-DeKvsY4g.js +20 -0
  230. package/build/server/chunks/chunks/card-title.js-DeKvsY4g.js.map +1 -0
  231. package/build/server/chunks/chunks/card.js-BT6mpXa3.js +29 -0
  232. package/build/server/chunks/chunks/card.js-BT6mpXa3.js.map +1 -0
  233. package/build/server/chunks/chunks/chevron-down.js-D8rHJiBK.js +17 -0
  234. package/build/server/chunks/chunks/chevron-down.js-D8rHJiBK.js.map +1 -0
  235. package/build/server/chunks/chunks/chevron-left.js-wPz7Rdd5.js +17 -0
  236. package/build/server/chunks/chunks/chevron-left.js-wPz7Rdd5.js.map +1 -0
  237. package/build/server/chunks/chunks/chevron-right.js-sBa57tvn.js +17 -0
  238. package/build/server/chunks/chunks/chevron-right.js-sBa57tvn.js.map +1 -0
  239. package/build/server/chunks/chunks/chevron-up.js-CvJhUr7u.js +17 -0
  240. package/build/server/chunks/chunks/chevron-up.js-CvJhUr7u.js.map +1 -0
  241. package/build/server/chunks/chunks/circle.js-x2f20FaO.js +21 -0
  242. package/build/server/chunks/chunks/circle.js-x2f20FaO.js.map +1 -0
  243. package/build/server/chunks/chunks/client.js-BPazvdMV.js +58 -0
  244. package/build/server/chunks/chunks/client.js-BPazvdMV.js.map +1 -0
  245. package/build/server/chunks/chunks/compute.js-DjSMKp-h.js +2 -0
  246. package/build/server/chunks/chunks/compute.js-DjSMKp-h.js.map +1 -0
  247. package/build/server/chunks/chunks/computeLimits.js-VrKZoyew.js +40 -0
  248. package/build/server/chunks/chunks/computeLimits.js-VrKZoyew.js.map +1 -0
  249. package/build/server/chunks/chunks/computeRateLimit.server.js-U3-mdORL.js +28 -0
  250. package/build/server/chunks/chunks/computeRateLimit.server.js-U3-mdORL.js.map +1 -0
  251. package/build/server/chunks/chunks/context.js-DgF3EFGQ.js +103 -0
  252. package/build/server/chunks/chunks/context.js-DgF3EFGQ.js.map +1 -0
  253. package/build/server/chunks/chunks/copy.js-Buda3qiy.js +24 -0
  254. package/build/server/chunks/chunks/copy.js-Buda3qiy.js.map +1 -0
  255. package/build/server/chunks/chunks/create-id.js-alvgun-Y.js +796 -0
  256. package/build/server/chunks/chunks/create-id.js-alvgun-Y.js.map +1 -0
  257. package/build/server/chunks/chunks/create-project.js-C4Bp9O0w.js +48 -0
  258. package/build/server/chunks/chunks/create-project.js-C4Bp9O0w.js.map +1 -0
  259. package/build/server/chunks/chunks/definitions.js-sHh4E-La.js +88 -0
  260. package/build/server/chunks/chunks/definitions.js-sHh4E-La.js.map +1 -0
  261. package/build/server/chunks/chunks/delete-with-blobs.js-BZ_YRCWH.js +48 -0
  262. package/build/server/chunks/chunks/delete-with-blobs.js-BZ_YRCWH.js.map +1 -0
  263. package/build/server/chunks/chunks/dialog-description.js-aWg_zdFU.js +489 -0
  264. package/build/server/chunks/chunks/dialog-description.js-aWg_zdFU.js.map +1 -0
  265. package/build/server/chunks/chunks/dialog.js-BBIK66Og.js +360 -0
  266. package/build/server/chunks/chunks/dialog.js-BBIK66Og.js.map +1 -0
  267. package/build/server/chunks/chunks/dom-typeahead.svelte.js-DFW_4amM.js +211 -0
  268. package/build/server/chunks/chunks/dom-typeahead.svelte.js-DFW_4amM.js.map +1 -0
  269. package/build/server/chunks/chunks/engine.server.js-DpF9P7gj.js +24852 -0
  270. package/build/server/chunks/chunks/engine.server.js-DpF9P7gj.js.map +1 -0
  271. package/build/server/chunks/chunks/esm.js-CRiT7ECX.js +7 -0
  272. package/build/server/chunks/chunks/esm.js-CRiT7ECX.js.map +1 -0
  273. package/build/server/chunks/chunks/esm2.js-LSVMBS_E.js +1027 -0
  274. package/build/server/chunks/chunks/esm2.js-LSVMBS_E.js.map +1 -0
  275. package/build/server/chunks/chunks/events.js-IByrOSdq.js +136 -0
  276. package/build/server/chunks/chunks/events.js-IByrOSdq.js.map +1 -0
  277. package/build/server/chunks/chunks/exports.js-DrbIB7dk.js +149 -0
  278. package/build/server/chunks/chunks/exports.js-DrbIB7dk.js.map +1 -0
  279. package/build/server/chunks/chunks/external-link.js-CmobumMv.js +21 -0
  280. package/build/server/chunks/chunks/external-link.js-CmobumMv.js.map +1 -0
  281. package/build/server/chunks/chunks/folder-kanban.js-DVTCXCw-.js +22 -0
  282. package/build/server/chunks/chunks/folder-kanban.js-DVTCXCw-.js.map +1 -0
  283. package/build/server/chunks/chunks/folder-open.js-Dsp0uMQi.js +17 -0
  284. package/build/server/chunks/chunks/folder-open.js-Dsp0uMQi.js.map +1 -0
  285. package/build/server/chunks/chunks/folders.js-szSgfXnr.js +17 -0
  286. package/build/server/chunks/chunks/folders.js-szSgfXnr.js.map +1 -0
  287. package/build/server/chunks/chunks/footerContext.svelte.js-Ct2HYJeX.js +681 -0
  288. package/build/server/chunks/chunks/footerContext.svelte.js-Ct2HYJeX.js.map +1 -0
  289. package/build/server/chunks/chunks/forms.js-DAn853gP.js +2 -0
  290. package/build/server/chunks/chunks/forms.js-DAn853gP.js.map +1 -0
  291. package/build/server/chunks/chunks/gauge.js-SLkYK4hz.js +17 -0
  292. package/build/server/chunks/chunks/gauge.js-SLkYK4hz.js.map +1 -0
  293. package/build/server/chunks/chunks/grasshopper.js-BTMLax71.js +4332 -0
  294. package/build/server/chunks/chunks/grasshopper.js-BTMLax71.js.map +1 -0
  295. package/build/server/chunks/chunks/handlers.js-Bal7QqCB.js +1733 -0
  296. package/build/server/chunks/chunks/handlers.js-Bal7QqCB.js.map +1 -0
  297. package/build/server/chunks/chunks/http.js-B_KreOo5.js +60 -0
  298. package/build/server/chunks/chunks/http.js-B_KreOo5.js.map +1 -0
  299. package/build/server/chunks/chunks/index-server.js-8gyiABQp.js +143 -0
  300. package/build/server/chunks/chunks/index-server.js-8gyiABQp.js.map +1 -0
  301. package/build/server/chunks/chunks/input-group.js-DhqokDEu.js +65 -0
  302. package/build/server/chunks/chunks/input-group.js-DhqokDEu.js.map +1 -0
  303. package/build/server/chunks/chunks/input.js-CJQGQBPJ.js +31 -0
  304. package/build/server/chunks/chunks/input.js-CJQGQBPJ.js.map +1 -0
  305. package/build/server/chunks/chunks/instanceAdmins.server.js-Dcr7q2YW.js +70 -0
  306. package/build/server/chunks/chunks/instanceAdmins.server.js-Dcr7q2YW.js.map +1 -0
  307. package/build/server/chunks/chunks/internal.js-CqxI2xnJ.js +27 -0
  308. package/build/server/chunks/chunks/internal.js-CqxI2xnJ.js.map +1 -0
  309. package/build/server/chunks/chunks/internal2.js-D2DmOxP3.js +220 -0
  310. package/build/server/chunks/chunks/internal2.js-D2DmOxP3.js.map +1 -0
  311. package/build/server/chunks/chunks/key-round.js-Jk6uvqXa.js +22 -0
  312. package/build/server/chunks/chunks/key-round.js-Jk6uvqXa.js.map +1 -0
  313. package/build/server/chunks/chunks/label.js-B8mS-1sW.js +105 -0
  314. package/build/server/chunks/chunks/label.js-B8mS-1sW.js.map +1 -0
  315. package/build/server/chunks/chunks/legacy-client.js-BC5X9EwI.js +771 -0
  316. package/build/server/chunks/chunks/legacy-client.js-BC5X9EwI.js.map +1 -0
  317. package/build/server/chunks/chunks/link-2.js-BE2hKaIq.js +26 -0
  318. package/build/server/chunks/chunks/link-2.js-BE2hKaIq.js.map +1 -0
  319. package/build/server/chunks/chunks/list-all-members.js--iFhSDCz.js +34 -0
  320. package/build/server/chunks/chunks/list-all-members.js--iFhSDCz.js.map +1 -0
  321. package/build/server/chunks/chunks/liveSolve.server.js-sAaSK5B8.js +70 -0
  322. package/build/server/chunks/chunks/liveSolve.server.js-sAaSK5B8.js.map +1 -0
  323. package/build/server/chunks/chunks/localeContext.svelte.js-B6949xvd.js +411 -0
  324. package/build/server/chunks/chunks/localeContext.svelte.js-B6949xvd.js.map +1 -0
  325. package/build/server/chunks/chunks/mail.js-CZUt_ZEY.js +23 -0
  326. package/build/server/chunks/chunks/mail.js-CZUt_ZEY.js.map +1 -0
  327. package/build/server/chunks/chunks/minus.js-cnHKAopL.js +17 -0
  328. package/build/server/chunks/chunks/minus.js-cnHKAopL.js.map +1 -0
  329. package/build/server/chunks/chunks/navigation.js-DAn853gP.js +2 -0
  330. package/build/server/chunks/chunks/navigation.js-DAn853gP.js.map +1 -0
  331. package/build/server/chunks/chunks/oauth.js-DS-eyMD8.js +418 -0
  332. package/build/server/chunks/chunks/oauth.js-DS-eyMD8.js.map +1 -0
  333. package/build/server/chunks/chunks/oauthState.server.js-DXhkuq3r.js +53 -0
  334. package/build/server/chunks/chunks/oauthState.server.js-DXhkuq3r.js.map +1 -0
  335. package/build/server/chunks/chunks/openapi.js-COzYxaUH.js +314 -0
  336. package/build/server/chunks/chunks/openapi.js-COzYxaUH.js.map +1 -0
  337. package/build/server/chunks/chunks/outcome-ai_9fm43.js-DZScWgwt.js +165 -0
  338. package/build/server/chunks/chunks/outcome-ai_9fm43.js-DZScWgwt.js.map +1 -0
  339. package/build/server/chunks/chunks/package.js-CMlGHcJA.js +85 -0
  340. package/build/server/chunks/chunks/package.js-CMlGHcJA.js.map +1 -0
  341. package/build/server/chunks/chunks/pagination.js-D7_W7hTe.js +17 -0
  342. package/build/server/chunks/chunks/pagination.js-D7_W7hTe.js.map +1 -0
  343. package/build/server/chunks/chunks/paths.js-CR5sGHxm.js +19 -0
  344. package/build/server/chunks/chunks/paths.js-CR5sGHxm.js.map +1 -0
  345. package/build/server/chunks/chunks/permissions.server.js-CiU6uN80.js +22 -0
  346. package/build/server/chunks/chunks/permissions.server.js-CiU6uN80.js.map +1 -0
  347. package/build/server/chunks/chunks/plus.js-D5v7Bn9c.js +17 -0
  348. package/build/server/chunks/chunks/plus.js-D5v7Bn9c.js.map +1 -0
  349. package/build/server/chunks/chunks/popper-layer-force-mount.js-CP6hayn4.js +1908 -0
  350. package/build/server/chunks/chunks/popper-layer-force-mount.js-CP6hayn4.js.map +1 -0
  351. package/build/server/chunks/chunks/presets.server.js-B1LV7Ua6.js +21 -0
  352. package/build/server/chunks/chunks/presets.server.js-B1LV7Ua6.js.map +1 -0
  353. package/build/server/chunks/chunks/providers.server.js-NBgteuX7.js +6781 -0
  354. package/build/server/chunks/chunks/providers.server.js-NBgteuX7.js.map +1 -0
  355. package/build/server/chunks/chunks/randomId.js-agS6xuQo.js +22 -0
  356. package/build/server/chunks/chunks/randomId.js-agS6xuQo.js.map +1 -0
  357. package/build/server/chunks/chunks/redirect.js-CQ5k329S.js +16 -0
  358. package/build/server/chunks/chunks/redirect.js-CQ5k329S.js.map +1 -0
  359. package/build/server/chunks/chunks/refresh-cw.js-13va2nAy.js +22 -0
  360. package/build/server/chunks/chunks/refresh-cw.js-13va2nAy.js.map +1 -0
  361. package/build/server/chunks/chunks/registry.js-Cf_zc2fh.js +656 -0
  362. package/build/server/chunks/chunks/registry.js-Cf_zc2fh.js.map +1 -0
  363. package/build/server/chunks/chunks/remote-definition.js-Bad5iO9R.js +90 -0
  364. package/build/server/chunks/chunks/remote-definition.js-Bad5iO9R.js.map +1 -0
  365. package/build/server/chunks/chunks/request-context.js-IxX3HuOZ.js +28 -0
  366. package/build/server/chunks/chunks/request-context.js-IxX3HuOZ.js.map +1 -0
  367. package/build/server/chunks/chunks/resolve-server.js-DDfDV9cI.js +37 -0
  368. package/build/server/chunks/chunks/resolve-server.js-DDfDV9cI.js.map +1 -0
  369. package/build/server/chunks/chunks/resolve.server.js-DrVxsuL6.js +59 -0
  370. package/build/server/chunks/chunks/resolve.server.js-DrVxsuL6.js.map +1 -0
  371. package/build/server/chunks/chunks/rolldown-runtime.js-DdctNlVB.js +18 -0
  372. package/build/server/chunks/chunks/rolldown-runtime.js-DdctNlVB.js.map +1 -0
  373. package/build/server/chunks/chunks/rotate-ccw.js-BsvoT11y.js +17 -0
  374. package/build/server/chunks/chunks/rotate-ccw.js-BsvoT11y.js.map +1 -0
  375. package/build/server/chunks/chunks/routing.js-B7coZqxY.js +264 -0
  376. package/build/server/chunks/chunks/routing.js-B7coZqxY.js.map +1 -0
  377. package/build/server/chunks/chunks/roving-focus-group.js-CfqColTY.js +142 -0
  378. package/build/server/chunks/chunks/roving-focus-group.js-CfqColTY.js.map +1 -0
  379. package/build/server/chunks/chunks/safe-url.js-CGp87nKy.js +220 -0
  380. package/build/server/chunks/chunks/safe-url.js-CGp87nKy.js.map +1 -0
  381. package/build/server/chunks/chunks/schema-extraction.js-CDuq9Z4H.js +142 -0
  382. package/build/server/chunks/chunks/schema-extraction.js-CDuq9Z4H.js.map +1 -0
  383. package/build/server/chunks/chunks/schemas.js-CEHDw4oF.js +67 -0
  384. package/build/server/chunks/chunks/schemas.js-CEHDw4oF.js.map +1 -0
  385. package/build/server/chunks/chunks/scroll-lock.js-By--_Rp9.js +1956 -0
  386. package/build/server/chunks/chunks/scroll-lock.js-By--_Rp9.js.map +1 -0
  387. package/build/server/chunks/chunks/scroll-text.js-Cj8_5Qn1.js +22 -0
  388. package/build/server/chunks/chunks/scroll-text.js-Cj8_5Qn1.js.map +1 -0
  389. package/build/server/chunks/chunks/search.js-5cmK2jkz.js +21 -0
  390. package/build/server/chunks/chunks/search.js-5cmK2jkz.js.map +1 -0
  391. package/build/server/chunks/chunks/select.js-DcXRaO5q.js +1757 -0
  392. package/build/server/chunks/chunks/select.js-DcXRaO5q.js.map +1 -0
  393. package/build/server/chunks/chunks/selfUpdate.server.js-CowyoJjZ.js +144 -0
  394. package/build/server/chunks/chunks/selfUpdate.server.js-CowyoJjZ.js.map +1 -0
  395. package/build/server/chunks/chunks/separator.js-B3M4aY8E.js +187 -0
  396. package/build/server/chunks/chunks/separator.js-B3M4aY8E.js.map +1 -0
  397. package/build/server/chunks/chunks/server-config-write.js-C5u4cxJl.js +131 -0
  398. package/build/server/chunks/chunks/server-config-write.js-C5u4cxJl.js.map +1 -0
  399. package/build/server/chunks/chunks/server.js-D3MqDbVt.js +3921 -0
  400. package/build/server/chunks/chunks/server.js-D3MqDbVt.js.map +1 -0
  401. package/build/server/chunks/chunks/server2.js-zrAQqaix.js +105 -0
  402. package/build/server/chunks/chunks/server2.js-zrAQqaix.js.map +1 -0
  403. package/build/server/chunks/chunks/server3.js-DcmIj9YT.js +20754 -0
  404. package/build/server/chunks/chunks/server3.js-DcmIj9YT.js.map +1 -0
  405. package/build/server/chunks/chunks/server4.js-DKRrXtyZ.js +46 -0
  406. package/build/server/chunks/chunks/server4.js-DKRrXtyZ.js.map +1 -0
  407. package/build/server/chunks/chunks/serverStats.server.js-a-3j4RWH.js +19 -0
  408. package/build/server/chunks/chunks/serverStats.server.js-a-3j4RWH.js.map +1 -0
  409. package/build/server/chunks/chunks/settings.js-CNQpDE8D.js +21 -0
  410. package/build/server/chunks/chunks/settings.js-CNQpDE8D.js.map +1 -0
  411. package/build/server/chunks/chunks/severity.js-C0NeLw7v.js +117 -0
  412. package/build/server/chunks/chunks/severity.js-C0NeLw7v.js.map +1 -0
  413. package/build/server/chunks/chunks/shared-server.js-CX8yV6G4.js +22 -0
  414. package/build/server/chunks/chunks/shared-server.js-CX8yV6G4.js.map +1 -0
  415. package/build/server/chunks/chunks/shared.js-DSkns_OG.js +709 -0
  416. package/build/server/chunks/chunks/shared.js-DSkns_OG.js.map +1 -0
  417. package/build/server/chunks/chunks/shared2.js-UmpDkNsI.js +88 -0
  418. package/build/server/chunks/chunks/shared2.js-UmpDkNsI.js.map +1 -0
  419. package/build/server/chunks/chunks/shield-check.js-BZhVuaHj.js +17 -0
  420. package/build/server/chunks/chunks/shield-check.js-BZhVuaHj.js.map +1 -0
  421. package/build/server/chunks/chunks/shield.js-BLi0_7a2.js +17 -0
  422. package/build/server/chunks/chunks/shield.js-BLi0_7a2.js.map +1 -0
  423. package/build/server/chunks/chunks/solve.server.js-DG3CZ__n.js +334 -0
  424. package/build/server/chunks/chunks/solve.server.js-DG3CZ__n.js.map +1 -0
  425. package/build/server/chunks/chunks/sr-only-styles.js-CgNXGZ9C.js +19 -0
  426. package/build/server/chunks/chunks/sr-only-styles.js-CgNXGZ9C.js.map +1 -0
  427. package/build/server/chunks/chunks/star.js-iocG1yaM.js +17 -0
  428. package/build/server/chunks/chunks/star.js-iocG1yaM.js.map +1 -0
  429. package/build/server/chunks/chunks/state.js-B6BoHGCe.js +75 -0
  430. package/build/server/chunks/chunks/state.js-B6BoHGCe.js.map +1 -0
  431. package/build/server/chunks/chunks/stores.js--FiPN6jK.js +36 -0
  432. package/build/server/chunks/chunks/stores.js--FiPN6jK.js.map +1 -0
  433. package/build/server/chunks/chunks/sveltekit.js-DJdcVNs2.js +193 -0
  434. package/build/server/chunks/chunks/sveltekit.js-DJdcVNs2.js.map +1 -0
  435. package/build/server/chunks/chunks/tabs-trigger.js-DI-yv4IP.js +502 -0
  436. package/build/server/chunks/chunks/tabs-trigger.js-DI-yv4IP.js.map +1 -0
  437. package/build/server/chunks/chunks/textarea.js-DstXofBD.js +24 -0
  438. package/build/server/chunks/chunks/textarea.js-DstXofBD.js.map +1 -0
  439. package/build/server/chunks/chunks/toast-state.svelte.js-B77BdEle.js +285 -0
  440. package/build/server/chunks/chunks/toast-state.svelte.js-B77BdEle.js.map +1 -0
  441. package/build/server/chunks/chunks/toggle-group-item.js-BUV4sYM9.js +401 -0
  442. package/build/server/chunks/chunks/toggle-group-item.js-BUV4sYM9.js.map +1 -0
  443. package/build/server/chunks/chunks/token.server.js-BihmkUmu.js +131 -0
  444. package/build/server/chunks/chunks/token.server.js-BihmkUmu.js.map +1 -0
  445. package/build/server/chunks/chunks/token2.server.js-DaAVo3Gq.js +51 -0
  446. package/build/server/chunks/chunks/token2.server.js-DaAVo3Gq.js.map +1 -0
  447. package/build/server/chunks/chunks/token3.server.js-CuyMT-M4.js +42 -0
  448. package/build/server/chunks/chunks/token3.server.js-CuyMT-M4.js.map +1 -0
  449. package/build/server/chunks/chunks/token4.server.js-DUK9D5vc.js +25 -0
  450. package/build/server/chunks/chunks/token4.server.js-DUK9D5vc.js.map +1 -0
  451. package/build/server/chunks/chunks/tokens.js-CwDDHAj0.js +26 -0
  452. package/build/server/chunks/chunks/tokens.js-CwDDHAj0.js.map +1 -0
  453. package/build/server/chunks/chunks/trash.js-BG3wZbiW.js +24 -0
  454. package/build/server/chunks/chunks/trash.js-BG3wZbiW.js.map +1 -0
  455. package/build/server/chunks/chunks/types.js-g5F0W_ER.js +71 -0
  456. package/build/server/chunks/chunks/types.js-g5F0W_ER.js.map +1 -0
  457. package/build/server/chunks/chunks/types2.js-ZWmoZn1t.js +28 -0
  458. package/build/server/chunks/chunks/types2.js-ZWmoZn1t.js.map +1 -0
  459. package/build/server/chunks/chunks/types3.js-BS6pAwdK.js +29 -0
  460. package/build/server/chunks/chunks/types3.js-BS6pAwdK.js.map +1 -0
  461. package/build/server/chunks/chunks/types4.js-C7gj_Qvn.js +10 -0
  462. package/build/server/chunks/chunks/types4.js-C7gj_Qvn.js.map +1 -0
  463. package/build/server/chunks/chunks/updateCheck.server.js-C5itsGib.js +203 -0
  464. package/build/server/chunks/chunks/updateCheck.server.js-C5itsGib.js.map +1 -0
  465. package/build/server/chunks/chunks/user-plus.js-qSc6ZC5c.js +36 -0
  466. package/build/server/chunks/chunks/user-plus.js-qSc6ZC5c.js.map +1 -0
  467. package/build/server/chunks/chunks/users.js-D8PmGm71.js +26 -0
  468. package/build/server/chunks/chunks/users.js-D8PmGm71.js.map +1 -0
  469. package/build/server/chunks/chunks/utils.js-BltBkspC.js +745 -0
  470. package/build/server/chunks/chunks/utils.js-BltBkspC.js.map +1 -0
  471. package/build/server/chunks/chunks/utils2.js-j8wahBau.js +100 -0
  472. package/build/server/chunks/chunks/utils2.js-j8wahBau.js.map +1 -0
  473. package/build/server/chunks/chunks/utils3.js-DANle-lS.js +175 -0
  474. package/build/server/chunks/chunks/utils3.js-DANle-lS.js.map +1 -0
  475. package/build/server/chunks/chunks/visibility.js-D_48QE1C.js +198 -0
  476. package/build/server/chunks/chunks/visibility.js-D_48QE1C.js.map +1 -0
  477. package/build/server/chunks/chunks/x.js-BZdroOIk.js +17 -0
  478. package/build/server/chunks/chunks/x.js-BZdroOIk.js.map +1 -0
  479. package/build/server/chunks/entries/endpoints/.well-known/oauth-authorization-server/_server.ts.js-Y4FNmUgo.js +22 -0
  480. package/build/server/chunks/entries/endpoints/.well-known/oauth-authorization-server/_server.ts.js-Y4FNmUgo.js.map +1 -0
  481. package/build/server/chunks/entries/endpoints/.well-known/oauth-protected-resource/_server.ts.js-j6at35lG.js +22 -0
  482. package/build/server/chunks/entries/endpoints/.well-known/oauth-protected-resource/_server.ts.js-j6at35lG.js.map +1 -0
  483. package/build/server/chunks/entries/endpoints/.well-known/oauth-protected-resource/mcp/_server.ts.js-BL-en2rL.js +22 -0
  484. package/build/server/chunks/entries/endpoints/.well-known/oauth-protected-resource/mcp/_server.ts.js-BL-en2rL.js.map +1 -0
  485. package/build/server/chunks/entries/endpoints/api/admin/compute/_server.ts.js-C38i1X4J.js +106 -0
  486. package/build/server/chunks/entries/endpoints/api/admin/compute/_server.ts.js-C38i1X4J.js.map +1 -0
  487. package/build/server/chunks/entries/endpoints/api/admin/compute/actions/_server.ts.js-DMVKwgGx.js +93 -0
  488. package/build/server/chunks/entries/endpoints/api/admin/compute/actions/_server.ts.js-DMVKwgGx.js.map +1 -0
  489. package/build/server/chunks/entries/endpoints/api/admin/compute/status/_server.ts.js-DyztvOsn.js +112 -0
  490. package/build/server/chunks/entries/endpoints/api/admin/compute/status/_server.ts.js-DyztvOsn.js.map +1 -0
  491. package/build/server/chunks/entries/endpoints/api/admin/orgs/_id_/_server.ts.js-i5xcJ2zV.js +55 -0
  492. package/build/server/chunks/entries/endpoints/api/admin/orgs/_id_/_server.ts.js-i5xcJ2zV.js.map +1 -0
  493. package/build/server/chunks/entries/endpoints/api/admin/orgs/_server.ts.js-D7cYcptw.js +72 -0
  494. package/build/server/chunks/entries/endpoints/api/admin/orgs/_server.ts.js-D7cYcptw.js.map +1 -0
  495. package/build/server/chunks/entries/endpoints/api/admin/projects/_id_/_server.ts.js-tMO36lWs.js +71 -0
  496. package/build/server/chunks/entries/endpoints/api/admin/projects/_id_/_server.ts.js-tMO36lWs.js.map +1 -0
  497. package/build/server/chunks/entries/endpoints/api/admin/projects/_id_/grants/_grantId_/_server.ts.js-l8YVf5sM.js +37 -0
  498. package/build/server/chunks/entries/endpoints/api/admin/projects/_id_/grants/_grantId_/_server.ts.js-l8YVf5sM.js.map +1 -0
  499. package/build/server/chunks/entries/endpoints/api/admin/projects/_id_/grants/_server.ts.js-CTk5egeL.js +68 -0
  500. package/build/server/chunks/entries/endpoints/api/admin/projects/_id_/grants/_server.ts.js-CTk5egeL.js.map +1 -0
  501. package/build/server/chunks/entries/endpoints/api/admin/projects/_server.ts.js-CzGCUDs9.js +83 -0
  502. package/build/server/chunks/entries/endpoints/api/admin/projects/_server.ts.js-CzGCUDs9.js.map +1 -0
  503. package/build/server/chunks/entries/endpoints/api/admin/system/health/_server.ts.js-Dv7Qpfzu.js +373 -0
  504. package/build/server/chunks/entries/endpoints/api/admin/system/health/_server.ts.js-Dv7Qpfzu.js.map +1 -0
  505. package/build/server/chunks/entries/endpoints/api/admin/system/throughput/_server.ts.js-D0H3LOoP.js +88 -0
  506. package/build/server/chunks/entries/endpoints/api/admin/system/throughput/_server.ts.js-D0H3LOoP.js.map +1 -0
  507. package/build/server/chunks/entries/endpoints/api/admin/system/update/_server.ts.js-CVu46dA1.js +609 -0
  508. package/build/server/chunks/entries/endpoints/api/admin/system/update/_server.ts.js-CVu46dA1.js.map +1 -0
  509. package/build/server/chunks/entries/endpoints/api/admin/users/_id_/_server.ts.js-CGw-NzwG.js +68 -0
  510. package/build/server/chunks/entries/endpoints/api/admin/users/_id_/_server.ts.js-CGw-NzwG.js.map +1 -0
  511. package/build/server/chunks/entries/endpoints/api/admin/users/_id_/disable/_server.ts.js-B8pySiI6.js +85 -0
  512. package/build/server/chunks/entries/endpoints/api/admin/users/_id_/disable/_server.ts.js-B8pySiI6.js.map +1 -0
  513. package/build/server/chunks/entries/endpoints/api/admin/users/_server.ts.js-agHv2gf2.js +87 -0
  514. package/build/server/chunks/entries/endpoints/api/admin/users/_server.ts.js-agHv2gf2.js.map +1 -0
  515. package/build/server/chunks/entries/endpoints/api/diag/throughput/_server.ts.js-DvYVATxV.js +68 -0
  516. package/build/server/chunks/entries/endpoints/api/diag/throughput/_server.ts.js-DvYVATxV.js.map +1 -0
  517. package/build/server/chunks/entries/endpoints/api/files/_...path_/_server.ts.js-CHQmqBWH.js +86 -0
  518. package/build/server/chunks/entries/endpoints/api/files/_...path_/_server.ts.js-CHQmqBWH.js.map +1 -0
  519. package/build/server/chunks/entries/endpoints/api/health/_server.ts.js-yuOzWsE8.js +61 -0
  520. package/build/server/chunks/entries/endpoints/api/health/_server.ts.js-yuOzWsE8.js.map +1 -0
  521. package/build/server/chunks/entries/endpoints/api/health/ready/_server.ts.js-ULeO0DYe.js +64 -0
  522. package/build/server/chunks/entries/endpoints/api/health/ready/_server.ts.js-ULeO0DYe.js.map +1 -0
  523. package/build/server/chunks/entries/endpoints/api/v1/compute/_server.ts.js-BD1RwQTA.js +103 -0
  524. package/build/server/chunks/entries/endpoints/api/v1/compute/_server.ts.js-BD1RwQTA.js.map +1 -0
  525. package/build/server/chunks/entries/endpoints/api/v1/compute/schema/_server.ts.js-BZprVTVf.js +84 -0
  526. package/build/server/chunks/entries/endpoints/api/v1/compute/schema/_server.ts.js-BZprVTVf.js.map +1 -0
  527. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/_server.ts.js-SHP8vaWU.js +59 -0
  528. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/_server.ts.js-SHP8vaWU.js.map +1 -0
  529. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/image/_server.ts.js-BUv_eD9D.js +57 -0
  530. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/image/_server.ts.js-BUv_eD9D.js.map +1 -0
  531. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/publish/_server.ts.js-B3yc1cw3.js +60 -0
  532. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/publish/_server.ts.js-B3yc1cw3.js.map +1 -0
  533. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/schema/_server.ts.js-D6XBcggf.js +57 -0
  534. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/schema/_server.ts.js-D6XBcggf.js.map +1 -0
  535. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/share-links/_linkId_/_server.ts.js-D99MFAb4.js +57 -0
  536. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/share-links/_linkId_/_server.ts.js-D99MFAb4.js.map +1 -0
  537. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/share-links/_server.ts.js-BhmWyQ-k.js +61 -0
  538. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/share-links/_server.ts.js-BhmWyQ-k.js.map +1 -0
  539. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/solve/_server.ts.js-KFurrqrS.js +113 -0
  540. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/solve/_server.ts.js-KFurrqrS.js.map +1 -0
  541. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/versions/_server.ts.js-BKzappNU.js +62 -0
  542. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/versions/_server.ts.js-BKzappNU.js.map +1 -0
  543. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/versions/_versionId_/_server.ts.js-CUNVO93x.js +58 -0
  544. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/versions/_versionId_/_server.ts.js-CUNVO93x.js.map +1 -0
  545. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/versions/_versionId_/schema/_server.ts.js-BRb4wv48.js +57 -0
  546. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/versions/_versionId_/schema/_server.ts.js-BRb4wv48.js.map +1 -0
  547. package/build/server/chunks/entries/endpoints/api/v1/definitions/_server.ts.js-DYloVHJK.js +60 -0
  548. package/build/server/chunks/entries/endpoints/api/v1/definitions/_server.ts.js-DYloVHJK.js.map +1 -0
  549. package/build/server/chunks/entries/endpoints/api/v1/me/_server.ts.js-DUrEaQ9R.js +56 -0
  550. package/build/server/chunks/entries/endpoints/api/v1/me/_server.ts.js-DUrEaQ9R.js.map +1 -0
  551. package/build/server/chunks/entries/endpoints/api/v1/me/starred/_guid_/_server.ts.js-BhZQU4xc.js +57 -0
  552. package/build/server/chunks/entries/endpoints/api/v1/me/starred/_guid_/_server.ts.js-BhZQU4xc.js.map +1 -0
  553. package/build/server/chunks/entries/endpoints/api/v1/me/token/_server.ts.js-yyHpOhdC.js +56 -0
  554. package/build/server/chunks/entries/endpoints/api/v1/me/token/_server.ts.js-yyHpOhdC.js.map +1 -0
  555. package/build/server/chunks/entries/endpoints/api/v1/openapi.json/_server.ts.js-DQ5S-7hT.js +51 -0
  556. package/build/server/chunks/entries/endpoints/api/v1/openapi.json/_server.ts.js-DQ5S-7hT.js.map +1 -0
  557. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/_server.ts.js-BlYSLmz0.js +56 -0
  558. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/_server.ts.js-BlYSLmz0.js.map +1 -0
  559. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/assets/_kind_/_server.ts.js-DMR9Nnlk.js +57 -0
  560. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/assets/_kind_/_server.ts.js-DMR9Nnlk.js.map +1 -0
  561. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/compute/_server.ts.js-ZTwRpPyd.js +57 -0
  562. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/compute/_server.ts.js-ZTwRpPyd.js.map +1 -0
  563. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/invites/_id_/_server.ts.js-DaEsmasg.js +56 -0
  564. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/invites/_id_/_server.ts.js-DaEsmasg.js.map +1 -0
  565. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/invites/_id_/resend/_server.ts.js-BKI_EoxY.js +56 -0
  566. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/invites/_id_/resend/_server.ts.js-BKI_EoxY.js.map +1 -0
  567. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/invites/_server.ts.js-BTwIxUbs.js +57 -0
  568. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/invites/_server.ts.js-BTwIxUbs.js.map +1 -0
  569. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/members/_server.ts.js-Bpox8XIL.js +56 -0
  570. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/members/_server.ts.js-Bpox8XIL.js.map +1 -0
  571. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/members/_userId_/_server.ts.js-cdYBK2Y6.js +57 -0
  572. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/members/_userId_/_server.ts.js-cdYBK2Y6.js.map +1 -0
  573. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/tokens/_server.ts.js-CizguGuR.js +57 -0
  574. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/tokens/_server.ts.js-CizguGuR.js.map +1 -0
  575. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/tokens/_tokenId_/_server.ts.js-5GbCw5Ss.js +56 -0
  576. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/tokens/_tokenId_/_server.ts.js-5GbCw5Ss.js.map +1 -0
  577. package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/_server.ts.js-czGn1vGZ.js +59 -0
  578. package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/_server.ts.js-czGn1vGZ.js.map +1 -0
  579. package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/members/_server.ts.js-uQT-DdgK.js +58 -0
  580. package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/members/_server.ts.js-uQT-DdgK.js.map +1 -0
  581. package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/members/_userId_/_server.ts.js-DO-TosdX.js +58 -0
  582. package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/members/_userId_/_server.ts.js-DO-TosdX.js.map +1 -0
  583. package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/reclaim/_server.ts.js-C7rY7UF-.js +57 -0
  584. package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/reclaim/_server.ts.js-C7rY7UF-.js.map +1 -0
  585. package/build/server/chunks/entries/endpoints/api/v1/projects/_server.ts.js-aXVcI2X7.js +57 -0
  586. package/build/server/chunks/entries/endpoints/api/v1/projects/_server.ts.js-aXVcI2X7.js.map +1 -0
  587. package/build/server/chunks/entries/endpoints/api/v1/solve/_solveId_/cancel/_server.ts.js-CTNXcTG2.js +53 -0
  588. package/build/server/chunks/entries/endpoints/api/v1/solve/_solveId_/cancel/_server.ts.js-CTNXcTG2.js.map +1 -0
  589. package/build/server/chunks/entries/endpoints/api/v1/solve-events/_server.ts.js-D8wj8cuC.js +113 -0
  590. package/build/server/chunks/entries/endpoints/api/v1/solve-events/_server.ts.js-D8wj8cuC.js.map +1 -0
  591. package/build/server/chunks/entries/endpoints/api/v1/solve-events/_solveId_/_server.ts.js-CFUbszn6.js +68 -0
  592. package/build/server/chunks/entries/endpoints/api/v1/solve-events/_solveId_/_server.ts.js-CFUbszn6.js.map +1 -0
  593. package/build/server/chunks/entries/endpoints/auth/email/callback/_server.ts.js-Cus6ontA.js +57 -0
  594. package/build/server/chunks/entries/endpoints/auth/email/callback/_server.ts.js-Cus6ontA.js.map +1 -0
  595. package/build/server/chunks/entries/endpoints/auth/supabase/callback/_server.ts.js-_7wdO0Y5.js +63 -0
  596. package/build/server/chunks/entries/endpoints/auth/supabase/callback/_server.ts.js-_7wdO0Y5.js.map +1 -0
  597. package/build/server/chunks/entries/endpoints/auth/supabase/start/_server.ts.js-B36Q0fjD.js +68 -0
  598. package/build/server/chunks/entries/endpoints/auth/supabase/start/_server.ts.js-B36Q0fjD.js.map +1 -0
  599. package/build/server/chunks/entries/endpoints/mcp/_server.ts.js-B5uHA9Un.js +29 -0
  600. package/build/server/chunks/entries/endpoints/mcp/_server.ts.js-B5uHA9Un.js.map +1 -0
  601. package/build/server/chunks/entries/endpoints/oauth/register/_server.ts.js-BQCyVuY5.js +33 -0
  602. package/build/server/chunks/entries/endpoints/oauth/register/_server.ts.js-BQCyVuY5.js.map +1 -0
  603. package/build/server/chunks/entries/endpoints/oauth/token/_server.ts.js-BHSnsHeO.js +36 -0
  604. package/build/server/chunks/entries/endpoints/oauth/token/_server.ts.js-BHSnsHeO.js.map +1 -0
  605. package/build/server/chunks/entries/hooks.server.js-D7z2wfOe.js +371 -0
  606. package/build/server/chunks/entries/hooks.server.js-D7z2wfOe.js.map +1 -0
  607. package/build/server/chunks/entries/pages/_error.svelte.js-DcAooRf9.js +40 -0
  608. package/build/server/chunks/entries/pages/_error.svelte.js-DcAooRf9.js.map +1 -0
  609. package/build/server/chunks/entries/pages/_layout.server.ts.js-DdxfSnO9.js +37 -0
  610. package/build/server/chunks/entries/pages/_layout.server.ts.js-DdxfSnO9.js.map +1 -0
  611. package/build/server/chunks/entries/pages/_layout.svelte.js-DLKjfBe9.js +627 -0
  612. package/build/server/chunks/entries/pages/_layout.svelte.js-DLKjfBe9.js.map +1 -0
  613. package/build/server/chunks/entries/pages/_page.server.ts.js-DPqP9hHw.js +57 -0
  614. package/build/server/chunks/entries/pages/_page.server.ts.js-DPqP9hHw.js.map +1 -0
  615. package/build/server/chunks/entries/pages/_page.svelte.js-CrlCM_Ta.js +164 -0
  616. package/build/server/chunks/entries/pages/_page.svelte.js-CrlCM_Ta.js.map +1 -0
  617. package/build/server/chunks/entries/pages/accept-invite/_page.server.ts.js-DplYvYbn.js +185 -0
  618. package/build/server/chunks/entries/pages/accept-invite/_page.server.ts.js-DplYvYbn.js.map +1 -0
  619. package/build/server/chunks/entries/pages/accept-invite/_page.svelte.js-DqROVIBb.js +137 -0
  620. package/build/server/chunks/entries/pages/accept-invite/_page.svelte.js-DqROVIBb.js.map +1 -0
  621. package/build/server/chunks/entries/pages/admin/_error.svelte.js-BzYWy3BU.js +42 -0
  622. package/build/server/chunks/entries/pages/admin/_error.svelte.js-BzYWy3BU.js.map +1 -0
  623. package/build/server/chunks/entries/pages/admin/_layout.server.ts.js-DM-DiNwe.js +31 -0
  624. package/build/server/chunks/entries/pages/admin/_layout.server.ts.js-DM-DiNwe.js.map +1 -0
  625. package/build/server/chunks/entries/pages/admin/_layout.svelte.js-BFQeJsER.js +127 -0
  626. package/build/server/chunks/entries/pages/admin/_layout.svelte.js-BFQeJsER.js.map +1 -0
  627. package/build/server/chunks/entries/pages/admin/_page.server.ts.js-Db0W-ij6.js +76 -0
  628. package/build/server/chunks/entries/pages/admin/_page.server.ts.js-Db0W-ij6.js.map +1 -0
  629. package/build/server/chunks/entries/pages/admin/_page.svelte.js-DhhVao5-.js +398 -0
  630. package/build/server/chunks/entries/pages/admin/_page.svelte.js-DhhVao5-.js.map +1 -0
  631. package/build/server/chunks/entries/pages/admin/audit/_page.server.ts.js-Bvtum5V0.js +269 -0
  632. package/build/server/chunks/entries/pages/admin/audit/_page.server.ts.js-Bvtum5V0.js.map +1 -0
  633. package/build/server/chunks/entries/pages/admin/audit/_page.svelte.js-DdopSLBD.js +460 -0
  634. package/build/server/chunks/entries/pages/admin/audit/_page.svelte.js-DdopSLBD.js.map +1 -0
  635. package/build/server/chunks/entries/pages/admin/compute/_page.server.ts.js-LOLemi4X.js +73 -0
  636. package/build/server/chunks/entries/pages/admin/compute/_page.server.ts.js-LOLemi4X.js.map +1 -0
  637. package/build/server/chunks/entries/pages/admin/compute/_page.svelte.js-Pzxu0RIV.js +844 -0
  638. package/build/server/chunks/entries/pages/admin/compute/_page.svelte.js-Pzxu0RIV.js.map +1 -0
  639. package/build/server/chunks/entries/pages/admin/organizations/_page.server.ts.js-DW7chloI.js +35 -0
  640. package/build/server/chunks/entries/pages/admin/organizations/_page.server.ts.js-DW7chloI.js.map +1 -0
  641. package/build/server/chunks/entries/pages/admin/organizations/_page.svelte.js-BpI4ERfU.js +100 -0
  642. package/build/server/chunks/entries/pages/admin/organizations/_page.svelte.js-BpI4ERfU.js.map +1 -0
  643. package/build/server/chunks/entries/pages/admin/projects/_id_/_page.server.ts.js-Nr3QA7TW.js +86 -0
  644. package/build/server/chunks/entries/pages/admin/projects/_id_/_page.server.ts.js-Nr3QA7TW.js.map +1 -0
  645. package/build/server/chunks/entries/pages/admin/projects/_id_/_page.svelte.js-BU5Mo6DA.js +643 -0
  646. package/build/server/chunks/entries/pages/admin/projects/_id_/_page.svelte.js-BU5Mo6DA.js.map +1 -0
  647. package/build/server/chunks/entries/pages/admin/projects/_page.server.ts.js-BOsSF0Nk.js +42 -0
  648. package/build/server/chunks/entries/pages/admin/projects/_page.server.ts.js-BOsSF0Nk.js.map +1 -0
  649. package/build/server/chunks/entries/pages/admin/projects/_page.svelte.js-x1y_D8Ak.js +288 -0
  650. package/build/server/chunks/entries/pages/admin/projects/_page.svelte.js-x1y_D8Ak.js.map +1 -0
  651. package/build/server/chunks/entries/pages/admin/system/_page.server.ts.js-CKEEXGK3.js +87 -0
  652. package/build/server/chunks/entries/pages/admin/system/_page.server.ts.js-CKEEXGK3.js.map +1 -0
  653. package/build/server/chunks/entries/pages/admin/system/_page.svelte.js-Cn8pmw_n.js +1391 -0
  654. package/build/server/chunks/entries/pages/admin/system/_page.svelte.js-Cn8pmw_n.js.map +1 -0
  655. package/build/server/chunks/entries/pages/admin/users/_page.server.ts.js-DVIjhA2b.js +80 -0
  656. package/build/server/chunks/entries/pages/admin/users/_page.server.ts.js-DVIjhA2b.js.map +1 -0
  657. package/build/server/chunks/entries/pages/admin/users/_page.svelte.js-Dtqm8Fz6.js +638 -0
  658. package/build/server/chunks/entries/pages/admin/users/_page.svelte.js-Dtqm8Fz6.js.map +1 -0
  659. package/build/server/chunks/entries/pages/auth/email/sent/_page.svelte.js-CMy7hdWz.js +48 -0
  660. package/build/server/chunks/entries/pages/auth/email/sent/_page.svelte.js-CMy7hdWz.js.map +1 -0
  661. package/build/server/chunks/entries/pages/auth/email/start/_page.server.ts.js-Cr4z0_XV.js +62 -0
  662. package/build/server/chunks/entries/pages/auth/email/start/_page.server.ts.js-Cr4z0_XV.js.map +1 -0
  663. package/build/server/chunks/entries/pages/auth/email/start/_page.svelte.js-CsCJycox.js +15 -0
  664. package/build/server/chunks/entries/pages/auth/email/start/_page.svelte.js-CsCJycox.js.map +1 -0
  665. package/build/server/chunks/entries/pages/docs/api/_page.server.ts.js-C8Noz5WA.js +59 -0
  666. package/build/server/chunks/entries/pages/docs/api/_page.server.ts.js-C8Noz5WA.js.map +1 -0
  667. package/build/server/chunks/entries/pages/docs/api/_page.svelte.js-B1GTwpET.js +86 -0
  668. package/build/server/chunks/entries/pages/docs/api/_page.svelte.js-B1GTwpET.js.map +1 -0
  669. package/build/server/chunks/entries/pages/library/_guid_/_page.server.ts.js-Dizyr7qx.js +255 -0
  670. package/build/server/chunks/entries/pages/library/_guid_/_page.server.ts.js-Dizyr7qx.js.map +1 -0
  671. package/build/server/chunks/entries/pages/library/_guid_/_page.svelte.js-DAd6WLRk.js +16125 -0
  672. package/build/server/chunks/entries/pages/library/_guid_/_page.svelte.js-DAd6WLRk.js.map +1 -0
  673. package/build/server/chunks/entries/pages/library/_page.server.ts.js-DTHdnSTg.js +52 -0
  674. package/build/server/chunks/entries/pages/library/_page.server.ts.js-DTHdnSTg.js.map +1 -0
  675. package/build/server/chunks/entries/pages/library/_page.svelte.js-CxrjAzrQ.js +305 -0
  676. package/build/server/chunks/entries/pages/library/_page.svelte.js-CxrjAzrQ.js.map +1 -0
  677. package/build/server/chunks/entries/pages/login/_page.server.ts.js-A50kGHkz.js +101 -0
  678. package/build/server/chunks/entries/pages/login/_page.server.ts.js-A50kGHkz.js.map +1 -0
  679. package/build/server/chunks/entries/pages/login/_page.svelte.js-C9UquPB3.js +216 -0
  680. package/build/server/chunks/entries/pages/login/_page.svelte.js-C9UquPB3.js.map +1 -0
  681. package/build/server/chunks/entries/pages/logout/_page.server.ts.js-BVRdNFaV.js +19 -0
  682. package/build/server/chunks/entries/pages/logout/_page.server.ts.js-BVRdNFaV.js.map +1 -0
  683. package/build/server/chunks/entries/pages/oauth/authorize/_page.server.ts.js-CdjkGV1C.js +103 -0
  684. package/build/server/chunks/entries/pages/oauth/authorize/_page.server.ts.js-CdjkGV1C.js.map +1 -0
  685. package/build/server/chunks/entries/pages/oauth/authorize/_page.svelte.js-DfDRfWIV.js +135 -0
  686. package/build/server/chunks/entries/pages/oauth/authorize/_page.svelte.js-DfDRfWIV.js.map +1 -0
  687. package/build/server/chunks/entries/pages/projects/_layout.server.ts.js-DOFsO3cm.js +22 -0
  688. package/build/server/chunks/entries/pages/projects/_layout.server.ts.js-DOFsO3cm.js.map +1 -0
  689. package/build/server/chunks/entries/pages/projects/_layout.svelte.js-CtnJbI_b.js +54 -0
  690. package/build/server/chunks/entries/pages/projects/_layout.svelte.js-CtnJbI_b.js.map +1 -0
  691. package/build/server/chunks/entries/pages/projects/_page.server.ts.js-BMF9mAIL.js +94 -0
  692. package/build/server/chunks/entries/pages/projects/_page.server.ts.js-BMF9mAIL.js.map +1 -0
  693. package/build/server/chunks/entries/pages/projects/_page.svelte.js-CaaavD0a.js +3634 -0
  694. package/build/server/chunks/entries/pages/projects/_page.svelte.js-CaaavD0a.js.map +1 -0
  695. package/build/server/chunks/entries/pages/setup/_page.server.ts.js-CyEvoES6.js +117 -0
  696. package/build/server/chunks/entries/pages/setup/_page.server.ts.js-CyEvoES6.js.map +1 -0
  697. package/build/server/chunks/entries/pages/setup/_page.svelte.js-BVUL2wt9.js +251 -0
  698. package/build/server/chunks/entries/pages/setup/_page.svelte.js-BVUL2wt9.js.map +1 -0
  699. package/build/server/chunks/entries/pages/team/_layout.server.ts.js-Cc8j4fj_.js +28 -0
  700. package/build/server/chunks/entries/pages/team/_layout.server.ts.js-Cc8j4fj_.js.map +1 -0
  701. package/build/server/chunks/entries/pages/team/_layout.svelte.js-BKcyGxgg.js +180 -0
  702. package/build/server/chunks/entries/pages/team/_layout.svelte.js-BKcyGxgg.js.map +1 -0
  703. package/build/server/chunks/entries/pages/team/_page.server.ts.js-BcVnxaRf.js +35 -0
  704. package/build/server/chunks/entries/pages/team/_page.server.ts.js-BcVnxaRf.js.map +1 -0
  705. package/build/server/chunks/entries/pages/team/_page.svelte.js-6qxmCK84.js +113 -0
  706. package/build/server/chunks/entries/pages/team/_page.svelte.js-6qxmCK84.js.map +1 -0
  707. package/build/server/chunks/entries/pages/team/activity/_page.svelte.js-CAtYLE7m.js +125 -0
  708. package/build/server/chunks/entries/pages/team/activity/_page.svelte.js-CAtYLE7m.js.map +1 -0
  709. package/build/server/chunks/entries/pages/team/compute/_page.server.ts.js-BNv_7kxv.js +42 -0
  710. package/build/server/chunks/entries/pages/team/compute/_page.server.ts.js-BNv_7kxv.js.map +1 -0
  711. package/build/server/chunks/entries/pages/team/compute/_page.svelte.js-HZy3y0QU.js +619 -0
  712. package/build/server/chunks/entries/pages/team/compute/_page.svelte.js-HZy3y0QU.js.map +1 -0
  713. package/build/server/chunks/entries/pages/team/members/_page.server.ts.js-DSMmkpzH.js +62 -0
  714. package/build/server/chunks/entries/pages/team/members/_page.server.ts.js-DSMmkpzH.js.map +1 -0
  715. package/build/server/chunks/entries/pages/team/members/_page.svelte.js-BlMCPKzd.js +809 -0
  716. package/build/server/chunks/entries/pages/team/members/_page.svelte.js-BlMCPKzd.js.map +1 -0
  717. package/build/server/chunks/entries/pages/team/projects/_page.server.ts.js-3VRyIDx1.js +59 -0
  718. package/build/server/chunks/entries/pages/team/projects/_page.server.ts.js-3VRyIDx1.js.map +1 -0
  719. package/build/server/chunks/entries/pages/team/projects/_page.svelte.js-BBKJG4NP.js +426 -0
  720. package/build/server/chunks/entries/pages/team/projects/_page.svelte.js-BBKJG4NP.js.map +1 -0
  721. package/build/server/chunks/entries/pages/team/reclaim/_page.server.ts.js-BVcsK0M_.js +67 -0
  722. package/build/server/chunks/entries/pages/team/reclaim/_page.server.ts.js-BVcsK0M_.js.map +1 -0
  723. package/build/server/chunks/entries/pages/team/reclaim/_page.svelte.js-Dz3RP8ty.js +268 -0
  724. package/build/server/chunks/entries/pages/team/reclaim/_page.svelte.js-Dz3RP8ty.js.map +1 -0
  725. package/build/server/chunks/entries/pages/team/settings/_page.server.ts.js-DLNDwV67.js +34 -0
  726. package/build/server/chunks/entries/pages/team/settings/_page.server.ts.js-DLNDwV67.js.map +1 -0
  727. package/build/server/chunks/entries/pages/team/settings/_page.svelte.js-XIO1me8K.js +309 -0
  728. package/build/server/chunks/entries/pages/team/settings/_page.svelte.js-XIO1me8K.js.map +1 -0
  729. package/build/server/chunks/entries/pages/team/shares/_page.server.ts.js-B_X9Os5m.js +29 -0
  730. package/build/server/chunks/entries/pages/team/shares/_page.server.ts.js-B_X9Os5m.js.map +1 -0
  731. package/build/server/chunks/entries/pages/team/shares/_page.svelte.js-k7tSDsnp.js +316 -0
  732. package/build/server/chunks/entries/pages/team/shares/_page.svelte.js-k7tSDsnp.js.map +1 -0
  733. package/build/server/chunks/entries/pages/team/tokens/_page.server.ts.js-DTs5SzTp.js +65 -0
  734. package/build/server/chunks/entries/pages/team/tokens/_page.server.ts.js-DTs5SzTp.js.map +1 -0
  735. package/build/server/chunks/entries/pages/team/tokens/_page.svelte.js-DxnOnIWE.js +956 -0
  736. package/build/server/chunks/entries/pages/team/tokens/_page.svelte.js-DxnOnIWE.js.map +1 -0
  737. package/build/server/chunks/handler-Bx5iEZ29.js +1206 -0
  738. package/build/server/chunks/handler-Bx5iEZ29.js.map +1 -0
  739. package/build/server/chunks/index.js-Co4ze87n.js +3743 -0
  740. package/build/server/chunks/index.js-Co4ze87n.js.map +1 -0
  741. package/build/server/chunks/manifest.js--UTIhb45.js +719 -0
  742. package/build/server/chunks/manifest.js--UTIhb45.js.map +1 -0
  743. package/build/server/chunks/nodes/0.js-CsffbC0H.js +64 -0
  744. package/build/server/chunks/nodes/0.js-CsffbC0H.js.map +1 -0
  745. package/build/server/chunks/nodes/1.js-1M_czfIE.js +9 -0
  746. package/build/server/chunks/nodes/1.js-1M_czfIE.js.map +1 -0
  747. package/build/server/chunks/nodes/10.js-9eineyBX.js +33 -0
  748. package/build/server/chunks/nodes/10.js-9eineyBX.js.map +1 -0
  749. package/build/server/chunks/nodes/11.js-BKOfZHSf.js +40 -0
  750. package/build/server/chunks/nodes/11.js-BKOfZHSf.js.map +1 -0
  751. package/build/server/chunks/nodes/12.js-D0iYCbdB.js +30 -0
  752. package/build/server/chunks/nodes/12.js-D0iYCbdB.js.map +1 -0
  753. package/build/server/chunks/nodes/13.js-DS3dCGzm.js +30 -0
  754. package/build/server/chunks/nodes/13.js-DS3dCGzm.js.map +1 -0
  755. package/build/server/chunks/nodes/14.js-DtpHh9Ei.js +30 -0
  756. package/build/server/chunks/nodes/14.js-DtpHh9Ei.js.map +1 -0
  757. package/build/server/chunks/nodes/15.js-C_zywGat.js +38 -0
  758. package/build/server/chunks/nodes/15.js-C_zywGat.js.map +1 -0
  759. package/build/server/chunks/nodes/16.js-DESQ1vhu.js +34 -0
  760. package/build/server/chunks/nodes/16.js-DESQ1vhu.js.map +1 -0
  761. package/build/server/chunks/nodes/17.js-BQ14YL5Q.js +9 -0
  762. package/build/server/chunks/nodes/17.js-BQ14YL5Q.js.map +1 -0
  763. package/build/server/chunks/nodes/18.js-CngSMa3v.js +39 -0
  764. package/build/server/chunks/nodes/18.js-CngSMa3v.js.map +1 -0
  765. package/build/server/chunks/nodes/19.js-Bs85z3mz.js +24 -0
  766. package/build/server/chunks/nodes/19.js-Bs85z3mz.js.map +1 -0
  767. package/build/server/chunks/nodes/2.js-Dflj9i6a.js +33 -0
  768. package/build/server/chunks/nodes/2.js-Dflj9i6a.js.map +1 -0
  769. package/build/server/chunks/nodes/20.js-5C076ZPn.js +24 -0
  770. package/build/server/chunks/nodes/20.js-5C076ZPn.js.map +1 -0
  771. package/build/server/chunks/nodes/21.js-r9WaeaFU.js +46 -0
  772. package/build/server/chunks/nodes/21.js-r9WaeaFU.js.map +1 -0
  773. package/build/server/chunks/nodes/22.js-gdMWRDn8.js +39 -0
  774. package/build/server/chunks/nodes/22.js-gdMWRDn8.js.map +1 -0
  775. package/build/server/chunks/nodes/23.js-DWnXnKx-.js +36 -0
  776. package/build/server/chunks/nodes/23.js-DWnXnKx-.js.map +1 -0
  777. package/build/server/chunks/nodes/24.js-DrAi8A4i.js +64 -0
  778. package/build/server/chunks/nodes/24.js-DrAi8A4i.js.map +1 -0
  779. package/build/server/chunks/nodes/25.js-COwyuGav.js +32 -0
  780. package/build/server/chunks/nodes/25.js-COwyuGav.js.map +1 -0
  781. package/build/server/chunks/nodes/26.js-DDD-upfu.js +39 -0
  782. package/build/server/chunks/nodes/26.js-DDD-upfu.js.map +1 -0
  783. package/build/server/chunks/nodes/27.js-BWk5YriL.js +30 -0
  784. package/build/server/chunks/nodes/27.js-BWk5YriL.js.map +1 -0
  785. package/build/server/chunks/nodes/28.js-YNQTXbDQ.js +9 -0
  786. package/build/server/chunks/nodes/28.js-YNQTXbDQ.js.map +1 -0
  787. package/build/server/chunks/nodes/29.js-CtM1lXTE.js +30 -0
  788. package/build/server/chunks/nodes/29.js-CtM1lXTE.js.map +1 -0
  789. package/build/server/chunks/nodes/3.js-VtV7TxL1.js +9 -0
  790. package/build/server/chunks/nodes/3.js-VtV7TxL1.js.map +1 -0
  791. package/build/server/chunks/nodes/30.js-HuKHzr9Q.js +30 -0
  792. package/build/server/chunks/nodes/30.js-HuKHzr9Q.js.map +1 -0
  793. package/build/server/chunks/nodes/31.js-DkqRepK3.js +33 -0
  794. package/build/server/chunks/nodes/31.js-DkqRepK3.js.map +1 -0
  795. package/build/server/chunks/nodes/32.js-C1CcTXlw.js +30 -0
  796. package/build/server/chunks/nodes/32.js-C1CcTXlw.js.map +1 -0
  797. package/build/server/chunks/nodes/33.js-m2eeuHjs.js +30 -0
  798. package/build/server/chunks/nodes/33.js-m2eeuHjs.js.map +1 -0
  799. package/build/server/chunks/nodes/34.js-8v1opvXq.js +30 -0
  800. package/build/server/chunks/nodes/34.js-8v1opvXq.js.map +1 -0
  801. package/build/server/chunks/nodes/35.js-DJIEXvyl.js +64 -0
  802. package/build/server/chunks/nodes/35.js-DJIEXvyl.js.map +1 -0
  803. package/build/server/chunks/nodes/5.js-D0GcirfV.js +17 -0
  804. package/build/server/chunks/nodes/5.js-D0GcirfV.js.map +1 -0
  805. package/build/server/chunks/nodes/6.js-wM6qNHlj.js +30 -0
  806. package/build/server/chunks/nodes/6.js-wM6qNHlj.js.map +1 -0
  807. package/build/server/chunks/nodes/7.js-Cjym7aMM.js +24 -0
  808. package/build/server/chunks/nodes/7.js-Cjym7aMM.js.map +1 -0
  809. package/build/server/chunks/nodes/8.js-gB6nefGU.js +40 -0
  810. package/build/server/chunks/nodes/8.js-gB6nefGU.js.map +1 -0
  811. package/build/server/chunks/nodes/9.js-Dwq5Kgp8.js +30 -0
  812. package/build/server/chunks/nodes/9.js-Dwq5Kgp8.js.map +1 -0
  813. package/package.json +11 -11
  814. package/templates/.env.example +6 -12
  815. package/build/client/_app/immutable/assets/0.BrZX-8-0.css +0 -2
  816. package/build/client/_app/immutable/assets/0.BrZX-8-0.css.br +0 -0
  817. package/build/client/_app/immutable/assets/0.BrZX-8-0.css.gz +0 -0
  818. package/build/client/_app/immutable/assets/21.DNz0YXuf.css +0 -1
  819. package/build/client/_app/immutable/assets/21.DNz0YXuf.css.br +0 -0
  820. package/build/client/_app/immutable/assets/21.DNz0YXuf.css.gz +0 -0
  821. package/build/client/_app/immutable/chunks/1XP9mPh6.js +0 -1
  822. package/build/client/_app/immutable/chunks/1XP9mPh6.js.br +0 -0
  823. package/build/client/_app/immutable/chunks/1XP9mPh6.js.gz +0 -0
  824. package/build/client/_app/immutable/chunks/BPeQB-N1.js +0 -1
  825. package/build/client/_app/immutable/chunks/BPeQB-N1.js.br +0 -1
  826. package/build/client/_app/immutable/chunks/BPeQB-N1.js.gz +0 -0
  827. package/build/client/_app/immutable/chunks/B_-Zu3pc.js +0 -1
  828. package/build/client/_app/immutable/chunks/B_-Zu3pc.js.br +0 -0
  829. package/build/client/_app/immutable/chunks/B_-Zu3pc.js.gz +0 -0
  830. package/build/client/_app/immutable/chunks/CaReqmG-.js +0 -1
  831. package/build/client/_app/immutable/chunks/CaReqmG-.js.br +0 -0
  832. package/build/client/_app/immutable/chunks/CaReqmG-.js.gz +0 -0
  833. package/build/client/_app/immutable/chunks/Cd7PUBAe.js +0 -1
  834. package/build/client/_app/immutable/chunks/Cd7PUBAe.js.br +0 -0
  835. package/build/client/_app/immutable/chunks/Cd7PUBAe.js.gz +0 -0
  836. package/build/client/_app/immutable/chunks/Cdogoo-J.js +0 -55
  837. package/build/client/_app/immutable/chunks/Cdogoo-J.js.br +0 -0
  838. package/build/client/_app/immutable/chunks/Cdogoo-J.js.gz +0 -0
  839. package/build/client/_app/immutable/chunks/DDIgcaP1.js +0 -1
  840. package/build/client/_app/immutable/chunks/DDIgcaP1.js.br +0 -2
  841. package/build/client/_app/immutable/chunks/DDIgcaP1.js.gz +0 -0
  842. package/build/client/_app/immutable/chunks/DEjZ2Xq_.js +0 -5668
  843. package/build/client/_app/immutable/chunks/DEjZ2Xq_.js.br +0 -0
  844. package/build/client/_app/immutable/chunks/DEjZ2Xq_.js.gz +0 -0
  845. package/build/client/_app/immutable/chunks/DXNhJzNO.js +0 -1
  846. package/build/client/_app/immutable/chunks/DXNhJzNO.js.br +0 -0
  847. package/build/client/_app/immutable/chunks/DXNhJzNO.js.gz +0 -0
  848. package/build/client/_app/immutable/chunks/Dr6Ivc7X.js +0 -1
  849. package/build/client/_app/immutable/chunks/Dr6Ivc7X.js.br +0 -0
  850. package/build/client/_app/immutable/chunks/Dr6Ivc7X.js.gz +0 -0
  851. package/build/client/_app/immutable/chunks/Mc0Lifi0.js +0 -1
  852. package/build/client/_app/immutable/chunks/Mc0Lifi0.js.br +0 -1
  853. package/build/client/_app/immutable/chunks/Mc0Lifi0.js.gz +0 -0
  854. package/build/client/_app/immutable/chunks/RLIzEY_h.js +0 -1
  855. package/build/client/_app/immutable/chunks/RLIzEY_h.js.br +0 -0
  856. package/build/client/_app/immutable/chunks/RLIzEY_h.js.gz +0 -0
  857. package/build/client/_app/immutable/chunks/T2IMcJcx.js +0 -2
  858. package/build/client/_app/immutable/chunks/T2IMcJcx.js.br +0 -0
  859. package/build/client/_app/immutable/chunks/T2IMcJcx.js.gz +0 -0
  860. package/build/client/_app/immutable/chunks/Vb6iWNh-.js +0 -1
  861. package/build/client/_app/immutable/chunks/Vb6iWNh-.js.br +0 -0
  862. package/build/client/_app/immutable/chunks/Vb6iWNh-.js.gz +0 -0
  863. package/build/client/_app/immutable/chunks/bpGbYRN6.js +0 -1
  864. package/build/client/_app/immutable/chunks/bpGbYRN6.js.br +0 -0
  865. package/build/client/_app/immutable/chunks/bpGbYRN6.js.gz +0 -0
  866. package/build/client/_app/immutable/entry/app.BxlG4D6v.js +0 -2
  867. package/build/client/_app/immutable/entry/app.BxlG4D6v.js.br +0 -0
  868. package/build/client/_app/immutable/entry/app.BxlG4D6v.js.gz +0 -0
  869. package/build/client/_app/immutable/entry/start.BdQOmgbe.js +0 -1
  870. package/build/client/_app/immutable/entry/start.BdQOmgbe.js.br +0 -1
  871. package/build/client/_app/immutable/entry/start.BdQOmgbe.js.gz +0 -0
  872. package/build/client/_app/immutable/nodes/1.BnoMaMbT.js +0 -1
  873. package/build/client/_app/immutable/nodes/1.BnoMaMbT.js.br +0 -0
  874. package/build/client/_app/immutable/nodes/1.BnoMaMbT.js.gz +0 -0
  875. package/build/client/_app/immutable/nodes/11.Bf5JPk5c.js +0 -3
  876. package/build/client/_app/immutable/nodes/11.Bf5JPk5c.js.br +0 -0
  877. package/build/client/_app/immutable/nodes/11.Bf5JPk5c.js.gz +0 -0
  878. package/build/client/_app/immutable/nodes/13.8WOI_Rny.js +0 -2
  879. package/build/client/_app/immutable/nodes/13.8WOI_Rny.js.br +0 -0
  880. package/build/client/_app/immutable/nodes/13.8WOI_Rny.js.gz +0 -0
  881. package/build/client/_app/immutable/nodes/14.BIEikz7T.js +0 -2
  882. package/build/client/_app/immutable/nodes/14.BIEikz7T.js.br +0 -0
  883. package/build/client/_app/immutable/nodes/14.BIEikz7T.js.gz +0 -0
  884. package/build/client/_app/immutable/nodes/15.wtJxaZEU.js +0 -28
  885. package/build/client/_app/immutable/nodes/15.wtJxaZEU.js.br +0 -0
  886. package/build/client/_app/immutable/nodes/15.wtJxaZEU.js.gz +0 -0
  887. package/build/client/_app/immutable/nodes/16.DlJ0NfFV.js +0 -5
  888. package/build/client/_app/immutable/nodes/16.DlJ0NfFV.js.br +0 -0
  889. package/build/client/_app/immutable/nodes/16.DlJ0NfFV.js.gz +0 -0
  890. package/build/client/_app/immutable/nodes/17.DoKtyWVA.js +0 -2
  891. package/build/client/_app/immutable/nodes/17.DoKtyWVA.js.br +0 -0
  892. package/build/client/_app/immutable/nodes/17.DoKtyWVA.js.gz +0 -0
  893. package/build/client/_app/immutable/nodes/19.D1GC6b46.js +0 -7
  894. package/build/client/_app/immutable/nodes/19.D1GC6b46.js.br +0 -0
  895. package/build/client/_app/immutable/nodes/19.D1GC6b46.js.gz +0 -0
  896. package/build/client/_app/immutable/nodes/2.BoOsgbEN.js +0 -1
  897. package/build/client/_app/immutable/nodes/2.BoOsgbEN.js.br +0 -0
  898. package/build/client/_app/immutable/nodes/2.BoOsgbEN.js.gz +0 -0
  899. package/build/client/_app/immutable/nodes/20.BvEc3BRn.js +0 -2
  900. package/build/client/_app/immutable/nodes/20.BvEc3BRn.js.br +0 -0
  901. package/build/client/_app/immutable/nodes/20.BvEc3BRn.js.gz +0 -0
  902. package/build/client/_app/immutable/nodes/21.CwUymu96.js +0 -1
  903. package/build/client/_app/immutable/nodes/21.CwUymu96.js.br +0 -0
  904. package/build/client/_app/immutable/nodes/21.CwUymu96.js.gz +0 -0
  905. package/build/client/_app/immutable/nodes/22.UiyBrpx4.js +0 -6
  906. package/build/client/_app/immutable/nodes/22.UiyBrpx4.js.br +0 -0
  907. package/build/client/_app/immutable/nodes/22.UiyBrpx4.js.gz +0 -0
  908. package/build/client/_app/immutable/nodes/24.Cf7f4Dk4.js +0 -3
  909. package/build/client/_app/immutable/nodes/24.Cf7f4Dk4.js.br +0 -0
  910. package/build/client/_app/immutable/nodes/24.Cf7f4Dk4.js.gz +0 -0
  911. package/build/client/_app/immutable/nodes/25.BGrOKfHq.js +0 -16
  912. package/build/client/_app/immutable/nodes/25.BGrOKfHq.js.br +0 -0
  913. package/build/client/_app/immutable/nodes/25.BGrOKfHq.js.gz +0 -0
  914. package/build/client/_app/immutable/nodes/26.CXajQRFk.js +0 -6
  915. package/build/client/_app/immutable/nodes/26.CXajQRFk.js.br +0 -0
  916. package/build/client/_app/immutable/nodes/26.CXajQRFk.js.gz +0 -0
  917. package/build/client/_app/immutable/nodes/29.BMMCB4MR.js +0 -4
  918. package/build/client/_app/immutable/nodes/29.BMMCB4MR.js.br +0 -0
  919. package/build/client/_app/immutable/nodes/29.BMMCB4MR.js.gz +0 -0
  920. package/build/client/_app/immutable/nodes/3.B5RsIbc5.js +0 -1
  921. package/build/client/_app/immutable/nodes/3.B5RsIbc5.js.br +0 -0
  922. package/build/client/_app/immutable/nodes/3.B5RsIbc5.js.gz +0 -0
  923. package/build/client/_app/immutable/nodes/30.BSbx9NvB.js +0 -6
  924. package/build/client/_app/immutable/nodes/30.BSbx9NvB.js.br +0 -0
  925. package/build/client/_app/immutable/nodes/30.BSbx9NvB.js.gz +0 -0
  926. package/build/client/_app/immutable/nodes/31.CHh6ichW.js +0 -2
  927. package/build/client/_app/immutable/nodes/31.CHh6ichW.js.br +0 -0
  928. package/build/client/_app/immutable/nodes/31.CHh6ichW.js.gz +0 -0
  929. package/build/client/_app/immutable/nodes/32.DYlZfSfy.js +0 -2
  930. package/build/client/_app/immutable/nodes/32.DYlZfSfy.js.br +0 -0
  931. package/build/client/_app/immutable/nodes/32.DYlZfSfy.js.gz +0 -0
  932. package/build/client/_app/immutable/nodes/34.BFmAh534.js +0 -1
  933. package/build/client/_app/immutable/nodes/34.BFmAh534.js.br +0 -0
  934. package/build/client/_app/immutable/nodes/34.BFmAh534.js.gz +0 -0
  935. package/build/client/_app/immutable/nodes/35.DHp9Oq2h.js +0 -2
  936. package/build/client/_app/immutable/nodes/35.DHp9Oq2h.js.br +0 -0
  937. package/build/client/_app/immutable/nodes/35.DHp9Oq2h.js.gz +0 -0
  938. package/build/client/_app/immutable/nodes/5.Qz5m15ys.js +0 -1
  939. package/build/client/_app/immutable/nodes/5.Qz5m15ys.js.br +0 -1
  940. package/build/client/_app/immutable/nodes/5.Qz5m15ys.js.gz +0 -0
  941. package/build/client/_app/immutable/nodes/6.DHRda_iS.js +0 -1
  942. package/build/client/_app/immutable/nodes/6.DHRda_iS.js.br +0 -0
  943. package/build/client/_app/immutable/nodes/6.DHRda_iS.js.gz +0 -0
  944. package/build/client/_app/immutable/nodes/7.CtyhQ_s_.js +0 -1
  945. package/build/client/_app/immutable/nodes/7.CtyhQ_s_.js.br +0 -0
  946. package/build/client/_app/immutable/nodes/7.CtyhQ_s_.js.gz +0 -0
  947. package/build/client/_app/immutable/nodes/8.BVv9Nt3U.js +0 -3
  948. package/build/client/_app/immutable/nodes/8.BVv9Nt3U.js.br +0 -0
  949. package/build/client/_app/immutable/nodes/8.BVv9Nt3U.js.gz +0 -0
  950. package/build/client/_app/immutable/nodes/9.B5FjGjtL.js +0 -1
  951. package/build/client/_app/immutable/nodes/9.B5FjGjtL.js.br +0 -0
  952. package/build/client/_app/immutable/nodes/9.B5FjGjtL.js.gz +0 -0
  953. package/build/server/chunks/chunks/AppHeader.js-C6ROq5Qm.js +0 -315
  954. package/build/server/chunks/chunks/AppHeader.js-C6ROq5Qm.js.map +0 -1
  955. package/build/server/chunks/chunks/Callout.js-Ci3u4XSa.js +0 -57
  956. package/build/server/chunks/chunks/Callout.js-Ci3u4XSa.js.map +0 -1
  957. package/build/server/chunks/chunks/ConfirmDialog.js-BhGAyH1N.js +0 -151
  958. package/build/server/chunks/chunks/ConfirmDialog.js-BhGAyH1N.js.map +0 -1
  959. package/build/server/chunks/chunks/DataTable.js-1FokYGvY.js +0 -33
  960. package/build/server/chunks/chunks/DataTable.js-1FokYGvY.js.map +0 -1
  961. package/build/server/chunks/chunks/DefinitionCard.js-DkODwwms.js +0 -141
  962. package/build/server/chunks/chunks/DefinitionCard.js-DkODwwms.js.map +0 -1
  963. package/build/server/chunks/chunks/EmptyState.js-db0SQWDN.js +0 -36
  964. package/build/server/chunks/chunks/EmptyState.js-db0SQWDN.js.map +0 -1
  965. package/build/server/chunks/chunks/ErrorScreen.js-B0rqpGyR.js +0 -116
  966. package/build/server/chunks/chunks/ErrorScreen.js-B0rqpGyR.js.map +0 -1
  967. package/build/server/chunks/chunks/FilterableDropdown.js-B4nYR1Mw.js +0 -2722
  968. package/build/server/chunks/chunks/FilterableDropdown.js-B4nYR1Mw.js.map +0 -1
  969. package/build/server/chunks/chunks/PageContent.js-CtU1_JG7.js +0 -12
  970. package/build/server/chunks/chunks/PageContent.js-CtU1_JG7.js.map +0 -1
  971. package/build/server/chunks/chunks/SectionHeader.js-CjW0_0vg.js +0 -22
  972. package/build/server/chunks/chunks/SectionHeader.js-CjW0_0vg.js.map +0 -1
  973. package/build/server/chunks/chunks/SettingsMenu.js-CjM22Nav.js +0 -2642
  974. package/build/server/chunks/chunks/SettingsMenu.js-CjM22Nav.js.map +0 -1
  975. package/build/server/chunks/chunks/SideNav.js-B-U6drKT.js +0 -194
  976. package/build/server/chunks/chunks/SideNav.js-B-U6drKT.js.map +0 -1
  977. package/build/server/chunks/chunks/StatCard.js-CN5-wy2A.js +0 -52
  978. package/build/server/chunks/chunks/StatCard.js-CN5-wy2A.js.map +0 -1
  979. package/build/server/chunks/chunks/UserAvatar.js-RJK9KiIw.js +0 -14
  980. package/build/server/chunks/chunks/UserAvatar.js-RJK9KiIw.js.map +0 -1
  981. package/build/server/chunks/chunks/UserRowIdentity.js-ovE6ITKg.js +0 -112
  982. package/build/server/chunks/chunks/UserRowIdentity.js-ovE6ITKg.js.map +0 -1
  983. package/build/server/chunks/chunks/ViewToggle.js-CaamGGXn.js +0 -138
  984. package/build/server/chunks/chunks/ViewToggle.js-CaamGGXn.js.map +0 -1
  985. package/build/server/chunks/chunks/access.js-DbWaEG7Y.js +0 -804
  986. package/build/server/chunks/chunks/access.js-DbWaEG7Y.js.map +0 -1
  987. package/build/server/chunks/chunks/access.server.js-DyEho9RH.js +0 -15
  988. package/build/server/chunks/chunks/access.server.js-DyEho9RH.js.map +0 -1
  989. package/build/server/chunks/chunks/access2.server.js-CGK2l9hh.js +0 -63
  990. package/build/server/chunks/chunks/access2.server.js-CGK2l9hh.js.map +0 -1
  991. package/build/server/chunks/chunks/activity.js-Cq5CR0qS.js +0 -17
  992. package/build/server/chunks/chunks/activity.js-Cq5CR0qS.js.map +0 -1
  993. package/build/server/chunks/chunks/admin-auth.server.js-Df9QJc2P.js +0 -352
  994. package/build/server/chunks/chunks/admin-auth.server.js-Df9QJc2P.js.map +0 -1
  995. package/build/server/chunks/chunks/alert-dialog.js-BC5IIsYS.js +0 -461
  996. package/build/server/chunks/chunks/alert-dialog.js-BC5IIsYS.js.map +0 -1
  997. package/build/server/chunks/chunks/api-errors.js-Byazqvy4.js +0 -57
  998. package/build/server/chunks/chunks/api-errors.js-Byazqvy4.js.map +0 -1
  999. package/build/server/chunks/chunks/api.js-CWQeuHWw.js +0 -1165
  1000. package/build/server/chunks/chunks/api.js-CWQeuHWw.js.map +0 -1
  1001. package/build/server/chunks/chunks/arrow-left.js-DXlCPnHO.js +0 -17
  1002. package/build/server/chunks/chunks/arrow-left.js-DXlCPnHO.js.map +0 -1
  1003. package/build/server/chunks/chunks/arrow-right.js-CGAfq_wi.js +0 -17
  1004. package/build/server/chunks/chunks/arrow-right.js-CGAfq_wi.js.map +0 -1
  1005. package/build/server/chunks/chunks/auth-bootstrap.server.js-MKkcsRfh.js +0 -152
  1006. package/build/server/chunks/chunks/auth-bootstrap.server.js-MKkcsRfh.js.map +0 -1
  1007. package/build/server/chunks/chunks/badge.js-DVfiDfVJ.js +0 -35
  1008. package/build/server/chunks/chunks/badge.js-DVfiDfVJ.js.map +0 -1
  1009. package/build/server/chunks/chunks/bootHealth.server.js-C87XV-z4.js +0 -90
  1010. package/build/server/chunks/chunks/bootHealth.server.js-C87XV-z4.js.map +0 -1
  1011. package/build/server/chunks/chunks/building-complex.js-JHR0jolW.js +0 -24
  1012. package/build/server/chunks/chunks/building-complex.js-JHR0jolW.js.map +0 -1
  1013. package/build/server/chunks/chunks/button.js-DKfs3Boy.js +0 -71
  1014. package/build/server/chunks/chunks/button.js-DKfs3Boy.js.map +0 -1
  1015. package/build/server/chunks/chunks/card-content.js-CBUsYBjk.js +0 -20
  1016. package/build/server/chunks/chunks/card-content.js-CBUsYBjk.js.map +0 -1
  1017. package/build/server/chunks/chunks/card-description.js-BOcmCPPd.js +0 -20
  1018. package/build/server/chunks/chunks/card-description.js-BOcmCPPd.js.map +0 -1
  1019. package/build/server/chunks/chunks/card-header.js-m0c0MMMI.js +0 -20
  1020. package/build/server/chunks/chunks/card-header.js-m0c0MMMI.js.map +0 -1
  1021. package/build/server/chunks/chunks/card-title.js-BolYlULC.js +0 -20
  1022. package/build/server/chunks/chunks/card-title.js-BolYlULC.js.map +0 -1
  1023. package/build/server/chunks/chunks/card.js-B4rH_m-Y.js +0 -29
  1024. package/build/server/chunks/chunks/card.js-B4rH_m-Y.js.map +0 -1
  1025. package/build/server/chunks/chunks/chevron-down.js-DFG8JZ5a.js +0 -17
  1026. package/build/server/chunks/chunks/chevron-down.js-DFG8JZ5a.js.map +0 -1
  1027. package/build/server/chunks/chunks/chevron-left.js-D9wIzL7j.js +0 -17
  1028. package/build/server/chunks/chunks/chevron-left.js-D9wIzL7j.js.map +0 -1
  1029. package/build/server/chunks/chunks/chevron-right.js-BKtNlHM6.js +0 -17
  1030. package/build/server/chunks/chunks/chevron-right.js-BKtNlHM6.js.map +0 -1
  1031. package/build/server/chunks/chunks/chevron-up.js-Cd-VfN2m.js +0 -17
  1032. package/build/server/chunks/chunks/chevron-up.js-Cd-VfN2m.js.map +0 -1
  1033. package/build/server/chunks/chunks/circle.js-BF319LN2.js +0 -21
  1034. package/build/server/chunks/chunks/circle.js-BF319LN2.js.map +0 -1
  1035. package/build/server/chunks/chunks/client.js-D26R0bt6.js +0 -58
  1036. package/build/server/chunks/chunks/client.js-D26R0bt6.js.map +0 -1
  1037. package/build/server/chunks/chunks/compute.js-srroNvr-.js +0 -501
  1038. package/build/server/chunks/chunks/compute.js-srroNvr-.js.map +0 -1
  1039. package/build/server/chunks/chunks/computeLimits.js-CQyJFKqu.js +0 -44
  1040. package/build/server/chunks/chunks/computeLimits.js-CQyJFKqu.js.map +0 -1
  1041. package/build/server/chunks/chunks/computeRateLimit.server.js-DnvPu8b5.js +0 -31
  1042. package/build/server/chunks/chunks/computeRateLimit.server.js-DnvPu8b5.js.map +0 -1
  1043. package/build/server/chunks/chunks/copy.js-CX74BNXO.js +0 -24
  1044. package/build/server/chunks/chunks/copy.js-CX74BNXO.js.map +0 -1
  1045. package/build/server/chunks/chunks/create-id.js-DyutBmRB.js +0 -795
  1046. package/build/server/chunks/chunks/create-id.js-DyutBmRB.js.map +0 -1
  1047. package/build/server/chunks/chunks/definitions.js-B_LZcC8G.js +0 -387
  1048. package/build/server/chunks/chunks/definitions.js-B_LZcC8G.js.map +0 -1
  1049. package/build/server/chunks/chunks/dialog-description.js-BNCA58Uf.js +0 -489
  1050. package/build/server/chunks/chunks/dialog-description.js-BNCA58Uf.js.map +0 -1
  1051. package/build/server/chunks/chunks/dialog.js-KzUC_lV4.js +0 -360
  1052. package/build/server/chunks/chunks/dialog.js-KzUC_lV4.js.map +0 -1
  1053. package/build/server/chunks/chunks/dom-typeahead.svelte.js-CIQZpPMg.js +0 -211
  1054. package/build/server/chunks/chunks/dom-typeahead.svelte.js-CIQZpPMg.js.map +0 -1
  1055. package/build/server/chunks/chunks/engine.server.js-BaQbE4CG.js +0 -584
  1056. package/build/server/chunks/chunks/engine.server.js-BaQbE4CG.js.map +0 -1
  1057. package/build/server/chunks/chunks/esm.js-CVe0D3tO.js +0 -7
  1058. package/build/server/chunks/chunks/esm.js-CVe0D3tO.js.map +0 -1
  1059. package/build/server/chunks/chunks/esm2.js-CJwXaTbP.js +0 -987
  1060. package/build/server/chunks/chunks/esm2.js-CJwXaTbP.js.map +0 -1
  1061. package/build/server/chunks/chunks/events.js-BD_zKIav.js +0 -136
  1062. package/build/server/chunks/chunks/events.js-BD_zKIav.js.map +0 -1
  1063. package/build/server/chunks/chunks/evict-changed-servers.js-Dw8HdMyj.js +0 -18
  1064. package/build/server/chunks/chunks/evict-changed-servers.js-Dw8HdMyj.js.map +0 -1
  1065. package/build/server/chunks/chunks/exports.js-Bl7JH3d7.js +0 -149
  1066. package/build/server/chunks/chunks/exports.js-Bl7JH3d7.js.map +0 -1
  1067. package/build/server/chunks/chunks/external-link.js-CDKacmCr.js +0 -21
  1068. package/build/server/chunks/chunks/external-link.js-CDKacmCr.js.map +0 -1
  1069. package/build/server/chunks/chunks/folder-kanban.js-JM2vWrBr.js +0 -22
  1070. package/build/server/chunks/chunks/folder-kanban.js-JM2vWrBr.js.map +0 -1
  1071. package/build/server/chunks/chunks/folder-open.js-DZAgByKM.js +0 -17
  1072. package/build/server/chunks/chunks/folder-open.js-DZAgByKM.js.map +0 -1
  1073. package/build/server/chunks/chunks/folders.js-L-79cuap.js +0 -17
  1074. package/build/server/chunks/chunks/folders.js-L-79cuap.js.map +0 -1
  1075. package/build/server/chunks/chunks/footerContext.svelte.js-DZauzsZK.js +0 -680
  1076. package/build/server/chunks/chunks/footerContext.svelte.js-DZauzsZK.js.map +0 -1
  1077. package/build/server/chunks/chunks/forms.js-CCPK1Yl5.js +0 -2
  1078. package/build/server/chunks/chunks/forms.js-CCPK1Yl5.js.map +0 -1
  1079. package/build/server/chunks/chunks/gauge.js-ByoSKYeR.js +0 -17
  1080. package/build/server/chunks/chunks/gauge.js-ByoSKYeR.js.map +0 -1
  1081. package/build/server/chunks/chunks/grasshopper.js-CdYz2gPd.js +0 -2655
  1082. package/build/server/chunks/chunks/grasshopper.js-CdYz2gPd.js.map +0 -1
  1083. package/build/server/chunks/chunks/handlers.js-BpDAlScc.js +0 -1590
  1084. package/build/server/chunks/chunks/handlers.js-BpDAlScc.js.map +0 -1
  1085. package/build/server/chunks/chunks/http.js-BNvBCntZ.js +0 -60
  1086. package/build/server/chunks/chunks/http.js-BNvBCntZ.js.map +0 -1
  1087. package/build/server/chunks/chunks/index-server.js-DQcI4Uf0.js +0 -154
  1088. package/build/server/chunks/chunks/index-server.js-DQcI4Uf0.js.map +0 -1
  1089. package/build/server/chunks/chunks/input-group.js-CvIv_pYF.js +0 -65
  1090. package/build/server/chunks/chunks/input-group.js-CvIv_pYF.js.map +0 -1
  1091. package/build/server/chunks/chunks/input.js-BmyEYEb_.js +0 -31
  1092. package/build/server/chunks/chunks/input.js-BmyEYEb_.js.map +0 -1
  1093. package/build/server/chunks/chunks/instanceAdmins.server.js-DxkF1Z8y.js +0 -24
  1094. package/build/server/chunks/chunks/instanceAdmins.server.js-DxkF1Z8y.js.map +0 -1
  1095. package/build/server/chunks/chunks/internal.js-BFfHHam5.js +0 -27
  1096. package/build/server/chunks/chunks/internal.js-BFfHHam5.js.map +0 -1
  1097. package/build/server/chunks/chunks/internal2.js-Dx1x8Dv4.js +0 -219
  1098. package/build/server/chunks/chunks/internal2.js-Dx1x8Dv4.js.map +0 -1
  1099. package/build/server/chunks/chunks/key-round.js-30Lmuz0K.js +0 -22
  1100. package/build/server/chunks/chunks/key-round.js-30Lmuz0K.js.map +0 -1
  1101. package/build/server/chunks/chunks/label.js-yA32z5eG.js +0 -105
  1102. package/build/server/chunks/chunks/label.js-yA32z5eG.js.map +0 -1
  1103. package/build/server/chunks/chunks/legacy-client.js-C_nl-7NA.js +0 -771
  1104. package/build/server/chunks/chunks/legacy-client.js-C_nl-7NA.js.map +0 -1
  1105. package/build/server/chunks/chunks/link-2.js-BqFCdaAg.js +0 -26
  1106. package/build/server/chunks/chunks/link-2.js-BqFCdaAg.js.map +0 -1
  1107. package/build/server/chunks/chunks/liveSolve.server.js-DpRBaHA5.js +0 -70
  1108. package/build/server/chunks/chunks/liveSolve.server.js-DpRBaHA5.js.map +0 -1
  1109. package/build/server/chunks/chunks/localeContext.svelte.js-Ci_EHhgS.js +0 -410
  1110. package/build/server/chunks/chunks/localeContext.svelte.js-Ci_EHhgS.js.map +0 -1
  1111. package/build/server/chunks/chunks/mail.js-C4TGUsgv.js +0 -23
  1112. package/build/server/chunks/chunks/mail.js-C4TGUsgv.js.map +0 -1
  1113. package/build/server/chunks/chunks/minus.js-CoYdbRTv.js +0 -17
  1114. package/build/server/chunks/chunks/minus.js-CoYdbRTv.js.map +0 -1
  1115. package/build/server/chunks/chunks/navigation.js-CCPK1Yl5.js +0 -2
  1116. package/build/server/chunks/chunks/navigation.js-CCPK1Yl5.js.map +0 -1
  1117. package/build/server/chunks/chunks/oauth.js-WZFWOYa1.js +0 -415
  1118. package/build/server/chunks/chunks/oauth.js-WZFWOYa1.js.map +0 -1
  1119. package/build/server/chunks/chunks/oauthState.server.js-DXP7KiF3.js +0 -53
  1120. package/build/server/chunks/chunks/oauthState.server.js-DXP7KiF3.js.map +0 -1
  1121. package/build/server/chunks/chunks/openapi.js-g360-BRe.js +0 -61
  1122. package/build/server/chunks/chunks/openapi.js-g360-BRe.js.map +0 -1
  1123. package/build/server/chunks/chunks/outcome-BOrAeRAQ.js-DpkjLw3I.js +0 -77
  1124. package/build/server/chunks/chunks/outcome-BOrAeRAQ.js-DpkjLw3I.js.map +0 -1
  1125. package/build/server/chunks/chunks/package.js-B8ojgJpE.js +0 -85
  1126. package/build/server/chunks/chunks/package.js-B8ojgJpE.js.map +0 -1
  1127. package/build/server/chunks/chunks/paths.js-KeZkYLzj.js +0 -19
  1128. package/build/server/chunks/chunks/paths.js-KeZkYLzj.js.map +0 -1
  1129. package/build/server/chunks/chunks/permissions.server.js-B5seqY1O.js +0 -24
  1130. package/build/server/chunks/chunks/permissions.server.js-B5seqY1O.js.map +0 -1
  1131. package/build/server/chunks/chunks/plus.js-DIp8WjjL.js +0 -17
  1132. package/build/server/chunks/chunks/plus.js-DIp8WjjL.js.map +0 -1
  1133. package/build/server/chunks/chunks/popper-layer-force-mount.js-B_6OYm07.js +0 -1907
  1134. package/build/server/chunks/chunks/popper-layer-force-mount.js-B_6OYm07.js.map +0 -1
  1135. package/build/server/chunks/chunks/presets.server.js-DvBaWEr5.js +0 -21
  1136. package/build/server/chunks/chunks/presets.server.js-DvBaWEr5.js.map +0 -1
  1137. package/build/server/chunks/chunks/projects.js-D6fN9oey.js +0 -47
  1138. package/build/server/chunks/chunks/projects.js-D6fN9oey.js.map +0 -1
  1139. package/build/server/chunks/chunks/providers.server.js-DbrdtkJK.js +0 -6337
  1140. package/build/server/chunks/chunks/providers.server.js-DbrdtkJK.js.map +0 -1
  1141. package/build/server/chunks/chunks/randomId.js-dgVOFSi4.js +0 -22
  1142. package/build/server/chunks/chunks/randomId.js-dgVOFSi4.js.map +0 -1
  1143. package/build/server/chunks/chunks/redirect.js-oP6lj4tJ.js +0 -15
  1144. package/build/server/chunks/chunks/redirect.js-oP6lj4tJ.js.map +0 -1
  1145. package/build/server/chunks/chunks/refresh-cw.js-7jhDx15C.js +0 -22
  1146. package/build/server/chunks/chunks/refresh-cw.js-7jhDx15C.js.map +0 -1
  1147. package/build/server/chunks/chunks/registry.js-C2zKBHg3.js +0 -656
  1148. package/build/server/chunks/chunks/registry.js-C2zKBHg3.js.map +0 -1
  1149. package/build/server/chunks/chunks/request-context.js-BlxaBgml.js +0 -28
  1150. package/build/server/chunks/chunks/request-context.js-BlxaBgml.js.map +0 -1
  1151. package/build/server/chunks/chunks/resolve.server.js-B04dvujb.js +0 -59
  1152. package/build/server/chunks/chunks/resolve.server.js-B04dvujb.js.map +0 -1
  1153. package/build/server/chunks/chunks/rotate-ccw.js--ALnMG6X.js +0 -17
  1154. package/build/server/chunks/chunks/rotate-ccw.js--ALnMG6X.js.map +0 -1
  1155. package/build/server/chunks/chunks/routing.js-jOE0ETFb.js +0 -264
  1156. package/build/server/chunks/chunks/routing.js-jOE0ETFb.js.map +0 -1
  1157. package/build/server/chunks/chunks/roving-focus-group.js-D-_tnELv.js +0 -158
  1158. package/build/server/chunks/chunks/roving-focus-group.js-D-_tnELv.js.map +0 -1
  1159. package/build/server/chunks/chunks/schema-extraction.js-DxFeK69H.js +0 -141
  1160. package/build/server/chunks/chunks/schema-extraction.js-DxFeK69H.js.map +0 -1
  1161. package/build/server/chunks/chunks/scroll-lock.js-C7gtgy_s.js +0 -1956
  1162. package/build/server/chunks/chunks/scroll-lock.js-C7gtgy_s.js.map +0 -1
  1163. package/build/server/chunks/chunks/scroll-text.js-DzkCYNV2.js +0 -22
  1164. package/build/server/chunks/chunks/scroll-text.js-DzkCYNV2.js.map +0 -1
  1165. package/build/server/chunks/chunks/search.js-DAtjxvTA.js +0 -21
  1166. package/build/server/chunks/chunks/search.js-DAtjxvTA.js.map +0 -1
  1167. package/build/server/chunks/chunks/select.js-IP6mtWOr.js +0 -1756
  1168. package/build/server/chunks/chunks/select.js-IP6mtWOr.js.map +0 -1
  1169. package/build/server/chunks/chunks/selfUpdate.server.js-DDD13rVB.js +0 -144
  1170. package/build/server/chunks/chunks/selfUpdate.server.js-DDD13rVB.js.map +0 -1
  1171. package/build/server/chunks/chunks/separator.js-Bh3r_kbL.js +0 -187
  1172. package/build/server/chunks/chunks/separator.js-Bh3r_kbL.js.map +0 -1
  1173. package/build/server/chunks/chunks/server.js-Bn3s-cVB.js +0 -3921
  1174. package/build/server/chunks/chunks/server.js-Bn3s-cVB.js.map +0 -1
  1175. package/build/server/chunks/chunks/server2.js-BvOT__v3.js +0 -103
  1176. package/build/server/chunks/chunks/server2.js-BvOT__v3.js.map +0 -1
  1177. package/build/server/chunks/chunks/server3.js-Zec4zH4z.js +0 -20753
  1178. package/build/server/chunks/chunks/server3.js-Zec4zH4z.js.map +0 -1
  1179. package/build/server/chunks/chunks/server4.js-CP6bBl1P.js +0 -46
  1180. package/build/server/chunks/chunks/server4.js-CP6bBl1P.js.map +0 -1
  1181. package/build/server/chunks/chunks/severity.js-yRcFOGQ7.js +0 -117
  1182. package/build/server/chunks/chunks/severity.js-yRcFOGQ7.js.map +0 -1
  1183. package/build/server/chunks/chunks/shared-server.js-CJsQadj4.js +0 -22
  1184. package/build/server/chunks/chunks/shared-server.js-CJsQadj4.js.map +0 -1
  1185. package/build/server/chunks/chunks/shared.js-BT6FYGEZ.js +0 -709
  1186. package/build/server/chunks/chunks/shared.js-BT6FYGEZ.js.map +0 -1
  1187. package/build/server/chunks/chunks/shared2.js-BFuk6QhH.js +0 -88
  1188. package/build/server/chunks/chunks/shared2.js-BFuk6QhH.js.map +0 -1
  1189. package/build/server/chunks/chunks/shield-check.js-D7xC3rmX.js +0 -17
  1190. package/build/server/chunks/chunks/shield-check.js-D7xC3rmX.js.map +0 -1
  1191. package/build/server/chunks/chunks/shield.js-LckTyJGe.js +0 -17
  1192. package/build/server/chunks/chunks/shield.js-LckTyJGe.js.map +0 -1
  1193. package/build/server/chunks/chunks/solve.server.js-DvmmuTYF.js +0 -315
  1194. package/build/server/chunks/chunks/solve.server.js-DvmmuTYF.js.map +0 -1
  1195. package/build/server/chunks/chunks/sr-only-styles.js-Drt1VGf2.js +0 -19
  1196. package/build/server/chunks/chunks/sr-only-styles.js-Drt1VGf2.js.map +0 -1
  1197. package/build/server/chunks/chunks/src.js-BQFsdJf3.js +0 -518
  1198. package/build/server/chunks/chunks/src.js-BQFsdJf3.js.map +0 -1
  1199. package/build/server/chunks/chunks/star.js-CJspSS5m.js +0 -17
  1200. package/build/server/chunks/chunks/star.js-CJspSS5m.js.map +0 -1
  1201. package/build/server/chunks/chunks/state.js-DaNGuhKE.js +0 -74
  1202. package/build/server/chunks/chunks/state.js-DaNGuhKE.js.map +0 -1
  1203. package/build/server/chunks/chunks/stores.js-BAFlDJra.js +0 -35
  1204. package/build/server/chunks/chunks/stores.js-BAFlDJra.js.map +0 -1
  1205. package/build/server/chunks/chunks/sveltekit.js-CwkcUXXi.js +0 -102
  1206. package/build/server/chunks/chunks/sveltekit.js-CwkcUXXi.js.map +0 -1
  1207. package/build/server/chunks/chunks/tabs-trigger.js-C5zvXOhB.js +0 -520
  1208. package/build/server/chunks/chunks/tabs-trigger.js-C5zvXOhB.js.map +0 -1
  1209. package/build/server/chunks/chunks/toast-state.svelte.js-CzgVAa8I.js +0 -284
  1210. package/build/server/chunks/chunks/toast-state.svelte.js-CzgVAa8I.js.map +0 -1
  1211. package/build/server/chunks/chunks/toggle-group-item.js-lgtVgqs5.js +0 -400
  1212. package/build/server/chunks/chunks/toggle-group-item.js-lgtVgqs5.js.map +0 -1
  1213. package/build/server/chunks/chunks/token.server.js-9F6kDRtE.js +0 -131
  1214. package/build/server/chunks/chunks/token.server.js-9F6kDRtE.js.map +0 -1
  1215. package/build/server/chunks/chunks/token2.server.js-Dv9oGmUn.js +0 -50
  1216. package/build/server/chunks/chunks/token2.server.js-Dv9oGmUn.js.map +0 -1
  1217. package/build/server/chunks/chunks/token3.server.js-CHgzJAXs.js +0 -41
  1218. package/build/server/chunks/chunks/token3.server.js-CHgzJAXs.js.map +0 -1
  1219. package/build/server/chunks/chunks/token4.server.js-2COCjTDd.js +0 -24
  1220. package/build/server/chunks/chunks/token4.server.js-2COCjTDd.js.map +0 -1
  1221. package/build/server/chunks/chunks/tokens.js-C1iFCpCz.js +0 -25
  1222. package/build/server/chunks/chunks/tokens.js-C1iFCpCz.js.map +0 -1
  1223. package/build/server/chunks/chunks/trash.js-D6PEuXeo.js +0 -24
  1224. package/build/server/chunks/chunks/trash.js-D6PEuXeo.js.map +0 -1
  1225. package/build/server/chunks/chunks/types.js-C7gj_Qvn.js +0 -10
  1226. package/build/server/chunks/chunks/types.js-C7gj_Qvn.js.map +0 -1
  1227. package/build/server/chunks/chunks/updateCheck.server.js-D9givfAy.js +0 -203
  1228. package/build/server/chunks/chunks/updateCheck.server.js-D9givfAy.js.map +0 -1
  1229. package/build/server/chunks/chunks/user-plus.js-D8wR6i9h.js +0 -36
  1230. package/build/server/chunks/chunks/user-plus.js-D8wR6i9h.js.map +0 -1
  1231. package/build/server/chunks/chunks/users.js-CrOt_3Af.js +0 -26
  1232. package/build/server/chunks/chunks/users.js-CrOt_3Af.js.map +0 -1
  1233. package/build/server/chunks/chunks/utils.js-CdicmAy3.js +0 -745
  1234. package/build/server/chunks/chunks/utils.js-CdicmAy3.js.map +0 -1
  1235. package/build/server/chunks/chunks/utils2.js-BMDNJPPH.js +0 -174
  1236. package/build/server/chunks/chunks/utils2.js-BMDNJPPH.js.map +0 -1
  1237. package/build/server/chunks/chunks/visibility.js-DHIz9MAP.js +0 -198
  1238. package/build/server/chunks/chunks/visibility.js-DHIz9MAP.js.map +0 -1
  1239. package/build/server/chunks/chunks/x.js-CUMpi5o0.js +0 -17
  1240. package/build/server/chunks/chunks/x.js-CUMpi5o0.js.map +0 -1
  1241. package/build/server/chunks/entries/endpoints/.well-known/oauth-authorization-server/_server.ts.js-BxOaGAKh.js +0 -18
  1242. package/build/server/chunks/entries/endpoints/.well-known/oauth-authorization-server/_server.ts.js-BxOaGAKh.js.map +0 -1
  1243. package/build/server/chunks/entries/endpoints/.well-known/oauth-protected-resource/_server.ts.js-DIxEFeXu.js +0 -18
  1244. package/build/server/chunks/entries/endpoints/.well-known/oauth-protected-resource/_server.ts.js-DIxEFeXu.js.map +0 -1
  1245. package/build/server/chunks/entries/endpoints/.well-known/oauth-protected-resource/mcp/_server.ts.js-1kMLbj9B.js +0 -18
  1246. package/build/server/chunks/entries/endpoints/.well-known/oauth-protected-resource/mcp/_server.ts.js-1kMLbj9B.js.map +0 -1
  1247. package/build/server/chunks/entries/endpoints/api/admin/compute/_server.ts.js-DCscdvEV.js +0 -98
  1248. package/build/server/chunks/entries/endpoints/api/admin/compute/_server.ts.js-DCscdvEV.js.map +0 -1
  1249. package/build/server/chunks/entries/endpoints/api/admin/compute/actions/_server.ts.js-0Mj_mcJt.js +0 -87
  1250. package/build/server/chunks/entries/endpoints/api/admin/compute/actions/_server.ts.js-0Mj_mcJt.js.map +0 -1
  1251. package/build/server/chunks/entries/endpoints/api/admin/compute/status/_server.ts.js-DLYgk9sQ.js +0 -98
  1252. package/build/server/chunks/entries/endpoints/api/admin/compute/status/_server.ts.js-DLYgk9sQ.js.map +0 -1
  1253. package/build/server/chunks/entries/endpoints/api/admin/orgs/_id_/_server.ts.js-wP88tWFd.js +0 -47
  1254. package/build/server/chunks/entries/endpoints/api/admin/orgs/_id_/_server.ts.js-wP88tWFd.js.map +0 -1
  1255. package/build/server/chunks/entries/endpoints/api/admin/orgs/_server.ts.js-DigenazL.js +0 -70
  1256. package/build/server/chunks/entries/endpoints/api/admin/orgs/_server.ts.js-DigenazL.js.map +0 -1
  1257. package/build/server/chunks/entries/endpoints/api/admin/projects/_id_/_server.ts.js-DIh4cPwS.js +0 -63
  1258. package/build/server/chunks/entries/endpoints/api/admin/projects/_id_/_server.ts.js-DIh4cPwS.js.map +0 -1
  1259. package/build/server/chunks/entries/endpoints/api/admin/projects/_id_/grants/_grantId_/_server.ts.js-llcZQfj0.js +0 -35
  1260. package/build/server/chunks/entries/endpoints/api/admin/projects/_id_/grants/_grantId_/_server.ts.js-llcZQfj0.js.map +0 -1
  1261. package/build/server/chunks/entries/endpoints/api/admin/projects/_id_/grants/_server.ts.js-C3mOC3fF.js +0 -66
  1262. package/build/server/chunks/entries/endpoints/api/admin/projects/_id_/grants/_server.ts.js-C3mOC3fF.js.map +0 -1
  1263. package/build/server/chunks/entries/endpoints/api/admin/projects/_server.ts.js-C-MftkJL.js +0 -81
  1264. package/build/server/chunks/entries/endpoints/api/admin/projects/_server.ts.js-C-MftkJL.js.map +0 -1
  1265. package/build/server/chunks/entries/endpoints/api/admin/system/health/_server.ts.js-Bs5H8axR.js +0 -366
  1266. package/build/server/chunks/entries/endpoints/api/admin/system/health/_server.ts.js-Bs5H8axR.js.map +0 -1
  1267. package/build/server/chunks/entries/endpoints/api/admin/system/throughput/_server.ts.js-Bah8G82h.js +0 -87
  1268. package/build/server/chunks/entries/endpoints/api/admin/system/throughput/_server.ts.js-Bah8G82h.js.map +0 -1
  1269. package/build/server/chunks/entries/endpoints/api/admin/system/update/_server.ts.js-Dteez7Cv.js +0 -610
  1270. package/build/server/chunks/entries/endpoints/api/admin/system/update/_server.ts.js-Dteez7Cv.js.map +0 -1
  1271. package/build/server/chunks/entries/endpoints/api/admin/users/_id_/_server.ts.js-ClKfsbNv.js +0 -59
  1272. package/build/server/chunks/entries/endpoints/api/admin/users/_id_/_server.ts.js-ClKfsbNv.js.map +0 -1
  1273. package/build/server/chunks/entries/endpoints/api/admin/users/_id_/disable/_server.ts.js-CQqSb0fT.js +0 -77
  1274. package/build/server/chunks/entries/endpoints/api/admin/users/_id_/disable/_server.ts.js-CQqSb0fT.js.map +0 -1
  1275. package/build/server/chunks/entries/endpoints/api/admin/users/_server.ts.js-o-X8J9FJ.js +0 -84
  1276. package/build/server/chunks/entries/endpoints/api/admin/users/_server.ts.js-o-X8J9FJ.js.map +0 -1
  1277. package/build/server/chunks/entries/endpoints/api/diag/throughput/_server.ts.js-3RODCsN1.js +0 -64
  1278. package/build/server/chunks/entries/endpoints/api/diag/throughput/_server.ts.js-3RODCsN1.js.map +0 -1
  1279. package/build/server/chunks/entries/endpoints/api/files/_...path_/_server.ts.js-DcpGuVwa.js +0 -95
  1280. package/build/server/chunks/entries/endpoints/api/files/_...path_/_server.ts.js-DcpGuVwa.js.map +0 -1
  1281. package/build/server/chunks/entries/endpoints/api/health/_server.ts.js-BU-ZKLU7.js +0 -62
  1282. package/build/server/chunks/entries/endpoints/api/health/_server.ts.js-BU-ZKLU7.js.map +0 -1
  1283. package/build/server/chunks/entries/endpoints/api/health/ready/_server.ts.js-h7cVEhJP.js +0 -65
  1284. package/build/server/chunks/entries/endpoints/api/health/ready/_server.ts.js-h7cVEhJP.js.map +0 -1
  1285. package/build/server/chunks/entries/endpoints/api/v1/compute/_server.ts.js-D1ku_J7c.js +0 -94
  1286. package/build/server/chunks/entries/endpoints/api/v1/compute/_server.ts.js-D1ku_J7c.js.map +0 -1
  1287. package/build/server/chunks/entries/endpoints/api/v1/compute/schema/_server.ts.js-ChQW_QNl.js +0 -79
  1288. package/build/server/chunks/entries/endpoints/api/v1/compute/schema/_server.ts.js-ChQW_QNl.js.map +0 -1
  1289. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/_server.ts.js-BKePykE0.js +0 -49
  1290. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/_server.ts.js-BKePykE0.js.map +0 -1
  1291. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/image/_server.ts.js-CHG-ElNV.js +0 -47
  1292. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/image/_server.ts.js-CHG-ElNV.js.map +0 -1
  1293. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/publish/_server.ts.js-X-qJvWpy.js +0 -50
  1294. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/publish/_server.ts.js-X-qJvWpy.js.map +0 -1
  1295. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/schema/_server.ts.js-Cp5s2PJY.js +0 -47
  1296. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/schema/_server.ts.js-Cp5s2PJY.js.map +0 -1
  1297. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/share-links/_linkId_/_server.ts.js-NPTY3bc-.js +0 -47
  1298. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/share-links/_linkId_/_server.ts.js-NPTY3bc-.js.map +0 -1
  1299. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/share-links/_server.ts.js-9KOm0qBe.js +0 -51
  1300. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/share-links/_server.ts.js-9KOm0qBe.js.map +0 -1
  1301. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/solve/_server.ts.js-B6xk07be.js +0 -98
  1302. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/solve/_server.ts.js-B6xk07be.js.map +0 -1
  1303. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/versions/_server.ts.js-B4Q3VhGH.js +0 -52
  1304. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/versions/_server.ts.js-B4Q3VhGH.js.map +0 -1
  1305. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/versions/_versionId_/_server.ts.js-BYdFz8uv.js +0 -48
  1306. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/versions/_versionId_/_server.ts.js-BYdFz8uv.js.map +0 -1
  1307. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/versions/_versionId_/schema/_server.ts.js-ClkMh71D.js +0 -47
  1308. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/versions/_versionId_/schema/_server.ts.js-ClkMh71D.js.map +0 -1
  1309. package/build/server/chunks/entries/endpoints/api/v1/definitions/_server.ts.js-CQ7MWiDU.js +0 -50
  1310. package/build/server/chunks/entries/endpoints/api/v1/definitions/_server.ts.js-CQ7MWiDU.js.map +0 -1
  1311. package/build/server/chunks/entries/endpoints/api/v1/me/_server.ts.js-UFnJTA69.js +0 -46
  1312. package/build/server/chunks/entries/endpoints/api/v1/me/_server.ts.js-UFnJTA69.js.map +0 -1
  1313. package/build/server/chunks/entries/endpoints/api/v1/me/starred/_guid_/_server.ts.js-DEi4iWdw.js +0 -47
  1314. package/build/server/chunks/entries/endpoints/api/v1/me/starred/_guid_/_server.ts.js-DEi4iWdw.js.map +0 -1
  1315. package/build/server/chunks/entries/endpoints/api/v1/me/token/_server.ts.js-v3-TzqWz.js +0 -46
  1316. package/build/server/chunks/entries/endpoints/api/v1/me/token/_server.ts.js-v3-TzqWz.js.map +0 -1
  1317. package/build/server/chunks/entries/endpoints/api/v1/openapi.json/_server.ts.js-BQaOmPav.js +0 -47
  1318. package/build/server/chunks/entries/endpoints/api/v1/openapi.json/_server.ts.js-BQaOmPav.js.map +0 -1
  1319. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/_server.ts.js-hbeX5VQf.js +0 -46
  1320. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/_server.ts.js-hbeX5VQf.js.map +0 -1
  1321. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/assets/_kind_/_server.ts.js-Ho6gZUbD.js +0 -47
  1322. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/assets/_kind_/_server.ts.js-Ho6gZUbD.js.map +0 -1
  1323. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/compute/_server.ts.js-R9DF-QVO.js +0 -47
  1324. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/compute/_server.ts.js-R9DF-QVO.js.map +0 -1
  1325. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/invites/_id_/_server.ts.js-J_7u9_KN.js +0 -46
  1326. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/invites/_id_/_server.ts.js-J_7u9_KN.js.map +0 -1
  1327. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/invites/_id_/resend/_server.ts.js-Dsqk-mkR.js +0 -46
  1328. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/invites/_id_/resend/_server.ts.js-Dsqk-mkR.js.map +0 -1
  1329. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/invites/_server.ts.js-BmGEfDxn.js +0 -47
  1330. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/invites/_server.ts.js-BmGEfDxn.js.map +0 -1
  1331. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/members/_server.ts.js-CIuO-a_b.js +0 -46
  1332. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/members/_server.ts.js-CIuO-a_b.js.map +0 -1
  1333. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/members/_userId_/_server.ts.js-DlFtEkDG.js +0 -47
  1334. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/members/_userId_/_server.ts.js-DlFtEkDG.js.map +0 -1
  1335. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/tokens/_server.ts.js-BFgCmiOg.js +0 -47
  1336. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/tokens/_server.ts.js-BFgCmiOg.js.map +0 -1
  1337. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/tokens/_tokenId_/_server.ts.js-DVZxyTje.js +0 -46
  1338. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/tokens/_tokenId_/_server.ts.js-DVZxyTje.js.map +0 -1
  1339. package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/_server.ts.js-C_SQsTm4.js +0 -49
  1340. package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/_server.ts.js-C_SQsTm4.js.map +0 -1
  1341. package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/members/_server.ts.js-7n3xjWS8.js +0 -48
  1342. package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/members/_server.ts.js-7n3xjWS8.js.map +0 -1
  1343. package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/members/_userId_/_server.ts.js-DtD7ztOa.js +0 -48
  1344. package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/members/_userId_/_server.ts.js-DtD7ztOa.js.map +0 -1
  1345. package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/reclaim/_server.ts.js-DU1zIks1.js +0 -47
  1346. package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/reclaim/_server.ts.js-DU1zIks1.js.map +0 -1
  1347. package/build/server/chunks/entries/endpoints/api/v1/projects/_server.ts.js-CZp_uEF7.js +0 -47
  1348. package/build/server/chunks/entries/endpoints/api/v1/projects/_server.ts.js-CZp_uEF7.js.map +0 -1
  1349. package/build/server/chunks/entries/endpoints/api/v1/solve/_solveId_/cancel/_server.ts.js-18Z61Qvh.js +0 -49
  1350. package/build/server/chunks/entries/endpoints/api/v1/solve/_solveId_/cancel/_server.ts.js-18Z61Qvh.js.map +0 -1
  1351. package/build/server/chunks/entries/endpoints/api/v1/solve-events/_server.ts.js-Sv3CtyRZ.js +0 -109
  1352. package/build/server/chunks/entries/endpoints/api/v1/solve-events/_server.ts.js-Sv3CtyRZ.js.map +0 -1
  1353. package/build/server/chunks/entries/endpoints/api/v1/solve-events/_solveId_/_server.ts.js-COl6nqRv.js +0 -67
  1354. package/build/server/chunks/entries/endpoints/api/v1/solve-events/_solveId_/_server.ts.js-COl6nqRv.js.map +0 -1
  1355. package/build/server/chunks/entries/endpoints/auth/email/callback/_server.ts.js-BIQtmwhS.js +0 -55
  1356. package/build/server/chunks/entries/endpoints/auth/email/callback/_server.ts.js-BIQtmwhS.js.map +0 -1
  1357. package/build/server/chunks/entries/endpoints/auth/supabase/callback/_server.ts.js-zOe_S-al.js +0 -61
  1358. package/build/server/chunks/entries/endpoints/auth/supabase/callback/_server.ts.js-zOe_S-al.js.map +0 -1
  1359. package/build/server/chunks/entries/endpoints/auth/supabase/start/_server.ts.js-6-slNAw_.js +0 -66
  1360. package/build/server/chunks/entries/endpoints/auth/supabase/start/_server.ts.js-6-slNAw_.js.map +0 -1
  1361. package/build/server/chunks/entries/endpoints/mcp/_server.ts.js-DKNjGBRy.js +0 -28
  1362. package/build/server/chunks/entries/endpoints/mcp/_server.ts.js-DKNjGBRy.js.map +0 -1
  1363. package/build/server/chunks/entries/endpoints/oauth/register/_server.ts.js-S_S09lGo.js +0 -29
  1364. package/build/server/chunks/entries/endpoints/oauth/register/_server.ts.js-S_S09lGo.js.map +0 -1
  1365. package/build/server/chunks/entries/endpoints/oauth/token/_server.ts.js-HqZfcLWV.js +0 -32
  1366. package/build/server/chunks/entries/endpoints/oauth/token/_server.ts.js-HqZfcLWV.js.map +0 -1
  1367. package/build/server/chunks/entries/hooks.server.js-BIZRBlZI.js +0 -376
  1368. package/build/server/chunks/entries/hooks.server.js-BIZRBlZI.js.map +0 -1
  1369. package/build/server/chunks/entries/pages/_error.svelte.js-CR3ZMzSv.js +0 -38
  1370. package/build/server/chunks/entries/pages/_error.svelte.js-CR3ZMzSv.js.map +0 -1
  1371. package/build/server/chunks/entries/pages/_layout.server.ts.js-BD_gDYVJ.js +0 -37
  1372. package/build/server/chunks/entries/pages/_layout.server.ts.js-BD_gDYVJ.js.map +0 -1
  1373. package/build/server/chunks/entries/pages/_layout.svelte.js-DrB_Yvov.js +0 -626
  1374. package/build/server/chunks/entries/pages/_layout.svelte.js-DrB_Yvov.js.map +0 -1
  1375. package/build/server/chunks/entries/pages/_page.server.ts.js-BwjbAhOA.js +0 -56
  1376. package/build/server/chunks/entries/pages/_page.server.ts.js-BwjbAhOA.js.map +0 -1
  1377. package/build/server/chunks/entries/pages/_page.svelte.js-DeW0z6uB.js +0 -160
  1378. package/build/server/chunks/entries/pages/_page.svelte.js-DeW0z6uB.js.map +0 -1
  1379. package/build/server/chunks/entries/pages/accept-invite/_page.server.ts.js-BG63dUmh.js +0 -180
  1380. package/build/server/chunks/entries/pages/accept-invite/_page.server.ts.js-BG63dUmh.js.map +0 -1
  1381. package/build/server/chunks/entries/pages/accept-invite/_page.svelte.js-8p3P5tRV.js +0 -135
  1382. package/build/server/chunks/entries/pages/accept-invite/_page.svelte.js-8p3P5tRV.js.map +0 -1
  1383. package/build/server/chunks/entries/pages/admin/_error.svelte.js-K13l_c7B.js +0 -40
  1384. package/build/server/chunks/entries/pages/admin/_error.svelte.js-K13l_c7B.js.map +0 -1
  1385. package/build/server/chunks/entries/pages/admin/_layout.server.ts.js-CzYxoMn4.js +0 -31
  1386. package/build/server/chunks/entries/pages/admin/_layout.server.ts.js-CzYxoMn4.js.map +0 -1
  1387. package/build/server/chunks/entries/pages/admin/_layout.svelte.js-CtCF11Mx.js +0 -123
  1388. package/build/server/chunks/entries/pages/admin/_layout.svelte.js-CtCF11Mx.js.map +0 -1
  1389. package/build/server/chunks/entries/pages/admin/_page.server.ts.js-k8xyK-0r.js +0 -76
  1390. package/build/server/chunks/entries/pages/admin/_page.server.ts.js-k8xyK-0r.js.map +0 -1
  1391. package/build/server/chunks/entries/pages/admin/_page.svelte.js-CHb4pbbG.js +0 -396
  1392. package/build/server/chunks/entries/pages/admin/_page.svelte.js-CHb4pbbG.js.map +0 -1
  1393. package/build/server/chunks/entries/pages/admin/audit/_page.server.ts.js-DmbG-JDV.js +0 -269
  1394. package/build/server/chunks/entries/pages/admin/audit/_page.server.ts.js-DmbG-JDV.js.map +0 -1
  1395. package/build/server/chunks/entries/pages/admin/audit/_page.svelte.js-CcAaPTYj.js +0 -458
  1396. package/build/server/chunks/entries/pages/admin/audit/_page.svelte.js-CcAaPTYj.js.map +0 -1
  1397. package/build/server/chunks/entries/pages/admin/compute/_page.server.ts.js-BpynPgSW.js +0 -74
  1398. package/build/server/chunks/entries/pages/admin/compute/_page.server.ts.js-BpynPgSW.js.map +0 -1
  1399. package/build/server/chunks/entries/pages/admin/compute/_page.svelte.js-2EyONotW.js +0 -841
  1400. package/build/server/chunks/entries/pages/admin/compute/_page.svelte.js-2EyONotW.js.map +0 -1
  1401. package/build/server/chunks/entries/pages/admin/organizations/_page.server.ts.js-By_wlwvD.js +0 -35
  1402. package/build/server/chunks/entries/pages/admin/organizations/_page.server.ts.js-By_wlwvD.js.map +0 -1
  1403. package/build/server/chunks/entries/pages/admin/organizations/_page.svelte.js-D0t7iVIE.js +0 -99
  1404. package/build/server/chunks/entries/pages/admin/organizations/_page.svelte.js-D0t7iVIE.js.map +0 -1
  1405. package/build/server/chunks/entries/pages/admin/projects/_id_/_page.server.ts.js-CxcLfOOB.js +0 -86
  1406. package/build/server/chunks/entries/pages/admin/projects/_id_/_page.server.ts.js-CxcLfOOB.js.map +0 -1
  1407. package/build/server/chunks/entries/pages/admin/projects/_id_/_page.svelte.js-DJollvmK.js +0 -639
  1408. package/build/server/chunks/entries/pages/admin/projects/_id_/_page.svelte.js-DJollvmK.js.map +0 -1
  1409. package/build/server/chunks/entries/pages/admin/projects/_page.server.ts.js-DAQ9tm4R.js +0 -42
  1410. package/build/server/chunks/entries/pages/admin/projects/_page.server.ts.js-DAQ9tm4R.js.map +0 -1
  1411. package/build/server/chunks/entries/pages/admin/projects/_page.svelte.js-D7IYFtKB.js +0 -286
  1412. package/build/server/chunks/entries/pages/admin/projects/_page.svelte.js-D7IYFtKB.js.map +0 -1
  1413. package/build/server/chunks/entries/pages/admin/system/_page.server.ts.js-XVGE4_SA.js +0 -87
  1414. package/build/server/chunks/entries/pages/admin/system/_page.server.ts.js-XVGE4_SA.js.map +0 -1
  1415. package/build/server/chunks/entries/pages/admin/system/_page.svelte.js-D5CFBrZl.js +0 -1389
  1416. package/build/server/chunks/entries/pages/admin/system/_page.svelte.js-D5CFBrZl.js.map +0 -1
  1417. package/build/server/chunks/entries/pages/admin/users/_page.server.ts.js-CEQCsHhA.js +0 -79
  1418. package/build/server/chunks/entries/pages/admin/users/_page.server.ts.js-CEQCsHhA.js.map +0 -1
  1419. package/build/server/chunks/entries/pages/admin/users/_page.svelte.js-B9r69hfP.js +0 -636
  1420. package/build/server/chunks/entries/pages/admin/users/_page.svelte.js-B9r69hfP.js.map +0 -1
  1421. package/build/server/chunks/entries/pages/auth/email/sent/_page.svelte.js-Dk8pTxVa.js +0 -46
  1422. package/build/server/chunks/entries/pages/auth/email/sent/_page.svelte.js-Dk8pTxVa.js.map +0 -1
  1423. package/build/server/chunks/entries/pages/auth/email/start/_page.server.ts.js-DqfD9TXW.js +0 -62
  1424. package/build/server/chunks/entries/pages/auth/email/start/_page.server.ts.js-DqfD9TXW.js.map +0 -1
  1425. package/build/server/chunks/entries/pages/auth/email/start/_page.svelte.js-C9IWTavI.js +0 -15
  1426. package/build/server/chunks/entries/pages/auth/email/start/_page.svelte.js-C9IWTavI.js.map +0 -1
  1427. package/build/server/chunks/entries/pages/docs/api/_page.server.ts.js-FybPSZ7O.js +0 -62
  1428. package/build/server/chunks/entries/pages/docs/api/_page.server.ts.js-FybPSZ7O.js.map +0 -1
  1429. package/build/server/chunks/entries/pages/docs/api/_page.svelte.js-aorD3DQs.js +0 -85
  1430. package/build/server/chunks/entries/pages/docs/api/_page.svelte.js-aorD3DQs.js.map +0 -1
  1431. package/build/server/chunks/entries/pages/library/_guid_/_page.server.ts.js-CXkNtj9Q.js +0 -119
  1432. package/build/server/chunks/entries/pages/library/_guid_/_page.server.ts.js-CXkNtj9Q.js.map +0 -1
  1433. package/build/server/chunks/entries/pages/library/_guid_/_page.svelte.js-uQpR3GHm.js +0 -14439
  1434. package/build/server/chunks/entries/pages/library/_guid_/_page.svelte.js-uQpR3GHm.js.map +0 -1
  1435. package/build/server/chunks/entries/pages/library/_page.server.ts.js-B2c2vX6l.js +0 -51
  1436. package/build/server/chunks/entries/pages/library/_page.server.ts.js-B2c2vX6l.js.map +0 -1
  1437. package/build/server/chunks/entries/pages/library/_page.svelte.js-CqOdymIO.js +0 -301
  1438. package/build/server/chunks/entries/pages/library/_page.svelte.js-CqOdymIO.js.map +0 -1
  1439. package/build/server/chunks/entries/pages/login/_page.server.ts.js-DIgVeHOJ.js +0 -101
  1440. package/build/server/chunks/entries/pages/login/_page.server.ts.js-DIgVeHOJ.js.map +0 -1
  1441. package/build/server/chunks/entries/pages/login/_page.svelte.js-DrUgnKb0.js +0 -214
  1442. package/build/server/chunks/entries/pages/login/_page.svelte.js-DrUgnKb0.js.map +0 -1
  1443. package/build/server/chunks/entries/pages/logout/_page.server.ts.js-DBfzDyQO.js +0 -19
  1444. package/build/server/chunks/entries/pages/logout/_page.server.ts.js-DBfzDyQO.js.map +0 -1
  1445. package/build/server/chunks/entries/pages/oauth/authorize/_page.server.ts.js-BYm9z99H.js +0 -103
  1446. package/build/server/chunks/entries/pages/oauth/authorize/_page.server.ts.js-BYm9z99H.js.map +0 -1
  1447. package/build/server/chunks/entries/pages/oauth/authorize/_page.svelte.js-Y_pwq4PL.js +0 -133
  1448. package/build/server/chunks/entries/pages/oauth/authorize/_page.svelte.js-Y_pwq4PL.js.map +0 -1
  1449. package/build/server/chunks/entries/pages/projects/_layout.server.ts.js-BG5rMy0l.js +0 -22
  1450. package/build/server/chunks/entries/pages/projects/_layout.server.ts.js-BG5rMy0l.js.map +0 -1
  1451. package/build/server/chunks/entries/pages/projects/_layout.svelte.js-pzcP1UHQ.js +0 -50
  1452. package/build/server/chunks/entries/pages/projects/_layout.svelte.js-pzcP1UHQ.js.map +0 -1
  1453. package/build/server/chunks/entries/pages/projects/_page.server.ts.js-9bIgSAoI.js +0 -93
  1454. package/build/server/chunks/entries/pages/projects/_page.server.ts.js-9bIgSAoI.js.map +0 -1
  1455. package/build/server/chunks/entries/pages/projects/_page.svelte.js-QeRk767A.js +0 -3635
  1456. package/build/server/chunks/entries/pages/projects/_page.svelte.js-QeRk767A.js.map +0 -1
  1457. package/build/server/chunks/entries/pages/setup/_page.server.ts.js-DTVXv4_5.js +0 -116
  1458. package/build/server/chunks/entries/pages/setup/_page.server.ts.js-DTVXv4_5.js.map +0 -1
  1459. package/build/server/chunks/entries/pages/setup/_page.svelte.js-CH8fkvVN.js +0 -249
  1460. package/build/server/chunks/entries/pages/setup/_page.svelte.js-CH8fkvVN.js.map +0 -1
  1461. package/build/server/chunks/entries/pages/team/_layout.server.ts.js-CVc9agc3.js +0 -28
  1462. package/build/server/chunks/entries/pages/team/_layout.server.ts.js-CVc9agc3.js.map +0 -1
  1463. package/build/server/chunks/entries/pages/team/_layout.svelte.js-BFipXO9z.js +0 -176
  1464. package/build/server/chunks/entries/pages/team/_layout.svelte.js-BFipXO9z.js.map +0 -1
  1465. package/build/server/chunks/entries/pages/team/_page.server.ts.js-BKsGPBu7.js +0 -35
  1466. package/build/server/chunks/entries/pages/team/_page.server.ts.js-BKsGPBu7.js.map +0 -1
  1467. package/build/server/chunks/entries/pages/team/_page.svelte.js-DSuCRstj.js +0 -112
  1468. package/build/server/chunks/entries/pages/team/_page.svelte.js-DSuCRstj.js.map +0 -1
  1469. package/build/server/chunks/entries/pages/team/activity/_page.svelte.js-B9o2_AK4.js +0 -124
  1470. package/build/server/chunks/entries/pages/team/activity/_page.svelte.js-B9o2_AK4.js.map +0 -1
  1471. package/build/server/chunks/entries/pages/team/compute/_page.server.ts.js-nJ5oUEdJ.js +0 -42
  1472. package/build/server/chunks/entries/pages/team/compute/_page.server.ts.js-nJ5oUEdJ.js.map +0 -1
  1473. package/build/server/chunks/entries/pages/team/compute/_page.svelte.js-HvTh1Vab.js +0 -616
  1474. package/build/server/chunks/entries/pages/team/compute/_page.svelte.js-HvTh1Vab.js.map +0 -1
  1475. package/build/server/chunks/entries/pages/team/members/_page.server.ts.js-DG45szX9.js +0 -62
  1476. package/build/server/chunks/entries/pages/team/members/_page.server.ts.js-DG45szX9.js.map +0 -1
  1477. package/build/server/chunks/entries/pages/team/members/_page.svelte.js-CociwG1M.js +0 -807
  1478. package/build/server/chunks/entries/pages/team/members/_page.svelte.js-CociwG1M.js.map +0 -1
  1479. package/build/server/chunks/entries/pages/team/projects/_page.server.ts.js-CkjHotCp.js +0 -60
  1480. package/build/server/chunks/entries/pages/team/projects/_page.server.ts.js-CkjHotCp.js.map +0 -1
  1481. package/build/server/chunks/entries/pages/team/projects/_page.svelte.js-DjN7l3UT.js +0 -424
  1482. package/build/server/chunks/entries/pages/team/projects/_page.svelte.js-DjN7l3UT.js.map +0 -1
  1483. package/build/server/chunks/entries/pages/team/reclaim/_page.server.ts.js-BcOmEaIB.js +0 -67
  1484. package/build/server/chunks/entries/pages/team/reclaim/_page.server.ts.js-BcOmEaIB.js.map +0 -1
  1485. package/build/server/chunks/entries/pages/team/reclaim/_page.svelte.js-DyW7kVAk.js +0 -266
  1486. package/build/server/chunks/entries/pages/team/reclaim/_page.svelte.js-DyW7kVAk.js.map +0 -1
  1487. package/build/server/chunks/entries/pages/team/settings/_page.server.ts.js-5fhbiXJW.js +0 -34
  1488. package/build/server/chunks/entries/pages/team/settings/_page.server.ts.js-5fhbiXJW.js.map +0 -1
  1489. package/build/server/chunks/entries/pages/team/settings/_page.svelte.js-Ea_XWCio.js +0 -308
  1490. package/build/server/chunks/entries/pages/team/settings/_page.svelte.js-Ea_XWCio.js.map +0 -1
  1491. package/build/server/chunks/entries/pages/team/shares/_page.server.ts.js-COEiWSTf.js +0 -29
  1492. package/build/server/chunks/entries/pages/team/shares/_page.server.ts.js-COEiWSTf.js.map +0 -1
  1493. package/build/server/chunks/entries/pages/team/shares/_page.svelte.js-DsJl3T7V.js +0 -314
  1494. package/build/server/chunks/entries/pages/team/shares/_page.svelte.js-DsJl3T7V.js.map +0 -1
  1495. package/build/server/chunks/entries/pages/team/tokens/_page.server.ts.js-Cv-jmBVK.js +0 -65
  1496. package/build/server/chunks/entries/pages/team/tokens/_page.server.ts.js-Cv-jmBVK.js.map +0 -1
  1497. package/build/server/chunks/entries/pages/team/tokens/_page.svelte.js-BXR5pHwv.js +0 -736
  1498. package/build/server/chunks/entries/pages/team/tokens/_page.svelte.js-BXR5pHwv.js.map +0 -1
  1499. package/build/server/chunks/handler-BVJg1IbX.js +0 -1206
  1500. package/build/server/chunks/handler-BVJg1IbX.js.map +0 -1
  1501. package/build/server/chunks/index.js-CrJG7a-_.js +0 -3743
  1502. package/build/server/chunks/index.js-CrJG7a-_.js.map +0 -1
  1503. package/build/server/chunks/manifest.js-9CYdbyKr.js +0 -719
  1504. package/build/server/chunks/manifest.js-9CYdbyKr.js.map +0 -1
  1505. package/build/server/chunks/nodes/0.js-3pmtvMZq.js +0 -54
  1506. package/build/server/chunks/nodes/0.js-3pmtvMZq.js.map +0 -1
  1507. package/build/server/chunks/nodes/1.js-Cj0DPEY2.js +0 -9
  1508. package/build/server/chunks/nodes/1.js-Cj0DPEY2.js.map +0 -1
  1509. package/build/server/chunks/nodes/10.js-DjJqD8cC.js +0 -34
  1510. package/build/server/chunks/nodes/10.js-DjJqD8cC.js.map +0 -1
  1511. package/build/server/chunks/nodes/11.js-CXJhGhH3.js +0 -38
  1512. package/build/server/chunks/nodes/11.js-CXJhGhH3.js.map +0 -1
  1513. package/build/server/chunks/nodes/12.js-BhEuW4Gs.js +0 -31
  1514. package/build/server/chunks/nodes/12.js-BhEuW4Gs.js.map +0 -1
  1515. package/build/server/chunks/nodes/13.js-BV8SZoKH.js +0 -31
  1516. package/build/server/chunks/nodes/13.js-BV8SZoKH.js.map +0 -1
  1517. package/build/server/chunks/nodes/14.js-DwKbOIK2.js +0 -31
  1518. package/build/server/chunks/nodes/14.js-DwKbOIK2.js.map +0 -1
  1519. package/build/server/chunks/nodes/15.js-EuOVmGiZ.js +0 -39
  1520. package/build/server/chunks/nodes/15.js-EuOVmGiZ.js.map +0 -1
  1521. package/build/server/chunks/nodes/16.js-DIp1sACa.js +0 -34
  1522. package/build/server/chunks/nodes/16.js-DIp1sACa.js.map +0 -1
  1523. package/build/server/chunks/nodes/17.js-8oTQG_-2.js +0 -9
  1524. package/build/server/chunks/nodes/17.js-8oTQG_-2.js.map +0 -1
  1525. package/build/server/chunks/nodes/18.js-BXLHGlSH.js +0 -40
  1526. package/build/server/chunks/nodes/18.js-BXLHGlSH.js.map +0 -1
  1527. package/build/server/chunks/nodes/19.js-BlFIJsgl.js +0 -25
  1528. package/build/server/chunks/nodes/19.js-BlFIJsgl.js.map +0 -1
  1529. package/build/server/chunks/nodes/2.js-KGh3WMtg.js +0 -34
  1530. package/build/server/chunks/nodes/2.js-KGh3WMtg.js.map +0 -1
  1531. package/build/server/chunks/nodes/20.js-DPBpuWGP.js +0 -24
  1532. package/build/server/chunks/nodes/20.js-DPBpuWGP.js.map +0 -1
  1533. package/build/server/chunks/nodes/21.js-rCVkOJ5W.js +0 -41
  1534. package/build/server/chunks/nodes/21.js-rCVkOJ5W.js.map +0 -1
  1535. package/build/server/chunks/nodes/22.js-XqaqffTZ.js +0 -40
  1536. package/build/server/chunks/nodes/22.js-XqaqffTZ.js.map +0 -1
  1537. package/build/server/chunks/nodes/23.js-BaYXe7NW.js +0 -37
  1538. package/build/server/chunks/nodes/23.js-BaYXe7NW.js.map +0 -1
  1539. package/build/server/chunks/nodes/24.js-Bz0uTBJa.js +0 -53
  1540. package/build/server/chunks/nodes/24.js-Bz0uTBJa.js.map +0 -1
  1541. package/build/server/chunks/nodes/25.js-BWX6nfsg.js +0 -33
  1542. package/build/server/chunks/nodes/25.js-BWX6nfsg.js.map +0 -1
  1543. package/build/server/chunks/nodes/26.js-Dup_ter0.js +0 -40
  1544. package/build/server/chunks/nodes/26.js-Dup_ter0.js.map +0 -1
  1545. package/build/server/chunks/nodes/27.js-BEUAmtL6.js +0 -31
  1546. package/build/server/chunks/nodes/27.js-BEUAmtL6.js.map +0 -1
  1547. package/build/server/chunks/nodes/28.js-D19p7Yo7.js +0 -9
  1548. package/build/server/chunks/nodes/28.js-D19p7Yo7.js.map +0 -1
  1549. package/build/server/chunks/nodes/29.js-hVNcerml.js +0 -31
  1550. package/build/server/chunks/nodes/29.js-hVNcerml.js.map +0 -1
  1551. package/build/server/chunks/nodes/3.js-CJRnGuBX.js +0 -9
  1552. package/build/server/chunks/nodes/3.js-CJRnGuBX.js.map +0 -1
  1553. package/build/server/chunks/nodes/30.js-CrpIx0yO.js +0 -31
  1554. package/build/server/chunks/nodes/30.js-CrpIx0yO.js.map +0 -1
  1555. package/build/server/chunks/nodes/31.js-CfatoH1-.js +0 -34
  1556. package/build/server/chunks/nodes/31.js-CfatoH1-.js.map +0 -1
  1557. package/build/server/chunks/nodes/32.js-u84xoe5E.js +0 -31
  1558. package/build/server/chunks/nodes/32.js-u84xoe5E.js.map +0 -1
  1559. package/build/server/chunks/nodes/33.js-DiC1927s.js +0 -31
  1560. package/build/server/chunks/nodes/33.js-DiC1927s.js.map +0 -1
  1561. package/build/server/chunks/nodes/34.js-cPddK-8A.js +0 -31
  1562. package/build/server/chunks/nodes/34.js-cPddK-8A.js.map +0 -1
  1563. package/build/server/chunks/nodes/35.js-RpNpvUFE.js +0 -54
  1564. package/build/server/chunks/nodes/35.js-RpNpvUFE.js.map +0 -1
  1565. package/build/server/chunks/nodes/5.js-WjwWIk7-.js +0 -15
  1566. package/build/server/chunks/nodes/5.js-WjwWIk7-.js.map +0 -1
  1567. package/build/server/chunks/nodes/6.js-6mJBLIGs.js +0 -31
  1568. package/build/server/chunks/nodes/6.js-6mJBLIGs.js.map +0 -1
  1569. package/build/server/chunks/nodes/7.js-BjHeLfau.js +0 -24
  1570. package/build/server/chunks/nodes/7.js-BjHeLfau.js.map +0 -1
  1571. package/build/server/chunks/nodes/8.js-eiZc7Xpf.js +0 -41
  1572. package/build/server/chunks/nodes/8.js-eiZc7Xpf.js.map +0 -1
  1573. package/build/server/chunks/nodes/9.js-DwjqUHv3.js +0 -31
  1574. package/build/server/chunks/nodes/9.js-DwjqUHv3.js.map +0 -1
  1575. /package/build/client/_app/immutable/nodes/{0.B7xg1wnA.js → 0.DIdNka1f.js} +0 -0
  1576. /package/build/client/_app/immutable/nodes/{0.B7xg1wnA.js.br → 0.DIdNka1f.js.br} +0 -0
  1577. /package/build/client/_app/immutable/nodes/{0.B7xg1wnA.js.gz → 0.DIdNka1f.js.gz} +0 -0
@@ -1,1590 +0,0 @@
1
- import { a as consentChoices, b as apiScopesFor } from './oauth.js-WZFWOYa1.js';
2
- import { h as hasPermission, p as parseApiScope, r as describeApiScope, t as toSourceDocumentId, u as toDefinitionListItem, C as CreateDefinitionInputSchema, G as GH_EXTENSIONS, U as UpdateMetadataInputSchema, v as GuidSchema, w as PublishVersionInputSchema, x as CreateShareLinkInputSchema, y as formatApiScope, z as OrgAssetKindSchema, M as MEMBER_ASSIGNABLE_PERMISSIONS, D as DEFAULT_ORG_PERMISSIONS, a as ALL_ORG_PERMISSIONS, s as scopeAllows, B as validateProjectFlags, S as SYSTEM_CONTEXT, o as outsideTokenOrg, l as slugify } from './src.js-BQFsdJf3.js';
3
- import { l as listUserMemberships } from './providers.server.js-DbrdtkJK.js';
4
- import { d as apiError, A as ApiErrorCode, l as requireCanViewProject, g as isApiError, m as requireCanCreateDefinition, n as requireEditableDefinition, o as requireActingOrg, q as requireManageOrgMembers, s as requireManageOrgCompute, u as splitFlatPermissions, v as assertCanGrantPlatformPermissions, w as canActorChangeOrgRole, x as canChangeOrgRole, c as canCreateDefinition, p as projectAccessInputFromRowsWith, y as requireCanCreateProject, a as canView, z as canSolve, B as canEdit, D as requireCanEditProjectSettings, E as withAdminBypass, F as requireCanManage, G as requireTargetIsOrgMember, H as checkOwnerRemoval, I as requireCanReclaim, J as canChangeVisibilityToPublic } from './access.js-DbWaEG7Y.js';
5
- import { f as fetchSchemaFromCompute, a as actorOf } from './schema-extraction.js-DxFeK69H.js';
6
- import { l as listEditableDefinitionsByDocument, a as listVisibleDefinitions, r as resolveAccessibleProjects, b as loadVisibleDefinition, m as mayUploadToDefinition, g as getVisibleDefinition, d as loadVisibleVersion } from './visibility.js-DHIz9MAP.js';
7
- import { randomUUID } from 'node:crypto';
8
- import { D as DEFAULT_SHARE_LINK_MAX_SOLVES } from './types.js-C7gj_Qvn.js';
9
- import { c as resolveServerForOrg, a as isOrgServer, i as isPlatformServer, v as validateIncomingServers, d as storedKeysById, e as resolveApiKey, f as serversVisibleTo } from './compute.js-srroNvr-.js';
10
- import { r as requireCaller, s as scopeRefusalsToday, p as parseDefinitionListOptions, f as readForm, g as requireUpload, h as formText, t as throwZodError, i as parseParam, j as parseBody, k as assertScope, l as parseListOptions, m as ShareLinkResponseSchema, n as CreatedShareLinkResponseSchema, o as requireParams, q as OrgComputeResponseSchema, O as OrgComputePatchBodySchema, I as InviteResponseSchema, c as CreateInviteBodySchema, u as CreatedInviteResponseSchema, b as UpdateOrgMemberBodySchema, v as ApiTokenResponseSchema, d as CreateApiTokenBodySchema, w as CreatedApiTokenResponseSchema, C as CreateProjectBodySchema, U as UpdateProjectBodySchema, A as AddProjectMemberBodySchema, a as UpdateProjectMemberBodySchema } from './api.js-CWQeuHWw.js';
11
- import { e as evictChangedServers } from './evict-changed-servers.js-Dw8HdMyj.js';
12
- import { c as canHoldApiTokens } from './tokens.js-C1iFCpCz.js';
13
- import { c as createProjectWithUniqueSlug } from './projects.js-D6fN9oey.js';
14
- import { b as buildRequestContext } from './request-context.js-BlxaBgml.js';
15
-
16
- // ../server/src/api/responses.ts
17
- /** A paginated collection. The one envelope every list endpoint returns. */
18
- function collection(page) {
19
- return { body: {
20
- items: page.items,
21
- nextCursor: page.nextCursor
22
- } };
23
- }
24
- /** A created resource. */
25
- function created(body) {
26
- return {
27
- status: 201,
28
- body
29
- };
30
- }
31
- /** A successful mutation with nothing to say. */
32
- function noContent() {
33
- return { status: 204 };
34
- }
35
- // ../server/src/api/shaped.ts
36
- /** Serialize a payload through an explicit response schema. */
37
- function shaped(schema, payload, status = 200) {
38
- return {
39
- status,
40
- body: schema.parse(payload)
41
- };
42
- }
43
- /** `shaped`, mapped over a page of records. */
44
- function shapedCollection(schema, page) {
45
- return { body: {
46
- items: page.items.map((item) => schema.parse(item)),
47
- nextCursor: page.nextCursor
48
- } };
49
- }
50
- // ../notifications/src/html.ts
51
- /**
52
- * Escape text for interpolation into an HTML attribute or text node.
53
- *
54
- * One copy on purpose: per-template copies are how one of them ends up missing
55
- * a case. Every value a template interpolates goes through this, including
56
- * URLs — an `acceptUrl` carries a token, and a token can contain characters
57
- * that would otherwise close the `href` early.
58
- */
59
- function escapeHtml(s) {
60
- return s.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;");
61
- }
62
- // ../notifications/src/layout.ts
63
- /**
64
- * The frame every Selva mail shares: card chrome, type stack, colours.
65
- * Templates supply a body; this supplies the look, so mail written by
66
- * different people at different times still reads as coming from one product.
67
- *
68
- * Deliberately plain — no images, no tracking pixel, no external stylesheet.
69
- * Inline styles with a table-free layout survive the common clients, and mail
70
- * clients that strip the styling still get readable, ordered content.
71
- */
72
- function renderLayout({ heading, body, footer }) {
73
- return `<!doctype html>
74
- <html>
75
- <body style="margin:0;padding:24px;background:#f6f7f9;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;color:#1a1a1a;">
76
- <div style="max-width:480px;margin:0 auto;background:#ffffff;border:1px solid #e4e6eb;border-radius:12px;padding:32px;">
77
- <h1 style="margin:0 0 16px;font-size:20px;font-weight:600;">${escapeHtml(heading)}</h1>
78
- ${body}${footer ? `
79
- <hr style="border:none;border-top:1px solid #e4e6eb;margin:24px 0;" />
80
- <p style="margin:0;font-size:12px;line-height:1.5;color:#8a8a8a;">
81
- ${footer}
82
- </p>` : ""}
83
- </div>
84
- </body>
85
- </html>`;
86
- }
87
- /** The primary action button. One definition so every mail's call to action matches. */
88
- function renderButton(href, label) {
89
- return `<a href="${escapeHtml(href)}" style="display:inline-block;padding:11px 20px;background:#1a1a1a;color:#ffffff;text-decoration:none;border-radius:8px;font-size:15px;font-weight:500;">${escapeHtml(label)}</a>`;
90
- }
91
- /**
92
- * Fallback for clients that do not make the button clickable. Every mail whose
93
- * point is a link needs this: a button that does not render leaves the reader
94
- * with no way to continue.
95
- */
96
- function renderUrlFallback(href) {
97
- return `<p style="margin:24px 0 0;font-size:13px;line-height:1.5;color:#6b6b6b;">
98
- Or paste this into your browser:<br />
99
- <span style="word-break:break-all;color:#4a4a4a;">${escapeHtml(href)}</span>
100
- </p>`;
101
- }
102
- // ../notifications/src/templates/invite.ts
103
- function formatExpiry(iso) {
104
- const d = new Date(iso);
105
- return Number.isNaN(d.getTime()) ? "soon" : d.toLocaleDateString("en-US", {
106
- year: "numeric",
107
- month: "long",
108
- day: "numeric"
109
- });
110
- }
111
- /**
112
- * "An admin invited you to an org" — the mail carrying an invite's accept link.
113
- *
114
- * The text part must always carry the URL: a mail that degrades to plain text
115
- * is still the only way the invitee can accept.
116
- */
117
- function renderInviteEmail(input) {
118
- const { to, acceptUrl, orgName, invitedBy } = input;
119
- const expiry = formatExpiry(input.expiresAt);
120
- const inviter = invitedBy ? `${invitedBy} invited you` : "You have been invited";
121
- return {
122
- kind: "org.invite",
123
- to,
124
- subject: `${inviter} to join ${orgName} on Selva`,
125
- text: [
126
- `${inviter} to join ${orgName} on Selva.`,
127
- "",
128
- "Open this link to accept and set up your account:",
129
- acceptUrl,
130
- "",
131
- `The link expires on ${expiry} and can only be used once.`,
132
- "",
133
- "If you weren't expecting this invitation, you can ignore this email."
134
- ].join("\n"),
135
- html: renderLayout({
136
- heading: `Join ${orgName} on Selva`,
137
- body: ` <p style="margin:0 0 24px;font-size:15px;line-height:1.5;color:#4a4a4a;">
138
- ${escapeHtml(inviter)} to join <strong>${escapeHtml(orgName)}</strong>. Open the link below to accept and set up your account.
139
- </p>
140
- ${renderButton(acceptUrl, "Accept invitation")}
141
- ${renderUrlFallback(acceptUrl)}`,
142
- footer: `This link expires on ${escapeHtml(expiry)} and can only be used once.
143
- If you weren't expecting this invitation, you can ignore this email.`
144
- })
145
- };
146
- }
147
- // ../notifications/src/templates/api-token.ts
148
- function formatDate(iso) {
149
- const d = new Date(iso);
150
- return Number.isNaN(d.getTime()) ? iso : d.toLocaleDateString("en-US", {
151
- year: "numeric",
152
- month: "long",
153
- day: "numeric"
154
- });
155
- }
156
- /**
157
- * "A new API token was created on your account". The point is the case where
158
- * the owner didn't create it, so the revoke link leads.
159
- */
160
- function renderApiTokenCreatedEmail(input) {
161
- const { to, tokenName, orgName, scopes, manageUrl } = input;
162
- const expiry = formatDate(input.expiresAt);
163
- return {
164
- kind: "api_token.created",
165
- to,
166
- subject: `New API token "${tokenName}" in ${orgName}`,
167
- text: [
168
- `A new API token named "${tokenName}" was created on your Selva account in ${orgName}.`,
169
- "",
170
- "It can:",
171
- ...scopes.map((s) => `- ${s}`),
172
- "",
173
- `It expires on ${expiry}.`,
174
- "",
175
- "If you didn't create it, revoke it now:",
176
- manageUrl
177
- ].join("\n"),
178
- html: renderLayout({
179
- heading: "New API token",
180
- body: ` <p style="margin:0 0 16px;font-size:15px;line-height:1.5;color:#4a4a4a;">
181
- A new API token named <strong>${escapeHtml(tokenName)}</strong> was created on your account in <strong>${escapeHtml(orgName)}</strong>. It can:
182
- </p>
183
- <ul style="margin:0 0 24px;padding-left:20px;font-size:15px;line-height:1.5;color:#4a4a4a;">
184
- ${scopes.map((s) => `<li>${escapeHtml(s)}</li>`).join("")}
185
- </ul>
186
- ${renderButton(manageUrl, "Review your tokens")}
187
- ${renderUrlFallback(manageUrl)}`,
188
- footer: `It expires on ${escapeHtml(expiry)}. If you didn't create it, revoke it from the page above.`
189
- })
190
- };
191
- }
192
- // ../server/src/notifications/deliver-invite.ts
193
- /**
194
- * Mail an invite's accept link, best-effort.
195
- *
196
- * Shared by the mint and resend routes so they cannot disagree about what the
197
- * invitee receives. Swallows every failure: the invite row is already
198
- * committed and the caller still holds `acceptUrl` to share by hand, so a dead
199
- * SMTP host must not report a valid invite as a failure.
200
- */
201
- async function deliverInvite(input) {
202
- const { ctx, log, invite, acceptUrl, actor, orgs, notifications, fallbackOrgName } = input;
203
- try {
204
- const org = await orgs.getOrg(ctx, invite.orgId);
205
- const { status } = await notifications.send(renderInviteEmail({
206
- to: invite.email,
207
- acceptUrl,
208
- orgName: org?.name ?? fallbackOrgName,
209
- invitedBy: actor.profile?.displayName || actor.user?.email,
210
- expiresAt: invite.expiresAt
211
- }), log);
212
- return status;
213
- } catch (err) {
214
- log.warn("Invite mail could not be prepared", {
215
- component: "Invites",
216
- inviteId: invite.id,
217
- reason: err instanceof Error ? err.message : String(err)
218
- });
219
- return "failed";
220
- }
221
- }
222
- // ../server/src/handlers/services.ts
223
- function definitionService(deps) {
224
- const service = deps.services.definitions;
225
- if (!service) throw new Error("SelvaDeps.services.definitions is not wired — mount requires it.");
226
- return service;
227
- }
228
- function orgAssetService(deps) {
229
- const service = deps.services.orgAssets;
230
- if (!service) throw new Error("SelvaDeps.services.orgAssets is not wired — mount requires it.");
231
- return service;
232
- }
233
- /**
234
- * A token codec, or a named failure.
235
- *
236
- * Minting through an absent codec is the one failure mode worth being loud
237
- * about: a handler that quietly skipped hashing would persist a row whose token
238
- * can never be verified, and nothing downstream would report it.
239
- */
240
- function tokenCodec(deps, family) {
241
- const codec = deps.tokens[family];
242
- if (!codec) throw new Error(`SelvaDeps.tokens.${family} is not wired — mount requires it.`);
243
- return codec;
244
- }
245
- // ../server/src/handlers/me.ts
246
- /**
247
- * Whoami. The first call a non-browser client makes, and the only way a token
248
- * holder can see which org their credential resolved into — `actingOrgId` is
249
- * derived per request from the caller's membership, not frozen at mint time.
250
- */
251
- var getMe = async (req) => {
252
- const { ctx, user } = requireCaller(req);
253
- return { body: {
254
- userId: user.id,
255
- email: user.email,
256
- displayName: req.profile?.displayName,
257
- actingOrgId: ctx.actingOrgId,
258
- platformPermissions: ctx.platformPermissions,
259
- orgPermissions: ctx.orgPermissions,
260
- starredDefinitions: req.profile?.starredDefinitions ?? [],
261
- ...ctx.apiScope && { apiToken: {
262
- id: ctx.apiScope.tokenId,
263
- scopes: ctx.apiScope.scopes.map(formatApiScope),
264
- expiresAt: ctx.apiScope.expiresAt
265
- } }
266
- } };
267
- };
268
- // ../server/src/handlers/me.starred.ts
269
- /**
270
- * Starring a definition for the calling user. Both directions are idempotent.
271
- *
272
- * No visibility check: a star is a row on the caller's own profile, keyed by
273
- * guid, and reveals nothing about whether that guid exists. The read paths that
274
- * expand stars into definitions filter by visibility there.
275
- */
276
- var starDefinition = async (req) => {
277
- const { ctx, user } = requireCaller(req);
278
- const { guid } = requireParams(req.params, "guid");
279
- await req.deps.userProfile.starDefinition(ctx, user.id, guid);
280
- return noContent();
281
- };
282
- var unstarDefinition = async (req) => {
283
- const { ctx, user } = requireCaller(req);
284
- const { guid } = requireParams(req.params, "guid");
285
- await req.deps.userProfile.unstarDefinition(ctx, user.id, guid);
286
- return noContent();
287
- };
288
- // ../server/src/handlers/orgs.ts
289
- /**
290
- * The acting org's record and roster.
291
- *
292
- * `requireActingOrg` is the tenancy gate on both: the URL `orgId` must equal
293
- * `ctx.actingOrgId`, so the URL alone never decides which tenant is read.
294
- */
295
- /** The acting org's record — name, slug, and branding asset URLs. */
296
- var getOrg = async (req) => {
297
- const { ctx, orgId } = requireActingOrg(req, req.params.orgId);
298
- const org = await req.deps.orgs.getOrg(ctx, orgId);
299
- if (!org) apiError(404, ApiErrorCode.NOT_FOUND, "Organization not found");
300
- return { body: org };
301
- };
302
- /**
303
- * List the org's members. Any member of the acting org may read this — the
304
- * roster is what the team page renders, and `requireActingOrg` already confines
305
- * the read to the caller's own tenant.
306
- */
307
- var listOrgMembers = async (req) => {
308
- const { ctx, orgId } = requireActingOrg(req, req.params.orgId);
309
- return collection(await req.deps.orgs.listOrgMembers(ctx, orgId, parseListOptions(req.url)));
310
- };
311
- // ../server/src/handlers/apiTokens.ts
312
- /**
313
- * API tokens: mint, list, revoke.
314
- *
315
- * **Session-only.** A key can't manage keys, so a leaked one can't mint more or
316
- * revoke the owner's others to cover its tracks. The one exception is a key
317
- * revoking itself, which only ever takes access away.
318
- *
319
- * **The raw key exists only in the mint response.** The store holds its HMAC,
320
- * and every response goes through a schema that has no `tokenHash`.
321
- */
322
- var DAY_MS = 864e5;
323
- function requireSessionInOrg(req) {
324
- if (req.ctx?.apiScope) apiError(403, ApiErrorCode.FORBIDDEN, "API tokens can’t manage API tokens. Sign in to the web app to do this.");
325
- return requireActingOrg(req, req.params.orgId);
326
- }
327
- /**
328
- * May `ctx` hold a key with `scopes`, by the host's policy or the default rule?
329
- * The one call every mint path makes, so a host's token page and its consent
330
- * screen can't disagree with the mint.
331
- */
332
- function mayHoldApiTokens(deps, ctx, scopes) {
333
- return canHoldApiTokens(ctx, scopes, {
334
- policy: deps.tokens.mayHoldApiTokens,
335
- deps
336
- });
337
- }
338
- function unavailable() {
339
- apiError(503, ApiErrorCode.API_TOKENS_UNAVAILABLE, "API tokens are not available on this server.");
340
- }
341
- function storeOf(req) {
342
- return req.deps.data.apiTokens ?? unavailable();
343
- }
344
- function codecOf(req) {
345
- return req.deps.tokens.apiTokens ?? unavailable();
346
- }
347
- function toResponse(token) {
348
- return {
349
- ...token,
350
- refusedToday: scopeRefusalsToday(token.id)
351
- };
352
- }
353
- /** Who sees every owner's keys in an org and may revoke any of them. */
354
- var canManageApiTokenRoster = (ctx) => hasPermission(ctx, "manage_org_members");
355
- /**
356
- * Keys in `orgId`, newest first, including revoked and expired ones: the
357
- * caller's own, or with `roster` everyone's. The list endpoint and a host's
358
- * token page both read through here, so they can't disagree on who sees what.
359
- */
360
- async function listOrgApiTokens(store, ctx, orgId, { roster = false, ...opts } = {}) {
361
- if (roster && !canManageApiTokenRoster(ctx)) apiError(403, ApiErrorCode.FORBIDDEN, "Only org admins can see everyone’s API tokens.");
362
- const page = await store.listByOrg(ctx, orgId, {
363
- ...opts,
364
- userId: roster ? void 0 : ctx.userId
365
- });
366
- return {
367
- ...page,
368
- items: page.items.map(toResponse)
369
- };
370
- }
371
- /**
372
- * Refuse scopes naming something outside this org or out of the creator's
373
- * sight. Not the security boundary: a key never exceeds its owner's live rights
374
- * anyway. This stops someone minting a key that can only ever be refused.
375
- */
376
- async function assertScopesReachable(req, orgId, scopes) {
377
- const refuse = (message) => apiError(400, ApiErrorCode.VALIDATION_FAILED, message, { scopes: message });
378
- for (const value of scopes) {
379
- const { resource } = parseApiScope(value) ?? refuse(`Unknown scope: ${value}`);
380
- if (resource.kind === "all") continue;
381
- if (resource.kind === "org") {
382
- if (resource.id !== orgId) refuse("An org scope must name this org.");
383
- continue;
384
- }
385
- let projectId = resource.id;
386
- if (resource.kind === "definition") projectId = (await req.deps.definitionMeta.get(req.ctx, resource.id) ?? refuse(`No definition ${resource.id}.`)).projectId;
387
- const project = await req.deps.projects.getProject(req.ctx, projectId);
388
- if (!project || project.orgId !== orgId) refuse(`No ${resource.kind} ${resource.id} in this org.`);
389
- try {
390
- await requireCanViewProject(req, projectId);
391
- } catch (err) {
392
- if (isApiError(err)) refuse(`You can’t access ${resource.kind} ${resource.id}.`);
393
- throw err;
394
- }
395
- }
396
- }
397
- /**
398
- * Tell the owner a key now exists on their account, best-effort. The case that
399
- * matters is the one where they didn't make it.
400
- */
401
- async function mailTokenCreated(req, token) {
402
- const notifications = req.deps.notifications;
403
- const to = req.user?.email;
404
- if (!notifications || !to) return;
405
- try {
406
- const org = await req.deps.orgs.getOrg(req.ctx, token.orgId);
407
- await notifications.send(renderApiTokenCreatedEmail({
408
- to,
409
- tokenName: token.name,
410
- orgName: org?.name ?? req.deps.instanceName,
411
- scopes: token.scopes.map(describeApiScope),
412
- expiresAt: token.expiresAt,
413
- manageUrl: `${req.url.origin}${req.deps.apiTokenSettingsPath}`
414
- }), req.log);
415
- } catch (err) {
416
- req.log.warn("API token mail could not be sent", {
417
- component: "ApiTokens",
418
- tokenId: token.id,
419
- reason: err instanceof Error ? err.message : String(err)
420
- });
421
- }
422
- }
423
- /** The caller's own keys in this org. `?all=true` returns everyone's and needs `manage_org_members`. */
424
- var listApiTokens = async (req) => {
425
- const { ctx, orgId } = requireSessionInOrg(req);
426
- const page = await listOrgApiTokens(storeOf(req), ctx, orgId, {
427
- ...parseListOptions(req.url),
428
- roster: req.url.searchParams.get("all") === "true"
429
- });
430
- return shapedCollection(ApiTokenResponseSchema, page);
431
- };
432
- /**
433
- * Mint a token acting as the caller, in the caller's acting org. Every mint
434
- * goes through here, the token endpoint and an OAuth consent alike, so the
435
- * holder rule, the scope checks, the audit event and the owner's email always
436
- * apply. A consent screen passes a `req` whose `ctx` acts in the org the user
437
- * picked.
438
- */
439
- async function mintApiToken(req, input) {
440
- const { ctx, user } = requireCaller(req);
441
- const orgId = ctx.actingOrgId;
442
- if (ctx.apiScope || !orgId) apiError(403, ApiErrorCode.FORBIDDEN, "API tokens can only be created from a signed-in session.");
443
- if (!await mayHoldApiTokens(req.deps, ctx, input.scopes)) apiError(403, ApiErrorCode.FORBIDDEN, "You can’t create API tokens with this access in this org.");
444
- const store = storeOf(req);
445
- const codec = codecOf(req);
446
- const delegated = req.deps.auth.delegatedSession;
447
- if (delegated && !(await delegated.status()).ok) unavailable();
448
- await assertScopesReachable(req, orgId, input.scopes);
449
- const raw = codec.mintRawToken();
450
- const now = /* @__PURE__ */ new Date();
451
- const token = {
452
- id: randomUUID(),
453
- userId: user.id,
454
- createdBy: user.id,
455
- orgId,
456
- name: input.name,
457
- tokenHash: codec.hashToken(raw),
458
- scopes: [...new Set(input.scopes)],
459
- createdAt: now.toISOString(),
460
- expiresAt: new Date(now.getTime() + input.expiresInDays * DAY_MS).toISOString(),
461
- lastUsedAt: null,
462
- revokedAt: null
463
- };
464
- await store.create(ctx, token);
465
- await mailTokenCreated(req, token);
466
- const { tokenHash: _hash, ...summary } = token;
467
- return {
468
- token: toResponse(summary),
469
- secret: raw
470
- };
471
- }
472
- /** Mint a token acting as the caller. The raw key is in this response and nowhere else. */
473
- var createApiToken = async (req) => {
474
- requireSessionInOrg(req);
475
- const input = await parseBody(req.request, CreateApiTokenBodySchema);
476
- return {
477
- status: 201,
478
- headers: { "Cache-Control": "no-store" },
479
- body: CreatedApiTokenResponseSchema.parse(await mintApiToken(req, input))
480
- };
481
- };
482
- /**
483
- * Revoke a token: the owner's own, or anyone's in the org for
484
- * `manage_org_members`. Someone else's token reads as missing, not forbidden.
485
- */
486
- var revokeApiToken = async (req) => {
487
- const { ctx, orgId } = requireSessionInOrg(req);
488
- const { tokenId } = requireParams(req.params, "tokenId");
489
- const store = storeOf(req);
490
- const token = await store.get(ctx, tokenId);
491
- const own = token?.userId === ctx.userId;
492
- if (!token || token.orgId !== orgId || !own && !canManageApiTokenRoster(ctx)) apiError(404, ApiErrorCode.NOT_FOUND, "API token not found");
493
- await store.revoke(ctx, tokenId, own ? "owner" : "admin");
494
- return noContent();
495
- };
496
- /**
497
- * Revoke the key that sent this request, and nothing else. Any key may call it,
498
- * whatever its scopes, so a client signing out never needs more than it has.
499
- * A browser session gets 400: it has no key to revoke.
500
- */
501
- var revokeOwnApiToken = async (req) => {
502
- const { ctx } = requireCaller(req);
503
- if (!ctx.apiScope) apiError(400, ApiErrorCode.VALIDATION_FAILED, "Only an API token can revoke itself. Revoke tokens from the web app instead.");
504
- await storeOf(req).revoke(ctx, ctx.apiScope.tokenId, "owner");
505
- return noContent();
506
- };
507
- /**
508
- * Revoke every live key `userId` holds, in one org or (no `orgId`) all of
509
- * them. Call it when someone leaves an org or is disabled: the resolver already
510
- * refuses those keys, but without this they would work again the moment the
511
- * person is re-added or re-enabled.
512
- *
513
- * Best effort. The removal or disable has already committed, so a failure is
514
- * logged rather than thrown.
515
- */
516
- async function revokeUserApiTokens(store, ctx, userId, opts, log) {
517
- if (!store) return;
518
- try {
519
- await store.revokeAllForUser(ctx, userId, opts);
520
- } catch (err) {
521
- log.error("Failed to revoke API tokens", {
522
- component: "ApiTokens",
523
- userId,
524
- orgId: opts.orgId,
525
- reason: opts.reason,
526
- err: err instanceof Error ? err.message : String(err)
527
- });
528
- }
529
- }
530
- // ../server/src/handlers/orgMembers.ts
531
- /**
532
- * Org member role, permissions, and removal.
533
- *
534
- * Two gates run on every request: `requireManageOrgMembers` (owner+admin) and
535
- * `requireActingOrg` (the URL `orgId` must equal `ctx.actingOrgId`, so
536
- * cross-org member mutation is blocked even for an actor with permissions in
537
- * another org).
538
- *
539
- * The sole-owner invariant applies to demotion and removal alike — an org with
540
- * no owner is unadministrable, and removing an owner ends their role exactly as
541
- * demoting them does.
542
- */
543
- var ROSTER_PAGE_LIMIT = 200;
544
- var MAX_ROSTER_PAGES = 100;
545
- /**
546
- * Whether anyone other than `exceptUserId` still owns the org.
547
- *
548
- * Both branches below need this and both used to scan the roster themselves —
549
- * the sole-owner invariant is one rule, so it reads from one place.
550
- *
551
- * Pages rather than reading one 200-row window: a second owner sitting past the
552
- * first page read as "no other owner", so the invariant refused a demotion or
553
- * removal that was in fact safe. That failed closed, but it made the org
554
- * unadministrable exactly when it had grown enough to need administering.
555
- * Returns on the first owner found, so the common case is still one round-trip.
556
- */
557
- async function hasAnotherOwner(req, ctx, orgId, exceptUserId) {
558
- let cursor;
559
- for (let page = 0; page < MAX_ROSTER_PAGES; page++) {
560
- const result = await req.deps.orgs.listOrgMembers(ctx, orgId, {
561
- limit: ROSTER_PAGE_LIMIT,
562
- cursor
563
- });
564
- if (result.items.some((m) => m.role === "owner" && m.userId !== exceptUserId && !m.deletedAt)) return true;
565
- cursor = result.nextCursor;
566
- if (!cursor) return false;
567
- }
568
- req.log.warn("hasAnotherOwner hit the page cap — treating as sole owner", {
569
- orgId,
570
- pages: MAX_ROSTER_PAGES
571
- });
572
- return false;
573
- }
574
- /**
575
- * Projects in `orgId` where `userId` is the only live owner — the ones that
576
- * will have no owner once `removeOrgMember` cascades their membership rows.
577
- *
578
- * **Report, do not block.** Blocking puts an unbounded chore in front of
579
- * offboarding — the cost scales with how many projects the departing person
580
- * owned, which is backwards, because the most prolific people are the ones
581
- * whose departure most needs to be clean. An offboarding that fails halfway is
582
- * worse than an ownerless project: the person stays in the org while someone
583
- * works through the backlog. Reclaim already exists to adopt an ownerless
584
- * project, so the recovery path is built; what was missing was any signal that
585
- * recovery was needed. Hence the event.
586
- *
587
- * MUST be called before the removal — afterwards the rows it reads are gone.
588
- */
589
- async function findProjectsLosingSoleOwner(req, ctx, orgId, userId) {
590
- const projects = req.deps.projects;
591
- const orgProjects = await projects.listProjects(ctx, orgId, { limit: ROSTER_PAGE_LIMIT });
592
- return (await Promise.all(orgProjects.items.map(async (project) => {
593
- const owners = (await projects.listProjectMembers(ctx, project.id, { limit: ROSTER_PAGE_LIMIT })).items.filter((m) => m.role === "owner" && !m.deletedAt);
594
- return owners.length === 1 && owners[0].userId === userId ? project : null;
595
- }))).filter((p) => p !== null);
596
- }
597
- /**
598
- * Body accepts either or both:
599
- * - `{ role: OrgRole }` — change the member's role. Owner-only.
600
- * - `{ permissions: OrgPermission[] }` — replace the member's grantable
601
- * permissions. Owner/admin via `manage_org_members`. For `member`-role
602
- * targets, only `MEMBER_ASSIGNABLE_PERMISSIONS` are accepted; promoting a
603
- * member's permissions does NOT change their role.
604
- */
605
- var updateOrgMember = async (req) => {
606
- const { userId } = requireParams(req.params, "orgId", "userId");
607
- requireManageOrgMembers(req);
608
- const { ctx, orgId } = requireActingOrg(req, req.params.orgId);
609
- const patch = await parseBody(req.request, UpdateOrgMemberBodySchema);
610
- const orgs = req.deps.orgs;
611
- const [actorMember, target] = await Promise.all([orgs.getOrgMember(ctx, orgId, ctx.userId), orgs.getOrgMember(ctx, orgId, userId)]);
612
- if (!target) apiError(404, ApiErrorCode.NOT_FOUND, "Member not found in this organization.");
613
- if (!actorMember) apiError(403, ApiErrorCode.FORBIDDEN, "You are not a member of this organization.");
614
- if (patch.role !== void 0 && patch.role !== target.role) {
615
- if (!canChangeOrgRole({
616
- actorMember,
617
- role: patch.role
618
- }) || !canChangeOrgRole({
619
- actorMember,
620
- role: target.role
621
- })) apiError(403, ApiErrorCode.FORBIDDEN, "Only the org owner can change roles.");
622
- if (target.role === "owner" && patch.role !== "owner" && !await hasAnotherOwner(req, ctx, orgId, target.userId)) apiError(409, ApiErrorCode.CONFLICT, "Cannot demote the sole owner of this organization. Promote another member to owner first.");
623
- await orgs.updateOrgMemberRole(ctx, orgId, userId, patch.role);
624
- }
625
- if (patch.permissions !== void 0) {
626
- const effectiveRole = patch.role ?? target.role;
627
- const valid = effectiveRole === "member" ? new Set(MEMBER_ASSIGNABLE_PERMISSIONS) : new Set(ALL_ORG_PERMISSIONS);
628
- const invalid = patch.permissions.filter((p) => !valid.has(p));
629
- if (invalid.length > 0) apiError(400, ApiErrorCode.VALIDATION_FAILED, `Permissions [${invalid.join(", ")}] cannot be assigned to a ${effectiveRole}.`);
630
- await orgs.updateOrgMemberPermissions(ctx, orgId, userId, patch.permissions);
631
- }
632
- return noContent();
633
- };
634
- /**
635
- * Remove a member from the org. Owner/admin via `manage_org_members`, same
636
- * tenancy check as PATCH, and the same sole-owner invariant — removing the last
637
- * owner would leave the org unadministrable.
638
- */
639
- var removeOrgMember = async (req) => {
640
- const { userId } = requireParams(req.params, "orgId", "userId");
641
- requireManageOrgMembers(req);
642
- const { ctx, orgId } = requireActingOrg(req, req.params.orgId);
643
- const orgs = req.deps.orgs;
644
- const [actorMember, target] = await Promise.all([orgs.getOrgMember(ctx, orgId, ctx.userId), orgs.getOrgMember(ctx, orgId, userId)]);
645
- if (!target) apiError(404, ApiErrorCode.NOT_FOUND, "Member not found in this organization.");
646
- if (!canChangeOrgRole({
647
- actorMember,
648
- role: target.role
649
- })) apiError(403, ApiErrorCode.FORBIDDEN, "Only the org owner can remove another owner.");
650
- if (target.role === "owner" && !await hasAnotherOwner(req, ctx, orgId, target.userId)) apiError(409, ApiErrorCode.CONFLICT, "Cannot remove the sole owner of this organization. Promote another member to owner first.");
651
- const orphaned = await findProjectsLosingSoleOwner(req, ctx, orgId, userId);
652
- await orgs.removeOrgMember(ctx, orgId, userId);
653
- if (orphaned.length > 0) {
654
- await req.deps.events.emit({
655
- type: "org_member.removed_orphaning_projects",
656
- orgId,
657
- userId,
658
- projectIds: orphaned.map((p) => p.id),
659
- ...actorOf(ctx)
660
- });
661
- req.log.warn("Org member removal left projects without an owner", {
662
- orgId,
663
- userId,
664
- actorId: ctx.userId,
665
- projectCount: orphaned.length
666
- });
667
- }
668
- const email = (await req.deps.auth.getUser(userId))?.email;
669
- if (email) try {
670
- await req.deps.invites.revokePendingByEmail(ctx, orgId, email);
671
- } catch (err) {
672
- req.log.error("Removed org member but failed to revoke their pending invites", {
673
- orgId,
674
- userId,
675
- error: err instanceof Error ? err.message : String(err)
676
- });
677
- }
678
- await revokeUserApiTokens(req.deps.data.apiTokens, ctx, userId, {
679
- orgId,
680
- reason: "member_removed"
681
- }, req.log);
682
- return noContent();
683
- };
684
- // ../server/src/handlers/reclaim.ts
685
- /**
686
- * Org owner/admin escape hatch for a project they cannot otherwise reach.
687
- *
688
- * Adds the actor as a co-owner and does NOT demote the existing owner.
689
- * Idempotent: reclaiming twice is a no-op, because `addProjectMember`
690
- * reactivates a soft-deleted row in place.
691
- */
692
- var reclaimProject = async (req) => {
693
- const { id } = requireParams(req.params, "id");
694
- const { user, ctx, project } = await requireCanReclaim(req, id);
695
- const now = (/* @__PURE__ */ new Date()).toISOString();
696
- const member = {
697
- projectId: id,
698
- userId: user.id,
699
- role: "owner",
700
- joinedAt: now,
701
- updatedAt: now,
702
- updatedBy: ctx.userId || user.id,
703
- deletedAt: null
704
- };
705
- await req.deps.projects.addProjectMember(ctx, member);
706
- await req.deps.events.emit({
707
- type: "project.reclaimed",
708
- projectId: id,
709
- orgId: project.orgId,
710
- ...actorOf(ctx),
711
- priorVisibility: project.visibility
712
- });
713
- return created({ member });
714
- };
715
- // ../server/src/handlers/orgAssets.ts
716
- /**
717
- * Org branding assets, generic over kind (`logo`, `favicon`, …). Gated on
718
- * `manage_org_members` — org branding is an org-admin action.
719
- *
720
- * Raster images and SVG are both accepted. Every input is rasterized to WebP by
721
- * the shared transcoder inside the storage provider, so SVG carries no XSS
722
- * surface: no vector blob is ever stored or served. The allowlist below is the
723
- * HTTP gate; the rasterization is the security control.
724
- */
725
- var ALLOWED_CONTENT_TYPES = /* @__PURE__ */ new Set([
726
- "image/png",
727
- "image/jpeg",
728
- "image/webp",
729
- "image/gif",
730
- "image/svg+xml"
731
- ]);
732
- function parseKind(params) {
733
- const kind = OrgAssetKindSchema.safeParse(params.kind);
734
- if (!kind.success) apiError(404, ApiErrorCode.NOT_FOUND, `Unknown asset kind '${params.kind}'`);
735
- return kind.data;
736
- }
737
- var uploadOrgAsset = async (req) => {
738
- requireManageOrgMembers(req);
739
- const kind = parseKind(req.params);
740
- const { ctx, orgId } = requireActingOrg(req, req.params.orgId);
741
- if (!await req.deps.orgs.getOrg(ctx, orgId)) apiError(404, ApiErrorCode.NOT_FOUND, "Organization not found");
742
- const { file } = requireUpload(await readForm(req.request), "image", {
743
- maxBytes: req.deps.uploadLimits.maxImageFileSize,
744
- contentTypes: {
745
- allowed: ALLOWED_CONTENT_TYPES,
746
- message: "Unsupported image type. Allowed: PNG, JPG, WebP, GIF, SVG"
747
- },
748
- label: "Image"
749
- });
750
- const bytes = new Uint8Array(await file.arrayBuffer());
751
- return { body: {
752
- kind,
753
- url: await orgAssetService(req.deps).saveAsset(ctx, orgId, kind, bytes, file.type)
754
- } };
755
- };
756
- var removeOrgAsset = async (req) => {
757
- requireManageOrgMembers(req);
758
- const kind = parseKind(req.params);
759
- const { ctx, orgId } = requireActingOrg(req, req.params.orgId);
760
- await orgAssetService(req.deps).removeAsset(ctx, orgId, kind);
761
- return noContent();
762
- };
763
- // ../server/src/handlers/shareLinks.ts
764
- /**
765
- * Share-link administration.
766
- *
767
- * Minting, listing and revoking are gated by `canEditDefinition` — the same
768
- * authority that uploads versions and publishes. The raw token appears in the
769
- * POST response and nowhere else; everything afterwards sees `hasToken: true`.
770
- *
771
- * **Responses go through `shaped`/`shapedCollection`, never `{ body }`.** A
772
- * `ShareLink` carries `tokenHash`, and the response schema is what drops it —
773
- * returning the record directly would put a credential hash on the wire with
774
- * nothing failing at build time.
775
- */
776
- function assertSharingEnabled(req) {
777
- if (!req.deps.flag("ENABLE_SHARING")) apiError(404, ApiErrorCode.NOT_FOUND, "Share links are disabled on this instance (ENABLE_SHARING).");
778
- }
779
- /** `tokenHash` is dropped by the response schema, not by this function. */
780
- function forClient(link) {
781
- return {
782
- ...link,
783
- hasToken: true
784
- };
785
- }
786
- var listShareLinks = async (req) => {
787
- assertSharingEnabled(req);
788
- const guid = parseParam(req.params.guid, GuidSchema, "GUID");
789
- const { ctx } = await requireEditableDefinition(req, guid);
790
- const page = await req.deps.shareLinks.listByDefinition(ctx, guid, parseListOptions(req.url));
791
- return shapedCollection(ShareLinkResponseSchema, {
792
- items: page.items.map(forClient),
793
- nextCursor: page.nextCursor
794
- });
795
- };
796
- var createShareLink = async (req) => {
797
- assertSharingEnabled(req);
798
- const guid = parseParam(req.params.guid, GuidSchema, "GUID");
799
- const { user } = requireCaller(req);
800
- const { ctx } = await requireEditableDefinition(req, guid);
801
- const input = await parseBody(req.request, CreateShareLinkInputSchema, { missingAs: {} });
802
- const codec = tokenCodec(req.deps, "shareLinks");
803
- const raw = codec.mintRawToken();
804
- const link = {
805
- id: randomUUID(),
806
- definitionId: guid,
807
- channel: input.channel,
808
- tokenHash: codec.hashToken(raw),
809
- name: input.name,
810
- createdBy: user.id,
811
- createdAt: (/* @__PURE__ */ new Date()).toISOString(),
812
- expiresAt: input.expiresAt ?? null,
813
- revokedAt: null,
814
- allowSolve: input.allowSolve,
815
- maxSolves: input.maxSolves === void 0 ? DEFAULT_SHARE_LINK_MAX_SOLVES : input.maxSolves,
816
- solveCount: 0
817
- };
818
- await req.deps.shareLinks.create(ctx, link);
819
- return shaped(CreatedShareLinkResponseSchema, {
820
- link: forClient(link),
821
- token: raw
822
- }, 201);
823
- };
824
- /**
825
- * Revoke a share link (soft-delete). Idempotent, gated by `canEditDefinition`.
826
- *
827
- * The link must belong to this definition, so one definition's editor cannot
828
- * revoke another's link with a guessed or leaked linkId.
829
- */
830
- var revokeShareLink = async (req) => {
831
- assertSharingEnabled(req);
832
- const guid = parseParam(req.params.guid, GuidSchema, "GUID");
833
- const linkId = parseParam(req.params.linkId, GuidSchema, "link ID");
834
- const { ctx } = await requireEditableDefinition(req, guid);
835
- const existing = await req.deps.shareLinks.getById(ctx, linkId);
836
- if (!existing || existing.definitionId !== guid) apiError(404, ApiErrorCode.NOT_FOUND, "Share link not found.");
837
- await req.deps.shareLinks.revoke(ctx, linkId);
838
- return noContent();
839
- };
840
- // ../server/src/handlers/definitions.ts
841
- /**
842
- * Definition handlers: the collection, one definition's detail and metadata,
843
- * its live schema, cover image, and the publish channel.
844
- *
845
- * Solve and the two compute routes stay unwrapped deliberately — they stream
846
- * and mark their own metrics, which the `ApiResponse` envelope does not model.
847
- */
848
- var LISTABLE_STATUSES = [
849
- "draft",
850
- "published",
851
- "archived"
852
- ];
853
- /**
854
- * Definitions the caller can view. Visibility is resolved into the query via
855
- * `projectIds`, so `limit`/`nextCursor` describe the filtered set.
856
- *
857
- * `?documentId=<guid>` narrows to definitions uploaded from that Grasshopper
858
- * document which the caller can upload a new version of.
859
- */
860
- var listDefinitions = async (req) => {
861
- const { ctx } = requireCaller(req);
862
- const documentParam = req.url.searchParams.get("documentId");
863
- const documentId = documentParam === null ? null : toSourceDocumentId(documentParam);
864
- if (documentParam !== null && !documentId) apiError(400, ApiErrorCode.VALIDATION_FAILED, "documentId must be a GUID");
865
- const statusParam = req.url.searchParams.get("status");
866
- if (statusParam && !LISTABLE_STATUSES.includes(statusParam)) apiError(400, ApiErrorCode.VALIDATION_FAILED, `status must be one of: ${LISTABLE_STATUSES.join(", ")}`);
867
- const opts = {
868
- ...parseDefinitionListOptions(req.url),
869
- projectId: req.url.searchParams.get("projectId") ?? void 0,
870
- statuses: statusParam ? [statusParam] : void 0
871
- };
872
- const page = documentId ? await listEditableDefinitionsByDocument(ctx, documentId, opts, req.deps) : await listVisibleDefinitions(ctx, opts, req.deps);
873
- return collection({
874
- items: page.items.map(toDefinitionListItem),
875
- nextCursor: page.nextCursor
876
- });
877
- };
878
- function parseTags(raw) {
879
- if (!raw) return void 0;
880
- const tags = raw.split(",").map((t) => t.trim()).filter(Boolean);
881
- return tags.length ? tags : void 0;
882
- }
883
- /** Create a definition — metadata and the Grasshopper file in one request. */
884
- var createDefinition = async (req) => {
885
- const { ctx, user } = requireCaller(req);
886
- const form = await readForm(req.request);
887
- const { file, extension } = requireUpload(form, "file", {
888
- maxBytes: req.deps.uploadLimits.maxDefinitionFileSize,
889
- extensions: GH_EXTENSIONS,
890
- label: "Grasshopper (.gh or .ghx) file"
891
- });
892
- const imageFile = form.get("image");
893
- const maxImageBytes = req.deps.uploadLimits.maxImageFileSize;
894
- if (imageFile instanceof File && imageFile.size > maxImageBytes) apiError(400, ApiErrorCode.VALIDATION_FAILED, `Image too large. Max size: ${maxImageBytes / 1048576} MB`);
895
- let projectId = formText(form, "projectId");
896
- if (!projectId) {
897
- if (!ctx.actingOrgId) apiError(400, ApiErrorCode.VALIDATION_FAILED, "No active organization");
898
- const { projects } = await resolveAccessibleProjects(ctx, req.deps);
899
- const fallback = projects.find((p) => p.orgId === ctx.actingOrgId);
900
- if (!fallback) apiError(400, ApiErrorCode.VALIDATION_FAILED, "No accessible project — pass projectId.");
901
- projectId = fallback.id;
902
- }
903
- const { project } = await requireCanCreateDefinition(req, projectId);
904
- const parsed = CreateDefinitionInputSchema.safeParse({
905
- displayName: formText(form, "displayName"),
906
- description: formText(form, "description"),
907
- category: formText(form, "category"),
908
- coverImage: formText(form, "coverImage"),
909
- tags: parseTags(formText(form, "tags")),
910
- projectId,
911
- computeServerId: formText(form, "computeServerId")
912
- });
913
- if (!parsed.success) throwZodError(parsed.error);
914
- const guid = randomUUID();
915
- const fileData = new Uint8Array(await file.arrayBuffer());
916
- const server = await resolveServerForOrg(ctx, project.orgId, req.deps.computeServer, { definitionPin: parsed.data.computeServerId ?? null });
917
- const schema = await fetchSchemaFromCompute(fileData, server);
918
- const service = definitionService(req.deps);
919
- const { record, version } = await service.create(ctx, {
920
- guid,
921
- projectId: parsed.data.projectId,
922
- ownerId: user.id,
923
- fileExt: extension.slice(1),
924
- originalFilename: file.name,
925
- computeServerId: parsed.data.computeServerId,
926
- displayName: parsed.data.displayName.trim(),
927
- description: parsed.data.description,
928
- category: parsed.data.category,
929
- tags: parsed.data.tags,
930
- coverImage: parsed.data.coverImage
931
- }, fileData, schema);
932
- let coverImage = record.coverImage;
933
- if (imageFile instanceof File && imageFile.size > 0) {
934
- const imageData = new Uint8Array(await imageFile.arrayBuffer());
935
- coverImage = await service.saveCoverImage(ctx, guid, imageData);
936
- }
937
- return created({
938
- guid,
939
- version,
940
- coverImage
941
- });
942
- };
943
- /** `schema` is a large blob, served on demand by `/versions/{versionId}/schema`. */
944
- function versionSummary(v) {
945
- return {
946
- id: v.id,
947
- versionNumber: v.versionNumber,
948
- uploadedAt: v.uploadedAt,
949
- uploadedBy: v.uploadedBy,
950
- changeNote: v.changeNote
951
- };
952
- }
953
- /**
954
- * The record plus its live and draft version summaries. `canEdit` says whether
955
- * the caller can upload a version and make one live, scope included for a key.
956
- */
957
- var getDefinition = async (req) => {
958
- const guid = parseParam(req.params.guid, GuidSchema, "GUID");
959
- const { ctx } = requireCaller(req);
960
- const visible = await loadVisibleDefinition(ctx, guid, req.deps);
961
- if (!visible) apiError(404, ApiErrorCode.NOT_FOUND, "Definition not found");
962
- const { record } = visible;
963
- const meta = req.deps.definitionMeta;
964
- const [liveVersion, draftVersion] = await Promise.all([record.liveVersionId ? meta.getVersion(ctx, record.liveVersionId) : null, record.draftVersionId ? meta.getVersion(ctx, record.draftVersionId) : null]);
965
- return { body: {
966
- ...record,
967
- sourceDocumentId: record.sourceDocumentId ?? null,
968
- canEdit: mayUploadToDefinition(ctx, visible, req.deps),
969
- liveVersion: liveVersion ? versionSummary(liveVersion) : null,
970
- draftVersion: draftVersion ? versionSummary(draftVersion) : null
971
- } };
972
- };
973
- /** Soft-delete the definition; versions and blobs are wiped with it. */
974
- var deleteDefinition = async (req) => {
975
- const guid = parseParam(req.params.guid, GuidSchema, "GUID");
976
- const { ctx } = await requireEditableDefinition(req, guid);
977
- await definitionService(req.deps).delete(ctx, guid);
978
- return noContent();
979
- };
980
- /** Metadata only. New versions POST to `/versions`. */
981
- var updateDefinition = async (req) => {
982
- const guid = parseParam(req.params.guid, GuidSchema, "GUID");
983
- const { ctx, record } = await requireEditableDefinition(req, guid);
984
- const patch = await parseBody(req.request, UpdateMetadataInputSchema);
985
- if (patch.projectId && patch.projectId !== record.projectId) {
986
- assertScope(ctx, "write", { projectId: patch.projectId });
987
- await requireCanCreateDefinition(req, patch.projectId);
988
- }
989
- await definitionService(req.deps).updateMeta(ctx, guid, patch);
990
- return noContent();
991
- };
992
- /**
993
- * Convenience alias for the live version's schema — the call a client makes
994
- * before solving. The canonical location is `/versions/{versionId}/schema`;
995
- * this resolves the `live` pointer for you.
996
- */
997
- var getDefinitionSchema = async (req) => {
998
- const guid = parseParam(req.params.guid, GuidSchema, "GUID");
999
- const { ctx } = requireCaller(req);
1000
- const record = await getVisibleDefinition(ctx, guid, req.deps);
1001
- if (!record) apiError(404, ApiErrorCode.NOT_FOUND, "Definition not found");
1002
- if (!record.liveVersionId) apiError(404, ApiErrorCode.NOT_FOUND, "This definition has no published version");
1003
- const version = await loadVisibleVersion(ctx, guid, record.liveVersionId, req.deps);
1004
- if (!version?.schema) apiError(404, ApiErrorCode.NOT_FOUND, "No schema cached for the live version");
1005
- return { body: version.schema };
1006
- };
1007
- /**
1008
- * Advance the live channel. Body `{ versionId? }` targets a specific version
1009
- * (rollback or forward-roll); omit it to promote the current draft.
1010
- */
1011
- var publishDefinition = async (req) => {
1012
- const guid = parseParam(req.params.guid, GuidSchema, "GUID");
1013
- const { versionId } = await parseBody(req.request, PublishVersionInputSchema, { missingAs: {} });
1014
- const { ctx } = await requireEditableDefinition(req, guid);
1015
- return { body: { version: await definitionService(req.deps).publish(ctx, guid, versionId) } };
1016
- };
1017
- /** Upload a cover image. */
1018
- var uploadDefinitionImage = async (req) => {
1019
- const guid = parseParam(req.params.guid, GuidSchema, "GUID");
1020
- const { ctx } = await requireEditableDefinition(req, guid);
1021
- const { file } = requireUpload(await readForm(req.request), "image", {
1022
- maxBytes: req.deps.uploadLimits.maxImageFileSize,
1023
- label: "Image"
1024
- });
1025
- const data = new Uint8Array(await file.arrayBuffer());
1026
- return { body: { coverImage: await definitionService(req.deps).saveCoverImage(ctx, guid, data) } };
1027
- };
1028
- // ../server/src/handlers/definitionVersions.ts
1029
- /**
1030
- * Version handlers: list, upload, read, delete, and a version's cached schema.
1031
- *
1032
- * Reads resolve through `getVisibleDefinition` / `loadVisibleVersion`, which
1033
- * return `null` rather than throwing, so an invisible definition answers 404.
1034
- * A 403 anywhere here would confirm a guid exists across a tenant boundary.
1035
- */
1036
- var listVersions = async (req) => {
1037
- const guid = parseParam(req.params.guid, GuidSchema, "GUID");
1038
- const { ctx } = requireCaller(req);
1039
- if (!await getVisibleDefinition(ctx, guid, req.deps)) apiError(404, ApiErrorCode.NOT_FOUND, "Definition not found");
1040
- return collection(await req.deps.definitionMeta.listVersions(ctx, guid, parseListOptions(req.url)));
1041
- };
1042
- /** Upload a new version. Advances `draft`; `live` is unchanged until publish. */
1043
- var uploadVersion = async (req) => {
1044
- const guid = parseParam(req.params.guid, GuidSchema, "GUID");
1045
- const form = await readForm(req.request);
1046
- const { file, extension } = requireUpload(form, "file", {
1047
- maxBytes: req.deps.uploadLimits.maxDefinitionFileSize,
1048
- extensions: GH_EXTENSIONS,
1049
- label: "Grasshopper (.gh or .ghx) file"
1050
- });
1051
- const changeNote = formText(form, "changeNote", { maxLength: 1e3 });
1052
- const { ctx, record, project } = await requireEditableDefinition(req, guid);
1053
- const data = new Uint8Array(await file.arrayBuffer());
1054
- const server = await resolveServerForOrg(ctx, project?.orgId ?? null, req.deps.computeServer, { definitionPin: record.computeServerId ?? null });
1055
- const schema = await fetchSchemaFromCompute(data, server);
1056
- return created({ version: await definitionService(req.deps).uploadVersion(ctx, guid, data, extension.slice(1), file.name, schema, changeNote) });
1057
- };
1058
- /**
1059
- * Version metadata. `schema` is excluded and served by the `/schema`
1060
- * sub-resource, so a version read never carries a several-hundred-KB blob.
1061
- */
1062
- var getVersion = async (req) => {
1063
- const guid = parseParam(req.params.guid, GuidSchema, "GUID");
1064
- const versionId = parseParam(req.params.versionId, GuidSchema, "version ID");
1065
- const { ctx } = requireCaller(req);
1066
- const version = await loadVisibleVersion(ctx, guid, versionId, req.deps);
1067
- if (!version) apiError(404, ApiErrorCode.NOT_FOUND, "Version not found");
1068
- const { schema: _schema, ...rest } = version;
1069
- return { body: rest };
1070
- };
1071
- /**
1072
- * Delete an old version. The store throws 409 if the version is currently
1073
- * referenced by `liveVersionId` or `draftVersionId` — repoint first.
1074
- */
1075
- var deleteVersion = async (req) => {
1076
- const guid = parseParam(req.params.guid, GuidSchema, "GUID");
1077
- const versionId = parseParam(req.params.versionId, GuidSchema, "version ID");
1078
- const { ctx } = await requireEditableDefinition(req, guid);
1079
- await definitionService(req.deps).deleteVersion(ctx, guid, versionId);
1080
- return noContent();
1081
- };
1082
- /**
1083
- * The UI schema cached on this version at upload. Reads what is stored — no
1084
- * Rhino.Compute round-trip, unlike the pre-upload `POST /api/v1/compute/schema`.
1085
- *
1086
- * Schemas belong to a version, so this is the canonical location;
1087
- * `/definitions/{guid}/schema` is an alias for the live one.
1088
- */
1089
- var getVersionSchema = async (req) => {
1090
- const guid = parseParam(req.params.guid, GuidSchema, "GUID");
1091
- const versionId = parseParam(req.params.versionId, GuidSchema, "version ID");
1092
- const { ctx } = requireCaller(req);
1093
- const version = await loadVisibleVersion(ctx, guid, versionId, req.deps);
1094
- if (!version) apiError(404, ApiErrorCode.NOT_FOUND, "Version not found");
1095
- if (!version.schema) apiError(404, ApiErrorCode.NOT_FOUND, "No schema cached for this version");
1096
- return { body: version.schema };
1097
- };
1098
- // ../server/src/handlers/projects.ts
1099
- /**
1100
- * Project handlers: the collection, and a single project's detail and settings.
1101
- *
1102
- * `listProjects` was authored against `resolveAccessibleProjects`, not lifted
1103
- * from the pre-v1 handler: that one listed every project in the acting org with
1104
- * no `canView` filter and had no UI caller, so it carried no evidence of being
1105
- * correct. The rest are lifted, logic intact, with reads moved onto `req.deps`.
1106
- */
1107
- /**
1108
- * Projects the caller can view. `canCreateDefinitions` says whether
1109
- * `POST /definitions` would take this project from this caller: the same rule
1110
- * as the route, and for an API token its `upload` scope there.
1111
- */
1112
- var listProjects = async (req) => {
1113
- const { ctx } = requireCaller(req);
1114
- const set = await resolveAccessibleProjects(ctx, req.deps);
1115
- const { projects } = set;
1116
- const { limit, cursor } = parseListOptions(req.url);
1117
- const start = cursor ? Number(cursor) : 0;
1118
- if (!Number.isInteger(start) || start < 0) apiError(400, ApiErrorCode.VALIDATION_FAILED, "Invalid cursor");
1119
- const items = projects.slice(start, start + (limit ?? projects.length));
1120
- const nextIndex = start + items.length;
1121
- const tokenMayUpload = scopeAllows(ctx, "upload");
1122
- return collection({
1123
- items: items.map((project) => ({
1124
- ...project,
1125
- canCreateDefinitions: tokenMayUpload && canCreateDefinition(projectAccessInputFromRowsWith(req, ctx, project, {
1126
- member: set.memberByProjectId.get(project.id) ?? null,
1127
- orgMember: set.orgMemberByOrgId.get(project.orgId) ?? null,
1128
- platformGrants: set.grantsByProjectId.get(project.id) ?? []
1129
- }))
1130
- })),
1131
- nextCursor: nextIndex < projects.length ? String(nextIndex) : void 0
1132
- });
1133
- };
1134
- var createProject = async (req) => {
1135
- const { ctx, user } = requireCaller(req);
1136
- if (!ctx.actingOrgId) apiError(400, ApiErrorCode.VALIDATION_FAILED, "No active organization");
1137
- await requireCanCreateProject(req, ctx.actingOrgId);
1138
- const input = await parseBody(req.request, CreateProjectBodySchema);
1139
- if (input.visibility === "platform" && !hasPermission(ctx, "instance_admin")) apiError(403, ApiErrorCode.FORBIDDEN, "Only a platform admin can create a project with platform visibility.");
1140
- const autoJoinOnUpload = input.autoJoinOnUpload ?? false;
1141
- const flagIssues = validateProjectFlags({
1142
- visibility: input.visibility,
1143
- autoJoinOnUpload
1144
- });
1145
- if (flagIssues.length > 0) apiError(400, ApiErrorCode.VALIDATION_FAILED, flagIssues.map((i) => `${i.path}: ${i.message}`).join("; "));
1146
- return created(await createProjectWithUniqueSlug(req.deps.projects, {
1147
- id: randomUUID(),
1148
- orgId: ctx.actingOrgId,
1149
- name: input.name,
1150
- description: input.description,
1151
- visibility: input.visibility,
1152
- ownerId: user.id,
1153
- createdBy: user.id,
1154
- updatedBy: user.id,
1155
- autoJoinOnUpload
1156
- }, {
1157
- writeCtx: ctx,
1158
- fallbackSlug: "project",
1159
- conflictScope: "this organization"
1160
- }));
1161
- };
1162
- /**
1163
- * Project detail plus the caller's effective capabilities on it.
1164
- *
1165
- * A project the caller cannot view returns 404, not 403 — `403` would confirm
1166
- * the id exists to anyone probing.
1167
- */
1168
- var getProject = async (req) => {
1169
- const { id } = requireParams(req.params, "id");
1170
- const { ctx } = requireCaller(req);
1171
- const project = await req.deps.projects.getProject(SYSTEM_CONTEXT, id);
1172
- if (!project || outsideTokenOrg(ctx, project.orgId)) apiError(404, ApiErrorCode.NOT_FOUND, "Project not found");
1173
- const [orgMembers, projectMembers, grants] = await Promise.all([
1174
- req.deps.orgs.getOrgMembersFor(SYSTEM_CONTEXT, [project.orgId], ctx.userId),
1175
- req.deps.projects.getProjectMembersFor(SYSTEM_CONTEXT, [project.id], ctx.userId),
1176
- project.visibility === "platform" ? req.deps.platformProjectGrants.listByProject(SYSTEM_CONTEXT, project.id) : Promise.resolve([])
1177
- ]);
1178
- const member = projectMembers.get(project.id) ?? null;
1179
- const input = projectAccessInputFromRowsWith(req, ctx, project, {
1180
- member,
1181
- orgMember: orgMembers.get(project.orgId) ?? null,
1182
- platformGrants: grants
1183
- });
1184
- if (!canView(input)) apiError(404, ApiErrorCode.NOT_FOUND, "Project not found");
1185
- return { body: {
1186
- ...project,
1187
- role: member?.role ?? null,
1188
- canEdit: canEdit(input),
1189
- canSolve: canSolve(input)
1190
- } };
1191
- };
1192
- var updateProject = async (req) => {
1193
- const { id } = requireParams(req.params, "id");
1194
- const { ctx, project: existing } = await requireCanEditProjectSettings(req, id);
1195
- const input = await parseBody(req.request, UpdateProjectBodySchema);
1196
- if (input.visibility === "platform" && existing.visibility !== "platform") {
1197
- if (!hasPermission(ctx, "instance_admin")) apiError(403, ApiErrorCode.FORBIDDEN, "Only a platform admin can give a project platform visibility.");
1198
- }
1199
- if (input.visibility === "public" && existing.visibility !== "public") {
1200
- const orgMember = await req.deps.orgs.getOrgMember(ctx, existing.orgId, ctx.userId);
1201
- if (!withAdminBypass(ctx.platformPermissions, () => canChangeVisibilityToPublic({ orgMember }))) apiError(403, ApiErrorCode.FORBIDDEN, "Only org owners or admins can make a project public.");
1202
- }
1203
- const flagIssues = validateProjectFlags({
1204
- visibility: input.visibility ?? existing.visibility,
1205
- autoJoinOnUpload: input.autoJoinOnUpload ?? existing.autoJoinOnUpload
1206
- });
1207
- if (flagIssues.length > 0) apiError(400, ApiErrorCode.VALIDATION_FAILED, flagIssues.map((i) => `${i.path}: ${i.message}`).join("; "));
1208
- const patch = {};
1209
- if (input.name !== void 0) {
1210
- patch.name = input.name;
1211
- patch.slug = slugify(input.name);
1212
- }
1213
- if (input.description !== void 0) patch.description = input.description ?? void 0;
1214
- if (input.visibility !== void 0) patch.visibility = input.visibility;
1215
- if (input.autoJoinOnUpload !== void 0) patch.autoJoinOnUpload = input.autoJoinOnUpload;
1216
- await req.deps.projects.updateProject(ctx, id, patch);
1217
- return noContent();
1218
- };
1219
- var deleteProject = async (req) => {
1220
- const { id } = requireParams(req.params, "id");
1221
- const { ctx } = requireCaller(req);
1222
- await requireCanManage(req, id);
1223
- await req.deps.projects.deleteProject(ctx, id);
1224
- return noContent();
1225
- };
1226
- // ../server/src/handlers/projectMembers.ts
1227
- /**
1228
- * Project membership: list, add, change role, remove.
1229
- *
1230
- * Every method here gates on `requireCanManage(req, id, 'members')`. The
1231
- * owner-count preconditions on PATCH and DELETE come from `checkOwnerRemoval`,
1232
- * a pure rules function, so demotion and removal cannot drift apart — a sole
1233
- * owner demoting themselves locks the project exactly as removing themselves
1234
- * would.
1235
- */
1236
- var listProjectMembers = async (req) => {
1237
- const { id } = requireParams(req.params, "id");
1238
- const { ctx } = requireCaller(req);
1239
- await requireCanManage(req, id, "members");
1240
- return collection(await req.deps.projects.listProjectMembers(ctx, id, parseListOptions(req.url)));
1241
- };
1242
- var addProjectMember = async (req) => {
1243
- const { id } = requireParams(req.params, "id");
1244
- const { ctx } = requireCaller(req);
1245
- await requireCanManage(req, id, "members");
1246
- const input = await parseBody(req.request, AddProjectMemberBodySchema);
1247
- const project = await req.deps.projects.getProject(ctx, id);
1248
- if (!project) apiError(404, ApiErrorCode.NOT_FOUND, "Project not found");
1249
- await requireTargetIsOrgMember(req, project.orgId, input.userId);
1250
- const now = (/* @__PURE__ */ new Date()).toISOString();
1251
- const member = {
1252
- projectId: id,
1253
- userId: input.userId,
1254
- role: input.role,
1255
- joinedAt: now,
1256
- updatedAt: now,
1257
- updatedBy: ctx.userId || input.userId,
1258
- deletedAt: null
1259
- };
1260
- await req.deps.projects.addProjectMember(ctx, member);
1261
- return created(member);
1262
- };
1263
- /**
1264
- * Guard the owner count before a demotion or removal goes through.
1265
- *
1266
- * `?confirm=true` is what distinguishes "I meant to do this" from a misclick;
1267
- * the sole-owner case has no confirmation, because there is no state the
1268
- * caller could confirm into that leaves the project manageable.
1269
- */
1270
- async function assertOwnerRemovable(req, projectId, target, action) {
1271
- const { ctx } = requireCaller(req);
1272
- const page = await req.deps.projects.listProjectMembers(ctx, projectId, { limit: 200 });
1273
- const decision = checkOwnerRemoval({
1274
- target: { role: target.role },
1275
- allMembers: page.items.map((m) => ({ role: m.role })),
1276
- confirmed: req.url.searchParams.get("confirm") === "true"
1277
- });
1278
- if (decision === "sole_owner") apiError(409, ApiErrorCode.CONFLICT, `Cannot ${action} the sole owner of a project. Assign another owner first, or use reclaim to add a co-owner.`);
1279
- if (decision === "needs_confirm") apiError(409, ApiErrorCode.CONFLICT, `${action === "demote" ? "Demoting" : "Removing"} another project owner requires explicit confirmation. Retry with ?confirm=true.`);
1280
- }
1281
- var updateProjectMemberRole = async (req) => {
1282
- const { id, userId } = requireParams(req.params, "id", "userId");
1283
- const { ctx } = requireCaller(req);
1284
- await requireCanManage(req, id, "members");
1285
- const { role } = await parseBody(req.request, UpdateProjectMemberBodySchema);
1286
- if (role !== "owner") {
1287
- const target = await req.deps.projects.getProjectMember(ctx, id, userId);
1288
- if (target?.role === "owner") await assertOwnerRemovable(req, id, target, "demote");
1289
- }
1290
- await req.deps.projects.updateProjectMemberRole(ctx, id, userId, role);
1291
- return noContent();
1292
- };
1293
- var removeProjectMember = async (req) => {
1294
- const { id, userId } = requireParams(req.params, "id", "userId");
1295
- const { ctx } = requireCaller(req);
1296
- await requireCanManage(req, id, "members");
1297
- const target = await req.deps.projects.getProjectMember(ctx, id, userId);
1298
- if (!target) return noContent();
1299
- if (target.role === "owner") await assertOwnerRemovable(req, id, target, "remove");
1300
- await req.deps.projects.removeProjectMember(ctx, id, userId);
1301
- return noContent();
1302
- };
1303
- // ../server/src/handlers/orgCompute.ts
1304
- /**
1305
- * Per-org compute config: this org's own servers (`scope: 'org'`) and its
1306
- * default selection (`orgDefaults[orgId]`). Platform servers and the global
1307
- * default are read-only here — `manage_compute` owns those via `/api/admin/compute`.
1308
- *
1309
- * Authorization: org `owner`/`admin` with `manage_org_compute`, plus the acting-org
1310
- * tenancy check. Gated by `ALLOW_ORG_COMPUTE_OVERRIDE`; when off, both methods 403.
1311
- *
1312
- * **`apiKey` merge semantics are the trap here.** Omitted preserves the stored
1313
- * key, `null` clears it, a string replaces it — and `/api/admin/compute` must
1314
- * agree, which is why the merge lives in `@selvajs/server/compute`, not inline.
1315
- */
1316
- function requireFlag(req) {
1317
- if (!req.deps.flag("ALLOW_ORG_COMPUTE_OVERRIDE")) apiError(403, ApiErrorCode.FORBIDDEN, "Per-org compute override is disabled on this instance (ALLOW_ORG_COMPUTE_OVERRIDE).");
1318
- }
1319
- var getOrgCompute = async (req) => {
1320
- requireFlag(req);
1321
- requireManageOrgCompute(req);
1322
- const { ctx, orgId } = requireActingOrg(req, req.params.orgId);
1323
- const config = await req.deps.computeServer.getConfig(ctx, { scopeToOrgId: orgId });
1324
- const owned = config.servers.filter((s) => isOrgServer(s) && s.ownerOrgId === orgId).map((s) => ({
1325
- ...s,
1326
- hasApiKey: !!s.hasApiKey
1327
- }));
1328
- const catalog = config.servers.map((s) => ({
1329
- id: s.id,
1330
- label: s.label,
1331
- serverUrl: s.serverUrl,
1332
- scope: s.scope,
1333
- source: isPlatformServer(s) ? "platform" : "org",
1334
- timeoutMs: s.timeoutMs,
1335
- retryCount: s.retryCount
1336
- }));
1337
- return shaped(OrgComputeResponseSchema, {
1338
- servers: owned,
1339
- defaultServerId: config.orgDefaults?.[orgId] ?? null,
1340
- globalDefaultServerId: config.defaultServerId ?? null,
1341
- catalog
1342
- });
1343
- };
1344
- var updateOrgCompute = async (req) => {
1345
- requireFlag(req);
1346
- requireManageOrgCompute(req);
1347
- const { ctx, orgId } = requireActingOrg(req, req.params.orgId);
1348
- const incoming = await parseBody(req.request, OrgComputePatchBodySchema);
1349
- validateIncomingServers(incoming.servers);
1350
- const provider = req.deps.computeServer;
1351
- const existing = await provider.getConfig(ctx, { includeApiKeys: true });
1352
- const storedKeys = storedKeysById(existing.servers.filter((s) => isOrgServer(s) && s.ownerOrgId === orgId));
1353
- const next = incoming.servers.map((s) => ({
1354
- id: s.id,
1355
- scope: "org",
1356
- ownerOrgId: orgId,
1357
- label: s.label,
1358
- serverUrl: s.serverUrl,
1359
- timeoutMs: s.timeoutMs,
1360
- retryCount: s.retryCount,
1361
- apiKey: resolveApiKey(s.apiKey, storedKeys.get(s.id))
1362
- }));
1363
- if (typeof incoming.defaultServerId === "string") {
1364
- const projected = {
1365
- servers: [...existing.servers.filter((s) => !(isOrgServer(s) && s.ownerOrgId === orgId)), ...next],
1366
- defaultServerId: existing.defaultServerId,
1367
- orgDefaults: existing.orgDefaults
1368
- };
1369
- if (!new Set(serversVisibleTo(projected, orgId).map((s) => s.id)).has(incoming.defaultServerId)) apiError(400, ApiErrorCode.VALIDATION_FAILED, "defaultServerId must reference a server visible to this organization");
1370
- }
1371
- await provider.saveOrgServers(ctx, orgId, next, incoming.defaultServerId);
1372
- evictChangedServers(existing.servers.filter((s) => isOrgServer(s) && s.ownerOrgId === orgId), next, req.deps.evictComputeClient);
1373
- return noContent();
1374
- };
1375
- // ../server/src/handlers/invite-lookup.ts
1376
- /**
1377
- * Find an invite by id, confirming it belongs to `orgId`.
1378
- *
1379
- * `manage_org_members` is org-scoped, so a permitted caller must not reach an
1380
- * invite in another org. Neither store scopes `revoke()` by acting org, so
1381
- * every route that mutates an invite by id has to establish ownership first —
1382
- * hence one shared paged scan rather than a copy per route.
1383
- */
1384
- async function findPendingInviteInOrg(ctx, orgId, id, store) {
1385
- let cursor;
1386
- do {
1387
- const page = await store.listByOrg(ctx, orgId, {
1388
- limit: 200,
1389
- cursor
1390
- });
1391
- const match = page.items.find((i) => i.id === id);
1392
- if (match) return match;
1393
- cursor = page.nextCursor ?? void 0;
1394
- } while (cursor);
1395
- return null;
1396
- }
1397
- // ../server/src/handlers/invites.ts
1398
- /**
1399
- * Org invites: list, mint, revoke, resend.
1400
- *
1401
- * **The raw token exists only in the response.** The store sees an HMAC digest,
1402
- * so a leak of the `invites` table cannot be replayed without the instance
1403
- * secret — and `tokenHash` is dropped by the response schema, which is why
1404
- * every response here goes through `shaped`/`shapedCollection` rather than
1405
- * `{ body }`.
1406
- */
1407
- var INVITE_TTL_MS = 6048e5;
1408
- /**
1409
- * Mail the accept link, or report why not.
1410
- *
1411
- * Mint and resend must send the identical message, so the deps threading lives
1412
- * here rather than at each call site. `not-configured` when the host wired no
1413
- * notification provider: the invite row is already committed and the caller
1414
- * still holds `acceptUrl`, so an instance without mail is a working instance,
1415
- * not a failed write.
1416
- */
1417
- async function mailInvite(req, invite, acceptUrl) {
1418
- const notifications = req.deps.notifications;
1419
- if (!notifications) return "not-configured";
1420
- return deliverInvite({
1421
- ctx: req.ctx,
1422
- log: req.log,
1423
- invite,
1424
- acceptUrl,
1425
- actor: {
1426
- profile: req.profile,
1427
- user: req.user
1428
- },
1429
- orgs: req.deps.orgs,
1430
- notifications,
1431
- fallbackOrgName: req.deps.instanceName
1432
- });
1433
- }
1434
- /** Pending and recently accepted invites for the acting org. */
1435
- var listInvites = async (req) => {
1436
- requireManageOrgMembers(req);
1437
- const { ctx, orgId } = requireActingOrg(req, req.params.orgId);
1438
- return shapedCollection(InviteResponseSchema, await req.deps.invites.listByOrg(ctx, orgId, parseListOptions(req.url)));
1439
- };
1440
- /** Create an invite and return the accept URL. */
1441
- var createInvite = async (req) => {
1442
- requireManageOrgMembers(req);
1443
- const { ctx, orgId } = requireActingOrg(req, req.params.orgId);
1444
- const { user } = requireCaller(req);
1445
- const input = await parseBody(req.request, CreateInviteBodySchema);
1446
- const { platform: submittedPlatformPerms, org: submittedOrgPerms } = splitFlatPermissions(input.permissions);
1447
- assertCanGrantPlatformPermissions(ctx, submittedPlatformPerms);
1448
- if (!await canActorChangeOrgRole(ctx, orgId, input.orgRole, req)) apiError(403, ApiErrorCode.FORBIDDEN, "Only the org owner can invite someone as owner or admin.");
1449
- const orgPermissions = input.orgRole === "member" ? submittedOrgPerms.filter((p) => MEMBER_ASSIGNABLE_PERMISSIONS.includes(p)) : [...DEFAULT_ORG_PERMISSIONS[input.orgRole]];
1450
- const codec = tokenCodec(req.deps, "invites");
1451
- const rawToken = codec.mintRawToken();
1452
- const now = /* @__PURE__ */ new Date();
1453
- const invite = {
1454
- id: randomUUID(),
1455
- tokenHash: codec.hashToken(rawToken),
1456
- email: input.email,
1457
- orgId,
1458
- orgRole: input.orgRole,
1459
- orgPermissions,
1460
- platformPermissions: submittedPlatformPerms,
1461
- invitedBy: user.id,
1462
- createdAt: now.toISOString(),
1463
- expiresAt: new Date(now.getTime() + INVITE_TTL_MS).toISOString()
1464
- };
1465
- await req.deps.invites.create(ctx, invite);
1466
- const acceptUrl = `${req.url.origin}/accept-invite?token=${rawToken}`;
1467
- const delivery = await mailInvite(req, invite, acceptUrl);
1468
- return shaped(CreatedInviteResponseSchema, {
1469
- ...invite,
1470
- acceptUrl,
1471
- delivery
1472
- }, 201);
1473
- };
1474
- /** Revoke a pending invite. Consumed invites are preserved for audit. */
1475
- var revokeInvite = async (req) => {
1476
- requireManageOrgMembers(req);
1477
- const { ctx, orgId } = requireActingOrg(req, req.params.orgId);
1478
- const { id } = requireParams(req.params, "id");
1479
- if (!await findPendingInviteInOrg(ctx, orgId, id, req.deps.invites)) apiError(404, ApiErrorCode.NOT_FOUND, "Invite not found");
1480
- await req.deps.invites.revoke(ctx, id);
1481
- return noContent();
1482
- };
1483
- /**
1484
- * Re-send an invite: mint a replacement and revoke the original.
1485
- *
1486
- * A resend cannot reuse the original link. The raw token is never stored — only
1487
- * its HMAC digest is — so there is nothing to re-read, and rather than weaken
1488
- * that, this issues a fresh token and revokes the row it replaces. The old link
1489
- * stops working the moment this returns, which is also what an admin wants
1490
- * after mailing an invite to the wrong address.
1491
- *
1492
- * Grants are copied verbatim from the original. The role and permission gates
1493
- * ran when it was minted; re-deriving them here would let a since-demoted admin
1494
- * silently change what the invite carries.
1495
- */
1496
- var resendInvite = async (req) => {
1497
- requireManageOrgMembers(req);
1498
- const { ctx, orgId } = requireActingOrg(req, req.params.orgId);
1499
- const { id } = requireParams(req.params, "id");
1500
- const existing = await findPendingInviteInOrg(ctx, orgId, id, req.deps.invites);
1501
- if (!existing) apiError(404, ApiErrorCode.NOT_FOUND, "Invite not found");
1502
- if (existing.acceptedAt) apiError(409, ApiErrorCode.CONFLICT, "This invite has already been accepted.");
1503
- const codec = tokenCodec(req.deps, "invites");
1504
- const rawToken = codec.mintRawToken();
1505
- const now = /* @__PURE__ */ new Date();
1506
- const replacement = {
1507
- ...existing,
1508
- id: randomUUID(),
1509
- tokenHash: codec.hashToken(rawToken),
1510
- createdAt: now.toISOString(),
1511
- expiresAt: new Date(now.getTime() + INVITE_TTL_MS).toISOString()
1512
- };
1513
- await req.deps.invites.create(ctx, replacement);
1514
- await req.deps.invites.revoke(ctx, existing.id);
1515
- const acceptUrl = `${req.url.origin}/accept-invite?token=${rawToken}`;
1516
- const delivery = await mailInvite(req, replacement, acceptUrl);
1517
- return shaped(CreatedInviteResponseSchema, {
1518
- ...replacement,
1519
- acceptUrl,
1520
- delivery
1521
- }, 201);
1522
- };
1523
- // ../server/src/handlers/oauthConsent.ts
1524
- async function contextIn(req, member) {
1525
- const { ctx, user } = requireCaller(req);
1526
- if (ctx.apiScope) apiError(403, ApiErrorCode.FORBIDDEN, "Sign in to the web app to connect an app.");
1527
- return {
1528
- ...await buildRequestContext({
1529
- user,
1530
- platformPermissions: ctx.platformPermissions,
1531
- membership: member,
1532
- pinOrg: true
1533
- }, { orgs: req.deps.orgs }),
1534
- adapterContext: ctx.adapterContext
1535
- };
1536
- }
1537
- /**
1538
- * The orgs the signed-in user may grant a key with `scopes` in: their acting
1539
- * org, when they may hold such a key there. At most one.
1540
- */
1541
- async function consentOrgs(req, scopes) {
1542
- const { ctx } = requireCaller(req);
1543
- const memberships = (await listUserMemberships(req.deps.orgs, ctx.userId)).filter(({ org }) => org.id === ctx.actingOrgId);
1544
- const allowed = await Promise.all(memberships.map(async ({ member }) => mayHoldApiTokens(req.deps, await contextIn(req, member), scopes)));
1545
- return memberships.filter((_, i) => allowed[i]).map(({ org }) => ({
1546
- id: org.id,
1547
- name: org.name
1548
- }));
1549
- }
1550
- /**
1551
- * What a consent page offers for a request's scopes, and what its approval
1552
- * accepts. Null when the user may grant none of it anywhere.
1553
- */
1554
- async function consentOffer(req, scopes) {
1555
- const offered = (await Promise.all(consentChoices(scopes).map(async (choice) => ({
1556
- choice,
1557
- orgs: await consentOrgs(req, apiScopesFor(choice.scopes))
1558
- })))).filter((l) => l.orgs.length > 0);
1559
- return offered.length ? { levels: offered } : null;
1560
- }
1561
- /**
1562
- * Mint the key a consent grants, in `orgId`. Anything but the acting org is
1563
- * refused here, whatever the form said.
1564
- */
1565
- async function mintConsentToken(req, orgId, input) {
1566
- const { ctx } = requireCaller(req);
1567
- if (orgId !== ctx.actingOrgId) apiError(403, ApiErrorCode.FORBIDDEN, "Apps can only be connected to your current organization.");
1568
- const picked = (await listUserMemberships(req.deps.orgs, ctx.userId)).find(({ org }) => org.id === orgId);
1569
- if (!picked) apiError(403, ApiErrorCode.FORBIDDEN, "You aren’t a member of that organization.");
1570
- return mintApiToken({
1571
- ...req,
1572
- ctx: await contextIn(req, picked.member)
1573
- }, input);
1574
- }
1575
- /**
1576
- * Revoke a consent key whose code was never redeemed, so an abandoned sign-in
1577
- * doesn't leave a live key nobody holds. A used key is kept: its code may have
1578
- * been redeemed on another replica.
1579
- */
1580
- async function revokeUnredeemedConsentToken(req, tokenId) {
1581
- const store = req.deps.data.apiTokens;
1582
- if (!store) return;
1583
- const { ctx } = requireCaller(req);
1584
- const token = await store.get(ctx, tokenId);
1585
- if (!token || token.revokedAt || token.lastUsedAt) return;
1586
- await store.revoke(ctx, tokenId, "owner");
1587
- }
1588
-
1589
- export { revokeOwnApiToken as A, getOrg as B, uploadOrgAsset as C, removeOrgAsset as D, getOrgCompute as E, updateOrgCompute as F, listInvites as G, createInvite as H, revokeInvite as I, resendInvite as J, listOrgMembers as K, updateOrgMember as L, removeOrgMember as M, listApiTokens as N, createApiToken as O, revokeApiToken as P, listProjects as Q, createProject as R, getProject as S, updateProject as T, deleteProject as U, listProjectMembers as V, addProjectMember as W, updateProjectMemberRole as X, removeProjectMember as Y, reclaimProject as Z, mintConsentToken as a, canManageApiTokenRoster as b, consentOffer as c, revokeUserApiTokens as d, listDefinitions as e, createDefinition as f, getDefinition as g, deleteDefinition as h, uploadDefinitionImage as i, getDefinitionSchema as j, listShareLinks as k, listOrgApiTokens as l, mayHoldApiTokens as m, createShareLink as n, revokeShareLink as o, publishDefinition as p, listVersions as q, revokeUnredeemedConsentToken as r, uploadVersion as s, getVersion as t, updateDefinition as u, deleteVersion as v, getVersionSchema as w, getMe as x, starDefinition as y, unstarDefinition as z };
1590
- //# sourceMappingURL=handlers.js-BpDAlScc.js.map