@selvajs/selva 4.6.21-beta.0 → 4.7.0-beta.2

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 (478) hide show
  1. package/build/client/_app/immutable/chunks/{BRbaYEL5.js → 9i3rf9gV.js} +1 -1
  2. package/build/client/_app/immutable/chunks/9i3rf9gV.js.br +0 -0
  3. package/build/client/_app/immutable/chunks/9i3rf9gV.js.gz +0 -0
  4. package/build/client/_app/immutable/chunks/{zOoVG74V.js → BUuRpU5m.js} +1 -1
  5. package/build/client/_app/immutable/chunks/BUuRpU5m.js.br +0 -0
  6. package/build/client/_app/immutable/chunks/BUuRpU5m.js.gz +0 -0
  7. package/build/client/_app/immutable/chunks/{COYKudi0.js → C1lje54W.js} +1 -1
  8. package/build/client/_app/immutable/chunks/C1lje54W.js.br +0 -0
  9. package/build/client/_app/immutable/chunks/C1lje54W.js.gz +0 -0
  10. package/build/client/_app/immutable/chunks/{I2TM0do6.js → CNzANXEE.js} +1 -1
  11. package/build/client/_app/immutable/chunks/CNzANXEE.js.br +0 -0
  12. package/build/client/_app/immutable/chunks/CNzANXEE.js.gz +0 -0
  13. package/build/client/_app/immutable/chunks/{CYwmPsLn.js → CZrHjFO_.js} +1 -1
  14. package/build/client/_app/immutable/chunks/CZrHjFO_.js.br +0 -0
  15. package/build/client/_app/immutable/chunks/CZrHjFO_.js.gz +0 -0
  16. package/build/client/_app/immutable/chunks/{B2u4e1Y9.js → CtQi8B_W.js} +5 -5
  17. package/build/client/_app/immutable/chunks/CtQi8B_W.js.br +0 -0
  18. package/build/client/_app/immutable/chunks/CtQi8B_W.js.gz +0 -0
  19. package/build/client/_app/immutable/chunks/D0ZkELYt.js +2 -0
  20. package/build/client/_app/immutable/chunks/D0ZkELYt.js.br +0 -0
  21. package/build/client/_app/immutable/chunks/D0ZkELYt.js.gz +0 -0
  22. package/build/client/_app/immutable/chunks/DvWy04ZP.js +2 -0
  23. package/build/client/_app/immutable/chunks/DvWy04ZP.js.br +0 -0
  24. package/build/client/_app/immutable/chunks/DvWy04ZP.js.gz +0 -0
  25. package/build/client/_app/immutable/entry/{app.CRaXT8K-.js → app.CHLvYXSV.js} +2 -2
  26. package/build/client/_app/immutable/entry/app.CHLvYXSV.js.br +0 -0
  27. package/build/client/_app/immutable/entry/app.CHLvYXSV.js.gz +0 -0
  28. package/build/client/_app/immutable/entry/start.x7J2Q5dO.js +1 -0
  29. package/build/client/_app/immutable/entry/start.x7J2Q5dO.js.br +2 -0
  30. package/build/client/_app/immutable/entry/start.x7J2Q5dO.js.gz +0 -0
  31. package/build/client/_app/immutable/nodes/{1.DPMP9Es7.js → 1.DHaPDVfK.js} +1 -1
  32. package/build/client/_app/immutable/nodes/1.DHaPDVfK.js.br +0 -0
  33. package/build/client/_app/immutable/nodes/1.DHaPDVfK.js.gz +0 -0
  34. package/build/client/_app/immutable/nodes/10.O0oWpOpl.js +3 -0
  35. package/build/client/_app/immutable/nodes/10.O0oWpOpl.js.br +0 -0
  36. package/build/client/_app/immutable/nodes/10.O0oWpOpl.js.gz +0 -0
  37. package/build/client/_app/immutable/nodes/{11.BxhrIetk.js → 11.DhYj36Fk.js} +1 -1
  38. package/build/client/_app/immutable/nodes/11.DhYj36Fk.js.br +0 -0
  39. package/build/client/_app/immutable/nodes/11.DhYj36Fk.js.gz +0 -0
  40. package/build/client/_app/immutable/nodes/{13.bzJyaCKt.js → 13.CfJOch3J.js} +1 -1
  41. package/build/client/_app/immutable/nodes/13.CfJOch3J.js.br +0 -0
  42. package/build/client/_app/immutable/nodes/13.CfJOch3J.js.gz +0 -0
  43. package/build/client/_app/immutable/nodes/{14.XVGDZn7V.js → 14.DisTiyB2.js} +1 -1
  44. package/build/client/_app/immutable/nodes/14.DisTiyB2.js.br +0 -0
  45. package/build/client/_app/immutable/nodes/14.DisTiyB2.js.gz +0 -0
  46. package/build/client/_app/immutable/nodes/{15.Ds7J6ry6.js → 15.A437nu0T.js} +1 -1
  47. package/build/client/_app/immutable/nodes/15.A437nu0T.js.br +0 -0
  48. package/build/client/_app/immutable/nodes/15.A437nu0T.js.gz +0 -0
  49. package/build/client/_app/immutable/nodes/{16.C6HKDHv3.js → 16.B9S-bV_g.js} +1 -1
  50. package/build/client/_app/immutable/nodes/16.B9S-bV_g.js.br +0 -0
  51. package/build/client/_app/immutable/nodes/16.B9S-bV_g.js.gz +0 -0
  52. package/build/client/_app/immutable/nodes/{17.BxjH0QZF.js → 17.BRN_aGIk.js} +1 -1
  53. package/build/client/_app/immutable/nodes/17.BRN_aGIk.js.br +0 -0
  54. package/build/client/_app/immutable/nodes/17.BRN_aGIk.js.gz +0 -0
  55. package/build/client/_app/immutable/nodes/{19.BU2Lw57i.js → 19.DwCFMX9M.js} +1 -1
  56. package/build/client/_app/immutable/nodes/19.DwCFMX9M.js.br +0 -0
  57. package/build/client/_app/immutable/nodes/19.DwCFMX9M.js.gz +0 -0
  58. package/build/client/_app/immutable/nodes/{2.D9dN-poH.js → 2.DP5fYr4M.js} +1 -1
  59. package/build/client/_app/immutable/nodes/2.DP5fYr4M.js.br +0 -0
  60. package/build/client/_app/immutable/nodes/2.DP5fYr4M.js.gz +0 -0
  61. package/build/client/_app/immutable/nodes/20.nfHXDL2z.js +5414 -0
  62. package/build/client/_app/immutable/nodes/20.nfHXDL2z.js.br +0 -0
  63. package/build/client/_app/immutable/nodes/20.nfHXDL2z.js.gz +0 -0
  64. package/build/client/_app/immutable/nodes/{21.qpo7v5r_.js → 21.OD5sg0NU.js} +1 -1
  65. package/build/client/_app/immutable/nodes/21.OD5sg0NU.js.br +0 -0
  66. package/build/client/_app/immutable/nodes/21.OD5sg0NU.js.gz +0 -0
  67. package/build/client/_app/immutable/nodes/23.CNjTTgpk.js +16 -0
  68. package/build/client/_app/immutable/nodes/23.CNjTTgpk.js.br +0 -0
  69. package/build/client/_app/immutable/nodes/23.CNjTTgpk.js.gz +0 -0
  70. package/build/client/_app/immutable/nodes/{24.BSJH1lHT.js → 24.CEgabT6P.js} +1 -1
  71. package/build/client/_app/immutable/nodes/24.CEgabT6P.js.br +0 -0
  72. package/build/client/_app/immutable/nodes/24.CEgabT6P.js.gz +0 -0
  73. package/build/client/_app/immutable/nodes/{27.BKQucFUA.js → 27.CRIaBHAx.js} +1 -1
  74. package/build/client/_app/immutable/nodes/27.CRIaBHAx.js.br +0 -0
  75. package/build/client/_app/immutable/nodes/27.CRIaBHAx.js.gz +0 -0
  76. package/build/client/_app/immutable/nodes/{28.BleEhT0J.js → 28.BC6m2tWk.js} +1 -1
  77. package/build/client/_app/immutable/nodes/28.BC6m2tWk.js.br +0 -0
  78. package/build/client/_app/immutable/nodes/28.BC6m2tWk.js.gz +0 -0
  79. package/build/client/_app/immutable/nodes/{29.fAbDo5Et.js → 29.BFYPdg-j.js} +1 -1
  80. package/build/client/_app/immutable/nodes/29.BFYPdg-j.js.br +0 -0
  81. package/build/client/_app/immutable/nodes/29.BFYPdg-j.js.gz +0 -0
  82. package/build/client/_app/immutable/nodes/{3.XubMG-dn.js → 3.J7HfMiHi.js} +1 -1
  83. package/build/client/_app/immutable/nodes/3.J7HfMiHi.js.br +0 -0
  84. package/build/client/_app/immutable/nodes/3.J7HfMiHi.js.gz +0 -0
  85. package/build/client/_app/immutable/nodes/{30.DRrc_hLr.js → 30.60AXFjfN.js} +1 -1
  86. package/build/client/_app/immutable/nodes/30.60AXFjfN.js.br +0 -0
  87. package/build/client/_app/immutable/nodes/30.60AXFjfN.js.gz +0 -0
  88. package/build/client/_app/immutable/nodes/{5.C77UuNpH.js → 5.CLnvzJQ1.js} +1 -1
  89. package/build/client/_app/immutable/nodes/5.CLnvzJQ1.js.br +1 -0
  90. package/build/client/_app/immutable/nodes/5.CLnvzJQ1.js.gz +0 -0
  91. package/build/client/_app/immutable/nodes/{6.B23L8hA_.js → 6.8mUhfqtj.js} +1 -1
  92. package/build/client/_app/immutable/nodes/6.8mUhfqtj.js.br +0 -0
  93. package/build/client/_app/immutable/nodes/6.8mUhfqtj.js.gz +0 -0
  94. package/build/client/_app/immutable/nodes/{7.BZj0oAjH.js → 7.Bu0PYCkD.js} +1 -1
  95. package/build/client/_app/immutable/nodes/7.Bu0PYCkD.js.br +0 -0
  96. package/build/client/_app/immutable/nodes/7.Bu0PYCkD.js.gz +0 -0
  97. package/build/client/_app/immutable/nodes/{8.CGy_fUC4.js → 8.CzmdM7pu.js} +1 -1
  98. package/build/client/_app/immutable/nodes/8.CzmdM7pu.js.br +0 -0
  99. package/build/client/_app/immutable/nodes/8.CzmdM7pu.js.gz +0 -0
  100. package/build/client/_app/immutable/nodes/{9.BpEiOuN0.js → 9.BogAwqgH.js} +1 -1
  101. package/build/client/_app/immutable/nodes/9.BogAwqgH.js.br +0 -0
  102. package/build/client/_app/immutable/nodes/9.BogAwqgH.js.gz +0 -0
  103. package/build/client/_app/version.json +1 -1
  104. package/build/client/_app/version.json.br +0 -0
  105. package/build/client/_app/version.json.gz +0 -0
  106. package/build/handler.js +4 -4
  107. package/build/index.js +4 -4
  108. package/build/server/chunks/chunks/{access.server.js-D99g5hZd.js → access.server.js-_nJWuQcN.js} +66 -51
  109. package/build/server/chunks/chunks/access.server.js-_nJWuQcN.js.map +1 -0
  110. package/build/server/chunks/chunks/{admin-auth.server.js-hCWF6Pqg.js → admin-auth.server.js-CitjWnKM.js} +53 -31
  111. package/build/server/chunks/chunks/admin-auth.server.js-CitjWnKM.js.map +1 -0
  112. package/build/server/chunks/chunks/{api-errors.js-yRMzxqNi.js → api-errors.js-DlfcfPJs.js} +4 -4
  113. package/build/server/chunks/chunks/{api-errors.js-yRMzxqNi.js.map → api-errors.js-DlfcfPJs.js.map} +1 -1
  114. package/build/server/chunks/chunks/{auth-bootstrap.server.js-BpQr_I_2.js → auth-bootstrap.server.js-S-F5QI4m.js} +3 -3
  115. package/build/server/chunks/chunks/{auth-bootstrap.server.js-BpQr_I_2.js.map → auth-bootstrap.server.js-S-F5QI4m.js.map} +1 -1
  116. package/build/server/chunks/chunks/{bootHealth.server.js-CxNJCaGf.js → bootHealth.server.js-CvLSuL2x.js} +27 -4
  117. package/build/server/chunks/chunks/bootHealth.server.js-CvLSuL2x.js.map +1 -0
  118. package/build/server/chunks/chunks/{clientCache.server.js-nl8vnalG.js → clientCache.server.js-BS8-NdiI.js} +21 -5
  119. package/build/server/chunks/chunks/clientCache.server.js-BS8-NdiI.js.map +1 -0
  120. package/build/server/chunks/chunks/computeLimits.js-CQh4jXlX.js +28 -0
  121. package/build/server/chunks/chunks/computeLimits.js-CQh4jXlX.js.map +1 -0
  122. package/build/server/chunks/chunks/{context.js-D8E0GFTw.js → context.js-DsQGiS2x.js} +4 -1
  123. package/build/server/chunks/chunks/context.js-DsQGiS2x.js.map +1 -0
  124. package/build/server/chunks/chunks/{evictChangedServers.js-AKiDolw-.js → evictChangedServers.js-R3UCE6wP.js} +2 -2
  125. package/build/server/chunks/chunks/{evictChangedServers.js-AKiDolw-.js.map → evictChangedServers.js-R3UCE6wP.js.map} +1 -1
  126. package/build/server/chunks/chunks/{internal2.js-CNimHS8p.js → internal2.js-BBcEKa-m.js} +3 -3
  127. package/build/server/chunks/chunks/{internal2.js-CNimHS8p.js.map → internal2.js-BBcEKa-m.js.map} +1 -1
  128. package/build/server/chunks/chunks/{org-members.server.js-HahiM88D.js → org-members.server.js-DskaqUJo.js} +2 -2
  129. package/build/server/chunks/chunks/{org-members.server.js-HahiM88D.js.map → org-members.server.js-DskaqUJo.js.map} +1 -1
  130. package/build/server/chunks/chunks/{package.js-CGjshiZJ.js → package.js-Cl0z1gce.js} +2 -2
  131. package/build/server/chunks/chunks/package.js-Cl0z1gce.js.map +1 -0
  132. package/build/server/chunks/chunks/{permissions-compat.server.js-BfoBZYSH.js → permissions-compat.server.js-DNsLyriU.js} +2 -2
  133. package/build/server/chunks/chunks/{permissions-compat.server.js-BfoBZYSH.js.map → permissions-compat.server.js-DNsLyriU.js.map} +1 -1
  134. package/build/server/chunks/chunks/{permissions.server.js-B9lpLFEj.js → permissions.server.js-C3_SFjUh.js} +2 -2
  135. package/build/server/chunks/chunks/{permissions.server.js-B9lpLFEj.js.map → permissions.server.js-C3_SFjUh.js.map} +1 -1
  136. package/build/server/chunks/chunks/{providers.server.js-D0hpk-aq.js → providers.server.js-CIHOepKv.js} +152 -34
  137. package/build/server/chunks/chunks/providers.server.js-CIHOepKv.js.map +1 -0
  138. package/build/server/chunks/chunks/redirect.js-1CZ30qn2.js +9 -0
  139. package/build/server/chunks/chunks/redirect.js-1CZ30qn2.js.map +1 -0
  140. package/build/server/chunks/chunks/{resolve.server.js-CtUK_9yC.js → resolve.server.js-Dg1o2vnd.js} +4 -4
  141. package/build/server/chunks/chunks/{resolve.server.js-CtUK_9yC.js.map → resolve.server.js-Dg1o2vnd.js.map} +1 -1
  142. package/build/server/chunks/chunks/selfUpdate.server.js-CXejyqIT.js +109 -0
  143. package/build/server/chunks/chunks/selfUpdate.server.js-CXejyqIT.js.map +1 -0
  144. package/build/server/chunks/chunks/solve-cache-key.js-BIwJfBG9.js +320 -0
  145. package/build/server/chunks/chunks/solve-cache-key.js-BIwJfBG9.js.map +1 -0
  146. package/build/server/chunks/chunks/token-codec.js-1RPNe2RW.js +32 -0
  147. package/build/server/chunks/chunks/token-codec.js-1RPNe2RW.js.map +1 -0
  148. package/build/server/chunks/chunks/{token.server.js-q3fv9Fqo.js → token.server.js-DbTfFk9r.js} +10 -6
  149. package/build/server/chunks/chunks/token.server.js-DbTfFk9r.js.map +1 -0
  150. package/build/server/chunks/chunks/{token2.server.js-Cqw1dJj-.js → token2.server.js-Cjb4XaWC.js} +10 -6
  151. package/build/server/chunks/chunks/token2.server.js-Cjb4XaWC.js.map +1 -0
  152. package/build/server/chunks/chunks/update-outcome.js-mUyfVCnt.js +99 -0
  153. package/build/server/chunks/chunks/update-outcome.js-mUyfVCnt.js.map +1 -0
  154. package/build/server/chunks/chunks/{utils4.js-BRotGwxx.js → utils4.js-8SHxuGTr.js} +2 -2
  155. package/build/server/chunks/chunks/{utils4.js-BRotGwxx.js.map → utils4.js-8SHxuGTr.js.map} +1 -1
  156. package/build/server/chunks/entries/endpoints/admin/api/compute/{_server.ts.js-9SFgd7Dh.js → _server.ts.js-CR_1eCgH.js} +12 -9
  157. package/build/server/chunks/entries/endpoints/admin/api/compute/{_server.ts.js-9SFgd7Dh.js.map → _server.ts.js-CR_1eCgH.js.map} +1 -1
  158. package/build/server/chunks/entries/endpoints/admin/api/compute/actions/{_server.ts.js-nqqXR4_e.js → _server.ts.js-D1UFM_o6.js} +6 -6
  159. package/build/server/chunks/entries/endpoints/admin/api/compute/actions/{_server.ts.js-nqqXR4_e.js.map → _server.ts.js-D1UFM_o6.js.map} +1 -1
  160. package/build/server/chunks/entries/endpoints/admin/api/compute/status/{_server.ts.js-a2K9SJfi.js → _server.ts.js-DdzXkztc.js} +6 -6
  161. package/build/server/chunks/entries/endpoints/admin/api/compute/status/{_server.ts.js-a2K9SJfi.js.map → _server.ts.js-DdzXkztc.js.map} +1 -1
  162. package/build/server/chunks/entries/endpoints/admin/api/orgs/_id_/{_server.ts.js-BAhINzFq.js → _server.ts.js-CqdBKOC6.js} +6 -6
  163. package/build/server/chunks/entries/endpoints/admin/api/orgs/_id_/{_server.ts.js-BAhINzFq.js.map → _server.ts.js-CqdBKOC6.js.map} +1 -1
  164. package/build/server/chunks/entries/endpoints/admin/api/orgs/_id_/assets/_kind_/{_server.ts.js-DYD3g-28.js → _server.ts.js-Bi3NbLd3.js} +11 -7
  165. package/build/server/chunks/entries/endpoints/admin/api/orgs/_id_/assets/_kind_/{_server.ts.js-DYD3g-28.js.map → _server.ts.js-Bi3NbLd3.js.map} +1 -1
  166. package/build/server/chunks/entries/endpoints/admin/api/orgs/{_server.ts.js-PhwONmey.js → _server.ts.js-C3ZwVpyg.js} +6 -6
  167. package/build/server/chunks/entries/endpoints/admin/api/orgs/{_server.ts.js-PhwONmey.js.map → _server.ts.js-C3ZwVpyg.js.map} +1 -1
  168. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/{_server.ts.js-DVXfLqfN.js → _server.ts.js-CAe8T4G6.js} +6 -6
  169. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/{_server.ts.js-DVXfLqfN.js.map → _server.ts.js-CAe8T4G6.js.map} +1 -1
  170. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/grants/_grantId_/{_server.ts.js-C3Gcr9vO.js → _server.ts.js-DHYHT1N8.js} +6 -6
  171. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/grants/_grantId_/{_server.ts.js-C3Gcr9vO.js.map → _server.ts.js-DHYHT1N8.js.map} +1 -1
  172. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/grants/{_server.ts.js-8rwkvJsL.js → _server.ts.js-Cgt7iGfE.js} +6 -6
  173. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/grants/{_server.ts.js-8rwkvJsL.js.map → _server.ts.js-Cgt7iGfE.js.map} +1 -1
  174. package/build/server/chunks/entries/endpoints/admin/api/projects/{_server.ts.js-BTgoWufU.js → _server.ts.js-BFi1Di59.js} +6 -6
  175. package/build/server/chunks/entries/endpoints/admin/api/projects/{_server.ts.js-BTgoWufU.js.map → _server.ts.js-BFi1Di59.js.map} +1 -1
  176. package/build/server/chunks/entries/endpoints/admin/api/system/health/{_server.ts.js-CQdxoaBS.js → _server.ts.js-Br7kd03s.js} +35 -6
  177. package/build/server/chunks/entries/endpoints/admin/api/system/health/_server.ts.js-Br7kd03s.js.map +1 -0
  178. package/build/server/chunks/entries/endpoints/admin/api/system/throughput/{_server.ts.js-DFacQgP7.js → _server.ts.js-ufKMuphM.js} +6 -6
  179. package/build/server/chunks/entries/endpoints/admin/api/system/throughput/{_server.ts.js-DFacQgP7.js.map → _server.ts.js-ufKMuphM.js.map} +1 -1
  180. package/build/server/chunks/entries/endpoints/admin/api/system/update/{_server.ts.js-y3dgQz-R.js → _server.ts.js-D-IGlEji.js} +43 -30
  181. package/build/server/chunks/entries/endpoints/admin/api/system/update/_server.ts.js-D-IGlEji.js.map +1 -0
  182. package/build/server/chunks/entries/endpoints/admin/api/users/_id_/{_server.ts.js-BEGaGEwg.js → _server.ts.js-7Efk1xkU.js} +8 -8
  183. package/build/server/chunks/entries/endpoints/admin/api/users/_id_/{_server.ts.js-BEGaGEwg.js.map → _server.ts.js-7Efk1xkU.js.map} +1 -1
  184. package/build/server/chunks/entries/endpoints/admin/api/users/_id_/disable/{_server.ts.js-CGwcR-7k.js → _server.ts.js-4UrDw7Q3.js} +6 -6
  185. package/build/server/chunks/entries/endpoints/admin/api/users/_id_/disable/{_server.ts.js-CGwcR-7k.js.map → _server.ts.js-4UrDw7Q3.js.map} +1 -1
  186. package/build/server/chunks/entries/endpoints/admin/api/users/{_server.ts.js-D-z-Kl_c.js → _server.ts.js-B9ZWJoST.js} +9 -9
  187. package/build/server/chunks/entries/endpoints/admin/api/users/{_server.ts.js-D-z-Kl_c.js.map → _server.ts.js-B9ZWJoST.js.map} +1 -1
  188. package/build/server/chunks/entries/endpoints/api/compute/{_server.ts.js-DkyT3FO6.js → _server.ts.js-D9qvgnX7.js} +287 -198
  189. package/build/server/chunks/entries/endpoints/api/compute/_server.ts.js-D9qvgnX7.js.map +1 -0
  190. package/build/server/chunks/entries/endpoints/api/compute/schema/{_server.ts.js-BmYC9zZb.js → _server.ts.js-CoS51dOD.js} +12 -8
  191. package/build/server/chunks/entries/endpoints/api/compute/schema/{_server.ts.js-BmYC9zZb.js.map → _server.ts.js-CoS51dOD.js.map} +1 -1
  192. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/{_server.ts.js--cRkjXHi.js → _server.ts.js-D7jS25IN.js} +11 -7
  193. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/{_server.ts.js--cRkjXHi.js.map → _server.ts.js-D7jS25IN.js.map} +1 -1
  194. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/image/_filename_/{_server.ts.js-Dz0exqZ1.js → _server.ts.js-5hlsFhI1.js} +11 -7
  195. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/image/_filename_/{_server.ts.js-Dz0exqZ1.js.map → _server.ts.js-5hlsFhI1.js.map} +1 -1
  196. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/image/{_server.ts.js-CgM8FSl0.js → _server.ts.js-CRMcPOgH.js} +11 -7
  197. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/image/{_server.ts.js-CgM8FSl0.js.map → _server.ts.js-CRMcPOgH.js.map} +1 -1
  198. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/publish/{_server.ts.js-BQX0WanC.js → _server.ts.js-C8-AAq8y.js} +6 -6
  199. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/publish/{_server.ts.js-BQX0WanC.js.map → _server.ts.js-C8-AAq8y.js.map} +1 -1
  200. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/share-links/_linkId_/{_server.ts.js-BsV3i0Cq.js → _server.ts.js-LV0ZGJh9.js} +6 -6
  201. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/share-links/_linkId_/{_server.ts.js-BsV3i0Cq.js.map → _server.ts.js-LV0ZGJh9.js.map} +1 -1
  202. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/share-links/{_server.ts.js-DWFprR5Z.js → _server.ts.js-OUvpfSN4.js} +8 -7
  203. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/share-links/{_server.ts.js-DWFprR5Z.js.map → _server.ts.js-OUvpfSN4.js.map} +1 -1
  204. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/versions/{_server.ts.js-DA3K2FgH.js → _server.ts.js-BJxBKsrU.js} +6 -6
  205. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/versions/{_server.ts.js-DA3K2FgH.js.map → _server.ts.js-BJxBKsrU.js.map} +1 -1
  206. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/versions/_versionId_/{_server.ts.js-SHjs_zm9.js → _server.ts.js-BaHW7TEs.js} +6 -6
  207. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/versions/_versionId_/{_server.ts.js-SHjs_zm9.js.map → _server.ts.js-BaHW7TEs.js.map} +1 -1
  208. package/build/server/chunks/entries/endpoints/api/definitions/{_server.ts.js-ycJ8puIN.js → _server.ts.js-CBMi-KUD.js} +11 -7
  209. package/build/server/chunks/entries/endpoints/api/definitions/{_server.ts.js-ycJ8puIN.js.map → _server.ts.js-CBMi-KUD.js.map} +1 -1
  210. package/build/server/chunks/entries/endpoints/api/diag/throughput/{_server.ts.js-BdF3kn__.js → _server.ts.js-C98KkHLg.js} +5 -5
  211. package/build/server/chunks/entries/endpoints/api/diag/throughput/{_server.ts.js-BdF3kn__.js.map → _server.ts.js-C98KkHLg.js.map} +1 -1
  212. package/build/server/chunks/entries/endpoints/api/files/_...path_/{_server.ts.js-C26jiO43.js → _server.ts.js-CeTV6qVK.js} +6 -6
  213. package/build/server/chunks/entries/endpoints/api/files/_...path_/{_server.ts.js-C26jiO43.js.map → _server.ts.js-CeTV6qVK.js.map} +1 -1
  214. package/build/server/chunks/entries/endpoints/api/health/{_server.ts.js-CoRl_nbA.js → _server.ts.js-7eclLbhJ.js} +4 -4
  215. package/build/server/chunks/entries/endpoints/api/health/{_server.ts.js-CoRl_nbA.js.map → _server.ts.js-7eclLbhJ.js.map} +1 -1
  216. package/build/server/chunks/entries/endpoints/api/invites/_id_/{_server.ts.js-CvAeI7gV.js → _server.ts.js-DNh5594J.js} +6 -6
  217. package/build/server/chunks/entries/endpoints/api/invites/_id_/{_server.ts.js-CvAeI7gV.js.map → _server.ts.js-DNh5594J.js.map} +1 -1
  218. package/build/server/chunks/entries/endpoints/api/invites/{_server.ts.js-Cd0V4sta.js → _server.ts.js-DGKHjtw8.js} +9 -8
  219. package/build/server/chunks/entries/endpoints/api/invites/{_server.ts.js-Cd0V4sta.js.map → _server.ts.js-DGKHjtw8.js.map} +1 -1
  220. package/build/server/chunks/entries/endpoints/api/me/starred/_guid_/{_server.ts.js-BThetmba.js → _server.ts.js-CZ50nT84.js} +5 -5
  221. package/build/server/chunks/entries/endpoints/api/me/starred/_guid_/{_server.ts.js-BThetmba.js.map → _server.ts.js-CZ50nT84.js.map} +1 -1
  222. package/build/server/chunks/entries/endpoints/api/org/compute/{_server.ts.js-B4lGohx2.js → _server.ts.js-Bf1qSz52.js} +12 -9
  223. package/build/server/chunks/entries/endpoints/api/org/compute/_server.ts.js-Bf1qSz52.js.map +1 -0
  224. package/build/server/chunks/entries/endpoints/api/orgs/_orgId_/members/_userId_/{_server.ts.js-BcW-ZH-q.js → _server.ts.js-8PZedKem.js} +6 -6
  225. package/build/server/chunks/entries/endpoints/api/orgs/_orgId_/members/_userId_/{_server.ts.js-BcW-ZH-q.js.map → _server.ts.js-8PZedKem.js.map} +1 -1
  226. package/build/server/chunks/entries/endpoints/api/projects/_id_/{_server.ts.js-bIB33ABF.js → _server.ts.js-C6v2wqYB.js} +6 -6
  227. package/build/server/chunks/entries/endpoints/api/projects/_id_/{_server.ts.js-bIB33ABF.js.map → _server.ts.js-C6v2wqYB.js.map} +1 -1
  228. package/build/server/chunks/entries/endpoints/api/projects/_id_/members/{_server.ts.js-B1AwpUGi.js → _server.ts.js-B3WPTw6C.js} +6 -6
  229. package/build/server/chunks/entries/endpoints/api/projects/_id_/members/{_server.ts.js-B1AwpUGi.js.map → _server.ts.js-B3WPTw6C.js.map} +1 -1
  230. package/build/server/chunks/entries/endpoints/api/projects/_id_/members/_userId_/{_server.ts.js-DMl495J4.js → _server.ts.js-CY3ngc5p.js} +6 -6
  231. package/build/server/chunks/entries/endpoints/api/projects/_id_/members/_userId_/{_server.ts.js-DMl495J4.js.map → _server.ts.js-CY3ngc5p.js.map} +1 -1
  232. package/build/server/chunks/entries/endpoints/api/projects/_id_/reclaim/{_server.ts.js-DFJbS6RF.js → _server.ts.js-DMAeVu3R.js} +6 -6
  233. package/build/server/chunks/entries/endpoints/api/projects/_id_/reclaim/{_server.ts.js-DFJbS6RF.js.map → _server.ts.js-DMAeVu3R.js.map} +1 -1
  234. package/build/server/chunks/entries/endpoints/api/projects/{_server.ts.js-Gcc5eHXJ.js → _server.ts.js-D32BzObk.js} +6 -6
  235. package/build/server/chunks/entries/endpoints/api/projects/{_server.ts.js-Gcc5eHXJ.js.map → _server.ts.js-D32BzObk.js.map} +1 -1
  236. package/build/server/chunks/entries/endpoints/auth/email/callback/{_server.ts.js-B7kvAKyV.js → _server.ts.js-DREl2Sbq.js} +12 -7
  237. package/build/server/chunks/entries/endpoints/auth/email/callback/_server.ts.js-DREl2Sbq.js.map +1 -0
  238. package/build/server/chunks/entries/endpoints/auth/supabase/callback/{_server.ts.js-3yXXN2SO.js → _server.ts.js-CmIWOQ81.js} +12 -7
  239. package/build/server/chunks/entries/endpoints/auth/supabase/callback/_server.ts.js-CmIWOQ81.js.map +1 -0
  240. package/build/server/chunks/entries/endpoints/auth/supabase/start/{_server.ts.js-1z1P1Ihi.js → _server.ts.js-D0O8rZwg.js} +5 -5
  241. package/build/server/chunks/entries/endpoints/auth/supabase/start/{_server.ts.js-1z1P1Ihi.js.map → _server.ts.js-D0O8rZwg.js.map} +1 -1
  242. package/build/server/chunks/entries/{hooks.server.js-OUXv4_qA.js → hooks.server.js-DSn6v_nP.js} +88 -40
  243. package/build/server/chunks/entries/hooks.server.js-DSn6v_nP.js.map +1 -0
  244. package/build/server/chunks/entries/pages/{_layout.server.ts.js-Cu7ejVMb.js → _layout.server.ts.js-Cts38lSM.js} +2 -2
  245. package/build/server/chunks/entries/pages/{_layout.server.ts.js-Cu7ejVMb.js.map → _layout.server.ts.js-Cts38lSM.js.map} +1 -1
  246. package/build/server/chunks/entries/pages/accept-invite/{_page.server.ts.js-koO2loGE.js → _page.server.ts.js-BIr1NoEK.js} +5 -5
  247. package/build/server/chunks/entries/pages/accept-invite/{_page.server.ts.js-koO2loGE.js.map → _page.server.ts.js-BIr1NoEK.js.map} +1 -1
  248. package/build/server/chunks/entries/pages/admin/{_layout.server.ts.js-BcS7EPWJ.js → _layout.server.ts.js-DjB5P2N0.js} +3 -3
  249. package/build/server/chunks/entries/pages/admin/{_layout.server.ts.js-BcS7EPWJ.js.map → _layout.server.ts.js-DjB5P2N0.js.map} +1 -1
  250. package/build/server/chunks/entries/pages/admin/{_page.server.ts.js-ColpdHsj.js → _page.server.ts.js-DMawiAOU.js} +4 -4
  251. package/build/server/chunks/entries/pages/admin/{_page.server.ts.js-ColpdHsj.js.map → _page.server.ts.js-DMawiAOU.js.map} +1 -1
  252. package/build/server/chunks/entries/pages/admin/audit/{_page.server.ts.js-pm9fJjcH.js → _page.server.ts.js-CJie_AQe.js} +14 -5
  253. package/build/server/chunks/entries/pages/admin/audit/_page.server.ts.js-CJie_AQe.js.map +1 -0
  254. package/build/server/chunks/entries/pages/admin/audit/{_page.svelte.js-smQE9KlB.js → _page.svelte.js-B3TE0-_a.js} +6 -2
  255. package/build/server/chunks/entries/pages/admin/audit/_page.svelte.js-B3TE0-_a.js.map +1 -0
  256. package/build/server/chunks/entries/pages/admin/compute/{_page.server.ts.js-btPxjqx4.js → _page.server.ts.js-DJI-BqLn.js} +5 -5
  257. package/build/server/chunks/entries/pages/admin/compute/{_page.server.ts.js-btPxjqx4.js.map → _page.server.ts.js-DJI-BqLn.js.map} +1 -1
  258. package/build/server/chunks/entries/pages/admin/organizations/{_page.server.ts.js-CQSWGW0Y.js → _page.server.ts.js-DRZlByRc.js} +3 -3
  259. package/build/server/chunks/entries/pages/admin/organizations/{_page.server.ts.js-CQSWGW0Y.js.map → _page.server.ts.js-DRZlByRc.js.map} +1 -1
  260. package/build/server/chunks/entries/pages/admin/projects/_id_/{_page.server.ts.js-DWObSxSO.js → _page.server.ts.js-cnc8alqe.js} +9 -7
  261. package/build/server/chunks/entries/pages/admin/projects/_id_/_page.server.ts.js-cnc8alqe.js.map +1 -0
  262. package/build/server/chunks/entries/pages/admin/projects/{_page.server.ts.js-BSYX7hSD.js → _page.server.ts.js-7suWtJxu.js} +3 -3
  263. package/build/server/chunks/entries/pages/admin/projects/{_page.server.ts.js-BSYX7hSD.js.map → _page.server.ts.js-7suWtJxu.js.map} +1 -1
  264. package/build/server/chunks/entries/pages/admin/system/{_page.server.ts.js-DFA57irm.js → _page.server.ts.js-C0ZdK8vU.js} +6 -6
  265. package/build/server/chunks/entries/pages/admin/system/{_page.server.ts.js-DFA57irm.js.map → _page.server.ts.js-C0ZdK8vU.js.map} +1 -1
  266. package/build/server/chunks/entries/pages/admin/system/{_page.svelte.js-D4Z-BGD2.js → _page.svelte.js-CqNLFuOZ.js} +2 -97
  267. package/build/server/chunks/entries/pages/admin/system/_page.svelte.js-CqNLFuOZ.js.map +1 -0
  268. package/build/server/chunks/entries/pages/admin/users/{_page.server.ts.js-B0s6jSPs.js → _page.server.ts.js-C1LiUNB_.js} +5 -5
  269. package/build/server/chunks/entries/pages/admin/users/{_page.server.ts.js-B0s6jSPs.js.map → _page.server.ts.js-C1LiUNB_.js.map} +1 -1
  270. package/build/server/chunks/entries/pages/admin/users/{_page.svelte.js-CO0kHa1b.js → _page.svelte.js-C-jy08cJ.js} +2 -2
  271. package/build/server/chunks/entries/pages/admin/users/{_page.svelte.js-CO0kHa1b.js.map → _page.svelte.js-C-jy08cJ.js.map} +1 -1
  272. package/build/server/chunks/entries/pages/auth/email/start/{_page.server.ts.js-F8fXU2YV.js → _page.server.ts.js-Bf5aciLN.js} +4 -3
  273. package/build/server/chunks/entries/pages/auth/email/start/_page.server.ts.js-Bf5aciLN.js.map +1 -0
  274. package/build/server/chunks/entries/pages/library/_guid_/{_page.server.ts.js-BXXiZbrJ.js → _page.server.ts.js-Cd1cMb0M.js} +9 -9
  275. package/build/server/chunks/entries/pages/library/_guid_/{_page.server.ts.js-BXXiZbrJ.js.map → _page.server.ts.js-Cd1cMb0M.js.map} +1 -1
  276. package/build/server/chunks/entries/pages/library/_guid_/{_page.svelte.js-BpEnQ79H.js → _page.svelte.js-BHPELPpI.js} +53 -1
  277. package/build/server/chunks/entries/pages/library/_guid_/{_page.svelte.js-BpEnQ79H.js.map → _page.svelte.js-BHPELPpI.js.map} +1 -1
  278. package/build/server/chunks/entries/pages/library/{_page.server.ts.js-CNsQMZl_.js → _page.server.ts.js-CkNgTDfl.js} +4 -4
  279. package/build/server/chunks/entries/pages/library/{_page.server.ts.js-CNsQMZl_.js.map → _page.server.ts.js-CkNgTDfl.js.map} +1 -1
  280. package/build/server/chunks/entries/pages/login/{_page.server.ts.js-DLtWh9lt.js → _page.server.ts.js-BM0BZFoZ.js} +4 -3
  281. package/build/server/chunks/entries/pages/login/_page.server.ts.js-BM0BZFoZ.js.map +1 -0
  282. package/build/server/chunks/entries/pages/logout/{_page.server.ts.js-DbaORCjB.js → _page.server.ts.js-Cc1BjCbc.js} +2 -2
  283. package/build/server/chunks/entries/pages/logout/{_page.server.ts.js-DbaORCjB.js.map → _page.server.ts.js-Cc1BjCbc.js.map} +1 -1
  284. package/build/server/chunks/entries/pages/projects/{_layout.server.ts.js-CNMJpFAK.js → _layout.server.ts.js-DuJkKJcb.js} +2 -2
  285. package/build/server/chunks/entries/pages/projects/{_layout.server.ts.js-CNMJpFAK.js.map → _layout.server.ts.js-DuJkKJcb.js.map} +1 -1
  286. package/build/server/chunks/entries/pages/projects/{_page.server.ts.js-BPAfS2yX.js → _page.server.ts.js-6JTf7XX0.js} +5 -5
  287. package/build/server/chunks/entries/pages/projects/{_page.server.ts.js-BPAfS2yX.js.map → _page.server.ts.js-6JTf7XX0.js.map} +1 -1
  288. package/build/server/chunks/entries/pages/projects/{_page.svelte.js-nQ9Uj1kK.js → _page.svelte.js-DVU6xc3i.js} +30 -4
  289. package/build/server/chunks/entries/pages/projects/_page.svelte.js-DVU6xc3i.js.map +1 -0
  290. package/build/server/chunks/entries/pages/setup/{_page.server.ts.js-DmwzD-qo.js → _page.server.ts.js-CAIQvVcR.js} +5 -5
  291. package/build/server/chunks/entries/pages/setup/{_page.server.ts.js-DmwzD-qo.js.map → _page.server.ts.js-CAIQvVcR.js.map} +1 -1
  292. package/build/server/chunks/entries/pages/team/{_layout.server.ts.js-Bm1MwrYZ.js → _layout.server.ts.js-CBM_iY4T.js} +2 -2
  293. package/build/server/chunks/entries/pages/team/{_layout.server.ts.js-Bm1MwrYZ.js.map → _layout.server.ts.js-CBM_iY4T.js.map} +1 -1
  294. package/build/server/chunks/entries/pages/team/{_page.server.ts.js-DjFIDiK1.js → _page.server.ts.js-Pf-MSXv0.js} +2 -2
  295. package/build/server/chunks/entries/pages/team/{_page.server.ts.js-DjFIDiK1.js.map → _page.server.ts.js-Pf-MSXv0.js.map} +1 -1
  296. package/build/server/chunks/entries/pages/team/compute/{_page.server.ts.js-B331KcmA.js → _page.server.ts.js-CR-ddKJ4.js} +4 -4
  297. package/build/server/chunks/entries/pages/team/compute/{_page.server.ts.js-B331KcmA.js.map → _page.server.ts.js-CR-ddKJ4.js.map} +1 -1
  298. package/build/server/chunks/entries/pages/team/members/{_page.server.ts.js-lSFTK3rq.js → _page.server.ts.js-DCQ0yy-F.js} +3 -3
  299. package/build/server/chunks/entries/pages/team/members/{_page.server.ts.js-lSFTK3rq.js.map → _page.server.ts.js-DCQ0yy-F.js.map} +1 -1
  300. package/build/server/chunks/entries/pages/team/members/{_page.svelte.js-C70N76b0.js → _page.svelte.js-DVOfVzGn.js} +2 -2
  301. package/build/server/chunks/entries/pages/team/members/{_page.svelte.js-C70N76b0.js.map → _page.svelte.js-DVOfVzGn.js.map} +1 -1
  302. package/build/server/chunks/entries/pages/team/projects/{_page.server.ts.js-CFZGG_Ci.js → _page.server.ts.js-FUxzp5PC.js} +3 -3
  303. package/build/server/chunks/entries/pages/team/projects/{_page.server.ts.js-CFZGG_Ci.js.map → _page.server.ts.js-FUxzp5PC.js.map} +1 -1
  304. package/build/server/chunks/entries/pages/team/reclaim/{_page.server.ts.js-AFrlbBl8.js → _page.server.ts.js-Btcar0yP.js} +3 -3
  305. package/build/server/chunks/entries/pages/team/reclaim/{_page.server.ts.js-AFrlbBl8.js.map → _page.server.ts.js-Btcar0yP.js.map} +1 -1
  306. package/build/server/chunks/entries/pages/team/settings/{_page.server.ts.js-BbKtggo9.js → _page.server.ts.js-CS5FLYXE.js} +3 -3
  307. package/build/server/chunks/entries/pages/team/settings/{_page.server.ts.js-BbKtggo9.js.map → _page.server.ts.js-CS5FLYXE.js.map} +1 -1
  308. package/build/server/chunks/entries/pages/team/shares/{_page.server.ts.js-B0XsHyzb.js → _page.server.ts.js-B1QqNYRo.js} +2 -2
  309. package/build/server/chunks/entries/pages/team/shares/{_page.server.ts.js-B0XsHyzb.js.map → _page.server.ts.js-B1QqNYRo.js.map} +1 -1
  310. package/build/server/chunks/{handler-BVoIPaUa.js → handler-CiXlY3wu.js} +3 -3
  311. package/build/server/chunks/{handler-BVoIPaUa.js.map → handler-CiXlY3wu.js.map} +1 -1
  312. package/build/server/chunks/{index.js-hj4o2h8q.js → index.js-CfdDzNmO.js} +2 -2
  313. package/build/server/chunks/{index.js-hj4o2h8q.js.map → index.js-CfdDzNmO.js.map} +1 -1
  314. package/build/server/chunks/{manifest.js-BIVs9dfJ.js → manifest.js-DZ6WZ-WA.js} +76 -76
  315. package/build/server/chunks/{manifest.js-BIVs9dfJ.js.map → manifest.js-DZ6WZ-WA.js.map} +1 -1
  316. package/build/server/chunks/nodes/{0.js-OxxVvycM.js → 0.js-BMoQIPmA.js} +4 -4
  317. package/build/server/chunks/nodes/{0.js-OxxVvycM.js.map → 0.js-BMoQIPmA.js.map} +1 -1
  318. package/build/server/chunks/nodes/{1.js-Bs6uvYbc.js → 1.js-Cm5AdicB.js} +2 -2
  319. package/build/server/chunks/nodes/{1.js-Bs6uvYbc.js.map → 1.js-Cm5AdicB.js.map} +1 -1
  320. package/build/server/chunks/nodes/{10.js-CvIgMW7D.js → 10.js-BNCwQwZV.js} +9 -9
  321. package/build/server/chunks/nodes/{10.js-CvIgMW7D.js.map → 10.js-BNCwQwZV.js.map} +1 -1
  322. package/build/server/chunks/nodes/{11.js-CnBjS7-t.js → 11.js-DkWLgBVg.js} +8 -8
  323. package/build/server/chunks/nodes/{11.js-CnBjS7-t.js.map → 11.js-DkWLgBVg.js.map} +1 -1
  324. package/build/server/chunks/nodes/{12.js-Dq_XopIA.js → 12.js-kNjmUDDo.js} +4 -4
  325. package/build/server/chunks/nodes/{12.js-Dq_XopIA.js.map → 12.js-kNjmUDDo.js.map} +1 -1
  326. package/build/server/chunks/nodes/{13.js-CqZCtg80.js → 13.js-jNBOb5Ni.js} +5 -5
  327. package/build/server/chunks/nodes/{13.js-CqZCtg80.js.map → 13.js-jNBOb5Ni.js.map} +1 -1
  328. package/build/server/chunks/nodes/{14.js-OvULgcZx.js → 14.js-jkWhR5ra.js} +5 -5
  329. package/build/server/chunks/nodes/{14.js-OvULgcZx.js.map → 14.js-jkWhR5ra.js.map} +1 -1
  330. package/build/server/chunks/nodes/{15.js-3rOev7kG.js → 15.js-Bh0tBhZ6.js} +15 -11
  331. package/build/server/chunks/nodes/{15.js-3rOev7kG.js.map → 15.js-Bh0tBhZ6.js.map} +1 -1
  332. package/build/server/chunks/nodes/{16.js-DY4bmQK_.js → 16.js-BjSvS7x7.js} +11 -11
  333. package/build/server/chunks/nodes/{16.js-DY4bmQK_.js.map → 16.js-BjSvS7x7.js.map} +1 -1
  334. package/build/server/chunks/nodes/{17.js-DzcgsMqq.js → 17.js-CVAlNLd1.js} +2 -2
  335. package/build/server/chunks/nodes/{17.js-DzcgsMqq.js.map → 17.js-CVAlNLd1.js.map} +1 -1
  336. package/build/server/chunks/nodes/{18.js-C3GcE50R.js → 18.js-m1EmD7J9.js} +10 -5
  337. package/build/server/chunks/nodes/{18.js-C3GcE50R.js.map → 18.js-m1EmD7J9.js.map} +1 -1
  338. package/build/server/chunks/nodes/{19.js-4ei3NRJW.js → 19.js-Cvq4wk_v.js} +8 -8
  339. package/build/server/chunks/nodes/{19.js-4ei3NRJW.js.map → 19.js-Cvq4wk_v.js.map} +1 -1
  340. package/build/server/chunks/nodes/{2.js-BhhMlQQP.js → 2.js-_j2qbJf6.js} +8 -8
  341. package/build/server/chunks/nodes/{2.js-BhhMlQQP.js.map → 2.js-_j2qbJf6.js.map} +1 -1
  342. package/build/server/chunks/nodes/{20.js-BQZue73m.js → 20.js-BjgFHK82.js} +17 -13
  343. package/build/server/chunks/nodes/{20.js-BQZue73m.js.map → 20.js-BjgFHK82.js.map} +1 -1
  344. package/build/server/chunks/nodes/{21.js-BAkAIvfV.js → 21.js-C3u9VeIP.js} +12 -7
  345. package/build/server/chunks/nodes/{21.js-BAkAIvfV.js.map → 21.js-C3u9VeIP.js.map} +1 -1
  346. package/build/server/chunks/nodes/{22.js-d354Ho4z.js → 22.js-3vW3ZPjE.js} +8 -3
  347. package/build/server/chunks/nodes/{22.js-d354Ho4z.js.map → 22.js-3vW3ZPjE.js.map} +1 -1
  348. package/build/server/chunks/nodes/{23.js-BMNUZekw.js → 23.js-h3AKg2Bd.js} +9 -9
  349. package/build/server/chunks/nodes/{23.js-BMNUZekw.js.map → 23.js-h3AKg2Bd.js.map} +1 -1
  350. package/build/server/chunks/nodes/{24.js-BGD-JCcE.js → 24.js-DcfMC0S6.js} +11 -7
  351. package/build/server/chunks/nodes/{24.js-BGD-JCcE.js.map → 24.js-DcfMC0S6.js.map} +1 -1
  352. package/build/server/chunks/nodes/{25.js-BqxnZYdq.js → 25.js-B8F-WcNH.js} +4 -4
  353. package/build/server/chunks/nodes/{25.js-BqxnZYdq.js.map → 25.js-B8F-WcNH.js.map} +1 -1
  354. package/build/server/chunks/nodes/{27.js-Bpas2N07.js → 27.js-DmjAkuen.js} +6 -6
  355. package/build/server/chunks/nodes/{27.js-Bpas2N07.js.map → 27.js-DmjAkuen.js.map} +1 -1
  356. package/build/server/chunks/nodes/{28.js-CzzcTWyj.js → 28.js-B7Rf1M8l.js} +6 -6
  357. package/build/server/chunks/nodes/{28.js-CzzcTWyj.js.map → 28.js-B7Rf1M8l.js.map} +1 -1
  358. package/build/server/chunks/nodes/{29.js-D-yU37B7.js → 29.js-DFPsK4BF.js} +5 -5
  359. package/build/server/chunks/nodes/{29.js-D-yU37B7.js.map → 29.js-DFPsK4BF.js.map} +1 -1
  360. package/build/server/chunks/nodes/{3.js-Cz9pT7ce.js → 3.js-DEDKRIYO.js} +2 -2
  361. package/build/server/chunks/nodes/{3.js-Cz9pT7ce.js.map → 3.js-DEDKRIYO.js.map} +1 -1
  362. package/build/server/chunks/nodes/{30.js-CTnqbIs1.js → 30.js-B17mHAaN.js} +5 -5
  363. package/build/server/chunks/nodes/{30.js-CTnqbIs1.js.map → 30.js-B17mHAaN.js.map} +1 -1
  364. package/build/server/chunks/nodes/{31.js-BzVXDu0q.js → 31.js-g3F8A8P0.js} +4 -4
  365. package/build/server/chunks/nodes/{31.js-BzVXDu0q.js.map → 31.js-g3F8A8P0.js.map} +1 -1
  366. package/build/server/chunks/nodes/{32.js-D5n6ZsDK.js → 32.js-1VSkrG-2.js} +4 -4
  367. package/build/server/chunks/nodes/{32.js-D5n6ZsDK.js.map → 32.js-1VSkrG-2.js.map} +1 -1
  368. package/build/server/chunks/nodes/{5.js-BJ8b3aNu.js → 5.js-BvHhhp_p.js} +4 -4
  369. package/build/server/chunks/nodes/{5.js-BJ8b3aNu.js.map → 5.js-BvHhhp_p.js.map} +1 -1
  370. package/build/server/chunks/nodes/{6.js-BUe0tZCB.js → 6.js-BHejxveY.js} +5 -5
  371. package/build/server/chunks/nodes/{6.js-BUe0tZCB.js.map → 6.js-BHejxveY.js.map} +1 -1
  372. package/build/server/chunks/nodes/{7.js-Bo7bTIfx.js → 7.js-CV5qjTXV.js} +2 -2
  373. package/build/server/chunks/nodes/{7.js-Bo7bTIfx.js.map → 7.js-CV5qjTXV.js.map} +1 -1
  374. package/build/server/chunks/nodes/{8.js-C6iVKn1o.js → 8.js-jhS48nhZ.js} +12 -7
  375. package/build/server/chunks/nodes/{8.js-C6iVKn1o.js.map → 8.js-jhS48nhZ.js.map} +1 -1
  376. package/build/server/chunks/nodes/{9.js-DPMqw-Dj.js → 9.js-27g91Gox.js} +6 -6
  377. package/build/server/chunks/nodes/{9.js-DPMqw-Dj.js.map → 9.js-27g91Gox.js.map} +1 -1
  378. package/package.json +4 -4
  379. package/templates/.env.example +57 -0
  380. package/build/client/_app/immutable/chunks/B2u4e1Y9.js.br +0 -0
  381. package/build/client/_app/immutable/chunks/B2u4e1Y9.js.gz +0 -0
  382. package/build/client/_app/immutable/chunks/BRbaYEL5.js.br +0 -0
  383. package/build/client/_app/immutable/chunks/BRbaYEL5.js.gz +0 -0
  384. package/build/client/_app/immutable/chunks/COYKudi0.js.br +0 -0
  385. package/build/client/_app/immutable/chunks/COYKudi0.js.gz +0 -0
  386. package/build/client/_app/immutable/chunks/CYwmPsLn.js.br +0 -0
  387. package/build/client/_app/immutable/chunks/CYwmPsLn.js.gz +0 -0
  388. package/build/client/_app/immutable/chunks/CxPY7Obc.js +0 -2
  389. package/build/client/_app/immutable/chunks/CxPY7Obc.js.br +0 -0
  390. package/build/client/_app/immutable/chunks/CxPY7Obc.js.gz +0 -0
  391. package/build/client/_app/immutable/chunks/I2TM0do6.js.br +0 -0
  392. package/build/client/_app/immutable/chunks/I2TM0do6.js.gz +0 -0
  393. package/build/client/_app/immutable/chunks/IUqeb3TJ.js +0 -2
  394. package/build/client/_app/immutable/chunks/IUqeb3TJ.js.br +0 -0
  395. package/build/client/_app/immutable/chunks/IUqeb3TJ.js.gz +0 -0
  396. package/build/client/_app/immutable/chunks/zOoVG74V.js.br +0 -0
  397. package/build/client/_app/immutable/chunks/zOoVG74V.js.gz +0 -0
  398. package/build/client/_app/immutable/entry/app.CRaXT8K-.js.br +0 -0
  399. package/build/client/_app/immutable/entry/app.CRaXT8K-.js.gz +0 -0
  400. package/build/client/_app/immutable/entry/start.DuKqaS_0.js +0 -1
  401. package/build/client/_app/immutable/entry/start.DuKqaS_0.js.br +0 -0
  402. package/build/client/_app/immutable/entry/start.DuKqaS_0.js.gz +0 -0
  403. package/build/client/_app/immutable/nodes/1.DPMP9Es7.js.br +0 -0
  404. package/build/client/_app/immutable/nodes/1.DPMP9Es7.js.gz +0 -0
  405. package/build/client/_app/immutable/nodes/10.DMJdbPyC.js +0 -3
  406. package/build/client/_app/immutable/nodes/10.DMJdbPyC.js.br +0 -0
  407. package/build/client/_app/immutable/nodes/10.DMJdbPyC.js.gz +0 -0
  408. package/build/client/_app/immutable/nodes/11.BxhrIetk.js.br +0 -0
  409. package/build/client/_app/immutable/nodes/11.BxhrIetk.js.gz +0 -0
  410. package/build/client/_app/immutable/nodes/13.bzJyaCKt.js.br +0 -0
  411. package/build/client/_app/immutable/nodes/13.bzJyaCKt.js.gz +0 -0
  412. package/build/client/_app/immutable/nodes/14.XVGDZn7V.js.br +0 -0
  413. package/build/client/_app/immutable/nodes/14.XVGDZn7V.js.gz +0 -0
  414. package/build/client/_app/immutable/nodes/15.Ds7J6ry6.js.br +0 -0
  415. package/build/client/_app/immutable/nodes/15.Ds7J6ry6.js.gz +0 -0
  416. package/build/client/_app/immutable/nodes/16.C6HKDHv3.js.br +0 -0
  417. package/build/client/_app/immutable/nodes/16.C6HKDHv3.js.gz +0 -0
  418. package/build/client/_app/immutable/nodes/17.BxjH0QZF.js.br +0 -0
  419. package/build/client/_app/immutable/nodes/17.BxjH0QZF.js.gz +0 -0
  420. package/build/client/_app/immutable/nodes/19.BU2Lw57i.js.br +0 -0
  421. package/build/client/_app/immutable/nodes/19.BU2Lw57i.js.gz +0 -0
  422. package/build/client/_app/immutable/nodes/2.D9dN-poH.js.br +0 -0
  423. package/build/client/_app/immutable/nodes/2.D9dN-poH.js.gz +0 -0
  424. package/build/client/_app/immutable/nodes/20.BIo_tnO_.js +0 -5021
  425. package/build/client/_app/immutable/nodes/20.BIo_tnO_.js.br +0 -0
  426. package/build/client/_app/immutable/nodes/20.BIo_tnO_.js.gz +0 -0
  427. package/build/client/_app/immutable/nodes/21.qpo7v5r_.js.br +0 -0
  428. package/build/client/_app/immutable/nodes/21.qpo7v5r_.js.gz +0 -0
  429. package/build/client/_app/immutable/nodes/23.CdjZcdrJ.js +0 -16
  430. package/build/client/_app/immutable/nodes/23.CdjZcdrJ.js.br +0 -0
  431. package/build/client/_app/immutable/nodes/23.CdjZcdrJ.js.gz +0 -0
  432. package/build/client/_app/immutable/nodes/24.BSJH1lHT.js.br +0 -0
  433. package/build/client/_app/immutable/nodes/24.BSJH1lHT.js.gz +0 -0
  434. package/build/client/_app/immutable/nodes/27.BKQucFUA.js.br +0 -0
  435. package/build/client/_app/immutable/nodes/27.BKQucFUA.js.gz +0 -0
  436. package/build/client/_app/immutable/nodes/28.BleEhT0J.js.br +0 -0
  437. package/build/client/_app/immutable/nodes/28.BleEhT0J.js.gz +0 -0
  438. package/build/client/_app/immutable/nodes/29.fAbDo5Et.js.br +0 -0
  439. package/build/client/_app/immutable/nodes/29.fAbDo5Et.js.gz +0 -0
  440. package/build/client/_app/immutable/nodes/3.XubMG-dn.js.br +0 -0
  441. package/build/client/_app/immutable/nodes/3.XubMG-dn.js.gz +0 -0
  442. package/build/client/_app/immutable/nodes/30.DRrc_hLr.js.br +0 -0
  443. package/build/client/_app/immutable/nodes/30.DRrc_hLr.js.gz +0 -0
  444. package/build/client/_app/immutable/nodes/5.C77UuNpH.js.br +0 -1
  445. package/build/client/_app/immutable/nodes/5.C77UuNpH.js.gz +0 -0
  446. package/build/client/_app/immutable/nodes/6.B23L8hA_.js.br +0 -0
  447. package/build/client/_app/immutable/nodes/6.B23L8hA_.js.gz +0 -0
  448. package/build/client/_app/immutable/nodes/7.BZj0oAjH.js.br +0 -0
  449. package/build/client/_app/immutable/nodes/7.BZj0oAjH.js.gz +0 -0
  450. package/build/client/_app/immutable/nodes/8.CGy_fUC4.js.br +0 -0
  451. package/build/client/_app/immutable/nodes/8.CGy_fUC4.js.gz +0 -0
  452. package/build/client/_app/immutable/nodes/9.BpEiOuN0.js.br +0 -0
  453. package/build/client/_app/immutable/nodes/9.BpEiOuN0.js.gz +0 -0
  454. package/build/server/chunks/chunks/access.server.js-D99g5hZd.js.map +0 -1
  455. package/build/server/chunks/chunks/admin-auth.server.js-hCWF6Pqg.js.map +0 -1
  456. package/build/server/chunks/chunks/bootHealth.server.js-CxNJCaGf.js.map +0 -1
  457. package/build/server/chunks/chunks/clientCache.server.js-nl8vnalG.js.map +0 -1
  458. package/build/server/chunks/chunks/computeLimits.js-C5c7HPGJ.js +0 -20
  459. package/build/server/chunks/chunks/computeLimits.js-C5c7HPGJ.js.map +0 -1
  460. package/build/server/chunks/chunks/context.js-D8E0GFTw.js.map +0 -1
  461. package/build/server/chunks/chunks/package.js-CGjshiZJ.js.map +0 -1
  462. package/build/server/chunks/chunks/providers.server.js-D0hpk-aq.js.map +0 -1
  463. package/build/server/chunks/chunks/token.server.js-q3fv9Fqo.js.map +0 -1
  464. package/build/server/chunks/chunks/token2.server.js-Cqw1dJj-.js.map +0 -1
  465. package/build/server/chunks/entries/endpoints/admin/api/system/health/_server.ts.js-CQdxoaBS.js.map +0 -1
  466. package/build/server/chunks/entries/endpoints/admin/api/system/update/_server.ts.js-y3dgQz-R.js.map +0 -1
  467. package/build/server/chunks/entries/endpoints/api/compute/_server.ts.js-DkyT3FO6.js.map +0 -1
  468. package/build/server/chunks/entries/endpoints/api/org/compute/_server.ts.js-B4lGohx2.js.map +0 -1
  469. package/build/server/chunks/entries/endpoints/auth/email/callback/_server.ts.js-B7kvAKyV.js.map +0 -1
  470. package/build/server/chunks/entries/endpoints/auth/supabase/callback/_server.ts.js-3yXXN2SO.js.map +0 -1
  471. package/build/server/chunks/entries/hooks.server.js-OUXv4_qA.js.map +0 -1
  472. package/build/server/chunks/entries/pages/admin/audit/_page.server.ts.js-pm9fJjcH.js.map +0 -1
  473. package/build/server/chunks/entries/pages/admin/audit/_page.svelte.js-smQE9KlB.js.map +0 -1
  474. package/build/server/chunks/entries/pages/admin/projects/_id_/_page.server.ts.js-DWObSxSO.js.map +0 -1
  475. package/build/server/chunks/entries/pages/admin/system/_page.svelte.js-D4Z-BGD2.js.map +0 -1
  476. package/build/server/chunks/entries/pages/auth/email/start/_page.server.ts.js-F8fXU2YV.js.map +0 -1
  477. package/build/server/chunks/entries/pages/login/_page.server.ts.js-DLtWh9lt.js.map +0 -1
  478. package/build/server/chunks/entries/pages/projects/_page.svelte.js-nQ9Uj1kK.js.map +0 -1
@@ -1,5 +1,5 @@
1
1
  import { b as private_env } from './shared-server.js-DaWdgxVh.js';
2
- import { c as classifyAssetPath, D as DEFAULT_ORG_PERMISSIONS, S as SYSTEM_CONTEXT, h as hasPermission, P as PlatformPermissionSchema } from './context.js-D8E0GFTw.js';
2
+ import { A as ALL_PLATFORM_PERMISSIONS, c as classifyAssetPath, D as DEFAULT_ORG_PERMISSIONS, S as SYSTEM_CONTEXT, h as hasPermission } from './context.js-DsQGiS2x.js';
3
3
  import { pathToFileURL } from 'node:url';
4
4
  import * as path from 'node:path';
5
5
  import { resolve } from 'node:path';
@@ -155,6 +155,16 @@ function readPositiveInt(env, name, fallback) {
155
155
  }
156
156
  return Math.floor(parsed);
157
157
  }
158
+ function readNonNegativeInt(env, name, fallback) {
159
+ const raw = env[name];
160
+ if (!raw) return fallback;
161
+ const parsed = Number(raw);
162
+ if (!Number.isFinite(parsed) || parsed < 0) {
163
+ console.warn(`[selva] Invalid ${name}=${raw}, falling back to ${fallback}`);
164
+ return fallback;
165
+ }
166
+ return Math.floor(parsed);
167
+ }
158
168
  function readBool(env, name, fallback) {
159
169
  const raw = env[name];
160
170
  if (raw == null || raw === "") return fallback;
@@ -184,7 +194,24 @@ function resolveComputeLimits(env) {
184
194
  definitionCacheTtlMs: readPositiveInt(env, "DEFINITION_CACHE_TTL_MS", 5 * 60 * 1e3),
185
195
  computeReuseDefinitionCache: readBool(env, "COMPUTE_REUSE_DEFINITION_CACHE", true),
186
196
  computeServerCachesolve: readBool(env, "COMPUTE_SERVER_CACHESOLVE", true),
187
- computeCacheErroredSolves: readBool(env, "COMPUTE_CACHE_ERRORED_SOLVES", false)
197
+ computeCacheErroredSolves: readBool(env, "COMPUTE_CACHE_ERRORED_SOLVES", false),
198
+ // 4 matches rhino.compute's default --childcount; tune to the actual VM.
199
+ computeMaxConcurrentSolves: readPositiveInt(env, "COMPUTE_MAX_CONCURRENT", 4),
200
+ // Both 0 (unbounded / no deadline) by default — nothing sheds until an
201
+ // operator who's measured their pool opts in. readNonNegativeInt so `0` is a
202
+ // valid "disabled" value, not treated as invalid.
203
+ computeMaxQueueDepth: readNonNegativeInt(env, "COMPUTE_MAX_QUEUE_DEPTH", 0),
204
+ computeQueueWaitMs: readNonNegativeInt(env, "COMPUTE_QUEUE_WAIT_MS", 0),
205
+ // Env is MB; 0 disables. Default 256 MB holds a handful of typical
206
+ // definitions warm without pinning gigabytes. readNonNegativeInt so `0`
207
+ // (disable) is honored rather than treated as invalid.
208
+ computeDefinitionByteCacheBytes: readNonNegativeInt(env, "COMPUTE_DEFINITION_BYTE_CACHE_MB", 256) * MB,
209
+ // L2 durable solve cache (H1). Default per-definition quota 0 = inherit-to-off
210
+ // until an operator opts in; the memory backend also only mounts under
211
+ // SOLVE_CACHE_PROVIDER=memory, so nothing caches by accident. Byte backstop
212
+ // 512 MB caps total heap use across all definitions (env is MB).
213
+ solveCacheDefaultMaxEntries: readNonNegativeInt(env, "SOLVE_CACHE_DEFAULT_MAX_ENTRIES", 0),
214
+ solveCacheMaxTotalBytes: readNonNegativeInt(env, "SOLVE_CACHE_MAX_TOTAL_MB", 512) * MB
188
215
  };
189
216
  }
190
217
  const FLAG_KEYS = [
@@ -463,6 +490,7 @@ function applyOrder(items, opts, keyFn = (item, field) => item[field]) {
463
490
  return items;
464
491
  }
465
492
  const SESSION_MAX_AGE_MS = 8 * 60 * 60 * 1e3;
493
+ const MIN_HMAC_SECRET_LENGTH = 32;
466
494
  function toAuthUser$1(u) {
467
495
  return {
468
496
  id: u.id,
@@ -534,6 +562,11 @@ class LocalAuthProvider {
534
562
  static fromEnv(env) {
535
563
  const hmacSecret = env.SELVA_HMAC_KEY;
536
564
  if (!hmacSecret) throw new Error("Missing required env var: SELVA_HMAC_KEY");
565
+ if (hmacSecret.length < MIN_HMAC_SECRET_LENGTH) {
566
+ throw new Error(
567
+ `SELVA_HMAC_KEY must be at least ${MIN_HMAC_SECRET_LENGTH} characters (got ${hmacSecret.length}). Generate one with: openssl rand -base64 32`
568
+ );
569
+ }
537
570
  return new LocalAuthProvider({
538
571
  hmacSecret,
539
572
  usersFilePath: env.DATA_PATH ? path.join(env.DATA_PATH, "auth-users.json") : void 0
@@ -1556,6 +1589,9 @@ class LocalDefinitionStore {
1556
1589
  ...patch.computeServerId !== void 0 && {
1557
1590
  computeServerId: clearable(patch.computeServerId)
1558
1591
  },
1592
+ ...patch.solveCacheLimit !== void 0 && {
1593
+ solveCacheLimit: clearable(patch.solveCacheLimit)
1594
+ },
1559
1595
  ...patch.status !== void 0 && { status: patch.status },
1560
1596
  ...patch.ownerId !== void 0 && { ownerId: patch.ownerId },
1561
1597
  ...auditUpdate(ctx, existing.updatedBy ?? existing.ownerId)
@@ -1601,6 +1637,28 @@ class LocalDefinitionStore {
1601
1637
  existing.updatedAt = (/* @__PURE__ */ new Date()).toISOString();
1602
1638
  await this.writeConfig(config);
1603
1639
  }
1640
+ async reserveNextVersionNumber(_ctx, guid) {
1641
+ const config = await this.readConfig();
1642
+ const existing = config.definitions[guid];
1643
+ if (!this.live(existing)) throw new ProviderError(`Definition '${guid}' not found`, 404);
1644
+ const current = existing.nextVersionNumber ?? this.highestVersionNumber(config, guid) + 1;
1645
+ existing.nextVersionNumber = current + 1;
1646
+ existing.updatedAt = (/* @__PURE__ */ new Date()).toISOString();
1647
+ await this.writeConfig(config);
1648
+ return current;
1649
+ }
1650
+ /**
1651
+ * Highest `versionNumber` currently on disk for a definition (0 if none). Only
1652
+ * used as the seed when a legacy record predates `nextVersionNumber`; new
1653
+ * records carry the counter and never take this path.
1654
+ */
1655
+ highestVersionNumber(config, definitionId) {
1656
+ let max = 0;
1657
+ for (const v of Object.values(config.definitionVersions)) {
1658
+ if (v.definitionId === definitionId && v.versionNumber > max) max = v.versionNumber;
1659
+ }
1660
+ return max;
1661
+ }
1604
1662
  // ============================================================================
1605
1663
  // Versions (spec §6)
1606
1664
  // ============================================================================
@@ -2052,8 +2110,11 @@ class LocalDataProvider {
2052
2110
  userProfile;
2053
2111
  permissions;
2054
2112
  platformProjectGrants;
2113
+ /** The sink the stores emit into (Noop unless injected) — per `IDataProvider.events`. */
2114
+ events;
2055
2115
  userData;
2056
2116
  constructor(stores, userData) {
2117
+ this.events = stores.events;
2057
2118
  this.orgs = stores.orgs;
2058
2119
  this.projects = stores.projects;
2059
2120
  this.definitions = stores.definitions;
@@ -2133,7 +2194,8 @@ class LocalDataProvider {
2133
2194
  shareLinks,
2134
2195
  userProfile: new LocalUserProfileProvider(userData),
2135
2196
  permissions: new LocalPlatformPermissionStore(userData),
2136
- platformProjectGrants
2197
+ platformProjectGrants,
2198
+ events
2137
2199
  },
2138
2200
  userData
2139
2201
  );
@@ -2253,6 +2315,9 @@ class SupabaseStorageProvider {
2253
2315
  const bucket = this.bucketFor(transcoded.path);
2254
2316
  const { error } = await this.client.storage.from(bucket).upload(transcoded.path, transcoded.data, {
2255
2317
  contentType: transcoded.contentType,
2318
+ // Objects are content-addressed (GUID/hash prefixes) and effectively
2319
+ // immutable, so let CDN/browser cache them for a year.
2320
+ cacheControl: "31536000",
2256
2321
  upsert: true
2257
2322
  });
2258
2323
  if (error) throw error;
@@ -2807,7 +2872,7 @@ function projectMemberToRow(m) {
2807
2872
  joined_at: m.joinedAt
2808
2873
  };
2809
2874
  }
2810
- const DEFINITION_COLUMNS = "guid, project_id, owner_id, created_by, updated_by, compute_server_id, display_name, description, category, tags, cover_image, status, run_count, live_version_id, draft_version_id, created_at, updated_at, deleted_at";
2875
+ const DEFINITION_COLUMNS = "guid, project_id, owner_id, created_by, updated_by, compute_server_id, solve_cache_limit, display_name, description, category, tags, cover_image, status, run_count, next_version_number, live_version_id, draft_version_id, created_at, updated_at, deleted_at";
2811
2876
  const DEFINITION_VERSION_COLUMNS = "id, definition_guid, version_number, file_ext, file_key, original_filename, uploaded_by, uploaded_at, change_note, schema, schema_extracted_at";
2812
2877
  class SupabaseDefinitionStore {
2813
2878
  constructor(clients, events = new NoopEventSink()) {
@@ -2901,6 +2966,14 @@ class SupabaseDefinitionStore {
2901
2966
  const { error } = await this.clients.forRequest(ctx).rpc("increment_run_count", { g: guid });
2902
2967
  if (error) throw mapPostgrestError(error);
2903
2968
  }
2969
+ async reserveNextVersionNumber(ctx, guid) {
2970
+ const { data, error } = await this.clients.forRequest(ctx).rpc("reserve_next_version_number", { g: guid });
2971
+ if (error) throw mapPostgrestError(error);
2972
+ if (typeof data !== "number") {
2973
+ throw new ProviderError(`Definition '${guid}' not found`, 404);
2974
+ }
2975
+ return data;
2976
+ }
2904
2977
  // ============================================================================
2905
2978
  // Versions (spec §6)
2906
2979
  // ============================================================================
@@ -2995,6 +3068,7 @@ function rowToRecord(row) {
2995
3068
  liveVersionId: row.live_version_id,
2996
3069
  draftVersionId: row.draft_version_id,
2997
3070
  computeServerId: row.compute_server_id ?? void 0,
3071
+ solveCacheLimit: row.solve_cache_limit == null ? void 0 : typeof row.solve_cache_limit === "string" ? Number(row.solve_cache_limit) : row.solve_cache_limit,
2998
3072
  displayName: row.display_name,
2999
3073
  description: row.description ?? void 0,
3000
3074
  category: row.category ?? void 0,
@@ -3002,6 +3076,7 @@ function rowToRecord(row) {
3002
3076
  coverImage: row.cover_image ?? void 0,
3003
3077
  status: row.status,
3004
3078
  solveCount: typeof row.run_count === "string" ? Number(row.run_count) : row.run_count,
3079
+ nextVersionNumber: typeof row.next_version_number === "string" ? Number(row.next_version_number) : row.next_version_number,
3005
3080
  createdAt: row.created_at,
3006
3081
  updatedAt: row.updated_at,
3007
3082
  deletedAt: row.deleted_at ?? null
@@ -3017,12 +3092,14 @@ function recordToRow(r) {
3017
3092
  live_version_id: r.liveVersionId,
3018
3093
  draft_version_id: r.draftVersionId,
3019
3094
  compute_server_id: r.computeServerId ?? null,
3095
+ solve_cache_limit: r.solveCacheLimit ?? null,
3020
3096
  display_name: r.displayName,
3021
3097
  description: r.description ?? null,
3022
3098
  category: r.category ?? null,
3023
3099
  cover_image: r.coverImage ?? null,
3024
3100
  status: r.status,
3025
3101
  run_count: r.solveCount,
3102
+ next_version_number: r.nextVersionNumber,
3026
3103
  created_at: r.createdAt,
3027
3104
  updated_at: r.updatedAt,
3028
3105
  deleted_at: r.deletedAt ?? null
@@ -3039,6 +3116,7 @@ function patchToRow(patch) {
3039
3116
  if (patch.coverImage !== void 0) row.cover_image = patch.coverImage;
3040
3117
  if (patch.projectId !== void 0) row.project_id = patch.projectId;
3041
3118
  if (patch.computeServerId !== void 0) row.compute_server_id = patch.computeServerId;
3119
+ if (patch.solveCacheLimit !== void 0) row.solve_cache_limit = patch.solveCacheLimit;
3042
3120
  if (patch.status !== void 0) row.status = patch.status;
3043
3121
  if (patch.ownerId !== void 0) row.owner_id = patch.ownerId;
3044
3122
  return row;
@@ -3504,6 +3582,7 @@ function linkToRow(l) {
3504
3582
  solve_count: l.solveCount
3505
3583
  };
3506
3584
  }
3585
+ const EXPECTED_MIGRATION_HEAD = "20260713140000";
3507
3586
  const DEFAULT_SCHEMA = "selva";
3508
3587
  function buildClientBundle(opts) {
3509
3588
  const serviceBySchema = /* @__PURE__ */ new Map();
@@ -3804,34 +3883,22 @@ class SupabasePlatformPermissionStore {
3804
3883
  return "ok";
3805
3884
  }
3806
3885
  async hasInstanceAdmin(_ctx) {
3807
- const { data, error } = await this.client().from("user_profiles").select("user_id").contains("platform_permissions", ["instance_admin"]);
3886
+ const { count, error } = await this.client().from("user_profiles").select("user_id", { count: "exact", head: true }).contains("platform_permissions", ["instance_admin"]).eq("disabled", false);
3808
3887
  if (error) throw mapError(error);
3809
- const candidates = (data ?? []).map((r) => r.user_id);
3810
- if (candidates.length === 0) return false;
3811
- for (const id of candidates) {
3812
- const { data: authData } = await this.clients.serviceClient.auth.admin.getUserById(id);
3813
- if (authData.user && authData.user.user_metadata?.disabled !== true) return true;
3814
- }
3815
- return false;
3888
+ return (count ?? 0) > 0;
3816
3889
  }
3817
3890
  async countInstanceAdminsExcluding(_ctx, excludeUserId) {
3818
3891
  return this.countOtherEnabledAdmins(excludeUserId);
3819
3892
  }
3820
3893
  async countOtherEnabledAdmins(excludeUserId) {
3821
- const { data, error } = await this.client().from("user_profiles").select("user_id").contains("platform_permissions", ["instance_admin"]).neq("user_id", excludeUserId);
3894
+ const { count, error } = await this.client().from("user_profiles").select("user_id", { count: "exact", head: true }).contains("platform_permissions", ["instance_admin"]).eq("disabled", false).neq("user_id", excludeUserId);
3822
3895
  if (error) throw mapError(error);
3823
- const candidates = (data ?? []).map((r) => r.user_id);
3824
- if (candidates.length === 0) return 0;
3825
- let count = 0;
3826
- for (const id of candidates) {
3827
- const { data: authData } = await this.clients.serviceClient.auth.admin.getUserById(id);
3828
- if (authData.user && authData.user.user_metadata?.disabled !== true) count += 1;
3829
- }
3830
- return count;
3896
+ return count ?? 0;
3831
3897
  }
3832
3898
  }
3899
+ const VALID_PERMISSIONS = new Set(ALL_PLATFORM_PERMISSIONS);
3833
3900
  function filterValid(raw) {
3834
- return raw.filter((p) => PlatformPermissionSchema.safeParse(p).success);
3901
+ return raw.filter((p) => VALID_PERMISSIONS.has(p));
3835
3902
  }
3836
3903
  function assertCanRead(ctx, userId) {
3837
3904
  if (ctx.system) return;
@@ -3874,6 +3941,7 @@ const notImplementedGrantStore = {
3874
3941
  class SupabaseDataProvider {
3875
3942
  constructor(clients, events, secretKey) {
3876
3943
  this.clients = clients;
3944
+ this.events = events;
3877
3945
  this.solveMetrics = new SupabaseSolveMetricSink(clients);
3878
3946
  this.orgs = new SupabaseOrgStore(clients, events);
3879
3947
  this.projects = new SupabaseProjectStore(clients, events);
@@ -3897,6 +3965,8 @@ class SupabaseDataProvider {
3897
3965
  permissions;
3898
3966
  platformProjectGrants;
3899
3967
  auditQuery;
3968
+ /** The sink every store emits into — exposed per `IDataProvider.events`. */
3969
+ events;
3900
3970
  /**
3901
3971
  * Per-solve timing sink, built from the same client bundle. Exposed so the
3902
3972
  * app's provider wiring can hand it to `SelvaConfig.solveMetrics` without
@@ -3934,6 +4004,53 @@ class SupabaseDataProvider {
3934
4004
  getClientBundle() {
3935
4005
  return this.clients;
3936
4006
  }
4007
+ /**
4008
+ * App↔DB schema handshake (audit O3). Calls `selva.migration_head()` — a
4009
+ * SECURITY DEFINER function shipped in this package's migrations — and
4010
+ * compares it against the head this build expects. Three failure shapes:
4011
+ * the RPC itself is missing (database never applied the handshake
4012
+ * migration), the head is empty (no migrations pushed at all), or the head
4013
+ * is lexicographically behind (operator updated the app but forgot
4014
+ * `supabase db push`). Never throws; boot health consumes the report.
4015
+ */
4016
+ async verifySchemaVersion() {
4017
+ const expected = EXPECTED_MIGRATION_HEAD;
4018
+ const pushHint = "Apply the pending Supabase migrations: sync them into your project (see @selvajs/supabase-provider sync-migrations) and run `npx supabase db push`.";
4019
+ try {
4020
+ const { data, error } = await this.clients.serviceClient.rpc("migration_head");
4021
+ if (error) {
4022
+ return {
4023
+ ok: false,
4024
+ expected,
4025
+ actual: null,
4026
+ message: `selva.migration_head() is not available (${error.message ?? error.code ?? "unknown error"}) — the database schema is behind this app version. ${pushHint}`
4027
+ };
4028
+ }
4029
+ const actual = typeof data === "string" ? data : "";
4030
+ if (!actual) {
4031
+ return {
4032
+ ok: false,
4033
+ expected,
4034
+ actual: "",
4035
+ message: `The database reports no applied migrations. ${pushHint}`
4036
+ };
4037
+ }
4038
+ const ok = actual >= expected;
4039
+ return {
4040
+ ok,
4041
+ expected,
4042
+ actual,
4043
+ message: ok ? void 0 : `Database migration head ${actual} is behind the app's expected ${expected}. ${pushHint}`
4044
+ };
4045
+ } catch (err) {
4046
+ return {
4047
+ ok: false,
4048
+ expected,
4049
+ actual: null,
4050
+ message: `Schema handshake failed: ${err instanceof Error ? err.message : String(err)}`
4051
+ };
4052
+ }
4053
+ }
3937
4054
  /**
3938
4055
  * No-op: `public.user_profiles` is auto-seeded by the `handle_new_auth_user`
3939
4056
  * trigger on every `auth.users` insert (see `0001_initial.sql`). The data
@@ -4161,13 +4278,8 @@ class SupabaseAuthProvider {
4161
4278
  return "ok";
4162
4279
  }
4163
4280
  async touchLastLogin(id) {
4164
- const { data, error } = await this.admin.from("user_profiles").select("last_login_at").eq("user_id", id).maybeSingle();
4165
- if (error) return;
4166
- if (data?.last_login_at) {
4167
- const prev = Date.parse(data.last_login_at);
4168
- if (Number.isFinite(prev) && Date.now() - prev < 6e4) return;
4169
- }
4170
- await this.admin.from("user_profiles").update({ last_login_at: (/* @__PURE__ */ new Date()).toISOString() }).eq("user_id", id);
4281
+ const cutoff = new Date(Date.now() - 6e4).toISOString();
4282
+ await this.admin.from("user_profiles").update({ last_login_at: (/* @__PURE__ */ new Date()).toISOString() }).eq("user_id", id).or(`last_login_at.is.null,last_login_at.lt.${cutoff}`);
4171
4283
  }
4172
4284
  // OAuth lives on `this.oauth` (typed `IOAuthAuth`); see `SupabaseOAuthAuth`
4173
4285
  // below. Mirrors the `passwordAuth` capability split.
@@ -4667,6 +4779,8 @@ class DefinitionService {
4667
4779
  computeServerId: input.computeServerId,
4668
4780
  status: "pending",
4669
4781
  solveCount: 0,
4782
+ // v1 is created below with versionNumber 1, so the next upload reserves 2.
4783
+ nextVersionNumber: 2,
4670
4784
  liveVersionId: null,
4671
4785
  draftVersionId: null,
4672
4786
  createdAt: now,
@@ -4704,8 +4818,7 @@ class DefinitionService {
4704
4818
  async uploadVersion(ctx, guid, file, ext, originalName, schema, changeNote) {
4705
4819
  const existing = await this.data.definitions.get(ctx, guid);
4706
4820
  if (!existing) throw new ProviderError(`Definition not found: ${guid}`, 404);
4707
- const versions = await this.data.definitions.listVersions(ctx, guid, { limit: 1 });
4708
- const next = (versions.items[0]?.versionNumber ?? 0) + 1;
4821
+ const next = await this.data.definitions.reserveNextVersionNumber(ctx, guid);
4709
4822
  const versionId = randomUUID();
4710
4823
  const fileKey = definitionPaths.version(guid, next, ext);
4711
4824
  await this.storage.put(fileKey, file, "application/octet-stream");
@@ -4840,7 +4953,7 @@ class SentryErrorReporter {
4840
4953
  return new SentryErrorReporter(sentry);
4841
4954
  } catch (err) {
4842
4955
  console.error(
4843
- "[ErrorReporter] SENTRY_DSN is set but @sentry/node could not be loaded. Install it (`pnpm add @sentry/node`) or unset SENTRY_DSN. Falling back to no-op.",
4956
+ "[ErrorReporter] A Sentry DSN is set but @sentry/node could not be loaded. Install it (`pnpm add @sentry/node`) or unset the DSN. Falling back to no-op.",
4844
4957
  err
4845
4958
  );
4846
4959
  return null;
@@ -4952,6 +5065,11 @@ function getSolveMetricSink() {
4952
5065
  function getAuditQuery() {
4953
5066
  return providers.data.auditQuery ?? null;
4954
5067
  }
5068
+ const noopEventSink = new NoopEventSink();
5069
+ function getEventSink() {
5070
+ const p = resolveProviders();
5071
+ return p.events ?? p.data.events ?? noopEventSink;
5072
+ }
4955
5073
  let _errorReporter = new NoopErrorReporter();
4956
5074
  function getErrorReporter() {
4957
5075
  return _errorReporter;
@@ -4981,5 +5099,5 @@ if (!globalThis[ERROR_HOOKS_FLAG]) {
4981
5099
  });
4982
5100
  }
4983
5101
 
4984
- export { LocalComputeServerStore as L, MAX_PAGE_LIMIT as M, ProviderError as P, getPermissionStore as a, getTenancy as b, getDataProvider as c, getOrganizationProvider as d, getProjectProvider as e, getErrorReporter as f, getAuthProvider as g, flag as h, getBranding as i, isPlatformServer as j, getComputeServerConfigStore as k, getDefinitionMeta as l, getPlatformProjectGrantStore as m, getAuditQuery as n, getInviteStore as o, providers as p, getUserProfileStore as q, resolveComputeLimits as r, getStorageProvider as s, isOrgServer as t, getOrgAssetService as u, getSolveMetricSink as v, getDefinitionService as w, definitionPaths as x };
4985
- //# sourceMappingURL=providers.server.js-D0hpk-aq.js.map
5102
+ export { LocalComputeServerStore as L, MAX_PAGE_LIMIT as M, ProviderError as P, getPermissionStore as a, getTenancy as b, getDataProvider as c, getOrganizationProvider as d, getProjectProvider as e, getErrorReporter as f, getAuthProvider as g, getEventSink as h, flag as i, getBranding as j, isPlatformServer as k, getComputeServerConfigStore as l, getDefinitionMeta as m, getPlatformProjectGrantStore as n, getAuditQuery as o, providers as p, getInviteStore as q, getUserProfileStore as r, resolveComputeLimits as s, getStorageProvider as t, isOrgServer as u, getOrgAssetService as v, actorFrom as w, getSolveMetricSink as x, getDefinitionService as y, definitionPaths as z };
5103
+ //# sourceMappingURL=providers.server.js-CIHOepKv.js.map