@selvajs/selva 4.3.4 → 4.4.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.fkooa_RK.css +1 -0
- package/build/client/_app/immutable/assets/0.fkooa_RK.css.br +0 -0
- package/build/client/_app/immutable/assets/0.fkooa_RK.css.gz +0 -0
- package/build/client/_app/immutable/assets/rhino3dm.BI8ESrUA.wasm +0 -0
- package/build/client/_app/immutable/assets/rhino3dm.BI8ESrUA.wasm.br +0 -0
- package/build/client/_app/immutable/assets/rhino3dm.BI8ESrUA.wasm.gz +0 -0
- package/build/client/_app/immutable/chunks/-xEd7dwr.js +35 -0
- package/build/client/_app/immutable/chunks/-xEd7dwr.js.br +0 -0
- package/build/client/_app/immutable/chunks/-xEd7dwr.js.gz +0 -0
- package/build/client/_app/immutable/chunks/13pdkq-i.js +1 -0
- package/build/client/_app/immutable/chunks/13pdkq-i.js.br +0 -0
- package/build/client/_app/immutable/chunks/13pdkq-i.js.gz +0 -0
- package/build/client/_app/immutable/chunks/2BnY_oab.js +1 -0
- package/build/client/_app/immutable/chunks/2BnY_oab.js.br +0 -0
- package/build/client/_app/immutable/chunks/2BnY_oab.js.gz +0 -0
- package/build/client/_app/immutable/chunks/4WJ3PVN5.js +1 -0
- package/build/client/_app/immutable/chunks/4WJ3PVN5.js.br +0 -0
- package/build/client/_app/immutable/chunks/4WJ3PVN5.js.gz +0 -0
- package/build/client/_app/immutable/chunks/5h7wo9xN.js +1 -0
- package/build/client/_app/immutable/chunks/5h7wo9xN.js.br +0 -0
- package/build/client/_app/immutable/chunks/5h7wo9xN.js.gz +0 -0
- package/build/client/_app/immutable/chunks/B-fj8b7K.js +2 -0
- package/build/client/_app/immutable/chunks/B-fj8b7K.js.br +0 -0
- package/build/client/_app/immutable/chunks/B-fj8b7K.js.gz +0 -0
- package/build/client/_app/immutable/chunks/B3KcsPFR.js +1 -0
- package/build/client/_app/immutable/chunks/B3KcsPFR.js.br +0 -0
- package/build/client/_app/immutable/chunks/B3KcsPFR.js.gz +0 -0
- package/build/client/_app/immutable/chunks/B48NJnzU.js +1 -0
- package/build/client/_app/immutable/chunks/B48NJnzU.js.br +0 -0
- package/build/client/_app/immutable/chunks/B48NJnzU.js.gz +0 -0
- package/build/client/_app/immutable/chunks/B5HD-6Ib.js +1 -0
- package/build/client/_app/immutable/chunks/B5HD-6Ib.js.br +0 -0
- package/build/client/_app/immutable/chunks/B5HD-6Ib.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BH9oGrlA.js +1 -0
- package/build/client/_app/immutable/chunks/BH9oGrlA.js.br +0 -0
- package/build/client/_app/immutable/chunks/BH9oGrlA.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BHzbkLpq.js +1 -0
- package/build/client/_app/immutable/chunks/BHzbkLpq.js.br +0 -0
- package/build/client/_app/immutable/chunks/BHzbkLpq.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BKZ_D8Qd.js +1 -0
- package/build/client/_app/immutable/chunks/BKZ_D8Qd.js.br +0 -0
- package/build/client/_app/immutable/chunks/BKZ_D8Qd.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BMNUAT2D.js +1 -0
- package/build/client/_app/immutable/chunks/BMNUAT2D.js.br +0 -0
- package/build/client/_app/immutable/chunks/BMNUAT2D.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BNs1__IY.js +1 -0
- package/build/client/_app/immutable/chunks/BNs1__IY.js.br +0 -0
- package/build/client/_app/immutable/chunks/BNs1__IY.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BU70HLVx.js +3 -0
- package/build/client/_app/immutable/chunks/BU70HLVx.js.br +0 -0
- package/build/client/_app/immutable/chunks/BU70HLVx.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BUqheMDA.js +1 -0
- package/build/client/_app/immutable/chunks/BUqheMDA.js.br +0 -0
- package/build/client/_app/immutable/chunks/BUqheMDA.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Ba74WbdD.js +1 -0
- package/build/client/_app/immutable/chunks/Ba74WbdD.js.br +0 -0
- package/build/client/_app/immutable/chunks/Ba74WbdD.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Bex2dy3F.js +1 -0
- package/build/client/_app/immutable/chunks/Bex2dy3F.js.br +0 -0
- package/build/client/_app/immutable/chunks/Bex2dy3F.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BfraRswf.js +1 -0
- package/build/client/_app/immutable/chunks/BfraRswf.js.br +0 -0
- package/build/client/_app/immutable/chunks/BfraRswf.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BjB88iwt.js +1 -0
- package/build/client/_app/immutable/chunks/BjB88iwt.js.br +0 -0
- package/build/client/_app/immutable/chunks/BjB88iwt.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BoqXamYe.js +1 -0
- package/build/client/_app/immutable/chunks/BoqXamYe.js.br +0 -0
- package/build/client/_app/immutable/chunks/BoqXamYe.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BsZHa2Wi.js +1 -0
- package/build/client/_app/immutable/chunks/BsZHa2Wi.js.br +0 -0
- package/build/client/_app/immutable/chunks/BsZHa2Wi.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C-j7zMFr.js +1 -0
- package/build/client/_app/immutable/chunks/C-j7zMFr.js.br +0 -0
- package/build/client/_app/immutable/chunks/C-j7zMFr.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CBjt6cm5.js +1 -0
- package/build/client/_app/immutable/chunks/CBjt6cm5.js.br +1 -0
- package/build/client/_app/immutable/chunks/CBjt6cm5.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CE8BcsFf.js +1 -0
- package/build/client/_app/immutable/chunks/CE8BcsFf.js.br +0 -0
- package/build/client/_app/immutable/chunks/CE8BcsFf.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CJPg7PqR.js +1 -0
- package/build/client/_app/immutable/chunks/CJPg7PqR.js.br +0 -0
- package/build/client/_app/immutable/chunks/CJPg7PqR.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CO55fzTt.js +1 -0
- package/build/client/_app/immutable/chunks/CO55fzTt.js.br +0 -0
- package/build/client/_app/immutable/chunks/CO55fzTt.js.gz +0 -0
- package/build/client/_app/immutable/chunks/COSBQK9i.js +1 -0
- package/build/client/_app/immutable/chunks/COSBQK9i.js.br +0 -0
- package/build/client/_app/immutable/chunks/COSBQK9i.js.gz +0 -0
- package/build/client/_app/immutable/chunks/COWz2et1.js +1 -0
- package/build/client/_app/immutable/chunks/COWz2et1.js.br +0 -0
- package/build/client/_app/immutable/chunks/COWz2et1.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CQerFpzT.js +1 -0
- package/build/client/_app/immutable/chunks/CQerFpzT.js.br +0 -0
- package/build/client/_app/immutable/chunks/CQerFpzT.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Cauzi832.js +1 -0
- package/build/client/_app/immutable/chunks/Cauzi832.js.br +0 -0
- package/build/client/_app/immutable/chunks/Cauzi832.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CcBbOJ-v.js +1 -0
- package/build/client/_app/immutable/chunks/CcBbOJ-v.js.br +2 -0
- package/build/client/_app/immutable/chunks/CcBbOJ-v.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CdGNQgyw.js +1 -0
- package/build/client/_app/immutable/chunks/CdGNQgyw.js.br +0 -0
- package/build/client/_app/immutable/chunks/CdGNQgyw.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Ch5nD1rA.js +1 -0
- package/build/client/_app/immutable/chunks/Ch5nD1rA.js.br +0 -0
- package/build/client/_app/immutable/chunks/Ch5nD1rA.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Ckd6DpGW.js +1 -0
- package/build/client/_app/immutable/chunks/Ckd6DpGW.js.br +0 -0
- package/build/client/_app/immutable/chunks/Ckd6DpGW.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Cpd8PqU3.js +1 -0
- package/build/client/_app/immutable/chunks/Cpd8PqU3.js.br +0 -0
- package/build/client/_app/immutable/chunks/Cpd8PqU3.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CwEiVMBL.js +1 -0
- package/build/client/_app/immutable/chunks/CwEiVMBL.js.br +0 -0
- package/build/client/_app/immutable/chunks/CwEiVMBL.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D-jj-Uww.js +1 -0
- package/build/client/_app/immutable/chunks/D-jj-Uww.js.br +0 -0
- package/build/client/_app/immutable/chunks/D-jj-Uww.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D7wuDTx2.js +1 -0
- package/build/client/_app/immutable/chunks/D7wuDTx2.js.br +0 -0
- package/build/client/_app/immutable/chunks/D7wuDTx2.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D9MTzuwb.js +1 -0
- package/build/client/_app/immutable/chunks/D9MTzuwb.js.br +0 -0
- package/build/client/_app/immutable/chunks/D9MTzuwb.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D9Y6MiT8.js +9 -0
- package/build/client/_app/immutable/chunks/D9Y6MiT8.js.br +0 -0
- package/build/client/_app/immutable/chunks/D9Y6MiT8.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DApsykQI.js +1 -0
- package/build/client/_app/immutable/chunks/DApsykQI.js.br +0 -0
- package/build/client/_app/immutable/chunks/DApsykQI.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DC8WqQE0.js +1 -0
- package/build/client/_app/immutable/chunks/DC8WqQE0.js.br +0 -0
- package/build/client/_app/immutable/chunks/DC8WqQE0.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DCgyaAAq.js +1 -0
- package/build/client/_app/immutable/chunks/DCgyaAAq.js.br +0 -0
- package/build/client/_app/immutable/chunks/DCgyaAAq.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DFnVpznB.js +1 -0
- package/build/client/_app/immutable/chunks/DFnVpznB.js.br +4 -0
- package/build/client/_app/immutable/chunks/DFnVpznB.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DH_OLMrQ.js +1 -0
- package/build/client/_app/immutable/chunks/DH_OLMrQ.js.br +0 -0
- package/build/client/_app/immutable/chunks/DH_OLMrQ.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DU8tQv0c.js +1 -0
- package/build/client/_app/immutable/chunks/DU8tQv0c.js.br +0 -0
- package/build/client/_app/immutable/chunks/DU8tQv0c.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DUpVdSFf.js +1 -0
- package/build/client/_app/immutable/chunks/DUpVdSFf.js.br +0 -0
- package/build/client/_app/immutable/chunks/DUpVdSFf.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Db5P7BwC.js +64 -0
- package/build/client/_app/immutable/chunks/Db5P7BwC.js.br +0 -0
- package/build/client/_app/immutable/chunks/Db5P7BwC.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DfcDRMtE.js +1 -0
- package/build/client/_app/immutable/chunks/DfcDRMtE.js.br +0 -0
- package/build/client/_app/immutable/chunks/DfcDRMtE.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Dw6fzgfW.js +1 -0
- package/build/client/_app/immutable/chunks/Dw6fzgfW.js.br +0 -0
- package/build/client/_app/immutable/chunks/Dw6fzgfW.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DzNzLgOO.js +1 -0
- package/build/client/_app/immutable/chunks/DzNzLgOO.js.br +0 -0
- package/build/client/_app/immutable/chunks/DzNzLgOO.js.gz +0 -0
- package/build/client/_app/immutable/chunks/E7F5LllG.js +1 -0
- package/build/client/_app/immutable/chunks/E7F5LllG.js.br +0 -0
- package/build/client/_app/immutable/chunks/E7F5LllG.js.gz +0 -0
- package/build/client/_app/immutable/chunks/FdBsYR_f.js +1 -0
- package/build/client/_app/immutable/chunks/FdBsYR_f.js.br +0 -0
- package/build/client/_app/immutable/chunks/FdBsYR_f.js.gz +0 -0
- package/build/client/_app/immutable/chunks/NPsDidaV.js +1 -0
- package/build/client/_app/immutable/chunks/NPsDidaV.js.br +0 -0
- package/build/client/_app/immutable/chunks/NPsDidaV.js.gz +0 -0
- package/build/client/_app/immutable/chunks/OVtUuDzp.js +1 -0
- package/build/client/_app/immutable/chunks/OVtUuDzp.js.br +0 -0
- package/build/client/_app/immutable/chunks/OVtUuDzp.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Qf_Lg02h.js +1 -0
- package/build/client/_app/immutable/chunks/Qf_Lg02h.js.br +0 -0
- package/build/client/_app/immutable/chunks/Qf_Lg02h.js.gz +0 -0
- package/build/client/_app/immutable/chunks/RmXOMQTe.js +1 -0
- package/build/client/_app/immutable/chunks/RmXOMQTe.js.br +0 -0
- package/build/client/_app/immutable/chunks/RmXOMQTe.js.gz +0 -0
- package/build/client/_app/immutable/chunks/X4d9Q9UP.js +1 -0
- package/build/client/_app/immutable/chunks/X4d9Q9UP.js.br +0 -0
- package/build/client/_app/immutable/chunks/X4d9Q9UP.js.gz +0 -0
- package/build/client/_app/immutable/chunks/atM6maCg.js +1 -0
- package/build/client/_app/immutable/chunks/atM6maCg.js.br +0 -0
- package/build/client/_app/immutable/chunks/atM6maCg.js.gz +0 -0
- package/build/client/_app/immutable/chunks/j-UbJSFZ.js +1 -0
- package/build/client/_app/immutable/chunks/j-UbJSFZ.js.br +0 -0
- package/build/client/_app/immutable/chunks/j-UbJSFZ.js.gz +0 -0
- package/build/client/_app/immutable/chunks/qxoHibue.js +1 -0
- package/build/client/_app/immutable/chunks/qxoHibue.js.br +0 -0
- package/build/client/_app/immutable/chunks/qxoHibue.js.gz +0 -0
- package/build/client/_app/immutable/entry/app.CsJrZk_i.js +2 -0
- package/build/client/_app/immutable/entry/app.CsJrZk_i.js.br +0 -0
- package/build/client/_app/immutable/entry/app.CsJrZk_i.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.vCkjGHiU.js +1 -0
- package/build/client/_app/immutable/entry/start.vCkjGHiU.js.br +2 -0
- package/build/client/_app/immutable/entry/start.vCkjGHiU.js.gz +0 -0
- package/build/client/_app/immutable/nodes/0.B0UCbyvV.js +1 -0
- package/build/client/_app/immutable/nodes/0.B0UCbyvV.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.B0UCbyvV.js.gz +0 -0
- package/build/client/_app/immutable/nodes/1.wSjQD-9E.js +1 -0
- package/build/client/_app/immutable/nodes/1.wSjQD-9E.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.wSjQD-9E.js.gz +0 -0
- package/build/client/_app/immutable/nodes/10.Ct49OwC1.js +3 -0
- package/build/client/_app/immutable/nodes/10.Ct49OwC1.js.br +0 -0
- package/build/client/_app/immutable/nodes/10.Ct49OwC1.js.gz +0 -0
- package/build/client/_app/immutable/nodes/11.cZPocN3B.js +2 -0
- package/build/client/_app/immutable/nodes/11.cZPocN3B.js.br +0 -0
- package/build/client/_app/immutable/nodes/11.cZPocN3B.js.gz +0 -0
- package/build/client/_app/immutable/nodes/12.BqHQ_pQ5.js +1 -0
- package/build/client/_app/immutable/nodes/12.BqHQ_pQ5.js.br +0 -0
- package/build/client/_app/immutable/nodes/12.BqHQ_pQ5.js.gz +0 -0
- package/build/client/_app/immutable/nodes/13.CZxapN5I.js +2 -0
- package/build/client/_app/immutable/nodes/13.CZxapN5I.js.br +0 -0
- package/build/client/_app/immutable/nodes/13.CZxapN5I.js.gz +0 -0
- package/build/client/_app/immutable/nodes/14.ChDvrNjp.js +2 -0
- package/build/client/_app/immutable/nodes/14.ChDvrNjp.js.br +0 -0
- package/build/client/_app/immutable/nodes/14.ChDvrNjp.js.gz +0 -0
- package/build/client/_app/immutable/nodes/15.B2tLGWDu.js +13 -0
- package/build/client/_app/immutable/nodes/15.B2tLGWDu.js.br +0 -0
- package/build/client/_app/immutable/nodes/15.B2tLGWDu.js.gz +0 -0
- package/build/client/_app/immutable/nodes/16.Cewxge5m.js +6 -0
- package/build/client/_app/immutable/nodes/16.Cewxge5m.js.br +0 -0
- package/build/client/_app/immutable/nodes/16.Cewxge5m.js.gz +0 -0
- package/build/client/_app/immutable/nodes/17.NlvAvTSP.js +2 -0
- package/build/client/_app/immutable/nodes/17.NlvAvTSP.js.br +0 -0
- package/build/client/_app/immutable/nodes/17.NlvAvTSP.js.gz +0 -0
- package/build/client/_app/immutable/nodes/19.qNGlcD7l.js +2 -0
- package/build/client/_app/immutable/nodes/19.qNGlcD7l.js.br +0 -0
- package/build/client/_app/immutable/nodes/19.qNGlcD7l.js.gz +0 -0
- package/build/client/_app/immutable/nodes/2.CgydK0lI.js +1 -0
- package/build/client/_app/immutable/nodes/2.CgydK0lI.js.br +0 -0
- package/build/client/_app/immutable/nodes/2.CgydK0lI.js.gz +0 -0
- package/build/client/_app/immutable/nodes/20.CoGCSB-X.js +5021 -0
- package/build/client/_app/immutable/nodes/20.CoGCSB-X.js.br +0 -0
- package/build/client/_app/immutable/nodes/20.CoGCSB-X.js.gz +0 -0
- package/build/client/_app/immutable/nodes/21.CdZLvQ68.js +6 -0
- package/build/client/_app/immutable/nodes/21.CdZLvQ68.js.br +0 -0
- package/build/client/_app/immutable/nodes/21.CdZLvQ68.js.gz +0 -0
- package/build/client/_app/immutable/nodes/23.CmSUvEas.js +16 -0
- package/build/client/_app/immutable/nodes/23.CmSUvEas.js.br +0 -0
- package/build/client/_app/immutable/nodes/23.CmSUvEas.js.gz +0 -0
- package/build/client/_app/immutable/nodes/24.BLrWFvpH.js +6 -0
- package/build/client/_app/immutable/nodes/24.BLrWFvpH.js.br +0 -0
- package/build/client/_app/immutable/nodes/24.BLrWFvpH.js.gz +0 -0
- package/build/client/_app/immutable/nodes/25.DQ1u0u88.js +1 -0
- package/build/client/_app/immutable/nodes/25.DQ1u0u88.js.br +0 -0
- package/build/client/_app/immutable/nodes/25.DQ1u0u88.js.gz +0 -0
- package/build/client/_app/immutable/nodes/26.Ds_gf_O9.js +3 -0
- package/build/client/_app/immutable/nodes/26.Ds_gf_O9.js.br +0 -0
- package/build/client/_app/immutable/nodes/26.Ds_gf_O9.js.gz +0 -0
- package/build/client/_app/immutable/nodes/27.DF8_FNgX.js +4 -0
- package/build/client/_app/immutable/nodes/27.DF8_FNgX.js.br +0 -0
- package/build/client/_app/immutable/nodes/27.DF8_FNgX.js.gz +0 -0
- package/build/client/_app/immutable/nodes/28.u-nHYDMp.js +4 -0
- package/build/client/_app/immutable/nodes/28.u-nHYDMp.js.br +0 -0
- package/build/client/_app/immutable/nodes/28.u-nHYDMp.js.gz +0 -0
- package/build/client/_app/immutable/nodes/29.zcWmCBtG.js +2 -0
- package/build/client/_app/immutable/nodes/29.zcWmCBtG.js.br +0 -0
- package/build/client/_app/immutable/nodes/29.zcWmCBtG.js.gz +0 -0
- package/build/client/_app/immutable/nodes/3.CGYG-fBC.js +1 -0
- package/build/client/_app/immutable/nodes/3.CGYG-fBC.js.br +0 -0
- package/build/client/_app/immutable/nodes/3.CGYG-fBC.js.gz +0 -0
- package/build/client/_app/immutable/nodes/30.CFRFw3XM.js +2 -0
- package/build/client/_app/immutable/nodes/30.CFRFw3XM.js.br +0 -0
- package/build/client/_app/immutable/nodes/30.CFRFw3XM.js.gz +0 -0
- package/build/client/_app/immutable/nodes/31.CaWXI_qm.js +2 -0
- package/build/client/_app/immutable/nodes/31.CaWXI_qm.js.br +0 -0
- package/build/client/_app/immutable/nodes/31.CaWXI_qm.js.gz +0 -0
- package/build/client/_app/immutable/nodes/32.Drmb2nxJ.js +3 -0
- package/build/client/_app/immutable/nodes/32.Drmb2nxJ.js.br +0 -0
- package/build/client/_app/immutable/nodes/32.Drmb2nxJ.js.gz +0 -0
- package/build/client/_app/immutable/nodes/5.BIDVFrKz.js +1 -0
- package/build/client/_app/immutable/nodes/5.BIDVFrKz.js.br +2 -0
- package/build/client/_app/immutable/nodes/5.BIDVFrKz.js.gz +0 -0
- package/build/client/_app/immutable/nodes/6.G8VTWVfQ.js +1 -0
- package/build/client/_app/immutable/nodes/6.G8VTWVfQ.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.G8VTWVfQ.js.gz +0 -0
- package/build/client/_app/immutable/nodes/7.DaJ_YKCW.js +1 -0
- package/build/client/_app/immutable/nodes/7.DaJ_YKCW.js.br +0 -0
- package/build/client/_app/immutable/nodes/7.DaJ_YKCW.js.gz +0 -0
- package/build/client/_app/immutable/nodes/8.c3ONIRmr.js +2 -0
- package/build/client/_app/immutable/nodes/8.c3ONIRmr.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.c3ONIRmr.js.gz +0 -0
- package/build/client/_app/immutable/nodes/9.BucDMSoZ.js +1 -0
- package/build/client/_app/immutable/nodes/9.BucDMSoZ.js.br +0 -0
- package/build/client/_app/immutable/nodes/9.BucDMSoZ.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/server/chunks/0-DIp1vX-0.js +55 -0
- package/build/server/chunks/0-DIp1vX-0.js.map +1 -0
- package/build/server/chunks/1-2fHcSF9r.js +9 -0
- package/build/server/chunks/1-2fHcSF9r.js.map +1 -0
- package/build/server/chunks/10-D4slAhbl.js +222 -0
- package/build/server/chunks/10-D4slAhbl.js.map +1 -0
- package/build/server/chunks/11-BIn4AcHz.js +59 -0
- package/build/server/chunks/11-BIn4AcHz.js.map +1 -0
- package/build/server/chunks/12-BTFEd1df.js +52 -0
- package/build/server/chunks/12-BTFEd1df.js.map +1 -0
- package/build/server/chunks/13-DoxggNWI.js +57 -0
- package/build/server/chunks/13-DoxggNWI.js.map +1 -0
- package/build/server/chunks/14-dn1AxT2y.js +100 -0
- package/build/server/chunks/14-dn1AxT2y.js.map +1 -0
- package/build/server/chunks/15-CwlxfscS.js +45 -0
- package/build/server/chunks/15-CwlxfscS.js.map +1 -0
- package/build/server/chunks/16-CYmJwOTN.js +85 -0
- package/build/server/chunks/16-CYmJwOTN.js.map +1 -0
- package/build/server/chunks/17-2g3z6ge8.js +9 -0
- package/build/server/chunks/17-2g3z6ge8.js.map +1 -0
- package/build/server/chunks/18-DS1IDuFS.js +74 -0
- package/build/server/chunks/18-DS1IDuFS.js.map +1 -0
- package/build/server/chunks/19-D7P-oKm4.js +94 -0
- package/build/server/chunks/19-D7P-oKm4.js.map +1 -0
- package/build/server/chunks/2-x36H91MM.js +43 -0
- package/build/server/chunks/2-x36H91MM.js.map +1 -0
- package/build/server/chunks/20-Cb9g4A7Q.js +218 -0
- package/build/server/chunks/20-Cb9g4A7Q.js.map +1 -0
- package/build/server/chunks/21-CpI2moj3.js +83 -0
- package/build/server/chunks/21-CpI2moj3.js.map +1 -0
- package/build/server/chunks/23-cbMfA5sY.js +137 -0
- package/build/server/chunks/23-cbMfA5sY.js.map +1 -0
- package/build/server/chunks/24-CA3DPT0t.js +145 -0
- package/build/server/chunks/24-CA3DPT0t.js.map +1 -0
- package/build/server/chunks/25-DludrCpg.js +51 -0
- package/build/server/chunks/25-DludrCpg.js.map +1 -0
- package/build/server/chunks/26-Dia3LwgX.js +9 -0
- package/build/server/chunks/26-Dia3LwgX.js.map +1 -0
- package/build/server/chunks/27-BDtKZzPl.js +57 -0
- package/build/server/chunks/27-BDtKZzPl.js.map +1 -0
- package/build/server/chunks/28-Dvh0YyMK.js +69 -0
- package/build/server/chunks/28-Dvh0YyMK.js.map +1 -0
- package/build/server/chunks/29-OZbtFuyd.js +55 -0
- package/build/server/chunks/29-OZbtFuyd.js.map +1 -0
- package/build/server/chunks/3-BFx3bdEz.js +9 -0
- package/build/server/chunks/3-BFx3bdEz.js.map +1 -0
- package/build/server/chunks/30-BuoO_cIR.js +57 -0
- package/build/server/chunks/30-BuoO_cIR.js.map +1 -0
- package/build/server/chunks/31-Dzl1y1lc.js +42 -0
- package/build/server/chunks/31-Dzl1y1lc.js.map +1 -0
- package/build/server/chunks/32-DEYwWtss.js +34 -0
- package/build/server/chunks/32-DEYwWtss.js.map +1 -0
- package/build/server/chunks/5-BNfM-tOw.js +32 -0
- package/build/server/chunks/5-BNfM-tOw.js.map +1 -0
- package/build/server/chunks/6-CEx1JO4m.js +40 -0
- package/build/server/chunks/6-CEx1JO4m.js.map +1 -0
- package/build/server/chunks/7-Cz-fnTMA.js +19 -0
- package/build/server/chunks/7-Cz-fnTMA.js.map +1 -0
- package/build/server/chunks/8-CFNvkchb.js +130 -0
- package/build/server/chunks/8-CFNvkchb.js.map +1 -0
- package/build/server/chunks/9-DrF9Yg9r.js +48 -0
- package/build/server/chunks/9-DrF9Yg9r.js.map +1 -0
- package/build/server/chunks/AppHeader-vae2Doza.js +271 -0
- package/build/server/chunks/AppHeader-vae2Doza.js.map +1 -0
- package/build/server/chunks/DefinitionCard-RTmYlhOH.js +268 -0
- package/build/server/chunks/DefinitionCard-RTmYlhOH.js.map +1 -0
- package/build/server/chunks/ErrorScreen-d8Z8hQ1U.js +131 -0
- package/build/server/chunks/ErrorScreen-d8Z8hQ1U.js.map +1 -0
- package/build/server/chunks/FilterableDropdown-0UzIjcXJ.js +61 -0
- package/build/server/chunks/FilterableDropdown-0UzIjcXJ.js.map +1 -0
- package/build/server/chunks/SideNav-QbExg2MG.js +87 -0
- package/build/server/chunks/SideNav-QbExg2MG.js.map +1 -0
- package/build/server/chunks/StatCard-CRzbit9Z.js +50 -0
- package/build/server/chunks/StatCard-CRzbit9Z.js.map +1 -0
- package/build/server/chunks/UserChip-BPLEgzMp.js +1220 -0
- package/build/server/chunks/UserChip-BPLEgzMp.js.map +1 -0
- package/build/server/chunks/_error.svelte-DCuOEylf.js +29 -0
- package/build/server/chunks/_error.svelte-DCuOEylf.js.map +1 -0
- package/build/server/chunks/_error.svelte-DKd7sQzn.js +27 -0
- package/build/server/chunks/_error.svelte-DKd7sQzn.js.map +1 -0
- package/build/server/chunks/_layout.svelte-D5GiNGr6.js +108 -0
- package/build/server/chunks/_layout.svelte-D5GiNGr6.js.map +1 -0
- package/build/server/chunks/_layout.svelte-VX4FX0S-.js +795 -0
- package/build/server/chunks/_layout.svelte-VX4FX0S-.js.map +1 -0
- package/build/server/chunks/_layout.svelte-_enyp5QE.js +45 -0
- package/build/server/chunks/_layout.svelte-_enyp5QE.js.map +1 -0
- package/build/server/chunks/_layout.svelte-aflz8r6I.js +155 -0
- package/build/server/chunks/_layout.svelte-aflz8r6I.js.map +1 -0
- package/build/server/chunks/_page.svelte-B8iLZ6Zi.js +119 -0
- package/build/server/chunks/_page.svelte-B8iLZ6Zi.js.map +1 -0
- package/build/server/chunks/_page.svelte-BHM2cdfQ.js +119 -0
- package/build/server/chunks/_page.svelte-BHM2cdfQ.js.map +1 -0
- package/build/server/chunks/_page.svelte-BYPZuYIR.js +276 -0
- package/build/server/chunks/_page.svelte-BYPZuYIR.js.map +1 -0
- package/build/server/chunks/_page.svelte-Big1I6tL.js +274 -0
- package/build/server/chunks/_page.svelte-Big1I6tL.js.map +1 -0
- package/build/server/chunks/_page.svelte-Bqwz1thf.js +146 -0
- package/build/server/chunks/_page.svelte-Bqwz1thf.js.map +1 -0
- package/build/server/chunks/_page.svelte-By_vYfbZ.js +525 -0
- package/build/server/chunks/_page.svelte-By_vYfbZ.js.map +1 -0
- package/build/server/chunks/_page.svelte-CD9Uvy6Y.js +595 -0
- package/build/server/chunks/_page.svelte-CD9Uvy6Y.js.map +1 -0
- package/build/server/chunks/_page.svelte-CIO9nnXR.js +557 -0
- package/build/server/chunks/_page.svelte-CIO9nnXR.js.map +1 -0
- package/build/server/chunks/_page.svelte-CaoALwvK.js +453 -0
- package/build/server/chunks/_page.svelte-CaoALwvK.js.map +1 -0
- package/build/server/chunks/_page.svelte-CjvLz8T1.js +906 -0
- package/build/server/chunks/_page.svelte-CjvLz8T1.js.map +1 -0
- package/build/server/chunks/_page.svelte-DIn0gOqM.js +609 -0
- package/build/server/chunks/_page.svelte-DIn0gOqM.js.map +1 -0
- package/build/server/chunks/_page.svelte-DKPG7AbM.js +113 -0
- package/build/server/chunks/_page.svelte-DKPG7AbM.js.map +1 -0
- package/build/server/chunks/_page.svelte-DM3XizZi.js +3858 -0
- package/build/server/chunks/_page.svelte-DM3XizZi.js.map +1 -0
- package/build/server/chunks/_page.svelte-DamuIhBm.js +168 -0
- package/build/server/chunks/_page.svelte-DamuIhBm.js.map +1 -0
- package/build/server/chunks/_page.svelte-DcbxsxZM.js +330 -0
- package/build/server/chunks/_page.svelte-DcbxsxZM.js.map +1 -0
- package/build/server/chunks/_page.svelte-DcqwTr6T.js +250 -0
- package/build/server/chunks/_page.svelte-DcqwTr6T.js.map +1 -0
- package/build/server/chunks/_page.svelte-DtVw2EYT.js +56 -0
- package/build/server/chunks/_page.svelte-DtVw2EYT.js.map +1 -0
- package/build/server/chunks/_page.svelte-DyTTCbrh.js +83 -0
- package/build/server/chunks/_page.svelte-DyTTCbrh.js.map +1 -0
- package/build/server/chunks/_page.svelte-FDFRMnmB.js +333 -0
- package/build/server/chunks/_page.svelte-FDFRMnmB.js.map +1 -0
- package/build/server/chunks/_page.svelte-Ut97NZhy.js +714 -0
- package/build/server/chunks/_page.svelte-Ut97NZhy.js.map +1 -0
- package/build/server/chunks/_page.svelte-ZxjqrKH8.js +72 -0
- package/build/server/chunks/_page.svelte-ZxjqrKH8.js.map +1 -0
- package/build/server/chunks/_page.svelte-jwU-46Sj.js +301 -0
- package/build/server/chunks/_page.svelte-jwU-46Sj.js.map +1 -0
- package/build/server/chunks/_page.svelte-lAupF47l.js +424 -0
- package/build/server/chunks/_page.svelte-lAupF47l.js.map +1 -0
- package/build/server/chunks/_page.svelte-wUV5pt7K.js +11617 -0
- package/build/server/chunks/_page.svelte-wUV5pt7K.js.map +1 -0
- package/build/server/chunks/_server.ts-A5TZCqa5.js +83 -0
- package/build/server/chunks/_server.ts-A5TZCqa5.js.map +1 -0
- package/build/server/chunks/_server.ts-BBenjXRj.js +60 -0
- package/build/server/chunks/_server.ts-BBenjXRj.js.map +1 -0
- package/build/server/chunks/_server.ts-BDVOe9oZ.js +41 -0
- package/build/server/chunks/_server.ts-BDVOe9oZ.js.map +1 -0
- package/build/server/chunks/_server.ts-BNSHTRhw.js +111 -0
- package/build/server/chunks/_server.ts-BNSHTRhw.js.map +1 -0
- package/build/server/chunks/_server.ts-Bel_bV82.js +50 -0
- package/build/server/chunks/_server.ts-Bel_bV82.js.map +1 -0
- package/build/server/chunks/_server.ts-BnV_32U5.js +105 -0
- package/build/server/chunks/_server.ts-BnV_32U5.js.map +1 -0
- package/build/server/chunks/_server.ts-C4BxZ2rC.js +162 -0
- package/build/server/chunks/_server.ts-C4BxZ2rC.js.map +1 -0
- package/build/server/chunks/_server.ts-C4lve0n9.js +108 -0
- package/build/server/chunks/_server.ts-C4lve0n9.js.map +1 -0
- package/build/server/chunks/_server.ts-C8hNi-NM.js +88 -0
- package/build/server/chunks/_server.ts-C8hNi-NM.js.map +1 -0
- package/build/server/chunks/_server.ts-CFmfnLGv.js +83 -0
- package/build/server/chunks/_server.ts-CFmfnLGv.js.map +1 -0
- package/build/server/chunks/_server.ts-CVgSO8yh.js +72 -0
- package/build/server/chunks/_server.ts-CVgSO8yh.js.map +1 -0
- package/build/server/chunks/_server.ts-CXvixtRW.js +84 -0
- package/build/server/chunks/_server.ts-CXvixtRW.js.map +1 -0
- package/build/server/chunks/_server.ts-CYnQlbaG.js +101 -0
- package/build/server/chunks/_server.ts-CYnQlbaG.js.map +1 -0
- package/build/server/chunks/_server.ts-Ck8MaVCN.js +73 -0
- package/build/server/chunks/_server.ts-Ck8MaVCN.js.map +1 -0
- package/build/server/chunks/_server.ts-CmB_7_VV.js +398 -0
- package/build/server/chunks/_server.ts-CmB_7_VV.js.map +1 -0
- package/build/server/chunks/_server.ts-CoZrqfhl.js +80 -0
- package/build/server/chunks/_server.ts-CoZrqfhl.js.map +1 -0
- package/build/server/chunks/_server.ts-Ctmv-46q.js +43 -0
- package/build/server/chunks/_server.ts-Ctmv-46q.js.map +1 -0
- package/build/server/chunks/_server.ts-CtwHDS7C.js +51 -0
- package/build/server/chunks/_server.ts-CtwHDS7C.js.map +1 -0
- package/build/server/chunks/_server.ts-Cu7fT_h2.js +31 -0
- package/build/server/chunks/_server.ts-Cu7fT_h2.js.map +1 -0
- package/build/server/chunks/_server.ts-CvjBKoOG.js +39 -0
- package/build/server/chunks/_server.ts-CvjBKoOG.js.map +1 -0
- package/build/server/chunks/_server.ts-DCmcZ1Gb.js +60 -0
- package/build/server/chunks/_server.ts-DCmcZ1Gb.js.map +1 -0
- package/build/server/chunks/_server.ts-DOepVbAV.js +41 -0
- package/build/server/chunks/_server.ts-DOepVbAV.js.map +1 -0
- package/build/server/chunks/_server.ts-DQdxI18h.js +40 -0
- package/build/server/chunks/_server.ts-DQdxI18h.js.map +1 -0
- package/build/server/chunks/_server.ts-DaL0WEpS.js +37 -0
- package/build/server/chunks/_server.ts-DaL0WEpS.js.map +1 -0
- package/build/server/chunks/_server.ts-DbcwlSqy.js +65 -0
- package/build/server/chunks/_server.ts-DbcwlSqy.js.map +1 -0
- package/build/server/chunks/_server.ts-DgbeoluB.js +75 -0
- package/build/server/chunks/_server.ts-DgbeoluB.js.map +1 -0
- package/build/server/chunks/_server.ts-DgjIv5VO.js +31 -0
- package/build/server/chunks/_server.ts-DgjIv5VO.js.map +1 -0
- package/build/server/chunks/_server.ts-Drk8mhhT.js +44 -0
- package/build/server/chunks/_server.ts-Drk8mhhT.js.map +1 -0
- package/build/server/chunks/_server.ts-Dsn1xqkb.js +40 -0
- package/build/server/chunks/_server.ts-Dsn1xqkb.js.map +1 -0
- package/build/server/chunks/_server.ts-DzoHhw3c.js +77 -0
- package/build/server/chunks/_server.ts-DzoHhw3c.js.map +1 -0
- package/build/server/chunks/_server.ts-Mywogv28.js +32 -0
- package/build/server/chunks/_server.ts-Mywogv28.js.map +1 -0
- package/build/server/chunks/_server.ts-TGu9dCIM.js +96 -0
- package/build/server/chunks/_server.ts-TGu9dCIM.js.map +1 -0
- package/build/server/chunks/_server.ts-_nasPzxH.js +39 -0
- package/build/server/chunks/_server.ts-_nasPzxH.js.map +1 -0
- package/build/server/chunks/_server.ts-aJ-1nqR3.js +63 -0
- package/build/server/chunks/_server.ts-aJ-1nqR3.js.map +1 -0
- package/build/server/chunks/_server.ts-eAeNUEse.js +86 -0
- package/build/server/chunks/_server.ts-eAeNUEse.js.map +1 -0
- package/build/server/chunks/_server.ts-jICcnrLz.js +36 -0
- package/build/server/chunks/_server.ts-jICcnrLz.js.map +1 -0
- package/build/server/chunks/_server.ts-pUwXCS2e.js +39 -0
- package/build/server/chunks/_server.ts-pUwXCS2e.js.map +1 -0
- package/build/server/chunks/_server.ts-vGCP86Du.js +449 -0
- package/build/server/chunks/_server.ts-vGCP86Du.js.map +1 -0
- package/build/server/chunks/_server.ts-y7PjdP_H.js +33 -0
- package/build/server/chunks/_server.ts-y7PjdP_H.js.map +1 -0
- package/build/server/chunks/access.server-BueyYEoY.js +408 -0
- package/build/server/chunks/access.server-BueyYEoY.js.map +1 -0
- package/build/server/chunks/activity-Dmfe6yjx.js +18 -0
- package/build/server/chunks/activity-Dmfe6yjx.js.map +1 -0
- package/build/server/chunks/alert-description-BNqu-OG5.js +59 -0
- package/build/server/chunks/alert-description-BNqu-OG5.js.map +1 -0
- package/build/server/chunks/api-errors-BckwXK7Q.js +101 -0
- package/build/server/chunks/api-errors-BckwXK7Q.js.map +1 -0
- package/build/server/chunks/arrow-left-KOVWDB5k.js +14 -0
- package/build/server/chunks/arrow-left-KOVWDB5k.js.map +1 -0
- package/build/server/chunks/arrow-right-D0bOY6-5.js +14 -0
- package/build/server/chunks/arrow-right-D0bOY6-5.js.map +1 -0
- package/build/server/chunks/auth-bootstrap.server-BOTw9HkY.js +99 -0
- package/build/server/chunks/auth-bootstrap.server-BOTw9HkY.js.map +1 -0
- package/build/server/chunks/badge-DIEbxzcl.js +50 -0
- package/build/server/chunks/badge-DIEbxzcl.js.map +1 -0
- package/build/server/chunks/bootHealth.server-BwEi-Qp8.js +58 -0
- package/build/server/chunks/bootHealth.server-BwEi-Qp8.js.map +1 -0
- package/build/server/chunks/building-2-DFvNRZpq.js +22 -0
- package/build/server/chunks/building-2-DFvNRZpq.js.map +1 -0
- package/build/server/chunks/button-DPLE4Wc8.js +73 -0
- package/build/server/chunks/button-DPLE4Wc8.js.map +1 -0
- package/build/server/chunks/card-content-BlxX1RCO.js +46 -0
- package/build/server/chunks/card-content-BlxX1RCO.js.map +1 -0
- package/build/server/chunks/card-description-Z3TpzjmK.js +26 -0
- package/build/server/chunks/card-description-Z3TpzjmK.js.map +1 -0
- package/build/server/chunks/card-title-CdR5nQ-b.js +46 -0
- package/build/server/chunks/card-title-CdR5nQ-b.js.map +1 -0
- package/build/server/chunks/check-382jBCB9.js +11 -0
- package/build/server/chunks/check-382jBCB9.js.map +1 -0
- package/build/server/chunks/chevron-down-D5-hWbt-.js +11 -0
- package/build/server/chunks/chevron-down-D5-hWbt-.js.map +1 -0
- package/build/server/chunks/chevron-right-BqxmmxHL.js +11 -0
- package/build/server/chunks/chevron-right-BqxmmxHL.js.map +1 -0
- package/build/server/chunks/chevron-up-StZ3cnZ8.js +11 -0
- package/build/server/chunks/chevron-up-StZ3cnZ8.js.map +1 -0
- package/build/server/chunks/circle-DgRVKHBX.js +11 -0
- package/build/server/chunks/circle-DgRVKHBX.js.map +1 -0
- package/build/server/chunks/circle-alert-DVGjYRbM.js +18 -0
- package/build/server/chunks/circle-alert-DVGjYRbM.js.map +1 -0
- package/build/server/chunks/computeLimits-DPO6NbLd.js +27 -0
- package/build/server/chunks/computeLimits-DPO6NbLd.js.map +1 -0
- package/build/server/chunks/context-BJnJL8ES.js +141 -0
- package/build/server/chunks/context-BJnJL8ES.js.map +1 -0
- package/build/server/chunks/copy-ifB2TUP_.js +29 -0
- package/build/server/chunks/copy-ifB2TUP_.js.map +1 -0
- package/build/server/chunks/dialog-description-DJ0KQ8Zk.js +523 -0
- package/build/server/chunks/dialog-description-DJ0KQ8Zk.js.map +1 -0
- package/build/server/chunks/dialog-footer-CuTfgUTD.js +62 -0
- package/build/server/chunks/dialog-footer-CuTfgUTD.js.map +1 -0
- package/build/server/chunks/folder-kanban-pqeOGmPr.js +21 -0
- package/build/server/chunks/folder-kanban-pqeOGmPr.js.map +1 -0
- package/build/server/chunks/folder-open-Cs60gLjJ.js +18 -0
- package/build/server/chunks/folder-open-Cs60gLjJ.js.map +1 -0
- package/build/server/chunks/folders-u0VAZ6yv.js +24 -0
- package/build/server/chunks/folders-u0VAZ6yv.js.map +1 -0
- package/build/server/chunks/footerContext.svelte-DM5rvLUk.js +531 -0
- package/build/server/chunks/footerContext.svelte-DM5rvLUk.js.map +1 -0
- package/build/server/chunks/hooks.server-BHmZpgdz.js +225 -0
- package/build/server/chunks/hooks.server-BHmZpgdz.js.map +1 -0
- package/build/server/chunks/index2-DDc7DI9Y.js +430 -0
- package/build/server/chunks/index2-DDc7DI9Y.js.map +1 -0
- package/build/server/chunks/index3-BVw88ujT.js +4246 -0
- package/build/server/chunks/index3-BVw88ujT.js.map +1 -0
- package/build/server/chunks/index4-CCteFD1i.js +541 -0
- package/build/server/chunks/index4-CCteFD1i.js.map +1 -0
- package/build/server/chunks/input-BEmCftCF.js +53 -0
- package/build/server/chunks/input-BEmCftCF.js.map +1 -0
- package/build/server/chunks/label-D8oB1018.js +112 -0
- package/build/server/chunks/label-D8oB1018.js.map +1 -0
- package/build/server/chunks/link-2-D3b2vEpL.js +15 -0
- package/build/server/chunks/link-2-D3b2vEpL.js.map +1 -0
- package/build/server/chunks/mail-DZDbJkFt.js +17 -0
- package/build/server/chunks/mail-DZDbJkFt.js.map +1 -0
- package/build/server/chunks/minus-B7toCaYG.js +20 -0
- package/build/server/chunks/minus-B7toCaYG.js.map +1 -0
- package/build/server/chunks/noop-BGJY5rVY.js +270 -0
- package/build/server/chunks/noop-BGJY5rVY.js.map +1 -0
- package/build/server/chunks/package-CGdqH7nx.js +29 -0
- package/build/server/chunks/package-CGdqH7nx.js.map +1 -0
- package/build/server/chunks/permissions-compat.server-G174xsh6.js +19 -0
- package/build/server/chunks/permissions-compat.server-G174xsh6.js.map +1 -0
- package/build/server/chunks/permissions.server-D1KUdeD1.js +8 -0
- package/build/server/chunks/permissions.server-D1KUdeD1.js.map +1 -0
- package/build/server/chunks/plus-j_UY0EeU.js +11 -0
- package/build/server/chunks/plus-j_UY0EeU.js.map +1 -0
- package/build/server/chunks/providers.server-BYk2ehLM.js +4399 -0
- package/build/server/chunks/providers.server-BYk2ehLM.js.map +1 -0
- package/build/server/chunks/refresh-cw-B6mwsgBf.js +22 -0
- package/build/server/chunks/refresh-cw-B6mwsgBf.js.map +1 -0
- package/build/server/chunks/resolve.server-D79ZavTd.js +50 -0
- package/build/server/chunks/resolve.server-D79ZavTd.js.map +1 -0
- package/build/server/chunks/rotate-ccw-DChq5zhW.js +17 -0
- package/build/server/chunks/rotate-ccw-DChq5zhW.js.map +1 -0
- package/build/server/chunks/scroll-lock-NAQO_S1Y.js +2853 -0
- package/build/server/chunks/scroll-lock-NAQO_S1Y.js.map +1 -0
- package/build/server/chunks/scroll-text-Bi9gx_V4.js +21 -0
- package/build/server/chunks/scroll-text-Bi9gx_V4.js.map +1 -0
- package/build/server/chunks/server-LxtlHpuz.js +36 -0
- package/build/server/chunks/server-LxtlHpuz.js.map +1 -0
- package/build/server/chunks/settings-Cr5mYyBS.js +19 -0
- package/build/server/chunks/settings-Cr5mYyBS.js.map +1 -0
- package/build/server/chunks/shield-BSf8CVMT.js +18 -0
- package/build/server/chunks/shield-BSf8CVMT.js.map +1 -0
- package/build/server/chunks/shield-check-OpZRvDHN.js +19 -0
- package/build/server/chunks/shield-check-OpZRvDHN.js.map +1 -0
- package/build/server/chunks/star-KGWYAeYA.js +18 -0
- package/build/server/chunks/star-KGWYAeYA.js.map +1 -0
- package/build/server/chunks/textarea-DmyNBs20.js +559 -0
- package/build/server/chunks/textarea-DmyNBs20.js.map +1 -0
- package/build/server/chunks/trash-2-DmuR9br3.js +17 -0
- package/build/server/chunks/trash-2-DmuR9br3.js.map +1 -0
- package/build/server/chunks/triangle-alert-Dig9abwC.js +20 -0
- package/build/server/chunks/triangle-alert-Dig9abwC.js.map +1 -0
- package/build/server/chunks/user-plus-Jn4Z4v9g.js +16 -0
- package/build/server/chunks/user-plus-Jn4Z4v9g.js.map +1 -0
- package/build/server/chunks/users-BgwwwoIh.js +16 -0
- package/build/server/chunks/users-BgwwwoIh.js.map +1 -0
- package/build/server/chunks/utils2-UQQTHTw-.js +50 -0
- package/build/server/chunks/utils2-UQQTHTw-.js.map +1 -0
- package/build/server/chunks/utils3-Dv2HSd2-.js +80 -0
- package/build/server/chunks/utils3-Dv2HSd2-.js.map +1 -0
- package/build/server/chunks/x-B1q8Cpoy.js +14 -0
- package/build/server/chunks/x-B1q8Cpoy.js.map +1 -0
- package/build/server/index.js +2 -2
- package/build/server/index.js.map +1 -1
- package/build/server/manifest.js +71 -71
- package/build/server/manifest.js.map +1 -1
- package/package.json +9 -8
- package/templates/.env.example +11 -0
- package/build/client/_app/immutable/assets/0.-MS0dTYb.css +0 -1
- 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/chunks/3Ah3Y6N9.js +0 -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/5QwkwjrQ.js +0 -1
- package/build/client/_app/immutable/chunks/5QwkwjrQ.js.br +0 -0
- package/build/client/_app/immutable/chunks/5QwkwjrQ.js.gz +0 -0
- package/build/client/_app/immutable/chunks/B-Kuf-9K.js +0 -1
- package/build/client/_app/immutable/chunks/B-Kuf-9K.js.br +0 -0
- package/build/client/_app/immutable/chunks/B-Kuf-9K.js.gz +0 -0
- package/build/client/_app/immutable/chunks/B1z9if9B.js +0 -1
- package/build/client/_app/immutable/chunks/B1z9if9B.js.br +0 -0
- package/build/client/_app/immutable/chunks/B1z9if9B.js.gz +0 -0
- package/build/client/_app/immutable/chunks/B21bldal.js +0 -1
- package/build/client/_app/immutable/chunks/B21bldal.js.br +0 -0
- package/build/client/_app/immutable/chunks/B21bldal.js.gz +0 -0
- package/build/client/_app/immutable/chunks/B6_AR4oL.js +0 -1
- package/build/client/_app/immutable/chunks/B6_AR4oL.js.br +0 -0
- package/build/client/_app/immutable/chunks/B6_AR4oL.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BEFa4rcT.js +0 -1
- package/build/client/_app/immutable/chunks/BEFa4rcT.js.br +0 -4
- package/build/client/_app/immutable/chunks/BEFa4rcT.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BGIAOk5X.js +0 -1
- package/build/client/_app/immutable/chunks/BGIAOk5X.js.br +0 -0
- package/build/client/_app/immutable/chunks/BGIAOk5X.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BHhjUaik.js +0 -1
- package/build/client/_app/immutable/chunks/BHhjUaik.js.br +0 -0
- package/build/client/_app/immutable/chunks/BHhjUaik.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BIIXkPqf.js +0 -1
- package/build/client/_app/immutable/chunks/BIIXkPqf.js.br +0 -0
- package/build/client/_app/immutable/chunks/BIIXkPqf.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BLZ195WY.js +0 -1
- package/build/client/_app/immutable/chunks/BLZ195WY.js.br +0 -0
- package/build/client/_app/immutable/chunks/BLZ195WY.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BM8Ok6pJ.js +0 -1
- package/build/client/_app/immutable/chunks/BM8Ok6pJ.js.br +0 -0
- package/build/client/_app/immutable/chunks/BM8Ok6pJ.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BOsr6E_d.js +0 -1
- package/build/client/_app/immutable/chunks/BOsr6E_d.js.br +0 -1
- package/build/client/_app/immutable/chunks/BOsr6E_d.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BX0gN9mF.js +0 -1
- package/build/client/_app/immutable/chunks/BX0gN9mF.js.br +0 -0
- package/build/client/_app/immutable/chunks/BX0gN9mF.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BaMCSMGs.js +0 -1
- package/build/client/_app/immutable/chunks/BaMCSMGs.js.br +0 -0
- package/build/client/_app/immutable/chunks/BaMCSMGs.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BihI7LuH.js +0 -1
- package/build/client/_app/immutable/chunks/BihI7LuH.js.br +0 -0
- package/build/client/_app/immutable/chunks/BihI7LuH.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Bma65zV8.js +0 -1
- package/build/client/_app/immutable/chunks/Bma65zV8.js.br +0 -0
- package/build/client/_app/immutable/chunks/Bma65zV8.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BnzoF81W.js +0 -1
- package/build/client/_app/immutable/chunks/BnzoF81W.js.br +0 -1
- package/build/client/_app/immutable/chunks/BnzoF81W.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BpQqe39G.js +0 -1
- package/build/client/_app/immutable/chunks/BpQqe39G.js.br +0 -0
- package/build/client/_app/immutable/chunks/BpQqe39G.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BsKtJj5h.js +0 -1
- package/build/client/_app/immutable/chunks/BsKtJj5h.js.br +0 -0
- package/build/client/_app/immutable/chunks/BsKtJj5h.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BtugGMaj.js +0 -1
- package/build/client/_app/immutable/chunks/BtugGMaj.js.br +0 -0
- package/build/client/_app/immutable/chunks/BtugGMaj.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Buy2icyP.js +0 -9
- 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 +0 -1
- package/build/client/_app/immutable/chunks/Bwn5lHBl.js.br +0 -0
- package/build/client/_app/immutable/chunks/Bwn5lHBl.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C3WxOOC9.js +0 -1
- package/build/client/_app/immutable/chunks/C3WxOOC9.js.br +0 -0
- package/build/client/_app/immutable/chunks/C3WxOOC9.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C9JkBeMh.js +0 -2
- package/build/client/_app/immutable/chunks/C9JkBeMh.js.br +0 -0
- package/build/client/_app/immutable/chunks/C9JkBeMh.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CDmA5ezP.js +0 -1
- package/build/client/_app/immutable/chunks/CDmA5ezP.js.br +0 -0
- package/build/client/_app/immutable/chunks/CDmA5ezP.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CE_gxD9G.js +0 -1
- package/build/client/_app/immutable/chunks/CE_gxD9G.js.br +0 -0
- package/build/client/_app/immutable/chunks/CE_gxD9G.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CGKZc1Kf.js +0 -1
- package/build/client/_app/immutable/chunks/CGKZc1Kf.js.br +0 -0
- package/build/client/_app/immutable/chunks/CGKZc1Kf.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CIHhLSqA.js +0 -1
- package/build/client/_app/immutable/chunks/CIHhLSqA.js.br +0 -0
- package/build/client/_app/immutable/chunks/CIHhLSqA.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CNC_mCsM.js +0 -1
- package/build/client/_app/immutable/chunks/CNC_mCsM.js.br +0 -0
- package/build/client/_app/immutable/chunks/CNC_mCsM.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CV7cHKxn.js +0 -4108
- package/build/client/_app/immutable/chunks/CV7cHKxn.js.br +0 -0
- package/build/client/_app/immutable/chunks/CV7cHKxn.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CYyqq9B1.js +0 -1
- package/build/client/_app/immutable/chunks/CYyqq9B1.js.br +0 -0
- package/build/client/_app/immutable/chunks/CYyqq9B1.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CeItJQZm.js +0 -1
- package/build/client/_app/immutable/chunks/CeItJQZm.js.br +0 -0
- package/build/client/_app/immutable/chunks/CeItJQZm.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CeS0GhtF.js +0 -1
- package/build/client/_app/immutable/chunks/CeS0GhtF.js.br +0 -0
- package/build/client/_app/immutable/chunks/CeS0GhtF.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CnXIg_dO.js +0 -1
- package/build/client/_app/immutable/chunks/CnXIg_dO.js.br +0 -0
- package/build/client/_app/immutable/chunks/CnXIg_dO.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Cqb2-zYs.js +0 -1
- 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/CumXBEVX.js +0 -1
- package/build/client/_app/immutable/chunks/CumXBEVX.js.br +0 -0
- package/build/client/_app/immutable/chunks/CumXBEVX.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CzCTTv8Q.js +0 -1
- 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 +0 -1
- package/build/client/_app/immutable/chunks/D-3pI9hp.js.br +0 -0
- package/build/client/_app/immutable/chunks/D-3pI9hp.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D-Fls4-N.js +0 -1
- package/build/client/_app/immutable/chunks/D-Fls4-N.js.br +0 -0
- package/build/client/_app/immutable/chunks/D-Fls4-N.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D-MqyWHl.js +0 -3
- package/build/client/_app/immutable/chunks/D-MqyWHl.js.br +0 -0
- package/build/client/_app/immutable/chunks/D-MqyWHl.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D1xkoVpc.js +0 -1
- package/build/client/_app/immutable/chunks/D1xkoVpc.js.br +0 -3
- package/build/client/_app/immutable/chunks/D1xkoVpc.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D5ozKYdL.js +0 -1
- package/build/client/_app/immutable/chunks/D5ozKYdL.js.br +0 -0
- package/build/client/_app/immutable/chunks/D5ozKYdL.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DRpLcVdK.js +0 -1
- package/build/client/_app/immutable/chunks/DRpLcVdK.js.br +0 -0
- package/build/client/_app/immutable/chunks/DRpLcVdK.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DYfK6Plb.js +0 -1
- package/build/client/_app/immutable/chunks/DYfK6Plb.js.br +0 -1
- package/build/client/_app/immutable/chunks/DYfK6Plb.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DZM0bVcB.js +0 -1
- package/build/client/_app/immutable/chunks/DZM0bVcB.js.br +0 -0
- package/build/client/_app/immutable/chunks/DZM0bVcB.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D_gPt7DB.js +0 -1
- package/build/client/_app/immutable/chunks/D_gPt7DB.js.br +0 -0
- package/build/client/_app/immutable/chunks/D_gPt7DB.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DdEmEaOR.js +0 -1
- package/build/client/_app/immutable/chunks/DdEmEaOR.js.br +0 -0
- package/build/client/_app/immutable/chunks/DdEmEaOR.js.gz +0 -0
- package/build/client/_app/immutable/chunks/De-Sjn1V.js +0 -1
- package/build/client/_app/immutable/chunks/De-Sjn1V.js.br +0 -0
- package/build/client/_app/immutable/chunks/De-Sjn1V.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DeMiewtM.js +0 -1
- package/build/client/_app/immutable/chunks/DeMiewtM.js.br +0 -0
- package/build/client/_app/immutable/chunks/DeMiewtM.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DfbumCTS.js +0 -1
- package/build/client/_app/immutable/chunks/DfbumCTS.js.br +0 -0
- package/build/client/_app/immutable/chunks/DfbumCTS.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Diyh8RG-.js +0 -1
- package/build/client/_app/immutable/chunks/Diyh8RG-.js.br +0 -0
- package/build/client/_app/immutable/chunks/Diyh8RG-.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DkVLFJC2.js +0 -64
- package/build/client/_app/immutable/chunks/DkVLFJC2.js.br +0 -0
- package/build/client/_app/immutable/chunks/DkVLFJC2.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Dl_x4ktn.js +0 -1
- 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 +0 -1
- package/build/client/_app/immutable/chunks/Dn_lJm0y.js.br +0 -0
- package/build/client/_app/immutable/chunks/Dn_lJm0y.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DqK2lhM-.js +0 -1
- package/build/client/_app/immutable/chunks/DqK2lhM-.js.br +0 -0
- package/build/client/_app/immutable/chunks/DqK2lhM-.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Dr-qnmvi.js +0 -1
- package/build/client/_app/immutable/chunks/Dr-qnmvi.js.br +0 -0
- package/build/client/_app/immutable/chunks/Dr-qnmvi.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DtFVCiwY.js +0 -1
- package/build/client/_app/immutable/chunks/DtFVCiwY.js.br +0 -0
- package/build/client/_app/immutable/chunks/DtFVCiwY.js.gz +0 -0
- package/build/client/_app/immutable/chunks/NAqgbR3C.js +0 -1
- package/build/client/_app/immutable/chunks/NAqgbR3C.js.br +0 -0
- package/build/client/_app/immutable/chunks/NAqgbR3C.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Q9Y439fs.js +0 -1
- package/build/client/_app/immutable/chunks/Q9Y439fs.js.br +0 -0
- package/build/client/_app/immutable/chunks/Q9Y439fs.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Uv0-HWHq.js +0 -1
- package/build/client/_app/immutable/chunks/Uv0-HWHq.js.br +0 -0
- package/build/client/_app/immutable/chunks/Uv0-HWHq.js.gz +0 -0
- package/build/client/_app/immutable/chunks/snZK0J5H.js +0 -1
- package/build/client/_app/immutable/chunks/snZK0J5H.js.br +0 -0
- package/build/client/_app/immutable/chunks/snZK0J5H.js.gz +0 -0
- package/build/client/_app/immutable/chunks/vyYztzrZ.js +0 -1
- package/build/client/_app/immutable/chunks/vyYztzrZ.js.br +0 -0
- package/build/client/_app/immutable/chunks/vyYztzrZ.js.gz +0 -0
- package/build/client/_app/immutable/chunks/xQ1SsCxk.js +0 -1
- package/build/client/_app/immutable/chunks/xQ1SsCxk.js.br +0 -0
- package/build/client/_app/immutable/chunks/xQ1SsCxk.js.gz +0 -0
- package/build/client/_app/immutable/entry/app.CAm9P09D.js +0 -2
- package/build/client/_app/immutable/entry/app.CAm9P09D.js.br +0 -0
- package/build/client/_app/immutable/entry/app.CAm9P09D.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.D82mTtm4.js +0 -1
- package/build/client/_app/immutable/entry/start.D82mTtm4.js.br +0 -2
- package/build/client/_app/immutable/entry/start.D82mTtm4.js.gz +0 -0
- package/build/client/_app/immutable/nodes/0.Dr3zOYh5.js +0 -9
- 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.alumYP7m.js +0 -1
- package/build/client/_app/immutable/nodes/1.alumYP7m.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.alumYP7m.js.gz +0 -0
- package/build/client/_app/immutable/nodes/10.lZeHcKpq.js +0 -3
- 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.POFPfhZF.js +0 -2
- package/build/client/_app/immutable/nodes/11.POFPfhZF.js.br +0 -0
- package/build/client/_app/immutable/nodes/11.POFPfhZF.js.gz +0 -0
- package/build/client/_app/immutable/nodes/12.C3AQ8jKc.js +0 -1
- package/build/client/_app/immutable/nodes/12.C3AQ8jKc.js.br +0 -0
- package/build/client/_app/immutable/nodes/12.C3AQ8jKc.js.gz +0 -0
- package/build/client/_app/immutable/nodes/13.CDMqsLf1.js +0 -2
- package/build/client/_app/immutable/nodes/13.CDMqsLf1.js.br +0 -0
- package/build/client/_app/immutable/nodes/13.CDMqsLf1.js.gz +0 -0
- package/build/client/_app/immutable/nodes/14.CE8ivMm3.js +0 -2
- package/build/client/_app/immutable/nodes/14.CE8ivMm3.js.br +0 -0
- package/build/client/_app/immutable/nodes/14.CE8ivMm3.js.gz +0 -0
- package/build/client/_app/immutable/nodes/15.Vvu6yjkA.js +0 -13
- package/build/client/_app/immutable/nodes/15.Vvu6yjkA.js.br +0 -0
- package/build/client/_app/immutable/nodes/15.Vvu6yjkA.js.gz +0 -0
- package/build/client/_app/immutable/nodes/16.DcwpEBj_.js +0 -6
- package/build/client/_app/immutable/nodes/16.DcwpEBj_.js.br +0 -0
- package/build/client/_app/immutable/nodes/16.DcwpEBj_.js.gz +0 -0
- package/build/client/_app/immutable/nodes/17.CyW4vJzM.js +0 -2
- package/build/client/_app/immutable/nodes/17.CyW4vJzM.js.br +0 -0
- package/build/client/_app/immutable/nodes/17.CyW4vJzM.js.gz +0 -0
- package/build/client/_app/immutable/nodes/19.BZ_xsVtL.js +0 -2
- package/build/client/_app/immutable/nodes/19.BZ_xsVtL.js.br +0 -0
- package/build/client/_app/immutable/nodes/19.BZ_xsVtL.js.gz +0 -0
- package/build/client/_app/immutable/nodes/2.DEAwFDdd.js +0 -1
- package/build/client/_app/immutable/nodes/2.DEAwFDdd.js.br +0 -0
- package/build/client/_app/immutable/nodes/2.DEAwFDdd.js.gz +0 -0
- package/build/client/_app/immutable/nodes/20.BTFKcsqG.js +0 -11
- package/build/client/_app/immutable/nodes/20.BTFKcsqG.js.br +0 -0
- package/build/client/_app/immutable/nodes/20.BTFKcsqG.js.gz +0 -0
- package/build/client/_app/immutable/nodes/21.DZU8uW6y.js +0 -6
- package/build/client/_app/immutable/nodes/21.DZU8uW6y.js.br +0 -0
- package/build/client/_app/immutable/nodes/21.DZU8uW6y.js.gz +0 -0
- package/build/client/_app/immutable/nodes/23.CC7_PfIW.js +0 -16
- package/build/client/_app/immutable/nodes/23.CC7_PfIW.js.br +0 -0
- package/build/client/_app/immutable/nodes/23.CC7_PfIW.js.gz +0 -0
- package/build/client/_app/immutable/nodes/24.Byv4-bTY.js +0 -6
- package/build/client/_app/immutable/nodes/24.Byv4-bTY.js.br +0 -0
- package/build/client/_app/immutable/nodes/24.Byv4-bTY.js.gz +0 -0
- package/build/client/_app/immutable/nodes/25.Boy7QQiW.js +0 -1
- package/build/client/_app/immutable/nodes/25.Boy7QQiW.js.br +0 -0
- package/build/client/_app/immutable/nodes/25.Boy7QQiW.js.gz +0 -0
- package/build/client/_app/immutable/nodes/26.JTwwV2O8.js +0 -3
- package/build/client/_app/immutable/nodes/26.JTwwV2O8.js.br +0 -0
- package/build/client/_app/immutable/nodes/26.JTwwV2O8.js.gz +0 -0
- package/build/client/_app/immutable/nodes/27.CTug4-fG.js +0 -4
- package/build/client/_app/immutable/nodes/27.CTug4-fG.js.br +0 -0
- package/build/client/_app/immutable/nodes/27.CTug4-fG.js.gz +0 -0
- package/build/client/_app/immutable/nodes/28.CAQGi4kQ.js +0 -4
- package/build/client/_app/immutable/nodes/28.CAQGi4kQ.js.br +0 -0
- package/build/client/_app/immutable/nodes/28.CAQGi4kQ.js.gz +0 -0
- package/build/client/_app/immutable/nodes/29.CqjUz5IE.js +0 -2
- package/build/client/_app/immutable/nodes/29.CqjUz5IE.js.br +0 -0
- package/build/client/_app/immutable/nodes/29.CqjUz5IE.js.gz +0 -0
- package/build/client/_app/immutable/nodes/3.BoxyynqN.js +0 -1
- package/build/client/_app/immutable/nodes/3.BoxyynqN.js.br +0 -0
- package/build/client/_app/immutable/nodes/3.BoxyynqN.js.gz +0 -0
- package/build/client/_app/immutable/nodes/30.BNNkvutv.js +0 -2
- package/build/client/_app/immutable/nodes/30.BNNkvutv.js.br +0 -0
- package/build/client/_app/immutable/nodes/30.BNNkvutv.js.gz +0 -0
- package/build/client/_app/immutable/nodes/31.SiZTd523.js +0 -2
- package/build/client/_app/immutable/nodes/31.SiZTd523.js.br +0 -0
- package/build/client/_app/immutable/nodes/31.SiZTd523.js.gz +0 -0
- package/build/client/_app/immutable/nodes/32.9Ta_FSIA.js +0 -3
- package/build/client/_app/immutable/nodes/32.9Ta_FSIA.js.br +0 -0
- package/build/client/_app/immutable/nodes/32.9Ta_FSIA.js.gz +0 -0
- package/build/client/_app/immutable/nodes/5.Cd4MCA1q.js +0 -1
- package/build/client/_app/immutable/nodes/5.Cd4MCA1q.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.Cd4MCA1q.js.gz +0 -0
- package/build/client/_app/immutable/nodes/6.YxA0mFAY.js +0 -1
- package/build/client/_app/immutable/nodes/6.YxA0mFAY.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.YxA0mFAY.js.gz +0 -0
- package/build/client/_app/immutable/nodes/7.mlQRIDGT.js +0 -1
- package/build/client/_app/immutable/nodes/7.mlQRIDGT.js.br +0 -0
- package/build/client/_app/immutable/nodes/7.mlQRIDGT.js.gz +0 -0
- package/build/client/_app/immutable/nodes/8.BUuEFCdN.js +0 -2
- package/build/client/_app/immutable/nodes/8.BUuEFCdN.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.BUuEFCdN.js.gz +0 -0
- package/build/client/_app/immutable/nodes/9.ChO_G0OZ.js +0 -1
- package/build/client/_app/immutable/nodes/9.ChO_G0OZ.js.br +0 -0
- package/build/client/_app/immutable/nodes/9.ChO_G0OZ.js.gz +0 -0
- package/build/server/chunks/0-BGZb7GUr.js +0 -55
- package/build/server/chunks/0-BGZb7GUr.js.map +0 -1
- package/build/server/chunks/1-4eUBrx0x.js +0 -9
- package/build/server/chunks/1-4eUBrx0x.js.map +0 -1
- package/build/server/chunks/10-CoNR8vNf.js +0 -222
- package/build/server/chunks/10-CoNR8vNf.js.map +0 -1
- package/build/server/chunks/11-DHok25iQ.js +0 -59
- package/build/server/chunks/11-DHok25iQ.js.map +0 -1
- package/build/server/chunks/12-DVPsHnBz.js +0 -52
- package/build/server/chunks/12-DVPsHnBz.js.map +0 -1
- package/build/server/chunks/13-aJNjRfno.js +0 -57
- package/build/server/chunks/13-aJNjRfno.js.map +0 -1
- package/build/server/chunks/14-YfnFhQ6D.js +0 -100
- package/build/server/chunks/14-YfnFhQ6D.js.map +0 -1
- package/build/server/chunks/15-D-QAWfAg.js +0 -45
- package/build/server/chunks/15-D-QAWfAg.js.map +0 -1
- package/build/server/chunks/16-Dfo-3meu.js +0 -85
- package/build/server/chunks/16-Dfo-3meu.js.map +0 -1
- package/build/server/chunks/17-DEWS6epq.js +0 -9
- package/build/server/chunks/17-DEWS6epq.js.map +0 -1
- package/build/server/chunks/18-CM6a70dY.js +0 -74
- package/build/server/chunks/18-CM6a70dY.js.map +0 -1
- package/build/server/chunks/19-C_uYTPBT.js +0 -94
- package/build/server/chunks/19-C_uYTPBT.js.map +0 -1
- package/build/server/chunks/2-DDaFykPH.js +0 -43
- package/build/server/chunks/2-DDaFykPH.js.map +0 -1
- package/build/server/chunks/20-By9qcmuB.js +0 -196
- package/build/server/chunks/20-By9qcmuB.js.map +0 -1
- package/build/server/chunks/21-BLJKguad.js +0 -83
- package/build/server/chunks/21-BLJKguad.js.map +0 -1
- package/build/server/chunks/23-4STwQ9za.js +0 -137
- package/build/server/chunks/23-4STwQ9za.js.map +0 -1
- package/build/server/chunks/24-BHh-STmc.js +0 -145
- package/build/server/chunks/24-BHh-STmc.js.map +0 -1
- package/build/server/chunks/25-BzYQ8Zk-.js +0 -51
- package/build/server/chunks/25-BzYQ8Zk-.js.map +0 -1
- package/build/server/chunks/26-Bfl58Hw3.js +0 -9
- package/build/server/chunks/26-Bfl58Hw3.js.map +0 -1
- package/build/server/chunks/27-DFWp-27Q.js +0 -57
- package/build/server/chunks/27-DFWp-27Q.js.map +0 -1
- package/build/server/chunks/28-Cd6_JUTd.js +0 -69
- package/build/server/chunks/28-Cd6_JUTd.js.map +0 -1
- package/build/server/chunks/29-BRexBuNA.js +0 -55
- package/build/server/chunks/29-BRexBuNA.js.map +0 -1
- package/build/server/chunks/3-B-gJmChG.js +0 -9
- package/build/server/chunks/3-B-gJmChG.js.map +0 -1
- package/build/server/chunks/30-Bx8Em-LY.js +0 -57
- package/build/server/chunks/30-Bx8Em-LY.js.map +0 -1
- package/build/server/chunks/31-CQ-8s0Lw.js +0 -42
- package/build/server/chunks/31-CQ-8s0Lw.js.map +0 -1
- package/build/server/chunks/32-BmsICS9-.js +0 -34
- package/build/server/chunks/32-BmsICS9-.js.map +0 -1
- package/build/server/chunks/5-NxMK2sra.js +0 -32
- package/build/server/chunks/5-NxMK2sra.js.map +0 -1
- package/build/server/chunks/6-K_puLxs9.js +0 -40
- package/build/server/chunks/6-K_puLxs9.js.map +0 -1
- package/build/server/chunks/7-D5pMTZYx.js +0 -19
- package/build/server/chunks/7-D5pMTZYx.js.map +0 -1
- package/build/server/chunks/8-DRkbOfHx.js +0 -130
- package/build/server/chunks/8-DRkbOfHx.js.map +0 -1
- package/build/server/chunks/9-BbTfqtpG.js +0 -48
- package/build/server/chunks/9-BbTfqtpG.js.map +0 -1
- package/build/server/chunks/AppHeader-6ioAYhJf.js +0 -271
- package/build/server/chunks/AppHeader-6ioAYhJf.js.map +0 -1
- package/build/server/chunks/DefinitionCard-O1k8h5Pi.js +0 -258
- package/build/server/chunks/DefinitionCard-O1k8h5Pi.js.map +0 -1
- package/build/server/chunks/ErrorScreen-SHK14bo6.js +0 -131
- package/build/server/chunks/ErrorScreen-SHK14bo6.js.map +0 -1
- package/build/server/chunks/FilterableDropdown-W9AjyS0M.js +0 -61
- package/build/server/chunks/FilterableDropdown-W9AjyS0M.js.map +0 -1
- package/build/server/chunks/Icon-DbkwAOkZ.js +0 -76
- package/build/server/chunks/Icon-DbkwAOkZ.js.map +0 -1
- package/build/server/chunks/Icon2-DbkwAOkZ.js +0 -76
- package/build/server/chunks/Icon2-DbkwAOkZ.js.map +0 -1
- package/build/server/chunks/StatCard-Cj4i7_IY.js +0 -50
- package/build/server/chunks/StatCard-Cj4i7_IY.js.map +0 -1
- package/build/server/chunks/UserChip-fy4ucYa9.js +0 -1241
- package/build/server/chunks/UserChip-fy4ucYa9.js.map +0 -1
- package/build/server/chunks/_error.svelte-B_dLYaey.js +0 -30
- package/build/server/chunks/_error.svelte-B_dLYaey.js.map +0 -1
- package/build/server/chunks/_error.svelte-D_qATeW2.js +0 -28
- package/build/server/chunks/_error.svelte-D_qATeW2.js.map +0 -1
- package/build/server/chunks/_layout.svelte-BNCiY_LE.js +0 -107
- package/build/server/chunks/_layout.svelte-BNCiY_LE.js.map +0 -1
- package/build/server/chunks/_layout.svelte-BR1971uC.js +0 -154
- package/build/server/chunks/_layout.svelte-BR1971uC.js.map +0 -1
- package/build/server/chunks/_layout.svelte-CHTfYN7Z.js +0 -44
- package/build/server/chunks/_layout.svelte-CHTfYN7Z.js.map +0 -1
- package/build/server/chunks/_layout.svelte-DtDfOje_.js +0 -1042
- package/build/server/chunks/_layout.svelte-DtDfOje_.js.map +0 -1
- package/build/server/chunks/_page.svelte-2a3XlI01.js +0 -120
- package/build/server/chunks/_page.svelte-2a3XlI01.js.map +0 -1
- package/build/server/chunks/_page.svelte-6m8-zq9_.js +0 -10755
- package/build/server/chunks/_page.svelte-6m8-zq9_.js.map +0 -1
- package/build/server/chunks/_page.svelte-B-BjG1Bg.js +0 -332
- package/build/server/chunks/_page.svelte-B-BjG1Bg.js.map +0 -1
- package/build/server/chunks/_page.svelte-B2tNMNfb.js +0 -454
- package/build/server/chunks/_page.svelte-B2tNMNfb.js.map +0 -1
- package/build/server/chunks/_page.svelte-BLjq8C2p.js +0 -611
- package/build/server/chunks/_page.svelte-BLjq8C2p.js.map +0 -1
- package/build/server/chunks/_page.svelte-BX0FQQwV.js +0 -912
- package/build/server/chunks/_page.svelte-BX0FQQwV.js.map +0 -1
- package/build/server/chunks/_page.svelte-BX7fFjm7.js +0 -251
- package/build/server/chunks/_page.svelte-BX7fFjm7.js.map +0 -1
- package/build/server/chunks/_page.svelte-BXQInprQ.js +0 -275
- package/build/server/chunks/_page.svelte-BXQInprQ.js.map +0 -1
- package/build/server/chunks/_page.svelte-Bc3Ab2ud.js +0 -169
- package/build/server/chunks/_page.svelte-Bc3Ab2ud.js.map +0 -1
- package/build/server/chunks/_page.svelte-BziMQdom.js +0 -114
- package/build/server/chunks/_page.svelte-BziMQdom.js.map +0 -1
- package/build/server/chunks/_page.svelte-CYxHCZCC.js +0 -84
- package/build/server/chunks/_page.svelte-CYxHCZCC.js.map +0 -1
- package/build/server/chunks/_page.svelte-CckrYvJ6.js +0 -147
- package/build/server/chunks/_page.svelte-CckrYvJ6.js.map +0 -1
- package/build/server/chunks/_page.svelte-Cf8MfOXQ.js +0 -596
- package/build/server/chunks/_page.svelte-Cf8MfOXQ.js.map +0 -1
- package/build/server/chunks/_page.svelte-CxuFmBkK.js +0 -302
- package/build/server/chunks/_page.svelte-CxuFmBkK.js.map +0 -1
- package/build/server/chunks/_page.svelte-DphuJQee.js +0 -331
- package/build/server/chunks/_page.svelte-DphuJQee.js.map +0 -1
- package/build/server/chunks/_page.svelte-Dun4nEWl.js +0 -277
- package/build/server/chunks/_page.svelte-Dun4nEWl.js.map +0 -1
- package/build/server/chunks/_page.svelte-ELmid_qG.js +0 -120
- package/build/server/chunks/_page.svelte-ELmid_qG.js.map +0 -1
- package/build/server/chunks/_page.svelte-HTC9yaHJ.js +0 -71
- package/build/server/chunks/_page.svelte-HTC9yaHJ.js.map +0 -1
- package/build/server/chunks/_page.svelte-UNbcR5Wq.js +0 -715
- package/build/server/chunks/_page.svelte-UNbcR5Wq.js.map +0 -1
- package/build/server/chunks/_page.svelte-W41FvlvN.js +0 -530
- package/build/server/chunks/_page.svelte-W41FvlvN.js.map +0 -1
- package/build/server/chunks/_page.svelte-XLccLxWu.js +0 -558
- package/build/server/chunks/_page.svelte-XLccLxWu.js.map +0 -1
- package/build/server/chunks/_page.svelte-YVHQEj69.js +0 -3899
- package/build/server/chunks/_page.svelte-YVHQEj69.js.map +0 -1
- package/build/server/chunks/_page.svelte-pEdM2bKS.js +0 -57
- package/build/server/chunks/_page.svelte-pEdM2bKS.js.map +0 -1
- package/build/server/chunks/_page.svelte-tQDqmoYu.js +0 -425
- package/build/server/chunks/_page.svelte-tQDqmoYu.js.map +0 -1
- package/build/server/chunks/_server.ts-A3y5hBxw.js +0 -40
- package/build/server/chunks/_server.ts-A3y5hBxw.js.map +0 -1
- package/build/server/chunks/_server.ts-B5jlr2iF.js +0 -72
- package/build/server/chunks/_server.ts-B5jlr2iF.js.map +0 -1
- package/build/server/chunks/_server.ts-BLhNqGtF.js +0 -39
- package/build/server/chunks/_server.ts-BLhNqGtF.js.map +0 -1
- package/build/server/chunks/_server.ts-BON6qGm5.js +0 -77
- package/build/server/chunks/_server.ts-BON6qGm5.js.map +0 -1
- package/build/server/chunks/_server.ts-BO_GwwIE.js +0 -43
- package/build/server/chunks/_server.ts-BO_GwwIE.js.map +0 -1
- package/build/server/chunks/_server.ts-BUw5lGMN.js +0 -111
- package/build/server/chunks/_server.ts-BUw5lGMN.js.map +0 -1
- package/build/server/chunks/_server.ts-Bhj8Vx5l.js +0 -108
- package/build/server/chunks/_server.ts-Bhj8Vx5l.js.map +0 -1
- package/build/server/chunks/_server.ts-BqlGKKaE.js +0 -50
- package/build/server/chunks/_server.ts-BqlGKKaE.js.map +0 -1
- package/build/server/chunks/_server.ts-C-MiDKCm.js +0 -31
- package/build/server/chunks/_server.ts-C-MiDKCm.js.map +0 -1
- package/build/server/chunks/_server.ts-C05I9RVA.js +0 -40
- package/build/server/chunks/_server.ts-C05I9RVA.js.map +0 -1
- package/build/server/chunks/_server.ts-C4BZG5kA.js +0 -32
- package/build/server/chunks/_server.ts-C4BZG5kA.js.map +0 -1
- package/build/server/chunks/_server.ts-CEE9G3nv.js +0 -80
- package/build/server/chunks/_server.ts-CEE9G3nv.js.map +0 -1
- package/build/server/chunks/_server.ts-CJ37R1sx.js +0 -37
- package/build/server/chunks/_server.ts-CJ37R1sx.js.map +0 -1
- package/build/server/chunks/_server.ts-CJ5P0_cD.js +0 -75
- package/build/server/chunks/_server.ts-CJ5P0_cD.js.map +0 -1
- package/build/server/chunks/_server.ts-Ca-ZnaSe.js +0 -51
- package/build/server/chunks/_server.ts-Ca-ZnaSe.js.map +0 -1
- package/build/server/chunks/_server.ts-CewoOx5S.js +0 -60
- package/build/server/chunks/_server.ts-CewoOx5S.js.map +0 -1
- package/build/server/chunks/_server.ts-ChhV0tlQ.js +0 -86
- package/build/server/chunks/_server.ts-ChhV0tlQ.js.map +0 -1
- package/build/server/chunks/_server.ts-Ck5KHS5f.js +0 -36
- package/build/server/chunks/_server.ts-Ck5KHS5f.js.map +0 -1
- package/build/server/chunks/_server.ts-ClymRXMH.js +0 -44
- package/build/server/chunks/_server.ts-ClymRXMH.js.map +0 -1
- package/build/server/chunks/_server.ts-CsWWoLDJ.js +0 -41
- package/build/server/chunks/_server.ts-CsWWoLDJ.js.map +0 -1
- package/build/server/chunks/_server.ts-CtJaazcE.js +0 -83
- package/build/server/chunks/_server.ts-CtJaazcE.js.map +0 -1
- package/build/server/chunks/_server.ts-CyjVVRiT.js +0 -84
- package/build/server/chunks/_server.ts-CyjVVRiT.js.map +0 -1
- package/build/server/chunks/_server.ts-D0PjwFdv.js +0 -39
- package/build/server/chunks/_server.ts-D0PjwFdv.js.map +0 -1
- package/build/server/chunks/_server.ts-D7tgGcoB.js +0 -33
- package/build/server/chunks/_server.ts-D7tgGcoB.js.map +0 -1
- package/build/server/chunks/_server.ts-D9Jw0wGY.js +0 -398
- package/build/server/chunks/_server.ts-D9Jw0wGY.js.map +0 -1
- package/build/server/chunks/_server.ts-DBV9dA6A.js +0 -105
- package/build/server/chunks/_server.ts-DBV9dA6A.js.map +0 -1
- package/build/server/chunks/_server.ts-DLUA6_Lf.js +0 -327
- package/build/server/chunks/_server.ts-DLUA6_Lf.js.map +0 -1
- package/build/server/chunks/_server.ts-DM01ishT.js +0 -88
- package/build/server/chunks/_server.ts-DM01ishT.js.map +0 -1
- package/build/server/chunks/_server.ts-DNeVKrs8.js +0 -96
- package/build/server/chunks/_server.ts-DNeVKrs8.js.map +0 -1
- package/build/server/chunks/_server.ts-DWCKRNAG.js +0 -60
- package/build/server/chunks/_server.ts-DWCKRNAG.js.map +0 -1
- package/build/server/chunks/_server.ts-Db9C0y4L.js +0 -162
- package/build/server/chunks/_server.ts-Db9C0y4L.js.map +0 -1
- package/build/server/chunks/_server.ts-DlDf2qpE.js +0 -41
- package/build/server/chunks/_server.ts-DlDf2qpE.js.map +0 -1
- package/build/server/chunks/_server.ts-DmqbBNeI.js +0 -65
- package/build/server/chunks/_server.ts-DmqbBNeI.js.map +0 -1
- package/build/server/chunks/_server.ts-DwqLpa_k.js +0 -73
- package/build/server/chunks/_server.ts-DwqLpa_k.js.map +0 -1
- package/build/server/chunks/_server.ts-IVIAzAUs.js +0 -63
- package/build/server/chunks/_server.ts-IVIAzAUs.js.map +0 -1
- package/build/server/chunks/_server.ts-Xpgu2-ka.js +0 -101
- package/build/server/chunks/_server.ts-Xpgu2-ka.js.map +0 -1
- package/build/server/chunks/_server.ts-eVLE380Q.js +0 -31
- package/build/server/chunks/_server.ts-eVLE380Q.js.map +0 -1
- package/build/server/chunks/_server.ts-kighVn_d.js +0 -39
- package/build/server/chunks/_server.ts-kighVn_d.js.map +0 -1
- package/build/server/chunks/_server.ts-r2RVYvYA.js +0 -83
- package/build/server/chunks/_server.ts-r2RVYvYA.js.map +0 -1
- package/build/server/chunks/access.server-ByXvmWyF.js +0 -413
- package/build/server/chunks/access.server-ByXvmWyF.js.map +0 -1
- package/build/server/chunks/activity-BjtW_4T-.js +0 -18
- package/build/server/chunks/activity-BjtW_4T-.js.map +0 -1
- package/build/server/chunks/alert-description-CUK0afmb.js +0 -59
- package/build/server/chunks/alert-description-CUK0afmb.js.map +0 -1
- package/build/server/chunks/api-errors-C0SWfJj5.js +0 -101
- package/build/server/chunks/api-errors-C0SWfJj5.js.map +0 -1
- package/build/server/chunks/arrow-left-D0KqaESK.js +0 -14
- package/build/server/chunks/arrow-left-D0KqaESK.js.map +0 -1
- package/build/server/chunks/arrow-right-Bi1uWbBU.js +0 -14
- package/build/server/chunks/arrow-right-Bi1uWbBU.js.map +0 -1
- package/build/server/chunks/auth-bootstrap.server-zvPqZ6kt.js +0 -99
- package/build/server/chunks/auth-bootstrap.server-zvPqZ6kt.js.map +0 -1
- package/build/server/chunks/badge-Dslv369v.js +0 -50
- package/build/server/chunks/badge-Dslv369v.js.map +0 -1
- package/build/server/chunks/bootHealth.server-CLLVkbZZ.js +0 -58
- package/build/server/chunks/bootHealth.server-CLLVkbZZ.js.map +0 -1
- package/build/server/chunks/building-2-DJFEkZmC.js +0 -22
- package/build/server/chunks/building-2-DJFEkZmC.js.map +0 -1
- package/build/server/chunks/button-1GF48U_O.js +0 -73
- package/build/server/chunks/button-1GF48U_O.js.map +0 -1
- package/build/server/chunks/card-content-CLRedGcu.js +0 -46
- package/build/server/chunks/card-content-CLRedGcu.js.map +0 -1
- package/build/server/chunks/card-description-Cvz9Nl_J.js +0 -26
- package/build/server/chunks/card-description-Cvz9Nl_J.js.map +0 -1
- package/build/server/chunks/card-title-f3nMy4Cc.js +0 -46
- package/build/server/chunks/card-title-f3nMy4Cc.js.map +0 -1
- package/build/server/chunks/chevron-down-Cqowxf45.js +0 -11
- package/build/server/chunks/chevron-down-Cqowxf45.js.map +0 -1
- package/build/server/chunks/chevron-down2-HiD5tdXf.js +0 -11
- package/build/server/chunks/chevron-down2-HiD5tdXf.js.map +0 -1
- package/build/server/chunks/chevron-right-BZ8x48EK.js +0 -11
- package/build/server/chunks/chevron-right-BZ8x48EK.js.map +0 -1
- package/build/server/chunks/circle-CeSIvmWj.js +0 -11
- package/build/server/chunks/circle-CeSIvmWj.js.map +0 -1
- package/build/server/chunks/circle-alert-DNsq-x3V.js +0 -18
- package/build/server/chunks/circle-alert-DNsq-x3V.js.map +0 -1
- package/build/server/chunks/circle-alert2-Doldk45G.js +0 -18
- package/build/server/chunks/circle-alert2-Doldk45G.js.map +0 -1
- package/build/server/chunks/computeLimits-5PaWFMYq.js +0 -27
- package/build/server/chunks/computeLimits-5PaWFMYq.js.map +0 -1
- package/build/server/chunks/context-DKDYb-He.js +0 -138
- package/build/server/chunks/context-DKDYb-He.js.map +0 -1
- package/build/server/chunks/copy-DbzeZFQN.js +0 -29
- package/build/server/chunks/copy-DbzeZFQN.js.map +0 -1
- package/build/server/chunks/dialog-description-8UnYiAMX.js +0 -523
- package/build/server/chunks/dialog-description-8UnYiAMX.js.map +0 -1
- package/build/server/chunks/dialog-footer-CqbKEEQ-.js +0 -36
- package/build/server/chunks/dialog-footer-CqbKEEQ-.js.map +0 -1
- package/build/server/chunks/folder-kanban-BzEQk9ZB.js +0 -21
- package/build/server/chunks/folder-kanban-BzEQk9ZB.js.map +0 -1
- package/build/server/chunks/folder-open-CUgA3M22.js +0 -18
- package/build/server/chunks/folder-open-CUgA3M22.js.map +0 -1
- package/build/server/chunks/folders-DPJPvoz3.js +0 -24
- package/build/server/chunks/folders-DPJPvoz3.js.map +0 -1
- package/build/server/chunks/footerContext.svelte-oP__zW9C.js +0 -495
- package/build/server/chunks/footerContext.svelte-oP__zW9C.js.map +0 -1
- package/build/server/chunks/gauge-Az8B3w7C.js +0 -87
- package/build/server/chunks/gauge-Az8B3w7C.js.map +0 -1
- package/build/server/chunks/hooks.server-CwDixHQc.js +0 -218
- package/build/server/chunks/hooks.server-CwDixHQc.js.map +0 -1
- package/build/server/chunks/index2-D4a590Kd.js +0 -438
- package/build/server/chunks/index2-D4a590Kd.js.map +0 -1
- package/build/server/chunks/index3-0Z1R1__W.js +0 -4388
- package/build/server/chunks/index3-0Z1R1__W.js.map +0 -1
- package/build/server/chunks/index4-DWNr0jIL.js +0 -541
- package/build/server/chunks/index4-DWNr0jIL.js.map +0 -1
- package/build/server/chunks/input-DGJ03-ia.js +0 -53
- package/build/server/chunks/input-DGJ03-ia.js.map +0 -1
- package/build/server/chunks/label-Df1UqzdF.js +0 -112
- package/build/server/chunks/label-Df1UqzdF.js.map +0 -1
- package/build/server/chunks/link-2-dxaDBYcR.js +0 -15
- package/build/server/chunks/link-2-dxaDBYcR.js.map +0 -1
- package/build/server/chunks/mail-CXBfO_C7.js +0 -17
- package/build/server/chunks/mail-CXBfO_C7.js.map +0 -1
- package/build/server/chunks/noop-iPXixleG.js +0 -138
- package/build/server/chunks/noop-iPXixleG.js.map +0 -1
- package/build/server/chunks/package-CG2dCFrE.js +0 -29
- package/build/server/chunks/package-CG2dCFrE.js.map +0 -1
- package/build/server/chunks/permissions-compat.server-BDkKxDeZ.js +0 -19
- package/build/server/chunks/permissions-compat.server-BDkKxDeZ.js.map +0 -1
- package/build/server/chunks/permissions.server-7AwAAkY9.js +0 -8
- package/build/server/chunks/permissions.server-7AwAAkY9.js.map +0 -1
- package/build/server/chunks/plus-CY_pTStn.js +0 -11
- package/build/server/chunks/plus-CY_pTStn.js.map +0 -1
- package/build/server/chunks/providers.server-wGknM6CR.js +0 -4584
- package/build/server/chunks/providers.server-wGknM6CR.js.map +0 -1
- package/build/server/chunks/refresh-cw-CiiW6Kvx.js +0 -22
- package/build/server/chunks/refresh-cw-CiiW6Kvx.js.map +0 -1
- package/build/server/chunks/resolve.server-CvfANFCn.js +0 -50
- package/build/server/chunks/resolve.server-CvfANFCn.js.map +0 -1
- package/build/server/chunks/rotate-ccw-1C53L417.js +0 -17
- package/build/server/chunks/rotate-ccw-1C53L417.js.map +0 -1
- package/build/server/chunks/scroll-lock-BIz_BXmd.js +0 -1547
- package/build/server/chunks/scroll-lock-BIz_BXmd.js.map +0 -1
- package/build/server/chunks/scroll-text-CxtFfkcE.js +0 -21
- package/build/server/chunks/scroll-text-CxtFfkcE.js.map +0 -1
- package/build/server/chunks/server-C3-deqCy.js +0 -36
- package/build/server/chunks/server-C3-deqCy.js.map +0 -1
- package/build/server/chunks/settings-NH5q_HtF.js +0 -19
- package/build/server/chunks/settings-NH5q_HtF.js.map +0 -1
- package/build/server/chunks/shield-CHAFruKV.js +0 -18
- package/build/server/chunks/shield-CHAFruKV.js.map +0 -1
- package/build/server/chunks/shield-check-06Iz62as.js +0 -19
- package/build/server/chunks/shield-check-06Iz62as.js.map +0 -1
- package/build/server/chunks/star-bmBg3IsG.js +0 -18
- package/build/server/chunks/star-bmBg3IsG.js.map +0 -1
- package/build/server/chunks/textarea-A5IYPwqe.js +0 -685
- package/build/server/chunks/textarea-A5IYPwqe.js.map +0 -1
- package/build/server/chunks/trash-2-swQcKEqX.js +0 -17
- package/build/server/chunks/trash-2-swQcKEqX.js.map +0 -1
- package/build/server/chunks/triangle-alert-DuaFagu6.js +0 -20
- package/build/server/chunks/triangle-alert-DuaFagu6.js.map +0 -1
- package/build/server/chunks/user-plus-CPEDH5dh.js +0 -16
- package/build/server/chunks/user-plus-CPEDH5dh.js.map +0 -1
- package/build/server/chunks/users-Bd7CKN4d.js +0 -16
- package/build/server/chunks/users-Bd7CKN4d.js.map +0 -1
- package/build/server/chunks/utils2-BsnrDRob.js +0 -56
- package/build/server/chunks/utils2-BsnrDRob.js.map +0 -1
- package/build/server/chunks/utils3-B05Dmz_H.js +0 -9
- package/build/server/chunks/utils3-B05Dmz_H.js.map +0 -1
- package/build/server/chunks/x-e5o-84bg.js +0 -14
- package/build/server/chunks/x-e5o-84bg.js.map +0 -1
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
import { json } from '@sveltejs/kit';
|
|
2
|
+
import { randomUUID } from 'node:crypto';
|
|
3
|
+
import { mkdir, writeFile, unlink } from 'node:fs/promises';
|
|
4
|
+
import { resolve, join } from 'node:path';
|
|
5
|
+
import { p as private_env } from './shared-server-C3WdcJCQ.js';
|
|
6
|
+
import './context-BJnJL8ES.js';
|
|
7
|
+
import { f as findServerById } from './utils2-UQQTHTw-.js';
|
|
8
|
+
import { t as providers, L as LocalComputeServerStore, c as getComputeServerConfigStore } from './providers.server-BYk2ehLM.js';
|
|
9
|
+
import { z as requirePermission } from './access.server-BueyYEoY.js';
|
|
10
|
+
import 'zod';
|
|
11
|
+
import 'node:url';
|
|
12
|
+
import 'node:fs';
|
|
13
|
+
import '@supabase/supabase-js';
|
|
14
|
+
import './api-errors-BckwXK7Q.js';
|
|
15
|
+
import '@selvajs/compute/core';
|
|
16
|
+
|
|
17
|
+
function atRestSecretsCheck(report) {
|
|
18
|
+
const base = { id: "at-rest-secrets", label: "Compute server secrets" };
|
|
19
|
+
if (report === null) {
|
|
20
|
+
return {
|
|
21
|
+
...base,
|
|
22
|
+
status: "not_applicable",
|
|
23
|
+
summary: "The active data provider does not encrypt secrets at this layer — nothing to verify."
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
if (report.ok) {
|
|
27
|
+
return {
|
|
28
|
+
...base,
|
|
29
|
+
status: "ok",
|
|
30
|
+
summary: "All stored compute server API keys decrypt under the current SELVA_AT_REST_KEY."
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
const failed = report.failures.map((f) => `"${f.serverLabel}" (${f.reason}${f.cause ? `: ${f.cause}` : ""})`).join(", ");
|
|
34
|
+
const plaintext = report.plaintextFound;
|
|
35
|
+
return {
|
|
36
|
+
...base,
|
|
37
|
+
status: "degraded",
|
|
38
|
+
summary: `${report.failures.length} compute server key(s) could not be loaded: ${failed}.`,
|
|
39
|
+
remediation: plaintext ? "A key is stored in plaintext on disk — re-enter it via /admin/compute so it is encrypted." : "The stored ciphertext does not match the current SELVA_AT_REST_KEY (rotated key or restored backup). Re-enter the affected keys via /admin/compute, or restore the original SELVA_AT_REST_KEY, then run this check again."
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
const COMPUTE_PING_TIMEOUT_MS = 8e3;
|
|
43
|
+
async function computeReachabilityCheck(locals) {
|
|
44
|
+
const base = { id: "compute-reachable", label: "Default compute server" };
|
|
45
|
+
let config;
|
|
46
|
+
try {
|
|
47
|
+
config = await getComputeServerConfigStore().getConfig(locals.ctx);
|
|
48
|
+
} catch (err) {
|
|
49
|
+
return {
|
|
50
|
+
...base,
|
|
51
|
+
status: "error",
|
|
52
|
+
summary: `Could not read compute config: ${err instanceof Error ? err.message : String(err)}`
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
const server = config.defaultServerId ? findServerById(config, config.defaultServerId) : void 0;
|
|
56
|
+
if (!server) {
|
|
57
|
+
return {
|
|
58
|
+
...base,
|
|
59
|
+
status: "not_applicable",
|
|
60
|
+
summary: "No default compute server is configured — nothing to reach.",
|
|
61
|
+
remediation: "Add a server and set it as default in /admin/compute."
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
const controller = new AbortController();
|
|
65
|
+
const timer = setTimeout(() => controller.abort(), COMPUTE_PING_TIMEOUT_MS);
|
|
66
|
+
try {
|
|
67
|
+
const headers = {};
|
|
68
|
+
if (server.apiKey) headers["RhinoComputeKey"] = server.apiKey;
|
|
69
|
+
const res = await fetch(new URL("/healthcheck", server.serverUrl).toString(), {
|
|
70
|
+
signal: controller.signal,
|
|
71
|
+
headers
|
|
72
|
+
});
|
|
73
|
+
if (res.ok) {
|
|
74
|
+
return { ...base, status: "ok", summary: `"${server.label}" answered /healthcheck (200).` };
|
|
75
|
+
}
|
|
76
|
+
return {
|
|
77
|
+
...base,
|
|
78
|
+
status: "degraded",
|
|
79
|
+
summary: `"${server.label}" responded ${res.status} to /healthcheck.`,
|
|
80
|
+
remediation: res.status === 401 || res.status === 403 ? "Authentication rejected — verify the API key in /admin/compute." : "The server is reachable but unhealthy. Check the Rhino.Compute host."
|
|
81
|
+
};
|
|
82
|
+
} catch (err) {
|
|
83
|
+
const aborted = err instanceof Error && err.name === "AbortError";
|
|
84
|
+
return {
|
|
85
|
+
...base,
|
|
86
|
+
status: "degraded",
|
|
87
|
+
summary: aborted ? `"${server.label}" did not respond within ${COMPUTE_PING_TIMEOUT_MS / 1e3}s.` : `"${server.label}" is unreachable: ${err instanceof Error ? err.message : String(err)}.`,
|
|
88
|
+
remediation: `Confirm the Rhino.Compute host is running and ${server.serverUrl} is correct.`
|
|
89
|
+
};
|
|
90
|
+
} finally {
|
|
91
|
+
clearTimeout(timer);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
async function dataPathWritableCheck() {
|
|
95
|
+
const base = { id: "data-path-writable", label: "Data path writable" };
|
|
96
|
+
if (!(providers.data.computeServer instanceof LocalComputeServerStore)) {
|
|
97
|
+
return {
|
|
98
|
+
...base,
|
|
99
|
+
status: "not_applicable",
|
|
100
|
+
summary: "The active data provider does not persist to a local DATA_PATH."
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
const dataPath = private_env.DATA_PATH;
|
|
104
|
+
if (!dataPath) {
|
|
105
|
+
return {
|
|
106
|
+
...base,
|
|
107
|
+
status: "error",
|
|
108
|
+
summary: "DATA_PATH is unset but the local provider is active.",
|
|
109
|
+
remediation: "Set DATA_PATH in .env and restart."
|
|
110
|
+
};
|
|
111
|
+
}
|
|
112
|
+
const absolute = resolve(dataPath);
|
|
113
|
+
const probe = join(absolute, `.health-probe-${randomUUID()}`);
|
|
114
|
+
try {
|
|
115
|
+
await mkdir(absolute, { recursive: true });
|
|
116
|
+
await writeFile(probe, "ok");
|
|
117
|
+
await unlink(probe);
|
|
118
|
+
return { ...base, status: "ok", summary: `DATA_PATH (${dataPath}) is writable.` };
|
|
119
|
+
} catch (err) {
|
|
120
|
+
return {
|
|
121
|
+
...base,
|
|
122
|
+
status: "degraded",
|
|
123
|
+
summary: `DATA_PATH (${dataPath}) is not writable: ${err instanceof Error ? err.message : String(err)}.`,
|
|
124
|
+
remediation: "Check free disk space and that the directory is owned by the user running the app (`df -h`, `ls -la`)."
|
|
125
|
+
};
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
const GET = async ({ locals }) => {
|
|
129
|
+
requirePermission(locals, "instance_admin");
|
|
130
|
+
const checks = [];
|
|
131
|
+
const store = providers.data.computeServer;
|
|
132
|
+
if (store instanceof LocalComputeServerStore) {
|
|
133
|
+
try {
|
|
134
|
+
checks.push(atRestSecretsCheck(await store.verifySecrets()));
|
|
135
|
+
} catch (err) {
|
|
136
|
+
checks.push({
|
|
137
|
+
id: "at-rest-secrets",
|
|
138
|
+
label: "Compute server secrets",
|
|
139
|
+
status: "error",
|
|
140
|
+
summary: `Verification threw: ${err instanceof Error ? err.message : String(err)}`,
|
|
141
|
+
remediation: "Check server logs (`pm2 logs selva-compute`) for the underlying error."
|
|
142
|
+
});
|
|
143
|
+
}
|
|
144
|
+
} else {
|
|
145
|
+
checks.push(atRestSecretsCheck(null));
|
|
146
|
+
}
|
|
147
|
+
checks.push(...await Promise.all([computeReachabilityCheck(locals), dataPathWritableCheck()]));
|
|
148
|
+
const rank = {
|
|
149
|
+
ok: 0,
|
|
150
|
+
not_applicable: 0,
|
|
151
|
+
degraded: 2,
|
|
152
|
+
error: 3
|
|
153
|
+
};
|
|
154
|
+
const overall = checks.reduce(
|
|
155
|
+
(worst, c) => rank[c.status] > rank[worst] ? c.status : worst,
|
|
156
|
+
"ok"
|
|
157
|
+
);
|
|
158
|
+
return json({ overall, checkedAt: (/* @__PURE__ */ new Date()).toISOString(), checks });
|
|
159
|
+
};
|
|
160
|
+
|
|
161
|
+
export { GET };
|
|
162
|
+
//# sourceMappingURL=_server.ts-C4BxZ2rC.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_server.ts-C4BxZ2rC.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/api/system/health/_server.ts.js"],"sourcesContent":["import { json } from \"@sveltejs/kit\";\nimport { randomUUID } from \"node:crypto\";\nimport { mkdir, writeFile, unlink } from \"node:fs/promises\";\nimport { resolve, join } from \"node:path\";\nimport { p as private_env } from \"../../../../../../chunks/shared-server.js\";\nimport \"../../../../../../chunks/context.js\";\nimport { f as findServerById } from \"../../../../../../chunks/utils2.js\";\nimport { t as providers, L as LocalComputeServerStore, c as getComputeServerConfigStore } from \"../../../../../../chunks/providers.server.js\";\nimport { z as requirePermission } from \"../../../../../../chunks/access.server.js\";\nfunction atRestSecretsCheck(report) {\n const base = { id: \"at-rest-secrets\", label: \"Compute server secrets\" };\n if (report === null) {\n return {\n ...base,\n status: \"not_applicable\",\n summary: \"The active data provider does not encrypt secrets at this layer — nothing to verify.\"\n };\n }\n if (report.ok) {\n return {\n ...base,\n status: \"ok\",\n summary: \"All stored compute server API keys decrypt under the current SELVA_AT_REST_KEY.\"\n };\n }\n const failed = report.failures.map((f) => `\"${f.serverLabel}\" (${f.reason}${f.cause ? `: ${f.cause}` : \"\"})`).join(\", \");\n const plaintext = report.plaintextFound;\n return {\n ...base,\n status: \"degraded\",\n summary: `${report.failures.length} compute server key(s) could not be loaded: ${failed}.`,\n remediation: plaintext ? \"A key is stored in plaintext on disk — re-enter it via /admin/compute so it is encrypted.\" : \"The stored ciphertext does not match the current SELVA_AT_REST_KEY (rotated key or restored backup). Re-enter the affected keys via /admin/compute, or restore the original SELVA_AT_REST_KEY, then run this check again.\"\n };\n}\nconst COMPUTE_PING_TIMEOUT_MS = 8e3;\nasync function computeReachabilityCheck(locals) {\n const base = { id: \"compute-reachable\", label: \"Default compute server\" };\n let config;\n try {\n config = await getComputeServerConfigStore().getConfig(locals.ctx);\n } catch (err) {\n return {\n ...base,\n status: \"error\",\n summary: `Could not read compute config: ${err instanceof Error ? err.message : String(err)}`\n };\n }\n const server = config.defaultServerId ? findServerById(config, config.defaultServerId) : void 0;\n if (!server) {\n return {\n ...base,\n status: \"not_applicable\",\n summary: \"No default compute server is configured — nothing to reach.\",\n remediation: \"Add a server and set it as default in /admin/compute.\"\n };\n }\n const controller = new AbortController();\n const timer = setTimeout(() => controller.abort(), COMPUTE_PING_TIMEOUT_MS);\n try {\n const headers = {};\n if (server.apiKey) headers[\"RhinoComputeKey\"] = server.apiKey;\n const res = await fetch(new URL(\"/healthcheck\", server.serverUrl).toString(), {\n signal: controller.signal,\n headers\n });\n if (res.ok) {\n return { ...base, status: \"ok\", summary: `\"${server.label}\" answered /healthcheck (200).` };\n }\n return {\n ...base,\n status: \"degraded\",\n summary: `\"${server.label}\" responded ${res.status} to /healthcheck.`,\n remediation: res.status === 401 || res.status === 403 ? \"Authentication rejected — verify the API key in /admin/compute.\" : \"The server is reachable but unhealthy. Check the Rhino.Compute host.\"\n };\n } catch (err) {\n const aborted = err instanceof Error && err.name === \"AbortError\";\n return {\n ...base,\n status: \"degraded\",\n summary: aborted ? `\"${server.label}\" did not respond within ${COMPUTE_PING_TIMEOUT_MS / 1e3}s.` : `\"${server.label}\" is unreachable: ${err instanceof Error ? err.message : String(err)}.`,\n remediation: `Confirm the Rhino.Compute host is running and ${server.serverUrl} is correct.`\n };\n } finally {\n clearTimeout(timer);\n }\n}\nasync function dataPathWritableCheck() {\n const base = { id: \"data-path-writable\", label: \"Data path writable\" };\n if (!(providers.data.computeServer instanceof LocalComputeServerStore)) {\n return {\n ...base,\n status: \"not_applicable\",\n summary: \"The active data provider does not persist to a local DATA_PATH.\"\n };\n }\n const dataPath = private_env.DATA_PATH;\n if (!dataPath) {\n return {\n ...base,\n status: \"error\",\n summary: \"DATA_PATH is unset but the local provider is active.\",\n remediation: \"Set DATA_PATH in .env and restart.\"\n };\n }\n const absolute = resolve(dataPath);\n const probe = join(absolute, `.health-probe-${randomUUID()}`);\n try {\n await mkdir(absolute, { recursive: true });\n await writeFile(probe, \"ok\");\n await unlink(probe);\n return { ...base, status: \"ok\", summary: `DATA_PATH (${dataPath}) is writable.` };\n } catch (err) {\n return {\n ...base,\n status: \"degraded\",\n summary: `DATA_PATH (${dataPath}) is not writable: ${err instanceof Error ? err.message : String(err)}.`,\n remediation: \"Check free disk space and that the directory is owned by the user running the app (`df -h`, `ls -la`).\"\n };\n }\n}\nconst GET = async ({ locals }) => {\n requirePermission(locals, \"instance_admin\");\n const checks = [];\n const store = providers.data.computeServer;\n if (store instanceof LocalComputeServerStore) {\n try {\n checks.push(atRestSecretsCheck(await store.verifySecrets()));\n } catch (err) {\n checks.push({\n id: \"at-rest-secrets\",\n label: \"Compute server secrets\",\n status: \"error\",\n summary: `Verification threw: ${err instanceof Error ? err.message : String(err)}`,\n remediation: \"Check server logs (`pm2 logs selva-compute`) for the underlying error.\"\n });\n }\n } else {\n checks.push(atRestSecretsCheck(null));\n }\n checks.push(...await Promise.all([computeReachabilityCheck(locals), dataPathWritableCheck()]));\n const rank = {\n ok: 0,\n not_applicable: 0,\n degraded: 2,\n error: 3\n };\n const overall = checks.reduce(\n (worst, c) => rank[c.status] > rank[worst] ? c.status : worst,\n \"ok\"\n );\n return json({ overall, checkedAt: (/* @__PURE__ */ new Date()).toISOString(), checks });\n};\nexport {\n GET\n};\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { error, json } from '@sveltejs/kit';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { a as getAuthProvider, k as getOrganizationProvider, l as getPermissionStore } from './providers.server-BYk2ehLM.js';
|
|
4
|
+
import { w as requireManageInstanceUsers } from './access.server-BueyYEoY.js';
|
|
5
|
+
import { s as setUserPlatformPermissions } from './permissions.server-D1KUdeD1.js';
|
|
6
|
+
import { t as throwZodError, h as handleApiError } from './api-errors-BckwXK7Q.js';
|
|
7
|
+
import { S as SYSTEM_CONTEXT, j as hasPermission, M as MEMBER_ASSIGNABLE_PERMISSIONS, P as PlatformPermissionSchema, d as OrgPermissionSchema } from './context-BJnJL8ES.js';
|
|
8
|
+
import { f as flattenPermissions, s as splitFlatPermissions } from './permissions-compat.server-G174xsh6.js';
|
|
9
|
+
import './shared-server-C3WdcJCQ.js';
|
|
10
|
+
import 'node:url';
|
|
11
|
+
import 'node:path';
|
|
12
|
+
import 'node:fs';
|
|
13
|
+
import 'node:crypto';
|
|
14
|
+
import 'node:fs/promises';
|
|
15
|
+
import '@supabase/supabase-js';
|
|
16
|
+
import '@selvajs/compute/core';
|
|
17
|
+
import './utils2-UQQTHTw-.js';
|
|
18
|
+
|
|
19
|
+
const FlatPermissionSchema = z.union([PlatformPermissionSchema, OrgPermissionSchema]);
|
|
20
|
+
const BaseUserBody = z.object({
|
|
21
|
+
email: z.string().email("Valid email is required"),
|
|
22
|
+
permissions: z.array(FlatPermissionSchema)
|
|
23
|
+
});
|
|
24
|
+
const PasswordUserBody = BaseUserBody.extend({
|
|
25
|
+
password: z.string().min(8, "Password must be at least 8 characters").optional()
|
|
26
|
+
});
|
|
27
|
+
const GET = async ({ locals }) => {
|
|
28
|
+
requireManageInstanceUsers(locals);
|
|
29
|
+
const page = await getAuthProvider().listUsers({ limit: 200 });
|
|
30
|
+
if (page === null) {
|
|
31
|
+
throw error(
|
|
32
|
+
501,
|
|
33
|
+
"User management is not supported by the current auth provider. Configure DATA_PATH (local provider) or check your provider wiring."
|
|
34
|
+
);
|
|
35
|
+
}
|
|
36
|
+
const orgId = locals.ctx?.actingOrgId;
|
|
37
|
+
const orgs = getOrganizationProvider();
|
|
38
|
+
const userIds = page.items.map((u) => u.id);
|
|
39
|
+
const platformByUser = await getPermissionStore().getForBatch(locals.ctx, userIds);
|
|
40
|
+
const flattened = await Promise.all(
|
|
41
|
+
page.items.map(async (u) => {
|
|
42
|
+
let orgPerms = [];
|
|
43
|
+
if (orgId) {
|
|
44
|
+
const member = await orgs.getOrgMember(SYSTEM_CONTEXT, orgId, u.id);
|
|
45
|
+
orgPerms = member?.permissions ?? [];
|
|
46
|
+
}
|
|
47
|
+
const platformPerms = platformByUser.get(u.id) ?? [];
|
|
48
|
+
return {
|
|
49
|
+
...u,
|
|
50
|
+
platformPermissions: platformPerms,
|
|
51
|
+
permissions: flattenPermissions(
|
|
52
|
+
platformPerms,
|
|
53
|
+
orgPerms
|
|
54
|
+
)
|
|
55
|
+
};
|
|
56
|
+
})
|
|
57
|
+
);
|
|
58
|
+
return json(flattened);
|
|
59
|
+
};
|
|
60
|
+
const POST = async ({ request, locals }) => {
|
|
61
|
+
requireManageInstanceUsers(locals);
|
|
62
|
+
const auth = getAuthProvider();
|
|
63
|
+
const body = await request.json().catch(() => null);
|
|
64
|
+
const parsed = PasswordUserBody.safeParse(body);
|
|
65
|
+
if (!parsed.success) throwZodError(parsed.error);
|
|
66
|
+
const { email, password, permissions } = parsed.data;
|
|
67
|
+
const { platform, org } = splitFlatPermissions(permissions);
|
|
68
|
+
if (platform.length > 0 && !hasPermission(locals.ctx, "instance_admin")) {
|
|
69
|
+
throw error(403, "Only a platform admin can grant platform-scope permissions");
|
|
70
|
+
}
|
|
71
|
+
try {
|
|
72
|
+
let user;
|
|
73
|
+
if (auth.passwordAuth) {
|
|
74
|
+
if (!password) throw error(400, "Password is required");
|
|
75
|
+
user = await auth.passwordAuth.createUserWithPassword(email, password);
|
|
76
|
+
} else if (auth.createUser) {
|
|
77
|
+
user = await auth.createUser(email);
|
|
78
|
+
} else {
|
|
79
|
+
throw error(
|
|
80
|
+
501,
|
|
81
|
+
`User creation is not supported by ${auth.name}. Users are managed externally.`
|
|
82
|
+
);
|
|
83
|
+
}
|
|
84
|
+
if (platform.length > 0) {
|
|
85
|
+
await setUserPlatformPermissions(locals.ctx, user.id, platform);
|
|
86
|
+
}
|
|
87
|
+
const orgId = locals.ctx?.actingOrgId;
|
|
88
|
+
if (orgId) {
|
|
89
|
+
const joinedAt = (/* @__PURE__ */ new Date()).toISOString();
|
|
90
|
+
await getOrganizationProvider().addOrgMember(SYSTEM_CONTEXT, {
|
|
91
|
+
orgId,
|
|
92
|
+
userId: user.id,
|
|
93
|
+
role: "member",
|
|
94
|
+
permissions: org.filter((p) => MEMBER_ASSIGNABLE_PERMISSIONS.includes(p)),
|
|
95
|
+
joinedAt,
|
|
96
|
+
updatedAt: joinedAt,
|
|
97
|
+
updatedBy: locals.user?.id ?? user.id,
|
|
98
|
+
deletedAt: null
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
return json(user, { status: 201 });
|
|
102
|
+
} catch (err) {
|
|
103
|
+
handleApiError(err, "Failed to create user");
|
|
104
|
+
}
|
|
105
|
+
};
|
|
106
|
+
|
|
107
|
+
export { GET, POST };
|
|
108
|
+
//# sourceMappingURL=_server.ts-C4lve0n9.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_server.ts-C4lve0n9.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/api/users/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { z } from \"zod\";\nimport { a as getAuthProvider, k as getOrganizationProvider, l as getPermissionStore } from \"../../../../../chunks/providers.server.js\";\nimport { w as requireManageInstanceUsers } from \"../../../../../chunks/access.server.js\";\nimport { s as setUserPlatformPermissions } from \"../../../../../chunks/permissions.server.js\";\nimport { t as throwZodError, h as handleApiError } from \"../../../../../chunks/api-errors.js\";\nimport { P as PlatformPermissionSchema, d as OrgPermissionSchema, S as SYSTEM_CONTEXT, j as hasPermission, M as MEMBER_ASSIGNABLE_PERMISSIONS } from \"../../../../../chunks/context.js\";\nimport { f as flattenPermissions, s as splitFlatPermissions } from \"../../../../../chunks/permissions-compat.server.js\";\nconst FlatPermissionSchema = z.union([PlatformPermissionSchema, OrgPermissionSchema]);\nconst BaseUserBody = z.object({\n email: z.string().email(\"Valid email is required\"),\n permissions: z.array(FlatPermissionSchema)\n});\nconst PasswordUserBody = BaseUserBody.extend({\n password: z.string().min(8, \"Password must be at least 8 characters\").optional()\n});\nconst GET = async ({ locals }) => {\n requireManageInstanceUsers(locals);\n const page = await getAuthProvider().listUsers({ limit: 200 });\n if (page === null) {\n throw error(\n 501,\n \"User management is not supported by the current auth provider. Configure DATA_PATH (local provider) or check your provider wiring.\"\n );\n }\n const orgId = locals.ctx?.actingOrgId;\n const orgs = getOrganizationProvider();\n const userIds = page.items.map((u) => u.id);\n const platformByUser = await getPermissionStore().getForBatch(locals.ctx, userIds);\n const flattened = await Promise.all(\n page.items.map(async (u) => {\n let orgPerms = [];\n if (orgId) {\n const member = await orgs.getOrgMember(SYSTEM_CONTEXT, orgId, u.id);\n orgPerms = member?.permissions ?? [];\n }\n const platformPerms = platformByUser.get(u.id) ?? [];\n return {\n ...u,\n platformPermissions: platformPerms,\n permissions: flattenPermissions(\n platformPerms,\n orgPerms\n )\n };\n })\n );\n return json(flattened);\n};\nconst POST = async ({ request, locals }) => {\n requireManageInstanceUsers(locals);\n const auth = getAuthProvider();\n const body = await request.json().catch(() => null);\n const parsed = PasswordUserBody.safeParse(body);\n if (!parsed.success) throwZodError(parsed.error);\n const { email, password, permissions } = parsed.data;\n const { platform, org } = splitFlatPermissions(permissions);\n if (platform.length > 0 && !hasPermission(locals.ctx, \"instance_admin\")) {\n throw error(403, \"Only a platform admin can grant platform-scope permissions\");\n }\n try {\n let user;\n if (auth.passwordAuth) {\n if (!password) throw error(400, \"Password is required\");\n user = await auth.passwordAuth.createUserWithPassword(email, password);\n } else if (auth.createUser) {\n user = await auth.createUser(email);\n } else {\n throw error(\n 501,\n `User creation is not supported by ${auth.name}. Users are managed externally.`\n );\n }\n if (platform.length > 0) {\n await setUserPlatformPermissions(locals.ctx, user.id, platform);\n }\n const orgId = locals.ctx?.actingOrgId;\n if (orgId) {\n const joinedAt = (/* @__PURE__ */ new Date()).toISOString();\n await getOrganizationProvider().addOrgMember(SYSTEM_CONTEXT, {\n orgId,\n userId: user.id,\n role: \"member\",\n permissions: org.filter((p) => MEMBER_ASSIGNABLE_PERMISSIONS.includes(p)),\n joinedAt,\n updatedAt: joinedAt,\n updatedBy: locals.user?.id ?? user.id,\n deletedAt: null\n });\n }\n return json(user, { status: 201 });\n } catch (err) {\n handleApiError(err, \"Failed to create user\");\n }\n};\nexport {\n GET,\n POST\n};\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { error, json } from '@sveltejs/kit';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { randomUUID } from 'node:crypto';
|
|
4
|
+
import { n as getProjectProvider, P as ProviderError } from './providers.server-BYk2ehLM.js';
|
|
5
|
+
import { j as requireCanCreateProject } from './access.server-BueyYEoY.js';
|
|
6
|
+
import { h as handleApiError, t as throwZodError } from './api-errors-BckwXK7Q.js';
|
|
7
|
+
import { s as slugify } from './slug-BGuFQjqe.js';
|
|
8
|
+
import { g as ProjectVisibilitySchema } from './context-BJnJL8ES.js';
|
|
9
|
+
import './shared-server-C3WdcJCQ.js';
|
|
10
|
+
import 'node:url';
|
|
11
|
+
import 'node:path';
|
|
12
|
+
import 'node:fs';
|
|
13
|
+
import 'node:fs/promises';
|
|
14
|
+
import '@supabase/supabase-js';
|
|
15
|
+
import '@selvajs/compute/core';
|
|
16
|
+
import './utils2-UQQTHTw-.js';
|
|
17
|
+
|
|
18
|
+
const MAX_SLUG_ATTEMPTS = 25;
|
|
19
|
+
function isSlugConflict(err) {
|
|
20
|
+
return err instanceof ProviderError && err.statusCode === 409 && /projects_org_id_slug_key/.test(err.message);
|
|
21
|
+
}
|
|
22
|
+
function isNameConflict(err) {
|
|
23
|
+
return err instanceof ProviderError && err.statusCode === 409 && /projects_org_name_unique/.test(err.message);
|
|
24
|
+
}
|
|
25
|
+
const CreateProjectBody = z.object({
|
|
26
|
+
name: z.string().min(1, "Project name is required").max(128).trim(),
|
|
27
|
+
description: z.string().max(2e3).optional(),
|
|
28
|
+
visibility: ProjectVisibilitySchema.default("private"),
|
|
29
|
+
autoJoinOnUpload: z.boolean().optional()
|
|
30
|
+
});
|
|
31
|
+
const GET = async ({ locals }) => {
|
|
32
|
+
const ctx = locals.ctx;
|
|
33
|
+
if (!ctx.actingOrgId) throw error(400, "No active organization");
|
|
34
|
+
try {
|
|
35
|
+
const page = await getProjectProvider().listProjects(ctx, ctx.actingOrgId, { limit: 200 });
|
|
36
|
+
return json({ projects: page.items });
|
|
37
|
+
} catch (err) {
|
|
38
|
+
handleApiError(err, "Failed to load projects");
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
const POST = async ({ request, locals }) => {
|
|
42
|
+
const ctx = locals.ctx;
|
|
43
|
+
if (!ctx.actingOrgId) throw error(400, "No active organization");
|
|
44
|
+
await requireCanCreateProject(locals, ctx.actingOrgId);
|
|
45
|
+
const body = await request.json().catch(() => null);
|
|
46
|
+
const parsed = CreateProjectBody.safeParse(body);
|
|
47
|
+
if (!parsed.success) throwZodError(parsed.error);
|
|
48
|
+
const autoJoinOnUpload = parsed.data.autoJoinOnUpload ?? false;
|
|
49
|
+
if (autoJoinOnUpload && parsed.data.visibility !== "public") {
|
|
50
|
+
throw error(400, "autoJoinOnUpload requires visibility=public");
|
|
51
|
+
}
|
|
52
|
+
const projectStore = getProjectProvider();
|
|
53
|
+
const baseSlug = slugify(parsed.data.name) || "project";
|
|
54
|
+
const now = (/* @__PURE__ */ new Date()).toISOString();
|
|
55
|
+
const projectId = randomUUID();
|
|
56
|
+
for (let attempt = 0; attempt < MAX_SLUG_ATTEMPTS; attempt++) {
|
|
57
|
+
const slug = attempt === 0 ? baseSlug : `${baseSlug}-${attempt + 1}`;
|
|
58
|
+
const project = {
|
|
59
|
+
id: projectId,
|
|
60
|
+
orgId: ctx.actingOrgId,
|
|
61
|
+
name: parsed.data.name,
|
|
62
|
+
slug,
|
|
63
|
+
description: parsed.data.description,
|
|
64
|
+
visibility: parsed.data.visibility,
|
|
65
|
+
ownerId: locals.user.id,
|
|
66
|
+
createdBy: locals.user.id,
|
|
67
|
+
updatedBy: locals.user.id,
|
|
68
|
+
autoJoinOnUpload,
|
|
69
|
+
createdAt: now,
|
|
70
|
+
updatedAt: now,
|
|
71
|
+
deletedAt: null
|
|
72
|
+
};
|
|
73
|
+
try {
|
|
74
|
+
await projectStore.createProject(ctx, project);
|
|
75
|
+
return json(project, { status: 201 });
|
|
76
|
+
} catch (err) {
|
|
77
|
+
if (isNameConflict(err)) {
|
|
78
|
+
throw error(409, "A project with that name already exists in this organization.");
|
|
79
|
+
}
|
|
80
|
+
if (isSlugConflict(err)) continue;
|
|
81
|
+
handleApiError(err, "Failed to create project");
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
throw error(409, "Could not pick a unique project slug after several attempts.");
|
|
85
|
+
};
|
|
86
|
+
|
|
87
|
+
export { GET, POST };
|
|
88
|
+
//# sourceMappingURL=_server.ts-C8hNi-NM.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_server.ts-C8hNi-NM.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":";;;;;;;;;;;;;;;;;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,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;AACnC,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,EAAE,UAAU,EAAE,uBAAuB,CAAC,OAAO,CAAC,SAAS,CAAC;AACxD,EAAE,gBAAgB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ;AACxC,CAAC,CAAC;AACG,MAAC,GAAG,GAAG,OAAO,EAAE,MAAM,EAAE,KAAK;AAClC,EAAE,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG;AACxB,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,wBAAwB,CAAC;AAClE,EAAE,IAAI;AACN,IAAI,MAAM,IAAI,GAAG,MAAM,kBAAkB,EAAE,CAAC,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;AAC9F,IAAI,OAAO,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;AACzC,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,cAAc,CAAC,GAAG,EAAE,yBAAyB,CAAC;AAClD,EAAE;AACF;AACK,MAAC,IAAI,GAAG,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK;AAC5C,EAAE,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG;AACxB,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,wBAAwB,CAAC;AAClE,EAAE,MAAM,uBAAuB,CAAC,MAAM,EAAE,GAAG,CAAC,WAAW,CAAC;AACxD,EAAE,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC;AACrD,EAAE,MAAM,MAAM,GAAG,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC;AAClD,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC;AAClD,EAAE,MAAM,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,gBAAgB,IAAI,KAAK;AAChE,EAAE,IAAI,gBAAgB,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,KAAK,QAAQ,EAAE;AAC/D,IAAI,MAAM,KAAK,CAAC,GAAG,EAAE,6CAA6C,CAAC;AACnE,EAAE;AACF,EAAE,MAAM,YAAY,GAAG,kBAAkB,EAAE;AAC3C,EAAE,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,SAAS;AACzD,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,GAAG,CAAC,WAAW;AAC5B,MAAM,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI;AAC5B,MAAM,IAAI;AACV,MAAM,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW;AAC1C,MAAM,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU;AACxC,MAAM,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE;AAC7B,MAAM,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE;AAC/B,MAAM,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE;AAC/B,MAAM,gBAAgB;AACtB,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,GAAG,EAAE,OAAO,CAAC;AACpD,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,+DAA+D,CAAC;AACzF,MAAM;AACN,MAAM,IAAI,cAAc,CAAC,GAAG,CAAC,EAAE;AAC/B,MAAM,cAAc,CAAC,GAAG,EAAE,0BAA0B,CAAC;AACrD,IAAI;AACJ,EAAE;AACF,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,8DAA8D,CAAC;AAClF;;;;"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { error, json } from '@sveltejs/kit';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { M as MEMBER_ASSIGNABLE_PERMISSIONS, A as ALL_ORG_PERMISSIONS, e as OrgRoleSchema } from './context-BJnJL8ES.js';
|
|
4
|
+
import { k as getOrganizationProvider } from './providers.server-BYk2ehLM.js';
|
|
5
|
+
import { y as requireManageOrgMembers } from './access.server-BueyYEoY.js';
|
|
6
|
+
import { t as throwZodError, h as handleApiError } from './api-errors-BckwXK7Q.js';
|
|
7
|
+
import './shared-server-C3WdcJCQ.js';
|
|
8
|
+
import 'node:url';
|
|
9
|
+
import 'node:path';
|
|
10
|
+
import 'node:fs';
|
|
11
|
+
import 'node:crypto';
|
|
12
|
+
import 'node:fs/promises';
|
|
13
|
+
import '@supabase/supabase-js';
|
|
14
|
+
import '@selvajs/compute/core';
|
|
15
|
+
import './utils2-UQQTHTw-.js';
|
|
16
|
+
|
|
17
|
+
const PERMISSIONS_SCHEMA = z.array(
|
|
18
|
+
z.enum(ALL_ORG_PERMISSIONS)
|
|
19
|
+
);
|
|
20
|
+
const PatchSchema = z.object({
|
|
21
|
+
role: OrgRoleSchema.optional(),
|
|
22
|
+
permissions: PERMISSIONS_SCHEMA.optional()
|
|
23
|
+
}).refine((b) => b.role !== void 0 || b.permissions !== void 0, {
|
|
24
|
+
message: "Provide at least one of role, permissions"
|
|
25
|
+
});
|
|
26
|
+
const PATCH = async ({ params, request, locals }) => {
|
|
27
|
+
const { orgId, userId } = params;
|
|
28
|
+
if (!orgId || !userId) throw error(400, "Missing org ID or user ID");
|
|
29
|
+
requireManageOrgMembers(locals);
|
|
30
|
+
const ctx = locals.ctx;
|
|
31
|
+
if (ctx.actingOrgId !== orgId) {
|
|
32
|
+
throw error(403, "Acting org does not match the target org.");
|
|
33
|
+
}
|
|
34
|
+
const body = await request.json().catch(() => null);
|
|
35
|
+
const parsed = PatchSchema.safeParse(body);
|
|
36
|
+
if (!parsed.success) throwZodError(parsed.error);
|
|
37
|
+
const patch = parsed.data;
|
|
38
|
+
const orgs = getOrganizationProvider();
|
|
39
|
+
const [actorMember, target] = await Promise.all([
|
|
40
|
+
orgs.getOrgMember(ctx, orgId, ctx.userId),
|
|
41
|
+
orgs.getOrgMember(ctx, orgId, userId)
|
|
42
|
+
]);
|
|
43
|
+
if (!target) throw error(404, "Member not found in this organization.");
|
|
44
|
+
if (!actorMember) throw error(403, "You are not a member of this organization.");
|
|
45
|
+
if (patch.role !== void 0 && patch.role !== target.role) {
|
|
46
|
+
if (actorMember.role !== "owner") {
|
|
47
|
+
throw error(403, "Only the org owner can change roles.");
|
|
48
|
+
}
|
|
49
|
+
if (target.role === "owner" && patch.role !== "owner") {
|
|
50
|
+
const page = await orgs.listOrgMembers(ctx, orgId, { limit: 200 });
|
|
51
|
+
const otherOwners = page.items.filter(
|
|
52
|
+
(m) => m.role === "owner" && m.userId !== target.userId && !m.deletedAt
|
|
53
|
+
);
|
|
54
|
+
if (otherOwners.length === 0) {
|
|
55
|
+
throw error(
|
|
56
|
+
409,
|
|
57
|
+
"Cannot demote the sole owner of this organization. Promote another member to owner first."
|
|
58
|
+
);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
await orgs.updateOrgMemberRole(ctx, orgId, userId, patch.role);
|
|
62
|
+
}
|
|
63
|
+
if (patch.permissions !== void 0) {
|
|
64
|
+
const effectiveRole = patch.role ?? target.role;
|
|
65
|
+
const valid = effectiveRole === "member" ? new Set(MEMBER_ASSIGNABLE_PERMISSIONS) : new Set(ALL_ORG_PERMISSIONS);
|
|
66
|
+
const invalid = patch.permissions.filter((p) => !valid.has(p));
|
|
67
|
+
if (invalid.length > 0) {
|
|
68
|
+
throw error(
|
|
69
|
+
400,
|
|
70
|
+
`Permissions [${invalid.join(", ")}] cannot be assigned to a ${effectiveRole}.`
|
|
71
|
+
);
|
|
72
|
+
}
|
|
73
|
+
try {
|
|
74
|
+
await orgs.updateOrgMemberPermissions(ctx, orgId, userId, patch.permissions);
|
|
75
|
+
} catch (err) {
|
|
76
|
+
handleApiError(err, "Failed to update permissions");
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
return json({ success: true });
|
|
80
|
+
};
|
|
81
|
+
|
|
82
|
+
export { PATCH };
|
|
83
|
+
//# sourceMappingURL=_server.ts-CFmfnLGv.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_server.ts-CFmfnLGv.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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"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { error, json } from '@sveltejs/kit';
|
|
2
|
+
import { randomUUID } from 'node:crypto';
|
|
3
|
+
import { z } from 'zod';
|
|
4
|
+
import { j as getInviteStore } from './providers.server-BYk2ehLM.js';
|
|
5
|
+
import { y as requireManageOrgMembers } from './access.server-BueyYEoY.js';
|
|
6
|
+
import { h as handleApiError, t as throwZodError } from './api-errors-BckwXK7Q.js';
|
|
7
|
+
import { M as MEMBER_ASSIGNABLE_PERMISSIONS, D as DEFAULT_ORG_PERMISSIONS, e as OrgRoleSchema, P as PlatformPermissionSchema, d as OrgPermissionSchema } from './context-BJnJL8ES.js';
|
|
8
|
+
import { s as splitFlatPermissions } from './permissions-compat.server-G174xsh6.js';
|
|
9
|
+
import { m as mintRawToken, h as hashToken } from './token.server2-CaWL-Isp.js';
|
|
10
|
+
import './shared-server-C3WdcJCQ.js';
|
|
11
|
+
import 'node:url';
|
|
12
|
+
import 'node:path';
|
|
13
|
+
import 'node:fs';
|
|
14
|
+
import 'node:fs/promises';
|
|
15
|
+
import '@supabase/supabase-js';
|
|
16
|
+
import '@selvajs/compute/core';
|
|
17
|
+
import './utils2-UQQTHTw-.js';
|
|
18
|
+
|
|
19
|
+
const FlatPermissionSchema = z.union([PlatformPermissionSchema, OrgPermissionSchema]);
|
|
20
|
+
const CreateBody = z.object({
|
|
21
|
+
email: z.string().email("Valid email is required").transform((s) => s.toLowerCase().trim()),
|
|
22
|
+
orgRole: OrgRoleSchema.default("member"),
|
|
23
|
+
permissions: z.array(FlatPermissionSchema).default([])
|
|
24
|
+
});
|
|
25
|
+
const INVITE_TTL_MS = 7 * 24 * 60 * 60 * 1e3;
|
|
26
|
+
const GET = async ({ locals }) => {
|
|
27
|
+
requireManageOrgMembers(locals);
|
|
28
|
+
const ctx = locals.ctx;
|
|
29
|
+
if (!ctx.actingOrgId) throw error(400, "No active organization");
|
|
30
|
+
try {
|
|
31
|
+
const page = await getInviteStore().listByOrg(ctx, ctx.actingOrgId, { limit: 200 });
|
|
32
|
+
const items = page.items.map(({ tokenHash: _omit, ...rest }) => rest);
|
|
33
|
+
return json(items);
|
|
34
|
+
} catch (err) {
|
|
35
|
+
handleApiError(err, "Failed to list invites");
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
const POST = async ({ request, locals, url }) => {
|
|
39
|
+
requireManageOrgMembers(locals);
|
|
40
|
+
const ctx = locals.ctx;
|
|
41
|
+
const user = locals.user;
|
|
42
|
+
if (!ctx.actingOrgId) throw error(400, "No active organization");
|
|
43
|
+
const body = await request.json().catch(() => null);
|
|
44
|
+
const parsed = CreateBody.safeParse(body);
|
|
45
|
+
if (!parsed.success) throwZodError(parsed.error);
|
|
46
|
+
try {
|
|
47
|
+
const { org: submittedOrgPerms } = splitFlatPermissions(parsed.data.permissions);
|
|
48
|
+
const orgPermissions = parsed.data.orgRole === "member" ? submittedOrgPerms.filter((p) => MEMBER_ASSIGNABLE_PERMISSIONS.includes(p)) : [...DEFAULT_ORG_PERMISSIONS[parsed.data.orgRole]];
|
|
49
|
+
const rawToken = mintRawToken();
|
|
50
|
+
const now = /* @__PURE__ */ new Date();
|
|
51
|
+
const invite = {
|
|
52
|
+
id: randomUUID(),
|
|
53
|
+
tokenHash: hashToken(rawToken),
|
|
54
|
+
email: parsed.data.email,
|
|
55
|
+
orgId: ctx.actingOrgId,
|
|
56
|
+
orgRole: parsed.data.orgRole,
|
|
57
|
+
orgPermissions,
|
|
58
|
+
invitedBy: user.id,
|
|
59
|
+
createdAt: now.toISOString(),
|
|
60
|
+
expiresAt: new Date(now.getTime() + INVITE_TTL_MS).toISOString()
|
|
61
|
+
};
|
|
62
|
+
await getInviteStore().create(ctx, invite);
|
|
63
|
+
const acceptUrl = `${url.origin}/accept-invite?token=${rawToken}`;
|
|
64
|
+
const { tokenHash: _omit, ...inviteForClient } = invite;
|
|
65
|
+
return json({ invite: inviteForClient, acceptUrl }, { status: 201 });
|
|
66
|
+
} catch (err) {
|
|
67
|
+
handleApiError(err, "Failed to create invite");
|
|
68
|
+
}
|
|
69
|
+
};
|
|
70
|
+
|
|
71
|
+
export { GET, POST };
|
|
72
|
+
//# sourceMappingURL=_server.ts-CVgSO8yh.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_server.ts-CVgSO8yh.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/invites/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { randomUUID } from \"node:crypto\";\nimport { z } from \"zod\";\nimport { j as getInviteStore } from \"../../../../chunks/providers.server.js\";\nimport { y as requireManageOrgMembers } from \"../../../../chunks/access.server.js\";\nimport { h as handleApiError, t as throwZodError } from \"../../../../chunks/api-errors.js\";\nimport { P as PlatformPermissionSchema, d as OrgPermissionSchema, e as OrgRoleSchema, M as MEMBER_ASSIGNABLE_PERMISSIONS, D as DEFAULT_ORG_PERMISSIONS } from \"../../../../chunks/context.js\";\nimport { s as splitFlatPermissions } from \"../../../../chunks/permissions-compat.server.js\";\nimport { m as mintRawToken, h as hashToken } from \"../../../../chunks/token.server2.js\";\nconst FlatPermissionSchema = z.union([PlatformPermissionSchema, OrgPermissionSchema]);\nconst CreateBody = z.object({\n email: z.string().email(\"Valid email is required\").transform((s) => s.toLowerCase().trim()),\n orgRole: OrgRoleSchema.default(\"member\"),\n permissions: z.array(FlatPermissionSchema).default([])\n});\nconst INVITE_TTL_MS = 7 * 24 * 60 * 60 * 1e3;\nconst GET = async ({ locals }) => {\n requireManageOrgMembers(locals);\n const ctx = locals.ctx;\n if (!ctx.actingOrgId) throw error(400, \"No active organization\");\n try {\n const page = await getInviteStore().listByOrg(ctx, ctx.actingOrgId, { limit: 200 });\n const items = page.items.map(({ tokenHash: _omit, ...rest }) => rest);\n return json(items);\n } catch (err) {\n handleApiError(err, \"Failed to list invites\");\n }\n};\nconst POST = async ({ request, locals, url }) => {\n requireManageOrgMembers(locals);\n const ctx = locals.ctx;\n const user = locals.user;\n if (!ctx.actingOrgId) throw error(400, \"No active organization\");\n const body = await request.json().catch(() => null);\n const parsed = CreateBody.safeParse(body);\n if (!parsed.success) throwZodError(parsed.error);\n try {\n const { org: submittedOrgPerms } = splitFlatPermissions(parsed.data.permissions);\n const orgPermissions = parsed.data.orgRole === \"member\" ? submittedOrgPerms.filter((p) => MEMBER_ASSIGNABLE_PERMISSIONS.includes(p)) : [...DEFAULT_ORG_PERMISSIONS[parsed.data.orgRole]];\n const rawToken = mintRawToken();\n const now = /* @__PURE__ */ new Date();\n const invite = {\n id: randomUUID(),\n tokenHash: hashToken(rawToken),\n email: parsed.data.email,\n orgId: ctx.actingOrgId,\n orgRole: parsed.data.orgRole,\n orgPermissions,\n invitedBy: user.id,\n createdAt: now.toISOString(),\n expiresAt: new Date(now.getTime() + INVITE_TTL_MS).toISOString()\n };\n await getInviteStore().create(ctx, invite);\n const acceptUrl = `${url.origin}/accept-invite?token=${rawToken}`;\n const { tokenHash: _omit, ...inviteForClient } = invite;\n return json({ invite: inviteForClient, acceptUrl }, { status: 201 });\n } catch (err) {\n handleApiError(err, \"Failed to create invite\");\n }\n};\nexport {\n GET,\n POST\n};\n"],"names":[],"mappings":"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"}
|