@selvajs/selva 4.6.0-beta.1 → 4.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/client/_app/immutable/assets/0.Cj1PUDYF.css +1 -0
- package/build/client/_app/immutable/assets/0.Cj1PUDYF.css.br +0 -0
- package/build/client/_app/immutable/assets/0.Cj1PUDYF.css.gz +0 -0
- package/build/client/_app/immutable/chunks/{CYwMcrNf.js → B3863r4K.js} +1 -1
- package/build/client/_app/immutable/chunks/B3863r4K.js.br +0 -0
- package/build/client/_app/immutable/chunks/B3863r4K.js.gz +0 -0
- package/build/client/_app/immutable/chunks/B7HUdsZm.js +2 -0
- package/build/client/_app/immutable/chunks/B7HUdsZm.js.br +0 -0
- package/build/client/_app/immutable/chunks/B7HUdsZm.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{C7bboi98.js → ByprRtK5.js} +1 -1
- package/build/client/_app/immutable/chunks/ByprRtK5.js.br +0 -0
- package/build/client/_app/immutable/chunks/ByprRtK5.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{bbm2EPf2.js → Cf84tWpN.js} +1 -1
- package/build/client/_app/immutable/chunks/Cf84tWpN.js.br +0 -0
- package/build/client/_app/immutable/chunks/Cf84tWpN.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{B7xyorXf.js → CoQ9fTF5.js} +1 -1
- package/build/client/_app/immutable/chunks/CoQ9fTF5.js.br +0 -0
- package/build/client/_app/immutable/chunks/CoQ9fTF5.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{DE1IAae-.js → CpLycSEC.js} +4 -4
- package/build/client/_app/immutable/chunks/CpLycSEC.js.br +0 -0
- package/build/client/_app/immutable/chunks/CpLycSEC.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DYVN_iHa.js +3 -0
- package/build/client/_app/immutable/chunks/DYVN_iHa.js.br +0 -0
- package/build/client/_app/immutable/chunks/DYVN_iHa.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{Bri2FOVj.js → Dc6oAxlV.js} +1 -1
- package/build/client/_app/immutable/chunks/Dc6oAxlV.js.br +0 -0
- package/build/client/_app/immutable/chunks/Dc6oAxlV.js.gz +0 -0
- package/build/client/_app/immutable/entry/app.C2qtLXu2.js +2 -0
- package/build/client/_app/immutable/entry/app.C2qtLXu2.js.br +0 -0
- package/build/client/_app/immutable/entry/app.C2qtLXu2.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.8SkoDI6l.js +1 -0
- package/build/client/_app/immutable/entry/start.8SkoDI6l.js.br +2 -0
- package/build/client/_app/immutable/entry/start.8SkoDI6l.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{1.CM6R_Lbr.js → 1.BZeDeTb6.js} +1 -1
- package/build/client/_app/immutable/nodes/1.BZeDeTb6.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.BZeDeTb6.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{11.BL3lvPOj.js → 11.RXCFeYZu.js} +1 -1
- package/build/client/_app/immutable/nodes/11.RXCFeYZu.js.br +0 -0
- package/build/client/_app/immutable/nodes/11.RXCFeYZu.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{13.sbeNC4dG.js → 13.wdYbd877.js} +1 -1
- package/build/client/_app/immutable/nodes/13.wdYbd877.js.br +0 -0
- package/build/client/_app/immutable/nodes/13.wdYbd877.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{14.DhGNtyi-.js → 14.DD7XD9GU.js} +1 -1
- package/build/client/_app/immutable/nodes/14.DD7XD9GU.js.br +0 -0
- package/build/client/_app/immutable/nodes/14.DD7XD9GU.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{15.oP-KbzSG.js → 15.DY0SZIUd.js} +13 -13
- package/build/client/_app/immutable/nodes/15.DY0SZIUd.js.br +0 -0
- package/build/client/_app/immutable/nodes/15.DY0SZIUd.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{16.BL9rkAB6.js → 16.C1v8VywM.js} +1 -1
- package/build/client/_app/immutable/nodes/16.C1v8VywM.js.br +0 -0
- package/build/client/_app/immutable/nodes/16.C1v8VywM.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{17.BH69wf-l.js → 17.o9x0mNbV.js} +1 -1
- package/build/client/_app/immutable/nodes/17.o9x0mNbV.js.br +0 -0
- package/build/client/_app/immutable/nodes/17.o9x0mNbV.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{19.BX1LJmxf.js → 19.CUaj7-cs.js} +1 -1
- package/build/client/_app/immutable/nodes/19.CUaj7-cs.js.br +0 -0
- package/build/client/_app/immutable/nodes/19.CUaj7-cs.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{2.CE83b9g7.js → 2.Byp7Cy5O.js} +1 -1
- package/build/client/_app/immutable/nodes/2.Byp7Cy5O.js.br +0 -0
- package/build/client/_app/immutable/nodes/2.Byp7Cy5O.js.gz +0 -0
- package/build/client/_app/immutable/nodes/20.BBJjjtVo.js +5021 -0
- package/build/client/_app/immutable/nodes/20.BBJjjtVo.js.br +0 -0
- package/build/client/_app/immutable/nodes/20.BBJjjtVo.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{21.mN985ZPL.js → 21.H0xJhKOR.js} +1 -1
- package/build/client/_app/immutable/nodes/21.H0xJhKOR.js.br +0 -0
- package/build/client/_app/immutable/nodes/21.H0xJhKOR.js.gz +0 -0
- package/build/client/_app/immutable/nodes/23.CzZJ1Z4F.js +16 -0
- package/build/client/_app/immutable/nodes/23.CzZJ1Z4F.js.br +0 -0
- package/build/client/_app/immutable/nodes/23.CzZJ1Z4F.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{24.BoyZWBlt.js → 24.BdClZySL.js} +1 -1
- package/build/client/_app/immutable/nodes/24.BdClZySL.js.br +0 -0
- package/build/client/_app/immutable/nodes/24.BdClZySL.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{27.BqTrLSXs.js → 27.Sx8VQZPb.js} +1 -1
- package/build/client/_app/immutable/nodes/27.Sx8VQZPb.js.br +0 -0
- package/build/client/_app/immutable/nodes/27.Sx8VQZPb.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{28.ByUTtUBS.js → 28.DM3lB66C.js} +1 -1
- package/build/client/_app/immutable/nodes/28.DM3lB66C.js.br +0 -0
- package/build/client/_app/immutable/nodes/28.DM3lB66C.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{29.BPAeUa_H.js → 29.DMxRfN-X.js} +1 -1
- package/build/client/_app/immutable/nodes/29.DMxRfN-X.js.br +0 -0
- package/build/client/_app/immutable/nodes/29.DMxRfN-X.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{3.CokJHt5C.js → 3.Ch9SZOx0.js} +1 -1
- package/build/client/_app/immutable/nodes/3.Ch9SZOx0.js.br +0 -0
- package/build/client/_app/immutable/nodes/3.Ch9SZOx0.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{30.DAY6osd8.js → 30.B4uslO3W.js} +1 -1
- package/build/client/_app/immutable/nodes/30.B4uslO3W.js.br +0 -0
- package/build/client/_app/immutable/nodes/30.B4uslO3W.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{5.BnPG80ab.js → 5.sJES-uLE.js} +1 -1
- package/build/client/_app/immutable/nodes/5.sJES-uLE.js.br +1 -0
- package/build/client/_app/immutable/nodes/5.sJES-uLE.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{6.CaadpVs0.js → 6.Dnp2ke2O.js} +1 -1
- package/build/client/_app/immutable/nodes/6.Dnp2ke2O.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.Dnp2ke2O.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{7.BKxf0uSD.js → 7.D0_g6ne3.js} +1 -1
- package/build/client/_app/immutable/nodes/7.D0_g6ne3.js.br +0 -0
- package/build/client/_app/immutable/nodes/7.D0_g6ne3.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{8.CMgsgbH9.js → 8.Ba7__1HU.js} +1 -1
- package/build/client/_app/immutable/nodes/8.Ba7__1HU.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.Ba7__1HU.js.gz +0 -0
- package/build/client/_app/immutable/nodes/9.BqTmDQ0D.js +1 -0
- package/build/client/_app/immutable/nodes/9.BqTmDQ0D.js.br +0 -0
- package/build/client/_app/immutable/nodes/9.BqTmDQ0D.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-DPS1L7af.js → AppHeader.js-D1BAf8Eq.js} +2 -2
- package/build/server/chunks/chunks/{AppHeader.js-DPS1L7af.js.map → AppHeader.js-D1BAf8Eq.js.map} +1 -1
- package/build/server/chunks/chunks/{UserChip.js-BD3_PDH3.js → UserChip.js-DIRuYUCH.js} +2 -2
- package/build/server/chunks/chunks/{UserChip.js-BD3_PDH3.js.map → UserChip.js-DIRuYUCH.js.map} +1 -1
- package/build/server/chunks/chunks/{access.server.js-7luP5O4P.js → access.server.js-x_KrjYJP.js} +16 -6
- package/build/server/chunks/chunks/access.server.js-x_KrjYJP.js.map +1 -0
- package/build/server/chunks/chunks/{api-errors.js-DjgsTHzx.js → api-errors.js-B1VX-zf8.js} +4 -4
- package/build/server/chunks/chunks/{api-errors.js-DjgsTHzx.js.map → api-errors.js-B1VX-zf8.js.map} +1 -1
- package/build/server/chunks/chunks/{auth-bootstrap.server.js-Bg-Qy-YX.js → auth-bootstrap.server.js-C3M4bN44.js} +3 -3
- package/build/server/chunks/chunks/{auth-bootstrap.server.js-Bg-Qy-YX.js.map → auth-bootstrap.server.js-C3M4bN44.js.map} +1 -1
- package/build/server/chunks/chunks/{bootHealth.server.js-C24EAEVt.js → bootHealth.server.js-o9cAZ837.js} +3 -3
- package/build/server/chunks/chunks/{bootHealth.server.js-C24EAEVt.js.map → bootHealth.server.js-o9cAZ837.js.map} +1 -1
- package/build/server/chunks/chunks/{context.js-CYsGbpHa.js → context.js-D8E0GFTw.js} +57 -2
- package/build/server/chunks/chunks/context.js-D8E0GFTw.js.map +1 -0
- package/build/server/chunks/chunks/{index4.js-CMkITbZa.js → index3.js-CMkITbZa.js} +1 -1
- package/build/server/chunks/chunks/{index4.js-CMkITbZa.js.map → index3.js-CMkITbZa.js.map} +1 -1
- package/build/server/chunks/chunks/{index3.js-DBDmmwF4.js → index4.js-DBDmmwF4.js} +1 -1
- package/build/server/chunks/chunks/{index3.js-DBDmmwF4.js.map → index4.js-DBDmmwF4.js.map} +1 -1
- package/build/server/chunks/chunks/{internal.js-BByw60g1.js → internal.js-DFETyO32.js} +3 -3
- package/build/server/chunks/chunks/{internal.js-BByw60g1.js.map → internal.js-DFETyO32.js.map} +1 -1
- package/build/server/chunks/chunks/{package.js-sBN_SktS.js → package.js-CGBcIxLn.js} +2 -2
- package/build/server/chunks/chunks/package.js-CGBcIxLn.js.map +1 -0
- package/build/server/chunks/chunks/{permissions-compat.server.js-BRYePqvR.js → permissions-compat.server.js-BfoBZYSH.js} +2 -2
- package/build/server/chunks/chunks/{permissions-compat.server.js-BRYePqvR.js.map → permissions-compat.server.js-BfoBZYSH.js.map} +1 -1
- package/build/server/chunks/chunks/{permissions.server.js-D61RQTaQ.js → permissions.server.js-B1Spnvnp.js} +2 -2
- package/build/server/chunks/chunks/{permissions.server.js-D61RQTaQ.js.map → permissions.server.js-B1Spnvnp.js.map} +1 -1
- package/build/server/chunks/chunks/{providers.server.js-CvFPEaVE.js → providers.server.js-Sbk117pY.js} +99 -12
- package/build/server/chunks/chunks/providers.server.js-Sbk117pY.js.map +1 -0
- package/build/server/chunks/chunks/{resolve.server.js-C-Ts05L6.js → resolve.server.js-oRLjLsp2.js} +3 -3
- package/build/server/chunks/chunks/{resolve.server.js-C-Ts05L6.js.map → resolve.server.js-oRLjLsp2.js.map} +1 -1
- package/build/server/chunks/chunks/{types2.js-DdHhYSMF.js → types.js-DdHhYSMF.js} +1 -1
- package/build/server/chunks/chunks/types.js-DdHhYSMF.js.map +1 -0
- package/build/server/chunks/chunks/{utils4.js-CzzZn2eq.js → utils4.js-DvnSECfA.js} +2 -2
- package/build/server/chunks/chunks/{utils4.js-CzzZn2eq.js.map → utils4.js-DvnSECfA.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/admin/api/compute/{_server.ts.js-BgLRpUtK.js → _server.ts.js-At2WPXTO.js} +6 -6
- package/build/server/chunks/entries/endpoints/admin/api/compute/{_server.ts.js-BgLRpUtK.js.map → _server.ts.js-At2WPXTO.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/admin/api/compute/actions/{_server.ts.js-D5dm9VRE.js → _server.ts.js-C7IxEmV_.js} +6 -6
- package/build/server/chunks/entries/endpoints/admin/api/compute/actions/{_server.ts.js-D5dm9VRE.js.map → _server.ts.js-C7IxEmV_.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/admin/api/compute/status/{_server.ts.js-DH93ywqu.js → _server.ts.js-C3wKOPU7.js} +6 -6
- package/build/server/chunks/entries/endpoints/admin/api/compute/status/{_server.ts.js-DH93ywqu.js.map → _server.ts.js-C3wKOPU7.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/admin/api/orgs/_id_/{_server.ts.js-34QzYRnZ.js → _server.ts.js-DPXSSURv.js} +6 -6
- package/build/server/chunks/entries/endpoints/admin/api/orgs/_id_/{_server.ts.js-34QzYRnZ.js.map → _server.ts.js-DPXSSURv.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/admin/api/orgs/_id_/assets/_kind_/_server.ts.js-C3h2a4jh.js +78 -0
- package/build/server/chunks/entries/endpoints/admin/api/orgs/_id_/assets/_kind_/_server.ts.js-C3h2a4jh.js.map +1 -0
- package/build/server/chunks/entries/endpoints/admin/api/orgs/{_server.ts.js-DUYn5akM.js → _server.ts.js-CWC6GVdY.js} +6 -6
- package/build/server/chunks/entries/endpoints/admin/api/orgs/{_server.ts.js-DUYn5akM.js.map → _server.ts.js-CWC6GVdY.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/{_server.ts.js-CSz_2jk0.js → _server.ts.js-CS5ErY1M.js} +6 -6
- package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/{_server.ts.js-CSz_2jk0.js.map → _server.ts.js-CS5ErY1M.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/grants/_grantId_/{_server.ts.js-LYhsZcY-.js → _server.ts.js-DU_gLDs6.js} +6 -6
- package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/grants/_grantId_/{_server.ts.js-LYhsZcY-.js.map → _server.ts.js-DU_gLDs6.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/grants/{_server.ts.js-C4K7fnEv.js → _server.ts.js-DMxdDGgQ.js} +6 -6
- package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/grants/{_server.ts.js-C4K7fnEv.js.map → _server.ts.js-DMxdDGgQ.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/admin/api/projects/{_server.ts.js-CUPY6YtC.js → _server.ts.js-DvyK27Fl.js} +6 -6
- package/build/server/chunks/entries/endpoints/admin/api/projects/{_server.ts.js-CUPY6YtC.js.map → _server.ts.js-DvyK27Fl.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/admin/api/system/health/{_server.ts.js-DRad-P2w.js → _server.ts.js-CWBVKNdf.js} +6 -6
- package/build/server/chunks/entries/endpoints/admin/api/system/health/{_server.ts.js-DRad-P2w.js.map → _server.ts.js-CWBVKNdf.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/admin/api/system/update/{_server.ts.js-B8GIFRxz.js → _server.ts.js-Bm7Ktrs8.js} +6 -6
- package/build/server/chunks/entries/endpoints/admin/api/system/update/{_server.ts.js-B8GIFRxz.js.map → _server.ts.js-Bm7Ktrs8.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/admin/api/users/_id_/{_server.ts.js-D0CEHD1q.js → _server.ts.js-Bo9FJ97l.js} +8 -8
- package/build/server/chunks/entries/endpoints/admin/api/users/_id_/{_server.ts.js-D0CEHD1q.js.map → _server.ts.js-Bo9FJ97l.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/admin/api/users/_id_/disable/{_server.ts.js-CcyFddp3.js → _server.ts.js-DIwBwpnn.js} +6 -6
- package/build/server/chunks/entries/endpoints/admin/api/users/_id_/disable/{_server.ts.js-CcyFddp3.js.map → _server.ts.js-DIwBwpnn.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/admin/api/users/{_server.ts.js-CH64KfJa.js → _server.ts.js-C1svi-Ld.js} +8 -8
- package/build/server/chunks/entries/endpoints/admin/api/users/{_server.ts.js-CH64KfJa.js.map → _server.ts.js-C1svi-Ld.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/api/compute/{_server.ts.js-DDqEYPNl.js → _server.ts.js-D_9YzrC7.js} +23 -18
- package/build/server/chunks/entries/endpoints/api/compute/_server.ts.js-D_9YzrC7.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/compute/schema/{_server.ts.js-CRdaMbr5.js → _server.ts.js-CS7DNpIB.js} +6 -6
- package/build/server/chunks/entries/endpoints/api/compute/schema/{_server.ts.js-CRdaMbr5.js.map → _server.ts.js-CS7DNpIB.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/api/definitions/_guid_/{_server.ts.js-CcVYY8qB.js → _server.ts.js-C1bI6fx_.js} +6 -7
- package/build/server/chunks/entries/endpoints/api/definitions/_guid_/_server.ts.js-C1bI6fx_.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/definitions/_guid_/image/_filename_/{_server.ts.js-Dty9JTwS.js → _server.ts.js-DG0bgqAW.js} +6 -7
- package/build/server/chunks/entries/endpoints/api/definitions/_guid_/image/_filename_/_server.ts.js-DG0bgqAW.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/definitions/_guid_/image/{_server.ts.js-B5Ff8JLF.js → _server.ts.js-vURofqUH.js} +6 -6
- package/build/server/chunks/entries/endpoints/api/definitions/_guid_/image/{_server.ts.js-B5Ff8JLF.js.map → _server.ts.js-vURofqUH.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/api/definitions/_guid_/publish/{_server.ts.js-BsxirCwS.js → _server.ts.js-tDF_TKqq.js} +6 -6
- package/build/server/chunks/entries/endpoints/api/definitions/_guid_/publish/{_server.ts.js-BsxirCwS.js.map → _server.ts.js-tDF_TKqq.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/api/definitions/_guid_/share-links/_linkId_/{_server.ts.js-DTHTIL25.js → _server.ts.js-BKFS4e1E.js} +6 -6
- package/build/server/chunks/entries/endpoints/api/definitions/_guid_/share-links/_linkId_/{_server.ts.js-DTHTIL25.js.map → _server.ts.js-BKFS4e1E.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/api/definitions/_guid_/share-links/{_server.ts.js-BSk-XMi6.js → _server.ts.js-BTVUUKaO.js} +7 -7
- package/build/server/chunks/entries/endpoints/api/definitions/_guid_/share-links/_server.ts.js-BTVUUKaO.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/definitions/_guid_/versions/{_server.ts.js-DHaix4jV.js → _server.ts.js-BPTGDGrE.js} +6 -6
- package/build/server/chunks/entries/endpoints/api/definitions/_guid_/versions/{_server.ts.js-DHaix4jV.js.map → _server.ts.js-BPTGDGrE.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/api/definitions/_guid_/versions/_versionId_/{_server.ts.js-DgsqUpvy.js → _server.ts.js-DmpMY-tz.js} +6 -6
- package/build/server/chunks/entries/endpoints/api/definitions/_guid_/versions/_versionId_/{_server.ts.js-DgsqUpvy.js.map → _server.ts.js-DmpMY-tz.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/api/definitions/{_server.ts.js-CSlXv8pl.js → _server.ts.js-CgDtxILD.js} +6 -7
- package/build/server/chunks/entries/endpoints/api/definitions/_server.ts.js-CgDtxILD.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/files/_...path_/_server.ts.js-JYCUGi0C.js +66 -0
- package/build/server/chunks/entries/endpoints/api/files/_...path_/_server.ts.js-JYCUGi0C.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/health/{_server.ts.js---TaqOG4.js → _server.ts.js-CcG69a2b.js} +4 -4
- package/build/server/chunks/entries/endpoints/api/health/{_server.ts.js---TaqOG4.js.map → _server.ts.js-CcG69a2b.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/api/invites/_id_/{_server.ts.js-D8PLQyfl.js → _server.ts.js-CpTViiM7.js} +6 -6
- package/build/server/chunks/entries/endpoints/api/invites/_id_/{_server.ts.js-D8PLQyfl.js.map → _server.ts.js-CpTViiM7.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/api/invites/{_server.ts.js-bw5-SMCA.js → _server.ts.js-DveWNfQf.js} +7 -7
- package/build/server/chunks/entries/endpoints/api/invites/{_server.ts.js-bw5-SMCA.js.map → _server.ts.js-DveWNfQf.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/api/me/starred/_guid_/{_server.ts.js-xb3Bmd1T.js → _server.ts.js-DvBZkOHM.js} +5 -5
- package/build/server/chunks/entries/endpoints/api/me/starred/_guid_/{_server.ts.js-xb3Bmd1T.js.map → _server.ts.js-DvBZkOHM.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/api/org/compute/{_server.ts.js-Md2vW_JR.js → _server.ts.js-jFG7Wq0K.js} +6 -6
- package/build/server/chunks/entries/endpoints/api/org/compute/{_server.ts.js-Md2vW_JR.js.map → _server.ts.js-jFG7Wq0K.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/api/orgs/_orgId_/members/_userId_/{_server.ts.js-BnDxcUMX.js → _server.ts.js-B2ycg2AE.js} +6 -6
- package/build/server/chunks/entries/endpoints/api/orgs/_orgId_/members/_userId_/{_server.ts.js-BnDxcUMX.js.map → _server.ts.js-B2ycg2AE.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/api/projects/_id_/{_server.ts.js-BDBuktWA.js → _server.ts.js-CNP_RE3t.js} +6 -6
- package/build/server/chunks/entries/endpoints/api/projects/_id_/{_server.ts.js-BDBuktWA.js.map → _server.ts.js-CNP_RE3t.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/api/projects/_id_/members/{_server.ts.js-C6jztoDj.js → _server.ts.js-Bn5xwjry.js} +6 -6
- package/build/server/chunks/entries/endpoints/api/projects/_id_/members/{_server.ts.js-C6jztoDj.js.map → _server.ts.js-Bn5xwjry.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/api/projects/_id_/members/_userId_/{_server.ts.js-bnRRtqNM.js → _server.ts.js-BM6OdR6F.js} +6 -6
- package/build/server/chunks/entries/endpoints/api/projects/_id_/members/_userId_/{_server.ts.js-bnRRtqNM.js.map → _server.ts.js-BM6OdR6F.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/api/projects/_id_/reclaim/{_server.ts.js-CwPJVSlh.js → _server.ts.js-kZpX0JUe.js} +6 -6
- package/build/server/chunks/entries/endpoints/api/projects/_id_/reclaim/{_server.ts.js-CwPJVSlh.js.map → _server.ts.js-kZpX0JUe.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/api/projects/{_server.ts.js-DFtwR98t.js → _server.ts.js-B-9USbyM.js} +6 -6
- package/build/server/chunks/entries/endpoints/api/projects/{_server.ts.js-DFtwR98t.js.map → _server.ts.js-B-9USbyM.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/auth/email/callback/{_server.ts.js-RrX9l-Lx.js → _server.ts.js-BBxTiBOV.js} +6 -6
- package/build/server/chunks/entries/endpoints/auth/email/callback/{_server.ts.js-RrX9l-Lx.js.map → _server.ts.js-BBxTiBOV.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/auth/supabase/callback/{_server.ts.js-BD35FhKQ.js → _server.ts.js-C2ENZLn1.js} +6 -6
- package/build/server/chunks/entries/endpoints/auth/supabase/callback/{_server.ts.js-BD35FhKQ.js.map → _server.ts.js-C2ENZLn1.js.map} +1 -1
- package/build/server/chunks/entries/endpoints/auth/supabase/start/{_server.ts.js-4f91Kqiq.js → _server.ts.js-DQkl2H6i.js} +5 -5
- package/build/server/chunks/entries/endpoints/auth/supabase/start/{_server.ts.js-4f91Kqiq.js.map → _server.ts.js-DQkl2H6i.js.map} +1 -1
- package/build/server/chunks/entries/{hooks.server.js-COXVYevB.js → hooks.server.js-CEJghe6K.js} +14 -8
- package/build/server/chunks/entries/hooks.server.js-CEJghe6K.js.map +1 -0
- package/build/server/chunks/entries/pages/{_layout.server.ts.js-GUqRaAWY.js → _layout.server.ts.js-BJt_Hh-8.js} +2 -2
- package/build/server/chunks/entries/pages/{_layout.server.ts.js-GUqRaAWY.js.map → _layout.server.ts.js-BJt_Hh-8.js.map} +1 -1
- package/build/server/chunks/entries/pages/{_page.svelte.js-DGriO6RK.js → _page.svelte.js-DYHX2cXS.js} +4 -4
- package/build/server/chunks/entries/pages/{_page.svelte.js-DGriO6RK.js.map → _page.svelte.js-DYHX2cXS.js.map} +1 -1
- package/build/server/chunks/entries/pages/accept-invite/{_page.server.ts.js-fXauaTHa.js → _page.server.ts.js-p0Ur2D2z.js} +3 -3
- package/build/server/chunks/entries/pages/accept-invite/{_page.server.ts.js-fXauaTHa.js.map → _page.server.ts.js-p0Ur2D2z.js.map} +1 -1
- package/build/server/chunks/entries/pages/admin/{_layout.server.ts.js-C0CrUKMc.js → _layout.server.ts.js-CwHlKomC.js} +3 -3
- package/build/server/chunks/entries/pages/admin/{_layout.server.ts.js-C0CrUKMc.js.map → _layout.server.ts.js-CwHlKomC.js.map} +1 -1
- package/build/server/chunks/entries/pages/admin/{_layout.svelte.js-m5w7AtPm.js → _layout.svelte.js-BQTc-1yu.js} +4 -4
- package/build/server/chunks/entries/pages/admin/{_layout.svelte.js-m5w7AtPm.js.map → _layout.svelte.js-BQTc-1yu.js.map} +1 -1
- package/build/server/chunks/entries/pages/admin/_page.server.ts.js-C8t8e0PN.js +46 -0
- package/build/server/chunks/entries/pages/admin/_page.server.ts.js-C8t8e0PN.js.map +1 -0
- package/build/server/chunks/entries/pages/admin/_page.svelte.js-pR3aIlUh.js +343 -0
- package/build/server/chunks/entries/pages/admin/_page.svelte.js-pR3aIlUh.js.map +1 -0
- package/build/server/chunks/entries/pages/admin/audit/{_page.server.ts.js-CmQyI84L.js → _page.server.ts.js-B2E4712L.js} +4 -4
- package/build/server/chunks/entries/pages/admin/audit/{_page.server.ts.js-CmQyI84L.js.map → _page.server.ts.js-B2E4712L.js.map} +1 -1
- package/build/server/chunks/entries/pages/admin/audit/{_page.svelte.js-DKnhcr0i.js → _page.svelte.js-Qrf4BkvU.js} +2 -2
- package/build/server/chunks/entries/pages/admin/audit/{_page.svelte.js-DKnhcr0i.js.map → _page.svelte.js-Qrf4BkvU.js.map} +1 -1
- package/build/server/chunks/entries/pages/admin/compute/{_page.server.ts.js-DbdS__5V.js → _page.server.ts.js-X7vOXVx_.js} +5 -5
- package/build/server/chunks/entries/pages/admin/compute/{_page.server.ts.js-DbdS__5V.js.map → _page.server.ts.js-X7vOXVx_.js.map} +1 -1
- package/build/server/chunks/entries/pages/admin/organizations/{_page.server.ts.js-B5gIXJYU.js → _page.server.ts.js-C9ThvUZW.js} +3 -3
- package/build/server/chunks/entries/pages/admin/organizations/{_page.server.ts.js-B5gIXJYU.js.map → _page.server.ts.js-C9ThvUZW.js.map} +1 -1
- package/build/server/chunks/entries/pages/admin/projects/_id_/{_page.server.ts.js-DZo022zC.js → _page.server.ts.js-CbYQUdsT.js} +3 -3
- package/build/server/chunks/entries/pages/admin/projects/_id_/{_page.server.ts.js-DZo022zC.js.map → _page.server.ts.js-CbYQUdsT.js.map} +1 -1
- package/build/server/chunks/entries/pages/admin/projects/{_page.server.ts.js-DMCzmhaO.js → _page.server.ts.js-Bwzbc5U7.js} +3 -3
- package/build/server/chunks/entries/pages/admin/projects/{_page.server.ts.js-DMCzmhaO.js.map → _page.server.ts.js-Bwzbc5U7.js.map} +1 -1
- package/build/server/chunks/entries/pages/admin/system/{_page.server.ts.js-DZJF89cX.js → _page.server.ts.js-CVJE8A-M.js} +5 -5
- package/build/server/chunks/entries/pages/admin/system/{_page.server.ts.js-DZJF89cX.js.map → _page.server.ts.js-CVJE8A-M.js.map} +1 -1
- package/build/server/chunks/entries/pages/admin/system/{_page.svelte.js-D40qz7h1.js → _page.svelte.js-DCVW0G-O.js} +11 -9
- package/build/server/chunks/entries/pages/admin/system/_page.svelte.js-DCVW0G-O.js.map +1 -0
- package/build/server/chunks/entries/pages/admin/users/{_page.server.ts.js-CoesHwNn.js → _page.server.ts.js-5CoqZYu7.js} +5 -5
- package/build/server/chunks/entries/pages/admin/users/{_page.server.ts.js-CoesHwNn.js.map → _page.server.ts.js-5CoqZYu7.js.map} +1 -1
- package/build/server/chunks/entries/pages/admin/users/{_page.svelte.js-B8lliTJb.js → _page.svelte.js-C4nuIM5S.js} +2 -2
- package/build/server/chunks/entries/pages/admin/users/{_page.svelte.js-B8lliTJb.js.map → _page.svelte.js-C4nuIM5S.js.map} +1 -1
- package/build/server/chunks/entries/pages/auth/email/start/{_page.server.ts.js-CytdSW2U.js → _page.server.ts.js-CJVxmsjJ.js} +2 -2
- package/build/server/chunks/entries/pages/auth/email/start/{_page.server.ts.js-CytdSW2U.js.map → _page.server.ts.js-CJVxmsjJ.js.map} +1 -1
- package/build/server/chunks/entries/pages/library/_guid_/{_page.server.ts.js-Bg8aqgge.js → _page.server.ts.js-CdsnDM7L.js} +32 -13
- package/build/server/chunks/entries/pages/library/_guid_/_page.server.ts.js-CdsnDM7L.js.map +1 -0
- package/build/server/chunks/entries/pages/library/_guid_/{_page.svelte.js-64m55aas.js → _page.svelte.js-BKgJcySA.js} +25 -8
- package/build/server/chunks/entries/pages/library/_guid_/_page.svelte.js-BKgJcySA.js.map +1 -0
- package/build/server/chunks/entries/pages/library/{_page.server.ts.js-D4HeAIm2.js → _page.server.ts.js-CGuuDwN6.js} +3 -3
- package/build/server/chunks/entries/pages/library/{_page.server.ts.js-D4HeAIm2.js.map → _page.server.ts.js-CGuuDwN6.js.map} +1 -1
- package/build/server/chunks/entries/pages/library/{_page.svelte.js-DCyL3B8c.js → _page.svelte.js-5i6dSCN0.js} +4 -4
- package/build/server/chunks/entries/pages/library/{_page.svelte.js-DCyL3B8c.js.map → _page.svelte.js-5i6dSCN0.js.map} +1 -1
- package/build/server/chunks/entries/pages/login/{_page.server.ts.js-F5J46dSA.js → _page.server.ts.js-DKowuYxD.js} +2 -2
- package/build/server/chunks/entries/pages/login/{_page.server.ts.js-F5J46dSA.js.map → _page.server.ts.js-DKowuYxD.js.map} +1 -1
- package/build/server/chunks/entries/pages/projects/{_layout.server.ts.js-DKAa-WX1.js → _layout.server.ts.js-CNMJpFAK.js} +2 -2
- package/build/server/chunks/entries/pages/projects/{_layout.server.ts.js-DKAa-WX1.js.map → _layout.server.ts.js-CNMJpFAK.js.map} +1 -1
- package/build/server/chunks/entries/pages/projects/{_layout.svelte.js-CnS5vZg7.js → _layout.svelte.js-BhualuOA.js} +4 -4
- package/build/server/chunks/entries/pages/projects/{_layout.svelte.js-CnS5vZg7.js.map → _layout.svelte.js-BhualuOA.js.map} +1 -1
- package/build/server/chunks/entries/pages/projects/{_page.server.ts.js-BjETS8O4.js → _page.server.ts.js-DUSltMia.js} +5 -5
- package/build/server/chunks/entries/pages/projects/{_page.server.ts.js-BjETS8O4.js.map → _page.server.ts.js-DUSltMia.js.map} +1 -1
- package/build/server/chunks/entries/pages/projects/{_page.svelte.js-CAqDXDn_.js → _page.svelte.js-BJ2zx31e.js} +20 -36
- package/build/server/chunks/entries/pages/projects/_page.svelte.js-BJ2zx31e.js.map +1 -0
- package/build/server/chunks/entries/pages/setup/{_page.server.ts.js-CB9mBWz8.js → _page.server.ts.js-Bi43FW5A.js} +4 -4
- package/build/server/chunks/entries/pages/setup/{_page.server.ts.js-CB9mBWz8.js.map → _page.server.ts.js-Bi43FW5A.js.map} +1 -1
- package/build/server/chunks/entries/pages/team/{_layout.server.ts.js-BS38iHNQ.js → _layout.server.ts.js-kTT4BcsF.js} +2 -2
- package/build/server/chunks/entries/pages/team/{_layout.server.ts.js-BS38iHNQ.js.map → _layout.server.ts.js-kTT4BcsF.js.map} +1 -1
- package/build/server/chunks/entries/pages/team/{_layout.svelte.js-DsH0R5CP.js → _layout.svelte.js-fvMFVC5K.js} +4 -4
- package/build/server/chunks/entries/pages/team/{_layout.svelte.js-DsH0R5CP.js.map → _layout.svelte.js-fvMFVC5K.js.map} +1 -1
- package/build/server/chunks/entries/pages/team/{_page.server.ts.js-DaPu8CKH.js → _page.server.ts.js-BM0HjGiv.js} +2 -2
- package/build/server/chunks/entries/pages/team/{_page.server.ts.js-DaPu8CKH.js.map → _page.server.ts.js-BM0HjGiv.js.map} +1 -1
- package/build/server/chunks/entries/pages/team/compute/{_page.server.ts.js-Dzz9klWW.js → _page.server.ts.js-DSVbfXjJ.js} +4 -4
- package/build/server/chunks/entries/pages/team/compute/{_page.server.ts.js-Dzz9klWW.js.map → _page.server.ts.js-DSVbfXjJ.js.map} +1 -1
- package/build/server/chunks/entries/pages/team/members/{_page.server.ts.js-BXhljlWE.js → _page.server.ts.js-B8od5Y-v.js} +3 -3
- package/build/server/chunks/entries/pages/team/members/{_page.server.ts.js-BXhljlWE.js.map → _page.server.ts.js-B8od5Y-v.js.map} +1 -1
- package/build/server/chunks/entries/pages/team/members/{_page.svelte.js-Dy7GTJgI.js → _page.svelte.js-DwmoagP7.js} +2 -2
- package/build/server/chunks/entries/pages/team/members/{_page.svelte.js-Dy7GTJgI.js.map → _page.svelte.js-DwmoagP7.js.map} +1 -1
- package/build/server/chunks/entries/pages/team/projects/{_page.server.ts.js-AfkRGQXS.js → _page.server.ts.js-BU18iBCr.js} +3 -3
- package/build/server/chunks/entries/pages/team/projects/{_page.server.ts.js-AfkRGQXS.js.map → _page.server.ts.js-BU18iBCr.js.map} +1 -1
- package/build/server/chunks/entries/pages/team/reclaim/{_page.server.ts.js--s1Cxd4d.js → _page.server.ts.js-DQR8CiW5.js} +3 -3
- package/build/server/chunks/entries/pages/team/reclaim/{_page.server.ts.js--s1Cxd4d.js.map → _page.server.ts.js-DQR8CiW5.js.map} +1 -1
- package/build/server/chunks/entries/pages/team/settings/{_page.server.ts.js-D8NAShTy.js → _page.server.ts.js-Ds2Ncl_k.js} +3 -3
- package/build/server/chunks/entries/pages/team/settings/{_page.server.ts.js-D8NAShTy.js.map → _page.server.ts.js-Ds2Ncl_k.js.map} +1 -1
- package/build/server/chunks/entries/pages/team/shares/{_page.server.ts.js-CcFjlszF.js → _page.server.ts.js-BPApcgSj.js} +2 -2
- package/build/server/chunks/entries/pages/team/shares/{_page.server.ts.js-CcFjlszF.js.map → _page.server.ts.js-BPApcgSj.js.map} +1 -1
- package/build/server/chunks/{handler-DT0uWjBp.js → handler-CCM1mFE_.js} +3 -3
- package/build/server/chunks/{handler-DT0uWjBp.js.map → handler-CCM1mFE_.js.map} +1 -1
- package/build/server/chunks/{index.js-BZyh93vy.js → index.js-BijxEH4l.js} +2 -2
- package/build/server/chunks/{index.js-BZyh93vy.js.map → index.js-BijxEH4l.js.map} +1 -1
- package/build/server/chunks/{manifest.js-oeb-oFS7.js → manifest.js-DGqOiurT.js} +79 -72
- package/build/server/chunks/manifest.js-DGqOiurT.js.map +1 -0
- package/build/server/chunks/nodes/{0.js-PcSktsRm.js → 0.js-CSowTy6s.js} +6 -6
- package/build/server/chunks/nodes/{0.js-PcSktsRm.js.map → 0.js-CSowTy6s.js.map} +1 -1
- package/build/server/chunks/nodes/{1.js-C4j4LF5U.js → 1.js-JkhEKVKD.js} +2 -2
- package/build/server/chunks/nodes/{1.js-C4j4LF5U.js.map → 1.js-JkhEKVKD.js.map} +1 -1
- package/build/server/chunks/nodes/{10.js-lAWyY09k.js → 10.js-H0usRAOJ.js} +8 -8
- package/build/server/chunks/nodes/{10.js-lAWyY09k.js.map → 10.js-H0usRAOJ.js.map} +1 -1
- package/build/server/chunks/nodes/{11.js-DIDcfss_.js → 11.js-zU1ghV-s.js} +8 -8
- package/build/server/chunks/nodes/{11.js-DIDcfss_.js.map → 11.js-zU1ghV-s.js.map} +1 -1
- package/build/server/chunks/nodes/{12.js-DKvWtkL1.js → 12.js-Hi7yiemE.js} +4 -4
- package/build/server/chunks/nodes/{12.js-DKvWtkL1.js.map → 12.js-Hi7yiemE.js.map} +1 -1
- package/build/server/chunks/nodes/{13.js-Bb1uKJJo.js → 13.js-BecfMvrP.js} +5 -5
- package/build/server/chunks/nodes/{13.js-Bb1uKJJo.js.map → 13.js-BecfMvrP.js.map} +1 -1
- package/build/server/chunks/nodes/{14.js-Ckt0RI_n.js → 14.js-C_XeyRH1.js} +5 -5
- package/build/server/chunks/nodes/{14.js-Ckt0RI_n.js.map → 14.js-C_XeyRH1.js.map} +1 -1
- package/build/server/chunks/nodes/{15.js-Bg9xk8tu.js → 15.js-Xfq1Hlsv.js} +10 -10
- package/build/server/chunks/nodes/{15.js-Bg9xk8tu.js.map → 15.js-Xfq1Hlsv.js.map} +1 -1
- package/build/server/chunks/nodes/{16.js-_VFD2biW.js → 16.js-DNAhQw2R.js} +10 -10
- package/build/server/chunks/nodes/{16.js-_VFD2biW.js.map → 16.js-DNAhQw2R.js.map} +1 -1
- package/build/server/chunks/nodes/{17.js-y8faUJNl.js → 17.js-zS4c5CqT.js} +2 -2
- package/build/server/chunks/nodes/{17.js-y8faUJNl.js.map → 17.js-zS4c5CqT.js.map} +1 -1
- package/build/server/chunks/nodes/{18.js-D85x42Pd.js → 18.js-DGcj7w2M.js} +4 -4
- package/build/server/chunks/nodes/{18.js-D85x42Pd.js.map → 18.js-DGcj7w2M.js.map} +1 -1
- package/build/server/chunks/nodes/{19.js-Cx7dqGQJ.js → 19.js-CCl0PnaY.js} +6 -6
- package/build/server/chunks/nodes/{19.js-Cx7dqGQJ.js.map → 19.js-CCl0PnaY.js.map} +1 -1
- package/build/server/chunks/nodes/{2.js-BNUMrs8p.js → 2.js-DDmfVBSG.js} +9 -9
- package/build/server/chunks/nodes/{2.js-BNUMrs8p.js.map → 2.js-DDmfVBSG.js.map} +1 -1
- package/build/server/chunks/nodes/{20.js-C5MMYBGm.js → 20.js-DRI5Uoa0.js} +10 -10
- package/build/server/chunks/nodes/{20.js-C5MMYBGm.js.map → 20.js-DRI5Uoa0.js.map} +1 -1
- package/build/server/chunks/nodes/{21.js-BvwwMOm6.js → 21.js-HQMDLLY8.js} +5 -5
- package/build/server/chunks/nodes/{21.js-BvwwMOm6.js.map → 21.js-HQMDLLY8.js.map} +1 -1
- package/build/server/chunks/nodes/{23.js-C9nNF0n1.js → 23.js-CUtU6P7T.js} +9 -9
- package/build/server/chunks/nodes/{23.js-C9nNF0n1.js.map → 23.js-CUtU6P7T.js.map} +1 -1
- package/build/server/chunks/nodes/{24.js-DRVVl7lb.js → 24.js-DEB1MpJO.js} +6 -6
- package/build/server/chunks/nodes/{24.js-DRVVl7lb.js.map → 24.js-DEB1MpJO.js.map} +1 -1
- package/build/server/chunks/nodes/{25.js-D7N3t-6a.js → 25.js-Dz_tw4Pc.js} +4 -4
- package/build/server/chunks/nodes/{25.js-D7N3t-6a.js.map → 25.js-Dz_tw4Pc.js.map} +1 -1
- package/build/server/chunks/nodes/{27.js-BVu9mjGp.js → 27.js-BFJkH0a-.js} +6 -6
- package/build/server/chunks/nodes/{27.js-BVu9mjGp.js.map → 27.js-BFJkH0a-.js.map} +1 -1
- package/build/server/chunks/nodes/{28.js-AVbJKhtc.js → 28.js-Dmzn1oyt.js} +6 -6
- package/build/server/chunks/nodes/{28.js-AVbJKhtc.js.map → 28.js-Dmzn1oyt.js.map} +1 -1
- package/build/server/chunks/nodes/{29.js-Cg6tjoPr.js → 29.js-CYk1T9YK.js} +5 -5
- package/build/server/chunks/nodes/{29.js-Cg6tjoPr.js.map → 29.js-CYk1T9YK.js.map} +1 -1
- package/build/server/chunks/nodes/{3.js-DfTiQlVN.js → 3.js-CQMjn48j.js} +2 -2
- package/build/server/chunks/nodes/{3.js-DfTiQlVN.js.map → 3.js-CQMjn48j.js.map} +1 -1
- package/build/server/chunks/nodes/{30.js-CdUOYVWA.js → 30.js-IFuEWY3z.js} +5 -5
- package/build/server/chunks/nodes/{30.js-CdUOYVWA.js.map → 30.js-IFuEWY3z.js.map} +1 -1
- package/build/server/chunks/nodes/{31.js-2-KePkFt.js → 31.js-C6TEDhTN.js} +4 -4
- package/build/server/chunks/nodes/{31.js-2-KePkFt.js.map → 31.js-C6TEDhTN.js.map} +1 -1
- package/build/server/chunks/nodes/{32.js-GzMFQ-NT.js → 32.js-B2ywocPi.js} +4 -4
- package/build/server/chunks/nodes/{32.js-GzMFQ-NT.js.map → 32.js-B2ywocPi.js.map} +1 -1
- package/build/server/chunks/nodes/{5.js-FWzuX_CU.js → 5.js-tGFha7PK.js} +5 -5
- package/build/server/chunks/nodes/{5.js-FWzuX_CU.js.map → 5.js-tGFha7PK.js.map} +1 -1
- package/build/server/chunks/nodes/{6.js-CFy94wGq.js → 6.js-rduNGbyy.js} +6 -6
- package/build/server/chunks/nodes/{6.js-CFy94wGq.js.map → 6.js-rduNGbyy.js.map} +1 -1
- package/build/server/chunks/nodes/{7.js-DKgV4vrA.js → 7.js-C5KuvcoZ.js} +3 -3
- package/build/server/chunks/nodes/{7.js-DKgV4vrA.js.map → 7.js-C5KuvcoZ.js.map} +1 -1
- package/build/server/chunks/nodes/{8.js-DXx6KUgO.js → 8.js-LI48HZY1.js} +5 -5
- package/build/server/chunks/nodes/{8.js-DXx6KUgO.js.map → 8.js-LI48HZY1.js.map} +1 -1
- package/build/server/chunks/nodes/9.js-ocRRXGJE.js +23 -0
- package/build/server/chunks/nodes/9.js-ocRRXGJE.js.map +1 -0
- package/package.json +7 -7
- package/build/client/_app/immutable/assets/0.Df7_lxfV.css +0 -1
- package/build/client/_app/immutable/assets/0.Df7_lxfV.css.br +0 -0
- package/build/client/_app/immutable/assets/0.Df7_lxfV.css.gz +0 -0
- package/build/client/_app/immutable/chunks/B7xyorXf.js.br +0 -0
- package/build/client/_app/immutable/chunks/B7xyorXf.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Bri2FOVj.js.br +0 -0
- package/build/client/_app/immutable/chunks/Bri2FOVj.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C7bboi98.js.br +0 -0
- package/build/client/_app/immutable/chunks/C7bboi98.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CYwMcrNf.js.br +0 -0
- package/build/client/_app/immutable/chunks/CYwMcrNf.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DE1IAae-.js.br +0 -0
- package/build/client/_app/immutable/chunks/DE1IAae-.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DFnBQD1S.js +0 -2
- package/build/client/_app/immutable/chunks/DFnBQD1S.js.br +0 -0
- package/build/client/_app/immutable/chunks/DFnBQD1S.js.gz +0 -0
- package/build/client/_app/immutable/chunks/bbm2EPf2.js.br +0 -0
- package/build/client/_app/immutable/chunks/bbm2EPf2.js.gz +0 -0
- package/build/client/_app/immutable/chunks/q9t1O0FS.js +0 -3
- package/build/client/_app/immutable/chunks/q9t1O0FS.js.br +0 -0
- package/build/client/_app/immutable/chunks/q9t1O0FS.js.gz +0 -0
- package/build/client/_app/immutable/entry/app.KeZYxes2.js +0 -2
- package/build/client/_app/immutable/entry/app.KeZYxes2.js.br +0 -0
- package/build/client/_app/immutable/entry/app.KeZYxes2.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.ku-2cP9N.js +0 -1
- package/build/client/_app/immutable/entry/start.ku-2cP9N.js.br +0 -2
- package/build/client/_app/immutable/entry/start.ku-2cP9N.js.gz +0 -0
- package/build/client/_app/immutable/nodes/1.CM6R_Lbr.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.CM6R_Lbr.js.gz +0 -0
- package/build/client/_app/immutable/nodes/11.BL3lvPOj.js.br +0 -0
- package/build/client/_app/immutable/nodes/11.BL3lvPOj.js.gz +0 -0
- package/build/client/_app/immutable/nodes/13.sbeNC4dG.js.br +0 -0
- package/build/client/_app/immutable/nodes/13.sbeNC4dG.js.gz +0 -0
- package/build/client/_app/immutable/nodes/14.DhGNtyi-.js.br +0 -0
- package/build/client/_app/immutable/nodes/14.DhGNtyi-.js.gz +0 -0
- package/build/client/_app/immutable/nodes/15.oP-KbzSG.js.br +0 -0
- package/build/client/_app/immutable/nodes/15.oP-KbzSG.js.gz +0 -0
- package/build/client/_app/immutable/nodes/16.BL9rkAB6.js.br +0 -0
- package/build/client/_app/immutable/nodes/16.BL9rkAB6.js.gz +0 -0
- package/build/client/_app/immutable/nodes/17.BH69wf-l.js.br +0 -0
- package/build/client/_app/immutable/nodes/17.BH69wf-l.js.gz +0 -0
- package/build/client/_app/immutable/nodes/19.BX1LJmxf.js.br +0 -0
- package/build/client/_app/immutable/nodes/19.BX1LJmxf.js.gz +0 -0
- package/build/client/_app/immutable/nodes/2.CE83b9g7.js.br +0 -0
- package/build/client/_app/immutable/nodes/2.CE83b9g7.js.gz +0 -0
- package/build/client/_app/immutable/nodes/20.DfGuU-tL.js +0 -5021
- package/build/client/_app/immutable/nodes/20.DfGuU-tL.js.br +0 -0
- package/build/client/_app/immutable/nodes/20.DfGuU-tL.js.gz +0 -0
- package/build/client/_app/immutable/nodes/21.mN985ZPL.js.br +0 -0
- package/build/client/_app/immutable/nodes/21.mN985ZPL.js.gz +0 -0
- package/build/client/_app/immutable/nodes/23.CFZCzpzp.js +0 -16
- package/build/client/_app/immutable/nodes/23.CFZCzpzp.js.br +0 -0
- package/build/client/_app/immutable/nodes/23.CFZCzpzp.js.gz +0 -0
- package/build/client/_app/immutable/nodes/24.BoyZWBlt.js.br +0 -0
- package/build/client/_app/immutable/nodes/24.BoyZWBlt.js.gz +0 -0
- package/build/client/_app/immutable/nodes/27.BqTrLSXs.js.br +0 -0
- package/build/client/_app/immutable/nodes/27.BqTrLSXs.js.gz +0 -0
- package/build/client/_app/immutable/nodes/28.ByUTtUBS.js.br +0 -0
- package/build/client/_app/immutable/nodes/28.ByUTtUBS.js.gz +0 -0
- package/build/client/_app/immutable/nodes/29.BPAeUa_H.js.br +0 -0
- package/build/client/_app/immutable/nodes/29.BPAeUa_H.js.gz +0 -0
- package/build/client/_app/immutable/nodes/3.CokJHt5C.js.br +0 -2
- package/build/client/_app/immutable/nodes/3.CokJHt5C.js.gz +0 -0
- package/build/client/_app/immutable/nodes/30.DAY6osd8.js.br +0 -0
- package/build/client/_app/immutable/nodes/30.DAY6osd8.js.gz +0 -0
- package/build/client/_app/immutable/nodes/5.BnPG80ab.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.BnPG80ab.js.gz +0 -0
- package/build/client/_app/immutable/nodes/6.CaadpVs0.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.CaadpVs0.js.gz +0 -0
- package/build/client/_app/immutable/nodes/7.BKxf0uSD.js.br +0 -0
- package/build/client/_app/immutable/nodes/7.BKxf0uSD.js.gz +0 -0
- package/build/client/_app/immutable/nodes/8.CMgsgbH9.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.CMgsgbH9.js.gz +0 -0
- package/build/client/_app/immutable/nodes/9.idcjG0je.js +0 -1
- package/build/client/_app/immutable/nodes/9.idcjG0je.js.br +0 -0
- package/build/client/_app/immutable/nodes/9.idcjG0je.js.gz +0 -0
- package/build/server/chunks/chunks/access.server.js-7luP5O4P.js.map +0 -1
- package/build/server/chunks/chunks/context.js-CYsGbpHa.js.map +0 -1
- package/build/server/chunks/chunks/package.js-sBN_SktS.js.map +0 -1
- package/build/server/chunks/chunks/providers.server.js-CvFPEaVE.js.map +0 -1
- package/build/server/chunks/chunks/types.js-DxzJoaA4.js +0 -11
- package/build/server/chunks/chunks/types.js-DxzJoaA4.js.map +0 -1
- package/build/server/chunks/chunks/types2.js-DdHhYSMF.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/compute/_server.ts.js-DDqEYPNl.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/definitions/_guid_/_server.ts.js-CcVYY8qB.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/definitions/_guid_/image/_filename_/_server.ts.js-Dty9JTwS.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/definitions/_guid_/share-links/_server.ts.js-BSk-XMi6.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/definitions/_server.ts.js-CSlXv8pl.js.map +0 -1
- package/build/server/chunks/entries/endpoints/api/files/_...path_/_server.ts.js-BNV_mEcx.js +0 -51
- package/build/server/chunks/entries/endpoints/api/files/_...path_/_server.ts.js-BNV_mEcx.js.map +0 -1
- package/build/server/chunks/entries/hooks.server.js-COXVYevB.js.map +0 -1
- package/build/server/chunks/entries/pages/admin/_page.server.ts.js-CrOnejSx.js +0 -32
- package/build/server/chunks/entries/pages/admin/_page.server.ts.js-CrOnejSx.js.map +0 -1
- package/build/server/chunks/entries/pages/admin/_page.svelte.js-Cazj7gb_.js +0 -173
- package/build/server/chunks/entries/pages/admin/_page.svelte.js-Cazj7gb_.js.map +0 -1
- package/build/server/chunks/entries/pages/admin/system/_page.svelte.js-D40qz7h1.js.map +0 -1
- package/build/server/chunks/entries/pages/library/_guid_/_page.server.ts.js-Bg8aqgge.js.map +0 -1
- package/build/server/chunks/entries/pages/library/_guid_/_page.svelte.js-64m55aas.js.map +0 -1
- package/build/server/chunks/entries/pages/projects/_page.svelte.js-CAqDXDn_.js.map +0 -1
- package/build/server/chunks/manifest.js-oeb-oFS7.js.map +0 -1
- package/build/server/chunks/nodes/9.js-C6jSzHQB.js +0 -23
- package/build/server/chunks/nodes/9.js-C6jSzHQB.js.map +0 -1
- /package/build/client/_app/immutable/nodes/{0.DbHFFbkB.js → 0.CpKGgbSx.js} +0 -0
- /package/build/client/_app/immutable/nodes/{0.DbHFFbkB.js.br → 0.CpKGgbSx.js.br} +0 -0
- /package/build/client/_app/immutable/nodes/{0.DbHFFbkB.js.gz → 0.CpKGgbSx.js.gz} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_page.svelte.js-B8lliTJb.js","sources":["../../../../../../../.svelte-kit/output/server/entries/pages/admin/users/_page.svelte.js"],"sourcesContent":["import { b as attr_class, a as attr, k as escape_html, e as ensure_array_like, d as derived, h as head, l as stringify } from \"../../../../chunks/renderer.js\";\nimport { i as invalidateAll } from \"../../../../chunks/client.js\";\nimport { A as ALL_PLATFORM_PERMISSIONS, a as ALL_ORG_PERMISSIONS, b as OWNER_ADMIN_ONLY_PERMISSIONS } from \"../../../../chunks/context.js\";\nimport { U as UserAvatar } from \"../../../../chunks/UserAvatar.js\";\nimport { C as Chevron_down } from \"../../../../chunks/chevron-down.js\";\nimport { C as Chevron_right } from \"../../../../chunks/chevron-right.js\";\nimport { B as Button } from \"../../../../chunks/button.js\";\nimport { T as Trash_2 } from \"../../../../chunks/trash-2.js\";\nimport { S as SectionHeader } from \"../../../../chunks/SectionHeader.js\";\nimport { C as Card, a as Card_content } from \"../../../../chunks/card-content.js\";\nimport { E as EmptyState } from \"../../../../chunks/EmptyState.js\";\nimport { S as Shield_check } from \"../../../../chunks/shield-check.js\";\nimport { C as Card_header, a as Card_title } from \"../../../../chunks/card-title.js\";\nimport { C as Card_description } from \"../../../../chunks/card-description.js\";\nimport { M as Mail } from \"../../../../chunks/mail.js\";\nimport { P as Plus } from \"../../../../chunks/plus.js\";\nimport { I as Input } from \"../../../../chunks/input.js\";\nimport { a as toast } from \"../../../../chunks/toast-state.svelte.js\";\nimport { C as Copy } from \"../../../../chunks/copy.js\";\nimport { X } from \"../../../../chunks/x.js\";\nfunction UserListItem($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n let {\n user,\n expanded,\n isPlatformAdmin,\n soleInstanceAdmin,\n updating,\n deleting,\n onDelete\n } = $$props;\n const PERM_LABEL = {\n instance_admin: \"Instance admin\",\n manage_instance_users: \"Manage instance users\",\n manage_compute: \"Manage compute\",\n manage_updates: \"Manage updates\",\n manage_org_members: \"Manage members\",\n manage_org_compute: \"Manage org compute\",\n manage_definitions: \"Manage definitions\",\n manage_projects: \"Manage projects\"\n };\n const PERM_DESC = {\n instance_admin: \"Full access to every action on the instance.\",\n manage_instance_users: \"Create, disable, and delete any user on the instance.\",\n manage_compute: \"Configure the instance Rhino.Compute pool.\",\n manage_updates: \"Run the application update script.\",\n manage_org_members: \"Invite, remove, and change roles of org members.\",\n manage_org_compute: \"Configure this org's BYO compute server.\",\n manage_definitions: \"Upload, edit, and delete any definition in the org.\",\n manage_projects: \"Create, edit, and delete any project in the org.\"\n };\n const ROLE_TONE = {\n owner: \"border-amber-500/40 text-amber-600 dark:text-amber-400 bg-amber-500/5\",\n admin: \"border-blue-500/40 text-blue-600 dark:text-blue-400 bg-blue-500/5\",\n member: \"border-border text-muted-foreground\"\n };\n const displayLine = derived(() => user.displayName ? `${user.displayName} · ${user.email ?? user.id}` : user.email ?? user.id);\n const isOwnerOrAdmin = derived(() => user.orgRole === \"owner\" || user.orgRole === \"admin\");\n const summaryPerms = derived(() => user.permissions.filter((p) => {\n if (ALL_PLATFORM_PERMISSIONS.includes(p)) return true;\n if (isOwnerOrAdmin()) return false;\n return true;\n }));\n function isPlatformPerm(p) {\n return ALL_PLATFORM_PERMISSIONS.includes(p);\n }\n function isOwnerAdminOnly(p) {\n return OWNER_ADMIN_ONLY_PERMISSIONS.includes(p);\n }\n function checkboxState(perm) {\n const checked = user.permissions.includes(perm);\n const platformLocked = isPlatformPerm(perm) && !isPlatformAdmin;\n const soleAdminLock = perm === \"instance_admin\" && soleInstanceAdmin;\n const memberExcluded = !isPlatformPerm(perm) && isOwnerAdminOnly(perm) && user.orgRole === \"member\";\n const locked = platformLocked || soleAdminLock || memberExcluded;\n return {\n checked,\n locked,\n soleAdminLock,\n platformLocked,\n memberExcluded\n };\n }\n $$renderer2.push(`<div${attr_class(`px-4 py-3 ${expanded ? \"bg-accent/20\" : \"\"}`)}><div class=\"flex items-center gap-3\"><button type=\"button\" class=\"text-muted-foreground hover:text-foreground shrink-0 rounded-sm p-0.5\"${attr(\"aria-label\", expanded ? \"Collapse permissions\" : \"Expand permissions\")}>`);\n if (expanded) {\n $$renderer2.push(\"<!--[0-->\");\n Chevron_down($$renderer2, { class: \"h-4 w-4\" });\n } else {\n $$renderer2.push(\"<!--[-1-->\");\n Chevron_right($$renderer2, { class: \"h-4 w-4\" });\n }\n $$renderer2.push(`<!--]--></button> `);\n UserAvatar($$renderer2, { name: user.displayName ?? user.email ?? user.id });\n $$renderer2.push(`<!----> <div class=\"min-w-0 flex-1\"><div class=\"flex items-center gap-2\"><p class=\"truncate text-sm font-medium\">${escape_html(displayLine())}</p> `);\n if (user.orgRole) {\n $$renderer2.push(\"<!--[0-->\");\n $$renderer2.push(`<span${attr_class(`rounded-full border px-2 py-0.5 font-mono text-[10px] tracking-wide uppercase ${ROLE_TONE[user.orgRole]}`)}>${escape_html(user.orgRole)}</span>`);\n } else {\n $$renderer2.push(\"<!--[-1-->\");\n }\n $$renderer2.push(`<!--]--> `);\n if (user.disabled) {\n $$renderer2.push(\"<!--[0-->\");\n $$renderer2.push(`<span class=\"border-border bg-muted text-muted-foreground rounded-full border px-2 py-0.5 font-mono text-[10px] tracking-wide uppercase\">disabled</span>`);\n } else if (!user.lastLoginAt) {\n $$renderer2.push(\"<!--[1-->\");\n $$renderer2.push(`<span class=\"rounded-full border border-amber-500/40 bg-amber-500/5 px-2 py-0.5 font-mono text-[10px] tracking-wide text-amber-600 uppercase dark:text-amber-400\" title=\"Provisioned but has never signed in. Permissions take effect on first login.\">invited</span>`);\n } else {\n $$renderer2.push(\"<!--[-1-->\");\n }\n $$renderer2.push(`<!--]--></div> <p class=\"text-muted-foreground truncate font-mono text-xs\">${escape_html(user.id)}</p> `);\n if (!expanded && summaryPerms().length > 0) {\n $$renderer2.push(\"<!--[0-->\");\n $$renderer2.push(`<div class=\"mt-1.5 flex flex-wrap gap-1\"><!--[-->`);\n const each_array = ensure_array_like(summaryPerms());\n for (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {\n let p = each_array[$$index];\n $$renderer2.push(`<span${attr_class(`rounded-full px-2 py-0.5 font-mono text-[10px] ${isPlatformPerm(p) ? \"bg-amber-500/10 text-amber-700 dark:text-amber-400\" : \"bg-muted text-muted-foreground\"}`)}>${escape_html(PERM_LABEL[p])}</span>`);\n }\n $$renderer2.push(`<!--]--></div>`);\n } else {\n $$renderer2.push(\"<!--[-1-->\");\n }\n $$renderer2.push(`<!--]--></div> `);\n Button($$renderer2, {\n size: \"sm\",\n variant: \"ghost\",\n disabled: deleting || soleInstanceAdmin,\n onclick: onDelete,\n title: soleInstanceAdmin ? \"Cannot delete the only instance admin. Promote another user first.\" : \"Delete user\",\n class: \"text-destructive hover:text-destructive h-8 w-8 shrink-0 p-0\",\n children: ($$renderer3) => {\n Trash_2($$renderer3, { class: \"h-4 w-4\" });\n },\n $$slots: { default: true }\n });\n $$renderer2.push(`<!----></div> `);\n if (expanded) {\n $$renderer2.push(\"<!--[0-->\");\n $$renderer2.push(`<div class=\"mt-4 ml-10 space-y-4\"><section><h4 class=\"text-muted-foreground mb-2 text-xs font-medium tracking-wider uppercase\">Platform</h4> <div class=\"grid gap-2 sm:grid-cols-2\"><!--[-->`);\n const each_array_1 = ensure_array_like(ALL_PLATFORM_PERMISSIONS);\n for (let $$index_1 = 0, $$length = each_array_1.length; $$index_1 < $$length; $$index_1++) {\n let p = each_array_1[$$index_1];\n const state = checkboxState(p);\n $$renderer2.push(`<label${attr_class(`flex items-start gap-2 rounded-md border p-2.5 ${state.locked ? \"border-border cursor-not-allowed opacity-60\" : \"border-border hover:bg-accent/40 cursor-pointer\"}`)}${attr(\"title\", state.soleAdminLock ? \"Cannot remove the only instance admin.\" : void 0)}><input type=\"checkbox\" class=\"mt-0.5 shrink-0\"${attr(\"checked\", state.checked, true)}${attr(\"disabled\", updating || state.locked, true)}/> <div class=\"min-w-0\"><p class=\"text-sm leading-tight font-medium\">${escape_html(PERM_LABEL[p])}</p> <p class=\"text-muted-foreground mt-0.5 text-xs\">${escape_html(PERM_DESC[p])}</p></div></label>`);\n }\n $$renderer2.push(`<!--]--></div></section> <section><h4 class=\"text-muted-foreground mb-2 text-xs font-medium tracking-wider uppercase\">Organization</h4> `);\n if (isOwnerOrAdmin()) {\n $$renderer2.push(\"<!--[0-->\");\n $$renderer2.push(`<p class=\"text-muted-foreground text-sm\"><strong class=\"text-foreground capitalize\">${escape_html(user.orgRole)}s</strong> automatically\n\t\t\t\t\t\treceive all organization permissions. To grant a custom subset, change the role to <span class=\"font-mono\">member</span>.</p>`);\n } else {\n $$renderer2.push(\"<!--[-1-->\");\n $$renderer2.push(`<div class=\"grid gap-2 sm:grid-cols-2\"><!--[-->`);\n const each_array_2 = ensure_array_like(ALL_ORG_PERMISSIONS);\n for (let $$index_2 = 0, $$length = each_array_2.length; $$index_2 < $$length; $$index_2++) {\n let p = each_array_2[$$index_2];\n const state = checkboxState(p);\n $$renderer2.push(`<label${attr_class(`flex items-start gap-2 rounded-md border p-2.5 ${state.locked ? \"border-border cursor-not-allowed opacity-60\" : \"border-border hover:bg-accent/40 cursor-pointer\"}`)}${attr(\"title\", state.memberExcluded ? \"Only owners and admins can hold this permission.\" : void 0)}><input type=\"checkbox\" class=\"mt-0.5 shrink-0\"${attr(\"checked\", state.checked, true)}${attr(\"disabled\", updating || state.locked, true)}/> <div class=\"min-w-0\"><p class=\"text-sm leading-tight font-medium\">${escape_html(PERM_LABEL[p])}</p> <p class=\"text-muted-foreground mt-0.5 text-xs\">${escape_html(PERM_DESC[p])}</p></div></label>`);\n }\n $$renderer2.push(`<!--]--></div>`);\n }\n $$renderer2.push(`<!--]--></section></div>`);\n } else {\n $$renderer2.push(\"<!--[-1-->\");\n }\n $$renderer2.push(`<!--]--></div>`);\n });\n}\nfunction _page($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n const ALL_FLAT_PERMISSIONS = [...ALL_PLATFORM_PERMISSIONS, ...ALL_ORG_PERMISSIONS];\n let { data } = $$props;\n const assignablePermissions = derived(() => data.isPlatformAdmin ? ALL_FLAT_PERMISSIONS : [...ALL_ORG_PERMISSIONS]);\n const PERMISSION_LABELS = {\n instance_admin: \"Instance Admin (all)\",\n manage_instance_users: \"Manage Instance Users\",\n manage_compute: \"Manage Compute (instance)\",\n manage_updates: \"Manage Updates\",\n manage_org_members: \"Manage Org Members\",\n manage_org_compute: \"Manage Org Compute\",\n manage_definitions: \"Manage Definitions\",\n manage_projects: \"Manage Projects\"\n };\n const ORG_ROLES = [\"owner\", \"admin\", \"member\"];\n let showAddForm = false;\n let newEmail = \"\";\n let newPassword = \"\";\n let newPermissions = [];\n let adding = false;\n let showInviteForm = false;\n let inviteEmail = \"\";\n let inviteRole = \"member\";\n let invitePermissions = [];\n let creatingInvite = false;\n let lastInviteLink = null;\n let revokingId = null;\n const invitePermissionOptions = derived(() => inviteRole === \"member\" ? ALL_ORG_PERMISSIONS.filter((p) => !OWNER_ADMIN_ONLY_PERMISSIONS.includes(p)) : [...ALL_ORG_PERMISSIONS]);\n let deletingId = null;\n let updatingId = null;\n let expandedUserId = null;\n const enabledInstanceAdminCount = derived(() => (data.users ?? []).filter((u) => !u.disabled && u.platformPermissions.includes(\"instance_admin\")).length);\n const isSoleInstanceAdmin = (user) => enabledInstanceAdminCount() === 1 && !user.disabled && user.platformPermissions.includes(\"instance_admin\");\n async function addUser() {\n adding = true;\n try {\n const res = await fetch(\"/admin/api/users\", {\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\" },\n body: JSON.stringify({\n email: newEmail,\n ...data.provider.userCreation === \"email-password\" && { password: newPassword },\n permissions: newPermissions\n })\n });\n if (res.ok) {\n toast.success(`User \"${newEmail}\" created`);\n newEmail = \"\";\n newPassword = \"\";\n newPermissions = [];\n showAddForm = false;\n await invalidateAll();\n } else {\n const err = await res.json().catch(() => ({ error: \"Unknown error\" }));\n toast.error(err.message || err.error || \"Failed to create user\");\n }\n } catch {\n toast.error(\"Failed to create user\");\n } finally {\n adding = false;\n }\n }\n async function createInvite() {\n creatingInvite = true;\n try {\n const res = await fetch(\"/api/invites\", {\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\" },\n body: JSON.stringify({\n email: inviteEmail,\n orgRole: inviteRole,\n permissions: invitePermissions\n })\n });\n if (res.ok) {\n const { acceptUrl } = await res.json();\n lastInviteLink = acceptUrl;\n toast.success(`Invite created for ${inviteEmail}`);\n inviteEmail = \"\";\n inviteRole = \"member\";\n invitePermissions = [];\n showInviteForm = false;\n await invalidateAll();\n } else {\n const err = await res.json().catch(() => ({ error: \"Unknown error\" }));\n toast.error(err.message || err.error || \"Failed to create invite\");\n }\n } catch {\n toast.error(\"Failed to create invite\");\n } finally {\n creatingInvite = false;\n }\n }\n async function revokeInvite(id, email) {\n if (!confirm(`Revoke invite for \"${email}\"?`)) return;\n revokingId = id;\n try {\n const res = await fetch(`/api/invites/${id}`, { method: \"DELETE\" });\n if (res.ok) {\n toast.success(\"Invite revoked\");\n await invalidateAll();\n } else {\n toast.error(\"Failed to revoke invite\");\n }\n } catch {\n toast.error(\"Failed to revoke invite\");\n } finally {\n revokingId = null;\n }\n }\n async function deleteUser(id, email) {\n if (!confirm(`Delete user \"${email}\"? This cannot be undone.`)) return;\n deletingId = id;\n try {\n const res = await fetch(`/admin/api/users/${id}`, { method: \"DELETE\" });\n if (res.ok) {\n toast.success(`User \"${email}\" deleted`);\n await invalidateAll();\n } else {\n const err = await res.json().catch(() => ({}));\n toast.error(err.message || err.error || \"Failed to delete user\");\n }\n } catch {\n toast.error(\"Failed to delete user\");\n } finally {\n deletingId = null;\n }\n }\n let $$settled = true;\n let $$inner_renderer;\n function $$render_inner($$renderer3) {\n head(\"1p497kv\", $$renderer3, ($$renderer4) => {\n $$renderer4.title(($$renderer5) => {\n $$renderer5.push(`<title>Admin · Users</title>`);\n });\n });\n $$renderer3.push(`<div class=\"space-y-6\">`);\n {\n let actions = function($$renderer4) {\n if (data.users !== null && data.provider.userCreation !== \"none\") {\n $$renderer4.push(\"<!--[0-->\");\n if (data.provider.userCreation === \"email-password\") {\n $$renderer4.push(\"<!--[0-->\");\n Button($$renderer4, {\n onclick: () => {\n showInviteForm = !showInviteForm;\n if (showInviteForm) showAddForm = false;\n },\n variant: showInviteForm ? \"outline\" : \"default\",\n children: ($$renderer5) => {\n Mail($$renderer5, { class: \"mr-2 h-4 w-4\" });\n $$renderer5.push(`<!----> Invite user`);\n },\n $$slots: { default: true }\n });\n } else {\n $$renderer4.push(\"<!--[-1-->\");\n }\n $$renderer4.push(`<!--]--> `);\n Button($$renderer4, {\n onclick: () => {\n showAddForm = !showAddForm;\n if (showAddForm) showInviteForm = false;\n },\n variant: showAddForm ? \"outline\" : \"secondary\",\n children: ($$renderer5) => {\n Plus($$renderer5, { class: \"mr-2 h-4 w-4\" });\n $$renderer5.push(`<!----> ${escape_html(data.provider.userCreation === \"email-only\" ? \"Allowlist user\" : \"Add user\")}`);\n },\n $$slots: { default: true }\n });\n $$renderer4.push(`<!---->`);\n } else {\n $$renderer4.push(\"<!--[-1-->\");\n }\n $$renderer4.push(`<!--]-->`);\n };\n SectionHeader($$renderer3, {\n eyebrow: \"Admin\",\n title: \"Users\",\n description: data.users === null ? \"The current auth provider does not expose a user store. Configure DATA_PATH (local provider) or check your provider wiring.\" : `${data.users.length} user${data.users.length === 1 ? \"\" : \"s\"} on this instance.`,\n actions\n });\n }\n $$renderer3.push(`<!----> `);\n if (Card) {\n $$renderer3.push(\"<!--[-->\");\n Card($$renderer3, {\n children: ($$renderer4) => {\n if (Card_content) {\n $$renderer4.push(\"<!--[-->\");\n Card_content($$renderer4, {\n class: \"space-y-4 pt-6\",\n children: ($$renderer5) => {\n if (showInviteForm) {\n $$renderer5.push(\"<!--[0-->\");\n $$renderer5.push(`<div class=\"bg-muted/40 space-y-3 rounded-lg border p-4\"><p class=\"text-sm font-medium\">Invite user</p> <p class=\"text-muted-foreground text-xs\">The invitee sets their own password when they open the link. No password leaves your\n\t\t\t\t\t\tmachine.</p> <div class=\"grid gap-3 sm:grid-cols-2\">`);\n Input($$renderer5, {\n type: \"email\",\n placeholder: \"Email\",\n get value() {\n return inviteEmail;\n },\n set value($$value) {\n inviteEmail = $$value;\n $$settled = false;\n }\n });\n $$renderer5.push(`<!----> `);\n $$renderer5.select(\n {\n value: inviteRole,\n class: \"border-input bg-background h-9 rounded-md border px-3 text-sm\"\n },\n ($$renderer6) => {\n $$renderer6.push(`<!--[-->`);\n const each_array = ensure_array_like(ORG_ROLES);\n for (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {\n let role = each_array[$$index];\n $$renderer6.option({ value: role }, ($$renderer7) => {\n $$renderer7.push(`${escape_html(role)}`);\n });\n }\n $$renderer6.push(`<!--]-->`);\n }\n );\n $$renderer5.push(`</div> <div><p class=\"mb-2 text-xs font-medium\">Organization permissions</p> `);\n if (inviteRole !== \"member\") {\n $$renderer5.push(\"<!--[0-->\");\n $$renderer5.push(`<p class=\"text-muted-foreground mb-2 text-xs\">${escape_html(inviteRole === \"owner\" ? \"Owners\" : \"Admins\")} automatically receive all organization\n\t\t\t\t\t\t\t\tpermissions. Pick <span class=\"font-mono\">member</span> to grant a custom subset.</p>`);\n } else {\n $$renderer5.push(\"<!--[-1-->\");\n }\n $$renderer5.push(`<!--]--> <div class=\"flex flex-wrap gap-3\"><!--[-->`);\n const each_array_1 = ensure_array_like(invitePermissionOptions());\n for (let $$index_1 = 0, $$length = each_array_1.length; $$index_1 < $$length; $$index_1++) {\n let p = each_array_1[$$index_1];\n const roleLocked = inviteRole !== \"member\";\n $$renderer5.push(`<label${attr_class(`flex items-center gap-1.5 text-xs ${stringify(roleLocked ? \"cursor-not-allowed opacity-60\" : \"cursor-pointer\")}`)}><input type=\"checkbox\"${attr(\"checked\", roleLocked || invitePermissions.includes(p), true)}${attr(\"disabled\", roleLocked, true)}/> ${escape_html(PERMISSION_LABELS[p])}</label>`);\n }\n $$renderer5.push(`<!--]--></div></div> <div class=\"flex gap-2\">`);\n Button($$renderer5, {\n onclick: createInvite,\n disabled: creatingInvite || !inviteEmail,\n children: ($$renderer6) => {\n $$renderer6.push(`<!---->${escape_html(creatingInvite ? \"Creating…\" : \"Create invite\")}`);\n },\n $$slots: { default: true }\n });\n $$renderer5.push(`<!----> `);\n Button($$renderer5, {\n variant: \"outline\",\n onclick: () => showInviteForm = false,\n children: ($$renderer6) => {\n $$renderer6.push(`<!---->Cancel`);\n },\n $$slots: { default: true }\n });\n $$renderer5.push(`<!----></div></div>`);\n } else {\n $$renderer5.push(\"<!--[-1-->\");\n }\n $$renderer5.push(`<!--]--> `);\n if (lastInviteLink) {\n $$renderer5.push(\"<!--[0-->\");\n $$renderer5.push(`<div class=\"flex items-start gap-3 rounded-lg border border-green-500/30 bg-green-500/5 p-4\"><div class=\"min-w-0 flex-1\"><p class=\"text-sm font-medium\">Invite ready — copy the link and share it</p> <p class=\"text-muted-foreground mt-1 truncate font-mono text-xs\">${escape_html(lastInviteLink)}</p></div> `);\n Button($$renderer5, {\n size: \"sm\",\n variant: \"outline\",\n onclick: async () => {\n try {\n await navigator.clipboard.writeText(lastInviteLink);\n toast.success(\"Invite link copied\");\n } catch {\n toast.error(\"Could not copy to clipboard\");\n }\n },\n children: ($$renderer6) => {\n Copy($$renderer6, { class: \"mr-1.5 h-3.5 w-3.5\" });\n $$renderer6.push(`<!----> Copy`);\n },\n $$slots: { default: true }\n });\n $$renderer5.push(`<!----> `);\n Button($$renderer5, {\n size: \"sm\",\n variant: \"ghost\",\n onclick: () => lastInviteLink = null,\n children: ($$renderer6) => {\n X($$renderer6, { class: \"h-4 w-4\" });\n },\n $$slots: { default: true }\n });\n $$renderer5.push(`<!----></div>`);\n } else {\n $$renderer5.push(\"<!--[-1-->\");\n }\n $$renderer5.push(`<!--]--> `);\n if (showAddForm) {\n $$renderer5.push(\"<!--[0-->\");\n $$renderer5.push(`<div class=\"bg-muted/40 space-y-3 rounded-lg border p-4\"><p class=\"text-sm font-medium\">New User</p> <div class=\"grid gap-3 sm:grid-cols-2\">`);\n Input($$renderer5, {\n type: \"email\",\n placeholder: \"Email\",\n get value() {\n return newEmail;\n },\n set value($$value) {\n newEmail = $$value;\n $$settled = false;\n }\n });\n $$renderer5.push(`<!----> `);\n if (data.provider.userCreation === \"email-password\") {\n $$renderer5.push(\"<!--[0-->\");\n Input($$renderer5, {\n type: \"password\",\n placeholder: \"Password (min 8 chars)\",\n get value() {\n return newPassword;\n },\n set value($$value) {\n newPassword = $$value;\n $$settled = false;\n }\n });\n } else {\n $$renderer5.push(\"<!--[-1-->\");\n }\n $$renderer5.push(`<!--]--></div> `);\n if (data.provider.userCreation === \"email-only\") {\n $$renderer5.push(\"<!--[0-->\");\n $$renderer5.push(`<p class=\"text-muted-foreground text-xs\">This user will authenticate via ${escape_html(data.provider.name)}. No password is stored.</p>`);\n } else {\n $$renderer5.push(\"<!--[-1-->\");\n }\n $$renderer5.push(`<!--]--> <div><p class=\"mb-2 text-xs font-medium\">Permissions</p> <p class=\"text-muted-foreground mb-2 text-xs\">New users are added as <span class=\"font-mono\">member</span>. Promote them to owner or\n\t\t\t\t\t\t\tadmin from the user list to grant full organization access.</p> <div class=\"flex flex-wrap gap-3\"><!--[-->`);\n const each_array_2 = ensure_array_like(assignablePermissions());\n for (let $$index_2 = 0, $$length = each_array_2.length; $$index_2 < $$length; $$index_2++) {\n let p = each_array_2[$$index_2];\n const isOwnerAdminOnly = OWNER_ADMIN_ONLY_PERMISSIONS.includes(p);\n const isPlatformScope = ALL_PLATFORM_PERMISSIONS.includes(p);\n const memberExcluded = isOwnerAdminOnly && !isPlatformScope;\n $$renderer5.push(`<label${attr_class(`flex items-center gap-1.5 text-xs ${stringify(memberExcluded ? \"cursor-not-allowed opacity-60\" : \"cursor-pointer\")}`)}${attr(\"title\", memberExcluded ? \"Only owners and admins can hold this permission\" : void 0)}><input type=\"checkbox\"${attr(\"checked\", !memberExcluded && newPermissions.includes(p), true)}${attr(\"disabled\", memberExcluded, true)}/> ${escape_html(PERMISSION_LABELS[p])}</label>`);\n }\n $$renderer5.push(`<!--]--></div></div> <div class=\"flex gap-2\">`);\n Button($$renderer5, {\n onclick: addUser,\n disabled: adding || !newEmail || data.provider.userCreation === \"email-password\" && !newPassword,\n children: ($$renderer6) => {\n $$renderer6.push(`<!---->${escape_html(adding ? \"Creating…\" : \"Create User\")}`);\n },\n $$slots: { default: true }\n });\n $$renderer5.push(`<!----> `);\n Button($$renderer5, {\n variant: \"outline\",\n onclick: () => showAddForm = false,\n children: ($$renderer6) => {\n $$renderer6.push(`<!---->Cancel`);\n },\n $$slots: { default: true }\n });\n $$renderer5.push(`<!----></div></div>`);\n } else {\n $$renderer5.push(\"<!--[-1-->\");\n }\n $$renderer5.push(`<!--]--> `);\n if (data.users === null) {\n $$renderer5.push(\"<!--[0-->\");\n {\n let body = function($$renderer6) {\n $$renderer6.push(`<!---->Set <code class=\"text-xs\">DATA_PATH</code> (local provider) or check your provider\n\t\t\t\t\t\tselection in <code class=\"text-xs\">.env</code>.`);\n };\n EmptyState($$renderer5, {\n icon: Shield_check,\n title: \"User store unavailable\",\n body\n });\n }\n } else if (data.users.length === 0) {\n $$renderer5.push(\"<!--[1-->\");\n EmptyState($$renderer5, {\n title: \"No users yet\",\n description: \"Add your first user above.\"\n });\n } else {\n $$renderer5.push(\"<!--[-1-->\");\n $$renderer5.push(`<div class=\"divide-y rounded-lg border\"><!--[-->`);\n const each_array_3 = ensure_array_like(data.users);\n for (let $$index_3 = 0, $$length = each_array_3.length; $$index_3 < $$length; $$index_3++) {\n let user = each_array_3[$$index_3];\n UserListItem($$renderer5, {\n user,\n expanded: expandedUserId === user.id,\n isPlatformAdmin: data.isPlatformAdmin,\n soleInstanceAdmin: isSoleInstanceAdmin(user),\n updating: updatingId === user.id,\n deleting: deletingId === user.id,\n onDelete: () => deleteUser(user.id, user.email ?? user.id)\n });\n }\n $$renderer5.push(`<!--]--></div>`);\n }\n $$renderer5.push(`<!--]-->`);\n },\n $$slots: { default: true }\n });\n $$renderer4.push(\"<!--]-->\");\n } else {\n $$renderer4.push(\"<!--[!-->\");\n $$renderer4.push(\"<!--]-->\");\n }\n },\n $$slots: { default: true }\n });\n $$renderer3.push(\"<!--]-->\");\n } else {\n $$renderer3.push(\"<!--[!-->\");\n $$renderer3.push(\"<!--]-->\");\n }\n $$renderer3.push(` `);\n if (data.invites.length > 0) {\n $$renderer3.push(\"<!--[0-->\");\n if (Card) {\n $$renderer3.push(\"<!--[-->\");\n Card($$renderer3, {\n children: ($$renderer4) => {\n if (Card_header) {\n $$renderer4.push(\"<!--[-->\");\n Card_header($$renderer4, {\n children: ($$renderer5) => {\n if (Card_title) {\n $$renderer5.push(\"<!--[-->\");\n Card_title($$renderer5, {\n children: ($$renderer6) => {\n $$renderer6.push(`<!---->Invites`);\n },\n $$slots: { default: true }\n });\n $$renderer5.push(\"<!--]-->\");\n } else {\n $$renderer5.push(\"<!--[!-->\");\n $$renderer5.push(\"<!--]-->\");\n }\n $$renderer5.push(` `);\n if (Card_description) {\n $$renderer5.push(\"<!--[-->\");\n Card_description($$renderer5, {\n children: ($$renderer6) => {\n $$renderer6.push(`<!---->${escape_html(data.invites.filter((i) => !i.acceptedAt).length)} pending, ${escape_html(data.invites.filter((i) => i.acceptedAt).length)} accepted`);\n },\n $$slots: { default: true }\n });\n $$renderer5.push(\"<!--]-->\");\n } else {\n $$renderer5.push(\"<!--[!-->\");\n $$renderer5.push(\"<!--]-->\");\n }\n },\n $$slots: { default: true }\n });\n $$renderer4.push(\"<!--]-->\");\n } else {\n $$renderer4.push(\"<!--[!-->\");\n $$renderer4.push(\"<!--]-->\");\n }\n $$renderer4.push(` `);\n if (Card_content) {\n $$renderer4.push(\"<!--[-->\");\n Card_content($$renderer4, {\n children: ($$renderer5) => {\n $$renderer5.push(`<div class=\"divide-y rounded-lg border\"><!--[-->`);\n const each_array_4 = ensure_array_like(data.invites);\n for (let $$index_4 = 0, $$length = each_array_4.length; $$index_4 < $$length; $$index_4++) {\n let invite = each_array_4[$$index_4];\n const expired = Date.parse(invite.expiresAt) <= Date.now();\n const status = invite.acceptedAt ? \"Accepted\" : expired ? \"Expired\" : \"Pending\";\n $$renderer5.push(`<div class=\"flex items-center justify-between gap-4 px-4 py-3\"><div class=\"min-w-0 flex-1\"><p class=\"truncate text-sm font-medium\">${escape_html(invite.email)}</p> <p class=\"text-muted-foreground text-xs\">${escape_html(status)} · ${escape_html(invite.orgRole)} · expires ${escape_html(new Date(invite.expiresAt).toLocaleDateString())}</p></div> `);\n if (!invite.acceptedAt && !expired) {\n $$renderer5.push(\"<!--[0-->\");\n Button($$renderer5, {\n size: \"sm\",\n variant: \"ghost\",\n disabled: revokingId === invite.id,\n onclick: () => revokeInvite(invite.id, invite.email),\n class: \"text-destructive hover:text-destructive\",\n children: ($$renderer6) => {\n Trash_2($$renderer6, { class: \"h-4 w-4\" });\n },\n $$slots: { default: true }\n });\n } else {\n $$renderer5.push(\"<!--[-1-->\");\n }\n $$renderer5.push(`<!--]--></div>`);\n }\n $$renderer5.push(`<!--]--></div>`);\n },\n $$slots: { default: true }\n });\n $$renderer4.push(\"<!--]-->\");\n } else {\n $$renderer4.push(\"<!--[!-->\");\n $$renderer4.push(\"<!--]-->\");\n }\n },\n $$slots: { default: true }\n });\n $$renderer3.push(\"<!--]-->\");\n } else {\n $$renderer3.push(\"<!--[!-->\");\n $$renderer3.push(\"<!--]-->\");\n }\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--></div>`);\n }\n do {\n $$settled = true;\n $$inner_renderer = $$renderer2.copy();\n $$render_inner($$inner_renderer);\n } while (!$$settled);\n $$renderer2.subsume($$inner_renderer);\n });\n}\nexport {\n _page as default\n};\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"_page.svelte.js-C4nuIM5S.js","sources":["../../../../../../../.svelte-kit/output/server/entries/pages/admin/users/_page.svelte.js"],"sourcesContent":["import { b as attr_class, a as attr, k as escape_html, e as ensure_array_like, d as derived, h as head, l as stringify } from \"../../../../chunks/renderer.js\";\nimport { i as invalidateAll } from \"../../../../chunks/client.js\";\nimport { A as ALL_PLATFORM_PERMISSIONS, b as ALL_ORG_PERMISSIONS, d as OWNER_ADMIN_ONLY_PERMISSIONS } from \"../../../../chunks/context.js\";\nimport { U as UserAvatar } from \"../../../../chunks/UserAvatar.js\";\nimport { C as Chevron_down } from \"../../../../chunks/chevron-down.js\";\nimport { C as Chevron_right } from \"../../../../chunks/chevron-right.js\";\nimport { B as Button } from \"../../../../chunks/button.js\";\nimport { T as Trash_2 } from \"../../../../chunks/trash-2.js\";\nimport { S as SectionHeader } from \"../../../../chunks/SectionHeader.js\";\nimport { C as Card, a as Card_content } from \"../../../../chunks/card-content.js\";\nimport { E as EmptyState } from \"../../../../chunks/EmptyState.js\";\nimport { S as Shield_check } from \"../../../../chunks/shield-check.js\";\nimport { C as Card_header, a as Card_title } from \"../../../../chunks/card-title.js\";\nimport { C as Card_description } from \"../../../../chunks/card-description.js\";\nimport { M as Mail } from \"../../../../chunks/mail.js\";\nimport { P as Plus } from \"../../../../chunks/plus.js\";\nimport { I as Input } from \"../../../../chunks/input.js\";\nimport { a as toast } from \"../../../../chunks/toast-state.svelte.js\";\nimport { C as Copy } from \"../../../../chunks/copy.js\";\nimport { X } from \"../../../../chunks/x.js\";\nfunction UserListItem($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n let {\n user,\n expanded,\n isPlatformAdmin,\n soleInstanceAdmin,\n updating,\n deleting,\n onDelete\n } = $$props;\n const PERM_LABEL = {\n instance_admin: \"Instance admin\",\n manage_instance_users: \"Manage instance users\",\n manage_compute: \"Manage compute\",\n manage_updates: \"Manage updates\",\n manage_org_members: \"Manage members\",\n manage_org_compute: \"Manage org compute\",\n manage_definitions: \"Manage definitions\",\n manage_projects: \"Manage projects\"\n };\n const PERM_DESC = {\n instance_admin: \"Full access to every action on the instance.\",\n manage_instance_users: \"Create, disable, and delete any user on the instance.\",\n manage_compute: \"Configure the instance Rhino.Compute pool.\",\n manage_updates: \"Run the application update script.\",\n manage_org_members: \"Invite, remove, and change roles of org members.\",\n manage_org_compute: \"Configure this org's BYO compute server.\",\n manage_definitions: \"Upload, edit, and delete any definition in the org.\",\n manage_projects: \"Create, edit, and delete any project in the org.\"\n };\n const ROLE_TONE = {\n owner: \"border-amber-500/40 text-amber-600 dark:text-amber-400 bg-amber-500/5\",\n admin: \"border-blue-500/40 text-blue-600 dark:text-blue-400 bg-blue-500/5\",\n member: \"border-border text-muted-foreground\"\n };\n const displayLine = derived(() => user.displayName ? `${user.displayName} · ${user.email ?? user.id}` : user.email ?? user.id);\n const isOwnerOrAdmin = derived(() => user.orgRole === \"owner\" || user.orgRole === \"admin\");\n const summaryPerms = derived(() => user.permissions.filter((p) => {\n if (ALL_PLATFORM_PERMISSIONS.includes(p)) return true;\n if (isOwnerOrAdmin()) return false;\n return true;\n }));\n function isPlatformPerm(p) {\n return ALL_PLATFORM_PERMISSIONS.includes(p);\n }\n function isOwnerAdminOnly(p) {\n return OWNER_ADMIN_ONLY_PERMISSIONS.includes(p);\n }\n function checkboxState(perm) {\n const checked = user.permissions.includes(perm);\n const platformLocked = isPlatformPerm(perm) && !isPlatformAdmin;\n const soleAdminLock = perm === \"instance_admin\" && soleInstanceAdmin;\n const memberExcluded = !isPlatformPerm(perm) && isOwnerAdminOnly(perm) && user.orgRole === \"member\";\n const locked = platformLocked || soleAdminLock || memberExcluded;\n return {\n checked,\n locked,\n soleAdminLock,\n platformLocked,\n memberExcluded\n };\n }\n $$renderer2.push(`<div${attr_class(`px-4 py-3 ${expanded ? \"bg-accent/20\" : \"\"}`)}><div class=\"flex items-center gap-3\"><button type=\"button\" class=\"text-muted-foreground hover:text-foreground shrink-0 rounded-sm p-0.5\"${attr(\"aria-label\", expanded ? \"Collapse permissions\" : \"Expand permissions\")}>`);\n if (expanded) {\n $$renderer2.push(\"<!--[0-->\");\n Chevron_down($$renderer2, { class: \"h-4 w-4\" });\n } else {\n $$renderer2.push(\"<!--[-1-->\");\n Chevron_right($$renderer2, { class: \"h-4 w-4\" });\n }\n $$renderer2.push(`<!--]--></button> `);\n UserAvatar($$renderer2, { name: user.displayName ?? user.email ?? user.id });\n $$renderer2.push(`<!----> <div class=\"min-w-0 flex-1\"><div class=\"flex items-center gap-2\"><p class=\"truncate text-sm font-medium\">${escape_html(displayLine())}</p> `);\n if (user.orgRole) {\n $$renderer2.push(\"<!--[0-->\");\n $$renderer2.push(`<span${attr_class(`rounded-full border px-2 py-0.5 font-mono text-[10px] tracking-wide uppercase ${ROLE_TONE[user.orgRole]}`)}>${escape_html(user.orgRole)}</span>`);\n } else {\n $$renderer2.push(\"<!--[-1-->\");\n }\n $$renderer2.push(`<!--]--> `);\n if (user.disabled) {\n $$renderer2.push(\"<!--[0-->\");\n $$renderer2.push(`<span class=\"border-border bg-muted text-muted-foreground rounded-full border px-2 py-0.5 font-mono text-[10px] tracking-wide uppercase\">disabled</span>`);\n } else if (!user.lastLoginAt) {\n $$renderer2.push(\"<!--[1-->\");\n $$renderer2.push(`<span class=\"rounded-full border border-amber-500/40 bg-amber-500/5 px-2 py-0.5 font-mono text-[10px] tracking-wide text-amber-600 uppercase dark:text-amber-400\" title=\"Provisioned but has never signed in. Permissions take effect on first login.\">invited</span>`);\n } else {\n $$renderer2.push(\"<!--[-1-->\");\n }\n $$renderer2.push(`<!--]--></div> <p class=\"text-muted-foreground truncate font-mono text-xs\">${escape_html(user.id)}</p> `);\n if (!expanded && summaryPerms().length > 0) {\n $$renderer2.push(\"<!--[0-->\");\n $$renderer2.push(`<div class=\"mt-1.5 flex flex-wrap gap-1\"><!--[-->`);\n const each_array = ensure_array_like(summaryPerms());\n for (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {\n let p = each_array[$$index];\n $$renderer2.push(`<span${attr_class(`rounded-full px-2 py-0.5 font-mono text-[10px] ${isPlatformPerm(p) ? \"bg-amber-500/10 text-amber-700 dark:text-amber-400\" : \"bg-muted text-muted-foreground\"}`)}>${escape_html(PERM_LABEL[p])}</span>`);\n }\n $$renderer2.push(`<!--]--></div>`);\n } else {\n $$renderer2.push(\"<!--[-1-->\");\n }\n $$renderer2.push(`<!--]--></div> `);\n Button($$renderer2, {\n size: \"sm\",\n variant: \"ghost\",\n disabled: deleting || soleInstanceAdmin,\n onclick: onDelete,\n title: soleInstanceAdmin ? \"Cannot delete the only instance admin. Promote another user first.\" : \"Delete user\",\n class: \"text-destructive hover:text-destructive h-8 w-8 shrink-0 p-0\",\n children: ($$renderer3) => {\n Trash_2($$renderer3, { class: \"h-4 w-4\" });\n },\n $$slots: { default: true }\n });\n $$renderer2.push(`<!----></div> `);\n if (expanded) {\n $$renderer2.push(\"<!--[0-->\");\n $$renderer2.push(`<div class=\"mt-4 ml-10 space-y-4\"><section><h4 class=\"text-muted-foreground mb-2 text-xs font-medium tracking-wider uppercase\">Platform</h4> <div class=\"grid gap-2 sm:grid-cols-2\"><!--[-->`);\n const each_array_1 = ensure_array_like(ALL_PLATFORM_PERMISSIONS);\n for (let $$index_1 = 0, $$length = each_array_1.length; $$index_1 < $$length; $$index_1++) {\n let p = each_array_1[$$index_1];\n const state = checkboxState(p);\n $$renderer2.push(`<label${attr_class(`flex items-start gap-2 rounded-md border p-2.5 ${state.locked ? \"border-border cursor-not-allowed opacity-60\" : \"border-border hover:bg-accent/40 cursor-pointer\"}`)}${attr(\"title\", state.soleAdminLock ? \"Cannot remove the only instance admin.\" : void 0)}><input type=\"checkbox\" class=\"mt-0.5 shrink-0\"${attr(\"checked\", state.checked, true)}${attr(\"disabled\", updating || state.locked, true)}/> <div class=\"min-w-0\"><p class=\"text-sm leading-tight font-medium\">${escape_html(PERM_LABEL[p])}</p> <p class=\"text-muted-foreground mt-0.5 text-xs\">${escape_html(PERM_DESC[p])}</p></div></label>`);\n }\n $$renderer2.push(`<!--]--></div></section> <section><h4 class=\"text-muted-foreground mb-2 text-xs font-medium tracking-wider uppercase\">Organization</h4> `);\n if (isOwnerOrAdmin()) {\n $$renderer2.push(\"<!--[0-->\");\n $$renderer2.push(`<p class=\"text-muted-foreground text-sm\"><strong class=\"text-foreground capitalize\">${escape_html(user.orgRole)}s</strong> automatically\n\t\t\t\t\t\treceive all organization permissions. To grant a custom subset, change the role to <span class=\"font-mono\">member</span>.</p>`);\n } else {\n $$renderer2.push(\"<!--[-1-->\");\n $$renderer2.push(`<div class=\"grid gap-2 sm:grid-cols-2\"><!--[-->`);\n const each_array_2 = ensure_array_like(ALL_ORG_PERMISSIONS);\n for (let $$index_2 = 0, $$length = each_array_2.length; $$index_2 < $$length; $$index_2++) {\n let p = each_array_2[$$index_2];\n const state = checkboxState(p);\n $$renderer2.push(`<label${attr_class(`flex items-start gap-2 rounded-md border p-2.5 ${state.locked ? \"border-border cursor-not-allowed opacity-60\" : \"border-border hover:bg-accent/40 cursor-pointer\"}`)}${attr(\"title\", state.memberExcluded ? \"Only owners and admins can hold this permission.\" : void 0)}><input type=\"checkbox\" class=\"mt-0.5 shrink-0\"${attr(\"checked\", state.checked, true)}${attr(\"disabled\", updating || state.locked, true)}/> <div class=\"min-w-0\"><p class=\"text-sm leading-tight font-medium\">${escape_html(PERM_LABEL[p])}</p> <p class=\"text-muted-foreground mt-0.5 text-xs\">${escape_html(PERM_DESC[p])}</p></div></label>`);\n }\n $$renderer2.push(`<!--]--></div>`);\n }\n $$renderer2.push(`<!--]--></section></div>`);\n } else {\n $$renderer2.push(\"<!--[-1-->\");\n }\n $$renderer2.push(`<!--]--></div>`);\n });\n}\nfunction _page($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n const ALL_FLAT_PERMISSIONS = [...ALL_PLATFORM_PERMISSIONS, ...ALL_ORG_PERMISSIONS];\n let { data } = $$props;\n const assignablePermissions = derived(() => data.isPlatformAdmin ? ALL_FLAT_PERMISSIONS : [...ALL_ORG_PERMISSIONS]);\n const PERMISSION_LABELS = {\n instance_admin: \"Instance Admin (all)\",\n manage_instance_users: \"Manage Instance Users\",\n manage_compute: \"Manage Compute (instance)\",\n manage_updates: \"Manage Updates\",\n manage_org_members: \"Manage Org Members\",\n manage_org_compute: \"Manage Org Compute\",\n manage_definitions: \"Manage Definitions\",\n manage_projects: \"Manage Projects\"\n };\n const ORG_ROLES = [\"owner\", \"admin\", \"member\"];\n let showAddForm = false;\n let newEmail = \"\";\n let newPassword = \"\";\n let newPermissions = [];\n let adding = false;\n let showInviteForm = false;\n let inviteEmail = \"\";\n let inviteRole = \"member\";\n let invitePermissions = [];\n let creatingInvite = false;\n let lastInviteLink = null;\n let revokingId = null;\n const invitePermissionOptions = derived(() => inviteRole === \"member\" ? ALL_ORG_PERMISSIONS.filter((p) => !OWNER_ADMIN_ONLY_PERMISSIONS.includes(p)) : [...ALL_ORG_PERMISSIONS]);\n let deletingId = null;\n let updatingId = null;\n let expandedUserId = null;\n const enabledInstanceAdminCount = derived(() => (data.users ?? []).filter((u) => !u.disabled && u.platformPermissions.includes(\"instance_admin\")).length);\n const isSoleInstanceAdmin = (user) => enabledInstanceAdminCount() === 1 && !user.disabled && user.platformPermissions.includes(\"instance_admin\");\n async function addUser() {\n adding = true;\n try {\n const res = await fetch(\"/admin/api/users\", {\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\" },\n body: JSON.stringify({\n email: newEmail,\n ...data.provider.userCreation === \"email-password\" && { password: newPassword },\n permissions: newPermissions\n })\n });\n if (res.ok) {\n toast.success(`User \"${newEmail}\" created`);\n newEmail = \"\";\n newPassword = \"\";\n newPermissions = [];\n showAddForm = false;\n await invalidateAll();\n } else {\n const err = await res.json().catch(() => ({ error: \"Unknown error\" }));\n toast.error(err.message || err.error || \"Failed to create user\");\n }\n } catch {\n toast.error(\"Failed to create user\");\n } finally {\n adding = false;\n }\n }\n async function createInvite() {\n creatingInvite = true;\n try {\n const res = await fetch(\"/api/invites\", {\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\" },\n body: JSON.stringify({\n email: inviteEmail,\n orgRole: inviteRole,\n permissions: invitePermissions\n })\n });\n if (res.ok) {\n const { acceptUrl } = await res.json();\n lastInviteLink = acceptUrl;\n toast.success(`Invite created for ${inviteEmail}`);\n inviteEmail = \"\";\n inviteRole = \"member\";\n invitePermissions = [];\n showInviteForm = false;\n await invalidateAll();\n } else {\n const err = await res.json().catch(() => ({ error: \"Unknown error\" }));\n toast.error(err.message || err.error || \"Failed to create invite\");\n }\n } catch {\n toast.error(\"Failed to create invite\");\n } finally {\n creatingInvite = false;\n }\n }\n async function revokeInvite(id, email) {\n if (!confirm(`Revoke invite for \"${email}\"?`)) return;\n revokingId = id;\n try {\n const res = await fetch(`/api/invites/${id}`, { method: \"DELETE\" });\n if (res.ok) {\n toast.success(\"Invite revoked\");\n await invalidateAll();\n } else {\n toast.error(\"Failed to revoke invite\");\n }\n } catch {\n toast.error(\"Failed to revoke invite\");\n } finally {\n revokingId = null;\n }\n }\n async function deleteUser(id, email) {\n if (!confirm(`Delete user \"${email}\"? This cannot be undone.`)) return;\n deletingId = id;\n try {\n const res = await fetch(`/admin/api/users/${id}`, { method: \"DELETE\" });\n if (res.ok) {\n toast.success(`User \"${email}\" deleted`);\n await invalidateAll();\n } else {\n const err = await res.json().catch(() => ({}));\n toast.error(err.message || err.error || \"Failed to delete user\");\n }\n } catch {\n toast.error(\"Failed to delete user\");\n } finally {\n deletingId = null;\n }\n }\n let $$settled = true;\n let $$inner_renderer;\n function $$render_inner($$renderer3) {\n head(\"1p497kv\", $$renderer3, ($$renderer4) => {\n $$renderer4.title(($$renderer5) => {\n $$renderer5.push(`<title>Admin · Users</title>`);\n });\n });\n $$renderer3.push(`<div class=\"space-y-6\">`);\n {\n let actions = function($$renderer4) {\n if (data.users !== null && data.provider.userCreation !== \"none\") {\n $$renderer4.push(\"<!--[0-->\");\n if (data.provider.userCreation === \"email-password\") {\n $$renderer4.push(\"<!--[0-->\");\n Button($$renderer4, {\n onclick: () => {\n showInviteForm = !showInviteForm;\n if (showInviteForm) showAddForm = false;\n },\n variant: showInviteForm ? \"outline\" : \"default\",\n children: ($$renderer5) => {\n Mail($$renderer5, { class: \"mr-2 h-4 w-4\" });\n $$renderer5.push(`<!----> Invite user`);\n },\n $$slots: { default: true }\n });\n } else {\n $$renderer4.push(\"<!--[-1-->\");\n }\n $$renderer4.push(`<!--]--> `);\n Button($$renderer4, {\n onclick: () => {\n showAddForm = !showAddForm;\n if (showAddForm) showInviteForm = false;\n },\n variant: showAddForm ? \"outline\" : \"secondary\",\n children: ($$renderer5) => {\n Plus($$renderer5, { class: \"mr-2 h-4 w-4\" });\n $$renderer5.push(`<!----> ${escape_html(data.provider.userCreation === \"email-only\" ? \"Allowlist user\" : \"Add user\")}`);\n },\n $$slots: { default: true }\n });\n $$renderer4.push(`<!---->`);\n } else {\n $$renderer4.push(\"<!--[-1-->\");\n }\n $$renderer4.push(`<!--]-->`);\n };\n SectionHeader($$renderer3, {\n eyebrow: \"Admin\",\n title: \"Users\",\n description: data.users === null ? \"The current auth provider does not expose a user store. Configure DATA_PATH (local provider) or check your provider wiring.\" : `${data.users.length} user${data.users.length === 1 ? \"\" : \"s\"} on this instance.`,\n actions\n });\n }\n $$renderer3.push(`<!----> `);\n if (Card) {\n $$renderer3.push(\"<!--[-->\");\n Card($$renderer3, {\n children: ($$renderer4) => {\n if (Card_content) {\n $$renderer4.push(\"<!--[-->\");\n Card_content($$renderer4, {\n class: \"space-y-4 pt-6\",\n children: ($$renderer5) => {\n if (showInviteForm) {\n $$renderer5.push(\"<!--[0-->\");\n $$renderer5.push(`<div class=\"bg-muted/40 space-y-3 rounded-lg border p-4\"><p class=\"text-sm font-medium\">Invite user</p> <p class=\"text-muted-foreground text-xs\">The invitee sets their own password when they open the link. No password leaves your\n\t\t\t\t\t\tmachine.</p> <div class=\"grid gap-3 sm:grid-cols-2\">`);\n Input($$renderer5, {\n type: \"email\",\n placeholder: \"Email\",\n get value() {\n return inviteEmail;\n },\n set value($$value) {\n inviteEmail = $$value;\n $$settled = false;\n }\n });\n $$renderer5.push(`<!----> `);\n $$renderer5.select(\n {\n value: inviteRole,\n class: \"border-input bg-background h-9 rounded-md border px-3 text-sm\"\n },\n ($$renderer6) => {\n $$renderer6.push(`<!--[-->`);\n const each_array = ensure_array_like(ORG_ROLES);\n for (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {\n let role = each_array[$$index];\n $$renderer6.option({ value: role }, ($$renderer7) => {\n $$renderer7.push(`${escape_html(role)}`);\n });\n }\n $$renderer6.push(`<!--]-->`);\n }\n );\n $$renderer5.push(`</div> <div><p class=\"mb-2 text-xs font-medium\">Organization permissions</p> `);\n if (inviteRole !== \"member\") {\n $$renderer5.push(\"<!--[0-->\");\n $$renderer5.push(`<p class=\"text-muted-foreground mb-2 text-xs\">${escape_html(inviteRole === \"owner\" ? \"Owners\" : \"Admins\")} automatically receive all organization\n\t\t\t\t\t\t\t\tpermissions. Pick <span class=\"font-mono\">member</span> to grant a custom subset.</p>`);\n } else {\n $$renderer5.push(\"<!--[-1-->\");\n }\n $$renderer5.push(`<!--]--> <div class=\"flex flex-wrap gap-3\"><!--[-->`);\n const each_array_1 = ensure_array_like(invitePermissionOptions());\n for (let $$index_1 = 0, $$length = each_array_1.length; $$index_1 < $$length; $$index_1++) {\n let p = each_array_1[$$index_1];\n const roleLocked = inviteRole !== \"member\";\n $$renderer5.push(`<label${attr_class(`flex items-center gap-1.5 text-xs ${stringify(roleLocked ? \"cursor-not-allowed opacity-60\" : \"cursor-pointer\")}`)}><input type=\"checkbox\"${attr(\"checked\", roleLocked || invitePermissions.includes(p), true)}${attr(\"disabled\", roleLocked, true)}/> ${escape_html(PERMISSION_LABELS[p])}</label>`);\n }\n $$renderer5.push(`<!--]--></div></div> <div class=\"flex gap-2\">`);\n Button($$renderer5, {\n onclick: createInvite,\n disabled: creatingInvite || !inviteEmail,\n children: ($$renderer6) => {\n $$renderer6.push(`<!---->${escape_html(creatingInvite ? \"Creating…\" : \"Create invite\")}`);\n },\n $$slots: { default: true }\n });\n $$renderer5.push(`<!----> `);\n Button($$renderer5, {\n variant: \"outline\",\n onclick: () => showInviteForm = false,\n children: ($$renderer6) => {\n $$renderer6.push(`<!---->Cancel`);\n },\n $$slots: { default: true }\n });\n $$renderer5.push(`<!----></div></div>`);\n } else {\n $$renderer5.push(\"<!--[-1-->\");\n }\n $$renderer5.push(`<!--]--> `);\n if (lastInviteLink) {\n $$renderer5.push(\"<!--[0-->\");\n $$renderer5.push(`<div class=\"flex items-start gap-3 rounded-lg border border-green-500/30 bg-green-500/5 p-4\"><div class=\"min-w-0 flex-1\"><p class=\"text-sm font-medium\">Invite ready — copy the link and share it</p> <p class=\"text-muted-foreground mt-1 truncate font-mono text-xs\">${escape_html(lastInviteLink)}</p></div> `);\n Button($$renderer5, {\n size: \"sm\",\n variant: \"outline\",\n onclick: async () => {\n try {\n await navigator.clipboard.writeText(lastInviteLink);\n toast.success(\"Invite link copied\");\n } catch {\n toast.error(\"Could not copy to clipboard\");\n }\n },\n children: ($$renderer6) => {\n Copy($$renderer6, { class: \"mr-1.5 h-3.5 w-3.5\" });\n $$renderer6.push(`<!----> Copy`);\n },\n $$slots: { default: true }\n });\n $$renderer5.push(`<!----> `);\n Button($$renderer5, {\n size: \"sm\",\n variant: \"ghost\",\n onclick: () => lastInviteLink = null,\n children: ($$renderer6) => {\n X($$renderer6, { class: \"h-4 w-4\" });\n },\n $$slots: { default: true }\n });\n $$renderer5.push(`<!----></div>`);\n } else {\n $$renderer5.push(\"<!--[-1-->\");\n }\n $$renderer5.push(`<!--]--> `);\n if (showAddForm) {\n $$renderer5.push(\"<!--[0-->\");\n $$renderer5.push(`<div class=\"bg-muted/40 space-y-3 rounded-lg border p-4\"><p class=\"text-sm font-medium\">New User</p> <div class=\"grid gap-3 sm:grid-cols-2\">`);\n Input($$renderer5, {\n type: \"email\",\n placeholder: \"Email\",\n get value() {\n return newEmail;\n },\n set value($$value) {\n newEmail = $$value;\n $$settled = false;\n }\n });\n $$renderer5.push(`<!----> `);\n if (data.provider.userCreation === \"email-password\") {\n $$renderer5.push(\"<!--[0-->\");\n Input($$renderer5, {\n type: \"password\",\n placeholder: \"Password (min 8 chars)\",\n get value() {\n return newPassword;\n },\n set value($$value) {\n newPassword = $$value;\n $$settled = false;\n }\n });\n } else {\n $$renderer5.push(\"<!--[-1-->\");\n }\n $$renderer5.push(`<!--]--></div> `);\n if (data.provider.userCreation === \"email-only\") {\n $$renderer5.push(\"<!--[0-->\");\n $$renderer5.push(`<p class=\"text-muted-foreground text-xs\">This user will authenticate via ${escape_html(data.provider.name)}. No password is stored.</p>`);\n } else {\n $$renderer5.push(\"<!--[-1-->\");\n }\n $$renderer5.push(`<!--]--> <div><p class=\"mb-2 text-xs font-medium\">Permissions</p> <p class=\"text-muted-foreground mb-2 text-xs\">New users are added as <span class=\"font-mono\">member</span>. Promote them to owner or\n\t\t\t\t\t\t\tadmin from the user list to grant full organization access.</p> <div class=\"flex flex-wrap gap-3\"><!--[-->`);\n const each_array_2 = ensure_array_like(assignablePermissions());\n for (let $$index_2 = 0, $$length = each_array_2.length; $$index_2 < $$length; $$index_2++) {\n let p = each_array_2[$$index_2];\n const isOwnerAdminOnly = OWNER_ADMIN_ONLY_PERMISSIONS.includes(p);\n const isPlatformScope = ALL_PLATFORM_PERMISSIONS.includes(p);\n const memberExcluded = isOwnerAdminOnly && !isPlatformScope;\n $$renderer5.push(`<label${attr_class(`flex items-center gap-1.5 text-xs ${stringify(memberExcluded ? \"cursor-not-allowed opacity-60\" : \"cursor-pointer\")}`)}${attr(\"title\", memberExcluded ? \"Only owners and admins can hold this permission\" : void 0)}><input type=\"checkbox\"${attr(\"checked\", !memberExcluded && newPermissions.includes(p), true)}${attr(\"disabled\", memberExcluded, true)}/> ${escape_html(PERMISSION_LABELS[p])}</label>`);\n }\n $$renderer5.push(`<!--]--></div></div> <div class=\"flex gap-2\">`);\n Button($$renderer5, {\n onclick: addUser,\n disabled: adding || !newEmail || data.provider.userCreation === \"email-password\" && !newPassword,\n children: ($$renderer6) => {\n $$renderer6.push(`<!---->${escape_html(adding ? \"Creating…\" : \"Create User\")}`);\n },\n $$slots: { default: true }\n });\n $$renderer5.push(`<!----> `);\n Button($$renderer5, {\n variant: \"outline\",\n onclick: () => showAddForm = false,\n children: ($$renderer6) => {\n $$renderer6.push(`<!---->Cancel`);\n },\n $$slots: { default: true }\n });\n $$renderer5.push(`<!----></div></div>`);\n } else {\n $$renderer5.push(\"<!--[-1-->\");\n }\n $$renderer5.push(`<!--]--> `);\n if (data.users === null) {\n $$renderer5.push(\"<!--[0-->\");\n {\n let body = function($$renderer6) {\n $$renderer6.push(`<!---->Set <code class=\"text-xs\">DATA_PATH</code> (local provider) or check your provider\n\t\t\t\t\t\tselection in <code class=\"text-xs\">.env</code>.`);\n };\n EmptyState($$renderer5, {\n icon: Shield_check,\n title: \"User store unavailable\",\n body\n });\n }\n } else if (data.users.length === 0) {\n $$renderer5.push(\"<!--[1-->\");\n EmptyState($$renderer5, {\n title: \"No users yet\",\n description: \"Add your first user above.\"\n });\n } else {\n $$renderer5.push(\"<!--[-1-->\");\n $$renderer5.push(`<div class=\"divide-y rounded-lg border\"><!--[-->`);\n const each_array_3 = ensure_array_like(data.users);\n for (let $$index_3 = 0, $$length = each_array_3.length; $$index_3 < $$length; $$index_3++) {\n let user = each_array_3[$$index_3];\n UserListItem($$renderer5, {\n user,\n expanded: expandedUserId === user.id,\n isPlatformAdmin: data.isPlatformAdmin,\n soleInstanceAdmin: isSoleInstanceAdmin(user),\n updating: updatingId === user.id,\n deleting: deletingId === user.id,\n onDelete: () => deleteUser(user.id, user.email ?? user.id)\n });\n }\n $$renderer5.push(`<!--]--></div>`);\n }\n $$renderer5.push(`<!--]-->`);\n },\n $$slots: { default: true }\n });\n $$renderer4.push(\"<!--]-->\");\n } else {\n $$renderer4.push(\"<!--[!-->\");\n $$renderer4.push(\"<!--]-->\");\n }\n },\n $$slots: { default: true }\n });\n $$renderer3.push(\"<!--]-->\");\n } else {\n $$renderer3.push(\"<!--[!-->\");\n $$renderer3.push(\"<!--]-->\");\n }\n $$renderer3.push(` `);\n if (data.invites.length > 0) {\n $$renderer3.push(\"<!--[0-->\");\n if (Card) {\n $$renderer3.push(\"<!--[-->\");\n Card($$renderer3, {\n children: ($$renderer4) => {\n if (Card_header) {\n $$renderer4.push(\"<!--[-->\");\n Card_header($$renderer4, {\n children: ($$renderer5) => {\n if (Card_title) {\n $$renderer5.push(\"<!--[-->\");\n Card_title($$renderer5, {\n children: ($$renderer6) => {\n $$renderer6.push(`<!---->Invites`);\n },\n $$slots: { default: true }\n });\n $$renderer5.push(\"<!--]-->\");\n } else {\n $$renderer5.push(\"<!--[!-->\");\n $$renderer5.push(\"<!--]-->\");\n }\n $$renderer5.push(` `);\n if (Card_description) {\n $$renderer5.push(\"<!--[-->\");\n Card_description($$renderer5, {\n children: ($$renderer6) => {\n $$renderer6.push(`<!---->${escape_html(data.invites.filter((i) => !i.acceptedAt).length)} pending, ${escape_html(data.invites.filter((i) => i.acceptedAt).length)} accepted`);\n },\n $$slots: { default: true }\n });\n $$renderer5.push(\"<!--]-->\");\n } else {\n $$renderer5.push(\"<!--[!-->\");\n $$renderer5.push(\"<!--]-->\");\n }\n },\n $$slots: { default: true }\n });\n $$renderer4.push(\"<!--]-->\");\n } else {\n $$renderer4.push(\"<!--[!-->\");\n $$renderer4.push(\"<!--]-->\");\n }\n $$renderer4.push(` `);\n if (Card_content) {\n $$renderer4.push(\"<!--[-->\");\n Card_content($$renderer4, {\n children: ($$renderer5) => {\n $$renderer5.push(`<div class=\"divide-y rounded-lg border\"><!--[-->`);\n const each_array_4 = ensure_array_like(data.invites);\n for (let $$index_4 = 0, $$length = each_array_4.length; $$index_4 < $$length; $$index_4++) {\n let invite = each_array_4[$$index_4];\n const expired = Date.parse(invite.expiresAt) <= Date.now();\n const status = invite.acceptedAt ? \"Accepted\" : expired ? \"Expired\" : \"Pending\";\n $$renderer5.push(`<div class=\"flex items-center justify-between gap-4 px-4 py-3\"><div class=\"min-w-0 flex-1\"><p class=\"truncate text-sm font-medium\">${escape_html(invite.email)}</p> <p class=\"text-muted-foreground text-xs\">${escape_html(status)} · ${escape_html(invite.orgRole)} · expires ${escape_html(new Date(invite.expiresAt).toLocaleDateString())}</p></div> `);\n if (!invite.acceptedAt && !expired) {\n $$renderer5.push(\"<!--[0-->\");\n Button($$renderer5, {\n size: \"sm\",\n variant: \"ghost\",\n disabled: revokingId === invite.id,\n onclick: () => revokeInvite(invite.id, invite.email),\n class: \"text-destructive hover:text-destructive\",\n children: ($$renderer6) => {\n Trash_2($$renderer6, { class: \"h-4 w-4\" });\n },\n $$slots: { default: true }\n });\n } else {\n $$renderer5.push(\"<!--[-1-->\");\n }\n $$renderer5.push(`<!--]--></div>`);\n }\n $$renderer5.push(`<!--]--></div>`);\n },\n $$slots: { default: true }\n });\n $$renderer4.push(\"<!--]-->\");\n } else {\n $$renderer4.push(\"<!--[!-->\");\n $$renderer4.push(\"<!--]-->\");\n }\n },\n $$slots: { default: true }\n });\n $$renderer3.push(\"<!--]-->\");\n } else {\n $$renderer3.push(\"<!--[!-->\");\n $$renderer3.push(\"<!--]-->\");\n }\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--></div>`);\n }\n do {\n $$settled = true;\n $$inner_renderer = $$renderer2.copy();\n $$render_inner($$inner_renderer);\n } while (!$$settled);\n $$renderer2.subsume($$inner_renderer);\n });\n}\nexport {\n _page as default\n};\n"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { fail, redirect } from '@sveltejs/kit';
|
|
2
|
-
import { g as getAuthProvider } from '../../../../../chunks/providers.server.js-
|
|
2
|
+
import { g as getAuthProvider } from '../../../../../chunks/providers.server.js-Sbk117pY.js';
|
|
3
3
|
import { b as checkRateLimit, d as safeRedirectTarget, r as recordFailedAttempt } from '../../../../../chunks/admin-auth.server.js-hCWF6Pqg.js';
|
|
4
4
|
|
|
5
5
|
const load = async () => {
|
|
@@ -54,4 +54,4 @@ var _page_server_ts = /*#__PURE__*/Object.freeze({
|
|
|
54
54
|
});
|
|
55
55
|
|
|
56
56
|
export { _page_server_ts as _ };
|
|
57
|
-
//# sourceMappingURL=_page.server.ts.js-
|
|
57
|
+
//# sourceMappingURL=_page.server.ts.js-CJVxmsjJ.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_page.server.ts.js-
|
|
1
|
+
{"version":3,"file":"_page.server.ts.js-CJVxmsjJ.js","sources":["../../../../../../../../.svelte-kit/output/server/entries/pages/auth/email/start/_page.server.ts.js"],"sourcesContent":["import { fail, redirect } from \"@sveltejs/kit\";\nimport { g as getAuthProvider } from \"../../../../../chunks/providers.server.js\";\nimport { d as checkRateLimit, b as safeRedirectTarget, e as recordFailedAttempt } from \"../../../../../chunks/admin-auth.server.js\";\nconst load = async () => {\n redirect(303, \"/login\");\n};\nconst actions = {\n default: async (event) => {\n const { request, url } = event;\n const ip = event.getClientAddress();\n const { allowed } = checkRateLimit(ip);\n if (!allowed) {\n return fail(429, { error: \"Too many requests. Try again in 15 minutes.\" });\n }\n const data = await request.formData();\n const email = data.get(\"email\")?.trim().toLowerCase();\n const redirectTo = data.get(\"redirectTo\");\n if (!email || !email.includes(\"@\")) {\n return fail(400, { error: \"A valid email address is required.\" });\n }\n const auth = getAuthProvider();\n if (!auth.emailLink) {\n return fail(501, { error: \"Email sign-in is not supported by this provider.\" });\n }\n const callbackUrl = new URL(\"/auth/email/callback\", url.origin);\n const fromForm = typeof redirectTo === \"string\" ? redirectTo : null;\n const fromQuery = url.searchParams.get(\"redirectTo\");\n const safeDest = safeRedirectTarget(fromForm, \"\") || safeRedirectTarget(fromQuery, \"\");\n if (safeDest) callbackUrl.searchParams.set(\"redirectTo\", safeDest);\n const result = await auth.emailLink.sendMagicLink(email, callbackUrl.toString());\n if (!result.ok) {\n if (result.reason !== \"signup_disabled\") recordFailedAttempt(ip);\n return fail(400, { error: messageForReason(result.reason) });\n }\n redirect(303, \"/auth/email/sent\");\n }\n};\nfunction messageForReason(reason) {\n switch (reason) {\n case \"rate_limited\":\n return \"Too many emails sent. Try again in a few minutes.\";\n case \"signup_disabled\":\n return \"This email is not registered, and self-signup is disabled.\";\n case \"invalid_email\":\n return \"That email address looks invalid.\";\n }\n}\nexport {\n actions,\n load\n};\n"],"names":[],"mappings":";;;;AAGA,MAAM,IAAI,GAAG,YAAY;AACzB,EAAE,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;AACzB,CAAC;AACD,MAAM,OAAO,GAAG;AAChB,EAAE,OAAO,EAAE,OAAO,KAAK,KAAK;AAC5B,IAAI,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,KAAK;AAClC,IAAI,MAAM,EAAE,GAAG,KAAK,CAAC,gBAAgB,EAAE;AACvC,IAAI,MAAM,EAAE,OAAO,EAAE,GAAG,cAAc,CAAC,EAAE,CAAC;AAC1C,IAAI,IAAI,CAAC,OAAO,EAAE;AAClB,MAAM,OAAO,IAAI,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,6CAA6C,EAAE,CAAC;AAChF,IAAI;AACJ,IAAI,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,QAAQ,EAAE;AACzC,IAAI,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE;AACzD,IAAI,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC;AAC7C,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;AACxC,MAAM,OAAO,IAAI,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,oCAAoC,EAAE,CAAC;AACvE,IAAI;AACJ,IAAI,MAAM,IAAI,GAAG,eAAe,EAAE;AAClC,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;AACzB,MAAM,OAAO,IAAI,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,kDAAkD,EAAE,CAAC;AACrF,IAAI;AACJ,IAAI,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,sBAAsB,EAAE,GAAG,CAAC,MAAM,CAAC;AACnE,IAAI,MAAM,QAAQ,GAAG,OAAO,UAAU,KAAK,QAAQ,GAAG,UAAU,GAAG,IAAI;AACvE,IAAI,MAAM,SAAS,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC;AACxD,IAAI,MAAM,QAAQ,GAAG,kBAAkB,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,kBAAkB,CAAC,SAAS,EAAE,EAAE,CAAC;AAC1F,IAAI,IAAI,QAAQ,EAAE,WAAW,CAAC,YAAY,CAAC,GAAG,CAAC,YAAY,EAAE,QAAQ,CAAC;AACtE,IAAI,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,WAAW,CAAC,QAAQ,EAAE,CAAC;AACpF,IAAI,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE;AACpB,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,iBAAiB,EAAE,mBAAmB,CAAC,EAAE,CAAC;AACtE,MAAM,OAAO,IAAI,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;AAClE,IAAI;AACJ,IAAI,QAAQ,CAAC,GAAG,EAAE,kBAAkB,CAAC;AACrC,EAAE;AACF,CAAC;AACD,SAAS,gBAAgB,CAAC,MAAM,EAAE;AAClC,EAAE,QAAQ,MAAM;AAChB,IAAI,KAAK,cAAc;AACvB,MAAM,OAAO,mDAAmD;AAChE,IAAI,KAAK,iBAAiB;AAC1B,MAAM,OAAO,4DAA4D;AACzE,IAAI,KAAK,eAAe;AACxB,MAAM,OAAO,mCAAmC;AAChD;AACA;;;;;;;;;;"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { error } from '@sveltejs/kit';
|
|
2
|
-
import { k as getDefinitionMeta, q as getStorageProvider, e as getProjectProvider } from '../../../../chunks/providers.server.js-
|
|
3
|
-
import {
|
|
4
|
-
import { t as tryResolveShareToken } from '../../../../chunks/resolve.server.js-
|
|
2
|
+
import { k as getDefinitionMeta, q as getStorageProvider, e as getProjectProvider, d as getOrganizationProvider } from '../../../../chunks/providers.server.js-Sbk117pY.js';
|
|
3
|
+
import { j as requireCanSolve } from '../../../../chunks/access.server.js-x_KrjYJP.js';
|
|
4
|
+
import { t as tryResolveShareToken } from '../../../../chunks/resolve.server.js-oRLjLsp2.js';
|
|
5
5
|
import { f as MAX_SOLVE_DURATION_MS } from '../../../../chunks/computeLimits.js-CVHW4MyF.js';
|
|
6
6
|
import { GrasshopperClient } from '@selvajs/compute/grasshopper';
|
|
7
|
-
import { r as resolveServerForOrg, f as fetchSchemaFromCompute } from '../../../../chunks/api-errors.js-
|
|
7
|
+
import { r as resolveServerForOrg, f as fetchSchemaFromCompute } from '../../../../chunks/api-errors.js-B1VX-zf8.js';
|
|
8
8
|
import { b as private_env } from '../../../../chunks/shared-server.js-DaWdgxVh.js';
|
|
9
9
|
|
|
10
10
|
const COMPUTE_DEBUG = ["true", "1", "yes"].includes(
|
|
@@ -20,16 +20,17 @@ class DefinitionLoadError extends Error {
|
|
|
20
20
|
kind;
|
|
21
21
|
cause;
|
|
22
22
|
}
|
|
23
|
-
async function loadDefinitionForRender(ctx, record, channel) {
|
|
23
|
+
async function loadDefinitionForRender(ctx, record, channel, explicitVersionId) {
|
|
24
24
|
const storage = getStorageProvider();
|
|
25
25
|
const meta = getDefinitionMeta();
|
|
26
26
|
const projects = getProjectProvider();
|
|
27
|
-
const versionId = channel === "draft" ? record.draftVersionId : record.liveVersionId;
|
|
27
|
+
const versionId = explicitVersionId ?? (channel === "draft" ? record.draftVersionId : record.liveVersionId);
|
|
28
28
|
if (!versionId)
|
|
29
29
|
throw new DefinitionLoadError("data", `Definition '${record.guid}' has no ${channel} version`);
|
|
30
30
|
const version = await meta.getVersion(ctx, versionId);
|
|
31
|
-
if (!version)
|
|
32
|
-
|
|
31
|
+
if (!version) throw new DefinitionLoadError("data", `version missing for '${record.guid}'`);
|
|
32
|
+
if (version.definitionId !== record.guid)
|
|
33
|
+
throw new DefinitionLoadError("data", `version does not belong to '${record.guid}'`);
|
|
33
34
|
const definitionSource = await storage.get(version.fileKey);
|
|
34
35
|
if (!definitionSource)
|
|
35
36
|
throw new DefinitionLoadError("data", `Definition file for '${record.guid}' not found on disk`);
|
|
@@ -125,10 +126,11 @@ const load = (async ({ params, locals, request, url }) => {
|
|
|
125
126
|
const meta = getDefinitionMeta();
|
|
126
127
|
const guid = params.guid;
|
|
127
128
|
const channel = url.searchParams.get("channel") === "draft" ? "draft" : "live";
|
|
129
|
+
const explicitVersionId = url.searchParams.get("version");
|
|
128
130
|
const clientDefUrl = `local:${guid}`;
|
|
129
131
|
let shareToken = null;
|
|
130
132
|
try {
|
|
131
|
-
const sharedAccess = channel === "live" ? await tryResolveShareToken(request, url, guid, "live", { requireSolve: false }) : null;
|
|
133
|
+
const sharedAccess = channel === "live" && !explicitVersionId ? await tryResolveShareToken(request, url, guid, "live", { requireSolve: false }) : null;
|
|
132
134
|
if (sharedAccess) {
|
|
133
135
|
shareToken = url.searchParams.get("token");
|
|
134
136
|
} else if (!locals.ctx || !locals.user) {
|
|
@@ -138,17 +140,23 @@ const load = (async ({ params, locals, request, url }) => {
|
|
|
138
140
|
const record = await meta.get(ctx, guid);
|
|
139
141
|
if (!record) throw new Error(`Definition '${guid}' not found`);
|
|
140
142
|
if (!sharedAccess) await requireCanSolve(locals, record.projectId);
|
|
141
|
-
if (channel === "draft") {
|
|
142
|
-
const { requireEditableDefinition } = await import('../../../../chunks/access.server.js-
|
|
143
|
+
if (channel === "draft" || explicitVersionId) {
|
|
144
|
+
const { requireEditableDefinition } = await import('../../../../chunks/access.server.js-x_KrjYJP.js').then((n) => n.C);
|
|
143
145
|
await requireEditableDefinition(locals, guid);
|
|
144
146
|
}
|
|
145
|
-
const loaded = await loadDefinitionForRender(ctx, record, channel);
|
|
147
|
+
const loaded = await loadDefinitionForRender(ctx, record, channel, explicitVersionId);
|
|
148
|
+
const orgLogoUrl = await resolveOrgLogo(ctx, record.projectId);
|
|
146
149
|
return {
|
|
147
150
|
schema: loaded.schema,
|
|
148
151
|
ghDefinition: clientDefUrl,
|
|
149
152
|
currentDefinition: guid,
|
|
150
153
|
serverLabel: loaded.computeServer.label,
|
|
154
|
+
orgLogoUrl,
|
|
151
155
|
channel,
|
|
156
|
+
// When rendering an explicit version, forward its id (so solve calls
|
|
157
|
+
// target the same version) and number (for the preview badge).
|
|
158
|
+
versionId: explicitVersionId,
|
|
159
|
+
versionNumber: loaded.version.versionNumber,
|
|
152
160
|
// Forward to the client so /api/compute/solve calls can include it.
|
|
153
161
|
// Null when the request was user-authenticated (session cookie carries auth).
|
|
154
162
|
shareToken,
|
|
@@ -189,6 +197,17 @@ Troubleshooting:
|
|
|
189
197
|
throw err;
|
|
190
198
|
}
|
|
191
199
|
});
|
|
200
|
+
async function resolveOrgLogo(ctx, projectId) {
|
|
201
|
+
try {
|
|
202
|
+
const project = await getProjectProvider().getProject(ctx, projectId);
|
|
203
|
+
if (!project?.orgId) return null;
|
|
204
|
+
const org = await getOrganizationProvider().getOrg(ctx, project.orgId);
|
|
205
|
+
return org?.assets?.logo ?? null;
|
|
206
|
+
} catch (err) {
|
|
207
|
+
console.warn("[App Load] Failed to resolve org logo:", err);
|
|
208
|
+
return null;
|
|
209
|
+
}
|
|
210
|
+
}
|
|
192
211
|
|
|
193
212
|
var _page_server_ts = /*#__PURE__*/Object.freeze({
|
|
194
213
|
__proto__: null,
|
|
@@ -196,4 +215,4 @@ var _page_server_ts = /*#__PURE__*/Object.freeze({
|
|
|
196
215
|
});
|
|
197
216
|
|
|
198
217
|
export { _page_server_ts as _ };
|
|
199
|
-
//# sourceMappingURL=_page.server.ts.js-
|
|
218
|
+
//# sourceMappingURL=_page.server.ts.js-CdsnDM7L.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_page.server.ts.js-CdsnDM7L.js","sources":["../../../../../../../.svelte-kit/output/server/entries/pages/library/_guid_/_page.server.ts.js"],"sourcesContent":["import { error } from \"@sveltejs/kit\";\nimport { r as getStorageProvider, o as getDefinitionMeta, k as getProjectProvider, c as getOrganizationProvider } from \"../../../../chunks/providers.server.js\";\nimport { j as requireCanSolve } from \"../../../../chunks/access.server.js\";\nimport { t as tryResolveShareToken } from \"../../../../chunks/resolve.server.js\";\nimport { f as MAX_SOLVE_DURATION_MS } from \"../../../../chunks/computeLimits.js\";\nimport { GrasshopperClient } from \"@selvajs/compute/grasshopper\";\nimport { r as resolveServerForOrg, f as fetchSchemaFromCompute } from \"../../../../chunks/api-errors.js\";\nimport { b as private_env } from \"../../../../chunks/shared-server.js\";\nconst COMPUTE_DEBUG = [\"true\", \"1\", \"yes\"].includes(\n (private_env.SELVA_FLAG_COMPUTE_DEBUG ?? \"\").toLowerCase()\n);\nclass DefinitionLoadError extends Error {\n constructor(kind, message, cause) {\n super(message);\n this.kind = kind;\n this.cause = cause;\n this.name = \"DefinitionLoadError\";\n }\n kind;\n cause;\n}\nasync function loadDefinitionForRender(ctx, record, channel, explicitVersionId) {\n const storage = getStorageProvider();\n const meta = getDefinitionMeta();\n const projects = getProjectProvider();\n const versionId = explicitVersionId ?? (channel === \"draft\" ? record.draftVersionId : record.liveVersionId);\n if (!versionId)\n throw new DefinitionLoadError(\"data\", `Definition '${record.guid}' has no ${channel} version`);\n const version = await meta.getVersion(ctx, versionId);\n if (!version) throw new DefinitionLoadError(\"data\", `version missing for '${record.guid}'`);\n if (version.definitionId !== record.guid)\n throw new DefinitionLoadError(\"data\", `version does not belong to '${record.guid}'`);\n const definitionSource = await storage.get(version.fileKey);\n if (!definitionSource)\n throw new DefinitionLoadError(\"data\", `Definition file for '${record.guid}' not found on disk`);\n const project = await projects.getProject(ctx, record.projectId);\n let computeServer;\n try {\n computeServer = await resolveServerForOrg(ctx, project?.orgId ?? null, {\n definitionPin: record.computeServerId ?? null\n });\n } catch (err) {\n throw new DefinitionLoadError(\n \"missing-config\",\n \"No compute server configured for this definition\",\n err\n );\n }\n let client;\n try {\n client = await GrasshopperClient.create({\n serverUrl: computeServer.serverUrl,\n apiKey: computeServer.apiKey\n });\n } catch (err) {\n const message = err instanceof Error ? err.message : String(err);\n throw new DefinitionLoadError(\n \"connect\",\n `Failed to connect to Rhino Compute server: ${message}`,\n err\n );\n }\n try {\n const [definition, fetchedSchema] = await Promise.all([\n client.getIO(definitionSource),\n version.schema ? Promise.resolve(version.schema) : fetchSchemaFromCompute(definitionSource, computeServer)\n ]);\n if (!definition) {\n throw new Error(`Failed to get definition IO — server returned undefined`);\n }\n const ioParseErrors = definition.parseErrors ?? [];\n const ioLoadErrors = definition.loadErrors ?? [];\n const ioLooksBroken = definition.inputs.length === 0 || ioParseErrors.length > 0 || ioLoadErrors.length > 0;\n if (ioLooksBroken) {\n console.warn(\n `[loadForRender] IO health for '${record.guid}':`,\n JSON.stringify({\n inputCount: definition.inputs.length,\n outputCount: definition.outputs?.length,\n parseErrors: ioParseErrors,\n loadErrors: ioLoadErrors,\n loadWarnings: definition.loadWarnings\n })\n );\n if (COMPUTE_DEBUG) {\n const rawIO = await client.getRawIO(definitionSource).catch((e) => ({ error: String(e) }));\n console.warn(\"[loadForRender] raw /io:\", JSON.stringify(rawIO).slice(0, 3e3));\n }\n }\n return {\n version,\n definitionSource,\n computeServer,\n schema: mergeComputeDefaults(fetchedSchema, definition.inputs)\n };\n } catch (err) {\n if (err instanceof DefinitionLoadError) throw err;\n const message = err instanceof Error ? err.message : String(err);\n throw new DefinitionLoadError(\"schema\", message, err);\n }\n}\nfunction mergeComputeDefaults(schema, computeInputs) {\n const byParamId = new Map(computeInputs.map((input) => [input.id, input]));\n return {\n ...schema,\n inputs: schema.inputs.map((schemaInput) => {\n const computeInput = byParamId.get(schemaInput.id);\n if (computeInput?.paramType === \"Color\" && computeInput.default !== void 0) {\n const toHex = (value) => value.toString(16).padStart(2, \"0\");\n const parts = String(computeInput.default).split(\",\").map((s) => parseInt(s.trim(), 10));\n if (parts.length === 3) {\n computeInput.default = `#${toHex(parts[0])}${toHex(parts[1])}${toHex(parts[2])}`;\n } else if (parts.length === 4) {\n computeInput.default = `#${toHex(parts[1])}${toHex(parts[2])}${toHex(parts[3])}`;\n }\n }\n if (computeInput && computeInput.default !== void 0) {\n return { ...schemaInput, default: computeInput.default };\n }\n return schemaInput;\n })\n };\n}\nconst load = (async ({ params, locals, request, url }) => {\n const meta = getDefinitionMeta();\n const guid = params.guid;\n const channel = url.searchParams.get(\"channel\") === \"draft\" ? \"draft\" : \"live\";\n const explicitVersionId = url.searchParams.get(\"version\");\n const clientDefUrl = `local:${guid}`;\n let shareToken = null;\n try {\n const sharedAccess = channel === \"live\" && !explicitVersionId ? await tryResolveShareToken(request, url, guid, \"live\", { requireSolve: false }) : null;\n if (sharedAccess) {\n shareToken = url.searchParams.get(\"token\");\n } else if (!locals.ctx || !locals.user) {\n throw error(401, \"Unauthorized: You must be logged in to access definitions\");\n }\n const ctx = sharedAccess?.ctx ?? locals.ctx;\n const record = await meta.get(ctx, guid);\n if (!record) throw new Error(`Definition '${guid}' not found`);\n if (!sharedAccess) await requireCanSolve(locals, record.projectId);\n if (channel === \"draft\" || explicitVersionId) {\n const { requireEditableDefinition } = await import(\"../../../../chunks/access.server.js\").then((n) => n.C);\n await requireEditableDefinition(locals, guid);\n }\n const loaded = await loadDefinitionForRender(ctx, record, channel, explicitVersionId);\n const orgLogoUrl = await resolveOrgLogo(ctx, record.projectId);\n return {\n schema: loaded.schema,\n ghDefinition: clientDefUrl,\n currentDefinition: guid,\n serverLabel: loaded.computeServer.label,\n orgLogoUrl,\n channel,\n // When rendering an explicit version, forward its id (so solve calls\n // target the same version) and number (for the preview badge).\n versionId: explicitVersionId,\n versionNumber: loaded.version.versionNumber,\n // Forward to the client so /api/compute/solve calls can include it.\n // Null when the request was user-authenticated (session cookie carries auth).\n shareToken,\n // Same deadline the server enforces on /api/compute, so the client's\n // AbortController matches the server's Promise.race.\n solveTimeoutMs: MAX_SOLVE_DURATION_MS\n };\n } catch (err) {\n if (err instanceof Error && \"status\" in err) throw err;\n if (err instanceof DefinitionLoadError) {\n if (err.kind === \"missing-config\") {\n throw error(\n 503,\n \"No compute server configured. Ask an admin to add one in /admin/compute.\"\n );\n }\n if (err.kind === \"connect\") {\n console.error(\"[PageLoad] Compute server connection failed:\", err.message);\n throw error(503, err.message);\n }\n if (err.kind === \"schema\") {\n console.error(\"[PageLoad] Definition loading failed:\", err.message);\n if (process.env.NODE_ENV === \"development\") {\n const hint = `\n\nTroubleshooting:\n1. Check /api/health/compute to diagnose server connectivity\n2. Check the browser console for more details`;\n throw error(500, `Failed to load definition from ${clientDefUrl}: ${err.message}${hint}`);\n }\n throw error(500, `Failed to load definition: ${err.message}`);\n }\n }\n if (err instanceof Error) {\n console.warn(`[App Load] Failed to load definition '${guid}':`, err);\n throw error(400, `Failed to load definition '${guid}': ${err.message}`);\n }\n throw err;\n }\n});\nasync function resolveOrgLogo(ctx, projectId) {\n try {\n const project = await getProjectProvider().getProject(ctx, projectId);\n if (!project?.orgId) return null;\n const org = await getOrganizationProvider().getOrg(ctx, project.orgId);\n return org?.assets?.logo ?? null;\n } catch (err) {\n console.warn(\"[App Load] Failed to resolve org logo:\", err);\n return null;\n }\n}\nexport {\n load\n};\n"],"names":[],"mappings":"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"}
|