@selvajs/selva 4.16.1 → 4.16.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.
- package/build/client/_app/immutable/chunks/B4-FQ3wL.js +1 -0
- package/build/client/_app/immutable/chunks/B4-FQ3wL.js.br +0 -0
- package/build/client/_app/immutable/chunks/B4-FQ3wL.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BB-gQ9dm.js +1 -0
- package/build/client/_app/immutable/chunks/BB-gQ9dm.js.br +0 -0
- package/build/client/_app/immutable/chunks/BB-gQ9dm.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C41KbrhI2.js +1 -0
- package/build/client/_app/immutable/chunks/C41KbrhI2.js.br +0 -0
- package/build/client/_app/immutable/chunks/C41KbrhI2.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D3Y5-99i2.js +1 -0
- package/build/client/_app/immutable/chunks/D3Y5-99i2.js.br +0 -0
- package/build/client/_app/immutable/chunks/D3Y5-99i2.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D8XUaGYx2.js +1 -0
- package/build/client/_app/immutable/chunks/D8XUaGYx2.js.br +0 -0
- package/build/client/_app/immutable/chunks/D8XUaGYx2.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DxQNuZLR.js +3 -0
- package/build/client/_app/immutable/chunks/DxQNuZLR.js.br +0 -0
- package/build/client/_app/immutable/chunks/DxQNuZLR.js.gz +0 -0
- package/build/client/_app/immutable/chunks/XvEUYu1N.js +2 -0
- package/build/client/_app/immutable/chunks/XvEUYu1N.js.br +0 -0
- package/build/client/_app/immutable/chunks/XvEUYu1N.js.gz +0 -0
- package/build/client/_app/immutable/chunks/bEuwphLD2.js +1 -0
- package/build/client/_app/immutable/chunks/bEuwphLD2.js.br +2 -0
- package/build/client/_app/immutable/chunks/bEuwphLD2.js.gz +0 -0
- package/build/client/_app/immutable/entry/app.CXbXh1Sr.js +2 -0
- package/build/client/_app/immutable/entry/app.CXbXh1Sr.js.br +0 -0
- package/build/client/_app/immutable/entry/app.CXbXh1Sr.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.DvQymkgZ.js +1 -0
- package/build/client/_app/immutable/entry/start.DvQymkgZ.js.br +0 -0
- package/build/client/_app/immutable/entry/start.DvQymkgZ.js.gz +0 -0
- package/build/client/_app/immutable/nodes/1.DMFSyDH8.js +1 -0
- package/build/client/_app/immutable/nodes/1.DMFSyDH8.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.DMFSyDH8.js.gz +0 -0
- package/build/client/_app/immutable/nodes/11.DhbE_lWX.js +3 -0
- package/build/client/_app/immutable/nodes/11.DhbE_lWX.js.br +0 -0
- package/build/client/_app/immutable/nodes/11.DhbE_lWX.js.gz +0 -0
- package/build/client/_app/immutable/nodes/13.BZ113t2p.js +2 -0
- package/build/client/_app/immutable/nodes/13.BZ113t2p.js.br +0 -0
- package/build/client/_app/immutable/nodes/13.BZ113t2p.js.gz +0 -0
- package/build/client/_app/immutable/nodes/14.DZV6_g1N.js +2 -0
- package/build/client/_app/immutable/nodes/14.DZV6_g1N.js.br +0 -0
- package/build/client/_app/immutable/nodes/14.DZV6_g1N.js.gz +0 -0
- package/build/client/_app/immutable/nodes/15.f9fj1pvw.js +28 -0
- package/build/client/_app/immutable/nodes/15.f9fj1pvw.js.br +0 -0
- package/build/client/_app/immutable/nodes/15.f9fj1pvw.js.gz +0 -0
- package/build/client/_app/immutable/nodes/16.BeL1wNdx.js +5 -0
- package/build/client/_app/immutable/nodes/16.BeL1wNdx.js.br +0 -0
- package/build/client/_app/immutable/nodes/16.BeL1wNdx.js.gz +0 -0
- package/build/client/_app/immutable/nodes/17.Dc2yglgS.js +2 -0
- package/build/client/_app/immutable/nodes/17.Dc2yglgS.js.br +0 -0
- package/build/client/_app/immutable/nodes/17.Dc2yglgS.js.gz +0 -0
- package/build/client/_app/immutable/nodes/19.DkoveXb5.js +7 -0
- package/build/client/_app/immutable/nodes/19.DkoveXb5.js.br +0 -0
- package/build/client/_app/immutable/nodes/19.DkoveXb5.js.gz +0 -0
- package/build/client/_app/immutable/nodes/2.CkRM3N7n.js +1 -0
- package/build/client/_app/immutable/nodes/2.CkRM3N7n.js.br +0 -0
- package/build/client/_app/immutable/nodes/2.CkRM3N7n.js.gz +0 -0
- package/build/client/_app/immutable/nodes/20.DiPInNOT.js +2 -0
- package/build/client/_app/immutable/nodes/20.DiPInNOT.js.br +0 -0
- package/build/client/_app/immutable/nodes/20.DiPInNOT.js.gz +0 -0
- package/build/client/_app/immutable/nodes/21.CL_2djvQ.js +5495 -0
- package/build/client/_app/immutable/nodes/21.CL_2djvQ.js.br +0 -0
- package/build/client/_app/immutable/nodes/21.CL_2djvQ.js.gz +0 -0
- package/build/client/_app/immutable/nodes/22.grtwX80a.js +6 -0
- package/build/client/_app/immutable/nodes/22.grtwX80a.js.br +0 -0
- package/build/client/_app/immutable/nodes/22.grtwX80a.js.gz +0 -0
- package/build/client/_app/immutable/nodes/24.CWxy09rn.js +16 -0
- package/build/client/_app/immutable/nodes/24.CWxy09rn.js.br +0 -0
- package/build/client/_app/immutable/nodes/24.CWxy09rn.js.gz +0 -0
- package/build/client/_app/immutable/nodes/25.BtA0xnff.js +6 -0
- package/build/client/_app/immutable/nodes/25.BtA0xnff.js.br +0 -0
- package/build/client/_app/immutable/nodes/25.BtA0xnff.js.gz +0 -0
- package/build/client/_app/immutable/nodes/28.BzvpY7Iz.js +4 -0
- package/build/client/_app/immutable/nodes/28.BzvpY7Iz.js.br +0 -0
- package/build/client/_app/immutable/nodes/28.BzvpY7Iz.js.gz +0 -0
- package/build/client/_app/immutable/nodes/29.Bz2uo1rK.js +6 -0
- package/build/client/_app/immutable/nodes/29.Bz2uo1rK.js.br +0 -0
- package/build/client/_app/immutable/nodes/29.Bz2uo1rK.js.gz +0 -0
- package/build/client/_app/immutable/nodes/3.FsUbKZx5.js +1 -0
- package/build/client/_app/immutable/nodes/3.FsUbKZx5.js.br +0 -0
- package/build/client/_app/immutable/nodes/3.FsUbKZx5.js.gz +0 -0
- package/build/client/_app/immutable/nodes/30.BZ-dw5m7.js +2 -0
- package/build/client/_app/immutable/nodes/30.BZ-dw5m7.js.br +0 -0
- package/build/client/_app/immutable/nodes/30.BZ-dw5m7.js.gz +0 -0
- package/build/client/_app/immutable/nodes/31.CSqn84cN.js +2 -0
- package/build/client/_app/immutable/nodes/31.CSqn84cN.js.br +0 -0
- package/build/client/_app/immutable/nodes/31.CSqn84cN.js.gz +0 -0
- package/build/client/_app/immutable/nodes/33.U8awGNdU.js +1 -0
- package/build/client/_app/immutable/nodes/33.U8awGNdU.js.br +0 -0
- package/build/client/_app/immutable/nodes/33.U8awGNdU.js.gz +0 -0
- package/build/client/_app/immutable/nodes/5.Btqh1tUK.js +1 -0
- package/build/client/_app/immutable/nodes/5.Btqh1tUK.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.Btqh1tUK.js.gz +0 -0
- package/build/client/_app/immutable/nodes/6.DmU_RaVC.js +1 -0
- package/build/client/_app/immutable/nodes/6.DmU_RaVC.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.DmU_RaVC.js.gz +0 -0
- package/build/client/_app/immutable/nodes/7.DCc83FsO.js +1 -0
- package/build/client/_app/immutable/nodes/7.DCc83FsO.js.br +0 -0
- package/build/client/_app/immutable/nodes/7.DCc83FsO.js.gz +0 -0
- package/build/client/_app/immutable/nodes/8.DDytzf9J.js +3 -0
- package/build/client/_app/immutable/nodes/8.DDytzf9J.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.DDytzf9J.js.gz +0 -0
- package/build/client/_app/immutable/nodes/9.vD-TQ8Iq.js +1 -0
- package/build/client/_app/immutable/nodes/9.vD-TQ8Iq.js.br +0 -0
- package/build/client/_app/immutable/nodes/9.vD-TQ8Iq.js.gz +0 -0
- package/build/client/_app/version.json +1 -1
- package/build/client/_app/version.json.br +0 -0
- package/build/client/_app/version.json.gz +0 -0
- package/build/handler.js +4 -4
- package/build/index.js +4 -4
- package/build/server/chunks/chunks/AppHeader.js-BiEGhZxl.js +72 -0
- package/build/server/chunks/chunks/AppHeader.js-BiEGhZxl.js.map +1 -0
- package/build/server/chunks/chunks/SettingsMenu.js-B5TBSMrK.js +1363 -0
- package/build/server/chunks/chunks/SettingsMenu.js-B5TBSMrK.js.map +1 -0
- package/build/server/chunks/chunks/SideNav.js-baLtSrLY.js +71 -0
- package/build/server/chunks/chunks/SideNav.js-baLtSrLY.js.map +1 -0
- package/build/server/chunks/chunks/access.js-CoycZfKB.js +756 -0
- package/build/server/chunks/chunks/access.js-CoycZfKB.js.map +1 -0
- package/build/server/chunks/chunks/access.server.js-CdWJcc__.js +12 -0
- package/build/server/chunks/chunks/access.server.js-CdWJcc__.js.map +1 -0
- package/build/server/chunks/chunks/access2.server.js-Coy94e8f.js +62 -0
- package/build/server/chunks/chunks/access2.server.js-Coy94e8f.js.map +1 -0
- package/build/server/chunks/chunks/api-errors.js-7upaypw1.js +83 -0
- package/build/server/chunks/chunks/api-errors.js-7upaypw1.js.map +1 -0
- package/build/server/chunks/chunks/api.js-CI0M3Xtw.js +321 -0
- package/build/server/chunks/chunks/api.js-CI0M3Xtw.js.map +1 -0
- package/build/server/chunks/chunks/auth-bootstrap.server.js-5McDnBaH.js +152 -0
- package/build/server/chunks/chunks/auth-bootstrap.server.js-5McDnBaH.js.map +1 -0
- package/build/server/chunks/chunks/bootHealth.server.js-Cn50yzJa.js +90 -0
- package/build/server/chunks/chunks/bootHealth.server.js-Cn50yzJa.js.map +1 -0
- package/build/server/chunks/chunks/client.js-D3xDFDYP.js +59 -0
- package/build/server/chunks/chunks/client.js-D3xDFDYP.js.map +1 -0
- package/build/server/chunks/chunks/compute.js-DLWZsOnD.js +430 -0
- package/build/server/chunks/chunks/compute.js-DLWZsOnD.js.map +1 -0
- package/build/server/chunks/chunks/computeLimits.js-GT8oPvJa.js +48 -0
- package/build/server/chunks/chunks/computeLimits.js-GT8oPvJa.js.map +1 -0
- package/build/server/chunks/chunks/core-PfYDuaFq.js-D1BnOFeu.js +803 -0
- package/build/server/chunks/chunks/core-PfYDuaFq.js-D1BnOFeu.js.map +1 -0
- package/build/server/chunks/chunks/definitions.js-BNGP8Sjp.js +508 -0
- package/build/server/chunks/chunks/definitions.js-BNGP8Sjp.js.map +1 -0
- package/build/server/chunks/chunks/engine.server.js-VkkOCr0A.js +582 -0
- package/build/server/chunks/chunks/engine.server.js-VkkOCr0A.js.map +1 -0
- package/build/server/chunks/chunks/forms.js-CzAd7d_S.js +2 -0
- package/build/server/chunks/chunks/forms.js-CzAd7d_S.js.map +1 -0
- package/build/server/chunks/chunks/handlers.js-BxO_5n4X.js +1375 -0
- package/build/server/chunks/chunks/handlers.js-BxO_5n4X.js.map +1 -0
- package/build/server/chunks/chunks/http.js-CUPVNrZo.js +59 -0
- package/build/server/chunks/chunks/http.js-CUPVNrZo.js.map +1 -0
- package/build/server/chunks/chunks/instanceAdmins.server.js-8HQ_BbHV.js +23 -0
- package/build/server/chunks/chunks/instanceAdmins.server.js-8HQ_BbHV.js.map +1 -0
- package/build/server/chunks/chunks/internal.js-D-PIqUmO.js.map +1 -1
- package/build/server/chunks/chunks/internal2.js-Brm_q2Rr.js +224 -0
- package/build/server/chunks/chunks/internal2.js-Brm_q2Rr.js.map +1 -0
- package/build/server/chunks/chunks/limits.js-EChEpvu8.js +203 -0
- package/build/server/chunks/chunks/limits.js-EChEpvu8.js.map +1 -0
- package/build/server/chunks/chunks/navigation.js-CzAd7d_S.js +2 -0
- package/build/server/chunks/chunks/navigation.js-CzAd7d_S.js.map +1 -0
- package/build/server/chunks/chunks/package.js-0p2MKz9Z.js +82 -0
- package/build/server/chunks/chunks/package.js-0p2MKz9Z.js.map +1 -0
- package/build/server/chunks/chunks/paths.js-BZS-NVws.js +19 -0
- package/build/server/chunks/chunks/paths.js-BZS-NVws.js.map +1 -0
- package/build/server/chunks/chunks/permissions.server.js-CsIWDCwH.js +24 -0
- package/build/server/chunks/chunks/permissions.server.js-CsIWDCwH.js.map +1 -0
- package/build/server/chunks/chunks/projects.js-C7uLgeYM.js +47 -0
- package/build/server/chunks/chunks/projects.js-C7uLgeYM.js.map +1 -0
- package/build/server/chunks/chunks/providers.server.js-CrzKLXpj.js +5911 -0
- package/build/server/chunks/chunks/providers.server.js-CrzKLXpj.js.map +1 -0
- package/build/server/chunks/chunks/request.js-Bkw0AC3v.js +119 -0
- package/build/server/chunks/chunks/request.js-Bkw0AC3v.js.map +1 -0
- package/build/server/chunks/chunks/resolve.server.js-kyGBDPG7.js +59 -0
- package/build/server/chunks/chunks/resolve.server.js-kyGBDPG7.js.map +1 -0
- package/build/server/chunks/chunks/schema.js-CRA1KL_l.js +1826 -0
- package/build/server/chunks/chunks/schema.js-CRA1KL_l.js.map +1 -0
- package/build/server/chunks/chunks/selfUpdate.server.js-CBJortLo.js +144 -0
- package/build/server/chunks/chunks/selfUpdate.server.js-CBJortLo.js.map +1 -0
- package/build/server/chunks/chunks/solve.server.js-P-lDriT2.js +312 -0
- package/build/server/chunks/chunks/solve.server.js-P-lDriT2.js.map +1 -0
- package/build/server/chunks/chunks/state.js-CzRoA3Gr.js +76 -0
- package/build/server/chunks/chunks/state.js-CzRoA3Gr.js.map +1 -0
- package/build/server/chunks/chunks/stores.js-DZGlgX6K.js +35 -0
- package/build/server/chunks/chunks/stores.js-DZGlgX6K.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/admin/compute/_server.ts.js-DJrt33SX.js +98 -0
- package/build/server/chunks/entries/endpoints/api/admin/compute/_server.ts.js-DJrt33SX.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/admin/compute/actions/_server.ts.js-CBMiFDgW.js +57 -0
- package/build/server/chunks/entries/endpoints/api/admin/compute/actions/_server.ts.js-CBMiFDgW.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/admin/compute/status/_server.ts.js-jnTpEMQP.js +96 -0
- package/build/server/chunks/entries/endpoints/api/admin/compute/status/_server.ts.js-jnTpEMQP.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/admin/orgs/_id_/_server.ts.js-mbbQgXB4.js +46 -0
- package/build/server/chunks/entries/endpoints/api/admin/orgs/_id_/_server.ts.js-mbbQgXB4.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/admin/orgs/_server.ts.js-l1MQkbXN.js +69 -0
- package/build/server/chunks/entries/endpoints/api/admin/orgs/_server.ts.js-l1MQkbXN.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/admin/projects/_id_/_server.ts.js-DDDoBJIT.js +62 -0
- package/build/server/chunks/entries/endpoints/api/admin/projects/_id_/_server.ts.js-DDDoBJIT.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/admin/projects/_id_/grants/_grantId_/_server.ts.js-DJy8jOfF.js +34 -0
- package/build/server/chunks/entries/endpoints/api/admin/projects/_id_/grants/_grantId_/_server.ts.js-DJy8jOfF.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/admin/projects/_id_/grants/_server.ts.js-DvQohmFF.js +65 -0
- package/build/server/chunks/entries/endpoints/api/admin/projects/_id_/grants/_server.ts.js-DvQohmFF.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/admin/projects/_server.ts.js-BIV1Hud7.js +80 -0
- package/build/server/chunks/entries/endpoints/api/admin/projects/_server.ts.js-BIV1Hud7.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/admin/system/health/_server.ts.js-Bq0cQ24N.js +334 -0
- package/build/server/chunks/entries/endpoints/api/admin/system/health/_server.ts.js-Bq0cQ24N.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/admin/system/throughput/_server.ts.js-BmLp-L2n.js +85 -0
- package/build/server/chunks/entries/endpoints/api/admin/system/throughput/_server.ts.js-BmLp-L2n.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/admin/system/update/_server.ts.js-DlrqlBOe.js +607 -0
- package/build/server/chunks/entries/endpoints/api/admin/system/update/_server.ts.js-DlrqlBOe.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/admin/users/_id_/_server.ts.js-PGCnFSdp.js +58 -0
- package/build/server/chunks/entries/endpoints/api/admin/users/_id_/_server.ts.js-PGCnFSdp.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/admin/users/_id_/disable/_server.ts.js-D2WpxmHQ.js +67 -0
- package/build/server/chunks/entries/endpoints/api/admin/users/_id_/disable/_server.ts.js-D2WpxmHQ.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/admin/users/_server.ts.js-Do3XmTfY.js +83 -0
- package/build/server/chunks/entries/endpoints/api/admin/users/_server.ts.js-Do3XmTfY.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/diag/throughput/_server.ts.js-DwdSIP04.js +62 -0
- package/build/server/chunks/entries/endpoints/api/diag/throughput/_server.ts.js-DwdSIP04.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/files/_...path_/_server.ts.js-DNL8hRvw.js +93 -0
- package/build/server/chunks/entries/endpoints/api/files/_...path_/_server.ts.js-DNL8hRvw.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/health/_server.ts.js-Dn8Acyll.js +59 -0
- package/build/server/chunks/entries/endpoints/api/health/_server.ts.js-Dn8Acyll.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/health/ready/_server.ts.js-Dl1TjeCG.js +62 -0
- package/build/server/chunks/entries/endpoints/api/health/ready/_server.ts.js-Dl1TjeCG.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/v1/compute/_server.ts.js-BmXpXzZG.js +84 -0
- package/build/server/chunks/entries/endpoints/api/v1/compute/_server.ts.js-BmXpXzZG.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/v1/compute/schema/_server.ts.js-k68Zvw49.js +63 -0
- package/build/server/chunks/entries/endpoints/api/v1/compute/schema/_server.ts.js-k68Zvw49.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/_server.ts.js-CSs_JVGa.js +40 -0
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/_server.ts.js-CSs_JVGa.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/image/_server.ts.js-FtRs0d3h.js +38 -0
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/image/_server.ts.js-FtRs0d3h.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/publish/_server.ts.js-D81HCO3p.js +38 -0
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/publish/_server.ts.js-D81HCO3p.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/schema/_server.ts.js-BoBkjNJ3.js +38 -0
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/schema/_server.ts.js-BoBkjNJ3.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/share-links/_linkId_/_server.ts.js-Q6iYoeWA.js +38 -0
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/share-links/_linkId_/_server.ts.js-Q6iYoeWA.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/share-links/_server.ts.js-BYRQ-S4h.js +39 -0
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/share-links/_server.ts.js-BYRQ-S4h.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/solve/_server.ts.js-BZAb1HyM.js +208 -0
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/solve/_server.ts.js-BZAb1HyM.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/versions/_server.ts.js-C8huhyFd.js +39 -0
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/versions/_server.ts.js-C8huhyFd.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/versions/_versionId_/_server.ts.js-BNgAFRdn.js +39 -0
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/versions/_versionId_/_server.ts.js-BNgAFRdn.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/versions/_versionId_/schema/_server.ts.js-jmoeQZil.js +38 -0
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/versions/_versionId_/schema/_server.ts.js-jmoeQZil.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_server.ts.js-D9Kj_1H3.js +39 -0
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_server.ts.js-D9Kj_1H3.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/v1/me/_server.ts.js-DaEEAZQ6.js +38 -0
- package/build/server/chunks/entries/endpoints/api/v1/me/_server.ts.js-DaEEAZQ6.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/v1/me/starred/_guid_/_server.ts.js-DgiYi7er.js +39 -0
- package/build/server/chunks/entries/endpoints/api/v1/me/starred/_guid_/_server.ts.js-DgiYi7er.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/_server.ts.js-CuL_C6sX.js +38 -0
- package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/_server.ts.js-CuL_C6sX.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/assets/_kind_/_server.ts.js-BI5WjxyI.js +39 -0
- package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/assets/_kind_/_server.ts.js-BI5WjxyI.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/compute/_server.ts.js-BetTca9h.js +39 -0
- package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/compute/_server.ts.js-BetTca9h.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/invites/_id_/_server.ts.js-aUpa3swm.js +38 -0
- package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/invites/_id_/_server.ts.js-aUpa3swm.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/invites/_id_/resend/_server.ts.js-BcdQNE86.js +38 -0
- package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/invites/_id_/resend/_server.ts.js-BcdQNE86.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/invites/_server.ts.js-ChRIGTda.js +39 -0
- package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/invites/_server.ts.js-ChRIGTda.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/members/_server.ts.js-DDbfjDk2.js +38 -0
- package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/members/_server.ts.js-DDbfjDk2.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/members/_userId_/_server.ts.js-D7OSvmCB.js +39 -0
- package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/members/_userId_/_server.ts.js-D7OSvmCB.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/_server.ts.js-CK4ff84g.js +40 -0
- package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/_server.ts.js-CK4ff84g.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/members/_server.ts.js-W-SFdjeh.js +39 -0
- package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/members/_server.ts.js-W-SFdjeh.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/members/_userId_/_server.ts.js-D-ksljq3.js +39 -0
- package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/members/_userId_/_server.ts.js-D-ksljq3.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/reclaim/_server.ts.js-BhJLOaSg.js +38 -0
- package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/reclaim/_server.ts.js-BhJLOaSg.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/v1/projects/_server.ts.js-Dav8HrLS.js +39 -0
- package/build/server/chunks/entries/endpoints/api/v1/projects/_server.ts.js-Dav8HrLS.js.map +1 -0
- package/build/server/chunks/entries/endpoints/auth/email/callback/_server.ts.js-CUk36Kzj.js +47 -0
- package/build/server/chunks/entries/endpoints/auth/email/callback/_server.ts.js-CUk36Kzj.js.map +1 -0
- package/build/server/chunks/entries/endpoints/auth/supabase/callback/_server.ts.js-4UF8JZCQ.js +53 -0
- package/build/server/chunks/entries/endpoints/auth/supabase/callback/_server.ts.js-4UF8JZCQ.js.map +1 -0
- package/build/server/chunks/entries/endpoints/auth/supabase/start/_server.ts.js-RURhy-l2.js +64 -0
- package/build/server/chunks/entries/endpoints/auth/supabase/start/_server.ts.js-RURhy-l2.js.map +1 -0
- package/build/server/chunks/entries/hooks.server.js-Cnv40ZMh.js +337 -0
- package/build/server/chunks/entries/hooks.server.js-Cnv40ZMh.js.map +1 -0
- package/build/server/chunks/entries/pages/_error.svelte.js-BG726Ka5.js +36 -0
- package/build/server/chunks/entries/pages/_error.svelte.js-BG726Ka5.js.map +1 -0
- package/build/server/chunks/entries/pages/_layout.server.ts.js-C6iCGX2R.js +34 -0
- package/build/server/chunks/entries/pages/_layout.server.ts.js-C6iCGX2R.js.map +1 -0
- package/build/server/chunks/entries/pages/_page.server.ts.js-BXJ1bOVo.js +55 -0
- package/build/server/chunks/entries/pages/_page.server.ts.js-BXJ1bOVo.js.map +1 -0
- package/build/server/chunks/entries/pages/_page.svelte.js-cKWyCd0g.js +161 -0
- package/build/server/chunks/entries/pages/_page.svelte.js-cKWyCd0g.js.map +1 -0
- package/build/server/chunks/entries/pages/accept-invite/_page.server.ts.js-_0P_VFAh.js +181 -0
- package/build/server/chunks/entries/pages/accept-invite/_page.server.ts.js-_0P_VFAh.js.map +1 -0
- package/build/server/chunks/entries/pages/accept-invite/_page.svelte.js-Cy9dLzV_.js +188 -0
- package/build/server/chunks/entries/pages/accept-invite/_page.svelte.js-Cy9dLzV_.js.map +1 -0
- package/build/server/chunks/entries/pages/admin/_error.svelte.js-CWPVdMhU.js +37 -0
- package/build/server/chunks/entries/pages/admin/_error.svelte.js-CWPVdMhU.js.map +1 -0
- package/build/server/chunks/entries/pages/admin/_layout.server.ts.js-BbHjfG8A.js +31 -0
- package/build/server/chunks/entries/pages/admin/_layout.server.ts.js-BbHjfG8A.js.map +1 -0
- package/build/server/chunks/entries/pages/admin/_layout.svelte.js-C9hPSe68.js +124 -0
- package/build/server/chunks/entries/pages/admin/_layout.svelte.js-C9hPSe68.js.map +1 -0
- package/build/server/chunks/entries/pages/admin/_page.server.ts.js-hALBd5MV.js +76 -0
- package/build/server/chunks/entries/pages/admin/_page.server.ts.js-hALBd5MV.js.map +1 -0
- package/build/server/chunks/entries/pages/admin/_page.svelte.js-BN005efX.js +394 -0
- package/build/server/chunks/entries/pages/admin/_page.svelte.js-BN005efX.js.map +1 -0
- package/build/server/chunks/entries/pages/admin/audit/_page.server.ts.js-Pz4dHllO.js +265 -0
- package/build/server/chunks/entries/pages/admin/audit/_page.server.ts.js-Pz4dHllO.js.map +1 -0
- package/build/server/chunks/entries/pages/admin/compute/_page.server.ts.js-ZN7ctP1Q.js +74 -0
- package/build/server/chunks/entries/pages/admin/compute/_page.server.ts.js-ZN7ctP1Q.js.map +1 -0
- package/build/server/chunks/entries/pages/admin/compute/_page.svelte.js-HJirdJSd.js +812 -0
- package/build/server/chunks/entries/pages/admin/compute/_page.svelte.js-HJirdJSd.js.map +1 -0
- package/build/server/chunks/entries/pages/admin/organizations/_page.server.ts.js-3iUU6m0R.js +35 -0
- package/build/server/chunks/entries/pages/admin/organizations/_page.server.ts.js-3iUU6m0R.js.map +1 -0
- package/build/server/chunks/entries/pages/admin/projects/_id_/_page.server.ts.js-SFJPLmgf.js +86 -0
- package/build/server/chunks/entries/pages/admin/projects/_id_/_page.server.ts.js-SFJPLmgf.js.map +1 -0
- package/build/server/chunks/entries/pages/admin/projects/_id_/_page.svelte.js-CSzJ7bPi.js +638 -0
- package/build/server/chunks/entries/pages/admin/projects/_id_/_page.svelte.js-CSzJ7bPi.js.map +1 -0
- package/build/server/chunks/entries/pages/admin/projects/_page.server.ts.js-B9x6UqyU.js +42 -0
- package/build/server/chunks/entries/pages/admin/projects/_page.server.ts.js-B9x6UqyU.js.map +1 -0
- package/build/server/chunks/entries/pages/admin/projects/_page.svelte.js-CN-OQU60.js +283 -0
- package/build/server/chunks/entries/pages/admin/projects/_page.svelte.js-CN-OQU60.js.map +1 -0
- package/build/server/chunks/entries/pages/admin/system/_page.server.ts.js-DxCSm6VD.js +87 -0
- package/build/server/chunks/entries/pages/admin/system/_page.server.ts.js-DxCSm6VD.js.map +1 -0
- package/build/server/chunks/entries/pages/admin/system/_page.svelte.js-CLv2jZxy.js +1394 -0
- package/build/server/chunks/entries/pages/admin/system/_page.svelte.js-CLv2jZxy.js.map +1 -0
- package/build/server/chunks/entries/pages/admin/users/_page.server.ts.js-BjfF9HDB.js +79 -0
- package/build/server/chunks/entries/pages/admin/users/_page.server.ts.js-BjfF9HDB.js.map +1 -0
- package/build/server/chunks/entries/pages/admin/users/_page.svelte.js-COkOBSFq.js +643 -0
- package/build/server/chunks/entries/pages/admin/users/_page.svelte.js-COkOBSFq.js.map +1 -0
- package/build/server/chunks/entries/pages/auth/email/sent/_page.svelte.js-DX_yQkpu.js +63 -0
- package/build/server/chunks/entries/pages/auth/email/sent/_page.svelte.js-DX_yQkpu.js.map +1 -0
- package/build/server/chunks/entries/pages/auth/email/start/_page.server.ts.js-B9CPuMDx.js +62 -0
- package/build/server/chunks/entries/pages/auth/email/start/_page.server.ts.js-B9CPuMDx.js.map +1 -0
- package/build/server/chunks/entries/pages/docs/api/_page.server.ts.js-B6edr7Lz.js +539 -0
- package/build/server/chunks/entries/pages/docs/api/_page.server.ts.js-B6edr7Lz.js.map +1 -0
- package/build/server/chunks/entries/pages/docs/api/_page.svelte.js-BUG2B-uf.js +90 -0
- package/build/server/chunks/entries/pages/docs/api/_page.svelte.js-BUG2B-uf.js.map +1 -0
- package/build/server/chunks/entries/pages/library/_guid_/_page.server.ts.js-BQIgjYAA.js +120 -0
- package/build/server/chunks/entries/pages/library/_guid_/_page.server.ts.js-BQIgjYAA.js.map +1 -0
- package/build/server/chunks/entries/pages/library/_guid_/_page.svelte.js-CA2wCtYg.js +12937 -0
- package/build/server/chunks/entries/pages/library/_guid_/_page.svelte.js-CA2wCtYg.js.map +1 -0
- package/build/server/chunks/entries/pages/library/_page.server.ts.js-O2NfjyR5.js +50 -0
- package/build/server/chunks/entries/pages/library/_page.server.ts.js-O2NfjyR5.js.map +1 -0
- package/build/server/chunks/entries/pages/library/_page.svelte.js-is4TQ1pz.js +313 -0
- package/build/server/chunks/entries/pages/library/_page.svelte.js-is4TQ1pz.js.map +1 -0
- package/build/server/chunks/entries/pages/login/_page.server.ts.js-CbMuVtuN.js +101 -0
- package/build/server/chunks/entries/pages/login/_page.server.ts.js-CbMuVtuN.js.map +1 -0
- package/build/server/chunks/entries/pages/login/_page.svelte.js-CrZjmfSL.js +272 -0
- package/build/server/chunks/entries/pages/login/_page.svelte.js-CrZjmfSL.js.map +1 -0
- package/build/server/chunks/entries/pages/logout/_page.server.ts.js-Dq2XLsxc.js +19 -0
- package/build/server/chunks/entries/pages/logout/_page.server.ts.js-Dq2XLsxc.js.map +1 -0
- package/build/server/chunks/entries/pages/projects/_layout.svelte.js-DU24XwG1.js +51 -0
- package/build/server/chunks/entries/pages/projects/_layout.svelte.js-DU24XwG1.js.map +1 -0
- package/build/server/chunks/entries/pages/projects/_page.server.ts.js-G_72rqYR.js +93 -0
- package/build/server/chunks/entries/pages/projects/_page.server.ts.js-G_72rqYR.js.map +1 -0
- package/build/server/chunks/entries/pages/projects/_page.svelte.js-BSUiiL26.js +3835 -0
- package/build/server/chunks/entries/pages/projects/_page.svelte.js-BSUiiL26.js.map +1 -0
- package/build/server/chunks/entries/pages/setup/_page.server.ts.js-C9s28cPE.js +116 -0
- package/build/server/chunks/entries/pages/setup/_page.server.ts.js-C9s28cPE.js.map +1 -0
- package/build/server/chunks/entries/pages/setup/_page.svelte.js-ual4F-0M.js +322 -0
- package/build/server/chunks/entries/pages/setup/_page.svelte.js-ual4F-0M.js.map +1 -0
- package/build/server/chunks/entries/pages/team/_layout.server.ts.js-C7F3Fzk7.js +28 -0
- package/build/server/chunks/entries/pages/team/_layout.server.ts.js-C7F3Fzk7.js.map +1 -0
- package/build/server/chunks/entries/pages/team/_layout.svelte.js-BsLCO3ai.js +171 -0
- package/build/server/chunks/entries/pages/team/_layout.svelte.js-BsLCO3ai.js.map +1 -0
- package/build/server/chunks/entries/pages/team/_page.server.ts.js-CnWTQjBX.js +35 -0
- package/build/server/chunks/entries/pages/team/_page.server.ts.js-CnWTQjBX.js.map +1 -0
- package/build/server/chunks/entries/pages/team/compute/_page.server.ts.js-CzGM0X0y.js +42 -0
- package/build/server/chunks/entries/pages/team/compute/_page.server.ts.js-CzGM0X0y.js.map +1 -0
- package/build/server/chunks/entries/pages/team/compute/_page.svelte.js-Dy79enPd.js +626 -0
- package/build/server/chunks/entries/pages/team/compute/_page.svelte.js-Dy79enPd.js.map +1 -0
- package/build/server/chunks/entries/pages/team/members/_page.server.ts.js-CsMKU11G.js +62 -0
- package/build/server/chunks/entries/pages/team/members/_page.server.ts.js-CsMKU11G.js.map +1 -0
- package/build/server/chunks/entries/pages/team/members/_page.svelte.js-DtbnlLb-.js +834 -0
- package/build/server/chunks/entries/pages/team/members/_page.svelte.js-DtbnlLb-.js.map +1 -0
- package/build/server/chunks/entries/pages/team/projects/_page.server.ts.js-DM4P6bF8.js +58 -0
- package/build/server/chunks/entries/pages/team/projects/_page.server.ts.js-DM4P6bF8.js.map +1 -0
- package/build/server/chunks/entries/pages/team/projects/_page.svelte.js-CUS7hXuW.js +423 -0
- package/build/server/chunks/entries/pages/team/projects/_page.svelte.js-CUS7hXuW.js.map +1 -0
- package/build/server/chunks/entries/pages/team/reclaim/_page.server.ts.js-3XuPeqbz.js +67 -0
- package/build/server/chunks/entries/pages/team/reclaim/_page.server.ts.js-3XuPeqbz.js.map +1 -0
- package/build/server/chunks/entries/pages/team/reclaim/_page.svelte.js-loDoHHFp.js +268 -0
- package/build/server/chunks/entries/pages/team/reclaim/_page.svelte.js-loDoHHFp.js.map +1 -0
- package/build/server/chunks/entries/pages/team/settings/_page.server.ts.js-S4bsZq7U.js +34 -0
- package/build/server/chunks/entries/pages/team/settings/_page.server.ts.js-S4bsZq7U.js.map +1 -0
- package/build/server/chunks/entries/pages/team/shares/_page.server.ts.js-BWF1GOVa.js +29 -0
- package/build/server/chunks/entries/pages/team/shares/_page.server.ts.js-BWF1GOVa.js.map +1 -0
- package/build/server/chunks/entries/pages/team/shares/_page.svelte.js-Co8IWnQ1.js +322 -0
- package/build/server/chunks/entries/pages/team/shares/_page.svelte.js-Co8IWnQ1.js.map +1 -0
- package/build/server/chunks/handler-BkKEPy-e.js +1206 -0
- package/build/server/chunks/handler-BkKEPy-e.js.map +1 -0
- package/build/server/chunks/index.js-Do5H2IvU.js +3767 -0
- package/build/server/chunks/index.js-Do5H2IvU.js.map +1 -0
- package/build/server/chunks/manifest.js-pdv1RtPO.js +612 -0
- package/build/server/chunks/manifest.js-pdv1RtPO.js.map +1 -0
- package/build/server/chunks/nodes/0.js-Hprj8npI.js +27 -0
- package/build/server/chunks/nodes/0.js-Hprj8npI.js.map +1 -0
- package/build/server/chunks/nodes/1.js-DBCBtIJd.js +9 -0
- package/build/server/chunks/nodes/1.js-DBCBtIJd.js.map +1 -0
- package/build/server/chunks/nodes/10.js-CE2qhg1V.js +30 -0
- package/build/server/chunks/nodes/10.js-CE2qhg1V.js.map +1 -0
- package/build/server/chunks/nodes/11.js-DE7y1qOG.js +36 -0
- package/build/server/chunks/nodes/11.js-DE7y1qOG.js.map +1 -0
- package/build/server/chunks/nodes/12.js-2u6RyTaW.js +28 -0
- package/build/server/chunks/nodes/12.js-2u6RyTaW.js.map +1 -0
- package/build/server/chunks/nodes/13.js-yTT0kTvD.js +28 -0
- package/build/server/chunks/nodes/13.js-yTT0kTvD.js.map +1 -0
- package/build/server/chunks/nodes/14.js-f71W7rEu.js +28 -0
- package/build/server/chunks/nodes/14.js-f71W7rEu.js.map +1 -0
- package/build/server/chunks/nodes/15.js-BOIbgpnA.js +37 -0
- package/build/server/chunks/nodes/15.js-BOIbgpnA.js.map +1 -0
- package/build/server/chunks/nodes/16.js-Bk2vfFBe.js +30 -0
- package/build/server/chunks/nodes/16.js-Bk2vfFBe.js.map +1 -0
- package/build/server/chunks/nodes/17.js-BKHKqIb1.js +9 -0
- package/build/server/chunks/nodes/17.js-BKHKqIb1.js.map +1 -0
- package/build/server/chunks/nodes/18.js-aa7BpAKa.js +30 -0
- package/build/server/chunks/nodes/18.js-aa7BpAKa.js.map +1 -0
- package/build/server/chunks/nodes/19.js-DUfs7ZbX.js +24 -0
- package/build/server/chunks/nodes/19.js-DUfs7ZbX.js.map +1 -0
- package/build/server/chunks/nodes/2.js-DAkcuEZJ.js +30 -0
- package/build/server/chunks/nodes/2.js-DAkcuEZJ.js.map +1 -0
- package/build/server/chunks/nodes/20.js-C37vTNdP.js +21 -0
- package/build/server/chunks/nodes/20.js-C37vTNdP.js.map +1 -0
- package/build/server/chunks/nodes/21.js-CCY_KdtE.js +40 -0
- package/build/server/chunks/nodes/21.js-CCY_KdtE.js.map +1 -0
- package/build/server/chunks/nodes/22.js-3E-ZXhRz.js +30 -0
- package/build/server/chunks/nodes/22.js-3E-ZXhRz.js.map +1 -0
- package/build/server/chunks/nodes/23.js-ClXXp4fn.js +27 -0
- package/build/server/chunks/nodes/23.js-ClXXp4fn.js.map +1 -0
- package/build/server/chunks/nodes/24.js-BDT6SA5A.js +29 -0
- package/build/server/chunks/nodes/24.js-BDT6SA5A.js.map +1 -0
- package/build/server/chunks/nodes/25.js-BZIYGUdd.js +30 -0
- package/build/server/chunks/nodes/25.js-BZIYGUdd.js.map +1 -0
- package/build/server/chunks/nodes/26.js-BHuBlTnJ.js +28 -0
- package/build/server/chunks/nodes/26.js-BHuBlTnJ.js.map +1 -0
- package/build/server/chunks/nodes/28.js-Bkdz_sz9.js +28 -0
- package/build/server/chunks/nodes/28.js-Bkdz_sz9.js.map +1 -0
- package/build/server/chunks/nodes/29.js-B7sI7fzr.js +28 -0
- package/build/server/chunks/nodes/29.js-B7sI7fzr.js.map +1 -0
- package/build/server/chunks/nodes/3.js-B7q1aUjQ.js +9 -0
- package/build/server/chunks/nodes/3.js-B7q1aUjQ.js.map +1 -0
- package/build/server/chunks/nodes/30.js-BTNfBtwN.js +29 -0
- package/build/server/chunks/nodes/30.js-BTNfBtwN.js.map +1 -0
- package/build/server/chunks/nodes/31.js-DwlVmX5O.js +28 -0
- package/build/server/chunks/nodes/31.js-DwlVmX5O.js.map +1 -0
- package/build/server/chunks/nodes/32.js-W82Bhk4t.js +28 -0
- package/build/server/chunks/nodes/32.js-W82Bhk4t.js.map +1 -0
- package/build/server/chunks/nodes/33.js-DyU642Zr.js +28 -0
- package/build/server/chunks/nodes/33.js-DyU642Zr.js.map +1 -0
- package/build/server/chunks/nodes/5.js-BTy8007H.js +15 -0
- package/build/server/chunks/nodes/5.js-BTy8007H.js.map +1 -0
- package/build/server/chunks/nodes/6.js-BbI45Jfn.js +28 -0
- package/build/server/chunks/nodes/6.js-BbI45Jfn.js.map +1 -0
- package/build/server/chunks/nodes/7.js-uCBJLzFQ.js +21 -0
- package/build/server/chunks/nodes/7.js-uCBJLzFQ.js.map +1 -0
- package/build/server/chunks/nodes/8.js-BDGAEpFO.js +32 -0
- package/build/server/chunks/nodes/8.js-BDGAEpFO.js.map +1 -0
- package/build/server/chunks/nodes/9.js-xxma6Uh0.js +28 -0
- package/build/server/chunks/nodes/9.js-xxma6Uh0.js.map +1 -0
- package/package.json +7 -7
- package/build/client/_app/immutable/chunks/BrGUmSS2.js +0 -2
- package/build/client/_app/immutable/chunks/BrGUmSS2.js.br +0 -0
- package/build/client/_app/immutable/chunks/BrGUmSS2.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BskVHZHd2.js +0 -1
- package/build/client/_app/immutable/chunks/BskVHZHd2.js.br +0 -2
- package/build/client/_app/immutable/chunks/BskVHZHd2.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DBzy-lkX2.js +0 -1
- package/build/client/_app/immutable/chunks/DBzy-lkX2.js.br +0 -0
- package/build/client/_app/immutable/chunks/DBzy-lkX2.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DO3aIYef.js +0 -1
- package/build/client/_app/immutable/chunks/DO3aIYef.js.br +0 -0
- package/build/client/_app/immutable/chunks/DO3aIYef.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DbUtZ3oV.js +0 -3
- package/build/client/_app/immutable/chunks/DbUtZ3oV.js.br +0 -0
- package/build/client/_app/immutable/chunks/DbUtZ3oV.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DfGeZf9g2.js +0 -1
- package/build/client/_app/immutable/chunks/DfGeZf9g2.js.br +0 -0
- package/build/client/_app/immutable/chunks/DfGeZf9g2.js.gz +0 -0
- package/build/client/_app/immutable/chunks/WNP79Len.js +0 -1
- package/build/client/_app/immutable/chunks/WNP79Len.js.br +0 -1
- package/build/client/_app/immutable/chunks/WNP79Len.js.gz +0 -0
- package/build/client/_app/immutable/chunks/wfUCdm042.js +0 -1
- package/build/client/_app/immutable/chunks/wfUCdm042.js.br +0 -0
- package/build/client/_app/immutable/chunks/wfUCdm042.js.gz +0 -0
- package/build/client/_app/immutable/entry/app.CQv1_orE.js +0 -2
- package/build/client/_app/immutable/entry/app.CQv1_orE.js.br +0 -0
- package/build/client/_app/immutable/entry/app.CQv1_orE.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.CZYYBJgs.js +0 -1
- package/build/client/_app/immutable/entry/start.CZYYBJgs.js.br +0 -0
- package/build/client/_app/immutable/entry/start.CZYYBJgs.js.gz +0 -0
- package/build/client/_app/immutable/nodes/1.D1RR_HQc.js +0 -1
- package/build/client/_app/immutable/nodes/1.D1RR_HQc.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.D1RR_HQc.js.gz +0 -0
- package/build/client/_app/immutable/nodes/11.C0qpL5Ew.js +0 -3
- package/build/client/_app/immutable/nodes/11.C0qpL5Ew.js.br +0 -0
- package/build/client/_app/immutable/nodes/11.C0qpL5Ew.js.gz +0 -0
- package/build/client/_app/immutable/nodes/13.Xy5XWwbk.js +0 -2
- package/build/client/_app/immutable/nodes/13.Xy5XWwbk.js.br +0 -0
- package/build/client/_app/immutable/nodes/13.Xy5XWwbk.js.gz +0 -0
- package/build/client/_app/immutable/nodes/14.Cws_gshS.js +0 -2
- package/build/client/_app/immutable/nodes/14.Cws_gshS.js.br +0 -0
- package/build/client/_app/immutable/nodes/14.Cws_gshS.js.gz +0 -0
- package/build/client/_app/immutable/nodes/15.CZ1Znn5N.js +0 -28
- package/build/client/_app/immutable/nodes/15.CZ1Znn5N.js.br +0 -0
- package/build/client/_app/immutable/nodes/15.CZ1Znn5N.js.gz +0 -0
- package/build/client/_app/immutable/nodes/16.BdQ3jz4-.js +0 -5
- package/build/client/_app/immutable/nodes/16.BdQ3jz4-.js.br +0 -0
- package/build/client/_app/immutable/nodes/16.BdQ3jz4-.js.gz +0 -0
- package/build/client/_app/immutable/nodes/17.iYYtbY3D.js +0 -2
- package/build/client/_app/immutable/nodes/17.iYYtbY3D.js.br +0 -0
- package/build/client/_app/immutable/nodes/17.iYYtbY3D.js.gz +0 -0
- package/build/client/_app/immutable/nodes/19.Bqoy6UDL.js +0 -7
- package/build/client/_app/immutable/nodes/19.Bqoy6UDL.js.br +0 -0
- package/build/client/_app/immutable/nodes/19.Bqoy6UDL.js.gz +0 -0
- package/build/client/_app/immutable/nodes/2.BBToJYSq.js +0 -1
- package/build/client/_app/immutable/nodes/2.BBToJYSq.js.br +0 -0
- package/build/client/_app/immutable/nodes/2.BBToJYSq.js.gz +0 -0
- package/build/client/_app/immutable/nodes/20.DG_iEsg5.js +0 -2
- package/build/client/_app/immutable/nodes/20.DG_iEsg5.js.br +0 -0
- package/build/client/_app/immutable/nodes/20.DG_iEsg5.js.gz +0 -0
- package/build/client/_app/immutable/nodes/21.0iANLNkS.js +0 -5495
- package/build/client/_app/immutable/nodes/21.0iANLNkS.js.br +0 -0
- package/build/client/_app/immutable/nodes/21.0iANLNkS.js.gz +0 -0
- package/build/client/_app/immutable/nodes/22.BI5wpG2H.js +0 -6
- package/build/client/_app/immutable/nodes/22.BI5wpG2H.js.br +0 -0
- package/build/client/_app/immutable/nodes/22.BI5wpG2H.js.gz +0 -0
- package/build/client/_app/immutable/nodes/24.C9To1pM7.js +0 -16
- package/build/client/_app/immutable/nodes/24.C9To1pM7.js.br +0 -0
- package/build/client/_app/immutable/nodes/24.C9To1pM7.js.gz +0 -0
- package/build/client/_app/immutable/nodes/25.CyOmjwhS.js +0 -6
- package/build/client/_app/immutable/nodes/25.CyOmjwhS.js.br +0 -0
- package/build/client/_app/immutable/nodes/25.CyOmjwhS.js.gz +0 -0
- package/build/client/_app/immutable/nodes/28.CZPMhEuc.js +0 -4
- package/build/client/_app/immutable/nodes/28.CZPMhEuc.js.br +0 -0
- package/build/client/_app/immutable/nodes/28.CZPMhEuc.js.gz +0 -0
- package/build/client/_app/immutable/nodes/29.Cscbsr12.js +0 -6
- package/build/client/_app/immutable/nodes/29.Cscbsr12.js.br +0 -0
- package/build/client/_app/immutable/nodes/29.Cscbsr12.js.gz +0 -0
- package/build/client/_app/immutable/nodes/3.ExFeyrCV.js +0 -1
- package/build/client/_app/immutable/nodes/3.ExFeyrCV.js.br +0 -0
- package/build/client/_app/immutable/nodes/3.ExFeyrCV.js.gz +0 -0
- package/build/client/_app/immutable/nodes/30.Clp_UQUA.js +0 -2
- package/build/client/_app/immutable/nodes/30.Clp_UQUA.js.br +0 -0
- package/build/client/_app/immutable/nodes/30.Clp_UQUA.js.gz +0 -0
- package/build/client/_app/immutable/nodes/31.SkyB5sNe.js +0 -2
- package/build/client/_app/immutable/nodes/31.SkyB5sNe.js.br +0 -0
- package/build/client/_app/immutable/nodes/31.SkyB5sNe.js.gz +0 -0
- package/build/client/_app/immutable/nodes/33.B0hOJ_R7.js +0 -1
- package/build/client/_app/immutable/nodes/33.B0hOJ_R7.js.br +0 -0
- package/build/client/_app/immutable/nodes/33.B0hOJ_R7.js.gz +0 -0
- package/build/client/_app/immutable/nodes/5.BK8hQP9w.js +0 -1
- package/build/client/_app/immutable/nodes/5.BK8hQP9w.js.br +0 -1
- package/build/client/_app/immutable/nodes/5.BK8hQP9w.js.gz +0 -0
- package/build/client/_app/immutable/nodes/6.A8YO-Dux.js +0 -1
- package/build/client/_app/immutable/nodes/6.A8YO-Dux.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.A8YO-Dux.js.gz +0 -0
- package/build/client/_app/immutable/nodes/7.CuQPpZtD.js +0 -1
- package/build/client/_app/immutable/nodes/7.CuQPpZtD.js.br +0 -0
- package/build/client/_app/immutable/nodes/7.CuQPpZtD.js.gz +0 -0
- package/build/client/_app/immutable/nodes/8.CD9T279q.js +0 -3
- package/build/client/_app/immutable/nodes/8.CD9T279q.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.CD9T279q.js.gz +0 -0
- package/build/client/_app/immutable/nodes/9.DI4T0Gl3.js +0 -1
- package/build/client/_app/immutable/nodes/9.DI4T0Gl3.js.br +0 -0
- package/build/client/_app/immutable/nodes/9.DI4T0Gl3.js.gz +0 -0
- package/build/server/chunks/chunks/AppHeader.js-CZWGzadx.js +0 -72
- package/build/server/chunks/chunks/AppHeader.js-CZWGzadx.js.map +0 -1
- package/build/server/chunks/chunks/SettingsMenu.js-8oZL1_5U.js +0 -1363
- package/build/server/chunks/chunks/SettingsMenu.js-8oZL1_5U.js.map +0 -1
- package/build/server/chunks/chunks/SideNav.js-Co7c3vUk.js +0 -71
- package/build/server/chunks/chunks/SideNav.js-Co7c3vUk.js.map +0 -1
- package/build/server/chunks/chunks/access.js-D_EmbQpt.js +0 -756
- package/build/server/chunks/chunks/access.js-D_EmbQpt.js.map +0 -1
- package/build/server/chunks/chunks/access.server.js-CFTCmOje.js +0 -12
- package/build/server/chunks/chunks/access.server.js-CFTCmOje.js.map +0 -1
- package/build/server/chunks/chunks/access2.server.js-9Ee7q6VX.js +0 -62
- package/build/server/chunks/chunks/access2.server.js-9Ee7q6VX.js.map +0 -1
- package/build/server/chunks/chunks/api-errors.js-zXhFjClE.js +0 -83
- package/build/server/chunks/chunks/api-errors.js-zXhFjClE.js.map +0 -1
- package/build/server/chunks/chunks/api.js-BrzkHVO1.js +0 -321
- package/build/server/chunks/chunks/api.js-BrzkHVO1.js.map +0 -1
- package/build/server/chunks/chunks/auth-bootstrap.server.js-Bfcebv5b.js +0 -152
- package/build/server/chunks/chunks/auth-bootstrap.server.js-Bfcebv5b.js.map +0 -1
- package/build/server/chunks/chunks/bootHealth.server.js-CkcVu09K.js +0 -90
- package/build/server/chunks/chunks/bootHealth.server.js-CkcVu09K.js.map +0 -1
- package/build/server/chunks/chunks/client.js-D_C2X7BK.js +0 -59
- package/build/server/chunks/chunks/client.js-D_C2X7BK.js.map +0 -1
- package/build/server/chunks/chunks/compute.js-6qwnJ27n.js +0 -430
- package/build/server/chunks/chunks/compute.js-6qwnJ27n.js.map +0 -1
- package/build/server/chunks/chunks/computeLimits.js-C8kLMl0I.js +0 -48
- package/build/server/chunks/chunks/computeLimits.js-C8kLMl0I.js.map +0 -1
- package/build/server/chunks/chunks/core-S0n3MNGf.js-BUNhiTSX.js +0 -766
- package/build/server/chunks/chunks/core-S0n3MNGf.js-BUNhiTSX.js.map +0 -1
- package/build/server/chunks/chunks/definitions.js-B3IaolnY.js +0 -508
- package/build/server/chunks/chunks/definitions.js-B3IaolnY.js.map +0 -1
- package/build/server/chunks/chunks/engine.server.js-Dg5oeDem.js +0 -566
- package/build/server/chunks/chunks/engine.server.js-Dg5oeDem.js.map +0 -1
- package/build/server/chunks/chunks/forms.js-_Zxa49KF.js +0 -2
- package/build/server/chunks/chunks/forms.js-_Zxa49KF.js.map +0 -1
- package/build/server/chunks/chunks/handlers.js-DHZdPY9b.js +0 -1375
- package/build/server/chunks/chunks/handlers.js-DHZdPY9b.js.map +0 -1
- package/build/server/chunks/chunks/http.js-O6udofCE.js +0 -59
- package/build/server/chunks/chunks/http.js-O6udofCE.js.map +0 -1
- package/build/server/chunks/chunks/instanceAdmins.server.js-_bupnrIg.js +0 -23
- package/build/server/chunks/chunks/instanceAdmins.server.js-_bupnrIg.js.map +0 -1
- package/build/server/chunks/chunks/internal2.js-B9dOG_8O.js +0 -224
- package/build/server/chunks/chunks/internal2.js-B9dOG_8O.js.map +0 -1
- package/build/server/chunks/chunks/limits.js-D0AfRdGH.js +0 -203
- package/build/server/chunks/chunks/limits.js-D0AfRdGH.js.map +0 -1
- package/build/server/chunks/chunks/navigation.js-_Zxa49KF.js +0 -2
- package/build/server/chunks/chunks/navigation.js-_Zxa49KF.js.map +0 -1
- package/build/server/chunks/chunks/package.js-C81c6ooX.js +0 -82
- package/build/server/chunks/chunks/package.js-C81c6ooX.js.map +0 -1
- package/build/server/chunks/chunks/paths.js-DOROAIwy.js +0 -19
- package/build/server/chunks/chunks/paths.js-DOROAIwy.js.map +0 -1
- package/build/server/chunks/chunks/permissions.server.js-jsSehY5c.js +0 -24
- package/build/server/chunks/chunks/permissions.server.js-jsSehY5c.js.map +0 -1
- package/build/server/chunks/chunks/projects.js-B3Cx3LQn.js +0 -47
- package/build/server/chunks/chunks/projects.js-B3Cx3LQn.js.map +0 -1
- package/build/server/chunks/chunks/providers.server.js-Bih4Rslu.js +0 -5904
- package/build/server/chunks/chunks/providers.server.js-Bih4Rslu.js.map +0 -1
- package/build/server/chunks/chunks/request.js-D6D0knHt.js +0 -119
- package/build/server/chunks/chunks/request.js-D6D0knHt.js.map +0 -1
- package/build/server/chunks/chunks/resolve.server.js-BztLkpHh.js +0 -59
- package/build/server/chunks/chunks/resolve.server.js-BztLkpHh.js.map +0 -1
- package/build/server/chunks/chunks/schema.js-OOTvnCct.js +0 -1819
- package/build/server/chunks/chunks/schema.js-OOTvnCct.js.map +0 -1
- package/build/server/chunks/chunks/selfUpdate.server.js-L8AQzBFY.js +0 -144
- package/build/server/chunks/chunks/selfUpdate.server.js-L8AQzBFY.js.map +0 -1
- package/build/server/chunks/chunks/solve.server.js-ClaDj0uR.js +0 -312
- package/build/server/chunks/chunks/solve.server.js-ClaDj0uR.js.map +0 -1
- package/build/server/chunks/chunks/state.js-DhrouCvD.js +0 -76
- package/build/server/chunks/chunks/state.js-DhrouCvD.js.map +0 -1
- package/build/server/chunks/chunks/stores.js-BV6BXBC_.js +0 -35
- package/build/server/chunks/chunks/stores.js-BV6BXBC_.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/admin/compute/_server.ts.js-DSV0jRXp.js +0 -98
- package/build/server/chunks/entries/endpoints/api/admin/compute/_server.ts.js-DSV0jRXp.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/admin/compute/actions/_server.ts.js-B45ijFCv.js +0 -57
- package/build/server/chunks/entries/endpoints/api/admin/compute/actions/_server.ts.js-B45ijFCv.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/admin/compute/status/_server.ts.js-CPmA9gjY.js +0 -83
- package/build/server/chunks/entries/endpoints/api/admin/compute/status/_server.ts.js-CPmA9gjY.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/admin/orgs/_id_/_server.ts.js-C9QfsrjV.js +0 -46
- package/build/server/chunks/entries/endpoints/api/admin/orgs/_id_/_server.ts.js-C9QfsrjV.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/admin/orgs/_server.ts.js-DKaBC1CW.js +0 -69
- package/build/server/chunks/entries/endpoints/api/admin/orgs/_server.ts.js-DKaBC1CW.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/admin/projects/_id_/_server.ts.js-DTOw-b2I.js +0 -62
- package/build/server/chunks/entries/endpoints/api/admin/projects/_id_/_server.ts.js-DTOw-b2I.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/admin/projects/_id_/grants/_grantId_/_server.ts.js-DOte2SIu.js +0 -34
- package/build/server/chunks/entries/endpoints/api/admin/projects/_id_/grants/_grantId_/_server.ts.js-DOte2SIu.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/admin/projects/_id_/grants/_server.ts.js-sKE3FzkK.js +0 -65
- package/build/server/chunks/entries/endpoints/api/admin/projects/_id_/grants/_server.ts.js-sKE3FzkK.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/admin/projects/_server.ts.js-BmcsFya7.js +0 -80
- package/build/server/chunks/entries/endpoints/api/admin/projects/_server.ts.js-BmcsFya7.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/admin/system/health/_server.ts.js-CqM6fU77.js +0 -334
- package/build/server/chunks/entries/endpoints/api/admin/system/health/_server.ts.js-CqM6fU77.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/admin/system/throughput/_server.ts.js-p16tJWP9.js +0 -85
- package/build/server/chunks/entries/endpoints/api/admin/system/throughput/_server.ts.js-p16tJWP9.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/admin/system/update/_server.ts.js-DdHThXS4.js +0 -607
- package/build/server/chunks/entries/endpoints/api/admin/system/update/_server.ts.js-DdHThXS4.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/admin/users/_id_/_server.ts.js-C_3T6U2t.js +0 -58
- package/build/server/chunks/entries/endpoints/api/admin/users/_id_/_server.ts.js-C_3T6U2t.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/admin/users/_id_/disable/_server.ts.js-8DHvYmk8.js +0 -67
- package/build/server/chunks/entries/endpoints/api/admin/users/_id_/disable/_server.ts.js-8DHvYmk8.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/admin/users/_server.ts.js-BJ8odGvx.js +0 -83
- package/build/server/chunks/entries/endpoints/api/admin/users/_server.ts.js-BJ8odGvx.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/diag/throughput/_server.ts.js-Cm_nXHIu.js +0 -62
- package/build/server/chunks/entries/endpoints/api/diag/throughput/_server.ts.js-Cm_nXHIu.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/files/_...path_/_server.ts.js-CLDNBJ2F.js +0 -93
- package/build/server/chunks/entries/endpoints/api/files/_...path_/_server.ts.js-CLDNBJ2F.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/health/_server.ts.js-CDQmcobB.js +0 -59
- package/build/server/chunks/entries/endpoints/api/health/_server.ts.js-CDQmcobB.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/health/ready/_server.ts.js-CRiVoWaR.js +0 -62
- package/build/server/chunks/entries/endpoints/api/health/ready/_server.ts.js-CRiVoWaR.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/v1/compute/_server.ts.js-Bawuv7xy.js +0 -84
- package/build/server/chunks/entries/endpoints/api/v1/compute/_server.ts.js-Bawuv7xy.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/v1/compute/schema/_server.ts.js-BlD03WTi.js +0 -63
- package/build/server/chunks/entries/endpoints/api/v1/compute/schema/_server.ts.js-BlD03WTi.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/_server.ts.js-D9U6sXVM.js +0 -40
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/_server.ts.js-D9U6sXVM.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/image/_server.ts.js-CxKM_Pjx.js +0 -38
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/image/_server.ts.js-CxKM_Pjx.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/publish/_server.ts.js-_7mo_eIn.js +0 -38
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/publish/_server.ts.js-_7mo_eIn.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/schema/_server.ts.js-i18o6Bnj.js +0 -38
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/schema/_server.ts.js-i18o6Bnj.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/share-links/_linkId_/_server.ts.js-Bgzi91kI.js +0 -38
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/share-links/_linkId_/_server.ts.js-Bgzi91kI.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/share-links/_server.ts.js-BXqpTK_5.js +0 -39
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/share-links/_server.ts.js-BXqpTK_5.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/solve/_server.ts.js-B7Rxvtml.js +0 -208
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/solve/_server.ts.js-B7Rxvtml.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/versions/_server.ts.js-oCLF1AFb.js +0 -39
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/versions/_server.ts.js-oCLF1AFb.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/versions/_versionId_/_server.ts.js-D7RlO9zM.js +0 -39
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/versions/_versionId_/_server.ts.js-D7RlO9zM.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/versions/_versionId_/schema/_server.ts.js-CrBHMIGT.js +0 -38
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/versions/_versionId_/schema/_server.ts.js-CrBHMIGT.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_server.ts.js-Czf5plQf.js +0 -39
- package/build/server/chunks/entries/endpoints/api/v1/definitions/_server.ts.js-Czf5plQf.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/v1/me/_server.ts.js-BqlYJyDP.js +0 -38
- package/build/server/chunks/entries/endpoints/api/v1/me/_server.ts.js-BqlYJyDP.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/v1/me/starred/_guid_/_server.ts.js-CV5tpv_Z.js +0 -39
- package/build/server/chunks/entries/endpoints/api/v1/me/starred/_guid_/_server.ts.js-CV5tpv_Z.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/_server.ts.js-csVlxCR8.js +0 -38
- package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/_server.ts.js-csVlxCR8.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/assets/_kind_/_server.ts.js-CcTsEI2T.js +0 -39
- package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/assets/_kind_/_server.ts.js-CcTsEI2T.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/compute/_server.ts.js-tP-A22IZ.js +0 -39
- package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/compute/_server.ts.js-tP-A22IZ.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/invites/_id_/_server.ts.js-DN8ciWLu.js +0 -38
- package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/invites/_id_/_server.ts.js-DN8ciWLu.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/invites/_id_/resend/_server.ts.js-sW5GZDBh.js +0 -38
- package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/invites/_id_/resend/_server.ts.js-sW5GZDBh.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/invites/_server.ts.js-CBBmr0Rh.js +0 -39
- package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/invites/_server.ts.js-CBBmr0Rh.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/members/_server.ts.js-BxDGrh3n.js +0 -38
- package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/members/_server.ts.js-BxDGrh3n.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/members/_userId_/_server.ts.js-CUprIVhF.js +0 -39
- package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/members/_userId_/_server.ts.js-CUprIVhF.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/_server.ts.js-C8uYz3aA.js +0 -40
- package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/_server.ts.js-C8uYz3aA.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/members/_server.ts.js-D3FJFMXK.js +0 -39
- package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/members/_server.ts.js-D3FJFMXK.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/members/_userId_/_server.ts.js-CIZJLjNI.js +0 -39
- package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/members/_userId_/_server.ts.js-CIZJLjNI.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/reclaim/_server.ts.js-Cv5ruGvd.js +0 -38
- package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/reclaim/_server.ts.js-Cv5ruGvd.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/v1/projects/_server.ts.js-Co0i37yy.js +0 -39
- package/build/server/chunks/entries/endpoints/api/v1/projects/_server.ts.js-Co0i37yy.js.map +0 -1
- package/build/server/chunks/entries/endpoints/auth/email/callback/_server.ts.js-CIvQrF9V.js +0 -47
- package/build/server/chunks/entries/endpoints/auth/email/callback/_server.ts.js-CIvQrF9V.js.map +0 -1
- package/build/server/chunks/entries/endpoints/auth/supabase/callback/_server.ts.js-Be26Kyu_.js +0 -53
- package/build/server/chunks/entries/endpoints/auth/supabase/callback/_server.ts.js-Be26Kyu_.js.map +0 -1
- package/build/server/chunks/entries/endpoints/auth/supabase/start/_server.ts.js-CandubRa.js +0 -64
- package/build/server/chunks/entries/endpoints/auth/supabase/start/_server.ts.js-CandubRa.js.map +0 -1
- package/build/server/chunks/entries/hooks.server.js-CksrtMwD.js +0 -337
- package/build/server/chunks/entries/hooks.server.js-CksrtMwD.js.map +0 -1
- package/build/server/chunks/entries/pages/_error.svelte.js-CEPaH8eK.js +0 -36
- package/build/server/chunks/entries/pages/_error.svelte.js-CEPaH8eK.js.map +0 -1
- package/build/server/chunks/entries/pages/_layout.server.ts.js-C0mhWVBw.js +0 -34
- package/build/server/chunks/entries/pages/_layout.server.ts.js-C0mhWVBw.js.map +0 -1
- package/build/server/chunks/entries/pages/_page.server.ts.js-BSs_XapG.js +0 -55
- package/build/server/chunks/entries/pages/_page.server.ts.js-BSs_XapG.js.map +0 -1
- package/build/server/chunks/entries/pages/_page.svelte.js-CsD816Ow.js +0 -161
- package/build/server/chunks/entries/pages/_page.svelte.js-CsD816Ow.js.map +0 -1
- package/build/server/chunks/entries/pages/accept-invite/_page.server.ts.js-CKTm33Dc.js +0 -181
- package/build/server/chunks/entries/pages/accept-invite/_page.server.ts.js-CKTm33Dc.js.map +0 -1
- package/build/server/chunks/entries/pages/accept-invite/_page.svelte.js-D7ApNiKH.js +0 -188
- package/build/server/chunks/entries/pages/accept-invite/_page.svelte.js-D7ApNiKH.js.map +0 -1
- package/build/server/chunks/entries/pages/admin/_error.svelte.js-Bq_pNOOJ.js +0 -37
- package/build/server/chunks/entries/pages/admin/_error.svelte.js-Bq_pNOOJ.js.map +0 -1
- package/build/server/chunks/entries/pages/admin/_layout.server.ts.js-D0mEV0p-.js +0 -31
- package/build/server/chunks/entries/pages/admin/_layout.server.ts.js-D0mEV0p-.js.map +0 -1
- package/build/server/chunks/entries/pages/admin/_layout.svelte.js-loXy2occ.js +0 -124
- package/build/server/chunks/entries/pages/admin/_layout.svelte.js-loXy2occ.js.map +0 -1
- package/build/server/chunks/entries/pages/admin/_page.server.ts.js-CjtiaKix.js +0 -76
- package/build/server/chunks/entries/pages/admin/_page.server.ts.js-CjtiaKix.js.map +0 -1
- package/build/server/chunks/entries/pages/admin/_page.svelte.js-DJ6wD1d-.js +0 -394
- package/build/server/chunks/entries/pages/admin/_page.svelte.js-DJ6wD1d-.js.map +0 -1
- package/build/server/chunks/entries/pages/admin/audit/_page.server.ts.js-DlLA0oUG.js +0 -265
- package/build/server/chunks/entries/pages/admin/audit/_page.server.ts.js-DlLA0oUG.js.map +0 -1
- package/build/server/chunks/entries/pages/admin/compute/_page.server.ts.js-EggCj7Cv.js +0 -74
- package/build/server/chunks/entries/pages/admin/compute/_page.server.ts.js-EggCj7Cv.js.map +0 -1
- package/build/server/chunks/entries/pages/admin/compute/_page.svelte.js-DVL-I6l5.js +0 -806
- package/build/server/chunks/entries/pages/admin/compute/_page.svelte.js-DVL-I6l5.js.map +0 -1
- package/build/server/chunks/entries/pages/admin/organizations/_page.server.ts.js-rb29tLQb.js +0 -35
- package/build/server/chunks/entries/pages/admin/organizations/_page.server.ts.js-rb29tLQb.js.map +0 -1
- package/build/server/chunks/entries/pages/admin/projects/_id_/_page.server.ts.js-Dysi3KHk.js +0 -86
- package/build/server/chunks/entries/pages/admin/projects/_id_/_page.server.ts.js-Dysi3KHk.js.map +0 -1
- package/build/server/chunks/entries/pages/admin/projects/_id_/_page.svelte.js-lZ0FxGMY.js +0 -638
- package/build/server/chunks/entries/pages/admin/projects/_id_/_page.svelte.js-lZ0FxGMY.js.map +0 -1
- package/build/server/chunks/entries/pages/admin/projects/_page.server.ts.js-CQezgneK.js +0 -42
- package/build/server/chunks/entries/pages/admin/projects/_page.server.ts.js-CQezgneK.js.map +0 -1
- package/build/server/chunks/entries/pages/admin/projects/_page.svelte.js-BBsdr_U9.js +0 -283
- package/build/server/chunks/entries/pages/admin/projects/_page.svelte.js-BBsdr_U9.js.map +0 -1
- package/build/server/chunks/entries/pages/admin/system/_page.server.ts.js-UmRrVYu6.js +0 -87
- package/build/server/chunks/entries/pages/admin/system/_page.server.ts.js-UmRrVYu6.js.map +0 -1
- package/build/server/chunks/entries/pages/admin/system/_page.svelte.js-DM_zbxnc.js +0 -1394
- package/build/server/chunks/entries/pages/admin/system/_page.svelte.js-DM_zbxnc.js.map +0 -1
- package/build/server/chunks/entries/pages/admin/users/_page.server.ts.js-BmWaCeAf.js +0 -79
- package/build/server/chunks/entries/pages/admin/users/_page.server.ts.js-BmWaCeAf.js.map +0 -1
- package/build/server/chunks/entries/pages/admin/users/_page.svelte.js-DfBCqdlo.js +0 -643
- package/build/server/chunks/entries/pages/admin/users/_page.svelte.js-DfBCqdlo.js.map +0 -1
- package/build/server/chunks/entries/pages/auth/email/sent/_page.svelte.js-BX-Sb6Ac.js +0 -63
- package/build/server/chunks/entries/pages/auth/email/sent/_page.svelte.js-BX-Sb6Ac.js.map +0 -1
- package/build/server/chunks/entries/pages/auth/email/start/_page.server.ts.js-DZWpbxrV.js +0 -62
- package/build/server/chunks/entries/pages/auth/email/start/_page.server.ts.js-DZWpbxrV.js.map +0 -1
- package/build/server/chunks/entries/pages/docs/api/_page.server.ts.js-BhqQRcyd.js +0 -539
- package/build/server/chunks/entries/pages/docs/api/_page.server.ts.js-BhqQRcyd.js.map +0 -1
- package/build/server/chunks/entries/pages/docs/api/_page.svelte.js-DFawafI6.js +0 -90
- package/build/server/chunks/entries/pages/docs/api/_page.svelte.js-DFawafI6.js.map +0 -1
- package/build/server/chunks/entries/pages/library/_guid_/_page.server.ts.js-BQQoxwr-.js +0 -120
- package/build/server/chunks/entries/pages/library/_guid_/_page.server.ts.js-BQQoxwr-.js.map +0 -1
- package/build/server/chunks/entries/pages/library/_guid_/_page.svelte.js-DnxruCKa.js +0 -12937
- package/build/server/chunks/entries/pages/library/_guid_/_page.svelte.js-DnxruCKa.js.map +0 -1
- package/build/server/chunks/entries/pages/library/_page.server.ts.js-CjjATvOZ.js +0 -50
- package/build/server/chunks/entries/pages/library/_page.server.ts.js-CjjATvOZ.js.map +0 -1
- package/build/server/chunks/entries/pages/library/_page.svelte.js-33TSv-40.js +0 -313
- package/build/server/chunks/entries/pages/library/_page.svelte.js-33TSv-40.js.map +0 -1
- package/build/server/chunks/entries/pages/login/_page.server.ts.js-Zs_bPpBH.js +0 -101
- package/build/server/chunks/entries/pages/login/_page.server.ts.js-Zs_bPpBH.js.map +0 -1
- package/build/server/chunks/entries/pages/login/_page.svelte.js-slXQelMG.js +0 -272
- package/build/server/chunks/entries/pages/login/_page.svelte.js-slXQelMG.js.map +0 -1
- package/build/server/chunks/entries/pages/logout/_page.server.ts.js-DFTKpzWT.js +0 -19
- package/build/server/chunks/entries/pages/logout/_page.server.ts.js-DFTKpzWT.js.map +0 -1
- package/build/server/chunks/entries/pages/projects/_layout.svelte.js-DVgspqEb.js +0 -51
- package/build/server/chunks/entries/pages/projects/_layout.svelte.js-DVgspqEb.js.map +0 -1
- package/build/server/chunks/entries/pages/projects/_page.server.ts.js-DvL422x4.js +0 -93
- package/build/server/chunks/entries/pages/projects/_page.server.ts.js-DvL422x4.js.map +0 -1
- package/build/server/chunks/entries/pages/projects/_page.svelte.js-Dfo3R-0C.js +0 -3835
- package/build/server/chunks/entries/pages/projects/_page.svelte.js-Dfo3R-0C.js.map +0 -1
- package/build/server/chunks/entries/pages/setup/_page.server.ts.js-JFuRJqNz.js +0 -116
- package/build/server/chunks/entries/pages/setup/_page.server.ts.js-JFuRJqNz.js.map +0 -1
- package/build/server/chunks/entries/pages/setup/_page.svelte.js-TeNRmfM6.js +0 -322
- package/build/server/chunks/entries/pages/setup/_page.svelte.js-TeNRmfM6.js.map +0 -1
- package/build/server/chunks/entries/pages/team/_layout.server.ts.js-CrkP6z5D.js +0 -28
- package/build/server/chunks/entries/pages/team/_layout.server.ts.js-CrkP6z5D.js.map +0 -1
- package/build/server/chunks/entries/pages/team/_layout.svelte.js-CQUtftyM.js +0 -171
- package/build/server/chunks/entries/pages/team/_layout.svelte.js-CQUtftyM.js.map +0 -1
- package/build/server/chunks/entries/pages/team/_page.server.ts.js-DQzE8bdS.js +0 -35
- package/build/server/chunks/entries/pages/team/_page.server.ts.js-DQzE8bdS.js.map +0 -1
- package/build/server/chunks/entries/pages/team/compute/_page.server.ts.js-DqcmtS9m.js +0 -42
- package/build/server/chunks/entries/pages/team/compute/_page.server.ts.js-DqcmtS9m.js.map +0 -1
- package/build/server/chunks/entries/pages/team/compute/_page.svelte.js-DzJckNcH.js +0 -626
- package/build/server/chunks/entries/pages/team/compute/_page.svelte.js-DzJckNcH.js.map +0 -1
- package/build/server/chunks/entries/pages/team/members/_page.server.ts.js-CJxlKMxj.js +0 -62
- package/build/server/chunks/entries/pages/team/members/_page.server.ts.js-CJxlKMxj.js.map +0 -1
- package/build/server/chunks/entries/pages/team/members/_page.svelte.js-CQE5GaGf.js +0 -834
- package/build/server/chunks/entries/pages/team/members/_page.svelte.js-CQE5GaGf.js.map +0 -1
- package/build/server/chunks/entries/pages/team/projects/_page.server.ts.js-DYaZ5sL8.js +0 -58
- package/build/server/chunks/entries/pages/team/projects/_page.server.ts.js-DYaZ5sL8.js.map +0 -1
- package/build/server/chunks/entries/pages/team/projects/_page.svelte.js-DaIReETl.js +0 -423
- package/build/server/chunks/entries/pages/team/projects/_page.svelte.js-DaIReETl.js.map +0 -1
- package/build/server/chunks/entries/pages/team/reclaim/_page.server.ts.js-Dobx2Arh.js +0 -67
- package/build/server/chunks/entries/pages/team/reclaim/_page.server.ts.js-Dobx2Arh.js.map +0 -1
- package/build/server/chunks/entries/pages/team/reclaim/_page.svelte.js-CFreOlJS.js +0 -268
- package/build/server/chunks/entries/pages/team/reclaim/_page.svelte.js-CFreOlJS.js.map +0 -1
- package/build/server/chunks/entries/pages/team/settings/_page.server.ts.js-g9MzZDrV.js +0 -34
- package/build/server/chunks/entries/pages/team/settings/_page.server.ts.js-g9MzZDrV.js.map +0 -1
- package/build/server/chunks/entries/pages/team/shares/_page.server.ts.js-CwaVjK5h.js +0 -29
- package/build/server/chunks/entries/pages/team/shares/_page.server.ts.js-CwaVjK5h.js.map +0 -1
- package/build/server/chunks/entries/pages/team/shares/_page.svelte.js-WZKJ4OAM.js +0 -322
- package/build/server/chunks/entries/pages/team/shares/_page.svelte.js-WZKJ4OAM.js.map +0 -1
- package/build/server/chunks/handler-Bc7_J8rK.js +0 -1206
- package/build/server/chunks/handler-Bc7_J8rK.js.map +0 -1
- package/build/server/chunks/index.js-B5j-trfO.js +0 -3767
- package/build/server/chunks/index.js-B5j-trfO.js.map +0 -1
- package/build/server/chunks/manifest.js-BbuGmGDv.js +0 -612
- package/build/server/chunks/manifest.js-BbuGmGDv.js.map +0 -1
- package/build/server/chunks/nodes/0.js-BSuzI0_i.js +0 -27
- package/build/server/chunks/nodes/0.js-BSuzI0_i.js.map +0 -1
- package/build/server/chunks/nodes/1.js-f1QmTVsf.js +0 -9
- package/build/server/chunks/nodes/1.js-f1QmTVsf.js.map +0 -1
- package/build/server/chunks/nodes/10.js-BmlChSy1.js +0 -30
- package/build/server/chunks/nodes/10.js-BmlChSy1.js.map +0 -1
- package/build/server/chunks/nodes/11.js-DCv_0e5T.js +0 -36
- package/build/server/chunks/nodes/11.js-DCv_0e5T.js.map +0 -1
- package/build/server/chunks/nodes/12.js-CWH508Y4.js +0 -28
- package/build/server/chunks/nodes/12.js-CWH508Y4.js.map +0 -1
- package/build/server/chunks/nodes/13.js-BcuOzJ2V.js +0 -28
- package/build/server/chunks/nodes/13.js-BcuOzJ2V.js.map +0 -1
- package/build/server/chunks/nodes/14.js-BXbL0eW4.js +0 -28
- package/build/server/chunks/nodes/14.js-BXbL0eW4.js.map +0 -1
- package/build/server/chunks/nodes/15.js-CJcli5Lp.js +0 -37
- package/build/server/chunks/nodes/15.js-CJcli5Lp.js.map +0 -1
- package/build/server/chunks/nodes/16.js-Dj8j1Fjv.js +0 -30
- package/build/server/chunks/nodes/16.js-Dj8j1Fjv.js.map +0 -1
- package/build/server/chunks/nodes/17.js-BTUNg2ES.js +0 -9
- package/build/server/chunks/nodes/17.js-BTUNg2ES.js.map +0 -1
- package/build/server/chunks/nodes/18.js-DU4CynKQ.js +0 -30
- package/build/server/chunks/nodes/18.js-DU4CynKQ.js.map +0 -1
- package/build/server/chunks/nodes/19.js-DGN7fXQL.js +0 -24
- package/build/server/chunks/nodes/19.js-DGN7fXQL.js.map +0 -1
- package/build/server/chunks/nodes/2.js-Bv9iLwjv.js +0 -30
- package/build/server/chunks/nodes/2.js-Bv9iLwjv.js.map +0 -1
- package/build/server/chunks/nodes/20.js-BOs6maJZ.js +0 -21
- package/build/server/chunks/nodes/20.js-BOs6maJZ.js.map +0 -1
- package/build/server/chunks/nodes/21.js-xS8GYvuR.js +0 -40
- package/build/server/chunks/nodes/21.js-xS8GYvuR.js.map +0 -1
- package/build/server/chunks/nodes/22.js-le3Y7YjG.js +0 -30
- package/build/server/chunks/nodes/22.js-le3Y7YjG.js.map +0 -1
- package/build/server/chunks/nodes/23.js-Ddcqp72A.js +0 -27
- package/build/server/chunks/nodes/23.js-Ddcqp72A.js.map +0 -1
- package/build/server/chunks/nodes/24.js-DWqnRg37.js +0 -29
- package/build/server/chunks/nodes/24.js-DWqnRg37.js.map +0 -1
- package/build/server/chunks/nodes/25.js-vdjUrP3p.js +0 -30
- package/build/server/chunks/nodes/25.js-vdjUrP3p.js.map +0 -1
- package/build/server/chunks/nodes/26.js-Dd8qvyFn.js +0 -28
- package/build/server/chunks/nodes/26.js-Dd8qvyFn.js.map +0 -1
- package/build/server/chunks/nodes/28.js-kgcqhNUd.js +0 -28
- package/build/server/chunks/nodes/28.js-kgcqhNUd.js.map +0 -1
- package/build/server/chunks/nodes/29.js-CPCc2aTN.js +0 -28
- package/build/server/chunks/nodes/29.js-CPCc2aTN.js.map +0 -1
- package/build/server/chunks/nodes/3.js-Bfkf0lzG.js +0 -9
- package/build/server/chunks/nodes/3.js-Bfkf0lzG.js.map +0 -1
- package/build/server/chunks/nodes/30.js-uJTp5QQV.js +0 -29
- package/build/server/chunks/nodes/30.js-uJTp5QQV.js.map +0 -1
- package/build/server/chunks/nodes/31.js-CsiUz2Oh.js +0 -28
- package/build/server/chunks/nodes/31.js-CsiUz2Oh.js.map +0 -1
- package/build/server/chunks/nodes/32.js-Cqnk779r.js +0 -28
- package/build/server/chunks/nodes/32.js-Cqnk779r.js.map +0 -1
- package/build/server/chunks/nodes/33.js-CwUSjHLi.js +0 -28
- package/build/server/chunks/nodes/33.js-CwUSjHLi.js.map +0 -1
- package/build/server/chunks/nodes/5.js-CEpLixyU.js +0 -15
- package/build/server/chunks/nodes/5.js-CEpLixyU.js.map +0 -1
- package/build/server/chunks/nodes/6.js-CMQwKJSb.js +0 -28
- package/build/server/chunks/nodes/6.js-CMQwKJSb.js.map +0 -1
- package/build/server/chunks/nodes/7.js-CbjeBbk0.js +0 -21
- package/build/server/chunks/nodes/7.js-CbjeBbk0.js.map +0 -1
- package/build/server/chunks/nodes/8.js-B0rSyCfn.js +0 -32
- package/build/server/chunks/nodes/8.js-B0rSyCfn.js.map +0 -1
- package/build/server/chunks/nodes/9.js-DeUJlQ9M.js +0 -28
- package/build/server/chunks/nodes/9.js-DeUJlQ9M.js.map +0 -1
|
@@ -0,0 +1,756 @@
|
|
|
1
|
+
import { A as ALL_PLATFORM_PERMISSIONS, a as ALL_ORG_PERMISSIONS, h as hasPermission } from './src.js-Cf1j97Z6.js';
|
|
2
|
+
import { $ as $e, Y as Ye, U as UI_SCHEMA_VERSION } from './schema.js-CRA1KL_l.js';
|
|
3
|
+
|
|
4
|
+
//#region ../platform/src/access/rules.ts
|
|
5
|
+
/**
|
|
6
|
+
* Pure access-control rules — single source of truth for UI gating across
|
|
7
|
+
* adapters. Mutating store methods MUST re-enforce the same predicate
|
|
8
|
+
* independently (RLS in SQL, code in local/JSON).
|
|
9
|
+
*
|
|
10
|
+
* `instance_admin` bypass is not baked into rule bodies — wrap calls with
|
|
11
|
+
* `withAdminBypass` at the call site.
|
|
12
|
+
*/
|
|
13
|
+
function isInstanceAdmin(platformPermissions) {
|
|
14
|
+
return platformPermissions.includes("instance_admin");
|
|
15
|
+
}
|
|
16
|
+
function withAdminBypass(platformPermissions, rule) {
|
|
17
|
+
if (isInstanceAdmin(platformPermissions)) return true;
|
|
18
|
+
return rule();
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Authenticated-user view rule. Anonymous access goes through share-link
|
|
22
|
+
* tokens instead — the route resolves a valid token before this runs.
|
|
23
|
+
*
|
|
24
|
+
* Platform projects: `instance_admin` always passes; otherwise any grant
|
|
25
|
+
* (view-only or canSolve) satisfies view access.
|
|
26
|
+
*/
|
|
27
|
+
function canView(input) {
|
|
28
|
+
const { project, member, orgMember, allowCrossOrgPublic, enablePlatformProjects, platformPermissions, platformGrants, actingOrgId, userId } = input;
|
|
29
|
+
if (!project) return false;
|
|
30
|
+
if (project.visibility === "platform") {
|
|
31
|
+
if (!enablePlatformProjects) return false;
|
|
32
|
+
if (isInstanceAdmin(platformPermissions)) return true;
|
|
33
|
+
return platformGrants.some((g) => g.granteeType === "user" && g.granteeId === userId || g.granteeType === "org" && g.granteeId === actingOrgId);
|
|
34
|
+
}
|
|
35
|
+
if (project.visibility === "private") return member !== null;
|
|
36
|
+
if (project.visibility === "org") return orgMember !== null;
|
|
37
|
+
if (project.visibility === "public") return allowCrossOrgPublic ? true : orgMember !== null;
|
|
38
|
+
return false;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Non-platform projects: same as `canView` — kept as a separate function so
|
|
42
|
+
* cost gating can diverge from view access later.
|
|
43
|
+
*
|
|
44
|
+
* Platform projects: `instance_admin` always passes; a view-only grant
|
|
45
|
+
* satisfies `canView` but not `canSolve` — the grant needs `canSolve: true`.
|
|
46
|
+
*/
|
|
47
|
+
function canSolve(input) {
|
|
48
|
+
const { project, enablePlatformProjects, platformPermissions, platformGrants, actingOrgId, userId } = input;
|
|
49
|
+
if (!project) return false;
|
|
50
|
+
if (project.visibility === "platform") {
|
|
51
|
+
if (!enablePlatformProjects) return false;
|
|
52
|
+
if (isInstanceAdmin(platformPermissions)) return true;
|
|
53
|
+
return platformGrants.some((g) => g.canSolve && (g.granteeType === "user" && g.granteeId === userId || g.granteeType === "org" && g.granteeId === actingOrgId));
|
|
54
|
+
}
|
|
55
|
+
return canView(input);
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Platform projects: `instance_admin` only (they have no member rows).
|
|
59
|
+
* All other visibilities: project owner/editor.
|
|
60
|
+
*/
|
|
61
|
+
function canEdit(input) {
|
|
62
|
+
const { member, project, enablePlatformProjects, platformPermissions } = input;
|
|
63
|
+
if (project?.visibility === "platform") {
|
|
64
|
+
if (!enablePlatformProjects) return false;
|
|
65
|
+
return isInstanceAdmin(platformPermissions);
|
|
66
|
+
}
|
|
67
|
+
return member?.role === "owner" || member?.role === "editor";
|
|
68
|
+
}
|
|
69
|
+
/** Platform projects: `instance_admin` only. All other visibilities: project owner. */
|
|
70
|
+
function canManage(input) {
|
|
71
|
+
if (input.project?.visibility === "platform") {
|
|
72
|
+
if (!input.enablePlatformProjects) return false;
|
|
73
|
+
return isInstanceAdmin(input.platformPermissions);
|
|
74
|
+
}
|
|
75
|
+
return input.member?.role === "owner";
|
|
76
|
+
}
|
|
77
|
+
/** Platform projects: `instance_admin` only. All other visibilities: project owner. */
|
|
78
|
+
function canEditProjectSettings(input) {
|
|
79
|
+
if (input.project?.visibility === "platform") {
|
|
80
|
+
if (!input.enablePlatformProjects) return false;
|
|
81
|
+
return isInstanceAdmin(input.platformPermissions);
|
|
82
|
+
}
|
|
83
|
+
return input.member?.role === "owner";
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Authorization to flip a project to `public`. The `ALLOW_CROSS_ORG_PUBLIC`
|
|
87
|
+
* flag only changes what `public` means post-flip; the flip itself is gated
|
|
88
|
+
* by org owner/admin role.
|
|
89
|
+
*/
|
|
90
|
+
function canChangeVisibilityToPublic(input) {
|
|
91
|
+
const role = input.orgMember?.role;
|
|
92
|
+
return role === "owner" || role === "admin";
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* For platform projects: `instance_admin` only.
|
|
96
|
+
* For all other projects: project editor/owner can always edit (moderation).
|
|
97
|
+
* On commons projects (`autoJoinOnUpload=true`) the definition owner can edit
|
|
98
|
+
* their own, as long as they still belong to the project's org.
|
|
99
|
+
*/
|
|
100
|
+
function canEditDefinition(input) {
|
|
101
|
+
const { project, definition, member, orgMember, userId, platformPermissions, enablePlatformProjects } = input;
|
|
102
|
+
if (!project || !definition) return false;
|
|
103
|
+
if (project.visibility === "platform") {
|
|
104
|
+
if (!enablePlatformProjects) return false;
|
|
105
|
+
return isInstanceAdmin(platformPermissions);
|
|
106
|
+
}
|
|
107
|
+
if (member?.role === "owner" || member?.role === "editor") return true;
|
|
108
|
+
if (project.autoJoinOnUpload && userId === definition.ownerId && orgMember) return true;
|
|
109
|
+
return false;
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Org leadership escape hatch: adds the actor as co-owner without demoting
|
|
113
|
+
* the existing owner. Tenancy must match.
|
|
114
|
+
*
|
|
115
|
+
* Platform projects can't be reclaimed — `instance_admin` already has
|
|
116
|
+
* management access to them.
|
|
117
|
+
*/
|
|
118
|
+
function canReclaim(input) {
|
|
119
|
+
const { project, orgMember, actingOrgId } = input;
|
|
120
|
+
if (!project || !actingOrgId) return false;
|
|
121
|
+
if (project.visibility === "platform") return false;
|
|
122
|
+
if (actingOrgId !== project.orgId) return false;
|
|
123
|
+
const role = orgMember?.role;
|
|
124
|
+
return role === "owner" || role === "admin";
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* Owner/admin can always create; a `member` needs `manage_projects` org
|
|
128
|
+
* permission. Tenancy is enforced.
|
|
129
|
+
*
|
|
130
|
+
* Platform projects (`visibility: 'platform'`) go through the admin API,
|
|
131
|
+
* gated on `instance_admin` — this rule isn't consulted for them.
|
|
132
|
+
*/
|
|
133
|
+
function canCreateProject(input) {
|
|
134
|
+
const { orgMember, orgPermissions, actingOrgId, targetOrgId } = input;
|
|
135
|
+
if (actingOrgId !== targetOrgId) return false;
|
|
136
|
+
const role = orgMember?.role;
|
|
137
|
+
if (role === "owner" || role === "admin") return true;
|
|
138
|
+
if (role === "member" && orgPermissions.includes("manage_projects")) return true;
|
|
139
|
+
return false;
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* Whether the actor may hand out or take away org `owner`/`admin` standing (§3).
|
|
143
|
+
*
|
|
144
|
+
* Three routes decide this — inviting someone as owner/admin, changing an
|
|
145
|
+
* existing member's role, and removing an owner — and all three had written it
|
|
146
|
+
* out longhand. Two of them had drifted by the time the access audit found
|
|
147
|
+
* them: the invite route let an admin mint an `owner` invite for themselves,
|
|
148
|
+
* and DELETE let an admin remove an owner that PATCH would not let them demote.
|
|
149
|
+
* They are one rule, so they read it from one place.
|
|
150
|
+
*
|
|
151
|
+
* Reads the actor's **membership row**. `Organization.ownerId` is a separate
|
|
152
|
+
* field that can disagree with it — see the sole-`instance_admin` finding — and
|
|
153
|
+
* is not authority for this decision.
|
|
154
|
+
*/
|
|
155
|
+
function canChangeOrgRole(input) {
|
|
156
|
+
if (input.role === "member") return true;
|
|
157
|
+
return input.actorMember?.role === "owner";
|
|
158
|
+
}
|
|
159
|
+
function checkOwnerRemoval(input) {
|
|
160
|
+
if (input.target.role !== "owner") return "ok";
|
|
161
|
+
if (input.allMembers.filter((m) => m.role === "owner").length <= 1) return "sole_owner";
|
|
162
|
+
if (!input.confirmed) return "needs_confirm";
|
|
163
|
+
return "ok";
|
|
164
|
+
}
|
|
165
|
+
//#endregion
|
|
166
|
+
//#region ../platform/src/events/interface.ts
|
|
167
|
+
/**
|
|
168
|
+
* `ctx.userId === ''` is the `SYSTEM_CONTEXT` convention for a server-internal
|
|
169
|
+
* caller (bootstrap, janitors, migrations), which resolves to `'system'` here.
|
|
170
|
+
*/
|
|
171
|
+
function actorFrom(ctx) {
|
|
172
|
+
return ctx.userId || "system";
|
|
173
|
+
}
|
|
174
|
+
/** Discards every event. Used when `SelvaConfig.events` is omitted. */
|
|
175
|
+
var NoopEventSink = class {
|
|
176
|
+
async emit(_event) {}
|
|
177
|
+
};
|
|
178
|
+
//#endregion
|
|
179
|
+
//#region ../platform/src/config.ts
|
|
180
|
+
function isFlagEnabled(config, flag) {
|
|
181
|
+
return Boolean(config.flags?.[flag]);
|
|
182
|
+
}
|
|
183
|
+
//#endregion
|
|
184
|
+
//#region ../server/src/api/errors.ts
|
|
185
|
+
/**
|
|
186
|
+
* The transport-free error type every API handler raises.
|
|
187
|
+
*
|
|
188
|
+
* `apiError` used to throw SvelteKit's `error()` directly, which welded all 151
|
|
189
|
+
* of its call sites to one framework. `ApiError` carries the same envelope as a
|
|
190
|
+
* plain exception; the host adapter converts it to whatever its framework
|
|
191
|
+
* expects (see `toApiResponse`). Call sites are unchanged — only the throw
|
|
192
|
+
* site and the boundary know the difference.
|
|
193
|
+
*/
|
|
194
|
+
/** Stable, machine-readable error codes. Append-only — never renumber/rename. */
|
|
195
|
+
var ApiErrorCode = {
|
|
196
|
+
VALIDATION_FAILED: "VALIDATION_FAILED",
|
|
197
|
+
UNAUTHORIZED: "UNAUTHORIZED",
|
|
198
|
+
FORBIDDEN: "FORBIDDEN",
|
|
199
|
+
NOT_FOUND: "NOT_FOUND",
|
|
200
|
+
CONFLICT: "CONFLICT",
|
|
201
|
+
UNPROCESSABLE: "UNPROCESSABLE",
|
|
202
|
+
COMPUTE_UNAVAILABLE: "COMPUTE_UNAVAILABLE",
|
|
203
|
+
INTERNAL: "INTERNAL"
|
|
204
|
+
};
|
|
205
|
+
var ApiError = class extends Error {
|
|
206
|
+
status;
|
|
207
|
+
code;
|
|
208
|
+
/** Per-field validation messages, keyed by dotted path. Only on VALIDATION_FAILED. */
|
|
209
|
+
fields;
|
|
210
|
+
constructor(status, code, message, fields) {
|
|
211
|
+
super(message);
|
|
212
|
+
this.name = "ApiError";
|
|
213
|
+
this.status = status;
|
|
214
|
+
this.code = code;
|
|
215
|
+
this.fields = fields;
|
|
216
|
+
}
|
|
217
|
+
};
|
|
218
|
+
function isApiError(err) {
|
|
219
|
+
return err instanceof ApiError;
|
|
220
|
+
}
|
|
221
|
+
/** Raise a structured API error. The only way handlers should fail. */
|
|
222
|
+
function apiError(status, code, message, fields) {
|
|
223
|
+
throw new ApiError(status, code, message, fields);
|
|
224
|
+
}
|
|
225
|
+
/** Default code for a status, for mapping errors that carry no code of their own. */
|
|
226
|
+
function codeForStatus(status) {
|
|
227
|
+
switch (status) {
|
|
228
|
+
case 400: return ApiErrorCode.VALIDATION_FAILED;
|
|
229
|
+
case 401: return ApiErrorCode.UNAUTHORIZED;
|
|
230
|
+
case 403: return ApiErrorCode.FORBIDDEN;
|
|
231
|
+
case 404: return ApiErrorCode.NOT_FOUND;
|
|
232
|
+
case 409: return ApiErrorCode.CONFLICT;
|
|
233
|
+
case 422: return ApiErrorCode.UNPROCESSABLE;
|
|
234
|
+
case 503: return ApiErrorCode.COMPUTE_UNAVAILABLE;
|
|
235
|
+
default: return ApiErrorCode.INTERNAL;
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
//#endregion
|
|
239
|
+
//#region ../server/src/definitions/schema-extraction.ts
|
|
240
|
+
/** Thin re-export of @selvajs/compute's unwrap, typed to `UISchema`. */
|
|
241
|
+
function readSchemaResults(raw) {
|
|
242
|
+
return Ye(raw);
|
|
243
|
+
}
|
|
244
|
+
/** Thrown when compute is reachable but the definition yields no usable schema. */
|
|
245
|
+
var SchemaExtractionError = class extends Error {
|
|
246
|
+
kind;
|
|
247
|
+
constructor(kind, message) {
|
|
248
|
+
super(message);
|
|
249
|
+
this.kind = kind;
|
|
250
|
+
this.name = "SchemaExtractionError";
|
|
251
|
+
}
|
|
252
|
+
};
|
|
253
|
+
/**
|
|
254
|
+
* Rejects a schema whose keys are not camelCase by the time it reaches a consumer.
|
|
255
|
+
*
|
|
256
|
+
* Compute serializes the plugin's `UISchema` POCO, whose camelCase names live in
|
|
257
|
+
* `[JsonProperty]` attributes. `Selva.gha` ILRepack-merges Newtonsoft, so those
|
|
258
|
+
* attributes have type `Selva!Newtonsoft.Json.JsonPropertyAttribute`; a compute
|
|
259
|
+
* server serializing with its OWN Newtonsoft does not recognize them, reads no
|
|
260
|
+
* attributes, and falls back to raw CLR member names — `Inputs`, `Layout`.
|
|
261
|
+
* Nothing throws on the wire: every consumer just reads `schema.inputs` as
|
|
262
|
+
* undefined and renders a definition with no inputs.
|
|
263
|
+
*
|
|
264
|
+
* `postSchemaFormData` repairs that casing via `normalizeUISchemaCasing`, so a
|
|
265
|
+
* schema fresh off the wire never trips this. It stays because schemas are also
|
|
266
|
+
* PERSISTED: a row cached before the normalizer existed still holds PascalCase,
|
|
267
|
+
* and it reaches consumers without passing through `postSchemaFormData` again.
|
|
268
|
+
* A schema with no `inputs` in any casing lands here too. It is a backstop, not
|
|
269
|
+
* the primary defense — which is why it names the missing key rather than telling
|
|
270
|
+
* the operator to go update their compute server.
|
|
271
|
+
*
|
|
272
|
+
* Checked structurally rather than by plugin version, because the casing depends
|
|
273
|
+
* on which assembly serialized the schema, not on any version number.
|
|
274
|
+
*/
|
|
275
|
+
function assertCamelCaseSchema(schema) {
|
|
276
|
+
const raw = schema;
|
|
277
|
+
if (Array.isArray(raw.inputs)) return;
|
|
278
|
+
const pascalKeys = [
|
|
279
|
+
"Inputs",
|
|
280
|
+
"Outputs",
|
|
281
|
+
"Layout",
|
|
282
|
+
"SchemaVersion"
|
|
283
|
+
].filter((k) => k in raw);
|
|
284
|
+
if (pascalKeys.length > 0) throw new SchemaExtractionError("malformed", `Schema keys are PascalCase (found ${pascalKeys.join(", ")}), so every property name is wrong and the definition would render with no inputs. Compute serialized it with its own Newtonsoft instead of the one merged into Selva.gha. Fresh responses are normalized, so this is most likely a schema cached before that fix — re-save the definition version to re-extract it.`);
|
|
285
|
+
throw new SchemaExtractionError("malformed", `Compute returned a schema with no 'inputs' array (got keys: ${Object.keys(raw).slice(0, 12).join(", ")}).`);
|
|
286
|
+
}
|
|
287
|
+
function parseSemver(version) {
|
|
288
|
+
const m = /^(\d+)\.(\d+)\.(\d+)$/.exec(version);
|
|
289
|
+
return m ? [
|
|
290
|
+
Number(m[1]),
|
|
291
|
+
Number(m[2]),
|
|
292
|
+
Number(m[3])
|
|
293
|
+
] : null;
|
|
294
|
+
}
|
|
295
|
+
/**
|
|
296
|
+
* Rejects a schema from a NEWER plugin than this app was built against — its
|
|
297
|
+
* shape may contain constructs the renderer doesn't know. Older (or missing)
|
|
298
|
+
* versions pass: the compute-side C# migrator always emits its own current
|
|
299
|
+
* version, and an older shape only lacks optional additions.
|
|
300
|
+
*/
|
|
301
|
+
function assertSupportedSchemaVersion(schema) {
|
|
302
|
+
const version = schema.schemaVersion;
|
|
303
|
+
if (!version) return;
|
|
304
|
+
const extracted = parseSemver(version);
|
|
305
|
+
const supported = parseSemver(UI_SCHEMA_VERSION);
|
|
306
|
+
if (!extracted || !supported) return;
|
|
307
|
+
if (extracted[0] > supported[0] || extracted[0] === supported[0] && (extracted[1] > supported[1] || extracted[1] === supported[1] && extracted[2] > supported[2])) throw new SchemaExtractionError("unsupported", `This definition was authored with a newer Selva plugin (schema format ${version}); this server supports schema format ≤ ${UI_SCHEMA_VERSION}. Update the server, or re-save the definition with a matching plugin version.`);
|
|
308
|
+
}
|
|
309
|
+
/**
|
|
310
|
+
* POSTs a multipart form to Rhino Compute's `/grasshopper/schema` endpoint (no
|
|
311
|
+
* solve required). Throws 'unreachable' on a network failure or non-2xx. The
|
|
312
|
+
* per-file `error` Compute reports on its 200-with-no-schemas case is left to
|
|
313
|
+
* the caller — single-file and multi-file callers want different messages.
|
|
314
|
+
*/
|
|
315
|
+
async function postSchemaFormData(formData, server) {
|
|
316
|
+
const schemaUrl = new URL("/grasshopper/schema", server.serverUrl).toString();
|
|
317
|
+
const headers = {};
|
|
318
|
+
if (server.apiKey) headers["RhinoComputeKey"] = server.apiKey;
|
|
319
|
+
let response;
|
|
320
|
+
try {
|
|
321
|
+
response = await fetch(schemaUrl, {
|
|
322
|
+
method: "POST",
|
|
323
|
+
headers,
|
|
324
|
+
body: formData
|
|
325
|
+
});
|
|
326
|
+
} catch (err) {
|
|
327
|
+
throw new SchemaExtractionError("unreachable", `Compute server is unreachable: ${err instanceof Error ? err.message : String(err)}`);
|
|
328
|
+
}
|
|
329
|
+
if (!response.ok) throw new SchemaExtractionError("unreachable", `Schema endpoint returned ${response.status}: ${response.statusText}`);
|
|
330
|
+
return readSchemaResults(await response.json()).map((result) => ({
|
|
331
|
+
...result,
|
|
332
|
+
schemas: result.schemas?.map((schema) => $e(schema))
|
|
333
|
+
}));
|
|
334
|
+
}
|
|
335
|
+
/**
|
|
336
|
+
* Throws `SchemaExtractionError` so callers can map to the right HTTP status:
|
|
337
|
+
* 503 unreachable / 422 invalid or unsupported.
|
|
338
|
+
*/
|
|
339
|
+
async function fetchSchemaFromCompute(definitionBytes, server) {
|
|
340
|
+
const formData = new FormData();
|
|
341
|
+
const blob = new Blob([new Uint8Array(definitionBytes)], { type: "application/octet-stream" });
|
|
342
|
+
formData.append("file", blob, "definition.gh");
|
|
343
|
+
const results = await postSchemaFormData(formData, server);
|
|
344
|
+
const schemas = results.flatMap((r) => r.schemas ?? []);
|
|
345
|
+
if (schemas.length === 0) {
|
|
346
|
+
const diagnosis = results.map((r) => r.error).filter(Boolean);
|
|
347
|
+
if (diagnosis.length > 0) throw new SchemaExtractionError("invalid", diagnosis.join("\n"));
|
|
348
|
+
throw new SchemaExtractionError("invalid", "No schemas found in definition.\n\nIn Grasshopper, verify a Context Bake component with the output name \"Schema\" is present and wired to the solver.");
|
|
349
|
+
}
|
|
350
|
+
assertSupportedSchemaVersion(schemas[0]);
|
|
351
|
+
assertCamelCaseSchema(schemas[0]);
|
|
352
|
+
return schemas[0];
|
|
353
|
+
}
|
|
354
|
+
//#endregion
|
|
355
|
+
//#region ../server/src/access/project-access-input.ts
|
|
356
|
+
function createProjectAccessInputBuilder(deps) {
|
|
357
|
+
return {
|
|
358
|
+
async buildProjectAccessInput(ctx, project, overrides = {}) {
|
|
359
|
+
const { allowCrossOrgPublic, enablePlatformProjects } = deps.flags();
|
|
360
|
+
let member = null;
|
|
361
|
+
let orgMember = null;
|
|
362
|
+
let platformGrants = [];
|
|
363
|
+
if (project.visibility === "platform") {
|
|
364
|
+
if (enablePlatformProjects) platformGrants = await deps.listPlatformGrants(ctx, project.id);
|
|
365
|
+
} else if (project.visibility === "private") member = await deps.getProjectMember(ctx, project.id, ctx.userId);
|
|
366
|
+
else {
|
|
367
|
+
const skipOrgMember = project.visibility === "public" && allowCrossOrgPublic;
|
|
368
|
+
[member, orgMember] = await Promise.all([deps.getProjectMember(ctx, project.id, ctx.userId), skipOrgMember ? Promise.resolve(null) : deps.getOrgMember(ctx, project.orgId, ctx.userId)]);
|
|
369
|
+
}
|
|
370
|
+
return {
|
|
371
|
+
orgPermissions: ctx.orgPermissions,
|
|
372
|
+
platformPermissions: ctx.platformPermissions,
|
|
373
|
+
project,
|
|
374
|
+
member,
|
|
375
|
+
orgMember,
|
|
376
|
+
allowCrossOrgPublic,
|
|
377
|
+
enablePlatformProjects,
|
|
378
|
+
platformGrants,
|
|
379
|
+
actingOrgId: ctx.actingOrgId ?? null,
|
|
380
|
+
userId: ctx.userId,
|
|
381
|
+
...overrides
|
|
382
|
+
};
|
|
383
|
+
},
|
|
384
|
+
projectAccessInputFromRows(ctx, project, rows) {
|
|
385
|
+
const { allowCrossOrgPublic, enablePlatformProjects } = deps.flags();
|
|
386
|
+
return {
|
|
387
|
+
orgPermissions: ctx.orgPermissions,
|
|
388
|
+
platformPermissions: ctx.platformPermissions,
|
|
389
|
+
project,
|
|
390
|
+
member: rows.member ?? null,
|
|
391
|
+
orgMember: rows.orgMember ?? null,
|
|
392
|
+
allowCrossOrgPublic,
|
|
393
|
+
enablePlatformProjects,
|
|
394
|
+
platformGrants: rows.platformGrants ?? [],
|
|
395
|
+
actingOrgId: ctx.actingOrgId ?? null,
|
|
396
|
+
userId: ctx.userId
|
|
397
|
+
};
|
|
398
|
+
}
|
|
399
|
+
};
|
|
400
|
+
}
|
|
401
|
+
//#endregion
|
|
402
|
+
//#region ../server/src/access/guards.ts
|
|
403
|
+
/**
|
|
404
|
+
* Derive the stores a guard needs from a resolved config.
|
|
405
|
+
*
|
|
406
|
+
* Pure — it reads the config it is handed and nothing else, which is what keeps
|
|
407
|
+
* this module free of any import that boots the app. Page loads pass
|
|
408
|
+
* `locals.providers`; `hooks.server.ts` sets it on every request.
|
|
409
|
+
*/
|
|
410
|
+
function accessDepsFromConfig(config) {
|
|
411
|
+
return {
|
|
412
|
+
orgs: config.data.orgs,
|
|
413
|
+
projects: config.data.projects,
|
|
414
|
+
definitionMeta: config.data.definitions,
|
|
415
|
+
platformProjectGrants: config.data.platformProjectGrants,
|
|
416
|
+
flag: (name) => isFlagEnabled(config, name)
|
|
417
|
+
};
|
|
418
|
+
}
|
|
419
|
+
/** `locals` as a store-reading guard wants it. */
|
|
420
|
+
function scoped(locals) {
|
|
421
|
+
return {
|
|
422
|
+
...locals,
|
|
423
|
+
deps: accessDepsFromConfig(locals.providers)
|
|
424
|
+
};
|
|
425
|
+
}
|
|
426
|
+
var orgsOf = (src) => src.deps.orgs;
|
|
427
|
+
var projectsOf = (src) => src.deps.projects;
|
|
428
|
+
var definitionMetaOf = (src) => src.deps.definitionMeta;
|
|
429
|
+
var flagOf = (src) => src.deps.flag;
|
|
430
|
+
function requireAuthed(locals) {
|
|
431
|
+
const { user, ctx } = locals;
|
|
432
|
+
if (!user || !ctx) apiError(401, ApiErrorCode.UNAUTHORIZED, "Unauthorized");
|
|
433
|
+
return {
|
|
434
|
+
user,
|
|
435
|
+
ctx
|
|
436
|
+
};
|
|
437
|
+
}
|
|
438
|
+
/** Throws 403 — use in API routes. */
|
|
439
|
+
function requirePermission(locals, permission) {
|
|
440
|
+
const { user, ctx } = requireAuthed(locals);
|
|
441
|
+
if (!hasPermission(ctx, permission)) apiError(403, ApiErrorCode.FORBIDDEN, `You don't have permission to do this.`);
|
|
442
|
+
return user;
|
|
443
|
+
}
|
|
444
|
+
var requireManageInstanceUsers = (locals) => requirePermission(locals, "manage_instance_users");
|
|
445
|
+
var requireManageCompute = (locals) => requirePermission(locals, "manage_compute");
|
|
446
|
+
var requireManageOrgMembers = (locals) => requirePermission(locals, "manage_org_members");
|
|
447
|
+
var requireManageOrgCompute = (locals) => requirePermission(locals, "manage_org_compute");
|
|
448
|
+
var requireInstanceAdmin = (locals) => requirePermission(locals, "instance_admin");
|
|
449
|
+
/**
|
|
450
|
+
* Platform scope is not delegable: `manage_instance_users` runs the user-admin
|
|
451
|
+
* surface but must not be able to mint an `instance_admin`, or an org admin
|
|
452
|
+
* holding it self-elevates. Three routes write platform permissions — the two
|
|
453
|
+
* `/api/admin/users` handlers and the invite mint route — and each carried its
|
|
454
|
+
* own copy of this check.
|
|
455
|
+
*
|
|
456
|
+
* Pass `current` on an update. Revoking is a platform-scope change too, so a
|
|
457
|
+
* PATCH that drops `instance_admin` is refused for the same reason granting it
|
|
458
|
+
* is; without `current` the caller is creating (a user, an invite) and there is
|
|
459
|
+
* nothing to compare against.
|
|
460
|
+
*
|
|
461
|
+
* Requesting nothing on a create is always allowed — that is a
|
|
462
|
+
* `manage_instance_users` operation, not a platform-scope one.
|
|
463
|
+
*/
|
|
464
|
+
function assertCanGrantPlatformPermissions(ctx, requested, current) {
|
|
465
|
+
if (!(current ? requested.length !== current.length || requested.some((p) => !current.includes(p)) || current.some((p) => !requested.includes(p)) : requested.length > 0)) return;
|
|
466
|
+
if (hasPermission(ctx, "instance_admin")) return;
|
|
467
|
+
apiError(403, ApiErrorCode.FORBIDDEN, current ? "Only a platform admin can change platform-scope permissions" : "Only a platform admin can grant platform-scope permissions");
|
|
468
|
+
}
|
|
469
|
+
/**
|
|
470
|
+
* Tenancy gate for `/api/v1/orgs/{orgId}/…`. The URL id is never trusted alone
|
|
471
|
+
* — the acting context decides which tenant a request applies to, so a
|
|
472
|
+
* mismatch is 403 rather than a silent read of the caller's own org.
|
|
473
|
+
*/
|
|
474
|
+
function requireActingOrg(locals, orgId) {
|
|
475
|
+
const ctx = locals.ctx;
|
|
476
|
+
if (!ctx) apiError(401, ApiErrorCode.UNAUTHORIZED, "Unauthorized");
|
|
477
|
+
if (!orgId) apiError(400, ApiErrorCode.VALIDATION_FAILED, "Missing org ID");
|
|
478
|
+
if (!ctx.actingOrgId) apiError(400, ApiErrorCode.VALIDATION_FAILED, "No active organization");
|
|
479
|
+
if (ctx.actingOrgId !== orgId) apiError(403, ApiErrorCode.FORBIDDEN, "Acting org does not match the target org.");
|
|
480
|
+
return {
|
|
481
|
+
ctx,
|
|
482
|
+
orgId
|
|
483
|
+
};
|
|
484
|
+
}
|
|
485
|
+
/**
|
|
486
|
+
* Gate for pages reachable by any platform-class permission holder (the
|
|
487
|
+
|
|
488
|
+
/**
|
|
489
|
+
* Management-scope bypass — used for org governance and project management
|
|
490
|
+
* actions (Reclaim, create project, delete project, manage members, edit
|
|
491
|
+
* settings). `instance_admin` bypasses these so platform staff can administer
|
|
492
|
+
* the instance without being a member of every org.
|
|
493
|
+
*
|
|
494
|
+
* NOT used for content access (view, solve, edit definitions):
|
|
495
|
+
* `instance_admin` follows the same `canView`/`canEdit` rules as any other
|
|
496
|
+
* user there, keeping blast radius small and forcing content escalation
|
|
497
|
+
* through Reclaim, which leaves an audit trail.
|
|
498
|
+
*/
|
|
499
|
+
async function managementBypassOrRun(ctx, check) {
|
|
500
|
+
if (hasPermission(ctx, "instance_admin")) return true;
|
|
501
|
+
return await check();
|
|
502
|
+
}
|
|
503
|
+
async function contentCheck(check) {
|
|
504
|
+
return await check();
|
|
505
|
+
}
|
|
506
|
+
async function loadProjectOr404(ctx, projectId, src) {
|
|
507
|
+
const project = await projectsOf(src).getProject(ctx, projectId);
|
|
508
|
+
if (!project) apiError(404, ApiErrorCode.NOT_FOUND, "Project not found");
|
|
509
|
+
return project;
|
|
510
|
+
}
|
|
511
|
+
function accessInputsFor(src) {
|
|
512
|
+
const readFlag = flagOf(src);
|
|
513
|
+
return createProjectAccessInputBuilder({
|
|
514
|
+
getProjectMember: (ctx, projectId, userId) => projectsOf(src).getProjectMember(ctx, projectId, userId),
|
|
515
|
+
getOrgMember: (ctx, orgId, userId) => orgsOf(src).getOrgMember(ctx, orgId, userId),
|
|
516
|
+
listPlatformGrants: (ctx, projectId) => src.deps.platformProjectGrants.listByProject(ctx, projectId),
|
|
517
|
+
flags: () => ({
|
|
518
|
+
allowCrossOrgPublic: readFlag("ALLOW_CROSS_ORG_PUBLIC"),
|
|
519
|
+
enablePlatformProjects: readFlag("ENABLE_PLATFORM_PROJECTS")
|
|
520
|
+
})
|
|
521
|
+
});
|
|
522
|
+
}
|
|
523
|
+
function buildProjectAccessInput(ctx, project, src, overrides) {
|
|
524
|
+
return accessInputsFor(src).buildProjectAccessInput(ctx, project, overrides);
|
|
525
|
+
}
|
|
526
|
+
/**
|
|
527
|
+
* Assemble a rule input from rows the caller already loaded.
|
|
528
|
+
*
|
|
529
|
+
* Unlike the other builders this one issues no reads — the caller batched them.
|
|
530
|
+
* It still needs `deps` for the flag lookups, which decide whether a
|
|
531
|
+
* cross-org-public or platform project is visible at all.
|
|
532
|
+
*/
|
|
533
|
+
function projectAccessInputFromRowsWith(src, ...args) {
|
|
534
|
+
return accessInputsFor(src).projectAccessInputFromRows(...args);
|
|
535
|
+
}
|
|
536
|
+
/**
|
|
537
|
+
* Gates creation of a *new* definition. Container projects require project
|
|
538
|
+
* owner/editor (canEdit). Commons projects (`autoJoinOnUpload=true`) accept
|
|
539
|
+
* any authenticated user — the handler stamps `ownerId = user.id` so the
|
|
540
|
+
* uploader becomes the owner.
|
|
541
|
+
*/
|
|
542
|
+
async function requireCanCreateDefinition(locals, projectId) {
|
|
543
|
+
const { user, ctx } = requireAuthed(locals);
|
|
544
|
+
const project = await loadProjectOr404(ctx, projectId, locals);
|
|
545
|
+
if (!await contentCheck(async () => {
|
|
546
|
+
if (project.autoJoinOnUpload) return true;
|
|
547
|
+
return canEdit(await buildProjectAccessInput(ctx, project, locals));
|
|
548
|
+
})) apiError(403, ApiErrorCode.FORBIDDEN, "You do not have permission to upload definitions to this project.");
|
|
549
|
+
return {
|
|
550
|
+
user,
|
|
551
|
+
ctx,
|
|
552
|
+
project
|
|
553
|
+
};
|
|
554
|
+
}
|
|
555
|
+
/**
|
|
556
|
+
* Org-content gate — the caller must be a member of `orgId`. Used by the
|
|
557
|
+
* file-serving proxy for org-private assets (e.g. pricing sheets under
|
|
558
|
+
* `orgs/{id}/private/*`). Org membership is the only rule; runs through
|
|
559
|
+
* `contentCheck` (no `instance_admin` bypass) — platform staff use Reclaim
|
|
560
|
+
* if they need access without membership.
|
|
561
|
+
*
|
|
562
|
+
* Throws 401 unauthenticated, 403 when not a member.
|
|
563
|
+
*/
|
|
564
|
+
async function requireCanViewOrg(locals, orgId) {
|
|
565
|
+
const { user, ctx } = requireAuthed(locals);
|
|
566
|
+
if (!await contentCheck(async () => {
|
|
567
|
+
return await orgsOf(locals).getOrgMember(ctx, orgId, ctx.userId) !== null;
|
|
568
|
+
})) apiError(403, ApiErrorCode.FORBIDDEN, "You do not have access to this organization.");
|
|
569
|
+
return user;
|
|
570
|
+
}
|
|
571
|
+
/**
|
|
572
|
+
* Project members must belong to the project's parent org. Enforced at the
|
|
573
|
+
* rule layer, not as a DB constraint, to leave room for cross-org guests
|
|
574
|
+
* later without a schema migration.
|
|
575
|
+
*/
|
|
576
|
+
async function requireTargetIsOrgMember(locals, orgId, targetUserId) {
|
|
577
|
+
const { ctx } = requireAuthed(locals);
|
|
578
|
+
if (!await orgsOf(locals).getOrgMember(ctx, orgId, targetUserId)) apiError(400, ApiErrorCode.VALIDATION_FAILED, "User must be a member of this organization to be added to a project.");
|
|
579
|
+
}
|
|
580
|
+
/**
|
|
581
|
+
* `canChangeOrgRole` with the actor's membership row loaded — whether the
|
|
582
|
+
* caller may grant or revoke org `owner`/`admin` standing (§3).
|
|
583
|
+
*
|
|
584
|
+
* Returns rather than throws: the three callers each phrase the refusal for
|
|
585
|
+
* what they were doing ("invite someone as owner", "change roles", "remove
|
|
586
|
+
* another owner") and raise it through `apiError`. What must not diverge is the
|
|
587
|
+
* decision, which is why that half lives in `rules.ts` and this loads its input.
|
|
588
|
+
*/
|
|
589
|
+
async function canActorChangeOrgRole(ctx, orgId, role, src) {
|
|
590
|
+
if (role === "member") return true;
|
|
591
|
+
return canChangeOrgRole({
|
|
592
|
+
actorMember: await orgsOf(src).getOrgMember(ctx, orgId, ctx.userId),
|
|
593
|
+
role
|
|
594
|
+
});
|
|
595
|
+
}
|
|
596
|
+
/**
|
|
597
|
+
* `canReclaim` — org owner/admin escape hatch. Returns the project so the
|
|
598
|
+
* handler can use its `orgId` without re-fetching.
|
|
599
|
+
*/
|
|
600
|
+
async function requireCanReclaim(locals, projectId) {
|
|
601
|
+
const { user, ctx } = requireAuthed(locals);
|
|
602
|
+
const project = await loadProjectOr404(ctx, projectId, locals);
|
|
603
|
+
if (project.visibility === "platform") apiError(403, ApiErrorCode.FORBIDDEN, "Platform projects cannot be reclaimed.");
|
|
604
|
+
if (!await managementBypassOrRun(ctx, async () => {
|
|
605
|
+
const orgMember = await orgsOf(locals).getOrgMember(ctx, project.orgId, ctx.userId);
|
|
606
|
+
return canReclaim({
|
|
607
|
+
project,
|
|
608
|
+
orgMember,
|
|
609
|
+
actingOrgId: ctx.actingOrgId ?? null
|
|
610
|
+
});
|
|
611
|
+
})) apiError(403, ApiErrorCode.FORBIDDEN, "Only org owners or admins of this project’s org can reclaim it.");
|
|
612
|
+
return {
|
|
613
|
+
user,
|
|
614
|
+
ctx,
|
|
615
|
+
project
|
|
616
|
+
};
|
|
617
|
+
}
|
|
618
|
+
/**
|
|
619
|
+
* `canCreateProject` — owner/admin always; member needs `manage_projects`.
|
|
620
|
+
* Tenancy is enforced via `actingOrgId`.
|
|
621
|
+
*/
|
|
622
|
+
async function requireCanCreateProject(locals, targetOrgId) {
|
|
623
|
+
const { user, ctx } = requireAuthed(locals);
|
|
624
|
+
if (!await managementBypassOrRun(ctx, async () => {
|
|
625
|
+
const orgMember = await orgsOf(locals).getOrgMember(ctx, targetOrgId, ctx.userId);
|
|
626
|
+
return canCreateProject({
|
|
627
|
+
orgPermissions: ctx.orgPermissions,
|
|
628
|
+
orgMember,
|
|
629
|
+
actingOrgId: ctx.actingOrgId ?? null,
|
|
630
|
+
targetOrgId
|
|
631
|
+
});
|
|
632
|
+
})) apiError(403, ApiErrorCode.FORBIDDEN, "You do not have permission to create projects in this org.");
|
|
633
|
+
return {
|
|
634
|
+
user,
|
|
635
|
+
ctx
|
|
636
|
+
};
|
|
637
|
+
}
|
|
638
|
+
/**
|
|
639
|
+
* Project-management gate (`canManage` — owner, or `instance_admin` via the
|
|
640
|
+
* bypass). Managing members is the same authority as managing the project, so
|
|
641
|
+
* both callers share this; `action` only shapes the 403 message.
|
|
642
|
+
*/
|
|
643
|
+
async function requireCanManage(locals, projectId, action = "project") {
|
|
644
|
+
const { user, ctx } = requireAuthed(locals);
|
|
645
|
+
if (!await managementBypassOrRun(ctx, async () => {
|
|
646
|
+
const project = await loadProjectOr404(ctx, projectId, locals);
|
|
647
|
+
return canManage(await buildProjectAccessInput(ctx, project, locals));
|
|
648
|
+
})) apiError(403, ApiErrorCode.FORBIDDEN, action === "members" ? "Only project owners can manage members." : "Only project owners can manage this project.");
|
|
649
|
+
return user;
|
|
650
|
+
}
|
|
651
|
+
async function requireCanEditProjectSettings(locals, projectId) {
|
|
652
|
+
const { user, ctx } = requireAuthed(locals);
|
|
653
|
+
const project = await loadProjectOr404(ctx, projectId, locals);
|
|
654
|
+
if (!await managementBypassOrRun(ctx, async () => canEditProjectSettings(await buildProjectAccessInput(ctx, project, locals)))) apiError(403, ApiErrorCode.FORBIDDEN, "Only project owners can edit project settings.");
|
|
655
|
+
return {
|
|
656
|
+
user,
|
|
657
|
+
ctx,
|
|
658
|
+
project
|
|
659
|
+
};
|
|
660
|
+
}
|
|
661
|
+
async function requireCanViewProject(locals, projectId) {
|
|
662
|
+
const { user, ctx } = requireAuthed(locals);
|
|
663
|
+
if (!await contentCheck(async () => {
|
|
664
|
+
const project = await loadProjectOr404(ctx, projectId, locals);
|
|
665
|
+
return canView(await buildProjectAccessInput(ctx, project, locals));
|
|
666
|
+
})) apiError(403, ApiErrorCode.FORBIDDEN, "You do not have access to this project.");
|
|
667
|
+
return user;
|
|
668
|
+
}
|
|
669
|
+
/**
|
|
670
|
+
* Solve gating. Today `canSolve === canView` for non-platform projects, but
|
|
671
|
+
* the rule lives in its own function so future cost-gating (quotas, rate
|
|
672
|
+
* limits) lands without touching view semantics. `viewer` project role
|
|
673
|
+
* passes; platform projects narrow to grants with `canSolve=true`.
|
|
674
|
+
*/
|
|
675
|
+
async function requireCanSolve(locals, projectId, preloadedProject) {
|
|
676
|
+
const { user, ctx } = requireAuthed(locals);
|
|
677
|
+
const project = preloadedProject ?? await loadProjectOr404(ctx, projectId, locals);
|
|
678
|
+
if (!await contentCheck(async () => canSolve(await buildProjectAccessInput(ctx, project, locals)))) apiError(403, ApiErrorCode.FORBIDDEN, "You do not have access to this project.");
|
|
679
|
+
return {
|
|
680
|
+
user,
|
|
681
|
+
ctx,
|
|
682
|
+
project
|
|
683
|
+
};
|
|
684
|
+
}
|
|
685
|
+
/**
|
|
686
|
+
* Org membership for the commons branch of `canEditDefinition`, or `null` when
|
|
687
|
+
* that branch cannot fire. Skipping the round-trip on container projects keeps
|
|
688
|
+
* the common edit path at the same two reads it had before commons gained the
|
|
689
|
+
* membership test.
|
|
690
|
+
*/
|
|
691
|
+
async function loadCommonsOrgMember(ctx, project, src) {
|
|
692
|
+
if (!project?.autoJoinOnUpload) return null;
|
|
693
|
+
return await orgsOf(src).getOrgMember(ctx, project.orgId, ctx.userId);
|
|
694
|
+
}
|
|
695
|
+
/**
|
|
696
|
+
* Loads the record and gates editing. Returns the record AND the project it
|
|
697
|
+
* loads for the gate, so callers skip a re-fetch of either.
|
|
698
|
+
*/
|
|
699
|
+
async function requireEditableDefinition(locals, guid) {
|
|
700
|
+
const { ctx } = requireAuthed(locals);
|
|
701
|
+
const record = await definitionMetaOf(locals).get(ctx, guid);
|
|
702
|
+
if (!record) apiError(404, ApiErrorCode.NOT_FOUND, "Definition not found");
|
|
703
|
+
const [project, member] = await Promise.all([projectsOf(locals).getProject(ctx, record.projectId), projectsOf(locals).getProjectMember(ctx, record.projectId, ctx.userId)]);
|
|
704
|
+
if (!await contentCheck(async () => canEditDefinition({
|
|
705
|
+
project,
|
|
706
|
+
definition: record,
|
|
707
|
+
member,
|
|
708
|
+
orgMember: await loadCommonsOrgMember(ctx, project, locals),
|
|
709
|
+
userId: ctx.userId,
|
|
710
|
+
platformPermissions: ctx.platformPermissions,
|
|
711
|
+
enablePlatformProjects: flagOf(locals)("ENABLE_PLATFORM_PROJECTS")
|
|
712
|
+
}))) apiError(403, ApiErrorCode.FORBIDDEN, "You do not have permission to edit this definition.");
|
|
713
|
+
return {
|
|
714
|
+
record,
|
|
715
|
+
ctx,
|
|
716
|
+
project
|
|
717
|
+
};
|
|
718
|
+
}
|
|
719
|
+
async function requireCanEditDefinition(locals, projectId, definitionGuid, preloaded) {
|
|
720
|
+
const { user, ctx } = requireAuthed(locals);
|
|
721
|
+
if (!await contentCheck(async () => {
|
|
722
|
+
const [project, definition, member] = await Promise.all([
|
|
723
|
+
preloaded?.project !== void 0 ? Promise.resolve(preloaded.project) : projectsOf(locals).getProject(ctx, projectId),
|
|
724
|
+
preloaded?.definition !== void 0 ? Promise.resolve(preloaded.definition) : definitionMetaOf(locals).get(ctx, definitionGuid),
|
|
725
|
+
projectsOf(locals).getProjectMember(ctx, projectId, ctx.userId)
|
|
726
|
+
]);
|
|
727
|
+
return canEditDefinition({
|
|
728
|
+
project,
|
|
729
|
+
definition,
|
|
730
|
+
member,
|
|
731
|
+
orgMember: await loadCommonsOrgMember(ctx, project, locals),
|
|
732
|
+
userId: ctx.userId,
|
|
733
|
+
platformPermissions: ctx.platformPermissions,
|
|
734
|
+
enablePlatformProjects: flagOf(locals)("ENABLE_PLATFORM_PROJECTS")
|
|
735
|
+
});
|
|
736
|
+
})) apiError(403, ApiErrorCode.FORBIDDEN, "You do not have permission to edit this definition.");
|
|
737
|
+
return user;
|
|
738
|
+
}
|
|
739
|
+
//#endregion
|
|
740
|
+
//#region ../server/src/access/permissions-scope.ts
|
|
741
|
+
var PLATFORM_SET = new Set(ALL_PLATFORM_PERMISSIONS);
|
|
742
|
+
var ORG_SET = new Set(ALL_ORG_PERMISSIONS);
|
|
743
|
+
/** Split a flat array into platform + org scope buckets, dropping unknowns. */
|
|
744
|
+
function splitFlatPermissions(flat) {
|
|
745
|
+
const platform = [];
|
|
746
|
+
const org = [];
|
|
747
|
+
for (const p of flat) if (PLATFORM_SET.has(p)) platform.push(p);
|
|
748
|
+
else if (ORG_SET.has(p)) org.push(p);
|
|
749
|
+
return {
|
|
750
|
+
platform,
|
|
751
|
+
org
|
|
752
|
+
};
|
|
753
|
+
}
|
|
754
|
+
|
|
755
|
+
export { ApiError as A, requireEditableDefinition as B, requireActingOrg as C, requireManageOrgMembers as D, requireManageOrgCompute as E, splitFlatPermissions as F, canActorChangeOrgRole as G, canChangeOrgRole as H, requireCanCreateProject as I, canSolve as J, requireCanEditProjectSettings as K, withAdminBypass as L, requireCanManage as M, NoopEventSink as N, requireTargetIsOrgMember as O, checkOwnerRemoval as P, requireCanReclaim as Q, canChangeVisibilityToPublic as R, SchemaExtractionError as S, actorFrom as a, ApiErrorCode as b, canView as c, codeForStatus as d, isApiError as e, fetchSchemaFromCompute as f, accessDepsFromConfig as g, apiError as h, isFlagEnabled as i, requirePermission as j, requireCanSolve as k, canManage as l, canEdit as m, requireManageCompute as n, requireInstanceAdmin as o, projectAccessInputFromRowsWith as p, requireManageInstanceUsers as q, requireAuthed as r, scoped as s, assertCanGrantPlatformPermissions as t, requireCanViewProject as u, requireCanViewOrg as v, requireCanEditDefinition as w, requireCanCreateDefinition as x, postSchemaFormData as y, assertCamelCaseSchema as z };
|
|
756
|
+
//# sourceMappingURL=access.js-CoycZfKB.js.map
|