@modern-admin/web 0.2.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/dist/lib/app.d.ts +1 -0
- package/dist/lib/app.d.ts.map +1 -0
- package/dist/lib/index.d.ts +1 -0
- package/dist/lib/index.d.ts.map +1 -0
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/mount.d.ts +1 -0
- package/dist/lib/mount.d.ts.map +1 -0
- package/dist/lib/runtime-config.d.ts +1 -0
- package/dist/lib/runtime-config.d.ts.map +1 -0
- package/dist/standalone/assets/ai-assistant-widget-laqH_9UQ.js +2 -0
- package/dist/standalone/assets/ai-assistant-widget-laqH_9UQ.js.br +0 -0
- package/dist/standalone/assets/ai-assistant-widget-laqH_9UQ.js.gz +0 -0
- package/dist/standalone/assets/ai-assistant-widget-laqH_9UQ.js.map +1 -0
- package/dist/standalone/assets/audit-log-page-3t8elFPn.js +2 -0
- package/dist/standalone/assets/audit-log-page-3t8elFPn.js.br +0 -0
- package/dist/standalone/assets/audit-log-page-3t8elFPn.js.gz +0 -0
- package/dist/standalone/assets/{audit-log-page-BtQee6RK.js.map → audit-log-page-3t8elFPn.js.map} +1 -1
- package/dist/standalone/assets/badge-6nyM5Jft.js +2 -0
- package/dist/standalone/assets/{badge-54ntzaYc.js.map → badge-6nyM5Jft.js.map} +1 -1
- package/dist/standalone/assets/{bot-Ct10WUaE.js → bot-DFDgGfNj.js} +2 -2
- package/dist/standalone/assets/{bot-Ct10WUaE.js.map → bot-DFDgGfNj.js.map} +1 -1
- package/dist/standalone/assets/calendar-C1Ecnytz.js +2 -0
- package/dist/standalone/assets/calendar-C1Ecnytz.js.br +0 -0
- package/dist/standalone/assets/calendar-C1Ecnytz.js.gz +0 -0
- package/dist/standalone/assets/calendar-C1Ecnytz.js.map +1 -0
- package/dist/standalone/assets/card-4cS4uWCP.js +2 -0
- package/dist/standalone/assets/card-4cS4uWCP.js.br +0 -0
- package/dist/standalone/assets/card-4cS4uWCP.js.gz +0 -0
- package/dist/standalone/assets/{card-BxVP8OBf.js.map → card-4cS4uWCP.js.map} +1 -1
- package/dist/standalone/assets/chart-widget-1GPloJY4.js +60 -0
- package/dist/standalone/assets/chart-widget-1GPloJY4.js.br +0 -0
- package/dist/standalone/assets/chart-widget-1GPloJY4.js.gz +0 -0
- package/dist/standalone/assets/chart-widget-1GPloJY4.js.map +1 -0
- package/dist/standalone/assets/chevrons-up-down-BHCs46XQ.js +2 -0
- package/dist/standalone/assets/chevrons-up-down-BHCs46XQ.js.map +1 -0
- package/dist/standalone/assets/{clock-iyXvoRDc.js → clock-OCmX6DtA.js} +2 -2
- package/dist/standalone/assets/{clock-iyXvoRDc.js.map → clock-OCmX6DtA.js.map} +1 -1
- package/dist/standalone/assets/command-C1FjGx6t.js +2 -0
- package/dist/standalone/assets/command-C1FjGx6t.js.br +0 -0
- package/dist/standalone/assets/command-C1FjGx6t.js.gz +0 -0
- package/dist/standalone/assets/{command-BPNCtx-E.js.map → command-C1FjGx6t.js.map} +1 -1
- package/dist/standalone/assets/copy-BexCWf4U.js +2 -0
- package/dist/standalone/assets/copy-BexCWf4U.js.map +1 -0
- package/dist/standalone/assets/createLucideIcon-CUopU_LC.js +2 -0
- package/dist/standalone/assets/createLucideIcon-CUopU_LC.js.br +0 -0
- package/dist/standalone/assets/createLucideIcon-CUopU_LC.js.gz +0 -0
- package/dist/standalone/assets/{createLucideIcon-DSvTabTT.js.map → createLucideIcon-CUopU_LC.js.map} +1 -1
- package/dist/standalone/assets/date-picker-DVnnp1Ez.js +2 -0
- package/dist/standalone/assets/date-picker-DVnnp1Ez.js.br +0 -0
- package/dist/standalone/assets/date-picker-DVnnp1Ez.js.gz +0 -0
- package/dist/standalone/assets/date-picker-DVnnp1Ez.js.map +1 -0
- package/dist/standalone/assets/dist-CvKz-wgE.js +2 -0
- package/dist/standalone/assets/dist-CvKz-wgE.js.br +0 -0
- package/dist/standalone/assets/dist-CvKz-wgE.js.gz +0 -0
- package/dist/standalone/assets/dist-CvKz-wgE.js.map +1 -0
- package/dist/standalone/assets/dist-Dpg8xy_r.js +2 -0
- package/dist/standalone/assets/dist-Dpg8xy_r.js.br +0 -0
- package/dist/standalone/assets/dist-Dpg8xy_r.js.gz +0 -0
- package/dist/standalone/assets/dist-Dpg8xy_r.js.map +1 -0
- package/dist/standalone/assets/dist-DuSTm0pk.js +2 -0
- package/dist/standalone/assets/dist-DuSTm0pk.js.br +0 -0
- package/dist/standalone/assets/dist-DuSTm0pk.js.gz +0 -0
- package/dist/standalone/assets/dist-DuSTm0pk.js.map +1 -0
- package/dist/standalone/assets/edit-page-DFmI1Ckp.js +2 -0
- package/dist/standalone/assets/edit-page-DFmI1Ckp.js.br +0 -0
- package/dist/standalone/assets/edit-page-DFmI1Ckp.js.gz +0 -0
- package/dist/standalone/assets/edit-page-DFmI1Ckp.js.map +1 -0
- package/dist/standalone/assets/empty-D9nNJb_Y.js +2 -0
- package/dist/standalone/assets/empty-D9nNJb_Y.js.br +0 -0
- package/dist/standalone/assets/empty-D9nNJb_Y.js.gz +0 -0
- package/dist/standalone/assets/empty-D9nNJb_Y.js.map +1 -0
- package/dist/standalone/assets/{file-text-Cq--5mhO.js → file-text-CcLZq8HA.js} +2 -2
- package/dist/standalone/assets/{file-text-Cq--5mhO.js.map → file-text-CcLZq8HA.js.map} +1 -1
- package/dist/standalone/assets/{folder-symlink-DjXnrBKd.js → folder-plus-DebVc0CA.js} +2 -2
- package/dist/standalone/assets/folder-plus-DebVc0CA.js.br +0 -0
- package/dist/standalone/assets/folder-plus-DebVc0CA.js.gz +0 -0
- package/dist/standalone/assets/folder-plus-DebVc0CA.js.map +1 -0
- package/dist/standalone/assets/folder-symlink-iMRmgjVt.js +2 -0
- package/dist/standalone/assets/folder-symlink-iMRmgjVt.js.map +1 -0
- package/dist/standalone/assets/global-search-dialog--zUHqLIo.js +2 -0
- package/dist/standalone/assets/global-search-dialog--zUHqLIo.js.br +0 -0
- package/dist/standalone/assets/global-search-dialog--zUHqLIo.js.gz +0 -0
- package/dist/standalone/assets/global-search-dialog--zUHqLIo.js.map +1 -0
- package/dist/standalone/assets/heavy-fields-Ctx9uZME.js +181 -0
- package/dist/standalone/assets/heavy-fields-Ctx9uZME.js.br +0 -0
- package/dist/standalone/assets/heavy-fields-Ctx9uZME.js.gz +0 -0
- package/dist/standalone/assets/heavy-fields-Ctx9uZME.js.map +1 -0
- package/dist/standalone/assets/home-page-B1hrpu2S.js +3 -0
- package/dist/standalone/assets/home-page-B1hrpu2S.js.br +0 -0
- package/dist/standalone/assets/home-page-B1hrpu2S.js.gz +0 -0
- package/dist/standalone/assets/home-page-B1hrpu2S.js.map +1 -0
- package/dist/standalone/assets/icon-registry-BBZirLGp.js +2 -0
- package/dist/standalone/assets/icon-registry-BBZirLGp.js.br +0 -0
- package/dist/standalone/assets/icon-registry-BBZirLGp.js.gz +0 -0
- package/dist/standalone/assets/icon-registry-BBZirLGp.js.map +1 -0
- package/dist/standalone/assets/index-CU0xv21_.css +2 -0
- package/dist/standalone/assets/index-CU0xv21_.css.br +0 -0
- package/dist/standalone/assets/index-CU0xv21_.css.gz +0 -0
- package/dist/standalone/assets/index-Ldci8MK5.js +15 -0
- package/dist/standalone/assets/index-Ldci8MK5.js.br +0 -0
- package/dist/standalone/assets/index-Ldci8MK5.js.gz +0 -0
- package/dist/standalone/assets/index-Ldci8MK5.js.map +1 -0
- package/dist/standalone/assets/info-CGVdWTj1.js +2 -0
- package/dist/standalone/assets/info-CGVdWTj1.js.map +1 -0
- package/dist/standalone/assets/json-editor-DwQqN8OM.js +2 -0
- package/dist/standalone/assets/json-editor-DwQqN8OM.js.br +0 -0
- package/dist/standalone/assets/json-editor-DwQqN8OM.js.gz +0 -0
- package/dist/standalone/assets/{json-editor---0NDBfO.js.map → json-editor-DwQqN8OM.js.map} +1 -1
- package/dist/standalone/assets/{key-BKtcci8w.js → key-lbuX0yk_.js} +2 -2
- package/dist/standalone/assets/{key-BKtcci8w.js.map → key-lbuX0yk_.js.map} +1 -1
- package/dist/standalone/assets/{key-round-xzeQg3wM.js → key-round-CQLp1Ua9.js} +2 -2
- package/dist/standalone/assets/{key-round-xzeQg3wM.js.map → key-round-CQLp1Ua9.js.map} +1 -1
- package/dist/standalone/assets/{minimize-2-Cvf27CGa.js → minimize-2-Bx2cH_WS.js} +2 -2
- package/dist/standalone/assets/{minimize-2-Cvf27CGa.js.map → minimize-2-Bx2cH_WS.js.map} +1 -1
- package/dist/standalone/assets/{pencil-C8qbfxd_.js → pencil-BO-k3yTG.js} +2 -2
- package/dist/standalone/assets/{pencil-C8qbfxd_.js.map → pencil-BO-k3yTG.js.map} +1 -1
- package/dist/standalone/assets/plus-Dk-FzitW.js +2 -0
- package/dist/standalone/assets/{plus-B8nFUPu-.js.map → plus-Dk-FzitW.js.map} +1 -1
- package/dist/standalone/assets/property-renderer-BogzDKIK.js +7 -0
- package/dist/standalone/assets/property-renderer-BogzDKIK.js.br +0 -0
- package/dist/standalone/assets/property-renderer-BogzDKIK.js.gz +0 -0
- package/dist/standalone/assets/property-renderer-BogzDKIK.js.map +1 -0
- package/dist/standalone/assets/reference-053-L2WD.js +2 -0
- package/dist/standalone/assets/reference-053-L2WD.js.br +0 -0
- package/dist/standalone/assets/reference-053-L2WD.js.gz +0 -0
- package/dist/standalone/assets/reference-053-L2WD.js.map +1 -0
- package/dist/standalone/assets/refresh-cw-Dz19XR6g.js +2 -0
- package/dist/standalone/assets/refresh-cw-Dz19XR6g.js.map +1 -0
- package/dist/standalone/assets/revisions-button-B4wc6uYi.js +2 -0
- package/dist/standalone/assets/revisions-button-B4wc6uYi.js.br +0 -0
- package/dist/standalone/assets/revisions-button-B4wc6uYi.js.gz +0 -0
- package/dist/standalone/assets/revisions-button-B4wc6uYi.js.map +1 -0
- package/dist/standalone/assets/richtext-render-DnVcQ34I.js +67 -0
- package/dist/standalone/assets/richtext-render-DnVcQ34I.js.br +0 -0
- package/dist/standalone/assets/richtext-render-DnVcQ34I.js.gz +0 -0
- package/dist/standalone/assets/richtext-render-DnVcQ34I.js.map +1 -0
- package/dist/standalone/assets/{rotate-ccw-C16vh2yh.js → rotate-ccw-BLr0QLAg.js} +2 -2
- package/dist/standalone/assets/{rotate-ccw-C16vh2yh.js.map → rotate-ccw-BLr0QLAg.js.map} +1 -1
- package/dist/standalone/assets/router-CT00z_xv.js +186 -0
- package/dist/standalone/assets/router-CT00z_xv.js.br +0 -0
- package/dist/standalone/assets/router-CT00z_xv.js.gz +0 -0
- package/dist/standalone/assets/router-CT00z_xv.js.map +1 -0
- package/dist/standalone/assets/{save-CNS0Z8lH.js → save-Cd3oR3Sj.js} +2 -2
- package/dist/standalone/assets/{save-CNS0Z8lH.js.map → save-Cd3oR3Sj.js.map} +1 -1
- package/dist/standalone/assets/schemas-twnCb1uT.js +65 -0
- package/dist/standalone/assets/schemas-twnCb1uT.js.br +0 -0
- package/dist/standalone/assets/schemas-twnCb1uT.js.gz +0 -0
- package/dist/standalone/assets/schemas-twnCb1uT.js.map +1 -0
- package/dist/standalone/assets/select-B6fxO2bI.js +2 -0
- package/dist/standalone/assets/select-B6fxO2bI.js.br +0 -0
- package/dist/standalone/assets/select-B6fxO2bI.js.gz +0 -0
- package/dist/standalone/assets/select-B6fxO2bI.js.map +1 -0
- package/dist/standalone/assets/{send-D2cpsjJz.js → send-D4KHQGYj.js} +2 -2
- package/dist/standalone/assets/{send-D2cpsjJz.js.map → send-D4KHQGYj.js.map} +1 -1
- package/dist/standalone/assets/settings-page-BRhIGsdX.js +2 -0
- package/dist/standalone/assets/settings-page-BRhIGsdX.js.br +0 -0
- package/dist/standalone/assets/settings-page-BRhIGsdX.js.gz +0 -0
- package/dist/standalone/assets/{settings-page-DvTdKBLt.js.map → settings-page-BRhIGsdX.js.map} +1 -1
- package/dist/standalone/assets/show-page-BJt9Kmdd.js +2 -0
- package/dist/standalone/assets/show-page-BJt9Kmdd.js.br +0 -0
- package/dist/standalone/assets/show-page-BJt9Kmdd.js.gz +0 -0
- package/dist/standalone/assets/{show-page-GmBctL2E.js.map → show-page-BJt9Kmdd.js.map} +1 -1
- package/dist/standalone/assets/{sparkles-D68Upt7w.js → sparkles-CqF0zjrF.js} +2 -2
- package/dist/standalone/assets/{sparkles-D68Upt7w.js.map → sparkles-CqF0zjrF.js.map} +1 -1
- package/dist/standalone/assets/square-pen-DGT7ekeJ.js +2 -0
- package/dist/standalone/assets/square-pen-DGT7ekeJ.js.map +1 -0
- package/dist/standalone/assets/tabs-BgR4QuFh.js +2 -0
- package/dist/standalone/assets/tabs-BgR4QuFh.js.br +0 -0
- package/dist/standalone/assets/tabs-BgR4QuFh.js.gz +0 -0
- package/dist/standalone/assets/tabs-BgR4QuFh.js.map +1 -0
- package/dist/standalone/assets/textarea-CX_0QVSz.js +2 -0
- package/dist/standalone/assets/{textarea-psdsvUNK.js.map → textarea-CX_0QVSz.js.map} +1 -1
- package/dist/standalone/assets/{trash-2-BXceFzA_.js → trash-2-DhyKQCKv.js} +2 -2
- package/dist/standalone/assets/{trash-2-BXceFzA_.js.map → trash-2-DhyKQCKv.js.map} +1 -1
- package/dist/standalone/assets/triangle-alert-CyaaNWN8.js +2 -0
- package/dist/standalone/assets/triangle-alert-CyaaNWN8.js.map +1 -0
- package/dist/standalone/assets/{undo-2-Bub1b-WC.js → undo-2-DlSB-5DM.js} +2 -2
- package/dist/standalone/assets/undo-2-DlSB-5DM.js.br +0 -0
- package/dist/standalone/assets/undo-2-DlSB-5DM.js.gz +0 -0
- package/dist/standalone/assets/{undo-2-Bub1b-WC.js.map → undo-2-DlSB-5DM.js.map} +1 -1
- package/dist/standalone/assets/use-dashboard-charts-CkpsFXxZ.js +2 -0
- package/dist/standalone/assets/use-dashboard-charts-CkpsFXxZ.js.br +0 -0
- package/dist/standalone/assets/use-dashboard-charts-CkpsFXxZ.js.gz +0 -0
- package/dist/standalone/assets/use-dashboard-charts-CkpsFXxZ.js.map +1 -0
- package/dist/standalone/assets/useQueries-BblIcy3I.js +2 -0
- package/dist/standalone/assets/useQueries-BblIcy3I.js.br +0 -0
- package/dist/standalone/assets/useQueries-BblIcy3I.js.gz +0 -0
- package/dist/standalone/assets/useQueries-BblIcy3I.js.map +1 -0
- package/dist/standalone/assets/user-directory-bre0Sulk.js +5 -0
- package/dist/standalone/assets/user-directory-bre0Sulk.js.br +0 -0
- package/dist/standalone/assets/user-directory-bre0Sulk.js.gz +0 -0
- package/dist/standalone/assets/user-directory-bre0Sulk.js.map +1 -0
- package/dist/standalone/assets/uuid-DLSnbsz2.js +2 -0
- package/dist/standalone/assets/uuid-DLSnbsz2.js.map +1 -0
- package/dist/standalone/assets/{wand-sparkles-ChJCPtl2.js → wand-sparkles-BDM69Lk9.js} +2 -2
- package/dist/standalone/assets/{wand-sparkles-ChJCPtl2.js.map → wand-sparkles-BDM69Lk9.js.map} +1 -1
- package/dist/standalone/assets/with-selector-NDLhu4dT.js +2 -0
- package/dist/standalone/assets/with-selector-NDLhu4dT.js.br +0 -0
- package/dist/standalone/assets/with-selector-NDLhu4dT.js.gz +0 -0
- package/dist/standalone/assets/with-selector-NDLhu4dT.js.map +1 -0
- package/dist/standalone/assets/wizard-create-page-3rZPPXLK.js +2 -0
- package/dist/standalone/assets/wizard-create-page-3rZPPXLK.js.br +0 -0
- package/dist/standalone/assets/wizard-create-page-3rZPPXLK.js.gz +0 -0
- package/dist/standalone/assets/{wizard-create-page-CDXQplgD.js.map → wizard-create-page-3rZPPXLK.js.map} +1 -1
- package/dist/standalone/assets/x-C3kLunD6.js +2 -0
- package/dist/standalone/assets/x-C3kLunD6.js.map +1 -0
- package/dist/standalone/assets/{zap-CFqoI4XA.js → zap-DIzIW2MP.js} +2 -2
- package/dist/standalone/assets/zap-DIzIW2MP.js.br +0 -0
- package/dist/standalone/assets/zap-DIzIW2MP.js.gz +0 -0
- package/dist/standalone/assets/{zap-CFqoI4XA.js.map → zap-DIzIW2MP.js.map} +1 -1
- package/dist/standalone/assets/zod-BVYoAymF.js +2 -0
- package/dist/standalone/assets/zod-BVYoAymF.js.br +0 -0
- package/dist/standalone/assets/zod-BVYoAymF.js.gz +0 -0
- package/dist/standalone/assets/zod-BVYoAymF.js.map +1 -0
- package/dist/standalone/index.html +12 -7
- package/dist/standalone/index.html.br +0 -0
- package/dist/standalone/index.html.gz +0 -0
- package/package.json +7 -6
- package/tsconfig.json +1 -1
- package/dist/standalone/assets/ai-assistant-widget-DbUtIE-Q.js +0 -2
- package/dist/standalone/assets/ai-assistant-widget-DbUtIE-Q.js.br +0 -0
- package/dist/standalone/assets/ai-assistant-widget-DbUtIE-Q.js.gz +0 -0
- package/dist/standalone/assets/ai-assistant-widget-DbUtIE-Q.js.map +0 -1
- package/dist/standalone/assets/audit-log-page-BtQee6RK.js +0 -2
- package/dist/standalone/assets/audit-log-page-BtQee6RK.js.br +0 -0
- package/dist/standalone/assets/audit-log-page-BtQee6RK.js.gz +0 -0
- package/dist/standalone/assets/badge-54ntzaYc.js +0 -2
- package/dist/standalone/assets/badge-54ntzaYc.js.br +0 -0
- package/dist/standalone/assets/badge-54ntzaYc.js.gz +0 -0
- package/dist/standalone/assets/card-BxVP8OBf.js +0 -2
- package/dist/standalone/assets/card-BxVP8OBf.js.br +0 -0
- package/dist/standalone/assets/card-BxVP8OBf.js.gz +0 -0
- package/dist/standalone/assets/command-BPNCtx-E.js +0 -2
- package/dist/standalone/assets/command-BPNCtx-E.js.br +0 -0
- package/dist/standalone/assets/command-BPNCtx-E.js.gz +0 -0
- package/dist/standalone/assets/createLucideIcon-DSvTabTT.js +0 -2
- package/dist/standalone/assets/createLucideIcon-DSvTabTT.js.br +0 -0
- package/dist/standalone/assets/createLucideIcon-DSvTabTT.js.gz +0 -0
- package/dist/standalone/assets/edit-page-DkwyTF2U.js +0 -2
- package/dist/standalone/assets/edit-page-DkwyTF2U.js.br +0 -0
- package/dist/standalone/assets/edit-page-DkwyTF2U.js.gz +0 -0
- package/dist/standalone/assets/edit-page-DkwyTF2U.js.map +0 -1
- package/dist/standalone/assets/empty-l7xFD9xQ.js +0 -2
- package/dist/standalone/assets/empty-l7xFD9xQ.js.br +0 -0
- package/dist/standalone/assets/empty-l7xFD9xQ.js.gz +0 -0
- package/dist/standalone/assets/empty-l7xFD9xQ.js.map +0 -1
- package/dist/standalone/assets/folder-symlink-DjXnrBKd.js.br +0 -0
- package/dist/standalone/assets/folder-symlink-DjXnrBKd.js.gz +0 -0
- package/dist/standalone/assets/folder-symlink-DjXnrBKd.js.map +0 -1
- package/dist/standalone/assets/global-search-dialog-SZRMDtql.js +0 -2
- package/dist/standalone/assets/global-search-dialog-SZRMDtql.js.br +0 -0
- package/dist/standalone/assets/global-search-dialog-SZRMDtql.js.gz +0 -0
- package/dist/standalone/assets/global-search-dialog-SZRMDtql.js.map +0 -1
- package/dist/standalone/assets/heavy-fields-Duxqf7N5.js +0 -171
- package/dist/standalone/assets/heavy-fields-Duxqf7N5.js.br +0 -0
- package/dist/standalone/assets/heavy-fields-Duxqf7N5.js.gz +0 -0
- package/dist/standalone/assets/heavy-fields-Duxqf7N5.js.map +0 -1
- package/dist/standalone/assets/home-page-fboDuiaH.js +0 -37
- package/dist/standalone/assets/home-page-fboDuiaH.js.br +0 -0
- package/dist/standalone/assets/home-page-fboDuiaH.js.gz +0 -0
- package/dist/standalone/assets/home-page-fboDuiaH.js.map +0 -1
- package/dist/standalone/assets/icon-registry-B8k2fFeL.js +0 -2
- package/dist/standalone/assets/icon-registry-B8k2fFeL.js.br +0 -0
- package/dist/standalone/assets/icon-registry-B8k2fFeL.js.gz +0 -0
- package/dist/standalone/assets/icon-registry-B8k2fFeL.js.map +0 -1
- package/dist/standalone/assets/index-DWXKwSWo.css +0 -2
- package/dist/standalone/assets/index-DWXKwSWo.css.br +0 -0
- package/dist/standalone/assets/index-DWXKwSWo.css.gz +0 -0
- package/dist/standalone/assets/index-eVDAlr3Y.js +0 -209
- package/dist/standalone/assets/index-eVDAlr3Y.js.br +0 -0
- package/dist/standalone/assets/index-eVDAlr3Y.js.gz +0 -0
- package/dist/standalone/assets/index-eVDAlr3Y.js.map +0 -1
- package/dist/standalone/assets/info-wDXYBagh.js +0 -2
- package/dist/standalone/assets/info-wDXYBagh.js.map +0 -1
- package/dist/standalone/assets/json-editor---0NDBfO.js +0 -2
- package/dist/standalone/assets/json-editor---0NDBfO.js.br +0 -0
- package/dist/standalone/assets/json-editor---0NDBfO.js.gz +0 -0
- package/dist/standalone/assets/plus-B8nFUPu-.js +0 -2
- package/dist/standalone/assets/property-renderer-5cEDq-L-.js +0 -7
- package/dist/standalone/assets/property-renderer-5cEDq-L-.js.br +0 -0
- package/dist/standalone/assets/property-renderer-5cEDq-L-.js.gz +0 -0
- package/dist/standalone/assets/property-renderer-5cEDq-L-.js.map +0 -1
- package/dist/standalone/assets/reference-GI-LV5wm.js +0 -2
- package/dist/standalone/assets/reference-GI-LV5wm.js.br +0 -0
- package/dist/standalone/assets/reference-GI-LV5wm.js.gz +0 -0
- package/dist/standalone/assets/reference-GI-LV5wm.js.map +0 -1
- package/dist/standalone/assets/refresh-cw-DqhEKkOK.js +0 -2
- package/dist/standalone/assets/refresh-cw-DqhEKkOK.js.map +0 -1
- package/dist/standalone/assets/revisions-button-BjlTw0FI.js +0 -2
- package/dist/standalone/assets/revisions-button-BjlTw0FI.js.br +0 -0
- package/dist/standalone/assets/revisions-button-BjlTw0FI.js.gz +0 -0
- package/dist/standalone/assets/revisions-button-BjlTw0FI.js.map +0 -1
- package/dist/standalone/assets/richtext-render-Bqp34pmS.js +0 -66
- package/dist/standalone/assets/richtext-render-Bqp34pmS.js.br +0 -0
- package/dist/standalone/assets/richtext-render-Bqp34pmS.js.gz +0 -0
- package/dist/standalone/assets/richtext-render-Bqp34pmS.js.map +0 -1
- package/dist/standalone/assets/rolldown-runtime-S-ySWqyJ.js +0 -1
- package/dist/standalone/assets/select-ZdIYBmRV.js +0 -2
- package/dist/standalone/assets/select-ZdIYBmRV.js.br +0 -0
- package/dist/standalone/assets/select-ZdIYBmRV.js.gz +0 -0
- package/dist/standalone/assets/select-ZdIYBmRV.js.map +0 -1
- package/dist/standalone/assets/settings-page-DvTdKBLt.js +0 -2
- package/dist/standalone/assets/settings-page-DvTdKBLt.js.br +0 -0
- package/dist/standalone/assets/settings-page-DvTdKBLt.js.gz +0 -0
- package/dist/standalone/assets/show-page-GmBctL2E.js +0 -2
- package/dist/standalone/assets/show-page-GmBctL2E.js.br +0 -0
- package/dist/standalone/assets/show-page-GmBctL2E.js.gz +0 -0
- package/dist/standalone/assets/src-dpVDMS9j.js +0 -65
- package/dist/standalone/assets/src-dpVDMS9j.js.br +0 -0
- package/dist/standalone/assets/src-dpVDMS9j.js.gz +0 -0
- package/dist/standalone/assets/src-dpVDMS9j.js.map +0 -1
- package/dist/standalone/assets/tabs-BGAJ-7kY.js +0 -2
- package/dist/standalone/assets/tabs-BGAJ-7kY.js.br +0 -0
- package/dist/standalone/assets/tabs-BGAJ-7kY.js.gz +0 -0
- package/dist/standalone/assets/tabs-BGAJ-7kY.js.map +0 -1
- package/dist/standalone/assets/textarea-psdsvUNK.js +0 -2
- package/dist/standalone/assets/triangle-alert-B6KVFtA2.js +0 -2
- package/dist/standalone/assets/triangle-alert-B6KVFtA2.js.map +0 -1
- package/dist/standalone/assets/undo-2-Bub1b-WC.js.br +0 -0
- package/dist/standalone/assets/undo-2-Bub1b-WC.js.gz +0 -0
- package/dist/standalone/assets/use-dashboard-charts-DbH5_SmD.js +0 -2
- package/dist/standalone/assets/use-dashboard-charts-DbH5_SmD.js.br +0 -0
- package/dist/standalone/assets/use-dashboard-charts-DbH5_SmD.js.gz +0 -0
- package/dist/standalone/assets/use-dashboard-charts-DbH5_SmD.js.map +0 -1
- package/dist/standalone/assets/useQueries-BKs9IisP.js +0 -2
- package/dist/standalone/assets/useQueries-BKs9IisP.js.br +0 -0
- package/dist/standalone/assets/useQueries-BKs9IisP.js.gz +0 -0
- package/dist/standalone/assets/useQueries-BKs9IisP.js.map +0 -1
- package/dist/standalone/assets/user-directory-CxHPHi_I.js +0 -5
- package/dist/standalone/assets/user-directory-CxHPHi_I.js.br +0 -0
- package/dist/standalone/assets/user-directory-CxHPHi_I.js.gz +0 -0
- package/dist/standalone/assets/user-directory-CxHPHi_I.js.map +0 -1
- package/dist/standalone/assets/wizard-create-page-CDXQplgD.js +0 -2
- package/dist/standalone/assets/wizard-create-page-CDXQplgD.js.br +0 -0
- package/dist/standalone/assets/wizard-create-page-CDXQplgD.js.gz +0 -0
- package/dist/standalone/assets/zap-CFqoI4XA.js.br +0 -0
- package/dist/standalone/assets/zap-CFqoI4XA.js.gz +0 -0
- package/dist/standalone/assets/zod-DvwjKWWc.js +0 -2
- package/dist/standalone/assets/zod-DvwjKWWc.js.br +0 -0
- package/dist/standalone/assets/zod-DvwjKWWc.js.gz +0 -0
- package/dist/standalone/assets/zod-DvwjKWWc.js.map +0 -1
- /package/dist/standalone/assets/{useQueries-Chw94eNX.css → calendar-Chw94eNX.css} +0 -0
- /package/dist/standalone/assets/{useQueries-Chw94eNX.css.br → calendar-Chw94eNX.css.br} +0 -0
- /package/dist/standalone/assets/{useQueries-Chw94eNX.css.gz → calendar-Chw94eNX.css.gz} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"select-ZdIYBmRV.js","names":["Select","PopperPrimitive.Root","SelectTrigger","PopperPrimitive.Anchor","SelectValue","Fragment","PortalPrimitive","SelectContent","RemoveScroll","PopperPrimitive.Content","SelectLabel","SelectItem","SelectScrollUpButton","SelectScrollDownButton","SelectSeparator","PopperPrimitive.Arrow"],"sources":["../../../../../node_modules/.bun/@radix-ui+react-use-previous@1.1.1+bf264c7668a20073/node_modules/@radix-ui/react-use-previous/dist/index.mjs","../../../../../node_modules/.bun/@radix-ui+react-select@2.2.6+07ecf1aa3bcbed22/node_modules/@radix-ui/react-select/dist/index.mjs","../../../../ui/src/components/select.tsx"],"sourcesContent":["// packages/react/use-previous/src/use-previous.tsx\nimport * as React from \"react\";\nfunction usePrevious(value) {\n const ref = React.useRef({ value, previous: value });\n return React.useMemo(() => {\n if (ref.current.value !== value) {\n ref.current.previous = ref.current.value;\n ref.current.value = value;\n }\n return ref.current.previous;\n }, [value]);\n}\nexport {\n usePrevious\n};\n//# sourceMappingURL=index.mjs.map\n","\"use client\";\n\n// src/select.tsx\nimport * as React from \"react\";\nimport * as ReactDOM from \"react-dom\";\nimport { clamp } from \"@radix-ui/number\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { createCollection } from \"@radix-ui/react-collection\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useDirection } from \"@radix-ui/react-direction\";\nimport { DismissableLayer } from \"@radix-ui/react-dismissable-layer\";\nimport { useFocusGuards } from \"@radix-ui/react-focus-guards\";\nimport { FocusScope } from \"@radix-ui/react-focus-scope\";\nimport { useId } from \"@radix-ui/react-id\";\nimport * as PopperPrimitive from \"@radix-ui/react-popper\";\nimport { createPopperScope } from \"@radix-ui/react-popper\";\nimport { Portal as PortalPrimitive } from \"@radix-ui/react-portal\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { createSlot } from \"@radix-ui/react-slot\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { useLayoutEffect } from \"@radix-ui/react-use-layout-effect\";\nimport { usePrevious } from \"@radix-ui/react-use-previous\";\nimport { VISUALLY_HIDDEN_STYLES } from \"@radix-ui/react-visually-hidden\";\nimport { hideOthers } from \"aria-hidden\";\nimport { RemoveScroll } from \"react-remove-scroll\";\nimport { Fragment, jsx, jsxs } from \"react/jsx-runtime\";\nvar OPEN_KEYS = [\" \", \"Enter\", \"ArrowUp\", \"ArrowDown\"];\nvar SELECTION_KEYS = [\" \", \"Enter\"];\nvar SELECT_NAME = \"Select\";\nvar [Collection, useCollection, createCollectionScope] = createCollection(SELECT_NAME);\nvar [createSelectContext, createSelectScope] = createContextScope(SELECT_NAME, [\n createCollectionScope,\n createPopperScope\n]);\nvar usePopperScope = createPopperScope();\nvar [SelectProvider, useSelectContext] = createSelectContext(SELECT_NAME);\nvar [SelectNativeOptionsProvider, useSelectNativeOptionsContext] = createSelectContext(SELECT_NAME);\nvar Select = (props) => {\n const {\n __scopeSelect,\n children,\n open: openProp,\n defaultOpen,\n onOpenChange,\n value: valueProp,\n defaultValue,\n onValueChange,\n dir,\n name,\n autoComplete,\n disabled,\n required,\n form\n } = props;\n const popperScope = usePopperScope(__scopeSelect);\n const [trigger, setTrigger] = React.useState(null);\n const [valueNode, setValueNode] = React.useState(null);\n const [valueNodeHasChildren, setValueNodeHasChildren] = React.useState(false);\n const direction = useDirection(dir);\n const [open, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen ?? false,\n onChange: onOpenChange,\n caller: SELECT_NAME\n });\n const [value, setValue] = useControllableState({\n prop: valueProp,\n defaultProp: defaultValue,\n onChange: onValueChange,\n caller: SELECT_NAME\n });\n const triggerPointerDownPosRef = React.useRef(null);\n const isFormControl = trigger ? form || !!trigger.closest(\"form\") : true;\n const [nativeOptionsSet, setNativeOptionsSet] = React.useState(/* @__PURE__ */ new Set());\n const nativeSelectKey = Array.from(nativeOptionsSet).map((option) => option.props.value).join(\";\");\n return /* @__PURE__ */ jsx(PopperPrimitive.Root, { ...popperScope, children: /* @__PURE__ */ jsxs(\n SelectProvider,\n {\n required,\n scope: __scopeSelect,\n trigger,\n onTriggerChange: setTrigger,\n valueNode,\n onValueNodeChange: setValueNode,\n valueNodeHasChildren,\n onValueNodeHasChildrenChange: setValueNodeHasChildren,\n contentId: useId(),\n value,\n onValueChange: setValue,\n open,\n onOpenChange: setOpen,\n dir: direction,\n triggerPointerDownPosRef,\n disabled,\n children: [\n /* @__PURE__ */ jsx(Collection.Provider, { scope: __scopeSelect, children: /* @__PURE__ */ jsx(\n SelectNativeOptionsProvider,\n {\n scope: props.__scopeSelect,\n onNativeOptionAdd: React.useCallback((option) => {\n setNativeOptionsSet((prev) => new Set(prev).add(option));\n }, []),\n onNativeOptionRemove: React.useCallback((option) => {\n setNativeOptionsSet((prev) => {\n const optionsSet = new Set(prev);\n optionsSet.delete(option);\n return optionsSet;\n });\n }, []),\n children\n }\n ) }),\n isFormControl ? /* @__PURE__ */ jsxs(\n SelectBubbleInput,\n {\n \"aria-hidden\": true,\n required,\n tabIndex: -1,\n name,\n autoComplete,\n value,\n onChange: (event) => setValue(event.target.value),\n disabled,\n form,\n children: [\n value === void 0 ? /* @__PURE__ */ jsx(\"option\", { value: \"\" }) : null,\n Array.from(nativeOptionsSet)\n ]\n },\n nativeSelectKey\n ) : null\n ]\n }\n ) });\n};\nSelect.displayName = SELECT_NAME;\nvar TRIGGER_NAME = \"SelectTrigger\";\nvar SelectTrigger = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, disabled = false, ...triggerProps } = props;\n const popperScope = usePopperScope(__scopeSelect);\n const context = useSelectContext(TRIGGER_NAME, __scopeSelect);\n const isDisabled = context.disabled || disabled;\n const composedRefs = useComposedRefs(forwardedRef, context.onTriggerChange);\n const getItems = useCollection(__scopeSelect);\n const pointerTypeRef = React.useRef(\"touch\");\n const [searchRef, handleTypeaheadSearch, resetTypeahead] = useTypeaheadSearch((search) => {\n const enabledItems = getItems().filter((item) => !item.disabled);\n const currentItem = enabledItems.find((item) => item.value === context.value);\n const nextItem = findNextItem(enabledItems, search, currentItem);\n if (nextItem !== void 0) {\n context.onValueChange(nextItem.value);\n }\n });\n const handleOpen = (pointerEvent) => {\n if (!isDisabled) {\n context.onOpenChange(true);\n resetTypeahead();\n }\n if (pointerEvent) {\n context.triggerPointerDownPosRef.current = {\n x: Math.round(pointerEvent.pageX),\n y: Math.round(pointerEvent.pageY)\n };\n }\n };\n return /* @__PURE__ */ jsx(PopperPrimitive.Anchor, { asChild: true, ...popperScope, children: /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n role: \"combobox\",\n \"aria-controls\": context.contentId,\n \"aria-expanded\": context.open,\n \"aria-required\": context.required,\n \"aria-autocomplete\": \"none\",\n dir: context.dir,\n \"data-state\": context.open ? \"open\" : \"closed\",\n disabled: isDisabled,\n \"data-disabled\": isDisabled ? \"\" : void 0,\n \"data-placeholder\": shouldShowPlaceholder(context.value) ? \"\" : void 0,\n ...triggerProps,\n ref: composedRefs,\n onClick: composeEventHandlers(triggerProps.onClick, (event) => {\n event.currentTarget.focus();\n if (pointerTypeRef.current !== \"mouse\") {\n handleOpen(event);\n }\n }),\n onPointerDown: composeEventHandlers(triggerProps.onPointerDown, (event) => {\n pointerTypeRef.current = event.pointerType;\n const target = event.target;\n if (target.hasPointerCapture(event.pointerId)) {\n target.releasePointerCapture(event.pointerId);\n }\n if (event.button === 0 && event.ctrlKey === false && event.pointerType === \"mouse\") {\n handleOpen(event);\n event.preventDefault();\n }\n }),\n onKeyDown: composeEventHandlers(triggerProps.onKeyDown, (event) => {\n const isTypingAhead = searchRef.current !== \"\";\n const isModifierKey = event.ctrlKey || event.altKey || event.metaKey;\n if (!isModifierKey && event.key.length === 1) handleTypeaheadSearch(event.key);\n if (isTypingAhead && event.key === \" \") return;\n if (OPEN_KEYS.includes(event.key)) {\n handleOpen();\n event.preventDefault();\n }\n })\n }\n ) });\n }\n);\nSelectTrigger.displayName = TRIGGER_NAME;\nvar VALUE_NAME = \"SelectValue\";\nvar SelectValue = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, className, style, children, placeholder = \"\", ...valueProps } = props;\n const context = useSelectContext(VALUE_NAME, __scopeSelect);\n const { onValueNodeHasChildrenChange } = context;\n const hasChildren = children !== void 0;\n const composedRefs = useComposedRefs(forwardedRef, context.onValueNodeChange);\n useLayoutEffect(() => {\n onValueNodeHasChildrenChange(hasChildren);\n }, [onValueNodeHasChildrenChange, hasChildren]);\n return /* @__PURE__ */ jsx(\n Primitive.span,\n {\n ...valueProps,\n ref: composedRefs,\n style: { pointerEvents: \"none\" },\n children: shouldShowPlaceholder(context.value) ? /* @__PURE__ */ jsx(Fragment, { children: placeholder }) : children\n }\n );\n }\n);\nSelectValue.displayName = VALUE_NAME;\nvar ICON_NAME = \"SelectIcon\";\nvar SelectIcon = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, children, ...iconProps } = props;\n return /* @__PURE__ */ jsx(Primitive.span, { \"aria-hidden\": true, ...iconProps, ref: forwardedRef, children: children || \"\\u25BC\" });\n }\n);\nSelectIcon.displayName = ICON_NAME;\nvar PORTAL_NAME = \"SelectPortal\";\nvar SelectPortal = (props) => {\n return /* @__PURE__ */ jsx(PortalPrimitive, { asChild: true, ...props });\n};\nSelectPortal.displayName = PORTAL_NAME;\nvar CONTENT_NAME = \"SelectContent\";\nvar SelectContent = React.forwardRef(\n (props, forwardedRef) => {\n const context = useSelectContext(CONTENT_NAME, props.__scopeSelect);\n const [fragment, setFragment] = React.useState();\n useLayoutEffect(() => {\n setFragment(new DocumentFragment());\n }, []);\n if (!context.open) {\n const frag = fragment;\n return frag ? ReactDOM.createPortal(\n /* @__PURE__ */ jsx(SelectContentProvider, { scope: props.__scopeSelect, children: /* @__PURE__ */ jsx(Collection.Slot, { scope: props.__scopeSelect, children: /* @__PURE__ */ jsx(\"div\", { children: props.children }) }) }),\n frag\n ) : null;\n }\n return /* @__PURE__ */ jsx(SelectContentImpl, { ...props, ref: forwardedRef });\n }\n);\nSelectContent.displayName = CONTENT_NAME;\nvar CONTENT_MARGIN = 10;\nvar [SelectContentProvider, useSelectContentContext] = createSelectContext(CONTENT_NAME);\nvar CONTENT_IMPL_NAME = \"SelectContentImpl\";\nvar Slot = createSlot(\"SelectContent.RemoveScroll\");\nvar SelectContentImpl = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeSelect,\n position = \"item-aligned\",\n onCloseAutoFocus,\n onEscapeKeyDown,\n onPointerDownOutside,\n //\n // PopperContent props\n side,\n sideOffset,\n align,\n alignOffset,\n arrowPadding,\n collisionBoundary,\n collisionPadding,\n sticky,\n hideWhenDetached,\n avoidCollisions,\n //\n ...contentProps\n } = props;\n const context = useSelectContext(CONTENT_NAME, __scopeSelect);\n const [content, setContent] = React.useState(null);\n const [viewport, setViewport] = React.useState(null);\n const composedRefs = useComposedRefs(forwardedRef, (node) => setContent(node));\n const [selectedItem, setSelectedItem] = React.useState(null);\n const [selectedItemText, setSelectedItemText] = React.useState(\n null\n );\n const getItems = useCollection(__scopeSelect);\n const [isPositioned, setIsPositioned] = React.useState(false);\n const firstValidItemFoundRef = React.useRef(false);\n React.useEffect(() => {\n if (content) return hideOthers(content);\n }, [content]);\n useFocusGuards();\n const focusFirst = React.useCallback(\n (candidates) => {\n const [firstItem, ...restItems] = getItems().map((item) => item.ref.current);\n const [lastItem] = restItems.slice(-1);\n const PREVIOUSLY_FOCUSED_ELEMENT = document.activeElement;\n for (const candidate of candidates) {\n if (candidate === PREVIOUSLY_FOCUSED_ELEMENT) return;\n candidate?.scrollIntoView({ block: \"nearest\" });\n if (candidate === firstItem && viewport) viewport.scrollTop = 0;\n if (candidate === lastItem && viewport) viewport.scrollTop = viewport.scrollHeight;\n candidate?.focus();\n if (document.activeElement !== PREVIOUSLY_FOCUSED_ELEMENT) return;\n }\n },\n [getItems, viewport]\n );\n const focusSelectedItem = React.useCallback(\n () => focusFirst([selectedItem, content]),\n [focusFirst, selectedItem, content]\n );\n React.useEffect(() => {\n if (isPositioned) {\n focusSelectedItem();\n }\n }, [isPositioned, focusSelectedItem]);\n const { onOpenChange, triggerPointerDownPosRef } = context;\n React.useEffect(() => {\n if (content) {\n let pointerMoveDelta = { x: 0, y: 0 };\n const handlePointerMove = (event) => {\n pointerMoveDelta = {\n x: Math.abs(Math.round(event.pageX) - (triggerPointerDownPosRef.current?.x ?? 0)),\n y: Math.abs(Math.round(event.pageY) - (triggerPointerDownPosRef.current?.y ?? 0))\n };\n };\n const handlePointerUp = (event) => {\n if (pointerMoveDelta.x <= 10 && pointerMoveDelta.y <= 10) {\n event.preventDefault();\n } else {\n if (!content.contains(event.target)) {\n onOpenChange(false);\n }\n }\n document.removeEventListener(\"pointermove\", handlePointerMove);\n triggerPointerDownPosRef.current = null;\n };\n if (triggerPointerDownPosRef.current !== null) {\n document.addEventListener(\"pointermove\", handlePointerMove);\n document.addEventListener(\"pointerup\", handlePointerUp, { capture: true, once: true });\n }\n return () => {\n document.removeEventListener(\"pointermove\", handlePointerMove);\n document.removeEventListener(\"pointerup\", handlePointerUp, { capture: true });\n };\n }\n }, [content, onOpenChange, triggerPointerDownPosRef]);\n React.useEffect(() => {\n const close = () => onOpenChange(false);\n window.addEventListener(\"blur\", close);\n window.addEventListener(\"resize\", close);\n return () => {\n window.removeEventListener(\"blur\", close);\n window.removeEventListener(\"resize\", close);\n };\n }, [onOpenChange]);\n const [searchRef, handleTypeaheadSearch] = useTypeaheadSearch((search) => {\n const enabledItems = getItems().filter((item) => !item.disabled);\n const currentItem = enabledItems.find((item) => item.ref.current === document.activeElement);\n const nextItem = findNextItem(enabledItems, search, currentItem);\n if (nextItem) {\n setTimeout(() => nextItem.ref.current.focus());\n }\n });\n const itemRefCallback = React.useCallback(\n (node, value, disabled) => {\n const isFirstValidItem = !firstValidItemFoundRef.current && !disabled;\n const isSelectedItem = context.value !== void 0 && context.value === value;\n if (isSelectedItem || isFirstValidItem) {\n setSelectedItem(node);\n if (isFirstValidItem) firstValidItemFoundRef.current = true;\n }\n },\n [context.value]\n );\n const handleItemLeave = React.useCallback(() => content?.focus(), [content]);\n const itemTextRefCallback = React.useCallback(\n (node, value, disabled) => {\n const isFirstValidItem = !firstValidItemFoundRef.current && !disabled;\n const isSelectedItem = context.value !== void 0 && context.value === value;\n if (isSelectedItem || isFirstValidItem) {\n setSelectedItemText(node);\n }\n },\n [context.value]\n );\n const SelectPosition = position === \"popper\" ? SelectPopperPosition : SelectItemAlignedPosition;\n const popperContentProps = SelectPosition === SelectPopperPosition ? {\n side,\n sideOffset,\n align,\n alignOffset,\n arrowPadding,\n collisionBoundary,\n collisionPadding,\n sticky,\n hideWhenDetached,\n avoidCollisions\n } : {};\n return /* @__PURE__ */ jsx(\n SelectContentProvider,\n {\n scope: __scopeSelect,\n content,\n viewport,\n onViewportChange: setViewport,\n itemRefCallback,\n selectedItem,\n onItemLeave: handleItemLeave,\n itemTextRefCallback,\n focusSelectedItem,\n selectedItemText,\n position,\n isPositioned,\n searchRef,\n children: /* @__PURE__ */ jsx(RemoveScroll, { as: Slot, allowPinchZoom: true, children: /* @__PURE__ */ jsx(\n FocusScope,\n {\n asChild: true,\n trapped: context.open,\n onMountAutoFocus: (event) => {\n event.preventDefault();\n },\n onUnmountAutoFocus: composeEventHandlers(onCloseAutoFocus, (event) => {\n context.trigger?.focus({ preventScroll: true });\n event.preventDefault();\n }),\n children: /* @__PURE__ */ jsx(\n DismissableLayer,\n {\n asChild: true,\n disableOutsidePointerEvents: true,\n onEscapeKeyDown,\n onPointerDownOutside,\n onFocusOutside: (event) => event.preventDefault(),\n onDismiss: () => context.onOpenChange(false),\n children: /* @__PURE__ */ jsx(\n SelectPosition,\n {\n role: \"listbox\",\n id: context.contentId,\n \"data-state\": context.open ? \"open\" : \"closed\",\n dir: context.dir,\n onContextMenu: (event) => event.preventDefault(),\n ...contentProps,\n ...popperContentProps,\n onPlaced: () => setIsPositioned(true),\n ref: composedRefs,\n style: {\n // flex layout so we can place the scroll buttons properly\n display: \"flex\",\n flexDirection: \"column\",\n // reset the outline by default as the content MAY get focused\n outline: \"none\",\n ...contentProps.style\n },\n onKeyDown: composeEventHandlers(contentProps.onKeyDown, (event) => {\n const isModifierKey = event.ctrlKey || event.altKey || event.metaKey;\n if (event.key === \"Tab\") event.preventDefault();\n if (!isModifierKey && event.key.length === 1) handleTypeaheadSearch(event.key);\n if ([\"ArrowUp\", \"ArrowDown\", \"Home\", \"End\"].includes(event.key)) {\n const items = getItems().filter((item) => !item.disabled);\n let candidateNodes = items.map((item) => item.ref.current);\n if ([\"ArrowUp\", \"End\"].includes(event.key)) {\n candidateNodes = candidateNodes.slice().reverse();\n }\n if ([\"ArrowUp\", \"ArrowDown\"].includes(event.key)) {\n const currentElement = event.target;\n const currentIndex = candidateNodes.indexOf(currentElement);\n candidateNodes = candidateNodes.slice(currentIndex + 1);\n }\n setTimeout(() => focusFirst(candidateNodes));\n event.preventDefault();\n }\n })\n }\n )\n }\n )\n }\n ) })\n }\n );\n }\n);\nSelectContentImpl.displayName = CONTENT_IMPL_NAME;\nvar ITEM_ALIGNED_POSITION_NAME = \"SelectItemAlignedPosition\";\nvar SelectItemAlignedPosition = React.forwardRef((props, forwardedRef) => {\n const { __scopeSelect, onPlaced, ...popperProps } = props;\n const context = useSelectContext(CONTENT_NAME, __scopeSelect);\n const contentContext = useSelectContentContext(CONTENT_NAME, __scopeSelect);\n const [contentWrapper, setContentWrapper] = React.useState(null);\n const [content, setContent] = React.useState(null);\n const composedRefs = useComposedRefs(forwardedRef, (node) => setContent(node));\n const getItems = useCollection(__scopeSelect);\n const shouldExpandOnScrollRef = React.useRef(false);\n const shouldRepositionRef = React.useRef(true);\n const { viewport, selectedItem, selectedItemText, focusSelectedItem } = contentContext;\n const position = React.useCallback(() => {\n if (context.trigger && context.valueNode && contentWrapper && content && viewport && selectedItem && selectedItemText) {\n const triggerRect = context.trigger.getBoundingClientRect();\n const contentRect = content.getBoundingClientRect();\n const valueNodeRect = context.valueNode.getBoundingClientRect();\n const itemTextRect = selectedItemText.getBoundingClientRect();\n if (context.dir !== \"rtl\") {\n const itemTextOffset = itemTextRect.left - contentRect.left;\n const left = valueNodeRect.left - itemTextOffset;\n const leftDelta = triggerRect.left - left;\n const minContentWidth = triggerRect.width + leftDelta;\n const contentWidth = Math.max(minContentWidth, contentRect.width);\n const rightEdge = window.innerWidth - CONTENT_MARGIN;\n const clampedLeft = clamp(left, [\n CONTENT_MARGIN,\n // Prevents the content from going off the starting edge of the\n // viewport. It may still go off the ending edge, but this can be\n // controlled by the user since they may want to manage overflow in a\n // specific way.\n // https://github.com/radix-ui/primitives/issues/2049\n Math.max(CONTENT_MARGIN, rightEdge - contentWidth)\n ]);\n contentWrapper.style.minWidth = minContentWidth + \"px\";\n contentWrapper.style.left = clampedLeft + \"px\";\n } else {\n const itemTextOffset = contentRect.right - itemTextRect.right;\n const right = window.innerWidth - valueNodeRect.right - itemTextOffset;\n const rightDelta = window.innerWidth - triggerRect.right - right;\n const minContentWidth = triggerRect.width + rightDelta;\n const contentWidth = Math.max(minContentWidth, contentRect.width);\n const leftEdge = window.innerWidth - CONTENT_MARGIN;\n const clampedRight = clamp(right, [\n CONTENT_MARGIN,\n Math.max(CONTENT_MARGIN, leftEdge - contentWidth)\n ]);\n contentWrapper.style.minWidth = minContentWidth + \"px\";\n contentWrapper.style.right = clampedRight + \"px\";\n }\n const items = getItems();\n const availableHeight = window.innerHeight - CONTENT_MARGIN * 2;\n const itemsHeight = viewport.scrollHeight;\n const contentStyles = window.getComputedStyle(content);\n const contentBorderTopWidth = parseInt(contentStyles.borderTopWidth, 10);\n const contentPaddingTop = parseInt(contentStyles.paddingTop, 10);\n const contentBorderBottomWidth = parseInt(contentStyles.borderBottomWidth, 10);\n const contentPaddingBottom = parseInt(contentStyles.paddingBottom, 10);\n const fullContentHeight = contentBorderTopWidth + contentPaddingTop + itemsHeight + contentPaddingBottom + contentBorderBottomWidth;\n const minContentHeight = Math.min(selectedItem.offsetHeight * 5, fullContentHeight);\n const viewportStyles = window.getComputedStyle(viewport);\n const viewportPaddingTop = parseInt(viewportStyles.paddingTop, 10);\n const viewportPaddingBottom = parseInt(viewportStyles.paddingBottom, 10);\n const topEdgeToTriggerMiddle = triggerRect.top + triggerRect.height / 2 - CONTENT_MARGIN;\n const triggerMiddleToBottomEdge = availableHeight - topEdgeToTriggerMiddle;\n const selectedItemHalfHeight = selectedItem.offsetHeight / 2;\n const itemOffsetMiddle = selectedItem.offsetTop + selectedItemHalfHeight;\n const contentTopToItemMiddle = contentBorderTopWidth + contentPaddingTop + itemOffsetMiddle;\n const itemMiddleToContentBottom = fullContentHeight - contentTopToItemMiddle;\n const willAlignWithoutTopOverflow = contentTopToItemMiddle <= topEdgeToTriggerMiddle;\n if (willAlignWithoutTopOverflow) {\n const isLastItem = items.length > 0 && selectedItem === items[items.length - 1].ref.current;\n contentWrapper.style.bottom = \"0px\";\n const viewportOffsetBottom = content.clientHeight - viewport.offsetTop - viewport.offsetHeight;\n const clampedTriggerMiddleToBottomEdge = Math.max(\n triggerMiddleToBottomEdge,\n selectedItemHalfHeight + // viewport might have padding bottom, include it to avoid a scrollable viewport\n (isLastItem ? viewportPaddingBottom : 0) + viewportOffsetBottom + contentBorderBottomWidth\n );\n const height = contentTopToItemMiddle + clampedTriggerMiddleToBottomEdge;\n contentWrapper.style.height = height + \"px\";\n } else {\n const isFirstItem = items.length > 0 && selectedItem === items[0].ref.current;\n contentWrapper.style.top = \"0px\";\n const clampedTopEdgeToTriggerMiddle = Math.max(\n topEdgeToTriggerMiddle,\n contentBorderTopWidth + viewport.offsetTop + // viewport might have padding top, include it to avoid a scrollable viewport\n (isFirstItem ? viewportPaddingTop : 0) + selectedItemHalfHeight\n );\n const height = clampedTopEdgeToTriggerMiddle + itemMiddleToContentBottom;\n contentWrapper.style.height = height + \"px\";\n viewport.scrollTop = contentTopToItemMiddle - topEdgeToTriggerMiddle + viewport.offsetTop;\n }\n contentWrapper.style.margin = `${CONTENT_MARGIN}px 0`;\n contentWrapper.style.minHeight = minContentHeight + \"px\";\n contentWrapper.style.maxHeight = availableHeight + \"px\";\n onPlaced?.();\n requestAnimationFrame(() => shouldExpandOnScrollRef.current = true);\n }\n }, [\n getItems,\n context.trigger,\n context.valueNode,\n contentWrapper,\n content,\n viewport,\n selectedItem,\n selectedItemText,\n context.dir,\n onPlaced\n ]);\n useLayoutEffect(() => position(), [position]);\n const [contentZIndex, setContentZIndex] = React.useState();\n useLayoutEffect(() => {\n if (content) setContentZIndex(window.getComputedStyle(content).zIndex);\n }, [content]);\n const handleScrollButtonChange = React.useCallback(\n (node) => {\n if (node && shouldRepositionRef.current === true) {\n position();\n focusSelectedItem?.();\n shouldRepositionRef.current = false;\n }\n },\n [position, focusSelectedItem]\n );\n return /* @__PURE__ */ jsx(\n SelectViewportProvider,\n {\n scope: __scopeSelect,\n contentWrapper,\n shouldExpandOnScrollRef,\n onScrollButtonChange: handleScrollButtonChange,\n children: /* @__PURE__ */ jsx(\n \"div\",\n {\n ref: setContentWrapper,\n style: {\n display: \"flex\",\n flexDirection: \"column\",\n position: \"fixed\",\n zIndex: contentZIndex\n },\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n ...popperProps,\n ref: composedRefs,\n style: {\n // When we get the height of the content, it includes borders. If we were to set\n // the height without having `boxSizing: 'border-box'` it would be too big.\n boxSizing: \"border-box\",\n // We need to ensure the content doesn't get taller than the wrapper\n maxHeight: \"100%\",\n ...popperProps.style\n }\n }\n )\n }\n )\n }\n );\n});\nSelectItemAlignedPosition.displayName = ITEM_ALIGNED_POSITION_NAME;\nvar POPPER_POSITION_NAME = \"SelectPopperPosition\";\nvar SelectPopperPosition = React.forwardRef((props, forwardedRef) => {\n const {\n __scopeSelect,\n align = \"start\",\n collisionPadding = CONTENT_MARGIN,\n ...popperProps\n } = props;\n const popperScope = usePopperScope(__scopeSelect);\n return /* @__PURE__ */ jsx(\n PopperPrimitive.Content,\n {\n ...popperScope,\n ...popperProps,\n ref: forwardedRef,\n align,\n collisionPadding,\n style: {\n // Ensure border-box for floating-ui calculations\n boxSizing: \"border-box\",\n ...popperProps.style,\n // re-namespace exposed content custom properties\n ...{\n \"--radix-select-content-transform-origin\": \"var(--radix-popper-transform-origin)\",\n \"--radix-select-content-available-width\": \"var(--radix-popper-available-width)\",\n \"--radix-select-content-available-height\": \"var(--radix-popper-available-height)\",\n \"--radix-select-trigger-width\": \"var(--radix-popper-anchor-width)\",\n \"--radix-select-trigger-height\": \"var(--radix-popper-anchor-height)\"\n }\n }\n }\n );\n});\nSelectPopperPosition.displayName = POPPER_POSITION_NAME;\nvar [SelectViewportProvider, useSelectViewportContext] = createSelectContext(CONTENT_NAME, {});\nvar VIEWPORT_NAME = \"SelectViewport\";\nvar SelectViewport = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, nonce, ...viewportProps } = props;\n const contentContext = useSelectContentContext(VIEWPORT_NAME, __scopeSelect);\n const viewportContext = useSelectViewportContext(VIEWPORT_NAME, __scopeSelect);\n const composedRefs = useComposedRefs(forwardedRef, contentContext.onViewportChange);\n const prevScrollTopRef = React.useRef(0);\n return /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(\n \"style\",\n {\n dangerouslySetInnerHTML: {\n __html: `[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}`\n },\n nonce\n }\n ),\n /* @__PURE__ */ jsx(Collection.Slot, { scope: __scopeSelect, children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-radix-select-viewport\": \"\",\n role: \"presentation\",\n ...viewportProps,\n ref: composedRefs,\n style: {\n // we use position: 'relative' here on the `viewport` so that when we call\n // `selectedItem.offsetTop` in calculations, the offset is relative to the viewport\n // (independent of the scrollUpButton).\n position: \"relative\",\n flex: 1,\n // Viewport should only be scrollable in the vertical direction.\n // This won't work in vertical writing modes, so we'll need to\n // revisit this if/when that is supported\n // https://developer.chrome.com/blog/vertical-form-controls\n overflow: \"hidden auto\",\n ...viewportProps.style\n },\n onScroll: composeEventHandlers(viewportProps.onScroll, (event) => {\n const viewport = event.currentTarget;\n const { contentWrapper, shouldExpandOnScrollRef } = viewportContext;\n if (shouldExpandOnScrollRef?.current && contentWrapper) {\n const scrolledBy = Math.abs(prevScrollTopRef.current - viewport.scrollTop);\n if (scrolledBy > 0) {\n const availableHeight = window.innerHeight - CONTENT_MARGIN * 2;\n const cssMinHeight = parseFloat(contentWrapper.style.minHeight);\n const cssHeight = parseFloat(contentWrapper.style.height);\n const prevHeight = Math.max(cssMinHeight, cssHeight);\n if (prevHeight < availableHeight) {\n const nextHeight = prevHeight + scrolledBy;\n const clampedNextHeight = Math.min(availableHeight, nextHeight);\n const heightDiff = nextHeight - clampedNextHeight;\n contentWrapper.style.height = clampedNextHeight + \"px\";\n if (contentWrapper.style.bottom === \"0px\") {\n viewport.scrollTop = heightDiff > 0 ? heightDiff : 0;\n contentWrapper.style.justifyContent = \"flex-end\";\n }\n }\n }\n }\n prevScrollTopRef.current = viewport.scrollTop;\n })\n }\n ) })\n ] });\n }\n);\nSelectViewport.displayName = VIEWPORT_NAME;\nvar GROUP_NAME = \"SelectGroup\";\nvar [SelectGroupContextProvider, useSelectGroupContext] = createSelectContext(GROUP_NAME);\nvar SelectGroup = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, ...groupProps } = props;\n const groupId = useId();\n return /* @__PURE__ */ jsx(SelectGroupContextProvider, { scope: __scopeSelect, id: groupId, children: /* @__PURE__ */ jsx(Primitive.div, { role: \"group\", \"aria-labelledby\": groupId, ...groupProps, ref: forwardedRef }) });\n }\n);\nSelectGroup.displayName = GROUP_NAME;\nvar LABEL_NAME = \"SelectLabel\";\nvar SelectLabel = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, ...labelProps } = props;\n const groupContext = useSelectGroupContext(LABEL_NAME, __scopeSelect);\n return /* @__PURE__ */ jsx(Primitive.div, { id: groupContext.id, ...labelProps, ref: forwardedRef });\n }\n);\nSelectLabel.displayName = LABEL_NAME;\nvar ITEM_NAME = \"SelectItem\";\nvar [SelectItemContextProvider, useSelectItemContext] = createSelectContext(ITEM_NAME);\nvar SelectItem = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeSelect,\n value,\n disabled = false,\n textValue: textValueProp,\n ...itemProps\n } = props;\n const context = useSelectContext(ITEM_NAME, __scopeSelect);\n const contentContext = useSelectContentContext(ITEM_NAME, __scopeSelect);\n const isSelected = context.value === value;\n const [textValue, setTextValue] = React.useState(textValueProp ?? \"\");\n const [isFocused, setIsFocused] = React.useState(false);\n const composedRefs = useComposedRefs(\n forwardedRef,\n (node) => contentContext.itemRefCallback?.(node, value, disabled)\n );\n const textId = useId();\n const pointerTypeRef = React.useRef(\"touch\");\n const handleSelect = () => {\n if (!disabled) {\n context.onValueChange(value);\n context.onOpenChange(false);\n }\n };\n if (value === \"\") {\n throw new Error(\n \"A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.\"\n );\n }\n return /* @__PURE__ */ jsx(\n SelectItemContextProvider,\n {\n scope: __scopeSelect,\n value,\n disabled,\n textId,\n isSelected,\n onItemTextChange: React.useCallback((node) => {\n setTextValue((prevTextValue) => prevTextValue || (node?.textContent ?? \"\").trim());\n }, []),\n children: /* @__PURE__ */ jsx(\n Collection.ItemSlot,\n {\n scope: __scopeSelect,\n value,\n disabled,\n textValue,\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n role: \"option\",\n \"aria-labelledby\": textId,\n \"data-highlighted\": isFocused ? \"\" : void 0,\n \"aria-selected\": isSelected && isFocused,\n \"data-state\": isSelected ? \"checked\" : \"unchecked\",\n \"aria-disabled\": disabled || void 0,\n \"data-disabled\": disabled ? \"\" : void 0,\n tabIndex: disabled ? void 0 : -1,\n ...itemProps,\n ref: composedRefs,\n onFocus: composeEventHandlers(itemProps.onFocus, () => setIsFocused(true)),\n onBlur: composeEventHandlers(itemProps.onBlur, () => setIsFocused(false)),\n onClick: composeEventHandlers(itemProps.onClick, () => {\n if (pointerTypeRef.current !== \"mouse\") handleSelect();\n }),\n onPointerUp: composeEventHandlers(itemProps.onPointerUp, () => {\n if (pointerTypeRef.current === \"mouse\") handleSelect();\n }),\n onPointerDown: composeEventHandlers(itemProps.onPointerDown, (event) => {\n pointerTypeRef.current = event.pointerType;\n }),\n onPointerMove: composeEventHandlers(itemProps.onPointerMove, (event) => {\n pointerTypeRef.current = event.pointerType;\n if (disabled) {\n contentContext.onItemLeave?.();\n } else if (pointerTypeRef.current === \"mouse\") {\n event.currentTarget.focus({ preventScroll: true });\n }\n }),\n onPointerLeave: composeEventHandlers(itemProps.onPointerLeave, (event) => {\n if (event.currentTarget === document.activeElement) {\n contentContext.onItemLeave?.();\n }\n }),\n onKeyDown: composeEventHandlers(itemProps.onKeyDown, (event) => {\n const isTypingAhead = contentContext.searchRef?.current !== \"\";\n if (isTypingAhead && event.key === \" \") return;\n if (SELECTION_KEYS.includes(event.key)) handleSelect();\n if (event.key === \" \") event.preventDefault();\n })\n }\n )\n }\n )\n }\n );\n }\n);\nSelectItem.displayName = ITEM_NAME;\nvar ITEM_TEXT_NAME = \"SelectItemText\";\nvar SelectItemText = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, className, style, ...itemTextProps } = props;\n const context = useSelectContext(ITEM_TEXT_NAME, __scopeSelect);\n const contentContext = useSelectContentContext(ITEM_TEXT_NAME, __scopeSelect);\n const itemContext = useSelectItemContext(ITEM_TEXT_NAME, __scopeSelect);\n const nativeOptionsContext = useSelectNativeOptionsContext(ITEM_TEXT_NAME, __scopeSelect);\n const [itemTextNode, setItemTextNode] = React.useState(null);\n const composedRefs = useComposedRefs(\n forwardedRef,\n (node) => setItemTextNode(node),\n itemContext.onItemTextChange,\n (node) => contentContext.itemTextRefCallback?.(node, itemContext.value, itemContext.disabled)\n );\n const textContent = itemTextNode?.textContent;\n const nativeOption = React.useMemo(\n () => /* @__PURE__ */ jsx(\"option\", { value: itemContext.value, disabled: itemContext.disabled, children: textContent }, itemContext.value),\n [itemContext.disabled, itemContext.value, textContent]\n );\n const { onNativeOptionAdd, onNativeOptionRemove } = nativeOptionsContext;\n useLayoutEffect(() => {\n onNativeOptionAdd(nativeOption);\n return () => onNativeOptionRemove(nativeOption);\n }, [onNativeOptionAdd, onNativeOptionRemove, nativeOption]);\n return /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(Primitive.span, { id: itemContext.textId, ...itemTextProps, ref: composedRefs }),\n itemContext.isSelected && context.valueNode && !context.valueNodeHasChildren ? ReactDOM.createPortal(itemTextProps.children, context.valueNode) : null\n ] });\n }\n);\nSelectItemText.displayName = ITEM_TEXT_NAME;\nvar ITEM_INDICATOR_NAME = \"SelectItemIndicator\";\nvar SelectItemIndicator = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, ...itemIndicatorProps } = props;\n const itemContext = useSelectItemContext(ITEM_INDICATOR_NAME, __scopeSelect);\n return itemContext.isSelected ? /* @__PURE__ */ jsx(Primitive.span, { \"aria-hidden\": true, ...itemIndicatorProps, ref: forwardedRef }) : null;\n }\n);\nSelectItemIndicator.displayName = ITEM_INDICATOR_NAME;\nvar SCROLL_UP_BUTTON_NAME = \"SelectScrollUpButton\";\nvar SelectScrollUpButton = React.forwardRef((props, forwardedRef) => {\n const contentContext = useSelectContentContext(SCROLL_UP_BUTTON_NAME, props.__scopeSelect);\n const viewportContext = useSelectViewportContext(SCROLL_UP_BUTTON_NAME, props.__scopeSelect);\n const [canScrollUp, setCanScrollUp] = React.useState(false);\n const composedRefs = useComposedRefs(forwardedRef, viewportContext.onScrollButtonChange);\n useLayoutEffect(() => {\n if (contentContext.viewport && contentContext.isPositioned) {\n let handleScroll2 = function() {\n const canScrollUp2 = viewport.scrollTop > 0;\n setCanScrollUp(canScrollUp2);\n };\n var handleScroll = handleScroll2;\n const viewport = contentContext.viewport;\n handleScroll2();\n viewport.addEventListener(\"scroll\", handleScroll2);\n return () => viewport.removeEventListener(\"scroll\", handleScroll2);\n }\n }, [contentContext.viewport, contentContext.isPositioned]);\n return canScrollUp ? /* @__PURE__ */ jsx(\n SelectScrollButtonImpl,\n {\n ...props,\n ref: composedRefs,\n onAutoScroll: () => {\n const { viewport, selectedItem } = contentContext;\n if (viewport && selectedItem) {\n viewport.scrollTop = viewport.scrollTop - selectedItem.offsetHeight;\n }\n }\n }\n ) : null;\n});\nSelectScrollUpButton.displayName = SCROLL_UP_BUTTON_NAME;\nvar SCROLL_DOWN_BUTTON_NAME = \"SelectScrollDownButton\";\nvar SelectScrollDownButton = React.forwardRef((props, forwardedRef) => {\n const contentContext = useSelectContentContext(SCROLL_DOWN_BUTTON_NAME, props.__scopeSelect);\n const viewportContext = useSelectViewportContext(SCROLL_DOWN_BUTTON_NAME, props.__scopeSelect);\n const [canScrollDown, setCanScrollDown] = React.useState(false);\n const composedRefs = useComposedRefs(forwardedRef, viewportContext.onScrollButtonChange);\n useLayoutEffect(() => {\n if (contentContext.viewport && contentContext.isPositioned) {\n let handleScroll2 = function() {\n const maxScroll = viewport.scrollHeight - viewport.clientHeight;\n const canScrollDown2 = Math.ceil(viewport.scrollTop) < maxScroll;\n setCanScrollDown(canScrollDown2);\n };\n var handleScroll = handleScroll2;\n const viewport = contentContext.viewport;\n handleScroll2();\n viewport.addEventListener(\"scroll\", handleScroll2);\n return () => viewport.removeEventListener(\"scroll\", handleScroll2);\n }\n }, [contentContext.viewport, contentContext.isPositioned]);\n return canScrollDown ? /* @__PURE__ */ jsx(\n SelectScrollButtonImpl,\n {\n ...props,\n ref: composedRefs,\n onAutoScroll: () => {\n const { viewport, selectedItem } = contentContext;\n if (viewport && selectedItem) {\n viewport.scrollTop = viewport.scrollTop + selectedItem.offsetHeight;\n }\n }\n }\n ) : null;\n});\nSelectScrollDownButton.displayName = SCROLL_DOWN_BUTTON_NAME;\nvar SelectScrollButtonImpl = React.forwardRef((props, forwardedRef) => {\n const { __scopeSelect, onAutoScroll, ...scrollIndicatorProps } = props;\n const contentContext = useSelectContentContext(\"SelectScrollButton\", __scopeSelect);\n const autoScrollTimerRef = React.useRef(null);\n const getItems = useCollection(__scopeSelect);\n const clearAutoScrollTimer = React.useCallback(() => {\n if (autoScrollTimerRef.current !== null) {\n window.clearInterval(autoScrollTimerRef.current);\n autoScrollTimerRef.current = null;\n }\n }, []);\n React.useEffect(() => {\n return () => clearAutoScrollTimer();\n }, [clearAutoScrollTimer]);\n useLayoutEffect(() => {\n const activeItem = getItems().find((item) => item.ref.current === document.activeElement);\n activeItem?.ref.current?.scrollIntoView({ block: \"nearest\" });\n }, [getItems]);\n return /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"aria-hidden\": true,\n ...scrollIndicatorProps,\n ref: forwardedRef,\n style: { flexShrink: 0, ...scrollIndicatorProps.style },\n onPointerDown: composeEventHandlers(scrollIndicatorProps.onPointerDown, () => {\n if (autoScrollTimerRef.current === null) {\n autoScrollTimerRef.current = window.setInterval(onAutoScroll, 50);\n }\n }),\n onPointerMove: composeEventHandlers(scrollIndicatorProps.onPointerMove, () => {\n contentContext.onItemLeave?.();\n if (autoScrollTimerRef.current === null) {\n autoScrollTimerRef.current = window.setInterval(onAutoScroll, 50);\n }\n }),\n onPointerLeave: composeEventHandlers(scrollIndicatorProps.onPointerLeave, () => {\n clearAutoScrollTimer();\n })\n }\n );\n});\nvar SEPARATOR_NAME = \"SelectSeparator\";\nvar SelectSeparator = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, ...separatorProps } = props;\n return /* @__PURE__ */ jsx(Primitive.div, { \"aria-hidden\": true, ...separatorProps, ref: forwardedRef });\n }\n);\nSelectSeparator.displayName = SEPARATOR_NAME;\nvar ARROW_NAME = \"SelectArrow\";\nvar SelectArrow = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, ...arrowProps } = props;\n const popperScope = usePopperScope(__scopeSelect);\n const context = useSelectContext(ARROW_NAME, __scopeSelect);\n const contentContext = useSelectContentContext(ARROW_NAME, __scopeSelect);\n return context.open && contentContext.position === \"popper\" ? /* @__PURE__ */ jsx(PopperPrimitive.Arrow, { ...popperScope, ...arrowProps, ref: forwardedRef }) : null;\n }\n);\nSelectArrow.displayName = ARROW_NAME;\nvar BUBBLE_INPUT_NAME = \"SelectBubbleInput\";\nvar SelectBubbleInput = React.forwardRef(\n ({ __scopeSelect, value, ...props }, forwardedRef) => {\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const prevValue = usePrevious(value);\n React.useEffect(() => {\n const select = ref.current;\n if (!select) return;\n const selectProto = window.HTMLSelectElement.prototype;\n const descriptor = Object.getOwnPropertyDescriptor(\n selectProto,\n \"value\"\n );\n const setValue = descriptor.set;\n if (prevValue !== value && setValue) {\n const event = new Event(\"change\", { bubbles: true });\n setValue.call(select, value);\n select.dispatchEvent(event);\n }\n }, [prevValue, value]);\n return /* @__PURE__ */ jsx(\n Primitive.select,\n {\n ...props,\n style: { ...VISUALLY_HIDDEN_STYLES, ...props.style },\n ref: composedRefs,\n defaultValue: value\n }\n );\n }\n);\nSelectBubbleInput.displayName = BUBBLE_INPUT_NAME;\nfunction shouldShowPlaceholder(value) {\n return value === \"\" || value === void 0;\n}\nfunction useTypeaheadSearch(onSearchChange) {\n const handleSearchChange = useCallbackRef(onSearchChange);\n const searchRef = React.useRef(\"\");\n const timerRef = React.useRef(0);\n const handleTypeaheadSearch = React.useCallback(\n (key) => {\n const search = searchRef.current + key;\n handleSearchChange(search);\n (function updateSearch(value) {\n searchRef.current = value;\n window.clearTimeout(timerRef.current);\n if (value !== \"\") timerRef.current = window.setTimeout(() => updateSearch(\"\"), 1e3);\n })(search);\n },\n [handleSearchChange]\n );\n const resetTypeahead = React.useCallback(() => {\n searchRef.current = \"\";\n window.clearTimeout(timerRef.current);\n }, []);\n React.useEffect(() => {\n return () => window.clearTimeout(timerRef.current);\n }, []);\n return [searchRef, handleTypeaheadSearch, resetTypeahead];\n}\nfunction findNextItem(items, search, currentItem) {\n const isRepeated = search.length > 1 && Array.from(search).every((char) => char === search[0]);\n const normalizedSearch = isRepeated ? search[0] : search;\n const currentItemIndex = currentItem ? items.indexOf(currentItem) : -1;\n let wrappedItems = wrapArray(items, Math.max(currentItemIndex, 0));\n const excludeCurrentItem = normalizedSearch.length === 1;\n if (excludeCurrentItem) wrappedItems = wrappedItems.filter((v) => v !== currentItem);\n const nextItem = wrappedItems.find(\n (item) => item.textValue.toLowerCase().startsWith(normalizedSearch.toLowerCase())\n );\n return nextItem !== currentItem ? nextItem : void 0;\n}\nfunction wrapArray(array, startIndex) {\n return array.map((_, index) => array[(startIndex + index) % array.length]);\n}\nvar Root2 = Select;\nvar Trigger = SelectTrigger;\nvar Value = SelectValue;\nvar Icon = SelectIcon;\nvar Portal = SelectPortal;\nvar Content2 = SelectContent;\nvar Viewport = SelectViewport;\nvar Group = SelectGroup;\nvar Label = SelectLabel;\nvar Item = SelectItem;\nvar ItemText = SelectItemText;\nvar ItemIndicator = SelectItemIndicator;\nvar ScrollUpButton = SelectScrollUpButton;\nvar ScrollDownButton = SelectScrollDownButton;\nvar Separator = SelectSeparator;\nvar Arrow2 = SelectArrow;\nexport {\n Arrow2 as Arrow,\n Content2 as Content,\n Group,\n Icon,\n Item,\n ItemIndicator,\n ItemText,\n Label,\n Portal,\n Root2 as Root,\n ScrollDownButton,\n ScrollUpButton,\n Select,\n SelectArrow,\n SelectContent,\n SelectGroup,\n SelectIcon,\n SelectItem,\n SelectItemIndicator,\n SelectItemText,\n SelectLabel,\n SelectPortal,\n SelectScrollDownButton,\n SelectScrollUpButton,\n SelectSeparator,\n SelectTrigger,\n SelectValue,\n SelectViewport,\n Separator,\n Trigger,\n Value,\n Viewport,\n createSelectScope\n};\n//# sourceMappingURL=index.mjs.map\n","import * as React from 'react'\nimport * as SelectPrimitive from '@radix-ui/react-select'\nimport { Check, ChevronDown, ChevronUp } from 'lucide-react'\nimport { cn } from '../lib/utils.js'\n\n/**\n * Thin wrapper around `SelectPrimitive.Root` that suppresses the spurious\n * empty-string callback Radix fires through its hidden bubble-input while\n * `SelectItem` nodes register lazily via Portal after an external `value`\n * change (e.g. `form.reset()` after an async data load). Without this guard\n * the externally-set value is immediately overwritten with `''`.\n *\n * The empty string is never a legitimate choice from a rendered `SelectItem`,\n * so dropping it is always safe. Call sites should NOT add their own\n * `if (v === '') return` guards — this component handles it centrally.\n */\nfunction SelectRoot({\n onValueChange,\n ...props\n}: React.ComponentPropsWithoutRef<typeof SelectPrimitive.Root>): React.ReactElement {\n const handleValueChange = React.useCallback(\n (value: string) => {\n if (value !== '') onValueChange?.(value)\n },\n [onValueChange],\n )\n return <SelectPrimitive.Root onValueChange={handleValueChange} {...props} />\n}\nSelectRoot.displayName = 'Select'\n\nexport const Select = SelectRoot\nexport const SelectGroup = SelectPrimitive.Group\nexport const SelectValue = SelectPrimitive.Value\n\nexport const SelectTrigger = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Trigger>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Trigger>\n>(({ className, children, onMouseEnter, ...props }, ref) => {\n const handleMouseEnter = (e: React.MouseEvent<HTMLButtonElement>): void => {\n // Set native title only when the value span is actually clipped so the\n // tooltip doesn't appear redundantly on short values.\n const valueSpan = e.currentTarget.querySelector<HTMLElement>('span')\n if (valueSpan && valueSpan.scrollWidth > valueSpan.offsetWidth) {\n e.currentTarget.title = valueSpan.textContent ?? ''\n } else {\n e.currentTarget.removeAttribute('title')\n }\n onMouseEnter?.(e)\n }\n\n return (\n <SelectPrimitive.Trigger\n ref={ref}\n className={cn(\n 'flex h-9 w-full cursor-pointer items-center justify-between rounded-md border border-input bg-background px-3 py-1 text-sm shadow-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1',\n className,\n )}\n onMouseEnter={handleMouseEnter}\n {...props}\n >\n {children}\n <SelectPrimitive.Icon asChild>\n <ChevronDown className=\"h-4 w-4 opacity-50\" />\n </SelectPrimitive.Icon>\n </SelectPrimitive.Trigger>\n )\n})\nSelectTrigger.displayName = SelectPrimitive.Trigger.displayName\n\nexport const SelectScrollUpButton = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.ScrollUpButton>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.ScrollUpButton>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.ScrollUpButton\n ref={ref}\n className={cn('flex cursor-default items-center justify-center py-1', className)}\n {...props}\n >\n <ChevronUp className=\"h-4 w-4\" />\n </SelectPrimitive.ScrollUpButton>\n))\nSelectScrollUpButton.displayName = SelectPrimitive.ScrollUpButton.displayName\n\nexport const SelectScrollDownButton = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.ScrollDownButton>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.ScrollDownButton>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.ScrollDownButton\n ref={ref}\n className={cn('flex cursor-default items-center justify-center py-1', className)}\n {...props}\n >\n <ChevronDown className=\"h-4 w-4\" />\n </SelectPrimitive.ScrollDownButton>\n))\nSelectScrollDownButton.displayName = SelectPrimitive.ScrollDownButton.displayName\n\nexport const SelectContent = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Content>\n>(({ className, children, position = 'popper', ...props }, ref) => (\n <SelectPrimitive.Portal>\n <SelectPrimitive.Content\n ref={ref}\n className={cn(\n 'relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border border-border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=top]:slide-in-from-bottom-2',\n position === 'popper' &&\n 'data-[side=bottom]:translate-y-1 data-[side=top]:-translate-y-1',\n className,\n )}\n position={position}\n {...props}\n >\n <SelectScrollUpButton />\n <SelectPrimitive.Viewport\n className={cn(\n 'p-1',\n position === 'popper' &&\n 'h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]',\n )}\n >\n {children}\n </SelectPrimitive.Viewport>\n <SelectScrollDownButton />\n </SelectPrimitive.Content>\n </SelectPrimitive.Portal>\n))\nSelectContent.displayName = SelectPrimitive.Content.displayName\n\nexport const SelectLabel = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Label>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Label>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.Label\n ref={ref}\n className={cn('px-2 py-1.5 text-sm font-semibold', className)}\n {...props}\n />\n))\nSelectLabel.displayName = SelectPrimitive.Label.displayName\n\nexport const SelectItem = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Item>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Item>\n>(({ className, children, ...props }, ref) => (\n <SelectPrimitive.Item\n ref={ref}\n className={cn(\n 'relative flex w-full cursor-pointer select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50',\n className,\n )}\n title={typeof children === 'string' ? children : undefined}\n {...props}\n >\n <span className=\"absolute left-2 flex h-3.5 w-3.5 items-center justify-center\">\n <SelectPrimitive.ItemIndicator>\n <Check className=\"h-4 w-4\" />\n </SelectPrimitive.ItemIndicator>\n </span>\n <SelectPrimitive.ItemText>\n <span className=\"block truncate\">{children}</span>\n </SelectPrimitive.ItemText>\n </SelectPrimitive.Item>\n))\nSelectItem.displayName = SelectPrimitive.Item.displayName\n\nexport const SelectSeparator = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Separator>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Separator>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.Separator\n ref={ref}\n className={cn('-mx-1 my-1 h-px bg-muted', className)}\n {...props}\n />\n))\nSelectSeparator.displayName = SelectPrimitive.Separator.displayName\n\n/**\n * Plain native `<select>` styled to match the rest of the kit. Useful when\n * you need a no-JS, SSR-friendly fallback or simple form posts. Most call\n * sites should prefer the Radix-based `Select` family above.\n */\nexport type NativeSelectProps = React.SelectHTMLAttributes<HTMLSelectElement>\n\nexport const NativeSelect = React.forwardRef<HTMLSelectElement, NativeSelectProps>(\n ({ className, children, ...props }, ref) => (\n <select\n ref={ref}\n className={cn(\n 'flex h-9 w-full rounded-md border border-input bg-background px-3 py-1 text-sm shadow-sm focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50',\n className,\n )}\n {...props}\n >\n {children}\n </select>\n ),\n)\nNativeSelect.displayName = 'NativeSelect'\n"],"x_google_ignoreList":[0,1],"mappings":"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"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-S-ySWqyJ.js";import{n as t}from"./createLucideIcon-DSvTabTT.js";import{t as n}from"./bot-Ct10WUaE.js";import{t as r}from"./trash-2-BXceFzA_.js";import{n as i}from"./info-wDXYBagh.js";import{t as a}from"./key-round-xzeQg3wM.js";import{t as o}from"./plus-B8nFUPu-.js";import{t as s}from"./save-CNS0Z8lH.js";import{n as c,t as l}from"./triangle-alert-B6KVFtA2.js";import{t as u}from"./textarea-psdsvUNK.js";import{a as d,i as f,n as p,r as m,t as h}from"./select-ZdIYBmRV.js";import{a as g,c as _,i as v,l as y,o as b,r as x,s as S,t as C}from"./json-editor---0NDBfO.js";import{a as w,c as T,i as E,o as D,r as O,s as k,t as ee}from"./empty-l7xFD9xQ.js";import{t as A}from"./badge-54ntzaYc.js";import{a as te,i as ne,n as re,r as j,t as M}from"./card-BxVP8OBf.js";import{A as N,An as ie,At as P,Dt as F,Et as I,Ln as ae,N as L,Ot as R,P as z,T as oe,U as B,Xn as se,Z as ce,dn as V,gn as H,h as le,i as ue,in as U,j as W,jn as de,jt as G,kt as K,l as q,o as fe,on as J,pn as pe,r as me,sn as Y}from"./index-eVDAlr3Y.js";var X=e(t(),1),Z=se();function Q({icon:e,title:t,description:n,action:r,bodyClassName:i,children:a}){return(0,Z.jsxs)(M,{children:[(0,Z.jsxs)(ne,{className:V(`flex-col items-start gap-2`,r&&`sm:flex-row sm:items-center sm:justify-between`),children:[(0,Z.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-1.5`,children:[(0,Z.jsxs)(te,{className:`flex items-center gap-2`,children:[(0,Z.jsx)(e,{className:`size-5`}),t]}),n?(0,Z.jsx)(j,{children:n}):null]}),r]}),(0,Z.jsx)(re,{className:V(`min-w-0`,i),children:a})]})}function he({children:e}){return(0,Z.jsx)(`div`,{className:`-mx-6 overflow-x-auto sm:mx-0`,children:e})}function ge({icon:e,title:t,description:n}){return(0,Z.jsx)(ee,{className:`border-0`,children:(0,Z.jsxs)(E,{children:[(0,Z.jsx)(w,{children:(0,Z.jsx)(e,{})}),(0,Z.jsx)(D,{children:t}),n?(0,Z.jsx)(O,{children:n}):null]})})}function _e({isLoading:e,error:t,isEmpty:n,loadingLabel:r,empty:i,children:a}){return e?(0,Z.jsx)(`div`,{className:`py-8 text-center text-sm text-muted-foreground`,children:r}):t?(0,Z.jsx)(`div`,{className:`rounded-md border border-destructive/50 bg-destructive/10 p-4 text-sm text-destructive`,children:t instanceof Error?t.message:String(t)}):n?(0,Z.jsx)(ge,{...i}):(0,Z.jsx)(Z.Fragment,{children:a})}function ve(){let e=W(),t=q(),{t:r}=N(),i=z({queryKey:[`modern-admin`,`ai-assistant`,`settings`],queryFn:()=>e.getAiAssistantSettings()}),[o,c]=X.useState({enabled:!0,model:`google/gemini-3.1-flash-lite-preview`,apiKey:``,systemPrompt:``});X.useEffect(()=>{i.data&&c({enabled:i.data.enabled,model:i.data.model,apiKey:``,systemPrompt:i.data.systemPrompt})},[i.data]);let l=L({mutationFn:async()=>e.updateAiAssistantSettings({enabled:o.enabled,model:o.model,...o.apiKey.trim()?{apiKey:o.apiKey.trim()}:{},systemPrompt:o.systemPrompt}),onSuccess:()=>{i.refetch(),c(e=>({...e,apiKey:``})),t.success({message:r(`aiAssistant:settings.saved`)})},onError:e=>{t.error({message:e instanceof Error?e.message:String(e)})}});if(i.isLoading)return(0,Z.jsx)(`div`,{className:`py-8 text-sm text-muted-foreground`,children:r(`common:loading`)});if(i.error)return(0,Z.jsx)(`div`,{className:`rounded-md border border-destructive/50 bg-destructive/10 p-4 text-sm text-destructive`,children:i.error instanceof Error?i.error.message:String(i.error)});let d=i.data;return d?(0,Z.jsx)(`div`,{className:`flex flex-col gap-4`,children:(0,Z.jsxs)(Q,{icon:n,title:r(`aiAssistant:settings.title`),description:r(`aiAssistant:settings.description`),bodyClassName:`space-y-4`,children:[(0,Z.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,Z.jsx)(A,{variant:d.enabled?`secondary`:`outline`,children:d.enabled?r(`aiAssistant:settings.enabled`):r(`aiAssistant:settings.disabled`)}),(0,Z.jsx)(A,{variant:d.configured?`secondary`:`outline`,children:d.configured?r(`aiAssistant:settings.configured`):r(`aiAssistant:settings.apiKeyRequired`)}),(0,Z.jsx)(A,{variant:`outline`,children:r(`aiAssistant:settings.readOnly`)}),(0,Z.jsx)(A,{variant:`outline`,children:r(`aiAssistant:settings.provider`,{provider:d.provider})})]}),(0,Z.jsxs)(`div`,{className:`grid gap-4 sm:grid-cols-2`,children:[(0,Z.jsxs)(`div`,{className:`flex items-center justify-between rounded-lg border border-border p-3`,children:[(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(U,{htmlFor:`ai-assistant-enabled`,children:r(`aiAssistant:settings.enableLabel`)}),(0,Z.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:r(`aiAssistant:settings.enableHint`)})]}),(0,Z.jsx)(T,{id:`ai-assistant-enabled`,checked:o.enabled,disabled:!d.canManage||l.isPending,onCheckedChange:e=>c(t=>({...t,enabled:e}))})]}),(0,Z.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Z.jsx)(U,{htmlFor:`ai-assistant-model`,children:r(`aiAssistant:settings.modelLabel`)}),(0,Z.jsx)(J,{id:`ai-assistant-model`,value:o.model,disabled:!d.canManage||l.isPending,onChange:e=>c(t=>({...t,model:e.target.value})),placeholder:`google/gemini-3.1-flash-lite-preview`})]})]}),(0,Z.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Z.jsxs)(U,{htmlFor:`ai-assistant-api-key`,className:`flex items-center gap-2`,children:[(0,Z.jsx)(a,{className:`size-4`}),r(`aiAssistant:settings.apiKeyLabel`)]}),(0,Z.jsx)(J,{id:`ai-assistant-api-key`,type:`password`,value:o.apiKey,disabled:!d.canManage||l.isPending,onChange:e=>c(t=>({...t,apiKey:e.target.value})),placeholder:d.maskedApiKey??`sk-or-v1-...`}),(0,Z.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:r(`aiAssistant:settings.apiKeyHint`)})]}),(0,Z.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Z.jsx)(U,{htmlFor:`ai-assistant-system-prompt`,children:r(`aiAssistant:settings.systemPromptLabel`)}),(0,Z.jsx)(u,{id:`ai-assistant-system-prompt`,value:o.systemPrompt,disabled:!d.canManage||l.isPending,onChange:e=>c(t=>({...t,systemPrompt:e.target.value})),rows:8,placeholder:r(`aiAssistant:settings.systemPromptPlaceholder`)})]}),(0,Z.jsxs)(`div`,{className:`flex items-center justify-between gap-3 rounded-lg border border-border p-3 text-sm`,children:[(0,Z.jsxs)(`div`,{children:[(0,Z.jsx)(`div`,{className:`font-medium`,children:r(`aiAssistant:settings.accessTitle`)}),(0,Z.jsx)(`div`,{className:`text-muted-foreground`,children:r(`aiAssistant:settings.accessDescription`)})]}),(0,Z.jsx)(A,{variant:`outline`,children:r(`aiAssistant:settings.futureToolsReady`)})]}),(0,Z.jsx)(`div`,{className:`flex justify-end`,children:(0,Z.jsxs)(Y,{onClick:()=>l.mutate(),disabled:!d.canManage||l.isPending||!o.model.trim(),children:[(0,Z.jsx)(s,{className:`size-4`}),l.isPending?r(`aiAssistant:settings.saving`):r(`aiAssistant:settings.save`)]})})]})}):(0,Z.jsx)(`div`,{className:`py-8 text-sm text-muted-foreground`,children:r(`aiAssistant:settings.empty`)})}var $=[`modern-admin`,`api-keys`],ye=[`modern-admin`,`webhooks`],be=[{key:`api-keys`,labelKey:`settings:apiKeys.title`,icon:a},{key:`webhooks`,labelKey:`settings:webhooks.title`,icon:H},{key:`ai-assistant`,labelKey:`aiAssistant:title`,icon:n}];function xe({section:e}){let{t}=N(),n=fe(),r=le(),i=X.useMemo(()=>[...be.filter(e=>e.key===`api-keys`?r.apiKeys:e.key===`webhooks`?r.webhooks:e.key===`ai-assistant`?r.aiAssistant:!0),...ce().map(e=>({key:e.key,labelKey:e.labelKey,icon:e.icon,isExtension:!0}))],[r.apiKeys,r.webhooks,r.aiAssistant]),a=[`api-keys`,`webhooks`,`ai-assistant`],o=e=>a.includes(e),s=e??null,c=s&&i.some(e=>e.key===s)?s:i[0]?.key??null;return c===null?(0,Z.jsx)(`div`,{className:`rounded-md border border-dashed bg-card p-8 text-center text-sm text-muted-foreground`,children:t(`settings:noSectionsConfigured`)}):(0,Z.jsxs)(`div`,{className:`flex flex-col gap-4 lg:grid lg:grid-cols-[14rem_minmax(0,1fr)]`,children:[(0,Z.jsx)(`div`,{className:`lg:hidden`,children:(0,Z.jsxs)(h,{value:c??``,onValueChange:e=>n({name:`settings`,section:e}),children:[(0,Z.jsx)(f,{className:`w-full`,children:(0,Z.jsx)(d,{})}),(0,Z.jsx)(p,{children:i.map(({key:e,labelKey:n,icon:r})=>(0,Z.jsx)(m,{value:e,children:(0,Z.jsxs)(`span`,{className:`flex items-center gap-2`,children:[(0,Z.jsx)(r,{className:`size-4`}),(0,Z.jsx)(`span`,{children:t(n)})]})},e))})]})}),(0,Z.jsx)(`aside`,{className:`hidden lg:block`,children:(0,Z.jsx)(`nav`,{className:`flex flex-col gap-1`,children:i.map(({key:e,labelKey:n,icon:r})=>(0,Z.jsxs)(ue,{to:{name:`settings`,section:e},className:V(`flex items-center gap-2 rounded-md px-3 py-2 text-sm hover:bg-accent`,c===e&&`bg-accent font-medium`),children:[(0,Z.jsx)(r,{className:`size-4`}),(0,Z.jsx)(`span`,{children:t(n)})]},e))})}),(0,Z.jsxs)(`section`,{className:`min-w-0`,children:[c&&o(c)&&c===`api-keys`&&(0,Z.jsx)(Se,{}),c&&o(c)&&c===`webhooks`&&(0,Z.jsx)(ke,{}),c&&o(c)&&c===`ai-assistant`&&(0,Z.jsx)(ve,{}),c&&!o(c)&&(()=>{let e=ce().find(e=>e.key===c);return e?(0,Z.jsx)(e.component,{}):null})()]})]})}function Se(){let{t:e}=N(),t=W(),n=B(),i=q(),s=me(),l=oe(),[u,d]=X.useState(!1),[f,p]=X.useState(null),[m,h]=X.useState(null),y=z({queryKey:$,queryFn:()=>t.listApiKeys()}),C=L({mutationFn:e=>t.deleteApiKey(e),onSuccess:()=>{n.invalidateQueries({queryKey:$}),i.success({key:`settings:apiKeys.notice.revoked`})},onError:e=>i.error({message:e instanceof Error?e.message:String(e)})}),w=L({mutationFn:e=>t.updateApiKey(e.id,{enabled:e.enabled}),onSuccess:()=>n.invalidateQueries({queryKey:$}),onError:e=>i.error({message:e instanceof Error?e.message:String(e)})}),E=()=>{p(null),d(!0)},D=e=>{p(e),d(!0)},O=async t=>{await s.confirm({title:e(`settings:apiKeys.confirmRevoke.title`),description:e(`settings:apiKeys.confirmRevoke.description`,{name:t.name??t.id}),confirmLabel:e(`settings:apiKeys.actions.revoke`),destructive:!0})&&C.mutate(t.id)},k=y.data?.keys??[];return(0,Z.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,Z.jsx)(Q,{icon:a,title:e(`settings:apiKeys.title`),description:e(`settings:apiKeys.description`),action:(0,Z.jsxs)(Y,{onClick:E,size:`sm`,children:[(0,Z.jsx)(o,{className:`size-4`}),(0,Z.jsx)(`span`,{children:e(`settings:apiKeys.actions.create`)})]}),children:(0,Z.jsx)(_e,{isLoading:y.isLoading,error:y.error,isEmpty:k.length===0,loadingLabel:e(`common:loading`),empty:{icon:a,title:e(`settings:apiKeys.empty.title`),description:e(`settings:apiKeys.empty.description`)},children:(0,Z.jsx)(he,{children:(0,Z.jsxs)(x,{children:[(0,Z.jsx)(S,{children:(0,Z.jsxs)(_,{children:[(0,Z.jsx)(b,{children:e(`settings:apiKeys.columns.name`)}),(0,Z.jsx)(b,{className:`hidden sm:table-cell`,children:e(`settings:apiKeys.columns.start`)}),(0,Z.jsx)(b,{className:`hidden md:table-cell`,children:e(`settings:apiKeys.columns.permissions`)}),(0,Z.jsx)(b,{className:`hidden md:table-cell`,children:e(`settings:apiKeys.columns.expiresAt`)}),(0,Z.jsx)(b,{children:e(`settings:apiKeys.columns.enabled`)}),(0,Z.jsx)(b,{className:`text-right`,children:e(`settings:apiKeys.columns.actions`)})]})}),(0,Z.jsx)(v,{children:k.map(t=>(0,Z.jsxs)(_,{children:[(0,Z.jsx)(g,{className:`font-medium`,children:(0,Z.jsxs)(`div`,{className:`flex flex-col`,children:[(0,Z.jsx)(`span`,{children:t.name??t.id}),t.lastRequest&&(0,Z.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:e(`settings:apiKeys.lastUsed`,{date:Fe(t.lastRequest)})})]})}),(0,Z.jsx)(g,{className:`hidden font-mono text-xs sm:table-cell`,children:t.start?`${t.start}…`:`—`}),(0,Z.jsx)(g,{className:`hidden md:table-cell`,children:(0,Z.jsx)(Ee,{permissions:t.permissions})}),(0,Z.jsx)(g,{className:`hidden md:table-cell text-xs`,children:t.expiresAt?Fe(t.expiresAt):e(`settings:apiKeys.expiresNever`)}),(0,Z.jsx)(g,{children:(0,Z.jsx)(T,{checked:t.enabled,onCheckedChange:e=>w.mutate({id:t.id,enabled:e}),"aria-label":e(`settings:apiKeys.columns.enabled`)})}),(0,Z.jsx)(g,{className:`text-right`,children:(0,Z.jsxs)(`div`,{className:`inline-flex gap-1`,children:[(0,Z.jsx)(Y,{variant:`ghost`,size:`sm`,onClick:()=>D(t),"aria-label":e(`settings:apiKeys.actions.edit`),children:(0,Z.jsx)(c,{className:`size-4`})}),(0,Z.jsx)(Y,{variant:`ghost`,size:`sm`,onClick:()=>O(t),"aria-label":e(`settings:apiKeys.actions.revoke`),disabled:C.isPending,children:(0,Z.jsx)(r,{className:`size-4 text-destructive`})})]})})]},t.id))})]})})})}),(0,Z.jsx)(De,{open:u,onOpenChange:d,editing:f,resources:l,onCreated:e=>{d(!1),h(e),n.invalidateQueries({queryKey:$})},onUpdated:()=>{d(!1),n.invalidateQueries({queryKey:$})}},f?.id??`new`),(0,Z.jsx)(Pe,{secret:m,onClose:()=>h(null)})]})}var Ce=e=>({byResource:Object.fromEntries(Object.entries(e).map(([e,t])=>[e,new Set(t)]))}),we=e=>{let t={};for(let[n,r]of Object.entries(e.byResource))r.size!==0&&(t[n]=Array.from(r));return t};function Te({resources:e,state:t,onChange:n}){let{t:r}=N(),i=(e,r)=>{let i=new Set(t.byResource[e]??[]);i.has(r)?i.delete(r):i.add(r),n({byResource:{...t.byResource,[e]:i}})},a=(e,r)=>{let i=t.byResource[e]??new Set,a=r.every(e=>i.has(e)),o=new Set(a?[]:r);n({byResource:{...t.byResource,[e]:o}})},o=X.useMemo(()=>e.filter(e=>(e.actions??[]).length>0),[e]),s=o.length>0&&o.every(e=>{let n=(e.actions??[]).map(e=>e.name),r=t.byResource[e.id]??new Set;return n.every(e=>r.has(e))});return e.length===0?(0,Z.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:r(`settings:apiKeys.permissions.noResources`)}):(0,Z.jsxs)(`div`,{className:`rounded-md border border-border`,children:[o.length>0&&(0,Z.jsx)(`div`,{className:`flex flex-wrap items-center justify-end gap-2 border-b border-border bg-muted/30 px-3 py-2`,children:(0,Z.jsx)(Y,{type:`button`,variant:`outline`,size:`sm`,className:`h-8`,onClick:()=>{let r=!s,i={...t.byResource};for(let t of e){let e=(t.actions??[]).map(e=>e.name);i[t.id]=r?new Set(e):new Set}n({byResource:i})},children:s?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(pe,{className:`mr-1.5 size-3.5`}),r(`settings:apiKeys.permissions.clearAllResources`)]}):(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(ae,{className:`mr-1.5 size-3.5`}),r(`settings:apiKeys.permissions.selectAllResources`)]})})}),(0,Z.jsx)(`div`,{className:`max-h-[24rem] overflow-y-auto`,children:(0,Z.jsxs)(x,{children:[(0,Z.jsx)(S,{className:`sticky top-0 bg-card`,children:(0,Z.jsxs)(_,{children:[(0,Z.jsx)(b,{className:`w-[14rem]`,children:r(`settings:apiKeys.permissions.resource`)}),(0,Z.jsx)(b,{children:r(`settings:apiKeys.permissions.actions`)})]})}),(0,Z.jsx)(v,{children:e.map(e=>{let n=(e.actions??[]).map(e=>e.name),o=t.byResource[e.id]??new Set,s=n.length>0&&n.every(e=>o.has(e));return(0,Z.jsxs)(_,{children:[(0,Z.jsx)(g,{className:`align-top`,children:(0,Z.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,Z.jsx)(`span`,{className:`font-medium`,children:e.name}),(0,Z.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:e.id}),(0,Z.jsxs)(`button`,{type:`button`,className:`mt-1 inline-flex items-center gap-1 self-start text-xs text-primary hover:underline`,onClick:()=>a(e.id,n),children:[s?(0,Z.jsx)(pe,{className:`size-3`}):(0,Z.jsx)(ae,{className:`size-3`}),r(s?`settings:apiKeys.permissions.clearAll`:`settings:apiKeys.permissions.selectAll`)]})]})}),(0,Z.jsx)(g,{children:(0,Z.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:n.map(t=>{let n=o.has(t);return(0,Z.jsxs)(`label`,{className:V(`inline-flex cursor-pointer items-center gap-1.5 rounded-md border border-border px-2 py-1 text-xs`,n&&`border-primary bg-primary/10 text-primary`),children:[(0,Z.jsx)(y,{checked:n,onCheckedChange:()=>i(e.id,t),className:`size-3.5`}),(0,Z.jsx)(`span`,{children:t})]},t)})})})]},e.id)})})]})})]})}function Ee({permissions:e}){let{t}=N(),n=Object.entries(e);if(n.length===0)return(0,Z.jsx)(A,{variant:`outline`,children:t(`settings:apiKeys.permissions.none`)});let r=n.reduce((e,[,t])=>e+t.length,0);return(0,Z.jsx)(A,{variant:`secondary`,children:t(`settings:apiKeys.permissions.summary`,{resources:n.length,actions:r})})}function De({open:e,onOpenChange:t,editing:n,resources:r,onCreated:i,onUpdated:a}){let{t:o}=N(),s=W(),c=q(),l=!!n,[u,d]=X.useState(n?.name??``),[f,p]=X.useState(()=>{if(!n?.expiresAt)return``;let e=new Date(n.expiresAt).getTime()-Date.now();return e>0?String(Math.max(1,Math.round(e/(1440*60*1e3)))):``}),[m,h]=X.useState(()=>Ce(n?.permissions??{})),g=L({mutationFn:async()=>{let e=we(m);if(l&&n){let t=f.trim()===``?null:Number(f);return{record:(await s.updateApiKey(n.id,{name:u.trim(),permissions:e,expiresInDays:t===null?null:Number.isFinite(t)&&t>0?t:void 0})).record}}let t=f.trim()===``?null:Number(f);return s.createApiKey({name:u.trim(),permissions:e,expiresInDays:t===null?null:Number.isFinite(t)&&t>0?t:void 0})},onSuccess:e=>{l?(c.success({key:`settings:apiKeys.notice.updated`}),a(e.record)):e.key&&i({key:e.key,record:e.record})},onError:e=>c.error({message:e instanceof Error?e.message:String(e)})});X.useEffect(()=>{if(e)if(d(n?.name??``),h(Ce(n?.permissions??{})),!n?.expiresAt)p(``);else{let e=new Date(n.expiresAt).getTime()-Date.now();p(e>0?String(Math.max(1,Math.round(e/(1440*60*1e3)))):``)}},[e,n]);let _=Object.values(m.byResource).reduce((e,t)=>e+(t?.size??0),0);return(0,Z.jsx)(I,{open:e,onOpenChange:t,children:(0,Z.jsxs)(F,{className:`max-w-3xl`,children:[(0,Z.jsxs)(P,{children:[(0,Z.jsx)(G,{children:o(l?`settings:apiKeys.editor.titleEdit`:`settings:apiKeys.editor.titleCreate`)}),(0,Z.jsx)(R,{children:o(`settings:apiKeys.editor.description`)})]}),(0,Z.jsxs)(`form`,{className:`flex flex-col gap-4`,onSubmit:e=>{e.preventDefault(),u.trim()&&g.mutate()},children:[(0,Z.jsxs)(`div`,{className:`grid gap-4 sm:grid-cols-2`,children:[(0,Z.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,Z.jsx)(U,{htmlFor:`api-key-name`,children:o(`settings:apiKeys.editor.name`)}),(0,Z.jsx)(J,{id:`api-key-name`,value:u,onChange:e=>d(e.target.value),placeholder:o(`settings:apiKeys.editor.namePlaceholder`),required:!0,maxLength:64})]}),(0,Z.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,Z.jsx)(U,{htmlFor:`api-key-expires`,children:o(`settings:apiKeys.editor.expiresInDays`)}),(0,Z.jsx)(J,{id:`api-key-expires`,type:`number`,min:1,max:3650,value:f,onChange:e=>p(e.target.value),placeholder:o(`settings:apiKeys.editor.expiresPlaceholder`)}),(0,Z.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:o(`settings:apiKeys.editor.expiresHint`)})]})]}),(0,Z.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,Z.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,Z.jsx)(U,{children:o(`settings:apiKeys.editor.permissions`)}),(0,Z.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:o(`settings:apiKeys.editor.selectedActions`,{count:_})})]}),(0,Z.jsx)(Te,{resources:r,state:m,onChange:h})]}),(0,Z.jsxs)(K,{children:[(0,Z.jsx)(Y,{type:`button`,variant:`outline`,onClick:()=>t(!1),children:o(`common:cancel`)}),(0,Z.jsx)(Y,{type:`submit`,disabled:g.isPending||!u.trim()||_===0,children:g.isPending?o(`common:saving`):o(l?`common:save`:`settings:apiKeys.actions.create`)})]})]})]})})}var Oe=[`record.created`,`record.updated`,`record.deleted`,`*`];function ke(){let{t:e}=N(),t=W(),n=B(),i=q(),a=me(),s=oe(),[l,u]=X.useState(!1),[d,f]=X.useState(null),[p,m]=X.useState(null),h=z({queryKey:ye,queryFn:()=>t.listWebhooks()}),y=z({queryKey:[`modern-admin`,`webhooks`,p,`deliveries`],queryFn:()=>t.listWebhookDeliveries(p),enabled:!!p}),C=L({mutationFn:e=>t.deleteWebhook(e),onSuccess:()=>{n.invalidateQueries({queryKey:ye}),i.success({key:`settings:webhooks.notice.deleted`})},onError:e=>i.error({message:e instanceof Error?e.message:String(e)})}),w=L({mutationFn:e=>t.testWebhook(e),onSuccess:()=>{p&&n.invalidateQueries({queryKey:[`modern-admin`,`webhooks`,p,`deliveries`]}),i.success({key:`settings:webhooks.notice.testQueued`})},onError:e=>i.error({message:e instanceof Error?e.message:String(e)})}),T=h.data?.webhooks??[],E=async t=>{await a.confirm({title:e(`settings:webhooks.confirmDelete.title`),description:e(`settings:webhooks.confirmDelete.description`,{name:t.name}),confirmLabel:e(`common:delete`),destructive:!0})&&C.mutate(t.id)};return(0,Z.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,Z.jsx)(Q,{icon:H,title:e(`settings:webhooks.title`),description:e(`settings:webhooks.description`),action:(0,Z.jsxs)(Y,{size:`sm`,onClick:()=>{f(null),u(!0)},children:[(0,Z.jsx)(o,{className:`size-4`}),e(`settings:webhooks.actions.create`)]}),children:(0,Z.jsx)(_e,{isLoading:h.isLoading,error:h.error,isEmpty:T.length===0,loadingLabel:e(`common:loading`),empty:{icon:H,title:e(`settings:webhooks.empty.title`),description:e(`settings:webhooks.empty.description`)},children:(0,Z.jsx)(he,{children:(0,Z.jsxs)(x,{children:[(0,Z.jsx)(S,{children:(0,Z.jsxs)(_,{children:[(0,Z.jsx)(b,{children:e(`settings:webhooks.columns.name`)}),(0,Z.jsx)(b,{children:e(`settings:webhooks.columns.resource`)}),(0,Z.jsx)(b,{children:e(`settings:webhooks.columns.events`)}),(0,Z.jsx)(b,{children:e(`settings:webhooks.columns.enabled`)}),(0,Z.jsx)(b,{className:`text-right`,children:e(`settings:webhooks.columns.actions`)})]})}),(0,Z.jsx)(v,{children:T.map(t=>(0,Z.jsxs)(_,{children:[(0,Z.jsxs)(g,{children:[(0,Z.jsx)(`button`,{type:`button`,className:`text-left font-medium hover:underline`,onClick:()=>m(t.id),children:t.name}),(0,Z.jsx)(`div`,{className:`max-w-xs truncate text-xs text-muted-foreground`,children:t.url})]}),(0,Z.jsx)(g,{children:je(s,t.resourceId,e(`settings:webhooks.editor.allResources`))}),(0,Z.jsx)(g,{className:`max-w-xs`,children:(0,Z.jsx)(`div`,{className:`flex flex-wrap gap-1`,children:t.events.map(e=>(0,Z.jsx)(A,{variant:`outline`,children:e},e))})}),(0,Z.jsx)(g,{children:t.enabled?e(`common:yes`):e(`common:no`)}),(0,Z.jsx)(g,{className:`text-right`,children:(0,Z.jsxs)(`div`,{className:`inline-flex gap-1`,children:[(0,Z.jsx)(Y,{variant:`ghost`,size:`sm`,onClick:()=>w.mutate(t.id),children:e(`settings:webhooks.actions.test`)}),(0,Z.jsx)(Y,{variant:`ghost`,size:`sm`,onClick:()=>{f(t),u(!0)},children:(0,Z.jsx)(c,{className:`size-4`})}),(0,Z.jsx)(Y,{variant:`ghost`,size:`sm`,onClick:()=>void E(t),children:(0,Z.jsx)(r,{className:`size-4 text-destructive`})})]})})]},t.id))})]})})})}),p&&(0,Z.jsx)(Q,{icon:H,title:e(`settings:webhooks.deliveries.title`),children:y.isLoading?(0,Z.jsx)(`div`,{className:`py-4 text-sm text-muted-foreground`,children:e(`common:loading`)}):(0,Z.jsx)(he,{children:(0,Z.jsxs)(x,{children:[(0,Z.jsx)(S,{children:(0,Z.jsxs)(_,{children:[(0,Z.jsx)(b,{children:e(`settings:webhooks.deliveries.status`)}),(0,Z.jsx)(b,{children:e(`settings:webhooks.deliveries.event`)}),(0,Z.jsx)(b,{children:e(`settings:webhooks.deliveries.attempt`)}),(0,Z.jsx)(b,{children:e(`settings:webhooks.deliveries.response`)}),(0,Z.jsx)(b,{children:e(`settings:webhooks.deliveries.createdAt`)})]})}),(0,Z.jsx)(v,{children:(y.data?.deliveries??[]).map(e=>(0,Z.jsxs)(_,{children:[(0,Z.jsx)(g,{children:e.status}),(0,Z.jsx)(g,{children:e.event}),(0,Z.jsx)(g,{children:e.attempt}),(0,Z.jsx)(g,{className:`max-w-sm truncate`,children:e.responseStatus??e.error??e.responseBody??`—`}),(0,Z.jsx)(g,{children:Fe(e.createdAt)})]},e.id))})]})})}),(0,Z.jsx)(Ae,{open:l,onOpenChange:u,webhook:d,resources:s},d?.id??`new`)]})}function Ae({open:e,onOpenChange:t,webhook:n,resources:r}){let{t:i}=N(),a=W(),o=B(),s=q(),[c,l]=X.useState(n?.name??``),[u,g]=X.useState(n?.url??``),[_,v]=X.useState(n?.resourceId??``),[b,x]=X.useState(n?.enabled??!0),[S,w]=X.useState(n?.secret??``),[E,D]=X.useState(n?.events??[`record.created`,`record.updated`]),[O,ee]=X.useState(n?.headers??{}),[A,te]=X.useState(n?.filters??{}),[ne,re]=X.useState(n?.payloadFields??[]),j=r.find(e=>e.id===_),M=L({mutationFn:e=>n?a.updateWebhook(n.id,e):a.createWebhook(e),onSuccess:()=>{o.invalidateQueries({queryKey:ye}),s.success({key:`settings:webhooks.notice.saved`}),t(!1)},onError:e=>s.error({message:e instanceof Error?e.message:String(e)})}),ie=e=>{D(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e])};return(0,Z.jsx)(I,{open:e,onOpenChange:t,children:(0,Z.jsxs)(F,{className:`max-w-3xl`,children:[(0,Z.jsxs)(P,{children:[(0,Z.jsx)(G,{children:i(n?`settings:webhooks.editor.titleEdit`:`settings:webhooks.editor.titleCreate`)}),(0,Z.jsx)(R,{children:i(`settings:webhooks.editor.description`)})]}),(0,Z.jsxs)(`form`,{className:`space-y-4`,onSubmit:e=>{e.preventDefault(),M.mutate({name:c.trim(),url:u.trim(),events:E,resourceId:_||null,enabled:b,...S.trim()?{secret:S.trim()}:{},headers:Ne(O),filters:Ne(A),payloadFields:ne})},children:[(0,Z.jsxs)(`div`,{className:`grid gap-3 sm:grid-cols-2`,children:[(0,Z.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Z.jsx)(U,{children:i(`settings:webhooks.editor.name`)}),(0,Z.jsx)(J,{value:c,onChange:e=>l(e.target.value),required:!0})]}),(0,Z.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Z.jsx)(U,{children:i(`settings:webhooks.editor.url`)}),(0,Z.jsx)(J,{value:u,onChange:e=>g(e.target.value),required:!0,type:`url`})]}),(0,Z.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Z.jsx)(U,{children:i(`settings:webhooks.editor.resource`)}),(0,Z.jsxs)(h,{value:_||`__all__`,onValueChange:e=>{v(e===`__all__`?``:e),re([])},children:[(0,Z.jsx)(f,{children:(0,Z.jsx)(d,{})}),(0,Z.jsxs)(p,{children:[(0,Z.jsx)(m,{value:`__all__`,children:i(`settings:webhooks.editor.allResources`)}),r.map(e=>(0,Z.jsxs)(m,{value:e.id,children:[e.name,e.name!==e.id&&(0,Z.jsxs)(`span`,{className:`ml-1.5 text-xs text-muted-foreground`,children:[`(`,e.id,`)`]})]},e.id))]})]})]}),(0,Z.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Z.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,Z.jsx)(U,{children:i(`settings:webhooks.editor.secret`)}),(0,Z.jsx)(k,{content:i(`settings:webhooks.editor.secretHint`),ariaLabel:i(`settings:webhooks.editor.secret`),side:`right`})]}),(0,Z.jsx)(J,{value:S,onChange:e=>w(e.target.value),type:`password`})]})]}),(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsx)(T,{checked:b,onCheckedChange:x}),(0,Z.jsx)(U,{children:i(`settings:webhooks.editor.enabled`)})]}),(0,Z.jsxs)(`div`,{className:`space-y-2`,children:[(0,Z.jsx)(U,{children:i(`settings:webhooks.editor.events`)}),(0,Z.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:Oe.map(e=>(0,Z.jsxs)(`label`,{className:`flex items-center gap-2 rounded-md border px-3 py-2 text-sm`,children:[(0,Z.jsx)(y,{checked:E.includes(e),onCheckedChange:()=>ie(e)}),e]},e))})]}),j&&(0,Z.jsxs)(`div`,{className:`space-y-2`,children:[(0,Z.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,Z.jsx)(U,{children:i(`settings:webhooks.editor.payloadFields`)}),(0,Z.jsx)(k,{content:i(`settings:webhooks.editor.payloadFieldsHint`),ariaLabel:i(`settings:webhooks.editor.payloadFields`),side:`right`})]}),(0,Z.jsx)(`div`,{className:`grid gap-2 sm:grid-cols-2`,children:j.properties.map(e=>(0,Z.jsxs)(`label`,{className:`flex items-center gap-2 text-sm`,children:[(0,Z.jsx)(y,{checked:ne.includes(e.path),onCheckedChange:()=>re(t=>t.includes(e.path)?t.filter(t=>t!==e.path):[...t,e.path])}),e.label]},e.path))})]}),(0,Z.jsxs)(`div`,{className:`grid gap-3 sm:grid-cols-2`,children:[(0,Z.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Z.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,Z.jsx)(U,{children:i(`settings:webhooks.editor.headers`)}),(0,Z.jsx)(k,{content:i(`settings:webhooks.editor.headersHint`),ariaLabel:i(`settings:webhooks.editor.headers`),side:`top`})]}),(0,Z.jsx)(C,{value:O,onChange:e=>ee(Me(e))})]}),(0,Z.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Z.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,Z.jsx)(U,{children:i(`settings:webhooks.editor.filters`)}),(0,Z.jsx)(k,{content:i(`settings:webhooks.editor.filtersHint`),ariaLabel:i(`settings:webhooks.editor.filters`),side:`top`})]}),(0,Z.jsx)(C,{value:A,onChange:e=>te(Me(e))})]})]}),(0,Z.jsxs)(K,{children:[(0,Z.jsx)(Y,{type:`button`,variant:`outline`,onClick:()=>t(!1),children:i(`common:cancel`)}),(0,Z.jsx)(Y,{type:`submit`,disabled:M.isPending||!c.trim()||!u.trim()||E.length===0,children:M.isPending?i(`common:saving`):i(`common:save`)})]})]})]})})}var je=(e,t,n)=>t?e.find(e=>e.id===t)?.name??t:n,Me=e=>e&&typeof e==`object`&&!Array.isArray(e)?e:{},Ne=e=>{let t={};for(let[n,r]of Object.entries(e))r!=null&&r!==``&&(t[n]=String(r));return t};function Pe({secret:e,onClose:t}){let{t:n}=N(),r=q(),[a,o]=X.useState(!1),[s,c]=X.useState(!1);return X.useEffect(()=>{e||(o(!1),c(!1))},[e]),(0,Z.jsx)(I,{open:!!e,onOpenChange:e=>!e&&t(),children:(0,Z.jsxs)(F,{className:`max-w-lg`,children:[(0,Z.jsxs)(P,{children:[(0,Z.jsxs)(G,{className:`flex items-center gap-2`,children:[(0,Z.jsx)(H,{className:`size-5`}),n(`settings:apiKeys.created.title`)]}),(0,Z.jsx)(R,{children:n(`settings:apiKeys.created.description`)})]}),(0,Z.jsx)(`div`,{className:`rounded-md border border-amber-300/60 bg-amber-50 p-3 text-sm text-amber-900 dark:border-amber-300/30 dark:bg-amber-950/40 dark:text-amber-200`,children:(0,Z.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,Z.jsx)(l,{className:`mt-0.5 size-4`}),(0,Z.jsx)(`p`,{children:n(`settings:apiKeys.created.warning`)})]})}),(0,Z.jsxs)(`div`,{className:`flex items-stretch gap-2`,children:[(0,Z.jsxs)(`div`,{className:`relative flex-1`,children:[(0,Z.jsx)(J,{readOnly:!0,type:a?`text`:`password`,value:e?.key??``,className:`pr-10 font-mono text-xs`,onFocus:e=>e.currentTarget.select()}),(0,Z.jsx)(Y,{type:`button`,variant:`ghost`,size:`sm`,className:`absolute right-1 top-1/2 -translate-y-1/2`,onClick:()=>o(e=>!e),"aria-label":n(a?`settings:apiKeys.created.hide`:`settings:apiKeys.created.reveal`),children:a?(0,Z.jsx)(de,{className:`size-4`}):(0,Z.jsx)(ie,{className:`size-4`})})]}),(0,Z.jsxs)(Y,{type:`button`,onClick:async()=>{if(e)try{await navigator.clipboard.writeText(e.key),c(!0),r.success({key:`settings:apiKeys.notice.copied`}),setTimeout(()=>c(!1),1500)}catch{r.error({key:`settings:apiKeys.notice.copyFailed`})}},variant:`secondary`,children:[s?(0,Z.jsx)(ae,{className:`size-4`}):(0,Z.jsx)(i,{className:`size-4`}),(0,Z.jsx)(`span`,{className:`hidden sm:inline`,children:n(s?`settings:apiKeys.created.copied`:`settings:apiKeys.created.copy`)})]})]}),(0,Z.jsx)(K,{children:(0,Z.jsx)(Y,{onClick:t,children:n(`common:done`)})})]})})}var Fe=e=>{try{return new Date(e).toLocaleString()}catch{return String(e)}};export{xe as SettingsPage};
|
|
2
|
-
//# sourceMappingURL=settings-page-DvTdKBLt.js.map
|
|
Binary file
|
|
Binary file
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-S-ySWqyJ.js";import{n as t}from"./createLucideIcon-DSvTabTT.js";import{t as n}from"./zap-CFqoI4XA.js";import{t as r}from"./trash-2-BXceFzA_.js";import{n as i}from"./wand-sparkles-ChJCPtl2.js";import{t as a}from"./pencil-C8qbfxd_.js";import{a as o,c as s,l as c,o as l,r as u,s as d,t as f,u as p}from"./property-renderer-5cEDq-L-.js";import{a as m,i as h,n as g,t as _}from"./card-BxVP8OBf.js";import{i as v,n as y,r as b,t as x}from"./tabs-BGAJ-7kY.js";import{t as S}from"./revisions-button-BjlTw0FI.js";import{A as C,Q as w,T,Xn as E,dt as D,ft as O,h as k,i as A,l as j,mt as M,n as N,o as P,p as F,pt as I,r as L,sn as R,ut as z,w as B,x as V,y as H}from"./index-eVDAlr3Y.js";var U=e(t(),1),W=E();function G({parentRecordId:e,related:t,active:n}){let[r,i]=U.useState({perPage:10}),[a,o]=U.useState(n);return U.useEffect(()=>{n&&o(!0)},[n]),a?(0,W.jsx)(u,{resourceId:t.resourceId,query:r,onQueryChange:i,lockedFilters:{[t.foreignKey]:e},embedPadding:!1,features:{breadcrumbs:!1,title:!1,create:!1,export:!1,card:!1}}):null}function K({resource:e,recordId:t}){let{t:n}=C(),r=T(),i=e.showRelatedResources!==!1,a=U.useMemo(()=>i?l(e,r):[],[i,e,r]),[o,s]=U.useState(()=>a[0]?`${a[0].resourceId}::${a[0].foreignKey}`:``);if(U.useEffect(()=>{a.length!==0&&(a.some(e=>`${e.resourceId}::${e.foreignKey}`===o)||s(`${a[0].resourceId}::${a[0].foreignKey}`))},[o,a]),a.length===0)return null;let c=e=>e.label??r.find(t=>t.id===e.resourceId)?.name??e.resourceId;return(0,W.jsxs)(_,{children:[(0,W.jsx)(h,{children:(0,W.jsx)(m,{className:`text-base`,children:n(`common:relatedRecords`)})}),(0,W.jsx)(g,{children:(0,W.jsxs)(x,{value:o,onValueChange:s,children:[(0,W.jsx)(b,{className:`w-full justify-start`,children:a.map(e=>{let t=`${e.resourceId}::${e.foreignKey}`;return(0,W.jsx)(v,{value:t,children:c(e)},t)})}),a.map(e=>{let n=`${e.resourceId}::${e.foreignKey}`;return(0,W.jsx)(y,{value:n,className:`mt-4`,children:(0,W.jsx)(G,{parentRecordId:t,related:e,active:o===n})},n)})]})})]})}function q({error:e,t}){let{status:n,message:r}=w(e),a=t(n===404?`errors:notFound`:n===403?`errors:forbidden`:`errors:server`);return(0,W.jsxs)(`div`,{className:`flex items-start gap-3 rounded-lg border border-destructive/50 bg-destructive/10 p-4 dark:bg-destructive/15`,children:[(0,W.jsx)(i,{className:`mt-0.5 size-5 shrink-0 text-destructive`}),(0,W.jsxs)(`div`,{className:`space-y-1 text-sm`,children:[(0,W.jsx)(`p`,{className:`font-semibold text-destructive`,children:a}),(0,W.jsx)(`p`,{className:`text-destructive/90`,children:r})]})]})}function J({resourceId:e,recordId:t}){let i=B(e),l=V(e,t),u=F(e),v=H(e),y=k(),{t:b}=C(),x=P(),w=L(),T=j(),E=(i?.actions??[]).filter(e=>e.actionType===`record`&&![`show`,`edit`,`delete`].includes(e.name));N(`mod+e`,()=>{l.data&&x({name:`edit`,resourceId:e,recordId:t})},{description:b(`common:edit`)});let U=async()=>{await w.confirm({title:b(`common:confirmDelete`),confirmLabel:b(`common:delete`),destructive:!0})&&(await u.mutateAsync(t),x({name:`list`,resourceId:e}))};if(!i)return(0,W.jsx)(`div`,{className:`p-6`,children:b(`common:loading`)});let G=D(),J=l.data?.record?.title||t;return(0,W.jsxs)(`div`,{className:`space-y-2 sm:space-y-4`,children:[(0,W.jsx)(c,{items:[p(b(`common:home`)),{label:i.name,to:{name:`list`,resourceId:e}},{label:J}]}),(0,W.jsxs)(_,{children:[(0,W.jsxs)(h,{className:`flex flex-row items-center justify-between gap-3`,children:[(0,W.jsxs)(m,{className:`truncate`,children:[i.name,` #`,t]}),l.data&&(0,W.jsxs)(`div`,{className:`flex shrink-0 flex-wrap gap-2`,children:[y.history&&(0,W.jsx)(S,{resourceId:e,recordId:t}),(0,W.jsxs)(O,{children:[(0,W.jsx)(M,{asChild:!0,children:(0,W.jsx)(R,{variant:`outline-primary`,size:`sm`,asChild:!0,children:(0,W.jsxs)(A,{to:{name:`edit`,resourceId:e,recordId:t},"aria-label":b(`common:edit`),children:[(0,W.jsx)(a,{className:`size-4`}),(0,W.jsx)(`span`,{className:`hidden sm:inline`,children:b(`common:edit`)})]})})}),(0,W.jsxs)(I,{className:`flex items-center gap-1.5`,children:[(0,W.jsx)(`span`,{children:b(`common:edit`)}),(0,W.jsxs)(`span`,{className:`inline-flex items-center gap-0.5`,children:[(0,W.jsx)(z,{children:G}),(0,W.jsx)(`span`,{className:`text-muted-foreground`,children:`+`}),(0,W.jsx)(z,{children:`E`})]})]})]}),(0,W.jsxs)(R,{variant:`outline-destructive`,size:`sm`,disabled:u.isPending,onClick:()=>void U(),"aria-label":b(`common:delete`),children:[(0,W.jsx)(r,{className:`size-4`}),(0,W.jsx)(`span`,{className:`hidden sm:inline`,children:b(`common:delete`)})]}),E.length>0&&(0,W.jsx)(s,{actions:E,onAction:async e=>{await o(e,w)&&v.mutateAsync({recordId:t,actionName:e.name}).then(e=>{e.notice&&T[e.notice.type===`error`?`error`:e.notice.type===`warning`?`warning`:e.notice.type===`info`?`info`:`success`]({message:e.notice.message})}).catch(e=>T.error({message:e.message}))},t:b,trigger:(0,W.jsxs)(R,{variant:`outline`,size:`sm`,disabled:v.isPending,"aria-label":b(`common:actions`),children:[(0,W.jsx)(n,{className:`size-4`}),(0,W.jsx)(`span`,{className:`hidden sm:inline`,children:b(`common:actions`)})]})})]})]}),(0,W.jsx)(g,{children:(0,W.jsxs)(`div`,{className:`space-y-4`,children:[l.isLoading&&(0,W.jsx)(`p`,{className:`text-muted-foreground`,children:b(`common:loading`)}),l.isError&&(0,W.jsx)(q,{error:l.error,t:b}),l.data&&(0,W.jsx)(`dl`,{className:`[column-fill:_balance] md:columns-2`,children:d(i.properties,`show`).map(e=>(0,W.jsxs)(`div`,{className:`mb-8 break-inside-avoid`,children:[(0,W.jsx)(`dt`,{className:`text-xs font-semibold uppercase tracking-wide text-muted-foreground`,children:e.label}),(0,W.jsx)(`dd`,{className:`mt-1`,children:(0,W.jsx)(f,{property:e,value:l.data.record.params[e.path],view:`show`,populated:l.data.record.populated})})]},e.path))})]})})]}),l.data&&(0,W.jsx)(K,{resource:i,recordId:t})]})}export{J as ResourceShowPage};
|
|
2
|
-
//# sourceMappingURL=show-page-GmBctL2E.js.map
|
|
Binary file
|
|
Binary file
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
var e=class extends Error{constructor(e,t){super(`Record "${e}" was not found in resource "${t}"`),this.name=`RecordNotFoundError`}},t=e=>{if(typeof e!=`object`||!e)return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null};function n(e,r=``){let i={};if(t(e)){for(let t of Object.keys(e)){let a=r?`${r}.${t}`:t,o=e[t];Object.assign(i,n(o,a))}return i}return Array.isArray(e)?e.length===0?(r&&(i[r]=[]),i):(e.forEach((e,t)=>{let a=r?`${r}.${t}`:String(t);Object.assign(i,n(e,a))}),i):(r&&(i[r]=e),i)}function r(e){let t={};for(let n of Object.keys(e))i(t,n,e[n]);return t}function i(e,t,n){let r=t.split(`.`),i=e;for(let e=0;e<r.length-1;e+=1){let t=r[e],n=r[e+1],a=/^\d+$/.test(n),o=Array.isArray(i)?i[Number(t)]:i[t],s;o===void 0?(s=a?[]:{},Array.isArray(i)?i[Number(t)]=s:i[t]=s):s=o,i=s}let a=r[r.length-1];Array.isArray(i)?i[Number(a)]=n:i[a]=n}var a=new Set([`eq`,`neq`,`co`,`nco`,`sw`,`ew`,`empty`,`nempty`,`in`,`gt`,`lt`,`between`]);function o(e){let t=e.indexOf(`:`);if(t===-1)return{operator:null,value:e};let n=e.slice(0,t);return a.has(n)?{operator:n,value:e.slice(t+1)}:{operator:null,value:e}}var s=class{constructor(e,t){this.resource=t;let i=n(e??{}),s={},c={};for(let e of Object.keys(i))if(e.includes(`~~`)){let[t,n]=e.split(`~~`);if(t&&n)if(n===`op`){let n=String(i[e]);a.has(n)&&(c[t]=n)}else s[t]={...s[t]??{},[n]:String(i[e])}}else s[e]=i[e];let l=r(s);this.filters={};for(let e of Object.keys(l)){let n=l[e],r=c[e]??null;if(r===null&&typeof n==`string`){let e=o(n);e.operator&&(r=e.operator,n=r===`in`?e.value?e.value.split(`,`):[]:e.value)}this.filters[e]={path:e,property:t.property(e),value:n,operator:r}}}get(e){return this.filters[e]??null}reduce(e,t){return Object.values(this.filters).reduce(e,t)}isVisible(){return Object.keys(this.filters).length>0}toJSON(){let e={};for(let t of Object.keys(this.filters))e[t]=this.filters[t].value;return e}},c=e=>`list:${e}`,l=(e,t)=>`record:${e}:${t}`,u=e=>`records:${e}`,d={list:300,show:300,search:60,http:300},f={enabled:!1,ttl:0};function p(e,t){let n=e?.cache;if(n===!1)return f;let r=n?.strategy??`ttl`;if(r===`off`)return f;let i=n?.[t];return i?.enabled===!1?f:{enabled:!0,ttl:i?.ttl??(r===`tag-only`?2592e3:n?.ttl??d[t])}}var ee=20,te=async(e,t,n)=>{if(e.length===0)return;let r=t.properties().filter(e=>e.reference()!==null&&!e.isArray()&&!e.isId());r.length!==0&&await Promise.all(r.map(async t=>{let r=t.reference();if(!r)return;let i;try{i=n.findResource(r)}catch{return}let a=t.path(),o=new Set;for(let t of e){let e=t.get(a);e==null||e===``||o.add(String(e))}if(o.size===0)return;let s=await i.findMany(Array.from(o)),c=new Map(s.map(e=>[String(e.id()),e]));for(let t of e){let e=t.get(a);if(e==null||e===``)continue;let n=c.get(String(e));n&&t.populate(a,n)}}))},ne={name:`list`,actionType:`resource`,isAccessible:!0,isVisible:!0,component:`List`,handler:async(e,t)=>{let{resource:n,cacheRuntime:r,admin:i}=t,a=e.query??{},o=Math.max(1,Number(a.page??1)),l=Math.max(1,Math.min(200,Number(a.perPage??ee))),u=a.sortBy,d=a.direction??void 0,f=a.filters??{},ne=n.decorate().options.sort,m=u??ne?.sortBy,h=u==null?ne?.direction:d,re=new s(f,n),ie=`list:${n.id()}:${JSON.stringify({filters:f,page:o,perPage:l,sortBy:m,direction:h})}`,ae=p(n.decorate().options,`list`);return r.read(ie,{enabled:ae.enabled,ttl:ae.ttl,tags:[c(n.id())]},async()=>{let e=m==null?{}:{sort:{sortBy:m,...h?{direction:h}:{}}},[t,r]=await Promise.all([n.find(re,{limit:l,offset:(o-1)*l,...e}),n.count(re)]);return await te(t,n,i),{records:t.map(e=>e.toJSON()),meta:{total:r,page:o,perPage:l,...m?{sortBy:m}:{},...h?{direction:h}:{}}}})}},m={name:`show`,actionType:`record`,isAccessible:!0,isVisible:!0,component:`Show`,handler:async(t,n)=>{let{resource:r,cacheRuntime:i}=n,a=t.params.recordId;if(!a)throw Error(`show action requires recordId`);let o=`record:${r.id()}:${a}`,s=p(r.decorate().options,`show`);return i.read(o,{enabled:s.enabled,ttl:s.ttl,tags:[l(r.id(),a),u(r.id())]},async()=>{let t=await r.findOne(a);if(!t)throw new e(a,r.id());return{record:t.toJSON()}})}},h={name:`new`,actionType:`resource`,isAccessible:!0,isVisible:!0,component:`New`,handler:async(e,t)=>{let{resource:n}=t;if(e.method===`get`)return{record:n.build({}).toJSON()};let r=e.payload??{},i=await n.create(r);return{record:n.build(i).toJSON(),notice:{message:`Record created`,type:`success`}}}},re={name:`edit`,actionType:`record`,isAccessible:!0,isVisible:!0,component:`Edit`,handler:async(t,n)=>{let{resource:r}=n,i=t.params.recordId;if(!i)throw Error(`edit action requires recordId`);if(t.method===`get`){let t=await r.findOne(i);if(!t)throw new e(i,r.id());return{record:t.toJSON()}}let a=t.payload??{},o=await r.update(i,a);return{record:r.build(o).toJSON(),notice:{message:`Record updated`,type:`success`}}}},ie={name:`delete`,actionType:`record`,isAccessible:!0,isVisible:!0,guard:`confirmDelete`,component:null,handler:async(t,n)=>{let{resource:r}=n,i=t.params.recordId;if(!i)throw Error(`delete action requires recordId`);let a=await r.findOne(i);if(!a)throw new e(i,r.id());return await r.delete(i),{record:a.toJSON(),notice:{message:`Record deleted`,type:`success`},redirectUrl:`/resources/${r.id()}`}}},ae={name:`bulkDelete`,actionType:`bulk`,isAccessible:!0,isVisible:!0,guard:`confirmBulkDelete`,component:null,handler:async(e,t)=>{let{resource:n}=t,r=(e.params.recordIds??``).split(`,`).filter(Boolean);if(r.length===0)throw Error(`bulkDelete requires recordIds`);let i=await n.findMany(r);return await n.transaction(async()=>{for(let e of r)await n.delete(e)}),{records:i.map(e=>e.toJSON()),notice:{message:`Deleted ${r.length} record(s)`,type:`success`},redirectUrl:`/resources/${n.id()}`}}},oe=e=>{let{resource:t}=e,n=t._decorated??null,r=t.titlePropertyPath(),i=new Set,a=[],o=e=>{i.has(e)||(i.add(e),a.push(e))};r&&o(r);let s=n?.properties??null;if(s)for(let e of s){let t=e.isSearchable();if(t===!1){e.path()===r&&(i.delete(r),a.shift());continue}if(t===!0){o(e.path());continue}e.isId()||String(e.type())===`string`&&(!e.isVisibleIn(`list`)&&!e.isVisibleIn(`show`)||o(e.path()))}else for(let e of t.properties())e.isId()||e.type()===`string`&&e.isVisible()&&o(e.path());return{titlePath:r,fields:a}},se=(e,t,n,r)=>{let i=t.toLowerCase(),a=String(e.id()).toLowerCase();if(a===i)return 1e3;if(n){let t=String(e.get(n)??``).toLowerCase();if(t&&t===i)return 900;if(t&&t.startsWith(i))return 700;if(t&&t.includes(i))return 500}for(let t of r){if(t===n)continue;let r=String(e.get(t)??``).toLowerCase();if(r&&r.includes(i))return 300}return a.includes(i)?100:0},g=50,ce=2,le={name:`search`,actionType:`resource`,isAccessible:!0,isVisible:!1,component:null,handler:async(e,t)=>{let{resource:n,cacheRuntime:r}=t,i=(e.params.query??``).trim();if(!i){let e=await n.find(new s({},n),{limit:g,offset:0});return{records:e.map(e=>e.toJSON()),meta:{total:e.length,page:1,perPage:g}}}let a=`search:${n.id()}:${i}`,o=p(n.decorate().options,`search`);return r.read(a,{enabled:o.enabled,ttl:o.ttl,tags:[c(n.id())]},async()=>{let{titlePath:e,fields:r}=oe(t),a=new Set,o=[],c=e=>{let t=String(e.id());a.has(t)||(a.add(t),o.push(e))};try{let e=await n.findOne(i);e&&c(e)}catch{}if(r.length>0){let e=await n.search(i,r,{limit:g*ce});for(let t of e)c(t)}if(o.length<g){let e=await n.find(new s({},n),{limit:200,offset:0});for(let t of e)if(String(t.id()).toLowerCase().includes(i.toLowerCase())&&(c(t),o.length>=g))break}let l=o.map((t,n)=>({record:t,score:se(t,i,e,r),index:n})).sort((e,t)=>t.score-e.score||e.index-t.index).slice(0,g).map(e=>e.record);return{records:l.map(e=>e.toJSON()),meta:{total:l.length,page:1,perPage:g}}})}},ue=100;Object.freeze({list:ne,show:m,new:h,edit:re,delete:ie,bulkDelete:ae,search:le,values:{name:`values`,actionType:`resource`,isAccessible:!0,isVisible:!1,handler:async(e,t)=>{let{resource:n}=t,r=e.query??{},i=r.field??``,a=r.search??``,o=Math.max(1,Math.min(1e3,Number(r.limit??ue)));if(!i||!n.property(i))return{values:[],hasMore:!1};let s=await n.distinct(i,{limit:o+1,search:a}),c=s.length>o;return c&&s.pop(),{values:s,hasMore:c}}}});var de;function _(e,t,n){function r(n,r){if(n._zod||Object.defineProperty(n,`_zod`,{value:{def:r,constr:o,traits:new Set},enumerable:!1}),n._zod.traits.has(e))return;n._zod.traits.add(e),t(n,r);let i=o.prototype,a=Object.keys(i);for(let e=0;e<a.length;e++){let t=a[e];t in n||(n[t]=i[t].bind(n))}}let i=n?.Parent??Object;class a extends i{}Object.defineProperty(a,`name`,{value:e});function o(e){var t;let i=n?.Parent?new a:this;r(i,e),(t=i._zod).deferred??(t.deferred=[]);for(let e of i._zod.deferred)e();return i}return Object.defineProperty(o,`init`,{value:r}),Object.defineProperty(o,Symbol.hasInstance,{value:t=>n?.Parent&&t instanceof n.Parent?!0:t?._zod?.traits?.has(e)}),Object.defineProperty(o,`name`,{value:e}),o}var v=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}},fe=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name=`ZodEncodeError`}};(de=globalThis).__zod_globalConfig??(de.__zod_globalConfig={});var pe=globalThis.__zod_globalConfig;function y(e){return e&&Object.assign(pe,e),pe}function me(e){let t=Object.values(e).filter(e=>typeof e==`number`);return Object.entries(e).filter(([e,n])=>t.indexOf(+e)===-1).map(([e,t])=>t)}function he(e,t){return typeof t==`bigint`?t.toString():t}function ge(e){return{get value(){{let t=e();return Object.defineProperty(this,`value`,{value:t}),t}throw Error(`cached value already set`)}}}function _e(e){return e==null}function ve(e){let t=+!!e.startsWith(`^`),n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}function ye(e,t){let n=e/t,r=Math.round(n),i=2**-52*Math.max(Math.abs(n),1);return Math.abs(n-r)<i?0:n-r}var be=Symbol(`evaluating`);function b(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==be)return r===void 0&&(r=be,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}function x(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function S(...e){let t={};for(let n of e)Object.assign(t,Object.getOwnPropertyDescriptors(n));return Object.defineProperties({},t)}function xe(e){return JSON.stringify(e)}function Se(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,``).replace(/[\s_-]+/g,`-`).replace(/^-+|-+$/g,``)}var Ce=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function C(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}var we=ge(()=>{if(pe.jitless||typeof navigator<`u`&&navigator?.userAgent?.includes(`Cloudflare`))return!1;try{return Function(``),!0}catch{return!1}});function w(e){if(C(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return!(C(n)===!1||Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)===!1)}function Te(e){return w(e)?{...e}:Array.isArray(e)?[...e]:e instanceof Map?new Map(e):e instanceof Set?new Set(e):e}var Ee=new Set([`string`,`number`,`symbol`]);function T(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function E(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function D(e){let t=e;if(!t)return{};if(typeof t==`string`)return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error==`string`?{...t,error:()=>t.error}:t}function De(e){return Object.keys(e).filter(t=>e[t]._zod.optin===`optional`&&e[t]._zod.optout===`optional`)}var Oe={safeint:[-(2**53-1),2**53-1],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function ke(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(`.pick() cannot be used on object schemas containing refinements`);return E(e,S(e._zod.def,{get shape(){let e={};for(let r in t){if(!(r in n.shape))throw Error(`Unrecognized key: "${r}"`);t[r]&&(e[r]=n.shape[r])}return x(this,`shape`,e),e},checks:[]}))}function Ae(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(`.omit() cannot be used on object schemas containing refinements`);return E(e,S(e._zod.def,{get shape(){let r={...e._zod.def.shape};for(let e in t){if(!(e in n.shape))throw Error(`Unrecognized key: "${e}"`);t[e]&&delete r[e]}return x(this,`shape`,r),r},checks:[]}))}function je(e,t){if(!w(t))throw Error(`Invalid input to extend: expected a plain object`);let n=e._zod.def.checks;if(n&&n.length>0){let n=e._zod.def.shape;for(let e in t)if(Object.getOwnPropertyDescriptor(n,e)!==void 0)throw Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}return E(e,S(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return x(this,`shape`,n),n}}))}function Me(e,t){if(!w(t))throw Error(`Invalid input to safeExtend: expected a plain object`);return E(e,S(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return x(this,`shape`,n),n}}))}function Ne(e,t){if(e._zod.def.checks?.length)throw Error(`.merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.`);return E(e,S(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t._zod.def.shape};return x(this,`shape`,n),n},get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]}))}function Pe(e,t,n){let r=t._zod.def.checks;if(r&&r.length>0)throw Error(`.partial() cannot be used on object schemas containing refinements`);return E(t,S(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t in n){if(!(t in r))throw Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t])}else for(let t in r)i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t];return x(this,`shape`,i),i},checks:[]}))}function Fe(e,t,n){return E(t,S(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t in n){if(!(t in i))throw Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=new e({type:`nonoptional`,innerType:r[t]}))}else for(let t in r)i[t]=new e({type:`nonoptional`,innerType:r[t]});return x(this,`shape`,i),i}}))}function O(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function Ie(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue===!1)return!0;return!1}function k(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function Le(e){return typeof e==`string`?e:e?.message}function A(e,t,n){let r=e.message?e.message:Le(e.inst?._zod.def?.error?.(e))??Le(t?.error?.(e))??Le(n.customError?.(e))??Le(n.localeError?.(e))??`Invalid input`,{inst:i,continue:a,input:o,...s}=e;return s.path??=[],s.message=r,t?.reportInput&&(s.input=o),s}function Re(e){return Array.isArray(e)?`array`:typeof e==`string`?`string`:`unknown`}function j(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}var ze=(e,t)=>{e.name=`$ZodError`,Object.defineProperty(e,`_zod`,{value:e._zod,enumerable:!1}),Object.defineProperty(e,`issues`,{value:t,enumerable:!1}),e.message=JSON.stringify(t,he,2),Object.defineProperty(e,`toString`,{value:()=>e.message,enumerable:!1})},Be=_(`$ZodError`,ze),Ve=_(`$ZodError`,ze,{Parent:Error});function He(e,t=e=>e.message){let n={},r=[];for(let i of e.issues)i.path.length>0?(n[i.path[0]]=n[i.path[0]]||[],n[i.path[0]].push(t(i))):r.push(t(i));return{formErrors:r,fieldErrors:n}}function Ue(e,t=e=>e.message){let n={_errors:[]},r=(e,i=[])=>{for(let a of e.issues)if(a.code===`invalid_union`&&a.errors.length)a.errors.map(e=>r({issues:e},[...i,...a.path]));else if(a.code===`invalid_key`)r({issues:a.issues},[...i,...a.path]);else if(a.code===`invalid_element`)r({issues:a.issues},[...i,...a.path]);else{let e=[...i,...a.path];if(e.length===0)n._errors.push(t(a));else{let r=n,i=0;for(;i<e.length;){let n=e[i];i===e.length-1?(r[n]=r[n]||{_errors:[]},r[n]._errors.push(t(a))):r[n]=r[n]||{_errors:[]},r=r[n],i++}}}};return r(e),n}var We=e=>(t,n,r,i)=>{let a=r?{...r,async:!1}:{async:!1},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise)throw new v;if(o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>A(e,a,y())));throw Ce(t,i?.callee),t}return o.value},Ge=We(Ve),Ke=e=>async(t,n,r,i)=>{let a=r?{...r,async:!0}:{async:!0},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise&&(o=await o),o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>A(e,a,y())));throw Ce(t,i?.callee),t}return o.value},qe=Ke(Ve),Je=e=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new v;return a.issues.length?{success:!1,error:new(e??Be)(a.issues.map(e=>A(e,i,y())))}:{success:!0,data:a.value}},Ye=Je(Ve),Xe=e=>async(t,n,r)=>{let i=r?{...r,async:!0}:{async:!0},a=t._zod.run({value:n,issues:[]},i);return a instanceof Promise&&(a=await a),a.issues.length?{success:!1,error:new e(a.issues.map(e=>A(e,i,y())))}:{success:!0,data:a.value}},Ze=Xe(Ve),Qe=e=>(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return We(e)(t,n,i)},$e=e=>(t,n,r)=>We(e)(t,n,r),et=e=>async(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return Ke(e)(t,n,i)},tt=e=>async(t,n,r)=>Ke(e)(t,n,r),nt=e=>(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return Je(e)(t,n,i)},rt=e=>(t,n,r)=>Je(e)(t,n,r),it=e=>async(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return Xe(e)(t,n,i)},at=e=>async(t,n,r)=>Xe(e)(t,n,r),ot=/^[cC][0-9a-z]{6,}$/,st=/^[0-9a-z]+$/,ct=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,lt=/^[0-9a-vA-V]{20}$/,ut=/^[A-Za-z0-9]{27}$/,dt=/^[a-zA-Z0-9_-]{21}$/,ft=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,pt=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,mt=e=>e?RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,ht=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,gt=`^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$`;function _t(){return new RegExp(gt,`u`)}var vt=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,yt=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,bt=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,xt=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,St=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Ct=/^[A-Za-z0-9_-]*$/,wt=/^https?$/,Tt=/^\+[1-9]\d{6,14}$/,Et=`(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))`,Dt=RegExp(`^${Et}$`);function Ot(e){let t=`(?:[01]\\d|2[0-3]):[0-5]\\d`;return typeof e.precision==`number`?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function kt(e){return RegExp(`^${Ot(e)}$`)}function At(e){let t=Ot({precision:e.precision}),n=[`Z`];e.local&&n.push(``),e.offset&&n.push(`([+-](?:[01]\\d|2[0-3]):[0-5]\\d)`);let r=`${t}(?:${n.join(`|`)})`;return RegExp(`^${Et}T(?:${r})$`)}var jt=e=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??``}}`:`[\\s\\S]*`;return RegExp(`^${t}$`)},Mt=/^-?\d+$/,Nt=/^-?\d+(?:\.\d+)?$/,Pt=/^(?:true|false)$/i,Ft=/^null$/i,It=/^undefined$/i,Lt=/^[^A-Z]*$/,Rt=/^[^a-z]*$/,M=_(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),zt={number:`number`,bigint:`bigint`,object:`date`},Bt=_(`$ZodCheckLessThan`,(e,t)=>{M.init(e,t);let n=zt[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.maximum:n.exclusiveMaximum)??1/0;t.value<r&&(t.inclusive?n.maximum=t.value:n.exclusiveMaximum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value<=t.value:r.value<t.value)||r.issues.push({origin:n,code:`too_big`,maximum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Vt=_(`$ZodCheckGreaterThan`,(e,t)=>{M.init(e,t);let n=zt[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.minimum:n.exclusiveMinimum)??-1/0;t.value>r&&(t.inclusive?n.minimum=t.value:n.exclusiveMinimum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:n,code:`too_small`,minimum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Ht=_(`$ZodCheckMultipleOf`,(e,t)=>{M.init(e,t),e._zod.onattach.push(e=>{var n;(n=e._zod.bag).multipleOf??(n.multipleOf=t.value)}),e._zod.check=n=>{if(typeof n.value!=typeof t.value)throw Error(`Cannot mix number and bigint in multiple_of check.`);(typeof n.value==`bigint`?n.value%t.value===BigInt(0):ye(n.value,t.value)===0)||n.issues.push({origin:typeof n.value,code:`not_multiple_of`,divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),Ut=_(`$ZodCheckNumberFormat`,(e,t)=>{M.init(e,t),t.format=t.format||`float64`;let n=t.format?.includes(`int`),r=n?`int`:`number`,[i,a]=Oe[t.format];e._zod.onattach.push(e=>{let r=e._zod.bag;r.format=t.format,r.minimum=i,r.maximum=a,n&&(r.pattern=Mt)}),e._zod.check=o=>{let s=o.value;if(n){if(!Number.isInteger(s)){o.issues.push({expected:r,format:t.format,code:`invalid_type`,continue:!1,input:s,inst:e});return}if(!Number.isSafeInteger(s)){s>0?o.issues.push({input:s,code:`too_big`,maximum:2**53-1,note:`Integers must be within the safe integer range.`,inst:e,origin:r,inclusive:!0,continue:!t.abort}):o.issues.push({input:s,code:`too_small`,minimum:-(2**53-1),note:`Integers must be within the safe integer range.`,inst:e,origin:r,inclusive:!0,continue:!t.abort});return}}s<i&&o.issues.push({origin:`number`,input:s,code:`too_small`,minimum:i,inclusive:!0,inst:e,continue:!t.abort}),s>a&&o.issues.push({origin:`number`,input:s,code:`too_big`,maximum:a,inclusive:!0,inst:e,continue:!t.abort})}}),Wt=_(`$ZodCheckMaxLength`,(e,t)=>{var n;M.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!_e(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.maximum??1/0;t.maximum<n&&(e._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{let r=n.value;if(r.length<=t.maximum)return;let i=Re(r);n.issues.push({origin:i,code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Gt=_(`$ZodCheckMinLength`,(e,t)=>{var n;M.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!_e(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.minimum??-1/0;t.minimum>n&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let r=n.value;if(r.length>=t.minimum)return;let i=Re(r);n.issues.push({origin:i,code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Kt=_(`$ZodCheckLengthEquals`,(e,t)=>{var n;M.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!_e(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag;n.minimum=t.length,n.maximum=t.length,n.length=t.length}),e._zod.check=n=>{let r=n.value,i=r.length;if(i===t.length)return;let a=Re(r),o=i>t.length;n.issues.push({origin:a,...o?{code:`too_big`,maximum:t.length}:{code:`too_small`,minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),qt=_(`$ZodCheckStringFormat`,(e,t)=>{var n,r;M.init(e,t),e._zod.onattach.push(e=>{let n=e._zod.bag;n.format=t.format,t.pattern&&(n.patterns??=new Set,n.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),Jt=_(`$ZodCheckRegex`,(e,t)=>{qt.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:`regex`,input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),Yt=_(`$ZodCheckLowerCase`,(e,t)=>{t.pattern??=Lt,qt.init(e,t)}),Xt=_(`$ZodCheckUpperCase`,(e,t)=>{t.pattern??=Rt,qt.init(e,t)}),Zt=_(`$ZodCheckIncludes`,(e,t)=>{M.init(e,t);let n=T(t.includes),r=new RegExp(typeof t.position==`number`?`^.{${t.position}}${n}`:n);t.pattern=r,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(r)}),e._zod.check=n=>{n.value.includes(t.includes,t.position)||n.issues.push({origin:`string`,code:`invalid_format`,format:`includes`,includes:t.includes,input:n.value,inst:e,continue:!t.abort})}}),Qt=_(`$ZodCheckStartsWith`,(e,t)=>{M.init(e,t);let n=RegExp(`^${T(t.prefix)}.*`);t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(n)}),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`starts_with`,prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),$t=_(`$ZodCheckEndsWith`,(e,t)=>{M.init(e,t);let n=RegExp(`.*${T(t.suffix)}$`);t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(n)}),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`ends_with`,suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}}),en=_(`$ZodCheckOverwrite`,(e,t)=>{M.init(e,t),e._zod.check=e=>{e.value=t.tx(e.value)}}),tn=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),--this.indent}write(e){if(typeof e==`function`){e(this,{execution:`sync`}),e(this,{execution:`async`});return}let t=e.split(`
|
|
2
|
-
`).filter(e=>e),n=Math.min(...t.map(e=>e.length-e.trimStart().length)),r=t.map(e=>e.slice(n)).map(e=>` `.repeat(this.indent*2)+e);for(let e of r)this.content.push(e)}compile(){let e=Function,t=this?.args,n=[...(this?.content??[``]).map(e=>` ${e}`)];return new e(...t,n.join(`
|
|
3
|
-
`))}},nn={major:4,minor:4,patch:3},N=_(`$ZodType`,(e,t)=>{var n;e??={},e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=nn;let r=[...e._zod.def.checks??[]];e._zod.traits.has(`$ZodCheck`)&&r.unshift(e);for(let t of r)for(let n of t._zod.onattach)n(e);if(r.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let t=(e,t,n)=>{let r=O(e),i;for(let a of t){if(a._zod.def.when){if(Ie(e)||!a._zod.def.when(e))continue}else if(r)continue;let t=e.issues.length,o=a._zod.check(e);if(o instanceof Promise&&n?.async===!1)throw new v;if(i||o instanceof Promise)i=(i??Promise.resolve()).then(async()=>{await o,e.issues.length!==t&&(r||=O(e,t))});else{if(e.issues.length===t)continue;r||=O(e,t)}}return i?i.then(()=>e):e},n=(n,i,a)=>{if(O(n))return n.aborted=!0,n;let o=t(i,r,a);if(o instanceof Promise){if(a.async===!1)throw new v;return o.then(t=>e._zod.parse(t,a))}return e._zod.parse(o,a)};e._zod.run=(i,a)=>{if(a.skipChecks)return e._zod.parse(i,a);if(a.direction===`backward`){let t=e._zod.parse({value:i.value,issues:[]},{...a,skipChecks:!0});return t instanceof Promise?t.then(e=>n(e,i,a)):n(t,i,a)}let o=e._zod.parse(i,a);if(o instanceof Promise){if(a.async===!1)throw new v;return o.then(e=>t(e,r,a))}return t(o,r,a)}}b(e,`~standard`,()=>({validate:t=>{try{let n=Ye(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch{return Ze(e,t).then(e=>e.success?{value:e.data}:{issues:e.error?.issues})}},vendor:`zod`,version:1}))}),rn=_(`$ZodString`,(e,t)=>{N.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??jt(e._zod.bag),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value==`string`||n.issues.push({expected:`string`,code:`invalid_type`,input:n.value,inst:e}),n}}),P=_(`$ZodStringFormat`,(e,t)=>{qt.init(e,t),rn.init(e,t)}),an=_(`$ZodGUID`,(e,t)=>{t.pattern??=pt,P.init(e,t)}),on=_(`$ZodUUID`,(e,t)=>{if(t.version){let e={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(e===void 0)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??=mt(e)}else t.pattern??=mt();P.init(e,t)}),sn=_(`$ZodEmail`,(e,t)=>{t.pattern??=ht,P.init(e,t)}),cn=_(`$ZodURL`,(e,t)=>{P.init(e,t),e._zod.check=n=>{try{let r=n.value.trim();if(!t.normalize&&t.protocol?.source===wt.source&&!/^https?:\/\//i.test(r)){n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid URL format`,input:n.value,inst:e,continue:!t.abort});return}let i=new URL(r);t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(i.hostname)||n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid hostname`,pattern:t.hostname.source,input:n.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(i.protocol.endsWith(`:`)?i.protocol.slice(0,-1):i.protocol)||n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid protocol`,pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})),t.normalize?n.value=i.href:n.value=r;return}catch{n.issues.push({code:`invalid_format`,format:`url`,input:n.value,inst:e,continue:!t.abort})}}}),ln=_(`$ZodEmoji`,(e,t)=>{t.pattern??=_t(),P.init(e,t)}),un=_(`$ZodNanoID`,(e,t)=>{t.pattern??=dt,P.init(e,t)}),dn=_(`$ZodCUID`,(e,t)=>{t.pattern??=ot,P.init(e,t)}),fn=_(`$ZodCUID2`,(e,t)=>{t.pattern??=st,P.init(e,t)}),pn=_(`$ZodULID`,(e,t)=>{t.pattern??=ct,P.init(e,t)}),mn=_(`$ZodXID`,(e,t)=>{t.pattern??=lt,P.init(e,t)}),hn=_(`$ZodKSUID`,(e,t)=>{t.pattern??=ut,P.init(e,t)}),gn=_(`$ZodISODateTime`,(e,t)=>{t.pattern??=At(t),P.init(e,t)}),_n=_(`$ZodISODate`,(e,t)=>{t.pattern??=Dt,P.init(e,t)}),vn=_(`$ZodISOTime`,(e,t)=>{t.pattern??=kt(t),P.init(e,t)}),yn=_(`$ZodISODuration`,(e,t)=>{t.pattern??=ft,P.init(e,t)}),bn=_(`$ZodIPv4`,(e,t)=>{t.pattern??=vt,P.init(e,t),e._zod.bag.format=`ipv4`}),xn=_(`$ZodIPv6`,(e,t)=>{t.pattern??=yt,P.init(e,t),e._zod.bag.format=`ipv6`,e._zod.check=n=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:`invalid_format`,format:`ipv6`,input:n.value,inst:e,continue:!t.abort})}}}),Sn=_(`$ZodCIDRv4`,(e,t)=>{t.pattern??=bt,P.init(e,t)}),Cn=_(`$ZodCIDRv6`,(e,t)=>{t.pattern??=xt,P.init(e,t),e._zod.check=n=>{let r=n.value.split(`/`);try{if(r.length!==2)throw Error();let[e,t]=r;if(!t)throw Error();let n=Number(t);if(`${n}`!==t||n<0||n>128)throw Error();new URL(`http://[${e}]`)}catch{n.issues.push({code:`invalid_format`,format:`cidrv6`,input:n.value,inst:e,continue:!t.abort})}}});function wn(e){if(e===``)return!0;if(/\s/.test(e)||e.length%4!=0)return!1;try{return atob(e),!0}catch{return!1}}var Tn=_(`$ZodBase64`,(e,t)=>{t.pattern??=St,P.init(e,t),e._zod.bag.contentEncoding=`base64`,e._zod.check=n=>{wn(n.value)||n.issues.push({code:`invalid_format`,format:`base64`,input:n.value,inst:e,continue:!t.abort})}});function En(e){if(!Ct.test(e))return!1;let t=e.replace(/[-_]/g,e=>e===`-`?`+`:`/`);return wn(t.padEnd(Math.ceil(t.length/4)*4,`=`))}var Dn=_(`$ZodBase64URL`,(e,t)=>{t.pattern??=Ct,P.init(e,t),e._zod.bag.contentEncoding=`base64url`,e._zod.check=n=>{En(n.value)||n.issues.push({code:`invalid_format`,format:`base64url`,input:n.value,inst:e,continue:!t.abort})}}),On=_(`$ZodE164`,(e,t)=>{t.pattern??=Tt,P.init(e,t)});function kn(e,t=null){try{let n=e.split(`.`);if(n.length!==3)return!1;let[r]=n;if(!r)return!1;let i=JSON.parse(atob(r));return!(`typ`in i&&i?.typ!==`JWT`||!i.alg||t&&(!(`alg`in i)||i.alg!==t))}catch{return!1}}var An=_(`$ZodJWT`,(e,t)=>{P.init(e,t),e._zod.check=n=>{kn(n.value,t.alg)||n.issues.push({code:`invalid_format`,format:`jwt`,input:n.value,inst:e,continue:!t.abort})}}),jn=_(`$ZodNumber`,(e,t)=>{N.init(e,t),e._zod.pattern=e._zod.bag.pattern??Nt,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch{}let i=n.value;if(typeof i==`number`&&!Number.isNaN(i)&&Number.isFinite(i))return n;let a=typeof i==`number`?Number.isNaN(i)?`NaN`:Number.isFinite(i)?void 0:`Infinity`:void 0;return n.issues.push({expected:`number`,code:`invalid_type`,input:i,inst:e,...a?{received:a}:{}}),n}}),Mn=_(`$ZodNumberFormat`,(e,t)=>{Ut.init(e,t),jn.init(e,t)}),Nn=_(`$ZodBoolean`,(e,t)=>{N.init(e,t),e._zod.pattern=Pt,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=!!n.value}catch{}let i=n.value;return typeof i==`boolean`||n.issues.push({expected:`boolean`,code:`invalid_type`,input:i,inst:e}),n}}),Pn=_(`$ZodUndefined`,(e,t)=>{N.init(e,t),e._zod.pattern=It,e._zod.values=new Set([void 0]),e._zod.parse=(t,n)=>{let r=t.value;return r===void 0||t.issues.push({expected:`undefined`,code:`invalid_type`,input:r,inst:e}),t}}),Fn=_(`$ZodNull`,(e,t)=>{N.init(e,t),e._zod.pattern=Ft,e._zod.values=new Set([null]),e._zod.parse=(t,n)=>{let r=t.value;return r===null||t.issues.push({expected:`null`,code:`invalid_type`,input:r,inst:e}),t}}),In=_(`$ZodAny`,(e,t)=>{N.init(e,t),e._zod.parse=e=>e}),Ln=_(`$ZodUnknown`,(e,t)=>{N.init(e,t),e._zod.parse=e=>e}),Rn=_(`$ZodNever`,(e,t)=>{N.init(e,t),e._zod.parse=(t,n)=>(t.issues.push({expected:`never`,code:`invalid_type`,input:t.value,inst:e}),t)}),zn=_(`$ZodDate`,(e,t)=>{N.init(e,t),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=new Date(n.value)}catch{}let i=n.value,a=i instanceof Date;return a&&!Number.isNaN(i.getTime())||n.issues.push({expected:`date`,code:`invalid_type`,input:i,...a?{received:`Invalid Date`}:{},inst:e}),n}});function Bn(e,t,n){e.issues.length&&t.issues.push(...k(n,e.issues)),t.value[n]=e.value}var Vn=_(`$ZodArray`,(e,t)=>{N.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Array.isArray(i))return n.issues.push({expected:`array`,code:`invalid_type`,input:i,inst:e}),n;n.value=Array(i.length);let a=[];for(let e=0;e<i.length;e++){let o=i[e],s=t.element._zod.run({value:o,issues:[]},r);s instanceof Promise?a.push(s.then(t=>Bn(t,n,e))):Bn(s,n,e)}return a.length?Promise.all(a).then(()=>n):n}});function Hn(e,t,n,r,i,a){let o=n in r;if(e.issues.length){if(i&&a&&!o)return;t.issues.push(...k(n,e.issues))}if(!o&&!i){e.issues.length||t.issues.push({code:`invalid_type`,expected:`nonoptional`,input:void 0,path:[n]});return}e.value===void 0?o&&(t.value[n]=void 0):t.value[n]=e.value}function Un(e){let t=Object.keys(e.shape);for(let n of t)if(!e.shape?.[n]?._zod?.traits?.has(`$ZodType`))throw Error(`Invalid element at key "${n}": expected a Zod schema`);let n=De(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function Wn(e,t,n,r,i,a){let o=[],s=i.keySet,c=i.catchall._zod,l=c.def.type,u=c.optin===`optional`,d=c.optout===`optional`;for(let i in t){if(i===`__proto__`||s.has(i))continue;if(l===`never`){o.push(i);continue}let a=c.run({value:t[i],issues:[]},r);a instanceof Promise?e.push(a.then(e=>Hn(e,n,i,t,u,d))):Hn(a,n,i,t,u,d)}return o.length&&n.issues.push({code:`unrecognized_keys`,keys:o,input:t,inst:a}),e.length?Promise.all(e).then(()=>n):n}var Gn=_(`$ZodObject`,(e,t)=>{if(N.init(e,t),!Object.getOwnPropertyDescriptor(t,`shape`)?.get){let e=t.shape;Object.defineProperty(t,`shape`,{get:()=>{let n={...e};return Object.defineProperty(t,`shape`,{value:n}),n}})}let n=ge(()=>Un(t));b(e._zod,`propValues`,()=>{let e=t.shape,n={};for(let t in e){let r=e[t]._zod;if(r.values){n[t]??(n[t]=new Set);for(let e of r.values)n[t].add(e)}}return n});let r=C,i=t.catchall,a;e._zod.parse=(t,o)=>{a??=n.value;let s=t.value;if(!r(s))return t.issues.push({expected:`object`,code:`invalid_type`,input:s,inst:e}),t;t.value={};let c=[],l=a.shape;for(let e of a.keys){let n=l[e],r=n._zod.optin===`optional`,i=n._zod.optout===`optional`,a=n._zod.run({value:s[e],issues:[]},o);a instanceof Promise?c.push(a.then(n=>Hn(n,t,e,s,r,i))):Hn(a,t,e,s,r,i)}return i?Wn(c,s,t,o,n.value,e):c.length?Promise.all(c).then(()=>t):t}}),Kn=_(`$ZodObjectJIT`,(e,t)=>{Gn.init(e,t);let n=e._zod.parse,r=ge(()=>Un(t)),i=e=>{let t=new tn([`shape`,`payload`,`ctx`]),n=r.value,i=e=>{let t=xe(e);return`shape[${t}]._zod.run({ value: input[${t}], issues: [] }, ctx)`};t.write(`const input = payload.value;`);let a=Object.create(null),o=0;for(let e of n.keys)a[e]=`key_${o++}`;t.write(`const newResult = {};`);for(let r of n.keys){let n=a[r],o=xe(r),s=e[r],c=s?._zod?.optin===`optional`,l=s?._zod?.optout===`optional`;t.write(`const ${n} = ${i(r)};`),c&&l?t.write(`
|
|
4
|
-
if (${n}.issues.length) {
|
|
5
|
-
if (${o} in input) {
|
|
6
|
-
payload.issues = payload.issues.concat(${n}.issues.map(iss => ({
|
|
7
|
-
...iss,
|
|
8
|
-
path: iss.path ? [${o}, ...iss.path] : [${o}]
|
|
9
|
-
})));
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
if (${n}.value === undefined) {
|
|
14
|
-
if (${o} in input) {
|
|
15
|
-
newResult[${o}] = undefined;
|
|
16
|
-
}
|
|
17
|
-
} else {
|
|
18
|
-
newResult[${o}] = ${n}.value;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
`):c?t.write(`
|
|
22
|
-
if (${n}.issues.length) {
|
|
23
|
-
payload.issues = payload.issues.concat(${n}.issues.map(iss => ({
|
|
24
|
-
...iss,
|
|
25
|
-
path: iss.path ? [${o}, ...iss.path] : [${o}]
|
|
26
|
-
})));
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
if (${n}.value === undefined) {
|
|
30
|
-
if (${o} in input) {
|
|
31
|
-
newResult[${o}] = undefined;
|
|
32
|
-
}
|
|
33
|
-
} else {
|
|
34
|
-
newResult[${o}] = ${n}.value;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
`):t.write(`
|
|
38
|
-
const ${n}_present = ${o} in input;
|
|
39
|
-
if (${n}.issues.length) {
|
|
40
|
-
payload.issues = payload.issues.concat(${n}.issues.map(iss => ({
|
|
41
|
-
...iss,
|
|
42
|
-
path: iss.path ? [${o}, ...iss.path] : [${o}]
|
|
43
|
-
})));
|
|
44
|
-
}
|
|
45
|
-
if (!${n}_present && !${n}.issues.length) {
|
|
46
|
-
payload.issues.push({
|
|
47
|
-
code: "invalid_type",
|
|
48
|
-
expected: "nonoptional",
|
|
49
|
-
input: undefined,
|
|
50
|
-
path: [${o}]
|
|
51
|
-
});
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
if (${n}_present) {
|
|
55
|
-
if (${n}.value === undefined) {
|
|
56
|
-
newResult[${o}] = undefined;
|
|
57
|
-
} else {
|
|
58
|
-
newResult[${o}] = ${n}.value;
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
`)}t.write(`payload.value = newResult;`),t.write(`return payload;`);let s=t.compile();return(t,n)=>s(e,t,n)},a,o=C,s=!pe.jitless,c=s&&we.value,l=t.catchall,u;e._zod.parse=(d,f)=>{u??=r.value;let p=d.value;return o(p)?s&&c&&f?.async===!1&&f.jitless!==!0?(a||=i(t.shape),d=a(d,f),l?Wn([],p,d,f,u,e):d):n(d,f):(d.issues.push({expected:`object`,code:`invalid_type`,input:p,inst:e}),d)}});function qn(e,t,n,r){for(let n of e)if(n.issues.length===0)return t.value=n.value,t;let i=e.filter(e=>!O(e));return i.length===1?(t.value=i[0].value,i[0]):(t.issues.push({code:`invalid_union`,input:t.value,inst:n,errors:e.map(e=>e.issues.map(e=>A(e,r,y())))}),t)}var Jn=_(`$ZodUnion`,(e,t)=>{N.init(e,t),b(e._zod,`optin`,()=>t.options.some(e=>e._zod.optin===`optional`)?`optional`:void 0),b(e._zod,`optout`,()=>t.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),b(e._zod,`values`,()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),b(e._zod,`pattern`,()=>{if(t.options.every(e=>e._zod.pattern)){let e=t.options.map(e=>e._zod.pattern);return RegExp(`^(${e.map(e=>ve(e.source)).join(`|`)})$`)}});let n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(r,i)=>{if(n)return n(r,i);let a=!1,o=[];for(let e of t.options){let t=e._zod.run({value:r.value,issues:[]},i);if(t instanceof Promise)o.push(t),a=!0;else{if(t.issues.length===0)return t;o.push(t)}}return a?Promise.all(o).then(t=>qn(t,r,e,i)):qn(o,r,e,i)}}),Yn=_(`$ZodDiscriminatedUnion`,(e,t)=>{t.inclusive=!1,Jn.init(e,t);let n=e._zod.parse;b(e._zod,`propValues`,()=>{let e={};for(let n of t.options){let r=n._zod.propValues;if(!r||Object.keys(r).length===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(n)}"`);for(let[t,n]of Object.entries(r)){e[t]||(e[t]=new Set);for(let r of n)e[t].add(r)}}return e});let r=ge(()=>{let e=t.options,n=new Map;for(let r of e){let e=r._zod.propValues?.[t.discriminator];if(!e||e.size===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(r)}"`);for(let t of e){if(n.has(t))throw Error(`Duplicate discriminator value "${String(t)}"`);n.set(t,r)}}return n});e._zod.parse=(i,a)=>{let o=i.value;if(!C(o))return i.issues.push({code:`invalid_type`,expected:`object`,input:o,inst:e}),i;let s=r.value.get(o?.[t.discriminator]);return s?s._zod.run(i,a):t.unionFallback||a.direction===`backward`?n(i,a):(i.issues.push({code:`invalid_union`,errors:[],note:`No matching discriminator`,discriminator:t.discriminator,options:Array.from(r.value.keys()),input:o,path:[t.discriminator],inst:e}),i)}}),Xn=_(`$ZodIntersection`,(e,t)=>{N.init(e,t),e._zod.parse=(e,n)=>{let r=e.value,i=t.left._zod.run({value:r,issues:[]},n),a=t.right._zod.run({value:r,issues:[]},n);return i instanceof Promise||a instanceof Promise?Promise.all([i,a]).then(([t,n])=>Qn(e,t,n)):Qn(e,i,a)}});function Zn(e,t){if(e===t||e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(w(e)&&w(t)){let n=Object.keys(t),r=Object.keys(e).filter(e=>n.indexOf(e)!==-1),i={...e,...t};for(let n of r){let r=Zn(e[n],t[n]);if(!r.valid)return{valid:!1,mergeErrorPath:[n,...r.mergeErrorPath]};i[n]=r.data}return{valid:!0,data:i}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r],o=Zn(i,a);if(!o.valid)return{valid:!1,mergeErrorPath:[r,...o.mergeErrorPath]};n.push(o.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function Qn(e,t,n){let r=new Map,i;for(let n of t.issues)if(n.code===`unrecognized_keys`){i??=n;for(let e of n.keys)r.has(e)||r.set(e,{}),r.get(e).l=!0}else e.issues.push(n);for(let t of n.issues)if(t.code===`unrecognized_keys`)for(let e of t.keys)r.has(e)||r.set(e,{}),r.get(e).r=!0;else e.issues.push(t);let a=[...r].filter(([,e])=>e.l&&e.r).map(([e])=>e);if(a.length&&i&&e.issues.push({...i,keys:a}),O(e))return e;let o=Zn(t.value,n.value);if(!o.valid)throw Error(`Unmergable intersection. Error path: ${JSON.stringify(o.mergeErrorPath)}`);return e.value=o.data,e}var $n=_(`$ZodRecord`,(e,t)=>{N.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!w(i))return n.issues.push({expected:`record`,code:`invalid_type`,input:i,inst:e}),n;let a=[],o=t.keyType._zod.values;if(o){n.value={};let s=new Set;for(let c of o)if(typeof c==`string`||typeof c==`number`||typeof c==`symbol`){s.add(typeof c==`number`?c.toString():c);let o=t.keyType._zod.run({value:c,issues:[]},r);if(o instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(o.issues.length){n.issues.push({code:`invalid_key`,origin:`record`,issues:o.issues.map(e=>A(e,r,y())),input:c,path:[c],inst:e});continue}let l=o.value,u=t.valueType._zod.run({value:i[c],issues:[]},r);u instanceof Promise?a.push(u.then(e=>{e.issues.length&&n.issues.push(...k(c,e.issues)),n.value[l]=e.value})):(u.issues.length&&n.issues.push(...k(c,u.issues)),n.value[l]=u.value)}let c;for(let e in i)s.has(e)||(c??=[],c.push(e));c&&c.length>0&&n.issues.push({code:`unrecognized_keys`,input:i,inst:e,keys:c})}else{n.value={};for(let o of Reflect.ownKeys(i)){if(o===`__proto__`||!Object.prototype.propertyIsEnumerable.call(i,o))continue;let s=t.keyType._zod.run({value:o,issues:[]},r);if(s instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(typeof o==`string`&&Nt.test(o)&&s.issues.length){let e=t.keyType._zod.run({value:Number(o),issues:[]},r);if(e instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);e.issues.length===0&&(s=e)}if(s.issues.length){t.mode===`loose`?n.value[o]=i[o]:n.issues.push({code:`invalid_key`,origin:`record`,issues:s.issues.map(e=>A(e,r,y())),input:o,path:[o],inst:e});continue}let c=t.valueType._zod.run({value:i[o],issues:[]},r);c instanceof Promise?a.push(c.then(e=>{e.issues.length&&n.issues.push(...k(o,e.issues)),n.value[s.value]=e.value})):(c.issues.length&&n.issues.push(...k(o,c.issues)),n.value[s.value]=c.value)}}return a.length?Promise.all(a).then(()=>n):n}}),er=_(`$ZodEnum`,(e,t)=>{N.init(e,t);let n=me(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=RegExp(`^(${n.filter(e=>Ee.has(typeof e)).map(e=>typeof e==`string`?T(e):e.toString()).join(`|`)})$`),e._zod.parse=(t,i)=>{let a=t.value;return r.has(a)||t.issues.push({code:`invalid_value`,values:n,input:a,inst:e}),t}}),tr=_(`$ZodLiteral`,(e,t)=>{if(N.init(e,t),t.values.length===0)throw Error(`Cannot create literal schema with no valid values`);let n=new Set(t.values);e._zod.values=n,e._zod.pattern=RegExp(`^(${t.values.map(e=>typeof e==`string`?T(e):e?T(e.toString()):String(e)).join(`|`)})$`),e._zod.parse=(r,i)=>{let a=r.value;return n.has(a)||r.issues.push({code:`invalid_value`,values:t.values,input:a,inst:e}),r}}),nr=_(`$ZodTransform`,(e,t)=>{N.init(e,t),e._zod.optin=`optional`,e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new fe(e.constructor.name);let i=t.transform(n.value,n);if(r.async)return(i instanceof Promise?i:Promise.resolve(i)).then(e=>(n.value=e,n.fallback=!0,n));if(i instanceof Promise)throw new v;return n.value=i,n.fallback=!0,n}});function rr(e,t){return t===void 0&&(e.issues.length||e.fallback)?{issues:[],value:void 0}:e}var ir=_(`$ZodOptional`,(e,t)=>{N.init(e,t),e._zod.optin=`optional`,e._zod.optout=`optional`,b(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),b(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${ve(e.source)})?$`):void 0}),e._zod.parse=(e,n)=>{if(t.innerType._zod.optin===`optional`){let r=e.value,i=t.innerType._zod.run(e,n);return i instanceof Promise?i.then(e=>rr(e,r)):rr(i,r)}return e.value===void 0?e:t.innerType._zod.run(e,n)}}),ar=_(`$ZodExactOptional`,(e,t)=>{ir.init(e,t),b(e._zod,`values`,()=>t.innerType._zod.values),b(e._zod,`pattern`,()=>t.innerType._zod.pattern),e._zod.parse=(e,n)=>t.innerType._zod.run(e,n)}),or=_(`$ZodNullable`,(e,t)=>{N.init(e,t),b(e._zod,`optin`,()=>t.innerType._zod.optin),b(e._zod,`optout`,()=>t.innerType._zod.optout),b(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${ve(e.source)}|null)$`):void 0}),b(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(e,n)=>e.value===null?e:t.innerType._zod.run(e,n)}),sr=_(`$ZodDefault`,(e,t)=>{N.init(e,t),e._zod.optin=`optional`,b(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);if(e.value===void 0)return e.value=t.defaultValue,e;let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(e=>cr(e,t)):cr(r,t)}});function cr(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}var lr=_(`$ZodPrefault`,(e,t)=>{N.init(e,t),e._zod.optin=`optional`,b(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>(n.direction===`backward`||e.value===void 0&&(e.value=t.defaultValue),t.innerType._zod.run(e,n))}),ur=_(`$ZodNonOptional`,(e,t)=>{N.init(e,t),b(e._zod,`values`,()=>{let e=t.innerType._zod.values;return e?new Set([...e].filter(e=>e!==void 0)):void 0}),e._zod.parse=(n,r)=>{let i=t.innerType._zod.run(n,r);return i instanceof Promise?i.then(t=>dr(t,e)):dr(i,e)}});function dr(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:`invalid_type`,expected:`nonoptional`,input:e.value,inst:t}),e}var fr=_(`$ZodCatch`,(e,t)=>{N.init(e,t),e._zod.optin=`optional`,b(e._zod,`optout`,()=>t.innerType._zod.optout),b(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(r=>(e.value=r.value,r.issues.length&&(e.value=t.catchValue({...e,error:{issues:r.issues.map(e=>A(e,n,y()))},input:e.value}),e.issues=[],e.fallback=!0),e)):(e.value=r.value,r.issues.length&&(e.value=t.catchValue({...e,error:{issues:r.issues.map(e=>A(e,n,y()))},input:e.value}),e.issues=[],e.fallback=!0),e)}}),pr=_(`$ZodPipe`,(e,t)=>{N.init(e,t),b(e._zod,`values`,()=>t.in._zod.values),b(e._zod,`optin`,()=>t.in._zod.optin),b(e._zod,`optout`,()=>t.out._zod.optout),b(e._zod,`propValues`,()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{if(n.direction===`backward`){let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>mr(e,t.in,n)):mr(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>mr(e,t.out,n)):mr(r,t.out,n)}});function mr(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues,fallback:e.fallback},n)}var hr=_(`$ZodPreprocess`,(e,t)=>{pr.init(e,t)}),gr=_(`$ZodReadonly`,(e,t)=>{N.init(e,t),b(e._zod,`propValues`,()=>t.innerType._zod.propValues),b(e._zod,`values`,()=>t.innerType._zod.values),b(e._zod,`optin`,()=>t.innerType?._zod?.optin),b(e._zod,`optout`,()=>t.innerType?._zod?.optout),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(_r):_r(r)}});function _r(e){return e.value=Object.freeze(e.value),e}var vr=_(`$ZodCustom`,(e,t)=>{M.init(e,t),N.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{let r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then(t=>yr(t,n,r,e));yr(i,n,r,e)}});function yr(e,t,n,r){if(!e){let e={code:`custom`,input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(e.params=r._zod.def.params),t.issues.push(j(e))}}var br,xr=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let n=t[0];return this._map.set(e,n),n&&typeof n==`object`&&`id`in n&&this._idmap.set(n.id,e),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let t=this._map.get(e);return t&&typeof t==`object`&&`id`in t&&this._idmap.delete(t.id),this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let n={...this.get(t)??{}};delete n.id;let r={...n,...this._map.get(e)};return Object.keys(r).length?r:void 0}return this._map.get(e)}has(e){return this._map.has(e)}};function Sr(){return new xr}(br=globalThis).__zod_globalRegistry??(br.__zod_globalRegistry=Sr());var F=globalThis.__zod_globalRegistry;function Cr(e,t){return new e({type:`string`,...D(t)})}function wr(e,t){return new e({type:`string`,format:`email`,check:`string_format`,abort:!1,...D(t)})}function Tr(e,t){return new e({type:`string`,format:`guid`,check:`string_format`,abort:!1,...D(t)})}function Er(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,...D(t)})}function Dr(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v4`,...D(t)})}function Or(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v6`,...D(t)})}function kr(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v7`,...D(t)})}function Ar(e,t){return new e({type:`string`,format:`url`,check:`string_format`,abort:!1,...D(t)})}function jr(e,t){return new e({type:`string`,format:`emoji`,check:`string_format`,abort:!1,...D(t)})}function Mr(e,t){return new e({type:`string`,format:`nanoid`,check:`string_format`,abort:!1,...D(t)})}function Nr(e,t){return new e({type:`string`,format:`cuid`,check:`string_format`,abort:!1,...D(t)})}function Pr(e,t){return new e({type:`string`,format:`cuid2`,check:`string_format`,abort:!1,...D(t)})}function Fr(e,t){return new e({type:`string`,format:`ulid`,check:`string_format`,abort:!1,...D(t)})}function Ir(e,t){return new e({type:`string`,format:`xid`,check:`string_format`,abort:!1,...D(t)})}function Lr(e,t){return new e({type:`string`,format:`ksuid`,check:`string_format`,abort:!1,...D(t)})}function Rr(e,t){return new e({type:`string`,format:`ipv4`,check:`string_format`,abort:!1,...D(t)})}function zr(e,t){return new e({type:`string`,format:`ipv6`,check:`string_format`,abort:!1,...D(t)})}function Br(e,t){return new e({type:`string`,format:`cidrv4`,check:`string_format`,abort:!1,...D(t)})}function Vr(e,t){return new e({type:`string`,format:`cidrv6`,check:`string_format`,abort:!1,...D(t)})}function Hr(e,t){return new e({type:`string`,format:`base64`,check:`string_format`,abort:!1,...D(t)})}function Ur(e,t){return new e({type:`string`,format:`base64url`,check:`string_format`,abort:!1,...D(t)})}function Wr(e,t){return new e({type:`string`,format:`e164`,check:`string_format`,abort:!1,...D(t)})}function Gr(e,t){return new e({type:`string`,format:`jwt`,check:`string_format`,abort:!1,...D(t)})}function Kr(e,t){return new e({type:`string`,format:`datetime`,check:`string_format`,offset:!1,local:!1,precision:null,...D(t)})}function qr(e,t){return new e({type:`string`,format:`date`,check:`string_format`,...D(t)})}function Jr(e,t){return new e({type:`string`,format:`time`,check:`string_format`,precision:null,...D(t)})}function Yr(e,t){return new e({type:`string`,format:`duration`,check:`string_format`,...D(t)})}function Xr(e,t){return new e({type:`number`,checks:[],...D(t)})}function Zr(e,t){return new e({type:`number`,check:`number_format`,abort:!1,format:`safeint`,...D(t)})}function Qr(e,t){return new e({type:`boolean`,...D(t)})}function $r(e,t){return new e({type:`undefined`,...D(t)})}function ei(e,t){return new e({type:`null`,...D(t)})}function ti(e){return new e({type:`any`})}function ni(e){return new e({type:`unknown`})}function ri(e,t){return new e({type:`never`,...D(t)})}function ii(e,t){return new e({type:`date`,...D(t)})}function ai(e,t){return new Bt({check:`less_than`,...D(t),value:e,inclusive:!1})}function oi(e,t){return new Bt({check:`less_than`,...D(t),value:e,inclusive:!0})}function si(e,t){return new Vt({check:`greater_than`,...D(t),value:e,inclusive:!1})}function ci(e,t){return new Vt({check:`greater_than`,...D(t),value:e,inclusive:!0})}function li(e,t){return new Ht({check:`multiple_of`,...D(t),value:e})}function ui(e,t){return new Wt({check:`max_length`,...D(t),maximum:e})}function di(e,t){return new Gt({check:`min_length`,...D(t),minimum:e})}function fi(e,t){return new Kt({check:`length_equals`,...D(t),length:e})}function pi(e,t){return new Jt({check:`string_format`,format:`regex`,...D(t),pattern:e})}function mi(e){return new Yt({check:`string_format`,format:`lowercase`,...D(e)})}function hi(e){return new Xt({check:`string_format`,format:`uppercase`,...D(e)})}function gi(e,t){return new Zt({check:`string_format`,format:`includes`,...D(t),includes:e})}function _i(e,t){return new Qt({check:`string_format`,format:`starts_with`,...D(t),prefix:e})}function vi(e,t){return new $t({check:`string_format`,format:`ends_with`,...D(t),suffix:e})}function I(e){return new en({check:`overwrite`,tx:e})}function yi(e){return I(t=>t.normalize(e))}function bi(){return I(e=>e.trim())}function xi(){return I(e=>e.toLowerCase())}function Si(){return I(e=>e.toUpperCase())}function Ci(){return I(e=>Se(e))}function wi(e,t,n){return new e({type:`array`,element:t,...D(n)})}function Ti(e,t,n){return new e({type:`custom`,check:`custom`,fn:t,...D(n)})}function Ei(e,t){let n=Di(t=>(t.addIssue=e=>{if(typeof e==`string`)t.issues.push(j(e,t.value,n._zod.def));else{let r=e;r.fatal&&(r.continue=!1),r.code??=`custom`,r.input??=t.value,r.inst??=n,r.continue??=!n._zod.def.abort,t.issues.push(j(r))}},e(t.value,t)),t);return n}function Di(e,t){let n=new M({check:`custom`,...D(t)});return n._zod.check=e,n}function Oi(e){let t=e?.target??`draft-2020-12`;return t===`draft-4`&&(t=`draft-04`),t===`draft-7`&&(t=`draft-07`),{processors:e.processors??{},metadataRegistry:e?.metadata??F,target:t,unrepresentable:e?.unrepresentable??`throw`,override:e?.override??(()=>{}),io:e?.io??`output`,counter:0,seen:new Map,cycles:e?.cycles??`ref`,reused:e?.reused??`inline`,external:e?.external??void 0}}function L(e,t,n={path:[],schemaPath:[]}){var r;let i=e._zod.def,a=t.seen.get(e);if(a)return a.count++,n.schemaPath.includes(e)&&(a.cycle=n.path),a.schema;let o={schema:{},count:1,cycle:void 0,path:n.path};t.seen.set(e,o);let s=e._zod.toJSONSchema?.();if(s)o.schema=s;else{let r={...n,schemaPath:[...n.schemaPath,e],path:n.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,o.schema,r);else{let n=o.schema,a=t.processors[i.type];if(!a)throw Error(`[toJSONSchema]: Non-representable type encountered: ${i.type}`);a(e,t,n,r)}let a=e._zod.parent;a&&(o.ref||=a,L(a,t,r),t.seen.get(a).isParent=!0)}let c=t.metadataRegistry.get(e);return c&&Object.assign(o.schema,c),t.io===`input`&&R(e)&&(delete o.schema.examples,delete o.schema.default),t.io===`input`&&`_prefault`in o.schema&&((r=o.schema).default??(r.default=o.schema._prefault)),delete o.schema._prefault,t.seen.get(e).schema}function ki(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);let r=new Map;for(let t of e.seen.entries()){let n=e.metadataRegistry.get(t[0])?.id;if(n){let e=r.get(n);if(e&&e!==t[0])throw Error(`Duplicate schema id "${n}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);r.set(n,t[0])}}let i=t=>{let r=e.target===`draft-2020-12`?`$defs`:`definitions`;if(e.external){let n=e.external.registry.get(t[0])?.id,i=e.external.uri??(e=>e);if(n)return{ref:i(n)};let a=t[1].defId??t[1].schema.id??`schema${e.counter++}`;return t[1].defId=a,{defId:a,ref:`${i(`__shared`)}#/${r}/${a}`}}if(t[1]===n)return{ref:`#`};let i=`#/${r}/`,a=t[1].schema.id??`__schema${e.counter++}`;return{defId:a,ref:i+a}},a=e=>{if(e[1].schema.$ref)return;let t=e[1],{ref:n,defId:r}=i(e);t.def={...t.schema},r&&(t.defId=r);let a=t.schema;for(let e in a)delete a[e];a.$ref=n};if(e.cycles===`throw`)for(let t of e.seen.entries()){let e=t[1];if(e.cycle)throw Error(`Cycle detected: #/${e.cycle?.join(`/`)}/<root>
|
|
63
|
-
|
|
64
|
-
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let n of e.seen.entries()){let r=n[1];if(t===n[0]){a(n);continue}if(e.external){let r=e.external.registry.get(n[0])?.id;if(t!==n[0]&&r){a(n);continue}}if(e.metadataRegistry.get(n[0])?.id){a(n);continue}if(r.cycle){a(n);continue}if(r.count>1&&e.reused===`ref`){a(n);continue}}}function Ai(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);let r=t=>{let n=e.seen.get(t);if(n.ref===null)return;let i=n.def??n.schema,a={...i},o=n.ref;if(n.ref=null,o){r(o);let n=e.seen.get(o),s=n.schema;if(s.$ref&&(e.target===`draft-07`||e.target===`draft-04`||e.target===`openapi-3.0`)?(i.allOf=i.allOf??[],i.allOf.push(s)):Object.assign(i,s),Object.assign(i,a),t._zod.parent===o)for(let e in i)e===`$ref`||e===`allOf`||e in a||delete i[e];if(s.$ref&&n.def)for(let e in i)e===`$ref`||e===`allOf`||e in n.def&&JSON.stringify(i[e])===JSON.stringify(n.def[e])&&delete i[e]}let s=t._zod.parent;if(s&&s!==o){r(s);let t=e.seen.get(s);if(t?.schema.$ref&&(i.$ref=t.schema.$ref,t.def))for(let e in i)e===`$ref`||e===`allOf`||e in t.def&&JSON.stringify(i[e])===JSON.stringify(t.def[e])&&delete i[e]}e.override({zodSchema:t,jsonSchema:i,path:n.path??[]})};for(let t of[...e.seen.entries()].reverse())r(t[0]);let i={};if(e.target===`draft-2020-12`?i.$schema=`https://json-schema.org/draft/2020-12/schema`:e.target===`draft-07`?i.$schema=`http://json-schema.org/draft-07/schema#`:e.target===`draft-04`?i.$schema=`http://json-schema.org/draft-04/schema#`:e.target,e.external?.uri){let n=e.external.registry.get(t)?.id;if(!n)throw Error("Schema is missing an `id` property");i.$id=e.external.uri(n)}Object.assign(i,n.def??n.schema);let a=e.metadataRegistry.get(t)?.id;a!==void 0&&i.id===a&&delete i.id;let o=e.external?.defs??{};for(let t of e.seen.entries()){let e=t[1];e.def&&e.defId&&(e.def.id===e.defId&&delete e.def.id,o[e.defId]=e.def)}e.external||Object.keys(o).length>0&&(e.target===`draft-2020-12`?i.$defs=o:i.definitions=o);try{let n=JSON.parse(JSON.stringify(i));return Object.defineProperty(n,`~standard`,{value:{...t[`~standard`],jsonSchema:{input:Mi(t,`input`,e.processors),output:Mi(t,`output`,e.processors)}},enumerable:!1,writable:!1}),n}catch{throw Error(`Error converting schema to JSON.`)}}function R(e,t){let n=t??{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);let r=e._zod.def;if(r.type===`transform`)return!0;if(r.type===`array`)return R(r.element,n);if(r.type===`set`)return R(r.valueType,n);if(r.type===`lazy`)return R(r.getter(),n);if(r.type===`promise`||r.type===`optional`||r.type===`nonoptional`||r.type===`nullable`||r.type===`readonly`||r.type===`default`||r.type===`prefault`)return R(r.innerType,n);if(r.type===`intersection`)return R(r.left,n)||R(r.right,n);if(r.type===`record`||r.type===`map`)return R(r.keyType,n)||R(r.valueType,n);if(r.type===`pipe`)return e._zod.traits.has(`$ZodCodec`)?!0:R(r.in,n)||R(r.out,n);if(r.type===`object`){for(let e in r.shape)if(R(r.shape[e],n))return!0;return!1}if(r.type===`union`){for(let e of r.options)if(R(e,n))return!0;return!1}if(r.type===`tuple`){for(let e of r.items)if(R(e,n))return!0;return!!(r.rest&&R(r.rest,n))}return!1}var ji=(e,t={})=>n=>{let r=Oi({...n,processors:t});return L(e,r),ki(r,e),Ai(r,e)},Mi=(e,t,n={})=>r=>{let{libraryOptions:i,target:a}=r??{},o=Oi({...i??{},target:a,io:t,processors:n});return L(e,o),ki(o,e),Ai(o,e)},Ni={guid:`uuid`,url:`uri`,datetime:`date-time`,json_string:`json-string`,regex:``},Pi=(e,t,n,r)=>{let i=n;i.type=`string`;let{minimum:a,maximum:o,format:s,patterns:c,contentEncoding:l}=e._zod.bag;if(typeof a==`number`&&(i.minLength=a),typeof o==`number`&&(i.maxLength=o),s&&(i.format=Ni[s]??s,i.format===``&&delete i.format,s===`time`&&delete i.format),l&&(i.contentEncoding=l),c&&c.size>0){let e=[...c];e.length===1?i.pattern=e[0].source:e.length>1&&(i.allOf=[...e.map(e=>({...t.target===`draft-07`||t.target===`draft-04`||t.target===`openapi-3.0`?{type:`string`}:{},pattern:e.source}))])}},Fi=(e,t,n,r)=>{let i=n,{minimum:a,maximum:o,format:s,multipleOf:c,exclusiveMaximum:l,exclusiveMinimum:u}=e._zod.bag;typeof s==`string`&&s.includes(`int`)?i.type=`integer`:i.type=`number`;let d=typeof u==`number`&&u>=(a??-1/0),f=typeof l==`number`&&l<=(o??1/0),p=t.target===`draft-04`||t.target===`openapi-3.0`;d?p?(i.minimum=u,i.exclusiveMinimum=!0):i.exclusiveMinimum=u:typeof a==`number`&&(i.minimum=a),f?p?(i.maximum=l,i.exclusiveMaximum=!0):i.exclusiveMaximum=l:typeof o==`number`&&(i.maximum=o),typeof c==`number`&&(i.multipleOf=c)},Ii=(e,t,n,r)=>{n.type=`boolean`},Li=(e,t,n,r)=>{t.target===`openapi-3.0`?(n.type=`string`,n.nullable=!0,n.enum=[null]):n.type=`null`},Ri=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Undefined cannot be represented in JSON Schema`)},zi=(e,t,n,r)=>{n.not={}},Bi=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Date cannot be represented in JSON Schema`)},Vi=(e,t,n,r)=>{let i=e._zod.def,a=me(i.entries);a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),n.enum=a},Hi=(e,t,n,r)=>{let i=e._zod.def,a=[];for(let e of i.values)if(e===void 0){if(t.unrepresentable===`throw`)throw Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof e==`bigint`){if(t.unrepresentable===`throw`)throw Error(`BigInt literals cannot be represented in JSON Schema`);a.push(Number(e))}else a.push(e);if(a.length!==0)if(a.length===1){let e=a[0];n.type=e===null?`null`:typeof e,t.target===`draft-04`||t.target===`openapi-3.0`?n.enum=[e]:n.const=e}else a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),a.every(e=>typeof e==`boolean`)&&(n.type=`boolean`),a.every(e=>e===null)&&(n.type=`null`),n.enum=a},Ui=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Custom types cannot be represented in JSON Schema`)},Wi=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Transforms cannot be represented in JSON Schema`)},Gi=(e,t,n,r)=>{let i=n,a=e._zod.def,{minimum:o,maximum:s}=e._zod.bag;typeof o==`number`&&(i.minItems=o),typeof s==`number`&&(i.maxItems=s),i.type=`array`,i.items=L(a.element,t,{...r,path:[...r.path,`items`]})},Ki=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`object`,i.properties={};let o=a.shape;for(let e in o)i.properties[e]=L(o[e],t,{...r,path:[...r.path,`properties`,e]});let s=new Set(Object.keys(o)),c=new Set([...s].filter(e=>{let n=a.shape[e]._zod;return t.io===`input`?n.optin===void 0:n.optout===void 0}));c.size>0&&(i.required=Array.from(c)),a.catchall?._zod.def.type===`never`?i.additionalProperties=!1:a.catchall?a.catchall&&(i.additionalProperties=L(a.catchall,t,{...r,path:[...r.path,`additionalProperties`]})):t.io===`output`&&(i.additionalProperties=!1)},qi=(e,t,n,r)=>{let i=e._zod.def,a=i.inclusive===!1,o=i.options.map((e,n)=>L(e,t,{...r,path:[...r.path,a?`oneOf`:`anyOf`,n]}));a?n.oneOf=o:n.anyOf=o},Ji=(e,t,n,r)=>{let i=e._zod.def,a=L(i.left,t,{...r,path:[...r.path,`allOf`,0]}),o=L(i.right,t,{...r,path:[...r.path,`allOf`,1]}),s=e=>`allOf`in e&&Object.keys(e).length===1;n.allOf=[...s(a)?a.allOf:[a],...s(o)?o.allOf:[o]]},Yi=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`object`;let o=a.keyType,s=o._zod.bag?.patterns;if(a.mode===`loose`&&s&&s.size>0){let e=L(a.valueType,t,{...r,path:[...r.path,`patternProperties`,`*`]});i.patternProperties={};for(let t of s)i.patternProperties[t.source]=e}else (t.target===`draft-07`||t.target===`draft-2020-12`)&&(i.propertyNames=L(a.keyType,t,{...r,path:[...r.path,`propertyNames`]})),i.additionalProperties=L(a.valueType,t,{...r,path:[...r.path,`additionalProperties`]});let c=o._zod.values;if(c){let e=[...c].filter(e=>typeof e==`string`||typeof e==`number`);e.length>0&&(i.required=e)}},Xi=(e,t,n,r)=>{let i=e._zod.def,a=L(i.innerType,t,r),o=t.seen.get(e);t.target===`openapi-3.0`?(o.ref=i.innerType,n.nullable=!0):n.anyOf=[a,{type:`null`}]},Zi=(e,t,n,r)=>{let i=e._zod.def;L(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},Qi=(e,t,n,r)=>{let i=e._zod.def;L(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.default=JSON.parse(JSON.stringify(i.defaultValue))},$i=(e,t,n,r)=>{let i=e._zod.def;L(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,t.io===`input`&&(n._prefault=JSON.parse(JSON.stringify(i.defaultValue)))},ea=(e,t,n,r)=>{let i=e._zod.def;L(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType;let o;try{o=i.catchValue(void 0)}catch{throw Error(`Dynamic catch values are not supported in JSON Schema`)}n.default=o},ta=(e,t,n,r)=>{let i=e._zod.def,a=i.in._zod.traits.has(`$ZodTransform`),o=t.io===`input`?a?i.out:i.in:i.out;L(o,t,r);let s=t.seen.get(e);s.ref=o},na=(e,t,n,r)=>{let i=e._zod.def;L(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.readOnly=!0},ra=(e,t,n,r)=>{let i=e._zod.def;L(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},ia=_(`ZodISODateTime`,(e,t)=>{gn.init(e,t),U.init(e,t)});function z(e){return Kr(ia,e)}var aa=_(`ZodISODate`,(e,t)=>{_n.init(e,t),U.init(e,t)});function oa(e){return qr(aa,e)}var sa=_(`ZodISOTime`,(e,t)=>{vn.init(e,t),U.init(e,t)});function ca(e){return Jr(sa,e)}var la=_(`ZodISODuration`,(e,t)=>{yn.init(e,t),U.init(e,t)});function ua(e){return Yr(la,e)}var B=_(`ZodError`,(e,t)=>{Be.init(e,t),e.name=`ZodError`,Object.defineProperties(e,{format:{value:t=>Ue(e,t)},flatten:{value:t=>He(e,t)},addIssue:{value:t=>{e.issues.push(t),e.message=JSON.stringify(e.issues,he,2)}},addIssues:{value:t=>{e.issues.push(...t),e.message=JSON.stringify(e.issues,he,2)}},isEmpty:{get(){return e.issues.length===0}}})},{Parent:Error}),da=We(B),fa=Ke(B),pa=Je(B),ma=Xe(B),ha=Qe(B),ga=$e(B),_a=et(B),va=tt(B),ya=nt(B),ba=rt(B),xa=it(B),Sa=at(B),Ca=new WeakMap;function wa(e,t,n){let r=Object.getPrototypeOf(e),i=Ca.get(r);if(i||(i=new Set,Ca.set(r,i)),!i.has(t)){i.add(t);for(let e in n){let t=n[e];Object.defineProperty(r,e,{configurable:!0,enumerable:!1,get(){let n=t.bind(this);return Object.defineProperty(this,e,{configurable:!0,writable:!0,enumerable:!0,value:n}),n},set(t){Object.defineProperty(this,e,{configurable:!0,writable:!0,enumerable:!0,value:t})}})}}}var V=_(`ZodType`,(e,t)=>(N.init(e,t),Object.assign(e[`~standard`],{jsonSchema:{input:Mi(e,`input`),output:Mi(e,`output`)}}),e.toJSONSchema=ji(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,`_def`,{value:t}),e.parse=(t,n)=>da(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>pa(e,t,n),e.parseAsync=async(t,n)=>fa(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>ma(e,t,n),e.spa=e.safeParseAsync,e.encode=(t,n)=>ha(e,t,n),e.decode=(t,n)=>ga(e,t,n),e.encodeAsync=async(t,n)=>_a(e,t,n),e.decodeAsync=async(t,n)=>va(e,t,n),e.safeEncode=(t,n)=>ya(e,t,n),e.safeDecode=(t,n)=>ba(e,t,n),e.safeEncodeAsync=async(t,n)=>xa(e,t,n),e.safeDecodeAsync=async(t,n)=>Sa(e,t,n),wa(e,`ZodType`,{check(...e){let t=this.def;return this.clone(S(t,{checks:[...t.checks??[],...e.map(e=>typeof e==`function`?{_zod:{check:e,def:{check:`custom`},onattach:[]}}:e)]}),{parent:!0})},with(...e){return this.check(...e)},clone(e,t){return E(this,e,t)},brand(){return this},register(e,t){return e.add(this,t),this},refine(e,t){return this.check(Ho(e,t))},superRefine(e,t){return this.check(Uo(e,t))},overwrite(e){return this.check(I(e))},optional(){return Co(this)},exactOptional(){return To(this)},nullable(){return Do(this)},nullish(){return Co(Do(this))},nonoptional(e){return No(this,e)},array(){return J(this)},or(e){return X([this,e])},and(e){return ho(this,e)},transform(e){return Lo(this,xo(e))},default(e){return ko(this,e)},prefault(e){return jo(this,e)},catch(e){return Fo(this,e)},pipe(e){return Lo(this,e)},readonly(){return Bo(this)},describe(e){let t=this.clone();return F.add(t,{description:e}),t},meta(...e){if(e.length===0)return F.get(this);let t=this.clone();return F.add(t,e[0]),t},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(e){return e(this)}}),Object.defineProperty(e,`description`,{get(){return F.get(e)?.description},configurable:!0}),e)),Ta=_(`_ZodString`,(e,t)=>{rn.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Pi(e,t,n,r);let n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,wa(e,`_ZodString`,{regex(...e){return this.check(pi(...e))},includes(...e){return this.check(gi(...e))},startsWith(...e){return this.check(_i(...e))},endsWith(...e){return this.check(vi(...e))},min(...e){return this.check(di(...e))},max(...e){return this.check(ui(...e))},length(...e){return this.check(fi(...e))},nonempty(...e){return this.check(di(1,...e))},lowercase(e){return this.check(mi(e))},uppercase(e){return this.check(hi(e))},trim(){return this.check(bi())},normalize(...e){return this.check(yi(...e))},toLowerCase(){return this.check(xi())},toUpperCase(){return this.check(Si())},slugify(){return this.check(Ci())}})}),Ea=_(`ZodString`,(e,t)=>{rn.init(e,t),Ta.init(e,t),e.email=t=>e.check(wr(Da,t)),e.url=t=>e.check(Ar(Aa,t)),e.jwt=t=>e.check(Gr(Ka,t)),e.emoji=t=>e.check(jr(Ma,t)),e.guid=t=>e.check(Tr(Oa,t)),e.uuid=t=>e.check(Er(ka,t)),e.uuidv4=t=>e.check(Dr(ka,t)),e.uuidv6=t=>e.check(Or(ka,t)),e.uuidv7=t=>e.check(kr(ka,t)),e.nanoid=t=>e.check(Mr(Na,t)),e.guid=t=>e.check(Tr(Oa,t)),e.cuid=t=>e.check(Nr(Pa,t)),e.cuid2=t=>e.check(Pr(Fa,t)),e.ulid=t=>e.check(Fr(Ia,t)),e.base64=t=>e.check(Hr(Ua,t)),e.base64url=t=>e.check(Ur(Wa,t)),e.xid=t=>e.check(Ir(La,t)),e.ksuid=t=>e.check(Lr(Ra,t)),e.ipv4=t=>e.check(Rr(za,t)),e.ipv6=t=>e.check(zr(Ba,t)),e.cidrv4=t=>e.check(Br(Va,t)),e.cidrv6=t=>e.check(Vr(Ha,t)),e.e164=t=>e.check(Wr(Ga,t)),e.datetime=t=>e.check(z(t)),e.date=t=>e.check(oa(t)),e.time=t=>e.check(ca(t)),e.duration=t=>e.check(ua(t))});function H(e){return Cr(Ea,e)}var U=_(`ZodStringFormat`,(e,t)=>{P.init(e,t),Ta.init(e,t)}),Da=_(`ZodEmail`,(e,t)=>{sn.init(e,t),U.init(e,t)}),Oa=_(`ZodGUID`,(e,t)=>{an.init(e,t),U.init(e,t)}),ka=_(`ZodUUID`,(e,t)=>{on.init(e,t),U.init(e,t)});function W(e){return Er(ka,e)}var Aa=_(`ZodURL`,(e,t)=>{cn.init(e,t),U.init(e,t)});function ja(e){return Ar(Aa,e)}var Ma=_(`ZodEmoji`,(e,t)=>{ln.init(e,t),U.init(e,t)}),Na=_(`ZodNanoID`,(e,t)=>{un.init(e,t),U.init(e,t)}),Pa=_(`ZodCUID`,(e,t)=>{dn.init(e,t),U.init(e,t)}),Fa=_(`ZodCUID2`,(e,t)=>{fn.init(e,t),U.init(e,t)}),Ia=_(`ZodULID`,(e,t)=>{pn.init(e,t),U.init(e,t)}),La=_(`ZodXID`,(e,t)=>{mn.init(e,t),U.init(e,t)}),Ra=_(`ZodKSUID`,(e,t)=>{hn.init(e,t),U.init(e,t)}),za=_(`ZodIPv4`,(e,t)=>{bn.init(e,t),U.init(e,t)}),Ba=_(`ZodIPv6`,(e,t)=>{xn.init(e,t),U.init(e,t)}),Va=_(`ZodCIDRv4`,(e,t)=>{Sn.init(e,t),U.init(e,t)}),Ha=_(`ZodCIDRv6`,(e,t)=>{Cn.init(e,t),U.init(e,t)}),Ua=_(`ZodBase64`,(e,t)=>{Tn.init(e,t),U.init(e,t)}),Wa=_(`ZodBase64URL`,(e,t)=>{Dn.init(e,t),U.init(e,t)}),Ga=_(`ZodE164`,(e,t)=>{On.init(e,t),U.init(e,t)}),Ka=_(`ZodJWT`,(e,t)=>{An.init(e,t),U.init(e,t)}),qa=_(`ZodNumber`,(e,t)=>{jn.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Fi(e,t,n,r),wa(e,`ZodNumber`,{gt(e,t){return this.check(si(e,t))},gte(e,t){return this.check(ci(e,t))},min(e,t){return this.check(ci(e,t))},lt(e,t){return this.check(ai(e,t))},lte(e,t){return this.check(oi(e,t))},max(e,t){return this.check(oi(e,t))},int(e){return this.check(Ya(e))},safe(e){return this.check(Ya(e))},positive(e){return this.check(si(0,e))},nonnegative(e){return this.check(ci(0,e))},negative(e){return this.check(ai(0,e))},nonpositive(e){return this.check(oi(0,e))},multipleOf(e,t){return this.check(li(e,t))},step(e,t){return this.check(li(e,t))},finite(){return this}});let n=e._zod.bag;e.minValue=Math.max(n.minimum??-1/0,n.exclusiveMinimum??-1/0)??null,e.maxValue=Math.min(n.maximum??1/0,n.exclusiveMaximum??1/0)??null,e.isInt=(n.format??``).includes(`int`)||Number.isSafeInteger(n.multipleOf??.5),e.isFinite=!0,e.format=n.format??null});function G(e){return Xr(qa,e)}var Ja=_(`ZodNumberFormat`,(e,t)=>{Mn.init(e,t),qa.init(e,t)});function Ya(e){return Zr(Ja,e)}var Xa=_(`ZodBoolean`,(e,t)=>{Nn.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ii(e,t,n,r)});function K(e){return Qr(Xa,e)}var Za=_(`ZodUndefined`,(e,t)=>{Pn.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ri(e,t,n,r)});function Qa(e){return $r(Za,e)}var $a=_(`ZodNull`,(e,t)=>{Fn.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Li(e,t,n,r)});function eo(e){return ei($a,e)}var to=_(`ZodAny`,(e,t)=>{In.init(e,t),V.init(e,t),e._zod.processJSONSchema=(e,t,n)=>void 0});function no(){return ti(to)}var ro=_(`ZodUnknown`,(e,t)=>{Ln.init(e,t),V.init(e,t),e._zod.processJSONSchema=(e,t,n)=>void 0});function q(){return ni(ro)}var io=_(`ZodNever`,(e,t)=>{Rn.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>zi(e,t,n,r)});function ao(e){return ri(io,e)}var oo=_(`ZodDate`,(e,t)=>{zn.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Bi(e,t,n,r),e.min=(t,n)=>e.check(ci(t,n)),e.max=(t,n)=>e.check(oi(t,n));let n=e._zod.bag;e.minDate=n.minimum?new Date(n.minimum):null,e.maxDate=n.maximum?new Date(n.maximum):null});function so(e){return ii(oo,e)}var co=_(`ZodArray`,(e,t)=>{Vn.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Gi(e,t,n,r),e.element=t.element,wa(e,`ZodArray`,{min(e,t){return this.check(di(e,t))},nonempty(e){return this.check(di(1,e))},max(e,t){return this.check(ui(e,t))},length(e,t){return this.check(fi(e,t))},unwrap(){return this.element}})});function J(e,t){return wi(co,e,t)}var lo=_(`ZodObject`,(e,t)=>{Kn.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ki(e,t,n,r),b(e,`shape`,()=>t.shape),wa(e,`ZodObject`,{keyof(){return Q(Object.keys(this._zod.def.shape))},catchall(e){return this.clone({...this._zod.def,catchall:e})},passthrough(){return this.clone({...this._zod.def,catchall:q()})},loose(){return this.clone({...this._zod.def,catchall:q()})},strict(){return this.clone({...this._zod.def,catchall:ao()})},strip(){return this.clone({...this._zod.def,catchall:void 0})},extend(e){return je(this,e)},safeExtend(e){return Me(this,e)},merge(e){return Ne(this,e)},pick(e){return ke(this,e)},omit(e){return Ae(this,e)},partial(...e){return Pe(So,this,e[0])},required(...e){return Fe(Mo,this,e[0])}})});function Y(e,t){return new lo({type:`object`,shape:e??{},...D(t)})}var uo=_(`ZodUnion`,(e,t)=>{Jn.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>qi(e,t,n,r),e.options=t.options});function X(e,t){return new uo({type:`union`,options:e,...D(t)})}var fo=_(`ZodDiscriminatedUnion`,(e,t)=>{uo.init(e,t),Yn.init(e,t)});function po(e,t,n){return new fo({type:`union`,options:t,discriminator:e,...D(n)})}var mo=_(`ZodIntersection`,(e,t)=>{Xn.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ji(e,t,n,r)});function ho(e,t){return new mo({type:`intersection`,left:e,right:t})}var go=_(`ZodRecord`,(e,t)=>{$n.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Yi(e,t,n,r),e.keyType=t.keyType,e.valueType=t.valueType});function Z(e,t,n){return!t||!t._zod?new go({type:`record`,keyType:H(),valueType:e,...D(t)}):new go({type:`record`,keyType:e,valueType:t,...D(n)})}var _o=_(`ZodEnum`,(e,t)=>{er.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Vi(e,t,n,r),e.enum=t.entries,e.options=Object.values(t.entries);let n=new Set(Object.keys(t.entries));e.extract=(e,r)=>{let i={};for(let r of e)if(n.has(r))i[r]=t.entries[r];else throw Error(`Key ${r} not found in enum`);return new _o({...t,checks:[],...D(r),entries:i})},e.exclude=(e,r)=>{let i={...t.entries};for(let t of e)if(n.has(t))delete i[t];else throw Error(`Key ${t} not found in enum`);return new _o({...t,checks:[],...D(r),entries:i})}});function Q(e,t){return new _o({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...D(t)})}var vo=_(`ZodLiteral`,(e,t)=>{tr.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Hi(e,t,n,r),e.values=new Set(t.values),Object.defineProperty(e,`value`,{get(){if(t.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function yo(e,t){return new vo({type:`literal`,values:Array.isArray(e)?e:[e],...D(t)})}var bo=_(`ZodTransform`,(e,t)=>{nr.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Wi(e,t,n,r),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new fe(e.constructor.name);n.addIssue=r=>{if(typeof r==`string`)n.issues.push(j(r,n.value,t));else{let t=r;t.fatal&&(t.continue=!1),t.code??=`custom`,t.input??=n.value,t.inst??=e,n.issues.push(j(t))}};let i=t.transform(n.value,n);return i instanceof Promise?i.then(e=>(n.value=e,n.fallback=!0,n)):(n.value=i,n.fallback=!0,n)}});function xo(e){return new bo({type:`transform`,transform:e})}var So=_(`ZodOptional`,(e,t)=>{ir.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ra(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Co(e){return new So({type:`optional`,innerType:e})}var wo=_(`ZodExactOptional`,(e,t)=>{ar.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ra(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function To(e){return new wo({type:`optional`,innerType:e})}var Eo=_(`ZodNullable`,(e,t)=>{or.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Xi(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Do(e){return new Eo({type:`nullable`,innerType:e})}var Oo=_(`ZodDefault`,(e,t)=>{sr.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Qi(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function ko(e,t){return new Oo({type:`default`,innerType:e,get defaultValue(){return typeof t==`function`?t():Te(t)}})}var Ao=_(`ZodPrefault`,(e,t)=>{lr.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>$i(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function jo(e,t){return new Ao({type:`prefault`,innerType:e,get defaultValue(){return typeof t==`function`?t():Te(t)}})}var Mo=_(`ZodNonOptional`,(e,t)=>{ur.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Zi(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function No(e,t){return new Mo({type:`nonoptional`,innerType:e,...D(t)})}var Po=_(`ZodCatch`,(e,t)=>{fr.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ea(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function Fo(e,t){return new Po({type:`catch`,innerType:e,catchValue:typeof t==`function`?t:()=>t})}var Io=_(`ZodPipe`,(e,t)=>{pr.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ta(e,t,n,r),e.in=t.in,e.out=t.out});function Lo(e,t){return new Io({type:`pipe`,in:e,out:t})}var Ro=_(`ZodPreprocess`,(e,t)=>{Io.init(e,t),hr.init(e,t)}),zo=_(`ZodReadonly`,(e,t)=>{gr.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>na(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Bo(e){return new zo({type:`readonly`,innerType:e})}var Vo=_(`ZodCustom`,(e,t)=>{vr.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ui(e,t,n,r)});function Ho(e,t={}){return Ti(Vo,e,t)}function Uo(e,t){return Ei(e,t)}function Wo(e,t){return new Ro({type:`pipe`,in:xo(e),out:t})}var Go=X([K(),Y({list:K().optional(),show:K().optional(),edit:K().optional(),filter:K().optional()})]),Ko=Y({list:H().optional(),show:H().optional(),edit:H().optional(),filter:H().optional()}),qo=Y({field:H(),equals:q().optional(),notEquals:q().optional(),in:J(q()).optional(),notIn:J(q()).optional(),isEmpty:K().optional(),defaultWhenEmpty:K().optional()}),Jo=Y({key:H(),label:H().optional(),type:Q([`string`,`number`,`boolean`,`textarea`,`select`,`autocomplete`]).optional(),description:H().optional(),placeholder:H().optional(),isRequired:K().optional(),availableValues:J(X([H(),Y({value:H(),label:H()})])).optional(),suggestionsResource:H().optional(),suggestionsField:H().optional()}),Yo=Y({label:H().optional(),description:H().optional(),type:H().optional(),isVisible:Go.optional(),isAccessible:X([K(),q()]).optional(),isSortable:K().optional(),isRequired:K().optional(),isDisabled:K().optional(),isSearchable:K().optional(),isArray:K().optional(),reference:H().optional(),availableValues:J(X([H(),Y({value:H(),label:H()})])).optional(),components:Ko.optional(),position:G().optional(),showWhen:qo.optional(),keyValueFields:J(Jo).optional(),custom:Z(H(),q()).optional()}),Xo=Y({name:H(),icon:H().optional()}),Zo=Y({isVisible:X([K(),q()]).optional(),isAccessible:X([K(),q()]).optional(),nesting:X([H(),Xo,J(X([H(),Xo]))]).optional(),guard:H().optional(),component:X([H(),eo()]).optional(),custom:Z(H(),q()).optional()}).passthrough(),Qo=Y({enabled:K().optional(),ttl:G().int().nonnegative().optional()}),$o=Y({strategy:Q([`ttl`,`tag-only`,`off`]).optional(),ttl:G().int().nonnegative().optional(),list:Qo.optional(),show:Qo.optional(),search:Qo.optional(),http:Qo.optional()}),es=X([yo(!1),$o]),ts=Y({name:H().optional(),icon:H().optional(),group:H().optional()}).or(eo()),ns=Y({resourceId:H(),foreignKey:H(),label:H().optional()});Y({id:H().optional(),name:H().optional(),titleProperty:H().optional(),navigation:ts.optional(),properties:Z(H(),Yo).optional(),actions:Z(H(),Zo).optional(),listProperties:J(H()).optional(),showProperties:J(H()).optional(),editProperties:J(H()).optional(),filterProperties:J(H()).optional(),sort:Y({sortBy:H(),direction:Q([`asc`,`desc`])}).optional(),relatedResources:J(ns).optional(),showRelatedResources:K().optional(),cache:es.optional()});function rs(){let e=Date.now(),t=globalThis.crypto.getRandomValues(new Uint8Array(10)),n=new Uint8Array(16);n[0]=e/1099511627776&255,n[1]=e/4294967296&255,n[2]=e>>>24&255,n[3]=e>>>16&255,n[4]=e>>>8&255,n[5]=e&255,n.set(t,6),n[6]=n[6]&15|112,n[8]=n[8]&63|128;let r=[];for(let e=0;e<16;e++)r.push(n[e].toString(16).padStart(2,`0`));let i=r.join(``);return`${i.slice(0,8)}-${i.slice(8,12)}-${i.slice(12,16)}-${i.slice(16,20)}-${i.slice(20)}`}var is=Q([`kpi`,`line`,`area`,`bar`]),as=Q([`count`,`sum`,`avg`,`min`,`max`]),os=Q([`day`,`week`,`month`,`year`,`all`]);Q([`7d`,`30d`,`90d`,`1y`,`all`,`custom`]);var ss=Q([`half`,`full`]),cs=po(`preset`,[Y({preset:Q([`7d`,`30d`,`90d`,`1y`,`all`])}),Y({preset:yo(`custom`),from:oa(),to:oa()})]),ls=Y({id:W(),title:H().max(120).default(``),resource:H().min(1),visualisation:is,dateField:H().min(1),step:os,metric:as,field:H().min(1).optional(),groupBy:H().min(1).optional(),topN:G().int().min(1).max(50).default(10),groupByLabelResource:H().min(1).optional(),width:ss.default(`half`),filters:Z(H(),H()).default({}),quickFilters:J(H()).default([]),timeRange:cs,groupId:W().optional(),order:G().int().default(0),createdAt:z(),updatedAt:z()}).refine(e=>e.metric===`count`||!!e.field,{message:`field is required when metric is not count`,path:[`field`]}).refine(e=>e.visualisation!==`kpi`||e.step===`all`,{message:`KPI charts must use step 'all'`,path:[`step`]}).refine(e=>e.visualisation===`kpi`||e.step!==`all`,{message:`non-KPI charts cannot use step 'all'`,path:[`step`]}),us=Y({id:W(),name:H().min(1).max(120),order:G().int().default(0),createdAt:z(),updatedAt:z()}),ds=Y({version:yo(1),charts:J(ls),groups:J(us).default([])}),fs={version:1,charts:[],groups:[]};Y({id:W().optional(),resourceId:H().min(1),action:H().min(1),recordId:H().optional(),recordIds:J(H()).optional(),recordTitle:H().optional(),userId:H().optional(),payload:Z(H(),q()).optional(),result:Z(H(),q()).optional(),at:G().int()});var ps=H().min(1).max(120);Y({id:W(),name:H().min(1).max(120),url:ja(),events:J(ps).min(1),resourceId:H().min(1).nullable().default(null),enabled:K().default(!0),secret:H().min(8).optional(),headers:Z(H(),H()).default({}),filters:Z(H(),H()).default({}),payloadFields:J(H().min(1)).default([]),createdAt:z(),updatedAt:z()});var ms=Q([`pending`,`success`,`failed`]);Y({id:W(),webhookId:W(),event:ps,payload:Z(H(),q()),status:ms,responseStatus:G().int().optional(),responseBody:H().optional(),error:H().optional(),attempt:G().int().min(1).default(1),createdAt:z(),deliveredAt:z().optional()}),Y({scope:Q([`global`,`user`,`resource`]),scopeId:H().nullable(),key:H().min(1).max(200),value:q(),updatedAt:z()});var hs=Q([`create`,`update`,`delete`]);Y({id:W(),resourceId:H().min(1),recordId:H().min(1),op:hs,userId:H().optional(),snapshot:Z(H(),q()),snapshotBefore:Z(H(),q()).optional(),createdAt:z()});var gs=Q([`pending`,`running`,`succeeded`,`failed`,`cancelled`]);Y({id:W(),kind:H().min(1).max(120),resourceId:H().optional(),recordId:H().optional(),userId:H().optional(),status:gs,input:Z(H(),q()).default({}),output:Z(H(),q()).optional(),error:H().optional(),progress:G().int().min(0).max(100).nullable().default(null),createdAt:z(),updatedAt:z(),startedAt:z().optional(),finishedAt:z().optional()}),Y({id:W(),taskId:W(),type:H().min(1).max(40),data:Z(H(),q()).default({}),createdAt:z()}),Y({key:H().min(1).max(400),value:q(),tags:J(H()).default([]),expiresAt:z().nullable(),createdAt:z(),updatedAt:z()});var _s=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),$=e=>typeof e!=`object`||!e?JSON.stringify(e):e instanceof Date?JSON.stringify(e.toISOString()):typeof e.toJSON==`function`?$(e.toJSON()):Array.isArray(e)?`[${e.map($).join(`,`)}]`:`{${Object.entries(e).sort(([e],[t])=>e.localeCompare(t)).map(([e,t])=>`${JSON.stringify(e)}:${$(t)}`).join(`,`)}}`,vs=(e,t)=>$(e)===$(t);function ys(e,t,n=new Set){let r=new Set([...Object.keys(e),...Object.keys(t)]),i=[];for(let a of[...r].sort((e,t)=>e.localeCompare(t))){if(n.has(a))continue;let r=_s(e,a),o=_s(t,a);!r&&o?i.push({path:a,after:t[a],kind:`added`}):r&&!o?i.push({path:a,before:e[a],kind:`removed`}):vs(e[a],t[a])||i.push({path:a,before:e[a],after:t[a],kind:`changed`})}return i}var bs=ys;export{X as _,rs as a,qe as b,no as c,so as d,G as f,H as g,Z as h,ds as i,J as l,Wo as m,fs as n,eo as o,Y as p,ls as r,Qa as s,bs as t,K as u,q as v,Be as x,Ge as y};
|
|
65
|
-
//# sourceMappingURL=src-dpVDMS9j.js.map
|
|
Binary file
|
|
Binary file
|