@selvajs/selva 4.2.0 → 4.3.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.-MS0dTYb.css +1 -0
- package/build/client/_app/immutable/assets/0.-MS0dTYb.css.br +0 -0
- package/build/client/_app/immutable/assets/0.-MS0dTYb.css.gz +0 -0
- package/build/client/_app/immutable/assets/20.Bne67Vgr.css +1 -0
- package/build/client/_app/immutable/assets/20.Bne67Vgr.css.br +0 -0
- package/build/client/_app/immutable/assets/20.Bne67Vgr.css.gz +0 -0
- package/build/client/_app/immutable/assets/index.CV-KWLNP.css.gz +0 -0
- package/build/client/_app/immutable/chunks/0owY5F6O.js +2 -0
- package/build/client/_app/immutable/chunks/0owY5F6O.js.br +0 -0
- package/build/client/_app/immutable/chunks/0owY5F6O.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{C98bdhQ5.js → 1O7Vyn3x.js} +1 -1
- package/build/client/_app/immutable/chunks/1O7Vyn3x.js.br +0 -0
- package/build/client/_app/immutable/chunks/1O7Vyn3x.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{-UMoMsui.js → 3Ah3Y6N9.js} +1 -1
- package/build/client/_app/immutable/chunks/3Ah3Y6N9.js.br +0 -0
- package/build/client/_app/immutable/chunks/3Ah3Y6N9.js.gz +0 -0
- package/build/client/_app/immutable/chunks/6CzuHfQM.js.gz +0 -0
- package/build/client/_app/immutable/chunks/9DES--UJ.js.gz +0 -0
- package/build/client/_app/immutable/chunks/B-Kuf-9K.js.gz +0 -0
- package/build/client/_app/immutable/chunks/B1z9if9B.js.gz +0 -0
- package/build/client/_app/immutable/chunks/B21bldal.js.gz +0 -0
- package/build/client/_app/immutable/chunks/B6_AR4oL.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BEFa4rcT.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BGIAOk5X.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BHhjUaik.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BIIXkPqf.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BJTJCSLB.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BLZ195WY.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BM8Ok6pJ.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BOsr6E_d.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BTm-dDt9.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BX0gN9mF.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BaMCSMGs.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BfHBnYuG.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BiG82jCv.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BihI7LuH.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{DNu_no60.js → BjlANOwQ.js} +1 -1
- package/build/client/_app/immutable/chunks/BjlANOwQ.js.br +0 -0
- package/build/client/_app/immutable/chunks/BjlANOwQ.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Bma65zV8.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BnIDUuJL.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BnZOgasr.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BnzoF81W.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BpQqe39G.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BsKtJj5h.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BtugGMaj.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{B6yEy6Wb.js → Buy2icyP.js} +1 -1
- package/build/client/_app/immutable/chunks/Buy2icyP.js.br +0 -0
- package/build/client/_app/immutable/chunks/Buy2icyP.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Bwn5lHBl.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BzBbrBKd.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C33A5aSj.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C3WxOOC9.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C46MGZre.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CDmA5ezP.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CE_gxD9G.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CGKZc1Kf.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CIHhLSqA.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CNC_mCsM.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CYyqq9B1.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Cbu9Tg11.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CeS0GhtF.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CnXIg_dO.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{2n-qzJg2.js → CpzrN_ad.js} +1 -1
- package/build/client/_app/immutable/chunks/CpzrN_ad.js.br +0 -0
- package/build/client/_app/immutable/chunks/CpzrN_ad.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Cqb2-zYs.js +1 -0
- package/build/client/_app/immutable/chunks/Cqb2-zYs.js.br +0 -0
- package/build/client/_app/immutable/chunks/Cqb2-zYs.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CsdWDH4Y.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CumXBEVX.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CvUP44VI.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CzCTTv8Q.js +1 -0
- package/build/client/_app/immutable/chunks/CzCTTv8Q.js.br +0 -0
- package/build/client/_app/immutable/chunks/CzCTTv8Q.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D-3pI9hp.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D-Fls4-N.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{D37hHIb0.js → D0jw87aj.js} +1 -1
- package/build/client/_app/immutable/chunks/D0jw87aj.js.br +0 -0
- package/build/client/_app/immutable/chunks/D0jw87aj.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{BQ0arxbK.js → D1FLuKx5.js} +1 -1
- package/build/client/_app/immutable/chunks/D1FLuKx5.js.br +0 -0
- package/build/client/_app/immutable/chunks/D1FLuKx5.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D1xkoVpc.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DCBLBrrW.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DEk358l3.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DRNG0pfi.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DRpLcVdK.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DS1KfRtl.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DYfK6Plb.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DZM0bVcB.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D_gPt7DB.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DdEmEaOR.js.gz +0 -0
- package/build/client/_app/immutable/chunks/De-Sjn1V.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DeMiewtM.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DfVTcmam.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DfbumCTS.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Diyh8RG-.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DkVLFJC2.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DkpwXYYZ.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Dl_x4ktn.js +1 -0
- package/build/client/_app/immutable/chunks/Dl_x4ktn.js.br +0 -0
- package/build/client/_app/immutable/chunks/Dl_x4ktn.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Dn_lJm0y.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DqK2lhM-.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Dr-qnmvi.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DsnmJJEf.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DtFVCiwY.js.gz +0 -0
- package/build/client/_app/immutable/chunks/KIV0kKdR.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Q9Y439fs.js.gz +0 -0
- package/build/client/_app/immutable/chunks/T-Nslbso.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Uv0-HWHq.js.gz +0 -0
- package/build/client/_app/immutable/chunks/XwEuxkth.js +4108 -0
- package/build/client/_app/immutable/chunks/XwEuxkth.js.br +0 -0
- package/build/client/_app/immutable/chunks/XwEuxkth.js.gz +0 -0
- package/build/client/_app/immutable/chunks/jO1WSR3P.js.gz +0 -0
- package/build/client/_app/immutable/chunks/snZK0J5H.js.gz +0 -0
- package/build/client/_app/immutable/chunks/vyYztzrZ.js.gz +0 -0
- package/build/client/_app/immutable/chunks/xQ1SsCxk.js.gz +0 -0
- package/build/client/_app/immutable/entry/app.BU1ZTica.js +2 -0
- package/build/client/_app/immutable/entry/app.BU1ZTica.js.br +0 -0
- package/build/client/_app/immutable/entry/app.BU1ZTica.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.C_5mwPOZ.js +1 -0
- package/build/client/_app/immutable/entry/start.C_5mwPOZ.js.br +2 -0
- package/build/client/_app/immutable/entry/start.C_5mwPOZ.js.gz +0 -0
- package/build/client/_app/immutable/nodes/0.Dr3zOYh5.js +9 -0
- package/build/client/_app/immutable/nodes/0.Dr3zOYh5.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.Dr3zOYh5.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{1.5JE3G8iG.js → 1.BGw1TtE-.js} +1 -1
- package/build/client/_app/immutable/nodes/1.BGw1TtE-.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.BGw1TtE-.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{10.DpfN1qrg.js → 10.lZeHcKpq.js} +1 -1
- package/build/client/_app/immutable/nodes/10.lZeHcKpq.js.br +0 -0
- package/build/client/_app/immutable/nodes/10.lZeHcKpq.js.gz +0 -0
- package/build/client/_app/immutable/nodes/11.DUHLFhc8.js +2 -0
- package/build/client/_app/immutable/nodes/11.DUHLFhc8.js.br +0 -0
- package/build/client/_app/immutable/nodes/11.DUHLFhc8.js.gz +0 -0
- package/build/client/_app/immutable/nodes/12.C3AQ8jKc.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{13.D5OdE_HH.js → 13.DUetX8JN.js} +1 -1
- package/build/client/_app/immutable/nodes/13.DUetX8JN.js.br +0 -0
- package/build/client/_app/immutable/nodes/13.DUetX8JN.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{14.UGx5pLUS.js → 14.BMNgebxg.js} +1 -1
- package/build/client/_app/immutable/nodes/14.BMNgebxg.js.br +0 -0
- package/build/client/_app/immutable/nodes/14.BMNgebxg.js.gz +0 -0
- package/build/client/_app/immutable/nodes/15.czhLtsoD.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{16.CqZNgdz-.js → 16.BK5X4N0B.js} +1 -1
- package/build/client/_app/immutable/nodes/16.BK5X4N0B.js.br +0 -0
- package/build/client/_app/immutable/nodes/16.BK5X4N0B.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{17.B1PHOW1Y.js → 17.DESUDRJ7.js} +1 -1
- package/build/client/_app/immutable/nodes/17.DESUDRJ7.js.br +0 -0
- package/build/client/_app/immutable/nodes/17.DESUDRJ7.js.gz +0 -0
- package/build/client/_app/immutable/nodes/18.Cl9SXwAF.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{19.ClB_k0uw.js → 19.BGOmShx1.js} +1 -1
- package/build/client/_app/immutable/nodes/19.BGOmShx1.js.br +0 -0
- package/build/client/_app/immutable/nodes/19.BGOmShx1.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{2.uPLLf3gR.js → 2.Bil4apV-.js} +1 -1
- package/build/client/_app/immutable/nodes/2.Bil4apV-.js.br +0 -0
- package/build/client/_app/immutable/nodes/2.Bil4apV-.js.gz +0 -0
- package/build/client/_app/immutable/nodes/20.BN9CyZsk.js +11 -0
- package/build/client/_app/immutable/nodes/20.BN9CyZsk.js.br +0 -0
- package/build/client/_app/immutable/nodes/20.BN9CyZsk.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{21.B1xX86Nz.js → 21.DLY2CWfL.js} +1 -1
- package/build/client/_app/immutable/nodes/21.DLY2CWfL.js.br +0 -0
- package/build/client/_app/immutable/nodes/21.DLY2CWfL.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{23.BWuAu45o.js → 23.DwnJEjle.js} +1 -1
- package/build/client/_app/immutable/nodes/23.DwnJEjle.js.br +0 -0
- package/build/client/_app/immutable/nodes/23.DwnJEjle.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{24.DSWGE_q2.js → 24.C9nhiSAI.js} +1 -1
- package/build/client/_app/immutable/nodes/24.C9nhiSAI.js.br +0 -0
- package/build/client/_app/immutable/nodes/24.C9nhiSAI.js.gz +0 -0
- package/build/client/_app/immutable/nodes/25.Boy7QQiW.js.gz +0 -0
- package/build/client/_app/immutable/nodes/26.JTwwV2O8.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{27.CjlEhW_1.js → 27.DDMHOK1v.js} +1 -1
- package/build/client/_app/immutable/nodes/27.DDMHOK1v.js.br +0 -0
- package/build/client/_app/immutable/nodes/27.DDMHOK1v.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{28.U-BnDxlP.js → 28.BKxO5tXo.js} +1 -1
- package/build/client/_app/immutable/nodes/28.BKxO5tXo.js.br +0 -0
- package/build/client/_app/immutable/nodes/28.BKxO5tXo.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{29.cl9udKxV.js → 29.BE9agX-A.js} +1 -1
- package/build/client/_app/immutable/nodes/29.BE9agX-A.js.br +0 -0
- package/build/client/_app/immutable/nodes/29.BE9agX-A.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{3.UKn7Q9OQ.js → 3.Cr_OcaHZ.js} +1 -1
- package/build/client/_app/immutable/nodes/3.Cr_OcaHZ.js.br +0 -0
- package/build/client/_app/immutable/nodes/3.Cr_OcaHZ.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{30.DPqPYAg4.js → 30.1oMiKsa_.js} +1 -1
- package/build/client/_app/immutable/nodes/30.1oMiKsa_.js.br +0 -0
- package/build/client/_app/immutable/nodes/30.1oMiKsa_.js.gz +0 -0
- package/build/client/_app/immutable/nodes/31.SiZTd523.js.gz +0 -0
- package/build/client/_app/immutable/nodes/32.9Ta_FSIA.js.gz +0 -0
- package/build/client/_app/immutable/nodes/4.CieI7_Lb.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{5.CbYguvwB.js → 5.R3EURuYN.js} +1 -1
- package/build/client/_app/immutable/nodes/5.R3EURuYN.js.br +1 -0
- package/build/client/_app/immutable/nodes/5.R3EURuYN.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{6.DZgUvAex.js → 6.XEBvU5zF.js} +1 -1
- package/build/client/_app/immutable/nodes/6.XEBvU5zF.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.XEBvU5zF.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{7.Cv7r8DBm.js → 7.aBxKpwwY.js} +1 -1
- package/build/client/_app/immutable/nodes/7.aBxKpwwY.js.br +0 -0
- package/build/client/_app/immutable/nodes/7.aBxKpwwY.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{8.zr3bqaC_.js → 8.CEAXwPtw.js} +1 -1
- package/build/client/_app/immutable/nodes/8.CEAXwPtw.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.CEAXwPtw.js.gz +0 -0
- package/build/client/_app/immutable/nodes/9.DNoTcl-q.js +1 -0
- package/build/client/_app/immutable/nodes/9.DNoTcl-q.js.br +0 -0
- package/build/client/_app/immutable/nodes/9.DNoTcl-q.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/client/favicon/favicon.svg.gz +0 -0
- package/build/client/robots.txt.gz +0 -0
- package/build/server/chunks/{0-v49L2HZX.js → 0-BGZb7GUr.js} +6 -6
- package/build/server/chunks/0-BGZb7GUr.js.map +1 -0
- package/build/server/chunks/{1-B8xC9fBg.js → 1-CTiyXq5H.js} +2 -2
- package/build/server/chunks/{1-B8xC9fBg.js.map → 1-CTiyXq5H.js.map} +1 -1
- package/build/server/chunks/{10-BowWygfm.js → 10-CoNR8vNf.js} +7 -7
- package/build/server/chunks/{10-BowWygfm.js.map → 10-CoNR8vNf.js.map} +1 -1
- package/build/server/chunks/{11-BLjiJpX4.js → 11-BvWfYPvY.js} +8 -7
- package/build/server/chunks/11-BvWfYPvY.js.map +1 -0
- package/build/server/chunks/{12-Dk9nDvlV.js → 12-DVPsHnBz.js} +3 -3
- package/build/server/chunks/12-DVPsHnBz.js.map +1 -0
- package/build/server/chunks/{13-CZeQX-Gk.js → 13-UcumwEMR.js} +3 -3
- package/build/server/chunks/{13-CZeQX-Gk.js.map → 13-UcumwEMR.js.map} +1 -1
- package/build/server/chunks/{14-VgzSpObZ.js → 14-DDGpNRmy.js} +3 -3
- package/build/server/chunks/{14-VgzSpObZ.js.map → 14-DDGpNRmy.js.map} +1 -1
- package/build/server/chunks/{15-CKqEgZmF.js → 15-CRsKpL17.js} +4 -4
- package/build/server/chunks/{15-CKqEgZmF.js.map → 15-CRsKpL17.js.map} +1 -1
- package/build/server/chunks/{16-9hO-6bzO.js → 16-Brrnhdb0.js} +6 -6
- package/build/server/chunks/{16-9hO-6bzO.js.map → 16-Brrnhdb0.js.map} +1 -1
- package/build/server/chunks/{17-B9Aw6HdC.js → 17-nTtqXZFS.js} +2 -2
- package/build/server/chunks/{17-B9Aw6HdC.js.map → 17-nTtqXZFS.js.map} +1 -1
- package/build/server/chunks/{18-BTSLWMQT.js → 18-CM6a70dY.js} +2 -2
- package/build/server/chunks/{18-BTSLWMQT.js.map → 18-CM6a70dY.js.map} +1 -1
- package/build/server/chunks/{19-C9FaW__N.js → 19-C6JT4QWN.js} +4 -4
- package/build/server/chunks/19-C6JT4QWN.js.map +1 -0
- package/build/server/chunks/{2-CwQhh3Hg.js → 2-Bzu1IIyQ.js} +8 -8
- package/build/server/chunks/2-Bzu1IIyQ.js.map +1 -0
- package/build/server/chunks/{20-52YCUMK3.js → 20-BuEknXxb.js} +11 -11
- package/build/server/chunks/{20-52YCUMK3.js.map → 20-BuEknXxb.js.map} +1 -1
- package/build/server/chunks/{21-Dcz_2iKy.js → 21-C8VCOVHZ.js} +3 -3
- package/build/server/chunks/{21-Dcz_2iKy.js.map → 21-C8VCOVHZ.js.map} +1 -1
- package/build/server/chunks/{23-C-gTGofY.js → 23-B2o_ghvU.js} +7 -7
- package/build/server/chunks/{23-C-gTGofY.js.map → 23-B2o_ghvU.js.map} +1 -1
- package/build/server/chunks/{24-ukwP0nYw.js → 24-Q1fbSR2o.js} +5 -4
- package/build/server/chunks/24-Q1fbSR2o.js.map +1 -0
- package/build/server/chunks/{25-Oe01GQUn.js → 25-BzYQ8Zk-.js} +2 -2
- package/build/server/chunks/{25-Oe01GQUn.js.map → 25-BzYQ8Zk-.js.map} +1 -1
- package/build/server/chunks/{27-C9kRY1qj.js → 27-5VeF0OHT.js} +4 -4
- package/build/server/chunks/{27-C9kRY1qj.js.map → 27-5VeF0OHT.js.map} +1 -1
- package/build/server/chunks/{28-X583jLPJ.js → 28-GJ_nbLXN.js} +3 -3
- package/build/server/chunks/{28-X583jLPJ.js.map → 28-GJ_nbLXN.js.map} +1 -1
- package/build/server/chunks/{29-PJhSN-Wu.js → 29-lZH9mmI0.js} +4 -4
- package/build/server/chunks/{29-PJhSN-Wu.js.map → 29-lZH9mmI0.js.map} +1 -1
- package/build/server/chunks/{3-DZiroZZA.js → 3-BlqLiQTJ.js} +2 -2
- package/build/server/chunks/{3-DZiroZZA.js.map → 3-BlqLiQTJ.js.map} +1 -1
- package/build/server/chunks/{30-DvqVphAd.js → 30-CA_ezUGl.js} +4 -4
- package/build/server/chunks/{30-DvqVphAd.js.map → 30-CA_ezUGl.js.map} +1 -1
- package/build/server/chunks/{31-BefyQf51.js → 31-CQ-8s0Lw.js} +2 -2
- package/build/server/chunks/{31-BefyQf51.js.map → 31-CQ-8s0Lw.js.map} +1 -1
- package/build/server/chunks/{32-DIdNQgym.js → 32-BmsICS9-.js} +2 -2
- package/build/server/chunks/{32-DIdNQgym.js.map → 32-BmsICS9-.js.map} +1 -1
- package/build/server/chunks/{5-QlPeCe4d.js → 5-0tLn4w9t.js} +3 -3
- package/build/server/chunks/5-0tLn4w9t.js.map +1 -0
- package/build/server/chunks/{6-3t8NszBJ.js → 6-Dk8-CNQc.js} +4 -4
- package/build/server/chunks/6-Dk8-CNQc.js.map +1 -0
- package/build/server/chunks/{7-DgFxSLWj.js → 7-g1mcBFfT.js} +3 -3
- package/build/server/chunks/7-g1mcBFfT.js.map +1 -0
- package/build/server/chunks/{8-BKivPkMd.js → 8-BXyJwXPH.js} +3 -3
- package/build/server/chunks/{8-BKivPkMd.js.map → 8-BXyJwXPH.js.map} +1 -1
- package/build/server/chunks/{9-COv3kpjW.js → 9-B3S-g_A8.js} +4 -4
- package/build/server/chunks/{9-COv3kpjW.js.map → 9-B3S-g_A8.js.map} +1 -1
- package/build/server/chunks/{AppHeader-DBNR_OCa.js → AppHeader-6ioAYhJf.js} +2 -2
- package/build/server/chunks/{AppHeader-DBNR_OCa.js.map → AppHeader-6ioAYhJf.js.map} +1 -1
- package/build/server/chunks/{DefinitionCard-BeONTmrJ.js → DefinitionCard-O1k8h5Pi.js} +2 -2
- package/build/server/chunks/{DefinitionCard-BeONTmrJ.js.map → DefinitionCard-O1k8h5Pi.js.map} +1 -1
- package/build/server/chunks/{UserChip-CCZ9yMM3.js → UserChip-fy4ucYa9.js} +461 -369
- package/build/server/chunks/UserChip-fy4ucYa9.js.map +1 -0
- package/build/server/chunks/{_layout.svelte-Cjs-r7Xa.js → _layout.svelte-BNCiY_LE.js} +9 -7
- package/build/server/chunks/{_layout.svelte-Cjs-r7Xa.js.map → _layout.svelte-BNCiY_LE.js.map} +1 -1
- package/build/server/chunks/{_layout.svelte-CgAG7l2U.js → _layout.svelte-BR1971uC.js} +9 -7
- package/build/server/chunks/{_layout.svelte-CgAG7l2U.js.map → _layout.svelte-BR1971uC.js.map} +1 -1
- package/build/server/chunks/{_layout.svelte-VEFMEljC.js → _layout.svelte-CHTfYN7Z.js} +9 -7
- package/build/server/chunks/{_layout.svelte-VEFMEljC.js.map → _layout.svelte-CHTfYN7Z.js.map} +1 -1
- package/build/server/chunks/{_layout.svelte-DU36kuy0.js → _layout.svelte-DtDfOje_.js} +5 -5
- package/build/server/chunks/_layout.svelte-DtDfOje_.js.map +1 -0
- package/build/server/chunks/{_page.svelte-DJnICJdZ.js → _page.svelte-6m8-zq9_.js} +887 -786
- package/build/server/chunks/_page.svelte-6m8-zq9_.js.map +1 -0
- package/build/server/chunks/{_page.svelte-Mwitq0vD.js → _page.svelte-B-BjG1Bg.js} +10 -8
- package/build/server/chunks/{_page.svelte-Mwitq0vD.js.map → _page.svelte-B-BjG1Bg.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-1sc1cfuW.js → _page.svelte-B2tNMNfb.js} +4 -3
- package/build/server/chunks/{_page.svelte-1sc1cfuW.js.map → _page.svelte-B2tNMNfb.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-CSZEgmHp.js → _page.svelte-BMk_ClLw.js} +5 -5
- package/build/server/chunks/_page.svelte-BMk_ClLw.js.map +1 -0
- package/build/server/chunks/{_page.svelte-CeKqqMje.js → _page.svelte-BX7fFjm7.js} +5 -4
- package/build/server/chunks/{_page.svelte-CeKqqMje.js.map → _page.svelte-BX7fFjm7.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-DlnKE8Z9.js → _page.svelte-CR79Ws-C.js} +5 -4
- package/build/server/chunks/{_page.svelte-DlnKE8Z9.js.map → _page.svelte-CR79Ws-C.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-DIeTvNzN.js → _page.svelte-HTC9yaHJ.js} +9 -7
- package/build/server/chunks/{_page.svelte-DIeTvNzN.js.map → _page.svelte-HTC9yaHJ.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-DSPm244d.js → _page.svelte-W41FvlvN.js} +5 -1
- package/build/server/chunks/_page.svelte-W41FvlvN.js.map +1 -0
- package/build/server/chunks/{_page.svelte-DSYaUquf.js → _page.svelte-YVHQEj69.js} +8 -7
- package/build/server/chunks/_page.svelte-YVHQEj69.js.map +1 -0
- package/build/server/chunks/{_page.svelte-BQZ-qC72.js → _page.svelte-tQDqmoYu.js} +5 -4
- package/build/server/chunks/{_page.svelte-BQZ-qC72.js.map → _page.svelte-tQDqmoYu.js.map} +1 -1
- package/build/server/chunks/{_server.ts-t9_veBtJ.js → _server.ts-A3y5hBxw.js} +4 -4
- package/build/server/chunks/{_server.ts-t9_veBtJ.js.map → _server.ts-A3y5hBxw.js.map} +1 -1
- package/build/server/chunks/{_server.ts-C3sOwl5l.js → _server.ts-B5jlr2iF.js} +5 -5
- package/build/server/chunks/{_server.ts-C3sOwl5l.js.map → _server.ts-B5jlr2iF.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DK7t4rlY.js → _server.ts-BON6qGm5.js} +5 -5
- package/build/server/chunks/{_server.ts-DK7t4rlY.js.map → _server.ts-BON6qGm5.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CW_1VZGk.js → _server.ts-BO_GwwIE.js} +5 -5
- package/build/server/chunks/{_server.ts-CW_1VZGk.js.map → _server.ts-BO_GwwIE.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DgTNMZbG.js → _server.ts-BUw5lGMN.js} +5 -5
- package/build/server/chunks/{_server.ts-DgTNMZbG.js.map → _server.ts-BUw5lGMN.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CKvfxWeo.js → _server.ts-Bhj8Vx5l.js} +6 -6
- package/build/server/chunks/{_server.ts-CKvfxWeo.js.map → _server.ts-Bhj8Vx5l.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CMKxt34Z.js → _server.ts-BqlGKKaE.js} +5 -5
- package/build/server/chunks/{_server.ts-CMKxt34Z.js.map → _server.ts-BqlGKKaE.js.map} +1 -1
- package/build/server/chunks/{_server.ts-ODEutN30.js → _server.ts-BvMDaAZY.js} +5 -5
- package/build/server/chunks/{_server.ts-ODEutN30.js.map → _server.ts-BvMDaAZY.js.map} +1 -1
- package/build/server/chunks/{_server.ts-C1wqbTiL.js → _server.ts-C-MiDKCm.js} +3 -3
- package/build/server/chunks/{_server.ts-C1wqbTiL.js.map → _server.ts-C-MiDKCm.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B7X5-4kS.js → _server.ts-C05I9RVA.js} +5 -5
- package/build/server/chunks/{_server.ts-B7X5-4kS.js.map → _server.ts-C05I9RVA.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DsFj_8lL.js → _server.ts-C4BZG5kA.js} +6 -6
- package/build/server/chunks/_server.ts-C4BZG5kA.js.map +1 -0
- package/build/server/chunks/{_server.ts-Du-NpBy4.js → _server.ts-CBAiDOcP.js} +5 -5
- package/build/server/chunks/{_server.ts-Du-NpBy4.js.map → _server.ts-CBAiDOcP.js.map} +1 -1
- package/build/server/chunks/{_server.ts-17aVSHOa.js → _server.ts-CEE9G3nv.js} +5 -5
- package/build/server/chunks/{_server.ts-17aVSHOa.js.map → _server.ts-CEE9G3nv.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CXYPZtry.js → _server.ts-CJ37R1sx.js} +10 -6
- package/build/server/chunks/_server.ts-CJ37R1sx.js.map +1 -0
- package/build/server/chunks/{_server.ts-8ahOmk_6.js → _server.ts-CJ5P0_cD.js} +5 -5
- package/build/server/chunks/{_server.ts-8ahOmk_6.js.map → _server.ts-CJ5P0_cD.js.map} +1 -1
- package/build/server/chunks/{_server.ts-vURDyV-V.js → _server.ts-Ca-ZnaSe.js} +5 -5
- package/build/server/chunks/{_server.ts-vURDyV-V.js.map → _server.ts-Ca-ZnaSe.js.map} +1 -1
- package/build/server/chunks/{_server.ts-C-8S5O0H.js → _server.ts-CewoOx5S.js} +5 -5
- package/build/server/chunks/{_server.ts-C-8S5O0H.js.map → _server.ts-CewoOx5S.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B0qq-nxh.js → _server.ts-ChhV0tlQ.js} +5 -5
- package/build/server/chunks/{_server.ts-B0qq-nxh.js.map → _server.ts-ChhV0tlQ.js.map} +1 -1
- package/build/server/chunks/{_server.ts-hg9WxMNg.js → _server.ts-Ck5KHS5f.js} +2 -2
- package/build/server/chunks/{_server.ts-hg9WxMNg.js.map → _server.ts-Ck5KHS5f.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BRjl7H1o.js → _server.ts-ClymRXMH.js} +5 -5
- package/build/server/chunks/{_server.ts-BRjl7H1o.js.map → _server.ts-ClymRXMH.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BL7-YPnc.js → _server.ts-CsWWoLDJ.js} +7 -7
- package/build/server/chunks/_server.ts-CsWWoLDJ.js.map +1 -0
- package/build/server/chunks/{_server.ts-DMnMoi_a.js → _server.ts-CtJaazcE.js} +5 -5
- package/build/server/chunks/{_server.ts-DMnMoi_a.js.map → _server.ts-CtJaazcE.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Bq2BT6_L.js → _server.ts-CyjVVRiT.js} +9 -9
- package/build/server/chunks/_server.ts-CyjVVRiT.js.map +1 -0
- package/build/server/chunks/{_server.ts-Cbe4naEr.js → _server.ts-D0PjwFdv.js} +5 -5
- package/build/server/chunks/{_server.ts-Cbe4naEr.js.map → _server.ts-D0PjwFdv.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Dukt2veu.js → _server.ts-D7tgGcoB.js} +3 -3
- package/build/server/chunks/{_server.ts-Dukt2veu.js.map → _server.ts-D7tgGcoB.js.map} +1 -1
- package/build/server/chunks/{_server.ts-bONEWPMV.js → _server.ts-DBV9dA6A.js} +5 -5
- package/build/server/chunks/{_server.ts-bONEWPMV.js.map → _server.ts-DBV9dA6A.js.map} +1 -1
- package/build/server/chunks/{_server.ts-EnuOtr_j.js → _server.ts-DLUA6_Lf.js} +29 -9
- package/build/server/chunks/_server.ts-DLUA6_Lf.js.map +1 -0
- package/build/server/chunks/{_server.ts-BqsgEogJ.js → _server.ts-DM01ishT.js} +5 -5
- package/build/server/chunks/{_server.ts-BqsgEogJ.js.map → _server.ts-DM01ishT.js.map} +1 -1
- package/build/server/chunks/{_server.ts-4eVxyBg6.js → _server.ts-DNeVKrs8.js} +6 -6
- package/build/server/chunks/{_server.ts-4eVxyBg6.js.map → _server.ts-DNeVKrs8.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B_KQteIy.js → _server.ts-DlDf2qpE.js} +6 -6
- package/build/server/chunks/{_server.ts-B_KQteIy.js.map → _server.ts-DlDf2qpE.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Dsoq_gsI.js → _server.ts-DmqbBNeI.js} +5 -5
- package/build/server/chunks/{_server.ts-Dsoq_gsI.js.map → _server.ts-DmqbBNeI.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B7Z1RMy4.js → _server.ts-DwqLpa_k.js} +5 -5
- package/build/server/chunks/{_server.ts-B7Z1RMy4.js.map → _server.ts-DwqLpa_k.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DpkIJe-d.js → _server.ts-IVIAzAUs.js} +5 -5
- package/build/server/chunks/{_server.ts-DpkIJe-d.js.map → _server.ts-IVIAzAUs.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CUcFObAP.js → _server.ts-KdED3s6W.js} +5 -5
- package/build/server/chunks/{_server.ts-CUcFObAP.js.map → _server.ts-KdED3s6W.js.map} +1 -1
- package/build/server/chunks/{_server.ts-ByqZZZxB.js → _server.ts-Xl5CYncx.js} +3 -3
- package/build/server/chunks/{_server.ts-ByqZZZxB.js.map → _server.ts-Xl5CYncx.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BiJbME_l.js → _server.ts-Xpgu2-ka.js} +8 -8
- package/build/server/chunks/_server.ts-Xpgu2-ka.js.map +1 -0
- package/build/server/chunks/{_server.ts-D4mOhrFH.js → _server.ts-eVLE380Q.js} +5 -5
- package/build/server/chunks/{_server.ts-D4mOhrFH.js.map → _server.ts-eVLE380Q.js.map} +1 -1
- package/build/server/chunks/{_server.ts-COWH7HN8.js → _server.ts-kighVn_d.js} +5 -5
- package/build/server/chunks/{_server.ts-COWH7HN8.js.map → _server.ts-kighVn_d.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BtXdHfbr.js → _server.ts-r2RVYvYA.js} +5 -5
- package/build/server/chunks/{_server.ts-BtXdHfbr.js.map → _server.ts-r2RVYvYA.js.map} +1 -1
- package/build/server/chunks/{access.server-BBglojso.js → access.server-ByXvmWyF.js} +4 -4
- package/build/server/chunks/{access.server-BBglojso.js.map → access.server-ByXvmWyF.js.map} +1 -1
- package/build/server/chunks/{api-errors-agQVBoep.js → api-errors-C0SWfJj5.js} +3 -3
- package/build/server/chunks/{api-errors-agQVBoep.js.map → api-errors-C0SWfJj5.js.map} +1 -1
- package/build/server/chunks/{auth-bootstrap.server-CdwMOcYI.js → auth-bootstrap.server-zvPqZ6kt.js} +5 -4
- package/build/server/chunks/auth-bootstrap.server-zvPqZ6kt.js.map +1 -0
- package/build/server/chunks/{bootHealth.server-Ca8zFRpM.js → bootHealth.server-CLLVkbZZ.js} +2 -2
- package/build/server/chunks/{bootHealth.server-Ca8zFRpM.js.map → bootHealth.server-CLLVkbZZ.js.map} +1 -1
- package/build/server/chunks/{computeLimits-CKK96OOR.js → computeLimits-5PaWFMYq.js} +4 -3
- package/build/server/chunks/computeLimits-5PaWFMYq.js.map +1 -0
- package/build/server/chunks/{dialog-description-C-wNjCmv.js → dialog-description-8UnYiAMX.js} +2 -2
- package/build/server/chunks/{dialog-description-C-wNjCmv.js.map → dialog-description-8UnYiAMX.js.map} +1 -1
- package/build/server/chunks/{upload-BY_p_jpL.js → dialog-footer-CqbKEEQ-.js} +11 -11
- package/build/server/chunks/dialog-footer-CqbKEEQ-.js.map +1 -0
- package/build/server/chunks/{footerContext.svelte-BZEf7gVw.js → footerContext.svelte-oP__zW9C.js} +10 -2
- package/build/server/chunks/footerContext.svelte-oP__zW9C.js.map +1 -0
- package/build/server/chunks/{hooks.server-D6EnLMoG.js → hooks.server-CwDixHQc.js} +4 -4
- package/build/server/chunks/{hooks.server-D6EnLMoG.js.map → hooks.server-CwDixHQc.js.map} +1 -1
- package/build/server/chunks/index-server2-BiZ3ccb0.js +18 -0
- package/build/server/chunks/index-server2-BiZ3ccb0.js.map +1 -0
- package/build/server/chunks/{index2-B9qXYHIn.js → index2-D4a590Kd.js} +11 -11
- package/build/server/chunks/index2-D4a590Kd.js.map +1 -0
- package/build/server/chunks/{index3-AGemCGcn.js → index3-0Z1R1__W.js} +12 -12
- package/build/server/chunks/index3-0Z1R1__W.js.map +1 -0
- package/build/server/chunks/{index4-DSWKKOFB.js → index4-DWNr0jIL.js} +3 -3
- package/build/server/chunks/{index4-DSWKKOFB.js.map → index4-DWNr0jIL.js.map} +1 -1
- package/build/server/chunks/{permissions.server-cNGc9ris.js → permissions.server-7AwAAkY9.js} +2 -2
- package/build/server/chunks/{permissions.server-cNGc9ris.js.map → permissions.server-7AwAAkY9.js.map} +1 -1
- package/build/server/chunks/{providers.server-MD7TK-zQ.js → providers.server-wGknM6CR.js} +52 -29
- package/build/server/chunks/providers.server-wGknM6CR.js.map +1 -0
- package/build/server/chunks/{resolve.server-BXKCfGfg.js → resolve.server-CvfANFCn.js} +2 -2
- package/build/server/chunks/{resolve.server-BXKCfGfg.js.map → resolve.server-CvfANFCn.js.map} +1 -1
- package/build/server/chunks/{scroll-lock-BVxv0Dsn.js → scroll-lock-BIz_BXmd.js} +4 -15
- package/build/server/chunks/scroll-lock-BIz_BXmd.js.map +1 -0
- package/build/server/chunks/{utils2-D38XWwRv.js → utils2-BsnrDRob.js} +2 -2
- package/build/server/chunks/{utils2-D38XWwRv.js.map → utils2-BsnrDRob.js.map} +1 -1
- package/build/server/index.js +2 -2
- package/build/server/index.js.map +1 -1
- package/build/server/manifest.js +70 -70
- package/build/server/manifest.js.map +1 -1
- package/package.json +12 -9
- package/templates/.env.example +6 -4
- package/build/client/_app/immutable/assets/0.vgCL98o5.css +0 -1
- package/build/client/_app/immutable/assets/0.vgCL98o5.css.br +0 -0
- package/build/client/_app/immutable/assets/0.vgCL98o5.css.gz +0 -0
- package/build/client/_app/immutable/assets/20.DvtWUFNX.css +0 -1
- package/build/client/_app/immutable/assets/20.DvtWUFNX.css.br +0 -0
- package/build/client/_app/immutable/assets/20.DvtWUFNX.css.gz +0 -0
- package/build/client/_app/immutable/chunks/-UMoMsui.js.br +0 -0
- package/build/client/_app/immutable/chunks/-UMoMsui.js.gz +0 -0
- package/build/client/_app/immutable/chunks/2n-qzJg2.js.br +0 -0
- package/build/client/_app/immutable/chunks/2n-qzJg2.js.gz +0 -0
- package/build/client/_app/immutable/chunks/B6yEy6Wb.js.br +0 -0
- package/build/client/_app/immutable/chunks/B6yEy6Wb.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BQ0arxbK.js.br +0 -0
- package/build/client/_app/immutable/chunks/BQ0arxbK.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BeM-GIFh.js +0 -1
- package/build/client/_app/immutable/chunks/BeM-GIFh.js.br +0 -0
- package/build/client/_app/immutable/chunks/BeM-GIFh.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C1kpvSgW.js +0 -2
- package/build/client/_app/immutable/chunks/C1kpvSgW.js.br +0 -0
- package/build/client/_app/immutable/chunks/C1kpvSgW.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C98bdhQ5.js.br +0 -0
- package/build/client/_app/immutable/chunks/C98bdhQ5.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Cal8_SqL.js +0 -1
- package/build/client/_app/immutable/chunks/Cal8_SqL.js.br +0 -0
- package/build/client/_app/immutable/chunks/Cal8_SqL.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CynIvqMH.js +0 -1
- package/build/client/_app/immutable/chunks/CynIvqMH.js.br +0 -0
- package/build/client/_app/immutable/chunks/CynIvqMH.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D37hHIb0.js.br +0 -0
- package/build/client/_app/immutable/chunks/D37hHIb0.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DNu_no60.js.br +0 -0
- package/build/client/_app/immutable/chunks/DNu_no60.js.gz +0 -0
- package/build/client/_app/immutable/entry/app.1YljYqLj.js +0 -2
- package/build/client/_app/immutable/entry/app.1YljYqLj.js.br +0 -0
- package/build/client/_app/immutable/entry/app.1YljYqLj.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.C41rnrMx.js +0 -1
- package/build/client/_app/immutable/entry/start.C41rnrMx.js.br +0 -0
- package/build/client/_app/immutable/entry/start.C41rnrMx.js.gz +0 -0
- package/build/client/_app/immutable/nodes/0.Y-xP5pet.js +0 -9
- package/build/client/_app/immutable/nodes/0.Y-xP5pet.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.Y-xP5pet.js.gz +0 -0
- package/build/client/_app/immutable/nodes/1.5JE3G8iG.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.5JE3G8iG.js.gz +0 -0
- package/build/client/_app/immutable/nodes/10.DpfN1qrg.js.br +0 -0
- package/build/client/_app/immutable/nodes/10.DpfN1qrg.js.gz +0 -0
- package/build/client/_app/immutable/nodes/11.Co2EmpEg.js +0 -2
- package/build/client/_app/immutable/nodes/11.Co2EmpEg.js.br +0 -0
- package/build/client/_app/immutable/nodes/11.Co2EmpEg.js.gz +0 -0
- package/build/client/_app/immutable/nodes/13.D5OdE_HH.js.br +0 -0
- package/build/client/_app/immutable/nodes/13.D5OdE_HH.js.gz +0 -0
- package/build/client/_app/immutable/nodes/14.UGx5pLUS.js.br +0 -0
- package/build/client/_app/immutable/nodes/14.UGx5pLUS.js.gz +0 -0
- package/build/client/_app/immutable/nodes/16.CqZNgdz-.js.br +0 -0
- package/build/client/_app/immutable/nodes/16.CqZNgdz-.js.gz +0 -0
- package/build/client/_app/immutable/nodes/17.B1PHOW1Y.js.br +0 -0
- package/build/client/_app/immutable/nodes/17.B1PHOW1Y.js.gz +0 -0
- package/build/client/_app/immutable/nodes/19.ClB_k0uw.js.br +0 -0
- package/build/client/_app/immutable/nodes/19.ClB_k0uw.js.gz +0 -0
- package/build/client/_app/immutable/nodes/2.uPLLf3gR.js.br +0 -0
- package/build/client/_app/immutable/nodes/2.uPLLf3gR.js.gz +0 -0
- package/build/client/_app/immutable/nodes/20.C5BF7igP.js +0 -4118
- package/build/client/_app/immutable/nodes/20.C5BF7igP.js.br +0 -0
- package/build/client/_app/immutable/nodes/20.C5BF7igP.js.gz +0 -0
- package/build/client/_app/immutable/nodes/21.B1xX86Nz.js.br +0 -0
- package/build/client/_app/immutable/nodes/21.B1xX86Nz.js.gz +0 -0
- package/build/client/_app/immutable/nodes/23.BWuAu45o.js.br +0 -0
- package/build/client/_app/immutable/nodes/23.BWuAu45o.js.gz +0 -0
- package/build/client/_app/immutable/nodes/24.DSWGE_q2.js.br +0 -0
- package/build/client/_app/immutable/nodes/24.DSWGE_q2.js.gz +0 -0
- package/build/client/_app/immutable/nodes/27.CjlEhW_1.js.br +0 -0
- package/build/client/_app/immutable/nodes/27.CjlEhW_1.js.gz +0 -0
- package/build/client/_app/immutable/nodes/28.U-BnDxlP.js.br +0 -0
- package/build/client/_app/immutable/nodes/28.U-BnDxlP.js.gz +0 -0
- package/build/client/_app/immutable/nodes/29.cl9udKxV.js.br +0 -0
- package/build/client/_app/immutable/nodes/29.cl9udKxV.js.gz +0 -0
- package/build/client/_app/immutable/nodes/3.UKn7Q9OQ.js.br +0 -0
- package/build/client/_app/immutable/nodes/3.UKn7Q9OQ.js.gz +0 -0
- package/build/client/_app/immutable/nodes/30.DPqPYAg4.js.br +0 -0
- package/build/client/_app/immutable/nodes/30.DPqPYAg4.js.gz +0 -0
- package/build/client/_app/immutable/nodes/5.CbYguvwB.js.br +0 -2
- package/build/client/_app/immutable/nodes/5.CbYguvwB.js.gz +0 -0
- package/build/client/_app/immutable/nodes/6.DZgUvAex.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.DZgUvAex.js.gz +0 -0
- package/build/client/_app/immutable/nodes/7.Cv7r8DBm.js.br +0 -0
- package/build/client/_app/immutable/nodes/7.Cv7r8DBm.js.gz +0 -0
- package/build/client/_app/immutable/nodes/8.zr3bqaC_.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.zr3bqaC_.js.gz +0 -0
- package/build/client/_app/immutable/nodes/9.B2PU0xej.js +0 -1
- package/build/client/_app/immutable/nodes/9.B2PU0xej.js.br +0 -0
- package/build/client/_app/immutable/nodes/9.B2PU0xej.js.gz +0 -0
- package/build/server/chunks/0-v49L2HZX.js.map +0 -1
- package/build/server/chunks/11-BLjiJpX4.js.map +0 -1
- package/build/server/chunks/12-Dk9nDvlV.js.map +0 -1
- package/build/server/chunks/19-C9FaW__N.js.map +0 -1
- package/build/server/chunks/2-CwQhh3Hg.js.map +0 -1
- package/build/server/chunks/24-ukwP0nYw.js.map +0 -1
- package/build/server/chunks/5-QlPeCe4d.js.map +0 -1
- package/build/server/chunks/6-3t8NszBJ.js.map +0 -1
- package/build/server/chunks/7-DgFxSLWj.js.map +0 -1
- package/build/server/chunks/UserChip-CCZ9yMM3.js.map +0 -1
- package/build/server/chunks/_layout.svelte-DU36kuy0.js.map +0 -1
- package/build/server/chunks/_page.svelte-CSZEgmHp.js.map +0 -1
- package/build/server/chunks/_page.svelte-DJnICJdZ.js.map +0 -1
- package/build/server/chunks/_page.svelte-DSPm244d.js.map +0 -1
- package/build/server/chunks/_page.svelte-DSYaUquf.js.map +0 -1
- package/build/server/chunks/_server.ts-BL7-YPnc.js.map +0 -1
- package/build/server/chunks/_server.ts-BiJbME_l.js.map +0 -1
- package/build/server/chunks/_server.ts-Bq2BT6_L.js.map +0 -1
- package/build/server/chunks/_server.ts-CXYPZtry.js.map +0 -1
- package/build/server/chunks/_server.ts-DsFj_8lL.js.map +0 -1
- package/build/server/chunks/_server.ts-EnuOtr_j.js.map +0 -1
- package/build/server/chunks/auth-bootstrap.server-CdwMOcYI.js.map +0 -1
- package/build/server/chunks/computeLimits-CKK96OOR.js.map +0 -1
- package/build/server/chunks/footerContext.svelte-BZEf7gVw.js.map +0 -1
- package/build/server/chunks/index2-B9qXYHIn.js.map +0 -1
- package/build/server/chunks/index3-AGemCGcn.js.map +0 -1
- package/build/server/chunks/providers.server-MD7TK-zQ.js.map +0 -1
- package/build/server/chunks/scroll-lock-BVxv0Dsn.js.map +0 -1
- package/build/server/chunks/upload-BY_p_jpL.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-ClymRXMH.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/definitions/_guid_/versions/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { h as getDefinitionMeta, M as MAX_PAGE_LIMIT } from \"../../../../../../chunks/providers.server.js\";\nimport { h as handleApiError } from \"../../../../../../chunks/api-errors.js\";\nimport { s as requireCanViewProject } from \"../../../../../../chunks/access.server.js\";\nimport { G as GuidSchema } from \"../../../../../../chunks/context.js\";\nconst GET = async ({ params, locals, url }) => {\n const guidParsed = GuidSchema.safeParse(params.guid);\n if (!guidParsed.success) throw error(400, \"Invalid or missing GUID\");\n if (!locals.ctx) throw error(401, \"Unauthorized\");\n const rawLimit = Number(url.searchParams.get(\"limit\") ?? 50);\n const limit = Number.isFinite(rawLimit) ? Math.min(Math.max(rawLimit, 1), MAX_PAGE_LIMIT) : 50;\n const cursor = url.searchParams.get(\"cursor\") ?? void 0;\n try {\n const def = await getDefinitionMeta().get(locals.ctx, guidParsed.data);\n if (!def) throw error(404, \"Definition not found\");\n await requireCanViewProject(locals, def.projectId);\n const page = await getDefinitionMeta().listVersions(locals.ctx, guidParsed.data, {\n limit,\n cursor\n });\n return json({\n versions: page.items,\n nextCursor: page.nextCursor,\n liveVersionId: def.liveVersionId,\n draftVersionId: def.draftVersionId\n });\n } catch (err) {\n handleApiError(err, \"Failed to list versions\");\n }\n};\nexport {\n GET\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAKK,MAAC,GAAG,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK;AAC/C,EAAE,MAAM,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC;AACtD,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,yBAAyB,CAAC;AACtE,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,cAAc,CAAC;AACnD,EAAE,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;AAC9D,EAAE,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,cAAc,CAAC,GAAG,EAAE;AAChG,EAAE,MAAM,MAAM,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,MAAM;AACzD,EAAE,IAAI;AACN,IAAI,MAAM,GAAG,GAAG,MAAM,iBAAiB,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,UAAU,CAAC,IAAI,CAAC;AAC1E,IAAI,IAAI,CAAC,GAAG,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,sBAAsB,CAAC;AACtD,IAAI,MAAM,qBAAqB,CAAC,MAAM,EAAE,GAAG,CAAC,SAAS,CAAC;AACtD,IAAI,MAAM,IAAI,GAAG,MAAM,iBAAiB,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,EAAE,UAAU,CAAC,IAAI,EAAE;AACrF,MAAM,KAAK;AACX,MAAM;AACN,KAAK,CAAC;AACN,IAAI,OAAO,IAAI,CAAC;AAChB,MAAM,QAAQ,EAAE,IAAI,CAAC,KAAK;AAC1B,MAAM,UAAU,EAAE,IAAI,CAAC,UAAU;AACjC,MAAM,aAAa,EAAE,GAAG,CAAC,aAAa;AACtC,MAAM,cAAc,EAAE,GAAG,CAAC;AAC1B,KAAK,CAAC;AACN,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,cAAc,CAAC,GAAG,EAAE,yBAAyB,CAAC;AAClD,EAAE;AACF;;;;"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { error, json } from '@sveltejs/kit';
|
|
2
|
-
import {
|
|
3
|
-
import { t as requireEditableDefinition } from './access.server-
|
|
4
|
-
import { h as handleApiError } from './api-errors-
|
|
2
|
+
import { i as getDefinitionService } from './providers.server-wGknM6CR.js';
|
|
3
|
+
import { t as requireEditableDefinition } from './access.server-ByXvmWyF.js';
|
|
4
|
+
import { h as handleApiError } from './api-errors-C0SWfJj5.js';
|
|
5
5
|
import { G as GuidSchema } from './context-DKDYb-He.js';
|
|
6
|
-
import {
|
|
6
|
+
import { b as MAX_IMAGE_FILE_SIZE } from './computeLimits-5PaWFMYq.js';
|
|
7
7
|
import './shared-server-C3WdcJCQ.js';
|
|
8
8
|
import 'node:url';
|
|
9
9
|
import 'node:path';
|
|
@@ -13,7 +13,7 @@ import 'node:fs/promises';
|
|
|
13
13
|
import '@supabase/supabase-js';
|
|
14
14
|
import 'zod';
|
|
15
15
|
import '@selvajs/compute/core';
|
|
16
|
-
import './utils2-
|
|
16
|
+
import './utils2-BsnrDRob.js';
|
|
17
17
|
|
|
18
18
|
const POST = async ({ params, request, locals }) => {
|
|
19
19
|
const guidParsed = GuidSchema.safeParse(params.guid);
|
|
@@ -30,7 +30,7 @@ const POST = async ({ params, request, locals }) => {
|
|
|
30
30
|
}
|
|
31
31
|
try {
|
|
32
32
|
const imageData = new Uint8Array(await file.arrayBuffer());
|
|
33
|
-
const coverImage = await
|
|
33
|
+
const coverImage = await getDefinitionService().saveCoverImage(ctx, guid, imageData);
|
|
34
34
|
return json({ success: true, coverImage });
|
|
35
35
|
} catch (err) {
|
|
36
36
|
handleApiError(err, "Failed to upload image");
|
|
@@ -38,4 +38,4 @@ const POST = async ({ params, request, locals }) => {
|
|
|
38
38
|
};
|
|
39
39
|
|
|
40
40
|
export { POST };
|
|
41
|
-
//# sourceMappingURL=_server.ts-
|
|
41
|
+
//# sourceMappingURL=_server.ts-CsWWoLDJ.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_server.ts-CsWWoLDJ.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/definitions/_guid_/image/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { i as getDefinitionService } from \"../../../../../../chunks/providers.server.js\";\nimport { t as requireEditableDefinition } from \"../../../../../../chunks/access.server.js\";\nimport { h as handleApiError } from \"../../../../../../chunks/api-errors.js\";\nimport { G as GuidSchema } from \"../../../../../../chunks/context.js\";\nimport { b as MAX_IMAGE_FILE_SIZE } from \"../../../../../../chunks/computeLimits.js\";\nconst POST = async ({ params, request, locals }) => {\n const guidParsed = GuidSchema.safeParse(params.guid);\n if (!guidParsed.success) throw error(400, \"Invalid GUID\");\n const guid = guidParsed.data;\n const { ctx } = await requireEditableDefinition(locals, guid);\n const formData = await request.formData();\n const file = formData.get(\"image\");\n if (!(file instanceof File) || file.size === 0) {\n throw error(400, \"Image file is required\");\n }\n if (file.size > MAX_IMAGE_FILE_SIZE) {\n throw error(400, `Image too large. Max size: ${MAX_IMAGE_FILE_SIZE / (1024 * 1024)} MB`);\n }\n try {\n const imageData = new Uint8Array(await file.arrayBuffer());\n const coverImage = await getDefinitionService().saveCoverImage(ctx, guid, imageData);\n return json({ success: true, coverImage });\n } catch (err) {\n handleApiError(err, \"Failed to upload image\");\n }\n};\nexport {\n POST\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAMK,MAAC,IAAI,GAAG,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK;AACpD,EAAE,MAAM,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC;AACtD,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,cAAc,CAAC;AAC3D,EAAE,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI;AAC9B,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,yBAAyB,CAAC,MAAM,EAAE,IAAI,CAAC;AAC/D,EAAE,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,QAAQ,EAAE;AAC3C,EAAE,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC;AACpC,EAAE,IAAI,EAAE,IAAI,YAAY,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,KAAK,CAAC,EAAE;AAClD,IAAI,MAAM,KAAK,CAAC,GAAG,EAAE,wBAAwB,CAAC;AAC9C,EAAE;AACF,EAAE,IAAI,IAAI,CAAC,IAAI,GAAG,mBAAmB,EAAE;AACvC,IAAI,MAAM,KAAK,CAAC,GAAG,EAAE,CAAC,2BAA2B,EAAE,mBAAmB,IAAI,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;AAC5F,EAAE;AACF,EAAE,IAAI;AACN,IAAI,MAAM,SAAS,GAAG,IAAI,UAAU,CAAC,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;AAC9D,IAAI,MAAM,UAAU,GAAG,MAAM,oBAAoB,EAAE,CAAC,cAAc,CAAC,GAAG,EAAE,IAAI,EAAE,SAAS,CAAC;AACxF,IAAI,OAAO,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;AAC9C,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,cAAc,CAAC,GAAG,EAAE,wBAAwB,CAAC;AACjD,EAAE;AACF;;;;"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { error, json } from '@sveltejs/kit';
|
|
2
2
|
import { z } from 'zod';
|
|
3
3
|
import { M as MEMBER_ASSIGNABLE_PERMISSIONS, A as ALL_ORG_PERMISSIONS, e as OrgRoleSchema } from './context-DKDYb-He.js';
|
|
4
|
-
import { k as getOrganizationProvider } from './providers.server-
|
|
5
|
-
import { y as requireManageOrgMembers } from './access.server-
|
|
6
|
-
import { t as throwZodError, h as handleApiError } from './api-errors-
|
|
4
|
+
import { k as getOrganizationProvider } from './providers.server-wGknM6CR.js';
|
|
5
|
+
import { y as requireManageOrgMembers } from './access.server-ByXvmWyF.js';
|
|
6
|
+
import { t as throwZodError, h as handleApiError } from './api-errors-C0SWfJj5.js';
|
|
7
7
|
import './shared-server-C3WdcJCQ.js';
|
|
8
8
|
import 'node:url';
|
|
9
9
|
import 'node:path';
|
|
@@ -12,7 +12,7 @@ import 'node:crypto';
|
|
|
12
12
|
import 'node:fs/promises';
|
|
13
13
|
import '@supabase/supabase-js';
|
|
14
14
|
import '@selvajs/compute/core';
|
|
15
|
-
import './utils2-
|
|
15
|
+
import './utils2-BsnrDRob.js';
|
|
16
16
|
|
|
17
17
|
const PERMISSIONS_SCHEMA = z.array(
|
|
18
18
|
z.enum(ALL_ORG_PERMISSIONS)
|
|
@@ -80,4 +80,4 @@ const PATCH = async ({ params, request, locals }) => {
|
|
|
80
80
|
};
|
|
81
81
|
|
|
82
82
|
export { PATCH };
|
|
83
|
-
//# sourceMappingURL=_server.ts-
|
|
83
|
+
//# sourceMappingURL=_server.ts-CtJaazcE.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-CtJaazcE.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/orgs/_orgId_/members/_userId_/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { z } from \"zod\";\nimport { A as ALL_ORG_PERMISSIONS, e as OrgRoleSchema, M as MEMBER_ASSIGNABLE_PERMISSIONS } from \"../../../../../../../chunks/context.js\";\nimport { k as getOrganizationProvider } from \"../../../../../../../chunks/providers.server.js\";\nimport { y as requireManageOrgMembers } from \"../../../../../../../chunks/access.server.js\";\nimport { t as throwZodError, h as handleApiError } from \"../../../../../../../chunks/api-errors.js\";\nconst PERMISSIONS_SCHEMA = z.array(\n z.enum(ALL_ORG_PERMISSIONS)\n);\nconst PatchSchema = z.object({\n role: OrgRoleSchema.optional(),\n permissions: PERMISSIONS_SCHEMA.optional()\n}).refine((b) => b.role !== void 0 || b.permissions !== void 0, {\n message: \"Provide at least one of role, permissions\"\n});\nconst PATCH = async ({ params, request, locals }) => {\n const { orgId, userId } = params;\n if (!orgId || !userId) throw error(400, \"Missing org ID or user ID\");\n requireManageOrgMembers(locals);\n const ctx = locals.ctx;\n if (ctx.actingOrgId !== orgId) {\n throw error(403, \"Acting org does not match the target org.\");\n }\n const body = await request.json().catch(() => null);\n const parsed = PatchSchema.safeParse(body);\n if (!parsed.success) throwZodError(parsed.error);\n const patch = parsed.data;\n const orgs = getOrganizationProvider();\n const [actorMember, target] = await Promise.all([\n orgs.getOrgMember(ctx, orgId, ctx.userId),\n orgs.getOrgMember(ctx, orgId, userId)\n ]);\n if (!target) throw error(404, \"Member not found in this organization.\");\n if (!actorMember) throw error(403, \"You are not a member of this organization.\");\n if (patch.role !== void 0 && patch.role !== target.role) {\n if (actorMember.role !== \"owner\") {\n throw error(403, \"Only the org owner can change roles.\");\n }\n if (target.role === \"owner\" && patch.role !== \"owner\") {\n const page = await orgs.listOrgMembers(ctx, orgId, { limit: 200 });\n const otherOwners = page.items.filter(\n (m) => m.role === \"owner\" && m.userId !== target.userId && !m.deletedAt\n );\n if (otherOwners.length === 0) {\n throw error(\n 409,\n \"Cannot demote the sole owner of this organization. Promote another member to owner first.\"\n );\n }\n }\n await orgs.updateOrgMemberRole(ctx, orgId, userId, patch.role);\n }\n if (patch.permissions !== void 0) {\n const effectiveRole = patch.role ?? target.role;\n const valid = effectiveRole === \"member\" ? new Set(MEMBER_ASSIGNABLE_PERMISSIONS) : new Set(ALL_ORG_PERMISSIONS);\n const invalid = patch.permissions.filter((p) => !valid.has(p));\n if (invalid.length > 0) {\n throw error(\n 400,\n `Permissions [${invalid.join(\", \")}] cannot be assigned to a ${effectiveRole}.`\n );\n }\n try {\n await orgs.updateOrgMemberPermissions(ctx, orgId, userId, patch.permissions);\n } catch (err) {\n handleApiError(err, \"Failed to update permissions\");\n }\n }\n return json({ success: true });\n};\nexport {\n PATCH\n};\n"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { error, json } from '@sveltejs/kit';
|
|
2
|
-
import {
|
|
3
|
-
import { t as requireEditableDefinition } from './access.server-
|
|
4
|
-
import { h as handleApiError, r as resolveServerForOrg, f as fetchSchemaFromCompute, t as throwZodError } from './api-errors-
|
|
2
|
+
import { i as getDefinitionService, n as getProjectProvider } from './providers.server-wGknM6CR.js';
|
|
3
|
+
import { t as requireEditableDefinition } from './access.server-ByXvmWyF.js';
|
|
4
|
+
import { h as handleApiError, r as resolveServerForOrg, f as fetchSchemaFromCompute, t as throwZodError } from './api-errors-C0SWfJj5.js';
|
|
5
5
|
import { G as GH_EXTENSIONS } from './types-DxzJoaA4.js';
|
|
6
6
|
import { G as GuidSchema, U as UpdateMetadataInputSchema } from './context-DKDYb-He.js';
|
|
7
|
-
import { M as MAX_GH_FILE_SIZE } from './computeLimits-
|
|
7
|
+
import { M as MAX_GH_FILE_SIZE } from './computeLimits-5PaWFMYq.js';
|
|
8
8
|
import './shared-server-C3WdcJCQ.js';
|
|
9
9
|
import 'node:url';
|
|
10
10
|
import 'node:path';
|
|
@@ -14,7 +14,7 @@ import 'node:fs/promises';
|
|
|
14
14
|
import '@supabase/supabase-js';
|
|
15
15
|
import 'zod';
|
|
16
16
|
import '@selvajs/compute/core';
|
|
17
|
-
import './utils2-
|
|
17
|
+
import './utils2-BsnrDRob.js';
|
|
18
18
|
|
|
19
19
|
const POST = async ({ params, request, locals }) => {
|
|
20
20
|
const guidParsed = GuidSchema.safeParse(params.guid);
|
|
@@ -40,7 +40,7 @@ const POST = async ({ params, request, locals }) => {
|
|
|
40
40
|
definitionPin: record.computeServerId ?? null
|
|
41
41
|
});
|
|
42
42
|
const schema = await fetchSchemaFromCompute(data, server);
|
|
43
|
-
const version = await
|
|
43
|
+
const version = await getDefinitionService().uploadVersion(
|
|
44
44
|
ctx,
|
|
45
45
|
guidParsed.data,
|
|
46
46
|
data,
|
|
@@ -59,7 +59,7 @@ const DELETE = async ({ params, locals }) => {
|
|
|
59
59
|
if (!guidParsed.success) throw error(400, "Invalid or missing GUID");
|
|
60
60
|
const { ctx } = await requireEditableDefinition(locals, guidParsed.data);
|
|
61
61
|
try {
|
|
62
|
-
await
|
|
62
|
+
await getDefinitionService().delete(ctx, guidParsed.data);
|
|
63
63
|
return json({ success: true });
|
|
64
64
|
} catch (err) {
|
|
65
65
|
handleApiError(err, "Failed to delete definition");
|
|
@@ -73,7 +73,7 @@ const PUT = async ({ params, request, locals }) => {
|
|
|
73
73
|
const parsed = UpdateMetadataInputSchema.safeParse(body);
|
|
74
74
|
if (!parsed.success) throwZodError(parsed.error);
|
|
75
75
|
try {
|
|
76
|
-
await
|
|
76
|
+
await getDefinitionService().updateMeta(ctx, guidParsed.data, parsed.data);
|
|
77
77
|
return json({ success: true });
|
|
78
78
|
} catch (err) {
|
|
79
79
|
handleApiError(err, "Failed to update definition");
|
|
@@ -81,4 +81,4 @@ const PUT = async ({ params, request, locals }) => {
|
|
|
81
81
|
};
|
|
82
82
|
|
|
83
83
|
export { DELETE, POST, PUT };
|
|
84
|
-
//# sourceMappingURL=_server.ts-
|
|
84
|
+
//# sourceMappingURL=_server.ts-CyjVVRiT.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_server.ts-CyjVVRiT.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/definitions/_guid_/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { i as getDefinitionService, n as getProjectProvider } from \"../../../../../chunks/providers.server.js\";\nimport { t as requireEditableDefinition } from \"../../../../../chunks/access.server.js\";\nimport { h as handleApiError, r as resolveServerForOrg, f as fetchSchemaFromCompute, t as throwZodError } from \"../../../../../chunks/api-errors.js\";\nimport { G as GH_EXTENSIONS } from \"../../../../../chunks/types.js\";\nimport { G as GuidSchema, U as UpdateMetadataInputSchema } from \"../../../../../chunks/context.js\";\nimport { M as MAX_GH_FILE_SIZE } from \"../../../../../chunks/computeLimits.js\";\nconst POST = async ({ params, request, locals }) => {\n const guidParsed = GuidSchema.safeParse(params.guid);\n if (!guidParsed.success) throw error(400, \"Invalid or missing GUID\");\n const formData = await request.formData();\n const file = formData.get(\"file\");\n if (!(file instanceof File)) throw error(400, \"A Grasshopper (.gh or .ghx) file is required\");\n const changeNoteRaw = formData.get(\"changeNote\");\n const changeNote = typeof changeNoteRaw === \"string\" ? changeNoteRaw.slice(0, 1e3) : void 0;\n const ext = file.name.slice(file.name.lastIndexOf(\".\")).toLowerCase();\n if (!GH_EXTENSIONS.includes(ext)) {\n throw error(400, `File type not allowed. Allowed: ${GH_EXTENSIONS.join(\", \")}`);\n }\n if (file.size > MAX_GH_FILE_SIZE) {\n throw error(400, `File too large. Max size: ${MAX_GH_FILE_SIZE / (1024 * 1024)} MB`);\n }\n const { ctx, record } = await requireEditableDefinition(locals, guidParsed.data);\n const fileExt = ext.slice(1);\n try {\n const data = new Uint8Array(await file.arrayBuffer());\n const project = await getProjectProvider().getProject(ctx, record.projectId);\n const server = await resolveServerForOrg(ctx, project?.orgId ?? null, {\n definitionPin: record.computeServerId ?? null\n });\n const schema = await fetchSchemaFromCompute(data, server);\n const version = await getDefinitionService().uploadVersion(\n ctx,\n guidParsed.data,\n data,\n fileExt,\n file.name,\n schema,\n changeNote\n );\n return json({ success: true, version });\n } catch (err) {\n handleApiError(err, \"Failed to upload definition version\");\n }\n};\nconst DELETE = async ({ params, locals }) => {\n const guidParsed = GuidSchema.safeParse(params.guid);\n if (!guidParsed.success) throw error(400, \"Invalid or missing GUID\");\n const { ctx } = await requireEditableDefinition(locals, guidParsed.data);\n try {\n await getDefinitionService().delete(ctx, guidParsed.data);\n return json({ success: true });\n } catch (err) {\n handleApiError(err, \"Failed to delete definition\");\n }\n};\nconst PUT = async ({ params, request, locals }) => {\n const guidParsed = GuidSchema.safeParse(params.guid);\n if (!guidParsed.success) throw error(400, \"Invalid or missing GUID\");\n const { ctx } = await requireEditableDefinition(locals, guidParsed.data);\n const body = await request.json().catch(() => null);\n const parsed = UpdateMetadataInputSchema.safeParse(body);\n if (!parsed.success) throwZodError(parsed.error);\n try {\n await getDefinitionService().updateMeta(ctx, guidParsed.data, parsed.data);\n return json({ success: true });\n } catch (err) {\n handleApiError(err, \"Failed to update definition\");\n }\n};\nexport {\n DELETE,\n POST,\n PUT\n};\n"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { error, json } from '@sveltejs/kit';
|
|
2
|
-
import { l as getPermissionStore,
|
|
3
|
-
import { w as requireManageInstanceUsers } from './access.server-
|
|
2
|
+
import { l as getPermissionStore, a as getAuthProvider } from './providers.server-wGknM6CR.js';
|
|
3
|
+
import { w as requireManageInstanceUsers } from './access.server-ByXvmWyF.js';
|
|
4
4
|
import './shared-server-C3WdcJCQ.js';
|
|
5
5
|
import 'node:url';
|
|
6
6
|
import 'node:path';
|
|
@@ -10,9 +10,9 @@ import 'zod';
|
|
|
10
10
|
import 'node:crypto';
|
|
11
11
|
import 'node:fs/promises';
|
|
12
12
|
import '@supabase/supabase-js';
|
|
13
|
-
import './api-errors-
|
|
13
|
+
import './api-errors-C0SWfJj5.js';
|
|
14
14
|
import '@selvajs/compute/core';
|
|
15
|
-
import './utils2-
|
|
15
|
+
import './utils2-BsnrDRob.js';
|
|
16
16
|
|
|
17
17
|
const POST = async ({ params, locals }) => {
|
|
18
18
|
requireManageInstanceUsers(locals);
|
|
@@ -36,4 +36,4 @@ const POST = async ({ params, locals }) => {
|
|
|
36
36
|
};
|
|
37
37
|
|
|
38
38
|
export { POST };
|
|
39
|
-
//# sourceMappingURL=_server.ts-
|
|
39
|
+
//# sourceMappingURL=_server.ts-D0PjwFdv.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-D0PjwFdv.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/api/users/_id_/disable/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { l as getPermissionStore, a as getAuthProvider } from \"../../../../../../../chunks/providers.server.js\";\nimport { w as requireManageInstanceUsers } from \"../../../../../../../chunks/access.server.js\";\nconst POST = async ({ params, locals }) => {\n requireManageInstanceUsers(locals);\n const { id } = params;\n if (!id) throw error(400, \"Missing user ID\");\n const targetPerms = await getPermissionStore().getFor(locals.ctx, id);\n if (targetPerms.includes(\"instance_admin\")) {\n const others = await getPermissionStore().countInstanceAdminsExcluding(locals.ctx, id);\n if (others === 0) {\n throw error(\n 409,\n \"Cannot disable the last instance admin. Promote another user to instance admin first.\"\n );\n }\n }\n const result = await getAuthProvider().disableUser(id);\n if (result === \"not_found\") throw error(404, \"User not found\");\n if (result === \"not_supported\")\n throw error(501, \"Disabling users is not supported by this auth provider\");\n return json({ success: true });\n};\nexport {\n POST\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAGK,MAAC,IAAI,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK;AAC3C,EAAE,0BAA0B,CAAC,MAAM,CAAC;AACpC,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,MAAM;AACvB,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,iBAAiB,CAAC;AAC9C,EAAE,MAAM,WAAW,GAAG,MAAM,kBAAkB,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC;AACvE,EAAE,IAAI,WAAW,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE;AAC9C,IAAI,MAAM,MAAM,GAAG,MAAM,kBAAkB,EAAE,CAAC,4BAA4B,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC;AAC1F,IAAI,IAAI,MAAM,KAAK,CAAC,EAAE;AACtB,MAAM,MAAM,KAAK;AACjB,QAAQ,GAAG;AACX,QAAQ;AACR,OAAO;AACP,IAAI;AACJ,EAAE;AACF,EAAE,MAAM,MAAM,GAAG,MAAM,eAAe,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC;AACxD,EAAE,IAAI,MAAM,KAAK,WAAW,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,gBAAgB,CAAC;AAChE,EAAE,IAAI,MAAM,KAAK,eAAe;AAChC,IAAI,MAAM,KAAK,CAAC,GAAG,EAAE,wDAAwD,CAAC;AAC9E,EAAE,OAAO,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAChC;;;;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { error, redirect } from '@sveltejs/kit';
|
|
2
|
-
import {
|
|
3
|
-
import { b as bootstrapUserSession } from './auth-bootstrap.server-
|
|
2
|
+
import { a as getAuthProvider } from './providers.server-wGknM6CR.js';
|
|
3
|
+
import { b as bootstrapUserSession } from './auth-bootstrap.server-zvPqZ6kt.js';
|
|
4
4
|
import { h as setSessionCookie, f as setRefreshCookie, s as safeRedirectTarget } from './admin-auth.server-45kKyH82.js';
|
|
5
5
|
import './shared-server-C3WdcJCQ.js';
|
|
6
6
|
import 'node:url';
|
|
@@ -30,4 +30,4 @@ const GET = async ({ url, cookies }) => {
|
|
|
30
30
|
};
|
|
31
31
|
|
|
32
32
|
export { GET };
|
|
33
|
-
//# sourceMappingURL=_server.ts-
|
|
33
|
+
//# sourceMappingURL=_server.ts-D7tgGcoB.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-D7tgGcoB.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/auth/supabase/callback/_server.ts.js"],"sourcesContent":["import { error, redirect } from \"@sveltejs/kit\";\nimport { a as getAuthProvider } from \"../../../../../chunks/providers.server.js\";\nimport { b as bootstrapUserSession } from \"../../../../../chunks/auth-bootstrap.server.js\";\nimport { h as setSessionCookie, f as setRefreshCookie, s as safeRedirectTarget } from \"../../../../../chunks/admin-auth.server.js\";\nconst GET = async ({ url, cookies }) => {\n const code = url.searchParams.get(\"code\");\n if (!code) throw error(400, \"Missing authorization code\");\n const oauth = getAuthProvider().oauth;\n if (!oauth) {\n throw error(501, \"OAuth is not supported by the configured auth provider.\");\n }\n const result = await oauth.exchangeOAuthCode(code);\n if (!result) throw error(401, \"OAuth exchange failed\");\n await bootstrapUserSession(result.user);\n setSessionCookie(cookies, result.sessionToken);\n setRefreshCookie(cookies, result.refreshToken);\n const dest = safeRedirectTarget(url.searchParams.get(\"redirectTo\"), \"/library\");\n redirect(303, dest);\n};\nexport {\n GET\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;AAIK,MAAC,GAAG,GAAG,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK;AACxC,EAAE,MAAM,IAAI,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC;AAC3C,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,4BAA4B,CAAC;AAC3D,EAAE,MAAM,KAAK,GAAG,eAAe,EAAE,CAAC,KAAK;AACvC,EAAE,IAAI,CAAC,KAAK,EAAE;AACd,IAAI,MAAM,KAAK,CAAC,GAAG,EAAE,yDAAyD,CAAC;AAC/E,EAAE;AACF,EAAE,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC;AACpD,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,uBAAuB,CAAC;AACxD,EAAE,MAAM,oBAAoB,CAAC,MAAM,CAAC,IAAI,CAAC;AACzC,EAAE,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,YAAY,CAAC;AAChD,EAAE,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,YAAY,CAAC;AAChD,EAAE,MAAM,IAAI,GAAG,kBAAkB,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,UAAU,CAAC;AACjF,EAAE,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC;AACrB;;;;"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { error, json } from '@sveltejs/kit';
|
|
2
2
|
import { z } from 'zod';
|
|
3
3
|
import { randomUUID } from 'node:crypto';
|
|
4
|
-
import { f as flag, k as getOrganizationProvider, n as getProjectProvider, P as ProviderError } from './providers.server-
|
|
5
|
-
import { u as requireInstanceAdmin } from './access.server-
|
|
6
|
-
import { h as handleApiError, t as throwZodError } from './api-errors-
|
|
4
|
+
import { f as flag, k as getOrganizationProvider, n as getProjectProvider, P as ProviderError } from './providers.server-wGknM6CR.js';
|
|
5
|
+
import { u as requireInstanceAdmin } from './access.server-ByXvmWyF.js';
|
|
6
|
+
import { h as handleApiError, t as throwZodError } from './api-errors-C0SWfJj5.js';
|
|
7
7
|
import { s as slugify } from './slug-BGuFQjqe.js';
|
|
8
8
|
import { S as SYSTEM_CONTEXT } from './context-DKDYb-He.js';
|
|
9
9
|
import './shared-server-C3WdcJCQ.js';
|
|
@@ -13,7 +13,7 @@ import 'node:fs';
|
|
|
13
13
|
import 'node:fs/promises';
|
|
14
14
|
import '@supabase/supabase-js';
|
|
15
15
|
import '@selvajs/compute/core';
|
|
16
|
-
import './utils2-
|
|
16
|
+
import './utils2-BsnrDRob.js';
|
|
17
17
|
|
|
18
18
|
const MAX_SLUG_ATTEMPTS = 25;
|
|
19
19
|
function isSlugConflict(err) {
|
|
@@ -102,4 +102,4 @@ const POST = async ({ request, locals }) => {
|
|
|
102
102
|
};
|
|
103
103
|
|
|
104
104
|
export { GET, POST };
|
|
105
|
-
//# sourceMappingURL=_server.ts-
|
|
105
|
+
//# sourceMappingURL=_server.ts-DBV9dA6A.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-DBV9dA6A.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/api/projects/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { z } from \"zod\";\nimport { randomUUID } from \"node:crypto\";\nimport { f as flag, k as getOrganizationProvider, n as getProjectProvider, P as ProviderError } from \"../../../../../chunks/providers.server.js\";\nimport { u as requireInstanceAdmin } from \"../../../../../chunks/access.server.js\";\nimport { h as handleApiError, t as throwZodError } from \"../../../../../chunks/api-errors.js\";\nimport { s as slugify } from \"../../../../../chunks/slug.js\";\nimport { S as SYSTEM_CONTEXT } from \"../../../../../chunks/context.js\";\nconst MAX_SLUG_ATTEMPTS = 25;\nfunction isSlugConflict(err) {\n return err instanceof ProviderError && err.statusCode === 409 && /projects_org_id_slug_key/.test(err.message);\n}\nfunction isNameConflict(err) {\n return err instanceof ProviderError && err.statusCode === 409 && /projects_org_name_unique/.test(err.message);\n}\nconst CreatePlatformProjectBody = z.object({\n name: z.string().min(1, \"Project name is required\").max(128).trim(),\n description: z.string().max(2e3).optional(),\n /**\n * Org that physically hosts the project. Storage routing and compute\n * resolution use this — but org membership in this org does NOT grant\n * access. Visibility = 'platform' overrides those defaults.\n *\n * If omitted, the platform admin's first available org is used.\n */\n orgId: z.string().uuid().optional()\n});\nconst GET = async ({ locals }) => {\n requireInstanceAdmin(locals);\n if (!flag(\"ENABLE_PLATFORM_PROJECTS\")) throw error(404, \"Not found\");\n try {\n const orgs = await getOrganizationProvider().listOrgs(SYSTEM_CONTEXT, { limit: 1e3 });\n const all = [];\n for (const org of orgs.items) {\n const page = await getProjectProvider().listProjects(SYSTEM_CONTEXT, org.id, {\n limit: 1e3\n });\n for (const p of page.items) {\n if (p.visibility === \"platform\") all.push(p);\n }\n }\n return json({ projects: all });\n } catch (err) {\n handleApiError(err, \"Failed to list platform projects\");\n }\n};\nconst POST = async ({ request, locals }) => {\n const user = requireInstanceAdmin(locals);\n if (!flag(\"ENABLE_PLATFORM_PROJECTS\")) throw error(404, \"Not found\");\n const ctx = locals.ctx;\n const body = await request.json().catch(() => null);\n const parsed = CreatePlatformProjectBody.safeParse(body);\n if (!parsed.success) throwZodError(parsed.error);\n const hostOrgId = parsed.data.orgId ?? ctx.actingOrgId;\n if (!hostOrgId) {\n throw error(400, \"A host orgId is required (no active organization in context).\");\n }\n const hostOrg = await getOrganizationProvider().getOrg(SYSTEM_CONTEXT, hostOrgId);\n if (!hostOrg) throw error(400, `Host organization '${hostOrgId}' not found.`);\n const projectStore = getProjectProvider();\n const baseSlug = slugify(parsed.data.name) || \"platform-project\";\n const now = (/* @__PURE__ */ new Date()).toISOString();\n const projectId = randomUUID();\n for (let attempt = 0; attempt < MAX_SLUG_ATTEMPTS; attempt++) {\n const slug = attempt === 0 ? baseSlug : `${baseSlug}-${attempt + 1}`;\n const project = {\n id: projectId,\n orgId: hostOrgId,\n name: parsed.data.name,\n slug,\n description: parsed.data.description,\n visibility: \"platform\",\n ownerId: user.id,\n createdBy: user.id,\n updatedBy: user.id,\n autoJoinOnUpload: false,\n createdAt: now,\n updatedAt: now,\n deletedAt: null\n };\n try {\n await projectStore.createProject(SYSTEM_CONTEXT, project);\n return json(project, { status: 201 });\n } catch (err) {\n if (isNameConflict(err)) {\n throw error(409, \"A project with that name already exists in the host organization.\");\n }\n if (isSlugConflict(err)) continue;\n handleApiError(err, \"Failed to create platform project\");\n }\n }\n throw error(409, \"Could not pick a unique project slug after several attempts.\");\n};\nexport {\n GET,\n POST\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAQA,MAAM,iBAAiB,GAAG,EAAE;AAC5B,SAAS,cAAc,CAAC,GAAG,EAAE;AAC7B,EAAE,OAAO,GAAG,YAAY,aAAa,IAAI,GAAG,CAAC,UAAU,KAAK,GAAG,IAAI,0BAA0B,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC;AAC/G;AACA,SAAS,cAAc,CAAC,GAAG,EAAE;AAC7B,EAAE,OAAO,GAAG,YAAY,aAAa,IAAI,GAAG,CAAC,UAAU,KAAK,GAAG,IAAI,0BAA0B,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC;AAC/G;AACA,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;AAC3C,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,0BAA0B,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE;AACrE,EAAE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ;AACnC,CAAC,CAAC;AACG,MAAC,GAAG,GAAG,OAAO,EAAE,MAAM,EAAE,KAAK;AAClC,EAAE,oBAAoB,CAAC,MAAM,CAAC;AAC9B,EAAE,IAAI,CAAC,IAAI,CAAC,0BAA0B,CAAC,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,WAAW,CAAC;AACtE,EAAE,IAAI;AACN,IAAI,MAAM,IAAI,GAAG,MAAM,uBAAuB,EAAE,CAAC,QAAQ,CAAC,cAAc,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;AACzF,IAAI,MAAM,GAAG,GAAG,EAAE;AAClB,IAAI,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,KAAK,EAAE;AAClC,MAAM,MAAM,IAAI,GAAG,MAAM,kBAAkB,EAAE,CAAC,YAAY,CAAC,cAAc,EAAE,GAAG,CAAC,EAAE,EAAE;AACnF,QAAQ,KAAK,EAAE;AACf,OAAO,CAAC;AACR,MAAM,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE;AAClC,QAAQ,IAAI,CAAC,CAAC,UAAU,KAAK,UAAU,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;AACpD,MAAM;AACN,IAAI;AACJ,IAAI,OAAO,IAAI,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC;AAClC,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,cAAc,CAAC,GAAG,EAAE,kCAAkC,CAAC;AAC3D,EAAE;AACF;AACK,MAAC,IAAI,GAAG,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK;AAC5C,EAAE,MAAM,IAAI,GAAG,oBAAoB,CAAC,MAAM,CAAC;AAC3C,EAAE,IAAI,CAAC,IAAI,CAAC,0BAA0B,CAAC,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,WAAW,CAAC;AACtE,EAAE,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG;AACxB,EAAE,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC;AACrD,EAAE,MAAM,MAAM,GAAG,yBAAyB,CAAC,SAAS,CAAC,IAAI,CAAC;AAC1D,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC;AAClD,EAAE,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI,GAAG,CAAC,WAAW;AACxD,EAAE,IAAI,CAAC,SAAS,EAAE;AAClB,IAAI,MAAM,KAAK,CAAC,GAAG,EAAE,+DAA+D,CAAC;AACrF,EAAE;AACF,EAAE,MAAM,OAAO,GAAG,MAAM,uBAAuB,EAAE,CAAC,MAAM,CAAC,cAAc,EAAE,SAAS,CAAC;AACnF,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,CAAC,mBAAmB,EAAE,SAAS,CAAC,YAAY,CAAC,CAAC;AAC/E,EAAE,MAAM,YAAY,GAAG,kBAAkB,EAAE;AAC3C,EAAE,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,kBAAkB;AAClE,EAAE,MAAM,GAAG,GAAG,iBAAiB,IAAI,IAAI,EAAE,EAAE,WAAW,EAAE;AACxD,EAAE,MAAM,SAAS,GAAG,UAAU,EAAE;AAChC,EAAE,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,iBAAiB,EAAE,OAAO,EAAE,EAAE;AAChE,IAAI,MAAM,IAAI,GAAG,OAAO,KAAK,CAAC,GAAG,QAAQ,GAAG,CAAC,EAAE,QAAQ,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC;AACxE,IAAI,MAAM,OAAO,GAAG;AACpB,MAAM,EAAE,EAAE,SAAS;AACnB,MAAM,KAAK,EAAE,SAAS;AACtB,MAAM,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI;AAC5B,MAAM,IAAI;AACV,MAAM,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW;AAC1C,MAAM,UAAU,EAAE,UAAU;AAC5B,MAAM,OAAO,EAAE,IAAI,CAAC,EAAE;AACtB,MAAM,SAAS,EAAE,IAAI,CAAC,EAAE;AACxB,MAAM,SAAS,EAAE,IAAI,CAAC,EAAE;AACxB,MAAM,gBAAgB,EAAE,KAAK;AAC7B,MAAM,SAAS,EAAE,GAAG;AACpB,MAAM,SAAS,EAAE,GAAG;AACpB,MAAM,SAAS,EAAE;AACjB,KAAK;AACL,IAAI,IAAI;AACR,MAAM,MAAM,YAAY,CAAC,aAAa,CAAC,cAAc,EAAE,OAAO,CAAC;AAC/D,MAAM,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AAC3C,IAAI,CAAC,CAAC,OAAO,GAAG,EAAE;AAClB,MAAM,IAAI,cAAc,CAAC,GAAG,CAAC,EAAE;AAC/B,QAAQ,MAAM,KAAK,CAAC,GAAG,EAAE,mEAAmE,CAAC;AAC7F,MAAM;AACN,MAAM,IAAI,cAAc,CAAC,GAAG,CAAC,EAAE;AAC/B,MAAM,cAAc,CAAC,GAAG,EAAE,mCAAmC,CAAC;AAC9D,IAAI;AACJ,EAAE;AACF,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,8DAA8D,CAAC;AAClF;;;;"}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { TreeBuilder, GrasshopperClient } from '@selvajs/compute';
|
|
2
|
-
import { error,
|
|
3
|
-
import { r as resolveServerForOrg, f as fetchSchemaFromCompute, C as ComputeServerUnconfiguredError } from './api-errors-
|
|
4
|
-
import {
|
|
2
|
+
import { error, isHttpError } from '@sveltejs/kit';
|
|
3
|
+
import { r as resolveServerForOrg, f as fetchSchemaFromCompute, C as ComputeServerUnconfiguredError } from './api-errors-C0SWfJj5.js';
|
|
4
|
+
import { c as MAX_SOLVE_DURATION_MS, a as COMPUTE_RESPONSE_MAX_BYTES, D as DEFINITION_CACHE_TTL_MS, e as REMOTE_DEFINITION_FETCH_TIMEOUT_MS, f as REMOTE_DEFINITION_MAX_BYTES, d as RATE_LIMIT_WINDOW_MS, R as RATE_LIMIT_MAX_REQUESTS, C as COMPUTE_REQUEST_MAX_BYTES } from './computeLimits-5PaWFMYq.js';
|
|
5
5
|
import { e as requireMaxBodySize } from './admin-auth.server-45kKyH82.js';
|
|
6
|
-
import { o as getStorageProvider,
|
|
7
|
-
import { k as requireCanEditDefinition, q as requireCanSolve } from './access.server-
|
|
8
|
-
import { t as tryResolveShareToken } from './resolve.server-
|
|
6
|
+
import { o as getStorageProvider, t as providers } from './providers.server-wGknM6CR.js';
|
|
7
|
+
import { k as requireCanEditDefinition, q as requireCanSolve } from './access.server-ByXvmWyF.js';
|
|
8
|
+
import { t as tryResolveShareToken } from './resolve.server-CvfANFCn.js';
|
|
9
9
|
import './context-DKDYb-He.js';
|
|
10
10
|
import 'zod';
|
|
11
11
|
import '@selvajs/compute/core';
|
|
12
|
-
import './utils2-
|
|
12
|
+
import './utils2-BsnrDRob.js';
|
|
13
13
|
import './shared-server-C3WdcJCQ.js';
|
|
14
14
|
import 'node:url';
|
|
15
15
|
import 'node:path';
|
|
@@ -288,7 +288,27 @@ const POST = async ({ request, locals, url }) => {
|
|
|
288
288
|
}
|
|
289
289
|
throw err;
|
|
290
290
|
}
|
|
291
|
-
|
|
291
|
+
let serialized;
|
|
292
|
+
try {
|
|
293
|
+
serialized = JSON.stringify(solvedDefinition);
|
|
294
|
+
} catch (err) {
|
|
295
|
+
if (err instanceof RangeError) {
|
|
296
|
+
throw error(
|
|
297
|
+
413,
|
|
298
|
+
"Solve result is too large to return. This usually means a file output exceeds the supported size."
|
|
299
|
+
);
|
|
300
|
+
}
|
|
301
|
+
throw err;
|
|
302
|
+
}
|
|
303
|
+
if (serialized.length > COMPUTE_RESPONSE_MAX_BYTES) {
|
|
304
|
+
throw error(
|
|
305
|
+
413,
|
|
306
|
+
"Solve result is too large to return. This usually means a file output exceeds the supported size."
|
|
307
|
+
);
|
|
308
|
+
}
|
|
309
|
+
return new Response(serialized, {
|
|
310
|
+
headers: { "Content-Type": "application/json" }
|
|
311
|
+
});
|
|
292
312
|
} catch (err) {
|
|
293
313
|
if (isHttpError(err)) throw err;
|
|
294
314
|
if (err instanceof ComputeServerUnconfiguredError) {
|
|
@@ -304,4 +324,4 @@ const POST = async ({ request, locals, url }) => {
|
|
|
304
324
|
};
|
|
305
325
|
|
|
306
326
|
export { POST };
|
|
307
|
-
//# sourceMappingURL=_server.ts-
|
|
327
|
+
//# sourceMappingURL=_server.ts-DLUA6_Lf.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_server.ts-DLUA6_Lf.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/compute/_server.ts.js"],"sourcesContent":["import { TreeBuilder, GrasshopperClient } from \"@selvajs/compute\";\nimport { error, isHttpError } from \"@sveltejs/kit\";\nimport { r as resolveServerForOrg, f as fetchSchemaFromCompute, C as ComputeServerUnconfiguredError } from \"../../../../chunks/api-errors.js\";\nimport { d as RATE_LIMIT_WINDOW_MS, R as RATE_LIMIT_MAX_REQUESTS, c as MAX_SOLVE_DURATION_MS, a as COMPUTE_RESPONSE_MAX_BYTES, D as DEFINITION_CACHE_TTL_MS, e as REMOTE_DEFINITION_FETCH_TIMEOUT_MS, f as REMOTE_DEFINITION_MAX_BYTES, C as COMPUTE_REQUEST_MAX_BYTES } from \"../../../../chunks/computeLimits.js\";\nimport { e as requireMaxBodySize } from \"../../../../chunks/admin-auth.server.js\";\nimport { o as getStorageProvider, t as providers } from \"../../../../chunks/providers.server.js\";\nimport { k as requireCanEditDefinition, q as requireCanSolve } from \"../../../../chunks/access.server.js\";\nimport { t as tryResolveShareToken } from \"../../../../chunks/resolve.server.js\";\nfunction isSafeRemoteDefinitionUrl(raw) {\n let parsed;\n try {\n parsed = new URL(raw);\n } catch {\n return false;\n }\n if (parsed.protocol !== \"http:\" && parsed.protocol !== \"https:\") return false;\n const host = parsed.hostname.toLowerCase();\n if (!host) return false;\n if (host === \"localhost\" || host === \"0.0.0.0\" || host.endsWith(\".localhost\")) return false;\n if (host === \"::1\" || host === \"[::1]\") return false;\n if (/^127\\./.test(host)) return false;\n if (/^10\\./.test(host)) return false;\n if (/^192\\.168\\./.test(host)) return false;\n if (/^172\\.(1[6-9]|2[0-9]|3[0-1])\\./.test(host)) return false;\n if (/^169\\.254\\./.test(host)) return false;\n if (/^\\[?(fc|fd)[0-9a-f]{2}:/i.test(host)) return false;\n if (/^\\[?fe[89ab][0-9a-f]:/i.test(host)) return false;\n return true;\n}\nconst WINDOW_MS = RATE_LIMIT_WINDOW_MS;\nconst MAX_PER_WINDOW = RATE_LIMIT_MAX_REQUESTS;\nconst buckets = /* @__PURE__ */ new Map();\nfunction checkComputeRateLimit(key) {\n const now = Date.now();\n const entry = buckets.get(key);\n if (!entry || now > entry.resetAt) {\n buckets.set(key, { count: 1, resetAt: now + WINDOW_MS });\n return { allowed: true };\n }\n if (entry.count >= MAX_PER_WINDOW) {\n return { allowed: false, retryAfter: Math.ceil((entry.resetAt - now) / 1e3) };\n }\n entry.count += 1;\n return { allowed: true };\n}\nconst definitionCache = /* @__PURE__ */ new Map();\nlet cachedClient = null;\nlet cachedScheduler = null;\nlet cachedClientConfig = null;\nasync function getClient(serverConfig) {\n const currentConfig = {\n serverUrl: serverConfig.serverUrl,\n apiKey: serverConfig.apiKey\n };\n if (cachedClient && cachedScheduler && cachedClientConfig && cachedClientConfig.serverUrl === currentConfig.serverUrl && cachedClientConfig.apiKey === currentConfig.apiKey) {\n return { client: cachedClient, scheduler: cachedScheduler };\n }\n cachedScheduler?.dispose();\n cachedClient = await GrasshopperClient.create({\n serverUrl: currentConfig.serverUrl,\n apiKey: currentConfig.apiKey\n });\n cachedScheduler = cachedClient.createScheduler({\n mode: \"queue\",\n timeoutMs: MAX_SOLVE_DURATION_MS,\n cache: { maxEntries: 20, ttlMs: 5 * 6e4 }\n });\n cachedClientConfig = currentConfig;\n return { client: cachedClient, scheduler: cachedScheduler };\n}\nasync function loadRemoteDefinition(url) {\n if (!isSafeRemoteDefinitionUrl(url)) {\n throw new Error(\"Remote definition URL is not allowed\");\n }\n const now = Date.now();\n const cached = definitionCache.get(url);\n if (cached && now - cached.fetchedAt < DEFINITION_CACHE_TTL_MS) {\n return cached.data;\n }\n const controller = new AbortController();\n const timeout = setTimeout(() => controller.abort(), REMOTE_DEFINITION_FETCH_TIMEOUT_MS);\n let data;\n try {\n const response = await fetch(url, {\n signal: controller.signal,\n redirect: \"error\"\n });\n if (!response.ok) {\n throw new Error(`HTTP ${response.status}: ${response.statusText}`);\n }\n const declared = Number(response.headers.get(\"content-length\"));\n if (Number.isFinite(declared) && declared > REMOTE_DEFINITION_MAX_BYTES) {\n throw new Error(\"Remote definition exceeds size limit\");\n }\n const buffer = await response.arrayBuffer();\n if (buffer.byteLength > REMOTE_DEFINITION_MAX_BYTES) {\n throw new Error(\"Remote definition exceeds size limit\");\n }\n data = new Uint8Array(buffer);\n } finally {\n clearTimeout(timeout);\n }\n definitionCache.set(url, { data, fetchedAt: now });\n if (definitionCache.size > 50) {\n const entries = Array.from(definitionCache.entries());\n entries.sort((a, b) => a[1].fetchedAt - b[1].fetchedAt);\n for (let i = 0; i < 10; i++) {\n definitionCache.delete(entries[i][0]);\n }\n }\n return data;\n}\nfunction transformInputParameter(input, value) {\n const base = {\n description: input.description || \"\",\n name: input.nickname,\n nickname: input.nickname || null,\n id: input.id\n };\n if (input.paramType === \"number\" || input.paramType === \"integer\") {\n return {\n ...base,\n paramType: input.paramType === \"integer\" ? \"Integer\" : \"Number\",\n minimum: input.minimum,\n maximum: input.maximum,\n stepSize: input.paramType === \"integer\" ? 1 : input.stepSize,\n default: value ?? input.default\n };\n } else if (input.paramType === \"text\") {\n return {\n ...base,\n paramType: \"Text\",\n default: value ?? input.default ?? \"\"\n };\n } else if (input.paramType === \"boolean\") {\n return {\n ...base,\n paramType: \"Boolean\",\n default: value ?? input.default ?? false\n };\n }\n return {\n ...base,\n paramType: \"Text\",\n default: value ?? \"\"\n };\n}\nconst POST = async ({ request, locals, url }) => {\n const storage = getStorageProvider();\n requireMaxBodySize(request, COMPUTE_REQUEST_MAX_BYTES);\n try {\n const body = await request.json();\n const { inputs, values } = body;\n const definitionUrl = body.definitionUrl;\n const channel = body.channel ?? \"live\";\n if (!inputs || !values || !definitionUrl) {\n throw error(400, \"Missing required fields: inputs, values, or definitionUrl\");\n }\n if (channel !== \"live\" && channel !== \"draft\") {\n throw error(400, `Invalid channel: ${channel}. Must be 'live' or 'draft'.`);\n }\n let definitionSource;\n let localVersionForBackfill = null;\n let solveOrgId = null;\n let definitionPin = null;\n const isLocal = definitionUrl.startsWith(\"local:\");\n const guid = isLocal ? definitionUrl.substring(6) : null;\n const sharedAccess = isLocal && guid ? await tryResolveShareToken(request, url, guid, channel, { requireSolve: true }) : null;\n if (!sharedAccess && (!locals.ctx || !locals.user)) {\n throw error(401, \"Unauthorized\");\n }\n const solveCtx = sharedAccess?.ctx ?? locals.ctx;\n const rateLimitKey = sharedAccess ? `share:${sharedAccess.link.id}` : `user:${locals.user.id}`;\n const rateLimit = checkComputeRateLimit(rateLimitKey);\n if (!rateLimit.allowed) {\n const retryAfter = rateLimit.retryAfter ?? 1;\n return new Response(\n JSON.stringify({\n message: `Too many compute requests. Retry in ${retryAfter}s.`,\n retryAfter\n }),\n {\n status: 429,\n headers: {\n \"Content-Type\": \"application/json\",\n \"Retry-After\": String(retryAfter)\n }\n }\n );\n }\n if (isLocal && guid) {\n let record;\n try {\n record = await providers.data.definitions.get(solveCtx, guid);\n } catch (err) {\n console.error(`Failed to load local definition: ${guid}`, err);\n throw error(404, `Definition '${guid}' not found`);\n }\n if (!record) throw error(404, `Definition '${guid}' not found`);\n const project = await providers.data.projects.getProject(solveCtx, record.projectId);\n solveOrgId = project?.orgId ?? null;\n definitionPin = record.computeServerId ?? null;\n if (!sharedAccess) {\n if (channel === \"draft\") {\n await requireCanEditDefinition(locals, record.projectId, guid);\n } else {\n await requireCanSolve(locals, record.projectId);\n }\n }\n const versionId = channel === \"live\" ? record.liveVersionId : record.draftVersionId;\n if (!versionId) {\n throw error(404, `Definition '${guid}' has no ${channel} version yet`);\n }\n const version = await providers.data.definitions.getVersion(solveCtx, versionId);\n if (!version || version.definitionId !== guid) {\n throw error(404, `Definition '${guid}' ${channel} version is missing`);\n }\n localVersionForBackfill = { id: version.id, hasSchema: version.schema !== void 0 };\n try {\n const bytes = await storage.get(version.fileKey);\n if (!bytes) throw new Error(`Version blob missing: ${version.fileKey}`);\n definitionSource = bytes;\n } catch (err) {\n console.error(`Failed to load local definition blob: ${guid}`, err);\n throw error(404, `Definition '${guid}' not found`);\n }\n } else {\n try {\n definitionSource = await loadRemoteDefinition(definitionUrl);\n } catch (err) {\n console.error(`Failed to fetch definition from ${definitionUrl}:`, err);\n throw error(\n 400,\n `Failed to load definition: ${err instanceof Error ? err.message : String(err)}`\n );\n }\n }\n const inputTree = TreeBuilder.fromInputParams(\n inputs.filter((input) => input.paramType).map((input) => transformInputParameter(input, values[input.id]))\n );\n if (sharedAccess) {\n const next = await providers.data.shareLinks.tryIncrementSolveCount(\n solveCtx,\n sharedAccess.link.id\n );\n if (next === null) {\n throw error(429, \"Share link solve cap reached.\");\n }\n }\n const serverConfig = await resolveServerForOrg(solveCtx, solveOrgId, { definitionPin });\n if (localVersionForBackfill && !localVersionForBackfill.hasSchema) {\n const versionId = localVersionForBackfill.id;\n try {\n const schema = await fetchSchemaFromCompute(definitionSource, serverConfig);\n await providers.data.definitions.setVersionSchema(solveCtx, versionId, schema);\n } catch (err) {\n console.warn(`[API/Compute] Schema backfill failed for version ${versionId}:`, err);\n }\n }\n const { scheduler } = await getClient(serverConfig);\n let solvedDefinition;\n try {\n solvedDefinition = await scheduler.solve(definitionSource, inputTree, {\n signal: request.signal\n });\n } catch (err) {\n if (err instanceof Error && err.name === \"AbortError\") {\n if (request.signal.aborted) {\n throw error(499, \"Client closed request\");\n }\n throw error(\n 504,\n `Solve exceeded the ${Math.round(MAX_SOLVE_DURATION_MS / 1e3)}s deadline.`\n );\n }\n throw err;\n }\n let serialized;\n try {\n serialized = JSON.stringify(solvedDefinition);\n } catch (err) {\n if (err instanceof RangeError) {\n throw error(\n 413,\n \"Solve result is too large to return. This usually means a file output exceeds the supported size.\"\n );\n }\n throw err;\n }\n if (serialized.length > COMPUTE_RESPONSE_MAX_BYTES) {\n throw error(\n 413,\n \"Solve result is too large to return. This usually means a file output exceeds the supported size.\"\n );\n }\n return new Response(serialized, {\n headers: { \"Content-Type\": \"application/json\" }\n });\n } catch (err) {\n if (isHttpError(err)) throw err;\n if (err instanceof ComputeServerUnconfiguredError) {\n throw error(503, err.message);\n }\n const message = err instanceof Error ? err.message : \"Unknown error\";\n console.error(\"[API/Compute] Error:\", message);\n if (err instanceof TypeError && message === \"fetch failed\") {\n throw error(503, \"Compute server is unreachable\");\n }\n throw error(500, message);\n }\n};\nexport {\n POST\n};\n"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { error, json } from '@sveltejs/kit';
|
|
2
2
|
import { z } from 'zod';
|
|
3
3
|
import { randomUUID } from 'node:crypto';
|
|
4
|
-
import { n as getProjectProvider, P as ProviderError } from './providers.server-
|
|
5
|
-
import { j as requireCanCreateProject } from './access.server-
|
|
6
|
-
import { h as handleApiError, t as throwZodError } from './api-errors-
|
|
4
|
+
import { n as getProjectProvider, P as ProviderError } from './providers.server-wGknM6CR.js';
|
|
5
|
+
import { j as requireCanCreateProject } from './access.server-ByXvmWyF.js';
|
|
6
|
+
import { h as handleApiError, t as throwZodError } from './api-errors-C0SWfJj5.js';
|
|
7
7
|
import { s as slugify } from './slug-BGuFQjqe.js';
|
|
8
8
|
import { g as ProjectVisibilitySchema } from './context-DKDYb-He.js';
|
|
9
9
|
import './shared-server-C3WdcJCQ.js';
|
|
@@ -13,7 +13,7 @@ import 'node:fs';
|
|
|
13
13
|
import 'node:fs/promises';
|
|
14
14
|
import '@supabase/supabase-js';
|
|
15
15
|
import '@selvajs/compute/core';
|
|
16
|
-
import './utils2-
|
|
16
|
+
import './utils2-BsnrDRob.js';
|
|
17
17
|
|
|
18
18
|
const MAX_SLUG_ATTEMPTS = 25;
|
|
19
19
|
function isSlugConflict(err) {
|
|
@@ -85,4 +85,4 @@ const POST = async ({ request, locals }) => {
|
|
|
85
85
|
};
|
|
86
86
|
|
|
87
87
|
export { GET, POST };
|
|
88
|
-
//# sourceMappingURL=_server.ts-
|
|
88
|
+
//# sourceMappingURL=_server.ts-DM01ishT.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-DM01ishT.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/projects/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { z } from \"zod\";\nimport { randomUUID } from \"node:crypto\";\nimport { n as getProjectProvider, P as ProviderError } from \"../../../../chunks/providers.server.js\";\nimport { j as requireCanCreateProject } from \"../../../../chunks/access.server.js\";\nimport { h as handleApiError, t as throwZodError } from \"../../../../chunks/api-errors.js\";\nimport { s as slugify } from \"../../../../chunks/slug.js\";\nimport { g as ProjectVisibilitySchema } from \"../../../../chunks/context.js\";\nconst MAX_SLUG_ATTEMPTS = 25;\nfunction isSlugConflict(err) {\n return err instanceof ProviderError && err.statusCode === 409 && /projects_org_id_slug_key/.test(err.message);\n}\nfunction isNameConflict(err) {\n return err instanceof ProviderError && err.statusCode === 409 && /projects_org_name_unique/.test(err.message);\n}\nconst CreateProjectBody = z.object({\n name: z.string().min(1, \"Project name is required\").max(128).trim(),\n description: z.string().max(2e3).optional(),\n visibility: ProjectVisibilitySchema.default(\"private\"),\n autoJoinOnUpload: z.boolean().optional()\n});\nconst GET = async ({ locals }) => {\n const ctx = locals.ctx;\n if (!ctx.actingOrgId) throw error(400, \"No active organization\");\n try {\n const page = await getProjectProvider().listProjects(ctx, ctx.actingOrgId, { limit: 200 });\n return json({ projects: page.items });\n } catch (err) {\n handleApiError(err, \"Failed to load projects\");\n }\n};\nconst POST = async ({ request, locals }) => {\n const ctx = locals.ctx;\n if (!ctx.actingOrgId) throw error(400, \"No active organization\");\n await requireCanCreateProject(locals, ctx.actingOrgId);\n const body = await request.json().catch(() => null);\n const parsed = CreateProjectBody.safeParse(body);\n if (!parsed.success) throwZodError(parsed.error);\n const autoJoinOnUpload = parsed.data.autoJoinOnUpload ?? false;\n if (autoJoinOnUpload && parsed.data.visibility !== \"public\") {\n throw error(400, \"autoJoinOnUpload requires visibility=public\");\n }\n const projectStore = getProjectProvider();\n const baseSlug = slugify(parsed.data.name) || \"project\";\n const now = (/* @__PURE__ */ new Date()).toISOString();\n const projectId = randomUUID();\n for (let attempt = 0; attempt < MAX_SLUG_ATTEMPTS; attempt++) {\n const slug = attempt === 0 ? baseSlug : `${baseSlug}-${attempt + 1}`;\n const project = {\n id: projectId,\n orgId: ctx.actingOrgId,\n name: parsed.data.name,\n slug,\n description: parsed.data.description,\n visibility: parsed.data.visibility,\n ownerId: locals.user.id,\n createdBy: locals.user.id,\n updatedBy: locals.user.id,\n autoJoinOnUpload,\n createdAt: now,\n updatedAt: now,\n deletedAt: null\n };\n try {\n await projectStore.createProject(ctx, project);\n return json(project, { status: 201 });\n } catch (err) {\n if (isNameConflict(err)) {\n throw error(409, \"A project with that name already exists in this organization.\");\n }\n if (isSlugConflict(err)) continue;\n handleApiError(err, \"Failed to create project\");\n }\n }\n throw error(409, \"Could not pick a unique project slug after several attempts.\");\n};\nexport {\n GET,\n POST\n};\n"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { error, json } from '@sveltejs/kit';
|
|
2
2
|
import { z } from 'zod';
|
|
3
|
-
import { l as getPermissionStore,
|
|
4
|
-
import { w as requireManageInstanceUsers } from './access.server-
|
|
5
|
-
import { t as throwZodError } from './api-errors-
|
|
3
|
+
import { l as getPermissionStore, a as getAuthProvider, e as getDataProvider, k as getOrganizationProvider } from './providers.server-wGknM6CR.js';
|
|
4
|
+
import { w as requireManageInstanceUsers } from './access.server-ByXvmWyF.js';
|
|
5
|
+
import { t as throwZodError } from './api-errors-C0SWfJj5.js';
|
|
6
6
|
import { S as SYSTEM_CONTEXT, j as hasPermission, D as DEFAULT_ORG_PERMISSIONS, M as MEMBER_ASSIGNABLE_PERMISSIONS, P as PlatformPermissionSchema, d as OrgPermissionSchema } from './context-DKDYb-He.js';
|
|
7
7
|
import { s as splitFlatPermissions } from './permissions-compat.server-BDkKxDeZ.js';
|
|
8
|
-
import { s as setUserPlatformPermissions } from './permissions.server-
|
|
8
|
+
import { s as setUserPlatformPermissions } from './permissions.server-7AwAAkY9.js';
|
|
9
9
|
import './shared-server-C3WdcJCQ.js';
|
|
10
10
|
import 'node:url';
|
|
11
11
|
import 'node:path';
|
|
@@ -14,7 +14,7 @@ import 'node:crypto';
|
|
|
14
14
|
import 'node:fs/promises';
|
|
15
15
|
import '@supabase/supabase-js';
|
|
16
16
|
import '@selvajs/compute/core';
|
|
17
|
-
import './utils2-
|
|
17
|
+
import './utils2-BsnrDRob.js';
|
|
18
18
|
|
|
19
19
|
const FlatPermissionSchema = z.union([PlatformPermissionSchema, OrgPermissionSchema]);
|
|
20
20
|
const UpdatePermissionsBody = z.object({
|
|
@@ -93,4 +93,4 @@ const DELETE = async ({ params, locals }) => {
|
|
|
93
93
|
};
|
|
94
94
|
|
|
95
95
|
export { DELETE, PATCH };
|
|
96
|
-
//# sourceMappingURL=_server.ts-
|
|
96
|
+
//# sourceMappingURL=_server.ts-DNeVKrs8.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-DNeVKrs8.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/api/users/_id_/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { z } from \"zod\";\nimport { l as getPermissionStore, a as getAuthProvider, e as getDataProvider, k as getOrganizationProvider } from \"../../../../../../chunks/providers.server.js\";\nimport { w as requireManageInstanceUsers } from \"../../../../../../chunks/access.server.js\";\nimport { t as throwZodError } from \"../../../../../../chunks/api-errors.js\";\nimport { P as PlatformPermissionSchema, d as OrgPermissionSchema, S as SYSTEM_CONTEXT, j as hasPermission, D as DEFAULT_ORG_PERMISSIONS, M as MEMBER_ASSIGNABLE_PERMISSIONS } from \"../../../../../../chunks/context.js\";\nimport { s as splitFlatPermissions } from \"../../../../../../chunks/permissions-compat.server.js\";\nimport { s as setUserPlatformPermissions } from \"../../../../../../chunks/permissions.server.js\";\nconst FlatPermissionSchema = z.union([PlatformPermissionSchema, OrgPermissionSchema]);\nconst UpdatePermissionsBody = z.object({\n permissions: z.array(FlatPermissionSchema)\n});\nconst PATCH = async ({ params, request, locals }) => {\n requireManageInstanceUsers(locals);\n const { id } = params;\n if (!id) throw error(400, \"Missing user ID\");\n const body = await request.json().catch(() => null);\n const parsed = UpdatePermissionsBody.safeParse(body);\n if (!parsed.success) throwZodError(parsed.error);\n const { platform, org } = splitFlatPermissions(parsed.data.permissions);\n const existingPlatform = await getPermissionStore().getFor(locals.ctx, id);\n const platformChanged = platform.length !== existingPlatform.length || platform.some((p) => !existingPlatform.includes(p)) || existingPlatform.some((p) => !platform.includes(p));\n if (platformChanged && !hasPermission(locals.ctx, \"instance_admin\")) {\n throw error(403, \"Only a platform admin can change platform-scope permissions\");\n }\n const platformResult = await setUserPlatformPermissions(locals.ctx, id, platform);\n if (platformResult === \"not_found\") throw error(404, \"User not found\");\n if (platformResult === \"not_supported\")\n throw error(501, \"Platform permission updates not supported by this auth provider\");\n if (platformResult === \"last_admin\")\n throw error(\n 409,\n \"Cannot remove the last instance admin. Promote another user to instance admin first.\"\n );\n const orgId = locals.ctx?.actingOrgId;\n if (orgId) {\n const orgs = getOrganizationProvider();\n const existing = await orgs.getOrgMember(SYSTEM_CONTEXT, orgId, id);\n const resolvedPermissions = (role) => role === \"member\" ? org.filter((p) => MEMBER_ASSIGNABLE_PERMISSIONS.includes(p)) : [...DEFAULT_ORG_PERMISSIONS[role]];\n if (existing) {\n await orgs.updateOrgMemberPermissions(\n SYSTEM_CONTEXT,\n orgId,\n id,\n resolvedPermissions(existing.role)\n );\n } else {\n const joinedAt = (/* @__PURE__ */ new Date()).toISOString();\n await orgs.addOrgMember(SYSTEM_CONTEXT, {\n orgId,\n userId: id,\n role: \"member\",\n permissions: resolvedPermissions(\"member\"),\n joinedAt,\n updatedAt: joinedAt,\n updatedBy: locals.user?.id ?? id,\n deletedAt: null\n });\n }\n }\n return json({ success: true });\n};\nconst DELETE = async ({ params, locals }) => {\n requireManageInstanceUsers(locals);\n const { id } = params;\n if (!id) throw error(400, \"Missing user ID\");\n const targetPerms = await getPermissionStore().getFor(locals.ctx, id);\n if (targetPerms.includes(\"instance_admin\")) {\n const others = await getPermissionStore().countInstanceAdminsExcluding(locals.ctx, id);\n if (others === 0) {\n throw error(\n 409,\n \"Cannot delete the last instance admin. Promote another user to instance admin first.\"\n );\n }\n }\n const result = await getAuthProvider().deleteUser(id);\n if (result === \"not_found\") throw error(404, \"User not found\");\n if (result === \"not_supported\")\n throw error(501, \"User deletion not supported by this auth provider\");\n await getDataProvider().onUserDeleted(SYSTEM_CONTEXT, id);\n return json({ success: true });\n};\nexport {\n DELETE,\n PATCH\n};\n"],"names":[],"mappings":"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"}
|