@modern-admin/web 0.4.2 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/config/vite.js +20 -0
- package/dist/lib/index.js +6 -5
- package/dist/lib/index.js.map +1 -1
- package/dist/standalone/assets/action-component-host-8DE4kuUJ.js +2 -0
- package/dist/standalone/assets/action-component-host-8DE4kuUJ.js.br +0 -0
- package/dist/standalone/assets/action-component-host-8DE4kuUJ.js.gz +0 -0
- package/dist/standalone/assets/{action-component-host-P6HcuKj3.js.map → action-component-host-8DE4kuUJ.js.map} +1 -1
- package/dist/standalone/assets/action-page-D6BbXzUo.js +2 -0
- package/dist/standalone/assets/action-page-D6BbXzUo.js.br +0 -0
- package/dist/standalone/assets/action-page-D6BbXzUo.js.gz +0 -0
- package/dist/standalone/assets/{action-page-kyqtK3oq.js.map → action-page-D6BbXzUo.js.map} +1 -1
- package/dist/standalone/assets/ai-assistant-widget-BORa8_hT.js +2 -0
- package/dist/standalone/assets/ai-assistant-widget-BORa8_hT.js.br +0 -0
- package/dist/standalone/assets/ai-assistant-widget-BORa8_hT.js.gz +0 -0
- package/dist/standalone/assets/{ai-assistant-widget-DGanix6u.js.map → ai-assistant-widget-BORa8_hT.js.map} +1 -1
- package/dist/standalone/assets/arrow-left-yVCaEJJu.js +2 -0
- package/dist/standalone/assets/{arrow-left-CI9hUPwJ.js.map → arrow-left-yVCaEJJu.js.map} +1 -1
- package/dist/standalone/assets/audit-log-page-uHj9GWfi.js +2 -0
- package/dist/standalone/assets/audit-log-page-uHj9GWfi.js.br +0 -0
- package/dist/standalone/assets/audit-log-page-uHj9GWfi.js.gz +0 -0
- package/dist/standalone/assets/{audit-log-page-DozriTiA.js.map → audit-log-page-uHj9GWfi.js.map} +1 -1
- package/dist/standalone/assets/badge-CdW_Z0lB.js +2 -0
- package/dist/standalone/assets/{badge-lb2Nqx1b.js.map → badge-CdW_Z0lB.js.map} +1 -1
- package/dist/standalone/assets/{bot-DFDgGfNj.js → bot-CuDPD_ZU.js} +2 -2
- package/dist/standalone/assets/{bot-DFDgGfNj.js.map → bot-CuDPD_ZU.js.map} +1 -1
- package/dist/standalone/assets/cache-page-CBKj7WFq.js +2 -0
- package/dist/standalone/assets/cache-page-CBKj7WFq.js.br +0 -0
- package/dist/standalone/assets/cache-page-CBKj7WFq.js.gz +0 -0
- package/dist/standalone/assets/cache-page-CBKj7WFq.js.map +1 -0
- package/dist/standalone/assets/calendar-BuLRvNBg.js +2 -0
- package/dist/standalone/assets/calendar-BuLRvNBg.js.br +0 -0
- package/dist/standalone/assets/calendar-BuLRvNBg.js.gz +0 -0
- package/dist/standalone/assets/calendar-BuLRvNBg.js.map +1 -0
- package/dist/standalone/assets/card-BYbadRar.js +2 -0
- package/dist/standalone/assets/card-BYbadRar.js.br +0 -0
- package/dist/standalone/assets/card-BYbadRar.js.gz +0 -0
- package/dist/standalone/assets/{card-Dh44j2Nb.js.map → card-BYbadRar.js.map} +1 -1
- package/dist/standalone/assets/chart-widget-Bfk_mvm2.js +2 -0
- package/dist/standalone/assets/chart-widget-Bfk_mvm2.js.br +0 -0
- package/dist/standalone/assets/chart-widget-Bfk_mvm2.js.gz +0 -0
- package/dist/standalone/assets/{chart-widget-B819aHsE.js.map → chart-widget-Bfk_mvm2.js.map} +1 -1
- package/dist/standalone/assets/chevrons-up-down-y29_Sm-3.js +2 -0
- package/dist/standalone/assets/{chevrons-up-down-BHCs46XQ.js.map → chevrons-up-down-y29_Sm-3.js.map} +1 -1
- package/dist/standalone/assets/{circle-alert-0EyKeic4.js → circle-alert-D1sKnXtO.js} +2 -2
- package/dist/standalone/assets/{circle-alert-0EyKeic4.js.map → circle-alert-D1sKnXtO.js.map} +1 -1
- package/dist/standalone/assets/{clock-OCmX6DtA.js → clock-B9qbSr_k.js} +2 -2
- package/dist/standalone/assets/{clock-OCmX6DtA.js.map → clock-B9qbSr_k.js.map} +1 -1
- package/dist/standalone/assets/command-BAXXxf0P.js +2 -0
- package/dist/standalone/assets/command-BAXXxf0P.js.br +0 -0
- package/dist/standalone/assets/command-BAXXxf0P.js.gz +0 -0
- package/dist/standalone/assets/command-BAXXxf0P.js.map +1 -0
- package/dist/standalone/assets/{copy-BexCWf4U.js → copy-5fb4qj-_.js} +2 -2
- package/dist/standalone/assets/{copy-BexCWf4U.js.map → copy-5fb4qj-_.js.map} +1 -1
- package/dist/standalone/assets/createLucideIcon-QE2kj6ru.js +2 -0
- package/dist/standalone/assets/createLucideIcon-QE2kj6ru.js.br +0 -0
- package/dist/standalone/assets/createLucideIcon-QE2kj6ru.js.gz +0 -0
- package/dist/standalone/assets/createLucideIcon-QE2kj6ru.js.map +1 -0
- package/dist/standalone/assets/date-picker-Bxv-yrWf.js +2 -0
- package/dist/standalone/assets/date-picker-Bxv-yrWf.js.br +0 -0
- package/dist/standalone/assets/date-picker-Bxv-yrWf.js.gz +0 -0
- package/dist/standalone/assets/{date-picker-D0dWQEox.js.map → date-picker-Bxv-yrWf.js.map} +1 -1
- package/dist/standalone/assets/dist-COXu-_Zv.js +2 -0
- package/dist/standalone/assets/dist-COXu-_Zv.js.br +0 -0
- package/dist/standalone/assets/dist-COXu-_Zv.js.gz +0 -0
- package/dist/standalone/assets/dist-COXu-_Zv.js.map +1 -0
- package/dist/standalone/assets/dist-CiXwD0ML.js +2 -0
- package/dist/standalone/assets/dist-CiXwD0ML.js.br +0 -0
- package/dist/standalone/assets/dist-CiXwD0ML.js.gz +0 -0
- package/dist/standalone/assets/dist-CiXwD0ML.js.map +1 -0
- package/dist/standalone/assets/dist-DPxQeZn3.js +2 -0
- package/dist/standalone/assets/dist-DPxQeZn3.js.br +0 -0
- package/dist/standalone/assets/dist-DPxQeZn3.js.gz +0 -0
- package/dist/standalone/assets/dist-DPxQeZn3.js.map +1 -0
- package/dist/standalone/assets/edit-page-Dm638D2J.js +2 -0
- package/dist/standalone/assets/edit-page-Dm638D2J.js.br +0 -0
- package/dist/standalone/assets/edit-page-Dm638D2J.js.gz +0 -0
- package/dist/standalone/assets/{edit-page-CFPwq1_5.js.map → edit-page-Dm638D2J.js.map} +1 -1
- package/dist/standalone/assets/{ellipsis-lEjcTxo0.js → ellipsis-BRmOlhsy.js} +2 -2
- package/dist/standalone/assets/{ellipsis-lEjcTxo0.js.map → ellipsis-BRmOlhsy.js.map} +1 -1
- package/dist/standalone/assets/empty-DMs98grx.js +2 -0
- package/dist/standalone/assets/empty-DMs98grx.js.br +0 -0
- package/dist/standalone/assets/empty-DMs98grx.js.gz +0 -0
- package/dist/standalone/assets/empty-DMs98grx.js.map +1 -0
- package/dist/standalone/assets/{file-text-CcLZq8HA.js → file-text-MQF--yeB.js} +2 -2
- package/dist/standalone/assets/{file-text-CcLZq8HA.js.map → file-text-MQF--yeB.js.map} +1 -1
- package/dist/standalone/assets/floating-layer-BcTp2AMB.js +2 -0
- package/dist/standalone/assets/floating-layer-BcTp2AMB.js.br +0 -0
- package/dist/standalone/assets/floating-layer-BcTp2AMB.js.gz +0 -0
- package/dist/standalone/assets/floating-layer-BcTp2AMB.js.map +1 -0
- package/dist/standalone/assets/global-search-dialog-DxwxFDO5.js +2 -0
- package/dist/standalone/assets/global-search-dialog-DxwxFDO5.js.br +0 -0
- package/dist/standalone/assets/global-search-dialog-DxwxFDO5.js.gz +0 -0
- package/dist/standalone/assets/{global-search-dialog-AfQmJSE7.js.map → global-search-dialog-DxwxFDO5.js.map} +1 -1
- package/dist/standalone/assets/heavy-fields-LnhreUPp.js +174 -0
- package/dist/standalone/assets/heavy-fields-LnhreUPp.js.br +0 -0
- package/dist/standalone/assets/heavy-fields-LnhreUPp.js.gz +0 -0
- package/dist/standalone/assets/heavy-fields-LnhreUPp.js.map +1 -0
- package/dist/standalone/assets/home-page-DiDOzuic.js +61 -0
- package/dist/standalone/assets/home-page-DiDOzuic.js.br +0 -0
- package/dist/standalone/assets/home-page-DiDOzuic.js.gz +0 -0
- package/dist/standalone/assets/home-page-DiDOzuic.js.map +1 -0
- package/dist/standalone/assets/hooks-BiOfAnEq.js +186 -0
- package/dist/standalone/assets/hooks-BiOfAnEq.js.br +0 -0
- package/dist/standalone/assets/hooks-BiOfAnEq.js.gz +0 -0
- package/dist/standalone/assets/hooks-BiOfAnEq.js.map +1 -0
- package/dist/standalone/assets/icon-registry-s31CNk7M.js +2 -0
- package/dist/standalone/assets/icon-registry-s31CNk7M.js.br +0 -0
- package/dist/standalone/assets/icon-registry-s31CNk7M.js.gz +0 -0
- package/dist/standalone/assets/icon-registry-s31CNk7M.js.map +1 -0
- package/dist/standalone/assets/index-CASCzvYu.js +15 -0
- package/dist/standalone/assets/index-CASCzvYu.js.br +0 -0
- package/dist/standalone/assets/index-CASCzvYu.js.gz +0 -0
- package/dist/standalone/assets/index-CASCzvYu.js.map +1 -0
- package/dist/standalone/assets/index-Cz5ntgJ_.css +2 -0
- package/dist/standalone/assets/index-Cz5ntgJ_.css.br +0 -0
- package/dist/standalone/assets/index-Cz5ntgJ_.css.gz +0 -0
- package/dist/standalone/assets/{info-CGVdWTj1.js → info-ChwYoM77.js} +2 -2
- package/dist/standalone/assets/{info-CGVdWTj1.js.map → info-ChwYoM77.js.map} +1 -1
- package/dist/standalone/assets/json-editor-BD0UhGOT.js +2 -0
- package/dist/standalone/assets/json-editor-BD0UhGOT.js.br +0 -0
- package/dist/standalone/assets/json-editor-BD0UhGOT.js.gz +0 -0
- package/dist/standalone/assets/json-editor-BD0UhGOT.js.map +1 -0
- package/dist/standalone/assets/key-BzJFbNbz.js +2 -0
- package/dist/standalone/assets/key-BzJFbNbz.js.map +1 -0
- package/dist/standalone/assets/{key-round-CQLp1Ua9.js → key-round-oSqmVdkQ.js} +2 -2
- package/dist/standalone/assets/{key-round-CQLp1Ua9.js.map → key-round-oSqmVdkQ.js.map} +1 -1
- package/dist/standalone/assets/{minimize-2-Bx2cH_WS.js → minimize-2-iWv98HjE.js} +2 -2
- package/dist/standalone/assets/{minimize-2-Bx2cH_WS.js.map → minimize-2-iWv98HjE.js.map} +1 -1
- package/dist/standalone/assets/{palette-DVP_4RAn.js → palette-jgTV28yN.js} +2 -2
- package/dist/standalone/assets/{palette-DVP_4RAn.js.map → palette-jgTV28yN.js.map} +1 -1
- package/dist/standalone/assets/{pencil-BO-k3yTG.js → pencil-kFOObGrY.js} +2 -2
- package/dist/standalone/assets/{pencil-BO-k3yTG.js.map → pencil-kFOObGrY.js.map} +1 -1
- package/dist/standalone/assets/{pipette-CqHYfQnn.js → pipette-roLBCmPv.js} +2 -2
- package/dist/standalone/assets/pipette-roLBCmPv.js.br +0 -0
- package/dist/standalone/assets/pipette-roLBCmPv.js.gz +0 -0
- package/dist/standalone/assets/{pipette-CqHYfQnn.js.map → pipette-roLBCmPv.js.map} +1 -1
- package/dist/standalone/assets/plus-D7PHzena.js +2 -0
- package/dist/standalone/assets/{plus-Dk-FzitW.js.map → plus-D7PHzena.js.map} +1 -1
- package/dist/standalone/assets/property-renderer-ClrVnSny.js +4 -0
- package/dist/standalone/assets/property-renderer-ClrVnSny.js.br +0 -0
- package/dist/standalone/assets/property-renderer-ClrVnSny.js.gz +0 -0
- package/dist/standalone/assets/property-renderer-ClrVnSny.js.map +1 -0
- package/dist/standalone/assets/reference-BMbhUBHD.js +2 -0
- package/dist/standalone/assets/reference-BMbhUBHD.js.br +0 -0
- package/dist/standalone/assets/reference-BMbhUBHD.js.gz +0 -0
- package/dist/standalone/assets/{reference-DWJEoGIf.js.map → reference-BMbhUBHD.js.map} +1 -1
- package/dist/standalone/assets/refresh-cw-Cm9YiHGV.js +2 -0
- package/dist/standalone/assets/refresh-cw-Cm9YiHGV.js.map +1 -0
- package/dist/standalone/assets/revisions-button-Csueldv_.js +2 -0
- package/dist/standalone/assets/revisions-button-Csueldv_.js.br +0 -0
- package/dist/standalone/assets/revisions-button-Csueldv_.js.gz +0 -0
- package/dist/standalone/assets/{revisions-button-DR0oW2wX.js.map → revisions-button-Csueldv_.js.map} +1 -1
- package/dist/standalone/assets/richtext-render-DaiNQPjZ.js +68 -0
- package/dist/standalone/assets/richtext-render-DaiNQPjZ.js.br +0 -0
- package/dist/standalone/assets/richtext-render-DaiNQPjZ.js.gz +0 -0
- package/dist/standalone/assets/richtext-render-DaiNQPjZ.js.map +1 -0
- package/dist/standalone/assets/{rotate-ccw-BLr0QLAg.js → rotate-ccw-AB1VcvbK.js} +2 -2
- package/dist/standalone/assets/{rotate-ccw-BLr0QLAg.js.map → rotate-ccw-AB1VcvbK.js.map} +1 -1
- package/dist/standalone/assets/{save-Cd3oR3Sj.js → save-BkkrgP5Q.js} +2 -2
- package/dist/standalone/assets/{save-Cd3oR3Sj.js.map → save-BkkrgP5Q.js.map} +1 -1
- package/dist/standalone/assets/schemas-ByMQmMCS.js +65 -0
- package/dist/standalone/assets/schemas-ByMQmMCS.js.br +0 -0
- package/dist/standalone/assets/schemas-ByMQmMCS.js.gz +0 -0
- package/dist/standalone/assets/schemas-ByMQmMCS.js.map +1 -0
- package/dist/standalone/assets/select-BOe2daO9.js +2 -0
- package/dist/standalone/assets/select-BOe2daO9.js.br +0 -0
- package/dist/standalone/assets/select-BOe2daO9.js.gz +0 -0
- package/dist/standalone/assets/select-BOe2daO9.js.map +1 -0
- package/dist/standalone/assets/{send-D4KHQGYj.js → send-Bzb_4uMT.js} +2 -2
- package/dist/standalone/assets/{send-D4KHQGYj.js.map → send-Bzb_4uMT.js.map} +1 -1
- package/dist/standalone/assets/settings-page-BmphreWj.js +2 -0
- package/dist/standalone/assets/settings-page-BmphreWj.js.br +0 -0
- package/dist/standalone/assets/settings-page-BmphreWj.js.gz +0 -0
- package/dist/standalone/assets/{settings-page-DSWp2N6T.js.map → settings-page-BmphreWj.js.map} +1 -1
- package/dist/standalone/assets/show-page-CDgUXhsx.js +2 -0
- package/dist/standalone/assets/show-page-CDgUXhsx.js.br +0 -0
- package/dist/standalone/assets/show-page-CDgUXhsx.js.gz +0 -0
- package/dist/standalone/assets/{show-page-CGzUAZoO.js.map → show-page-CDgUXhsx.js.map} +1 -1
- package/dist/standalone/assets/{sparkles-CqF0zjrF.js → sparkles-1tT0H4n4.js} +2 -2
- package/dist/standalone/assets/{sparkles-CqF0zjrF.js.map → sparkles-1tT0H4n4.js.map} +1 -1
- package/dist/standalone/assets/{square-pen-DGT7ekeJ.js → square-pen-ZvVEwkzw.js} +2 -2
- package/dist/standalone/assets/{square-pen-DGT7ekeJ.js.map → square-pen-ZvVEwkzw.js.map} +1 -1
- package/dist/standalone/assets/table-RI-lM4fw.js +2 -0
- package/dist/standalone/assets/table-RI-lM4fw.js.br +1 -0
- package/dist/standalone/assets/table-RI-lM4fw.js.gz +0 -0
- package/dist/standalone/assets/table-RI-lM4fw.js.map +1 -0
- package/dist/standalone/assets/tabs-Bj4gQaH2.js +2 -0
- package/dist/standalone/assets/tabs-Bj4gQaH2.js.br +0 -0
- package/dist/standalone/assets/tabs-Bj4gQaH2.js.gz +0 -0
- package/dist/standalone/assets/tabs-Bj4gQaH2.js.map +1 -0
- package/dist/standalone/assets/textarea-C2w7TG3h.js +2 -0
- package/dist/standalone/assets/{textarea-DBVf3GGt.js.map → textarea-C2w7TG3h.js.map} +1 -1
- package/dist/standalone/assets/{trash-2-DhyKQCKv.js → trash-2-BIJVpWxv.js} +2 -2
- package/dist/standalone/assets/{trash-2-DhyKQCKv.js.map → trash-2-BIJVpWxv.js.map} +1 -1
- package/dist/standalone/assets/{triangle-alert-CyaaNWN8.js → triangle-alert-yljVpQCM.js} +2 -2
- package/dist/standalone/assets/{triangle-alert-CyaaNWN8.js.map → triangle-alert-yljVpQCM.js.map} +1 -1
- package/dist/standalone/assets/{undo-2-DlSB-5DM.js → undo-2-CnH3ScKE.js} +2 -2
- package/dist/standalone/assets/undo-2-CnH3ScKE.js.br +0 -0
- package/dist/standalone/assets/undo-2-CnH3ScKE.js.gz +0 -0
- package/dist/standalone/assets/{undo-2-DlSB-5DM.js.map → undo-2-CnH3ScKE.js.map} +1 -1
- package/dist/standalone/assets/{upload-BVhXhZgn.js → upload-DrfB-4bU.js} +2 -2
- package/dist/standalone/assets/upload-DrfB-4bU.js.br +0 -0
- package/dist/standalone/assets/upload-DrfB-4bU.js.gz +0 -0
- package/dist/standalone/assets/{upload-BVhXhZgn.js.map → upload-DrfB-4bU.js.map} +1 -1
- package/dist/standalone/assets/use-dashboard-charts-D7-ctwCE.js +2 -0
- package/dist/standalone/assets/use-dashboard-charts-D7-ctwCE.js.br +0 -0
- package/dist/standalone/assets/use-dashboard-charts-D7-ctwCE.js.gz +0 -0
- package/dist/standalone/assets/{use-dashboard-charts-Cr3OUSL5.js.map → use-dashboard-charts-D7-ctwCE.js.map} +1 -1
- package/dist/standalone/assets/useQueries-DNUnShBb.js +2 -0
- package/dist/standalone/assets/useQueries-DNUnShBb.js.br +0 -0
- package/dist/standalone/assets/useQueries-DNUnShBb.js.gz +0 -0
- package/dist/standalone/assets/useQueries-DNUnShBb.js.map +1 -0
- package/dist/standalone/assets/{user-directory-Df5X8VOe.js → user-directory-BvmDzxsG.js} +2 -2
- package/dist/standalone/assets/user-directory-BvmDzxsG.js.br +0 -0
- package/dist/standalone/assets/user-directory-BvmDzxsG.js.gz +0 -0
- package/dist/standalone/assets/{user-directory-Df5X8VOe.js.map → user-directory-BvmDzxsG.js.map} +1 -1
- package/dist/standalone/assets/{wand-sparkles-DWaFQeYS.js → wand-sparkles-DwseTI5T.js} +2 -2
- package/dist/standalone/assets/{wand-sparkles-DWaFQeYS.js.map → wand-sparkles-DwseTI5T.js.map} +1 -1
- package/dist/standalone/assets/wizard-create-page-D4a8FnmI.js +2 -0
- package/dist/standalone/assets/wizard-create-page-D4a8FnmI.js.br +0 -0
- package/dist/standalone/assets/wizard-create-page-D4a8FnmI.js.gz +0 -0
- package/dist/standalone/assets/{wizard-create-page-B8IcszRF.js.map → wizard-create-page-D4a8FnmI.js.map} +1 -1
- package/dist/standalone/assets/x-c-gfVPJa.js +2 -0
- package/dist/standalone/assets/{x-C3kLunD6.js.map → x-c-gfVPJa.js.map} +1 -1
- package/dist/standalone/assets/zap-BxPAEPtJ.js +2 -0
- package/dist/standalone/assets/zap-BxPAEPtJ.js.map +1 -0
- package/dist/standalone/assets/zod-2-ubQvxh.js +2 -0
- package/dist/standalone/assets/zod-2-ubQvxh.js.br +0 -0
- package/dist/standalone/assets/zod-2-ubQvxh.js.gz +0 -0
- package/dist/standalone/assets/zod-2-ubQvxh.js.map +1 -0
- package/dist/standalone/index.html +12 -12
- package/dist/standalone/index.html.br +0 -0
- package/dist/standalone/index.html.gz +0 -0
- package/package.json +21 -21
- package/src/vite.ts +21 -0
- package/dist/standalone/assets/action-component-host-P6HcuKj3.js +0 -2
- package/dist/standalone/assets/action-component-host-P6HcuKj3.js.br +0 -0
- package/dist/standalone/assets/action-component-host-P6HcuKj3.js.gz +0 -0
- package/dist/standalone/assets/action-page-kyqtK3oq.js +0 -2
- package/dist/standalone/assets/action-page-kyqtK3oq.js.br +0 -0
- package/dist/standalone/assets/action-page-kyqtK3oq.js.gz +0 -0
- package/dist/standalone/assets/ai-assistant-widget-DGanix6u.js +0 -2
- package/dist/standalone/assets/ai-assistant-widget-DGanix6u.js.br +0 -0
- package/dist/standalone/assets/ai-assistant-widget-DGanix6u.js.gz +0 -0
- package/dist/standalone/assets/arrow-left-CI9hUPwJ.js +0 -2
- package/dist/standalone/assets/audit-log-page-DozriTiA.js +0 -2
- package/dist/standalone/assets/audit-log-page-DozriTiA.js.br +0 -0
- package/dist/standalone/assets/audit-log-page-DozriTiA.js.gz +0 -0
- package/dist/standalone/assets/badge-lb2Nqx1b.js +0 -2
- package/dist/standalone/assets/calendar-crtd4PEn.js +0 -2
- package/dist/standalone/assets/calendar-crtd4PEn.js.br +0 -0
- package/dist/standalone/assets/calendar-crtd4PEn.js.gz +0 -0
- package/dist/standalone/assets/calendar-crtd4PEn.js.map +0 -1
- package/dist/standalone/assets/card-Dh44j2Nb.js +0 -2
- package/dist/standalone/assets/card-Dh44j2Nb.js.br +0 -0
- package/dist/standalone/assets/card-Dh44j2Nb.js.gz +0 -0
- package/dist/standalone/assets/chart-widget-B819aHsE.js +0 -2
- package/dist/standalone/assets/chart-widget-B819aHsE.js.br +0 -0
- package/dist/standalone/assets/chart-widget-B819aHsE.js.gz +0 -0
- package/dist/standalone/assets/chevrons-up-down-BHCs46XQ.js +0 -2
- package/dist/standalone/assets/command-xJ-6Grpv.js +0 -2
- package/dist/standalone/assets/command-xJ-6Grpv.js.br +0 -0
- package/dist/standalone/assets/command-xJ-6Grpv.js.gz +0 -0
- package/dist/standalone/assets/command-xJ-6Grpv.js.map +0 -1
- package/dist/standalone/assets/createLucideIcon-CUopU_LC.js +0 -2
- 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-CUopU_LC.js.map +0 -1
- package/dist/standalone/assets/date-picker-D0dWQEox.js +0 -2
- package/dist/standalone/assets/date-picker-D0dWQEox.js.br +0 -0
- package/dist/standalone/assets/date-picker-D0dWQEox.js.gz +0 -0
- package/dist/standalone/assets/dist-CWGgVQiS.js +0 -2
- package/dist/standalone/assets/dist-CWGgVQiS.js.br +0 -0
- package/dist/standalone/assets/dist-CWGgVQiS.js.gz +0 -0
- package/dist/standalone/assets/dist-CWGgVQiS.js.map +0 -1
- package/dist/standalone/assets/dist-UsTgBPww.js +0 -2
- package/dist/standalone/assets/dist-UsTgBPww.js.br +0 -0
- package/dist/standalone/assets/dist-UsTgBPww.js.gz +0 -0
- package/dist/standalone/assets/dist-UsTgBPww.js.map +0 -1
- package/dist/standalone/assets/dist-qlnAsTo_.js +0 -2
- package/dist/standalone/assets/dist-qlnAsTo_.js.br +0 -0
- package/dist/standalone/assets/dist-qlnAsTo_.js.gz +0 -0
- package/dist/standalone/assets/dist-qlnAsTo_.js.map +0 -1
- package/dist/standalone/assets/edit-page-CFPwq1_5.js +0 -2
- package/dist/standalone/assets/edit-page-CFPwq1_5.js.br +0 -0
- package/dist/standalone/assets/edit-page-CFPwq1_5.js.gz +0 -0
- package/dist/standalone/assets/empty-D9sUunOr.js +0 -2
- package/dist/standalone/assets/empty-D9sUunOr.js.br +0 -0
- package/dist/standalone/assets/empty-D9sUunOr.js.gz +0 -0
- package/dist/standalone/assets/empty-D9sUunOr.js.map +0 -1
- package/dist/standalone/assets/global-search-dialog-AfQmJSE7.js +0 -2
- package/dist/standalone/assets/global-search-dialog-AfQmJSE7.js.br +0 -0
- package/dist/standalone/assets/global-search-dialog-AfQmJSE7.js.gz +0 -0
- package/dist/standalone/assets/heavy-fields-_zVIBnm1.js +0 -181
- package/dist/standalone/assets/heavy-fields-_zVIBnm1.js.br +0 -0
- package/dist/standalone/assets/heavy-fields-_zVIBnm1.js.gz +0 -0
- package/dist/standalone/assets/heavy-fields-_zVIBnm1.js.map +0 -1
- package/dist/standalone/assets/home-page-BdTrAXqk.js +0 -3
- package/dist/standalone/assets/home-page-BdTrAXqk.js.br +0 -0
- package/dist/standalone/assets/home-page-BdTrAXqk.js.gz +0 -0
- package/dist/standalone/assets/home-page-BdTrAXqk.js.map +0 -1
- package/dist/standalone/assets/icon-registry-CcMm2Zh3.js +0 -2
- package/dist/standalone/assets/icon-registry-CcMm2Zh3.js.br +0 -0
- package/dist/standalone/assets/icon-registry-CcMm2Zh3.js.gz +0 -0
- package/dist/standalone/assets/icon-registry-CcMm2Zh3.js.map +0 -1
- package/dist/standalone/assets/index-DHZwffoP.css +0 -2
- package/dist/standalone/assets/index-DHZwffoP.css.br +0 -0
- package/dist/standalone/assets/index-DHZwffoP.css.gz +0 -0
- package/dist/standalone/assets/index-uYpCUVT4.js +0 -15
- package/dist/standalone/assets/index-uYpCUVT4.js.br +0 -0
- package/dist/standalone/assets/index-uYpCUVT4.js.gz +0 -0
- package/dist/standalone/assets/index-uYpCUVT4.js.map +0 -1
- package/dist/standalone/assets/json-editor-yfO4TUB_.js +0 -2
- package/dist/standalone/assets/json-editor-yfO4TUB_.js.br +0 -0
- package/dist/standalone/assets/json-editor-yfO4TUB_.js.gz +0 -0
- package/dist/standalone/assets/json-editor-yfO4TUB_.js.map +0 -1
- package/dist/standalone/assets/key-lbuX0yk_.js +0 -2
- package/dist/standalone/assets/key-lbuX0yk_.js.map +0 -1
- package/dist/standalone/assets/pipette-CqHYfQnn.js.br +0 -0
- package/dist/standalone/assets/pipette-CqHYfQnn.js.gz +0 -0
- package/dist/standalone/assets/plus-Dk-FzitW.js +0 -2
- package/dist/standalone/assets/property-renderer-CDKsa2KQ.js +0 -7
- package/dist/standalone/assets/property-renderer-CDKsa2KQ.js.br +0 -0
- package/dist/standalone/assets/property-renderer-CDKsa2KQ.js.gz +0 -0
- package/dist/standalone/assets/property-renderer-CDKsa2KQ.js.map +0 -1
- package/dist/standalone/assets/reference-DWJEoGIf.js +0 -2
- package/dist/standalone/assets/reference-DWJEoGIf.js.br +0 -0
- package/dist/standalone/assets/reference-DWJEoGIf.js.gz +0 -0
- package/dist/standalone/assets/refresh-cw-DHvUQTMb.js +0 -2
- package/dist/standalone/assets/refresh-cw-DHvUQTMb.js.map +0 -1
- package/dist/standalone/assets/revisions-button-DR0oW2wX.js +0 -2
- package/dist/standalone/assets/revisions-button-DR0oW2wX.js.br +0 -0
- package/dist/standalone/assets/revisions-button-DR0oW2wX.js.gz +0 -0
- package/dist/standalone/assets/richtext-render-VFCKGulc.js +0 -67
- package/dist/standalone/assets/richtext-render-VFCKGulc.js.br +0 -0
- package/dist/standalone/assets/richtext-render-VFCKGulc.js.gz +0 -0
- package/dist/standalone/assets/richtext-render-VFCKGulc.js.map +0 -1
- package/dist/standalone/assets/router-BcZgB5cZ.js +0 -186
- package/dist/standalone/assets/router-BcZgB5cZ.js.br +0 -0
- package/dist/standalone/assets/router-BcZgB5cZ.js.gz +0 -0
- package/dist/standalone/assets/router-BcZgB5cZ.js.map +0 -1
- package/dist/standalone/assets/schemas-twnCb1uT.js +0 -65
- 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 +0 -1
- package/dist/standalone/assets/select-BiV9bunJ.js +0 -2
- package/dist/standalone/assets/select-BiV9bunJ.js.br +0 -0
- package/dist/standalone/assets/select-BiV9bunJ.js.gz +0 -0
- package/dist/standalone/assets/select-BiV9bunJ.js.map +0 -1
- package/dist/standalone/assets/settings-page-DSWp2N6T.js +0 -2
- package/dist/standalone/assets/settings-page-DSWp2N6T.js.br +0 -0
- package/dist/standalone/assets/settings-page-DSWp2N6T.js.gz +0 -0
- package/dist/standalone/assets/show-page-CGzUAZoO.js +0 -2
- package/dist/standalone/assets/show-page-CGzUAZoO.js.br +0 -0
- package/dist/standalone/assets/show-page-CGzUAZoO.js.gz +0 -0
- package/dist/standalone/assets/tabs-smdw70rV.js +0 -2
- package/dist/standalone/assets/tabs-smdw70rV.js.br +0 -0
- package/dist/standalone/assets/tabs-smdw70rV.js.gz +0 -0
- package/dist/standalone/assets/tabs-smdw70rV.js.map +0 -1
- package/dist/standalone/assets/textarea-DBVf3GGt.js +0 -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/upload-BVhXhZgn.js.br +0 -0
- package/dist/standalone/assets/upload-BVhXhZgn.js.gz +0 -0
- package/dist/standalone/assets/use-dashboard-charts-Cr3OUSL5.js +0 -2
- package/dist/standalone/assets/use-dashboard-charts-Cr3OUSL5.js.br +0 -0
- package/dist/standalone/assets/use-dashboard-charts-Cr3OUSL5.js.gz +0 -0
- package/dist/standalone/assets/useQueries-Ba2PuYhZ.js +0 -2
- package/dist/standalone/assets/useQueries-Ba2PuYhZ.js.br +0 -0
- package/dist/standalone/assets/useQueries-Ba2PuYhZ.js.gz +0 -0
- package/dist/standalone/assets/useQueries-Ba2PuYhZ.js.map +0 -1
- package/dist/standalone/assets/user-directory-Df5X8VOe.js.br +0 -0
- package/dist/standalone/assets/user-directory-Df5X8VOe.js.gz +0 -0
- package/dist/standalone/assets/value-format-BUeGtfH4.js +0 -60
- package/dist/standalone/assets/value-format-BUeGtfH4.js.br +0 -0
- package/dist/standalone/assets/value-format-BUeGtfH4.js.gz +0 -0
- package/dist/standalone/assets/value-format-BUeGtfH4.js.map +0 -1
- package/dist/standalone/assets/with-selector-id7qGzTH.js +0 -2
- package/dist/standalone/assets/with-selector-id7qGzTH.js.br +0 -0
- package/dist/standalone/assets/with-selector-id7qGzTH.js.gz +0 -0
- package/dist/standalone/assets/with-selector-id7qGzTH.js.map +0 -1
- package/dist/standalone/assets/wizard-create-page-B8IcszRF.js +0 -2
- package/dist/standalone/assets/wizard-create-page-B8IcszRF.js.br +0 -0
- package/dist/standalone/assets/wizard-create-page-B8IcszRF.js.gz +0 -0
- package/dist/standalone/assets/x-C3kLunD6.js +0 -2
- package/dist/standalone/assets/zap-b3saQVKc.js +0 -2
- package/dist/standalone/assets/zap-b3saQVKc.js.map +0 -1
- package/dist/standalone/assets/zod-mi61gVha.js +0 -2
- package/dist/standalone/assets/zod-mi61gVha.js.br +0 -0
- package/dist/standalone/assets/zod-mi61gVha.js.gz +0 -0
- package/dist/standalone/assets/zod-mi61gVha.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sparkles-
|
|
1
|
+
{"version":3,"file":"sparkles-1tT0H4n4.js","names":[],"sources":["../../../../../node_modules/.bun/lucide-react@1.31.0+0f58469d5b3bd39f/node_modules/lucide-react/dist/esm/icons/sparkles.mjs"],"sourcesContent":["/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z\",\n key: \"1s2grr\"\n }\n ],\n [\"path\", { d: \"M20 2v4\", key: \"1rf3ol\" }],\n [\"path\", { d: \"M22 4h-4\", key: \"gwowj6\" }],\n [\"circle\", { cx: \"4\", cy: \"20\", r: \"2\", key: \"6kqj1y\" }]\n];\nconst Sparkles = createLucideIcon(\"sparkles\", __iconNode);\n\nexport { __iconNode, Sparkles as default };\n//# sourceMappingURL=sparkles.mjs.map\n"],"x_google_ignoreList":[0],"mappings":"mDAqBA,IAAM,EAAW,EAAiB,WAAY,CAX5C,CACE,OACA,CACE,EAAG,yQACH,IAAK,QACP,CACF,EACA,CAAC,OAAQ,CAAE,EAAG,UAAW,IAAK,QAAS,CAAC,EACxC,CAAC,OAAQ,CAAE,EAAG,WAAY,IAAK,QAAS,CAAC,EACzC,CAAC,SAAU,CAAE,GAAI,IAAK,GAAI,KAAM,EAAG,IAAK,IAAK,QAAS,CAAC,CAEX,CAAU"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{t as e}from"./createLucideIcon-
|
|
2
|
-
//# sourceMappingURL=square-pen-
|
|
1
|
+
import{t as e}from"./createLucideIcon-QE2kj6ru.js";var t=e(`square-pen`,[[`path`,{d:`M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7`,key:`1m0v6g`}],[`path`,{d:`M18.375 2.625a1 1 0 0 1 3 3l-9.013 9.014a2 2 0 0 1-.853.505l-2.873.84a.5.5 0 0 1-.62-.62l.84-2.873a2 2 0 0 1 .506-.852z`,key:`ohrbg2`}]]);export{t};
|
|
2
|
+
//# sourceMappingURL=square-pen-ZvVEwkzw.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"square-pen-
|
|
1
|
+
{"version":3,"file":"square-pen-ZvVEwkzw.js","names":[],"sources":["../../../../../node_modules/.bun/lucide-react@1.31.0+0f58469d5b3bd39f/node_modules/lucide-react/dist/esm/icons/square-pen.mjs"],"sourcesContent":["/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\", key: \"1m0v6g\" }],\n [\n \"path\",\n {\n d: \"M18.375 2.625a1 1 0 0 1 3 3l-9.013 9.014a2 2 0 0 1-.853.505l-2.873.84a.5.5 0 0 1-.62-.62l.84-2.873a2 2 0 0 1 .506-.852z\",\n key: \"ohrbg2\"\n }\n ]\n];\nconst SquarePen = createLucideIcon(\"square-pen\", __iconNode);\n\nexport { __iconNode, SquarePen as default };\n//# sourceMappingURL=square-pen.mjs.map\n"],"x_google_ignoreList":[0],"mappings":"mDAmBA,IAAM,EAAY,EAAiB,aAAc,CAT/C,CAAC,OAAQ,CAAE,EAAG,6DAA8D,IAAK,QAAS,CAAC,EAC3F,CACE,OACA,CACE,EAAG,0HACH,IAAK,QACP,CACF,CAE+C,CAAU"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as e,n as t}from"./createLucideIcon-QE2kj6ru.js";import{C as n,l as r}from"./floating-layer-BcTp2AMB.js";var i=e(t(),1),a=n(),o=i.forwardRef(({className:e,...t},n)=>(0,a.jsx)(`div`,{className:`relative w-full overflow-auto`,children:(0,a.jsx)(`table`,{ref:n,className:r(`w-full caption-bottom text-sm`,e),...t})}));o.displayName=`Table`;var s=i.forwardRef(({className:e,...t},n)=>(0,a.jsx)(`thead`,{ref:n,className:r(`[&_tr]:border-b [&_tr]:border-border bg-muted/40`,e),...t}));s.displayName=`TableHeader`;var c=i.forwardRef(({className:e,...t},n)=>(0,a.jsx)(`tbody`,{ref:n,className:r(`[&_tr:last-child]:border-0`,e),...t}));c.displayName=`TableBody`;var l=i.forwardRef(({className:e,...t},n)=>(0,a.jsx)(`tfoot`,{ref:n,className:r(`border-t bg-muted/40 font-medium [&>tr]:last:border-b-0`,e),...t}));l.displayName=`TableFooter`;var u=i.forwardRef(({className:e,...t},n)=>(0,a.jsx)(`tr`,{ref:n,className:r(`border-b border-border transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted`,e),...t}));u.displayName=`TableRow`;var d=i.forwardRef(({className:e,...t},n)=>(0,a.jsx)(`th`,{ref:n,className:r(`h-10 px-3 text-left align-middle text-xs font-semibold uppercase tracking-wide text-muted-foreground border-r border-border last:border-r-0`,e),...t}));d.displayName=`TableHead`;var f=i.forwardRef(({className:e,...t},n)=>(0,a.jsx)(`td`,{ref:n,className:r(`px-3 py-2 align-middle border-r border-border last:border-r-0`,e),...t}));f.displayName=`TableCell`;var p=i.forwardRef(({className:e,...t},n)=>(0,a.jsx)(`caption`,{ref:n,className:r(`mt-4 text-sm text-muted-foreground`,e),...t}));p.displayName=`TableCaption`;export{s as a,d as i,c as n,u as o,f as r,o as t};
|
|
2
|
+
//# sourceMappingURL=table-RI-lM4fw.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
�@���٪�����sk_�RV'�EIc�?�ǟ����E5��|`;Y�g�.Ե�f1�$I��%<:���$�ǐ=�!s-j'kx\{�O/T��o�I��k��ѱ��Cj����Q �a\�Y6O����hB�2
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"table-RI-lM4fw.js","names":[],"sources":["../../../../ui/src/components/table.tsx"],"sourcesContent":["import * as React from 'react'\nimport { cn } from '../lib/utils.js'\n\nexport const Table = React.forwardRef<HTMLTableElement, React.HTMLAttributes<HTMLTableElement>>(\n ({ className, ...props }, ref) => (\n <div className=\"relative w-full overflow-auto\">\n <table ref={ref} className={cn('w-full caption-bottom text-sm', className)} {...props} />\n </div>\n ),\n)\nTable.displayName = 'Table'\n\nexport const TableHeader = React.forwardRef<\n HTMLTableSectionElement,\n React.HTMLAttributes<HTMLTableSectionElement>\n>(({ className, ...props }, ref) => (\n <thead ref={ref} className={cn('[&_tr]:border-b [&_tr]:border-border bg-muted/40', className)} {...props} />\n))\nTableHeader.displayName = 'TableHeader'\n\nexport const TableBody = React.forwardRef<\n HTMLTableSectionElement,\n React.HTMLAttributes<HTMLTableSectionElement>\n>(({ className, ...props }, ref) => (\n <tbody ref={ref} className={cn('[&_tr:last-child]:border-0', className)} {...props} />\n))\nTableBody.displayName = 'TableBody'\n\nexport const TableFooter = React.forwardRef<\n HTMLTableSectionElement,\n React.HTMLAttributes<HTMLTableSectionElement>\n>(({ className, ...props }, ref) => (\n <tfoot\n ref={ref}\n className={cn('border-t bg-muted/40 font-medium [&>tr]:last:border-b-0', className)}\n {...props}\n />\n))\nTableFooter.displayName = 'TableFooter'\n\nexport const TableRow = React.forwardRef<\n HTMLTableRowElement,\n React.HTMLAttributes<HTMLTableRowElement>\n>(({ className, ...props }, ref) => (\n <tr\n ref={ref}\n className={cn(\n 'border-b border-border transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted',\n className,\n )}\n {...props}\n />\n))\nTableRow.displayName = 'TableRow'\n\nexport const TableHead = React.forwardRef<\n HTMLTableCellElement,\n React.ThHTMLAttributes<HTMLTableCellElement>\n>(({ className, ...props }, ref) => (\n <th\n ref={ref}\n className={cn(\n 'h-10 px-3 text-left align-middle text-xs font-semibold uppercase tracking-wide text-muted-foreground border-r border-border last:border-r-0',\n className,\n )}\n {...props}\n />\n))\nTableHead.displayName = 'TableHead'\n\nexport const TableCell = React.forwardRef<\n HTMLTableCellElement,\n React.TdHTMLAttributes<HTMLTableCellElement>\n>(({ className, ...props }, ref) => (\n <td\n ref={ref}\n className={cn('px-3 py-2 align-middle border-r border-border last:border-r-0', className)}\n {...props}\n />\n))\nTableCell.displayName = 'TableCell'\n\nexport const TableCaption = React.forwardRef<\n HTMLTableCaptionElement,\n React.HTMLAttributes<HTMLTableCaptionElement>\n>(({ className, ...props }, ref) => (\n <caption\n ref={ref}\n className={cn('mt-4 text-sm text-muted-foreground', className)}\n {...props}\n />\n))\nTableCaption.displayName = 'TableCaption'\n"],"mappings":"uIAGa,EAAA,EAAc,YACxB,CAAE,YAAW,GAAG,GAAS,KACxB,EAAA,EAAA,IAAA,CAAC,MAAD,CAAK,UAAU,gCACb,UAAA,EAAA,EAAA,IAAA,CAAC,QAAD,CAAY,MAAK,UAAW,EAAG,gCAAiC,CAAS,EAAG,GAAI,CAAQ,CAAA,CACrF,CAAA,CAET,EACA,EAAM,YAAc,QAEpB,IAAa,EAAA,EAAoB,YAG9B,CAAE,YAAW,GAAG,GAAS,KAC1B,EAAA,EAAA,IAAA,CAAC,QAAD,CAAY,MAAK,UAAW,EAAG,mDAAoD,CAAS,EAAG,GAAI,CAAQ,CAAA,CAC5G,EACD,EAAY,YAAc,cAE1B,IAAa,EAAA,EAAkB,YAG5B,CAAE,YAAW,GAAG,GAAS,KAC1B,EAAA,EAAA,IAAA,CAAC,QAAD,CAAY,MAAK,UAAW,EAAG,6BAA8B,CAAS,EAAG,GAAI,CAAQ,CAAA,CACtF,EACD,EAAU,YAAc,YAExB,IAAa,EAAA,EAAoB,YAG9B,CAAE,YAAW,GAAG,GAAS,KAC1B,EAAA,EAAA,IAAA,CAAC,QAAD,CACO,MACL,UAAW,EAAG,0DAA2D,CAAS,EAClF,GAAI,CACL,CAAA,CACF,EACD,EAAY,YAAc,cAE1B,IAAa,EAAA,EAAiB,YAG3B,CAAE,YAAW,GAAG,GAAS,KAC1B,EAAA,EAAA,IAAA,CAAC,KAAD,CACO,MACL,UAAW,EACT,4FACA,CACF,EACA,GAAI,CACL,CAAA,CACF,EACD,EAAS,YAAc,WAEvB,IAAa,EAAA,EAAkB,YAG5B,CAAE,YAAW,GAAG,GAAS,KAC1B,EAAA,EAAA,IAAA,CAAC,KAAD,CACO,MACL,UAAW,EACT,8IACA,CACF,EACA,GAAI,CACL,CAAA,CACF,EACD,EAAU,YAAc,YAExB,IAAa,EAAA,EAAkB,YAG5B,CAAE,YAAW,GAAG,GAAS,KAC1B,EAAA,EAAA,IAAA,CAAC,KAAD,CACO,MACL,UAAW,EAAG,gEAAiE,CAAS,EACxF,GAAI,CACL,CAAA,CACF,EACD,EAAU,YAAc,YAExB,IAAa,EAAA,EAAqB,YAG/B,CAAE,YAAW,GAAG,GAAS,KAC1B,EAAA,EAAA,IAAA,CAAC,UAAD,CACO,MACL,UAAW,EAAG,qCAAsC,CAAS,EAC7D,GAAI,CACL,CAAA,CACF,EACD,EAAa,YAAc"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as e,n as t}from"./createLucideIcon-QE2kj6ru.js";import{C as n,S as r,_ as i,d as a,f as o,h as s,l as c,p as l}from"./floating-layer-BcTp2AMB.js";import{t as u}from"./dist-CiXwD0ML.js";import{J as d,K as f,q as p}from"./index-CASCzvYu.js";var m=e(t(),1),h=n(),g=Object.defineProperty,_=(e,t)=>g(e,`name`,{value:t,configurable:!0}),v=`Tabs`,[y,b]=r(v,[d]),x=d(),[S,C]=y(v),w=m.forwardRef(_(function(e,t){let{__scopeTabs:n,value:r,onValueChange:i,defaultValue:o,orientation:c=`horizontal`,dir:d,activationMode:f=`automatic`,...p}=e,m=u(d),[g,_]=s({prop:r,onChange:i,defaultProp:o??``,caller:v});return(0,h.jsx)(S,{scope:n,baseId:a(),value:g,onValueChange:_,orientation:c,dir:m,activationMode:f,children:(0,h.jsx)(l.div,{dir:m,"data-orientation":c,...p,ref:t})})},`Tabs`)),T=`TabsList`,E=m.forwardRef(_(function(e,t){let{__scopeTabs:n,loop:r=!0,...i}=e,a=C(T,n),o=x(n);return(0,h.jsx)(p,{asChild:!0,...o,orientation:a.orientation,dir:a.dir,loop:r,children:(0,h.jsx)(l.div,{role:`tablist`,"aria-orientation":a.orientation,...i,ref:t})})},`TabsList`)),D=`TabsTrigger`,O=m.forwardRef(_(function(e,t){let{__scopeTabs:n,value:r,disabled:a=!1,...o}=e,s=C(D,n),c=x(n),u=j(s.baseId,r),d=M(s.baseId,r),p=r===s.value;return(0,h.jsx)(f,{asChild:!0,...c,focusable:!a,active:p,children:(0,h.jsx)(l.button,{type:`button`,role:`tab`,"aria-selected":p,"aria-controls":d,"data-state":p?`active`:`inactive`,"data-disabled":a?``:void 0,disabled:a,id:u,...o,ref:t,onMouseDown:i(e.onMouseDown,e=>{!a&&e.button===0&&e.ctrlKey===!1?s.onValueChange(r):e.preventDefault()}),onKeyDown:i(e.onKeyDown,e=>{a||e.target!==e.currentTarget||[` `,`Enter`].includes(e.key)&&s.onValueChange(r)}),onFocus:i(e.onFocus,()=>{let e=s.activationMode!==`manual`;!p&&!a&&e&&s.onValueChange(r)})})})},`TabsTrigger`)),k=`TabsContent`,A=m.forwardRef(_(function(e,t){let{__scopeTabs:n,value:r,forceMount:i,children:a,...s}=e,c=C(k,n),u=j(c.baseId,r),d=M(c.baseId,r),f=r===c.value,p=m.useRef(f);return m.useEffect(()=>{let e=requestAnimationFrame(()=>p.current=!1);return()=>cancelAnimationFrame(e)},[]),(0,h.jsx)(o,{present:i||f,children:({present:n})=>(0,h.jsx)(l.div,{"data-state":f?`active`:`inactive`,"data-orientation":c.orientation,role:`tabpanel`,"aria-labelledby":u,hidden:!n,id:d,tabIndex:0,...s,ref:t,style:{...e.style,animationDuration:p.current?`0s`:void 0},children:n&&a})})},`TabsContent`));function j(e,t){return`${e}-trigger-${t}`}_(j,`makeTriggerId`);function M(e,t){return`${e}-content-${t}`}_(M,`makeContentId`);var N=w,P=E,F=O,I=A,L=N,R=m.forwardRef(({className:e,...t},n)=>(0,h.jsx)(P,{ref:n,className:c(`flex h-10 w-full items-center justify-start gap-1 overflow-x-auto border-b border-border text-muted-foreground`,e),...t}));R.displayName=P.displayName;var z=m.forwardRef(({className:e,...t},n)=>(0,h.jsx)(F,{ref:n,className:c(`relative -mb-px inline-flex cursor-pointer items-center justify-center gap-2 whitespace-nowrap border-b-2 border-transparent px-4 py-2 text-sm font-medium ring-offset-background transition-all`,`hover:text-foreground`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2`,`disabled:pointer-events-none disabled:opacity-50`,`data-[state=active]:border-primary data-[state=active]:text-foreground`,e),...t}));z.displayName=F.displayName;var B=m.forwardRef(({className:e,...t},n)=>(0,h.jsx)(I,{ref:n,className:c(`mt-3 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2`,e),...t}));B.displayName=I.displayName;export{z as i,B as n,R as r,L as t};
|
|
2
|
+
//# sourceMappingURL=tabs-Bj4gQaH2.js.map
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tabs-Bj4gQaH2.js","names":["Tabs","TabsList","RovingFocusGroup.Root","TabsTrigger","RovingFocusGroup.Item","TabsContent"],"sources":["../../../../../node_modules/.bun/@radix-ui+react-tabs@1.1.21+c32617ced709d283/node_modules/@radix-ui/react-tabs/dist/index.mjs","../../../../ui/src/components/tabs.tsx"],"sourcesContent":["\"use client\";\nvar __defProp = Object.defineProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\n\n// src/tabs.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { createRovingFocusGroupScope } from \"@radix-ui/react-roving-focus\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport * as RovingFocusGroup from \"@radix-ui/react-roving-focus\";\nimport { useDirection } from \"@radix-ui/react-direction\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { useId } from \"@radix-ui/react-id\";\nimport { jsx } from \"react/jsx-runtime\";\nvar TABS_NAME = \"Tabs\";\nvar [createTabsContext, createTabsScope] = createContextScope(TABS_NAME, [\n createRovingFocusGroupScope\n]);\nvar useRovingFocusGroupScope = createRovingFocusGroupScope();\nvar [TabsProvider, useTabsContext] = createTabsContext(TABS_NAME);\nvar Tabs = /* @__PURE__ */ React.forwardRef(\n // blank line to reduce diff noise\n /* @__PURE__ */ __name(function Tabs2(props, forwardedRef) {\n const {\n __scopeTabs,\n value: valueProp,\n onValueChange,\n defaultValue,\n orientation = \"horizontal\",\n dir,\n activationMode = \"automatic\",\n ...tabsProps\n } = props;\n const direction = useDirection(dir);\n const [value, setValue] = useControllableState({\n prop: valueProp,\n onChange: onValueChange,\n defaultProp: defaultValue ?? \"\",\n caller: TABS_NAME\n });\n return /* @__PURE__ */ jsx(\n TabsProvider,\n {\n scope: __scopeTabs,\n baseId: useId(),\n value,\n onValueChange: setValue,\n orientation,\n dir: direction,\n activationMode,\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n dir: direction,\n \"data-orientation\": orientation,\n ...tabsProps,\n ref: forwardedRef\n }\n )\n }\n );\n }, \"Tabs\")\n);\nvar TAB_LIST_NAME = \"TabsList\";\nvar TabsList = /* @__PURE__ */ React.forwardRef(\n // blank line to reduce diff noise\n /* @__PURE__ */ __name(function TabsList2(props, forwardedRef) {\n const { __scopeTabs, loop = true, ...listProps } = props;\n const context = useTabsContext(TAB_LIST_NAME, __scopeTabs);\n const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeTabs);\n return /* @__PURE__ */ jsx(\n RovingFocusGroup.Root,\n {\n asChild: true,\n ...rovingFocusGroupScope,\n orientation: context.orientation,\n dir: context.dir,\n loop,\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n role: \"tablist\",\n \"aria-orientation\": context.orientation,\n ...listProps,\n ref: forwardedRef\n }\n )\n }\n );\n }, \"TabsList\")\n);\nvar TRIGGER_NAME = \"TabsTrigger\";\nvar TabsTrigger = /* @__PURE__ */ React.forwardRef(\n /* @__PURE__ */ __name(function TabsTrigger2(props, forwardedRef) {\n const { __scopeTabs, value, disabled = false, ...triggerProps } = props;\n const context = useTabsContext(TRIGGER_NAME, __scopeTabs);\n const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeTabs);\n const triggerId = makeTriggerId(context.baseId, value);\n const contentId = makeContentId(context.baseId, value);\n const isSelected = value === context.value;\n return /* @__PURE__ */ jsx(\n RovingFocusGroup.Item,\n {\n asChild: true,\n ...rovingFocusGroupScope,\n focusable: !disabled,\n active: isSelected,\n children: /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n role: \"tab\",\n \"aria-selected\": isSelected,\n \"aria-controls\": contentId,\n \"data-state\": isSelected ? \"active\" : \"inactive\",\n \"data-disabled\": disabled ? \"\" : void 0,\n disabled,\n id: triggerId,\n ...triggerProps,\n ref: forwardedRef,\n onMouseDown: composeEventHandlers(props.onMouseDown, (event) => {\n if (!disabled && event.button === 0 && event.ctrlKey === false) {\n context.onValueChange(value);\n } else {\n event.preventDefault();\n }\n }),\n onKeyDown: composeEventHandlers(props.onKeyDown, (event) => {\n if (disabled || event.target !== event.currentTarget) {\n return;\n }\n if ([\" \", \"Enter\"].includes(event.key)) {\n context.onValueChange(value);\n }\n }),\n onFocus: composeEventHandlers(props.onFocus, () => {\n const isAutomaticActivation = context.activationMode !== \"manual\";\n if (!isSelected && !disabled && isAutomaticActivation) {\n context.onValueChange(value);\n }\n })\n }\n )\n }\n );\n }, \"TabsTrigger\")\n);\nvar CONTENT_NAME = \"TabsContent\";\nvar TabsContent = /* @__PURE__ */ React.forwardRef(\n /* @__PURE__ */ __name(function TabsContent2(props, forwardedRef) {\n const { __scopeTabs, value, forceMount, children, ...contentProps } = props;\n const context = useTabsContext(CONTENT_NAME, __scopeTabs);\n const triggerId = makeTriggerId(context.baseId, value);\n const contentId = makeContentId(context.baseId, value);\n const isSelected = value === context.value;\n const isMountAnimationPreventedRef = React.useRef(isSelected);\n React.useEffect(() => {\n const rAF = requestAnimationFrame(() => isMountAnimationPreventedRef.current = false);\n return () => cancelAnimationFrame(rAF);\n }, []);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || isSelected, children: ({ present }) => /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-state\": isSelected ? \"active\" : \"inactive\",\n \"data-orientation\": context.orientation,\n role: \"tabpanel\",\n \"aria-labelledby\": triggerId,\n hidden: !present,\n id: contentId,\n tabIndex: 0,\n ...contentProps,\n ref: forwardedRef,\n style: {\n ...props.style,\n animationDuration: isMountAnimationPreventedRef.current ? \"0s\" : void 0\n },\n children: present && children\n }\n ) });\n }, \"TabsContent\")\n);\nfunction makeTriggerId(baseId, value) {\n return `${baseId}-trigger-${value}`;\n}\n__name(makeTriggerId, \"makeTriggerId\");\nfunction makeContentId(baseId, value) {\n return `${baseId}-content-${value}`;\n}\n__name(makeContentId, \"makeContentId\");\nvar Root2 = Tabs;\nvar List = TabsList;\nvar Trigger = TabsTrigger;\nvar Content = TabsContent;\nexport {\n Content,\n List,\n Root2 as Root,\n Tabs,\n TabsContent,\n TabsList,\n TabsTrigger,\n Trigger,\n createTabsScope\n};\n//# sourceMappingURL=index.mjs.map\n","import * as React from 'react'\nimport * as TabsPrimitive from '@radix-ui/react-tabs'\nimport { cn } from '../lib/utils.js'\n\nexport const Tabs = TabsPrimitive.Root\n\n// Underline-style tab strip — works visually even with a single tab because\n// the active item has a clearly drawn bottom indicator that anchors it to the\n// content below.\nexport const TabsList = React.forwardRef<\n React.ElementRef<typeof TabsPrimitive.List>,\n React.ComponentPropsWithoutRef<typeof TabsPrimitive.List>\n>(({ className, ...props }, ref) => (\n <TabsPrimitive.List\n ref={ref}\n className={cn(\n 'flex h-10 w-full items-center justify-start gap-1 overflow-x-auto border-b border-border text-muted-foreground',\n className,\n )}\n {...props}\n />\n))\nTabsList.displayName = TabsPrimitive.List.displayName\n\nexport const TabsTrigger = React.forwardRef<\n React.ElementRef<typeof TabsPrimitive.Trigger>,\n React.ComponentPropsWithoutRef<typeof TabsPrimitive.Trigger>\n>(({ className, ...props }, ref) => (\n <TabsPrimitive.Trigger\n ref={ref}\n className={cn(\n 'relative -mb-px inline-flex cursor-pointer items-center justify-center gap-2 whitespace-nowrap border-b-2 border-transparent px-4 py-2 text-sm font-medium ring-offset-background transition-all',\n 'hover:text-foreground',\n 'focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2',\n 'disabled:pointer-events-none disabled:opacity-50',\n 'data-[state=active]:border-primary data-[state=active]:text-foreground',\n className,\n )}\n {...props}\n />\n))\nTabsTrigger.displayName = TabsPrimitive.Trigger.displayName\n\nexport const TabsContent = React.forwardRef<\n React.ElementRef<typeof TabsPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof TabsPrimitive.Content>\n>(({ className, ...props }, ref) => (\n <TabsPrimitive.Content\n ref={ref}\n className={cn(\n 'mt-3 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2',\n className,\n )}\n {...props}\n />\n))\nTabsContent.displayName = TabsPrimitive.Content.displayName\n"],"x_google_ignoreList":[0],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as e,n as t}from"./createLucideIcon-QE2kj6ru.js";import{C as n,l as r}from"./floating-layer-BcTp2AMB.js";var i=e(t(),1),a=n(),o=i.forwardRef(({className:e,...t},n)=>(0,a.jsx)(`textarea`,{ref:n,className:r(`flex min-h-[80px] w-full rounded-md border border-input bg-background px-3 py-2 text-sm shadow-sm placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50`,e),...t}));o.displayName=`Textarea`;export{o as t};
|
|
2
|
+
//# sourceMappingURL=textarea-C2w7TG3h.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"textarea-
|
|
1
|
+
{"version":3,"file":"textarea-C2w7TG3h.js","names":[],"sources":["../../../../ui/src/components/textarea.tsx"],"sourcesContent":["import * as React from 'react'\nimport { cn } from '../lib/utils.js'\n\nexport type TextareaProps = React.TextareaHTMLAttributes<HTMLTextAreaElement>\n\nexport const Textarea = React.forwardRef<HTMLTextAreaElement, TextareaProps>(\n ({ className, ...props }, ref) => (\n <textarea\n ref={ref}\n className={cn(\n 'flex min-h-[80px] w-full rounded-md border border-input bg-background px-3 py-2 text-sm shadow-sm placeholder:text-muted-foreground 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 ),\n)\nTextarea.displayName = 'Textarea'\n"],"mappings":"uIAKa,EAAA,EAAiB,YAC3B,CAAE,YAAW,GAAG,GAAS,KACxB,EAAA,EAAA,IAAA,CAAC,WAAD,CACO,MACL,UAAW,EACT,8PACA,CACF,EACA,GAAI,CACL,CAAA,CAEL,EACA,EAAS,YAAc"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{t as e}from"./createLucideIcon-
|
|
2
|
-
//# sourceMappingURL=trash-2-
|
|
1
|
+
import{t as e}from"./createLucideIcon-QE2kj6ru.js";var t=e(`chevron-up`,[[`path`,{d:`m18 15-6-6-6 6`,key:`153udz`}]]),n=e(`trash-2`,[[`path`,{d:`M10 11v6`,key:`nco0om`}],[`path`,{d:`M14 11v6`,key:`outv1u`}],[`path`,{d:`M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6`,key:`miytrc`}],[`path`,{d:`M3 6h18`,key:`d0wm0j`}],[`path`,{d:`M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2`,key:`e791ji`}]]);export{t as n,n as t};
|
|
2
|
+
//# sourceMappingURL=trash-2-BIJVpWxv.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trash-2-
|
|
1
|
+
{"version":3,"file":"trash-2-BIJVpWxv.js","names":["__iconNode"],"sources":["../../../../../node_modules/.bun/lucide-react@1.31.0+0f58469d5b3bd39f/node_modules/lucide-react/dist/esm/icons/chevron-up.mjs","../../../../../node_modules/.bun/lucide-react@1.31.0+0f58469d5b3bd39f/node_modules/lucide-react/dist/esm/icons/trash-2.mjs"],"sourcesContent":["/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [[\"path\", { d: \"m18 15-6-6-6 6\", key: \"153udz\" }]];\nconst ChevronUp = createLucideIcon(\"chevron-up\", __iconNode);\n\nexport { __iconNode, ChevronUp as default };\n//# sourceMappingURL=chevron-up.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M10 11v6\", key: \"nco0om\" }],\n [\"path\", { d: \"M14 11v6\", key: \"outv1u\" }],\n [\"path\", { d: \"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6\", key: \"miytrc\" }],\n [\"path\", { d: \"M3 6h18\", key: \"d0wm0j\" }],\n [\"path\", { d: \"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2\", key: \"e791ji\" }]\n];\nconst Trash2 = createLucideIcon(\"trash-2\", __iconNode);\n\nexport { __iconNode, Trash2 as default };\n//# sourceMappingURL=trash-2.mjs.map\n"],"x_google_ignoreList":[0,1],"mappings":"mDAUA,IAAM,EAAY,EAAiB,aAAcA,CAD7B,CAAC,OAAQ,CAAE,EAAG,iBAAkB,IAAK,QAAS,CAAC,CAClBA,CAAU,ECMrD,EAAS,EAAiB,UAAW,CANzC,CAAC,OAAQ,CAAE,EAAG,WAAY,IAAK,QAAS,CAAC,EACzC,CAAC,OAAQ,CAAE,EAAG,WAAY,IAAK,QAAS,CAAC,EACzC,CAAC,OAAQ,CAAE,EAAG,2CAA4C,IAAK,QAAS,CAAC,EACzE,CAAC,OAAQ,CAAE,EAAG,UAAW,IAAK,QAAS,CAAC,EACxC,CAAC,OAAQ,CAAE,EAAG,yCAA0C,IAAK,QAAS,CAAC,CAE9B,CAAU"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{t as e}from"./createLucideIcon-
|
|
2
|
-
//# sourceMappingURL=triangle-alert-
|
|
1
|
+
import{t as e}from"./createLucideIcon-QE2kj6ru.js";var t=e(`triangle-alert`,[[`path`,{d:`m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3`,key:`wmoenq`}],[`path`,{d:`M12 9v4`,key:`juzpu7`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]);export{t};
|
|
2
|
+
//# sourceMappingURL=triangle-alert-yljVpQCM.js.map
|
package/dist/standalone/assets/{triangle-alert-CyaaNWN8.js.map → triangle-alert-yljVpQCM.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"triangle-alert-
|
|
1
|
+
{"version":3,"file":"triangle-alert-yljVpQCM.js","names":[],"sources":["../../../../../node_modules/.bun/lucide-react@1.31.0+0f58469d5b3bd39f/node_modules/lucide-react/dist/esm/icons/triangle-alert.mjs"],"sourcesContent":["/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3\",\n key: \"wmoenq\"\n }\n ],\n [\"path\", { d: \"M12 9v4\", key: \"juzpu7\" }],\n [\"path\", { d: \"M12 17h.01\", key: \"p32p05\" }]\n];\nconst TriangleAlert = createLucideIcon(\"triangle-alert\", __iconNode);\n\nexport { __iconNode, TriangleAlert as default };\n//# sourceMappingURL=triangle-alert.mjs.map\n"],"x_google_ignoreList":[0],"mappings":"mDAoBA,IAAM,EAAgB,EAAiB,iBAAkB,CAVvD,CACE,OACA,CACE,EAAG,2EACH,IAAK,QACP,CACF,EACA,CAAC,OAAQ,CAAE,EAAG,UAAW,IAAK,QAAS,CAAC,EACxC,CAAC,OAAQ,CAAE,EAAG,aAAc,IAAK,QAAS,CAAC,CAEY,CAAU"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{t as e}from"./createLucideIcon-
|
|
2
|
-
//# sourceMappingURL=undo-2-
|
|
1
|
+
import{t as e}from"./createLucideIcon-QE2kj6ru.js";var t=e(`bold`,[[`path`,{d:`M6 12h9a4 4 0 0 1 0 8H7a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h7a4 4 0 0 1 0 8`,key:`mg9rjx`}]]),n=e(`code-xml`,[[`path`,{d:`m18 16 4-4-4-4`,key:`1inbqp`}],[`path`,{d:`m6 8-4 4 4 4`,key:`15zrgr`}],[`path`,{d:`m14.5 4-5 16`,key:`e7oirm`}]]),r=e(`columns-2`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M12 3v18`,key:`108xh3`}]]),i=e(`heading-1`,[[`path`,{d:`M4 12h8`,key:`17cfdx`}],[`path`,{d:`M4 18V6`,key:`1rz3zl`}],[`path`,{d:`M12 18V6`,key:`zqpxq5`}],[`path`,{d:`m17 12 3-2v8`,key:`1hhhft`}]]),a=e(`heading-2`,[[`path`,{d:`M4 12h8`,key:`17cfdx`}],[`path`,{d:`M4 18V6`,key:`1rz3zl`}],[`path`,{d:`M12 18V6`,key:`zqpxq5`}],[`path`,{d:`M21 18h-4c0-4 4-3 4-6 0-1.5-2-2.5-4-1`,key:`9jr5yi`}]]),o=e(`heading-3`,[[`path`,{d:`M4 12h8`,key:`17cfdx`}],[`path`,{d:`M4 18V6`,key:`1rz3zl`}],[`path`,{d:`M12 18V6`,key:`zqpxq5`}],[`path`,{d:`M17.5 10.5c1.7-1 3.5 0 3.5 1.5a2 2 0 0 1-2 2`,key:`68ncm8`}],[`path`,{d:`M17 17.5c2 1.5 4 .3 4-1.5a2 2 0 0 0-2-2`,key:`1ejuhz`}]]),s=e(`italic`,[[`line`,{x1:`19`,x2:`10`,y1:`4`,y2:`4`,key:`15jd3p`}],[`line`,{x1:`14`,x2:`5`,y1:`20`,y2:`20`,key:`bu0au3`}],[`line`,{x1:`15`,x2:`9`,y1:`4`,y2:`20`,key:`uljnxc`}]]),c=e(`link`,[[`path`,{d:`M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71`,key:`1cjeqo`}],[`path`,{d:`M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71`,key:`19qd67`}]]),l=e(`list-ordered`,[[`path`,{d:`M11 5h10`,key:`1cz7ny`}],[`path`,{d:`M11 12h10`,key:`1438ji`}],[`path`,{d:`M11 19h10`,key:`11t30w`}],[`path`,{d:`M4 4h1v5`,key:`10yrso`}],[`path`,{d:`M4 9h2`,key:`r1h2o0`}],[`path`,{d:`M6.5 20H3.4c0-1 2.6-1.925 2.6-3.5a1.5 1.5 0 0 0-2.6-1.02`,key:`xtkcd5`}]]),u=e(`list`,[[`path`,{d:`M3 5h.01`,key:`18ugdj`}],[`path`,{d:`M3 12h.01`,key:`nlz23k`}],[`path`,{d:`M3 19h.01`,key:`noohij`}],[`path`,{d:`M8 5h13`,key:`1pao27`}],[`path`,{d:`M8 12h13`,key:`1za7za`}],[`path`,{d:`M8 19h13`,key:`m83p4d`}]]),d=e(`minus`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}]]),f=e(`quote`,[[`path`,{d:`M16 3a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2 1 1 0 0 1 1 1v1a2 2 0 0 1-2 2 1 1 0 0 0-1 1v2a1 1 0 0 0 1 1 6 6 0 0 0 6-6V5a2 2 0 0 0-2-2z`,key:`rib7q0`}],[`path`,{d:`M5 3a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2 1 1 0 0 1 1 1v1a2 2 0 0 1-2 2 1 1 0 0 0-1 1v2a1 1 0 0 0 1 1 6 6 0 0 0 6-6V5a2 2 0 0 0-2-2z`,key:`1ymkrd`}]]),p=e(`redo-2`,[[`path`,{d:`m15 14 5-5-5-5`,key:`12vg1m`}],[`path`,{d:`M20 9H9.5A5.5 5.5 0 0 0 4 14.5A5.5 5.5 0 0 0 9.5 20H13`,key:`6uklza`}]]),m=e(`strikethrough`,[[`path`,{d:`M16 4H9a3 3 0 0 0-2.83 4`,key:`43sutm`}],[`path`,{d:`M14 12a4 4 0 0 1 0 8H6`,key:`nlfj13`}],[`line`,{x1:`4`,x2:`20`,y1:`12`,y2:`12`,key:`1e0a9i`}]]),h=e(`undo-2`,[[`path`,{d:`M9 14 4 9l5-5`,key:`102s5s`}],[`path`,{d:`M4 9h10.5a5.5 5.5 0 0 1 5.5 5.5a5.5 5.5 0 0 1-5.5 5.5H11`,key:`f3b9sd`}]]);export{d as a,c,a as d,i as f,t as h,f as i,s as l,n as m,m as n,u as o,r as p,p as r,l as s,h as t,o as u};
|
|
2
|
+
//# sourceMappingURL=undo-2-CnH3ScKE.js.map
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"undo-2-DlSB-5DM.js","names":["__iconNode","__iconNode","__iconNode","__iconNode","__iconNode","__iconNode","__iconNode","__iconNode","__iconNode","__iconNode","__iconNode","__iconNode","__iconNode","__iconNode"],"sources":["../../../../../node_modules/.bun/lucide-react@1.23.0+e14d3f224186685e/node_modules/lucide-react/dist/esm/icons/bold.mjs","../../../../../node_modules/.bun/lucide-react@1.23.0+e14d3f224186685e/node_modules/lucide-react/dist/esm/icons/code-xml.mjs","../../../../../node_modules/.bun/lucide-react@1.23.0+e14d3f224186685e/node_modules/lucide-react/dist/esm/icons/columns-2.mjs","../../../../../node_modules/.bun/lucide-react@1.23.0+e14d3f224186685e/node_modules/lucide-react/dist/esm/icons/heading-1.mjs","../../../../../node_modules/.bun/lucide-react@1.23.0+e14d3f224186685e/node_modules/lucide-react/dist/esm/icons/heading-2.mjs","../../../../../node_modules/.bun/lucide-react@1.23.0+e14d3f224186685e/node_modules/lucide-react/dist/esm/icons/heading-3.mjs","../../../../../node_modules/.bun/lucide-react@1.23.0+e14d3f224186685e/node_modules/lucide-react/dist/esm/icons/italic.mjs","../../../../../node_modules/.bun/lucide-react@1.23.0+e14d3f224186685e/node_modules/lucide-react/dist/esm/icons/link.mjs","../../../../../node_modules/.bun/lucide-react@1.23.0+e14d3f224186685e/node_modules/lucide-react/dist/esm/icons/list-ordered.mjs","../../../../../node_modules/.bun/lucide-react@1.23.0+e14d3f224186685e/node_modules/lucide-react/dist/esm/icons/list.mjs","../../../../../node_modules/.bun/lucide-react@1.23.0+e14d3f224186685e/node_modules/lucide-react/dist/esm/icons/minus.mjs","../../../../../node_modules/.bun/lucide-react@1.23.0+e14d3f224186685e/node_modules/lucide-react/dist/esm/icons/quote.mjs","../../../../../node_modules/.bun/lucide-react@1.23.0+e14d3f224186685e/node_modules/lucide-react/dist/esm/icons/redo-2.mjs","../../../../../node_modules/.bun/lucide-react@1.23.0+e14d3f224186685e/node_modules/lucide-react/dist/esm/icons/strikethrough.mjs","../../../../../node_modules/.bun/lucide-react@1.23.0+e14d3f224186685e/node_modules/lucide-react/dist/esm/icons/undo-2.mjs"],"sourcesContent":["/**\n * @license lucide-react v1.23.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\n \"path\",\n { d: \"M6 12h9a4 4 0 0 1 0 8H7a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h7a4 4 0 0 1 0 8\", key: \"mg9rjx\" }\n ]\n];\nconst Bold = createLucideIcon(\"bold\", __iconNode);\n\nexport { __iconNode, Bold as default };\n//# sourceMappingURL=bold.mjs.map\n","/**\n * @license lucide-react v1.23.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"m18 16 4-4-4-4\", key: \"1inbqp\" }],\n [\"path\", { d: \"m6 8-4 4 4 4\", key: \"15zrgr\" }],\n [\"path\", { d: \"m14.5 4-5 16\", key: \"e7oirm\" }]\n];\nconst CodeXml = createLucideIcon(\"code-xml\", __iconNode);\n\nexport { __iconNode, CodeXml as default };\n//# sourceMappingURL=code-xml.mjs.map\n","/**\n * @license lucide-react v1.23.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"rect\", { width: \"18\", height: \"18\", x: \"3\", y: \"3\", rx: \"2\", key: \"afitv7\" }],\n [\"path\", { d: \"M12 3v18\", key: \"108xh3\" }]\n];\nconst Columns2 = createLucideIcon(\"columns-2\", __iconNode);\n\nexport { __iconNode, Columns2 as default };\n//# sourceMappingURL=columns-2.mjs.map\n","/**\n * @license lucide-react v1.23.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M4 12h8\", key: \"17cfdx\" }],\n [\"path\", { d: \"M4 18V6\", key: \"1rz3zl\" }],\n [\"path\", { d: \"M12 18V6\", key: \"zqpxq5\" }],\n [\"path\", { d: \"m17 12 3-2v8\", key: \"1hhhft\" }]\n];\nconst Heading1 = createLucideIcon(\"heading-1\", __iconNode);\n\nexport { __iconNode, Heading1 as default };\n//# sourceMappingURL=heading-1.mjs.map\n","/**\n * @license lucide-react v1.23.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M4 12h8\", key: \"17cfdx\" }],\n [\"path\", { d: \"M4 18V6\", key: \"1rz3zl\" }],\n [\"path\", { d: \"M12 18V6\", key: \"zqpxq5\" }],\n [\"path\", { d: \"M21 18h-4c0-4 4-3 4-6 0-1.5-2-2.5-4-1\", key: \"9jr5yi\" }]\n];\nconst Heading2 = createLucideIcon(\"heading-2\", __iconNode);\n\nexport { __iconNode, Heading2 as default };\n//# sourceMappingURL=heading-2.mjs.map\n","/**\n * @license lucide-react v1.23.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M4 12h8\", key: \"17cfdx\" }],\n [\"path\", { d: \"M4 18V6\", key: \"1rz3zl\" }],\n [\"path\", { d: \"M12 18V6\", key: \"zqpxq5\" }],\n [\"path\", { d: \"M17.5 10.5c1.7-1 3.5 0 3.5 1.5a2 2 0 0 1-2 2\", key: \"68ncm8\" }],\n [\"path\", { d: \"M17 17.5c2 1.5 4 .3 4-1.5a2 2 0 0 0-2-2\", key: \"1ejuhz\" }]\n];\nconst Heading3 = createLucideIcon(\"heading-3\", __iconNode);\n\nexport { __iconNode, Heading3 as default };\n//# sourceMappingURL=heading-3.mjs.map\n","/**\n * @license lucide-react v1.23.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"line\", { x1: \"19\", x2: \"10\", y1: \"4\", y2: \"4\", key: \"15jd3p\" }],\n [\"line\", { x1: \"14\", x2: \"5\", y1: \"20\", y2: \"20\", key: \"bu0au3\" }],\n [\"line\", { x1: \"15\", x2: \"9\", y1: \"4\", y2: \"20\", key: \"uljnxc\" }]\n];\nconst Italic = createLucideIcon(\"italic\", __iconNode);\n\nexport { __iconNode, Italic as default };\n//# sourceMappingURL=italic.mjs.map\n","/**\n * @license lucide-react v1.23.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71\", key: \"1cjeqo\" }],\n [\"path\", { d: \"M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71\", key: \"19qd67\" }]\n];\nconst Link = createLucideIcon(\"link\", __iconNode);\n\nexport { __iconNode, Link as default };\n//# sourceMappingURL=link.mjs.map\n","/**\n * @license lucide-react v1.23.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M11 5h10\", key: \"1cz7ny\" }],\n [\"path\", { d: \"M11 12h10\", key: \"1438ji\" }],\n [\"path\", { d: \"M11 19h10\", key: \"11t30w\" }],\n [\"path\", { d: \"M4 4h1v5\", key: \"10yrso\" }],\n [\"path\", { d: \"M4 9h2\", key: \"r1h2o0\" }],\n [\"path\", { d: \"M6.5 20H3.4c0-1 2.6-1.925 2.6-3.5a1.5 1.5 0 0 0-2.6-1.02\", key: \"xtkcd5\" }]\n];\nconst ListOrdered = createLucideIcon(\"list-ordered\", __iconNode);\n\nexport { __iconNode, ListOrdered as default };\n//# sourceMappingURL=list-ordered.mjs.map\n","/**\n * @license lucide-react v1.23.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M3 5h.01\", key: \"18ugdj\" }],\n [\"path\", { d: \"M3 12h.01\", key: \"nlz23k\" }],\n [\"path\", { d: \"M3 19h.01\", key: \"noohij\" }],\n [\"path\", { d: \"M8 5h13\", key: \"1pao27\" }],\n [\"path\", { d: \"M8 12h13\", key: \"1za7za\" }],\n [\"path\", { d: \"M8 19h13\", key: \"m83p4d\" }]\n];\nconst List = createLucideIcon(\"list\", __iconNode);\n\nexport { __iconNode, List as default };\n//# sourceMappingURL=list.mjs.map\n","/**\n * @license lucide-react v1.23.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [[\"path\", { d: \"M5 12h14\", key: \"1ays0h\" }]];\nconst Minus = createLucideIcon(\"minus\", __iconNode);\n\nexport { __iconNode, Minus as default };\n//# sourceMappingURL=minus.mjs.map\n","/**\n * @license lucide-react v1.23.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"M16 3a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2 1 1 0 0 1 1 1v1a2 2 0 0 1-2 2 1 1 0 0 0-1 1v2a1 1 0 0 0 1 1 6 6 0 0 0 6-6V5a2 2 0 0 0-2-2z\",\n key: \"rib7q0\"\n }\n ],\n [\n \"path\",\n {\n d: \"M5 3a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2 1 1 0 0 1 1 1v1a2 2 0 0 1-2 2 1 1 0 0 0-1 1v2a1 1 0 0 0 1 1 6 6 0 0 0 6-6V5a2 2 0 0 0-2-2z\",\n key: \"1ymkrd\"\n }\n ]\n];\nconst Quote = createLucideIcon(\"quote\", __iconNode);\n\nexport { __iconNode, Quote as default };\n//# sourceMappingURL=quote.mjs.map\n","/**\n * @license lucide-react v1.23.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"m15 14 5-5-5-5\", key: \"12vg1m\" }],\n [\"path\", { d: \"M20 9H9.5A5.5 5.5 0 0 0 4 14.5A5.5 5.5 0 0 0 9.5 20H13\", key: \"6uklza\" }]\n];\nconst Redo2 = createLucideIcon(\"redo-2\", __iconNode);\n\nexport { __iconNode, Redo2 as default };\n//# sourceMappingURL=redo-2.mjs.map\n","/**\n * @license lucide-react v1.23.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M16 4H9a3 3 0 0 0-2.83 4\", key: \"43sutm\" }],\n [\"path\", { d: \"M14 12a4 4 0 0 1 0 8H6\", key: \"nlfj13\" }],\n [\"line\", { x1: \"4\", x2: \"20\", y1: \"12\", y2: \"12\", key: \"1e0a9i\" }]\n];\nconst Strikethrough = createLucideIcon(\"strikethrough\", __iconNode);\n\nexport { __iconNode, Strikethrough as default };\n//# sourceMappingURL=strikethrough.mjs.map\n","/**\n * @license lucide-react v1.23.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M9 14 4 9l5-5\", key: \"102s5s\" }],\n [\"path\", { d: \"M4 9h10.5a5.5 5.5 0 0 1 5.5 5.5a5.5 5.5 0 0 1-5.5 5.5H11\", key: \"f3b9sd\" }]\n];\nconst Undo2 = createLucideIcon(\"undo-2\", __iconNode);\n\nexport { __iconNode, Undo2 as default };\n//# sourceMappingURL=undo-2.mjs.map\n"],"x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"undo-2-CnH3ScKE.js","names":["__iconNode","__iconNode","__iconNode","__iconNode","__iconNode","__iconNode","__iconNode","__iconNode","__iconNode","__iconNode","__iconNode","__iconNode","__iconNode","__iconNode"],"sources":["../../../../../node_modules/.bun/lucide-react@1.31.0+0f58469d5b3bd39f/node_modules/lucide-react/dist/esm/icons/bold.mjs","../../../../../node_modules/.bun/lucide-react@1.31.0+0f58469d5b3bd39f/node_modules/lucide-react/dist/esm/icons/code-xml.mjs","../../../../../node_modules/.bun/lucide-react@1.31.0+0f58469d5b3bd39f/node_modules/lucide-react/dist/esm/icons/columns-2.mjs","../../../../../node_modules/.bun/lucide-react@1.31.0+0f58469d5b3bd39f/node_modules/lucide-react/dist/esm/icons/heading-1.mjs","../../../../../node_modules/.bun/lucide-react@1.31.0+0f58469d5b3bd39f/node_modules/lucide-react/dist/esm/icons/heading-2.mjs","../../../../../node_modules/.bun/lucide-react@1.31.0+0f58469d5b3bd39f/node_modules/lucide-react/dist/esm/icons/heading-3.mjs","../../../../../node_modules/.bun/lucide-react@1.31.0+0f58469d5b3bd39f/node_modules/lucide-react/dist/esm/icons/italic.mjs","../../../../../node_modules/.bun/lucide-react@1.31.0+0f58469d5b3bd39f/node_modules/lucide-react/dist/esm/icons/link.mjs","../../../../../node_modules/.bun/lucide-react@1.31.0+0f58469d5b3bd39f/node_modules/lucide-react/dist/esm/icons/list-ordered.mjs","../../../../../node_modules/.bun/lucide-react@1.31.0+0f58469d5b3bd39f/node_modules/lucide-react/dist/esm/icons/list.mjs","../../../../../node_modules/.bun/lucide-react@1.31.0+0f58469d5b3bd39f/node_modules/lucide-react/dist/esm/icons/minus.mjs","../../../../../node_modules/.bun/lucide-react@1.31.0+0f58469d5b3bd39f/node_modules/lucide-react/dist/esm/icons/quote.mjs","../../../../../node_modules/.bun/lucide-react@1.31.0+0f58469d5b3bd39f/node_modules/lucide-react/dist/esm/icons/redo-2.mjs","../../../../../node_modules/.bun/lucide-react@1.31.0+0f58469d5b3bd39f/node_modules/lucide-react/dist/esm/icons/strikethrough.mjs","../../../../../node_modules/.bun/lucide-react@1.31.0+0f58469d5b3bd39f/node_modules/lucide-react/dist/esm/icons/undo-2.mjs"],"sourcesContent":["/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\n \"path\",\n { d: \"M6 12h9a4 4 0 0 1 0 8H7a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h7a4 4 0 0 1 0 8\", key: \"mg9rjx\" }\n ]\n];\nconst Bold = createLucideIcon(\"bold\", __iconNode);\n\nexport { __iconNode, Bold as default };\n//# sourceMappingURL=bold.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"m18 16 4-4-4-4\", key: \"1inbqp\" }],\n [\"path\", { d: \"m6 8-4 4 4 4\", key: \"15zrgr\" }],\n [\"path\", { d: \"m14.5 4-5 16\", key: \"e7oirm\" }]\n];\nconst CodeXml = createLucideIcon(\"code-xml\", __iconNode);\n\nexport { __iconNode, CodeXml as default };\n//# sourceMappingURL=code-xml.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"rect\", { width: \"18\", height: \"18\", x: \"3\", y: \"3\", rx: \"2\", key: \"afitv7\" }],\n [\"path\", { d: \"M12 3v18\", key: \"108xh3\" }]\n];\nconst Columns2 = createLucideIcon(\"columns-2\", __iconNode);\n\nexport { __iconNode, Columns2 as default };\n//# sourceMappingURL=columns-2.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M4 12h8\", key: \"17cfdx\" }],\n [\"path\", { d: \"M4 18V6\", key: \"1rz3zl\" }],\n [\"path\", { d: \"M12 18V6\", key: \"zqpxq5\" }],\n [\"path\", { d: \"m17 12 3-2v8\", key: \"1hhhft\" }]\n];\nconst Heading1 = createLucideIcon(\"heading-1\", __iconNode);\n\nexport { __iconNode, Heading1 as default };\n//# sourceMappingURL=heading-1.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M4 12h8\", key: \"17cfdx\" }],\n [\"path\", { d: \"M4 18V6\", key: \"1rz3zl\" }],\n [\"path\", { d: \"M12 18V6\", key: \"zqpxq5\" }],\n [\"path\", { d: \"M21 18h-4c0-4 4-3 4-6 0-1.5-2-2.5-4-1\", key: \"9jr5yi\" }]\n];\nconst Heading2 = createLucideIcon(\"heading-2\", __iconNode);\n\nexport { __iconNode, Heading2 as default };\n//# sourceMappingURL=heading-2.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M4 12h8\", key: \"17cfdx\" }],\n [\"path\", { d: \"M4 18V6\", key: \"1rz3zl\" }],\n [\"path\", { d: \"M12 18V6\", key: \"zqpxq5\" }],\n [\"path\", { d: \"M17.5 10.5c1.7-1 3.5 0 3.5 1.5a2 2 0 0 1-2 2\", key: \"68ncm8\" }],\n [\"path\", { d: \"M17 17.5c2 1.5 4 .3 4-1.5a2 2 0 0 0-2-2\", key: \"1ejuhz\" }]\n];\nconst Heading3 = createLucideIcon(\"heading-3\", __iconNode);\n\nexport { __iconNode, Heading3 as default };\n//# sourceMappingURL=heading-3.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"line\", { x1: \"19\", x2: \"10\", y1: \"4\", y2: \"4\", key: \"15jd3p\" }],\n [\"line\", { x1: \"14\", x2: \"5\", y1: \"20\", y2: \"20\", key: \"bu0au3\" }],\n [\"line\", { x1: \"15\", x2: \"9\", y1: \"4\", y2: \"20\", key: \"uljnxc\" }]\n];\nconst Italic = createLucideIcon(\"italic\", __iconNode);\n\nexport { __iconNode, Italic as default };\n//# sourceMappingURL=italic.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71\", key: \"1cjeqo\" }],\n [\"path\", { d: \"M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71\", key: \"19qd67\" }]\n];\nconst Link = createLucideIcon(\"link\", __iconNode);\n\nexport { __iconNode, Link as default };\n//# sourceMappingURL=link.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M11 5h10\", key: \"1cz7ny\" }],\n [\"path\", { d: \"M11 12h10\", key: \"1438ji\" }],\n [\"path\", { d: \"M11 19h10\", key: \"11t30w\" }],\n [\"path\", { d: \"M4 4h1v5\", key: \"10yrso\" }],\n [\"path\", { d: \"M4 9h2\", key: \"r1h2o0\" }],\n [\"path\", { d: \"M6.5 20H3.4c0-1 2.6-1.925 2.6-3.5a1.5 1.5 0 0 0-2.6-1.02\", key: \"xtkcd5\" }]\n];\nconst ListOrdered = createLucideIcon(\"list-ordered\", __iconNode);\n\nexport { __iconNode, ListOrdered as default };\n//# sourceMappingURL=list-ordered.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M3 5h.01\", key: \"18ugdj\" }],\n [\"path\", { d: \"M3 12h.01\", key: \"nlz23k\" }],\n [\"path\", { d: \"M3 19h.01\", key: \"noohij\" }],\n [\"path\", { d: \"M8 5h13\", key: \"1pao27\" }],\n [\"path\", { d: \"M8 12h13\", key: \"1za7za\" }],\n [\"path\", { d: \"M8 19h13\", key: \"m83p4d\" }]\n];\nconst List = createLucideIcon(\"list\", __iconNode);\n\nexport { __iconNode, List as default };\n//# sourceMappingURL=list.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [[\"path\", { d: \"M5 12h14\", key: \"1ays0h\" }]];\nconst Minus = createLucideIcon(\"minus\", __iconNode);\n\nexport { __iconNode, Minus as default };\n//# sourceMappingURL=minus.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"M16 3a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2 1 1 0 0 1 1 1v1a2 2 0 0 1-2 2 1 1 0 0 0-1 1v2a1 1 0 0 0 1 1 6 6 0 0 0 6-6V5a2 2 0 0 0-2-2z\",\n key: \"rib7q0\"\n }\n ],\n [\n \"path\",\n {\n d: \"M5 3a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2 1 1 0 0 1 1 1v1a2 2 0 0 1-2 2 1 1 0 0 0-1 1v2a1 1 0 0 0 1 1 6 6 0 0 0 6-6V5a2 2 0 0 0-2-2z\",\n key: \"1ymkrd\"\n }\n ]\n];\nconst Quote = createLucideIcon(\"quote\", __iconNode);\n\nexport { __iconNode, Quote as default };\n//# sourceMappingURL=quote.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"m15 14 5-5-5-5\", key: \"12vg1m\" }],\n [\"path\", { d: \"M20 9H9.5A5.5 5.5 0 0 0 4 14.5A5.5 5.5 0 0 0 9.5 20H13\", key: \"6uklza\" }]\n];\nconst Redo2 = createLucideIcon(\"redo-2\", __iconNode);\n\nexport { __iconNode, Redo2 as default };\n//# sourceMappingURL=redo-2.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M16 4H9a3 3 0 0 0-2.83 4\", key: \"43sutm\" }],\n [\"path\", { d: \"M14 12a4 4 0 0 1 0 8H6\", key: \"nlfj13\" }],\n [\"line\", { x1: \"4\", x2: \"20\", y1: \"12\", y2: \"12\", key: \"1e0a9i\" }]\n];\nconst Strikethrough = createLucideIcon(\"strikethrough\", __iconNode);\n\nexport { __iconNode, Strikethrough as default };\n//# sourceMappingURL=strikethrough.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M9 14 4 9l5-5\", key: \"102s5s\" }],\n [\"path\", { d: \"M4 9h10.5a5.5 5.5 0 0 1 5.5 5.5a5.5 5.5 0 0 1-5.5 5.5H11\", key: \"f3b9sd\" }]\n];\nconst Undo2 = createLucideIcon(\"undo-2\", __iconNode);\n\nexport { __iconNode, Undo2 as default };\n//# sourceMappingURL=undo-2.mjs.map\n"],"x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{t as e}from"./createLucideIcon-
|
|
2
|
-
//# sourceMappingURL=upload-
|
|
1
|
+
import{t as e}from"./createLucideIcon-QE2kj6ru.js";var t=e(`arrow-up-down`,[[`path`,{d:`m21 16-4 4-4-4`,key:`f6ql7i`}],[`path`,{d:`M17 20V4`,key:`1ejh1v`}],[`path`,{d:`m3 8 4-4 4 4`,key:`11wl7u`}],[`path`,{d:`M7 4v16`,key:`1glfcx`}]]),n=e(`chevrons-left`,[[`path`,{d:`m11 17-5-5 5-5`,key:`13zhaf`}],[`path`,{d:`m18 17-5-5 5-5`,key:`h8a8et`}]]),r=e(`chevrons-right`,[[`path`,{d:`m6 17 5-5-5-5`,key:`xnjwq`}],[`path`,{d:`m13 17 5-5-5-5`,key:`17xmmf`}]]),i=e(`download`,[[`path`,{d:`M12 15V3`,key:`m9g1x1`}],[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}],[`path`,{d:`m7 10 5 5 5-5`,key:`brsn70`}]]),a=e(`file-braces`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M10 12a1 1 0 0 0-1 1v1a1 1 0 0 1-1 1 1 1 0 0 1 1 1v1a1 1 0 0 0 1 1`,key:`1oajmo`}],[`path`,{d:`M14 18a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1 1 1 0 0 1-1-1v-1a1 1 0 0 0-1-1`,key:`mpwhp6`}]]),o=e(`file-spreadsheet`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M8 13h2`,key:`yr2amv`}],[`path`,{d:`M14 13h2`,key:`un5t4a`}],[`path`,{d:`M8 17h2`,key:`2yhykz`}],[`path`,{d:`M14 17h2`,key:`10kma7`}]]),s=e(`inbox`,[[`polyline`,{points:`22 12 16 12 14 15 10 15 8 12 2 12`,key:`o97t9d`}],[`path`,{d:`M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z`,key:`oot6mr`}]]),c=e(`list-filter`,[[`path`,{d:`M2 5h20`,key:`1fs1ex`}],[`path`,{d:`M6 12h12`,key:`8npq4p`}],[`path`,{d:`M9 19h6`,key:`456am0`}]]),l=e(`sliders-horizontal`,[[`path`,{d:`M10 5H3`,key:`1qgfaw`}],[`path`,{d:`M12 19H3`,key:`yhmn1j`}],[`path`,{d:`M14 3v4`,key:`1sua03`}],[`path`,{d:`M16 17v4`,key:`1q0r14`}],[`path`,{d:`M21 12h-9`,key:`1o4lsq`}],[`path`,{d:`M21 19h-5`,key:`1rlt1p`}],[`path`,{d:`M21 5h-7`,key:`1oszz2`}],[`path`,{d:`M8 10v4`,key:`tgpxqk`}],[`path`,{d:`M8 12H3`,key:`a7s4jb`}]]),u=e(`upload`,[[`path`,{d:`M12 3v12`,key:`1x0j5s`}],[`path`,{d:`m17 8-5-5-5 5`,key:`7q97r8`}],[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}]]);export{o as a,r as c,s as i,n as l,l as n,a as o,c as r,i as s,u as t,t as u};
|
|
2
|
+
//# sourceMappingURL=upload-DrfB-4bU.js.map
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upload-BVhXhZgn.js","names":["__iconNode","__iconNode","__iconNode","__iconNode","__iconNode","__iconNode","__iconNode","__iconNode","__iconNode"],"sources":["../../../../../node_modules/.bun/lucide-react@1.23.0+e14d3f224186685e/node_modules/lucide-react/dist/esm/icons/arrow-up-down.mjs","../../../../../node_modules/.bun/lucide-react@1.23.0+e14d3f224186685e/node_modules/lucide-react/dist/esm/icons/chevrons-left.mjs","../../../../../node_modules/.bun/lucide-react@1.23.0+e14d3f224186685e/node_modules/lucide-react/dist/esm/icons/chevrons-right.mjs","../../../../../node_modules/.bun/lucide-react@1.23.0+e14d3f224186685e/node_modules/lucide-react/dist/esm/icons/download.mjs","../../../../../node_modules/.bun/lucide-react@1.23.0+e14d3f224186685e/node_modules/lucide-react/dist/esm/icons/file-braces.mjs","../../../../../node_modules/.bun/lucide-react@1.23.0+e14d3f224186685e/node_modules/lucide-react/dist/esm/icons/file-spreadsheet.mjs","../../../../../node_modules/.bun/lucide-react@1.23.0+e14d3f224186685e/node_modules/lucide-react/dist/esm/icons/inbox.mjs","../../../../../node_modules/.bun/lucide-react@1.23.0+e14d3f224186685e/node_modules/lucide-react/dist/esm/icons/list-filter.mjs","../../../../../node_modules/.bun/lucide-react@1.23.0+e14d3f224186685e/node_modules/lucide-react/dist/esm/icons/sliders-horizontal.mjs","../../../../../node_modules/.bun/lucide-react@1.23.0+e14d3f224186685e/node_modules/lucide-react/dist/esm/icons/upload.mjs"],"sourcesContent":["/**\n * @license lucide-react v1.23.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"m21 16-4 4-4-4\", key: \"f6ql7i\" }],\n [\"path\", { d: \"M17 20V4\", key: \"1ejh1v\" }],\n [\"path\", { d: \"m3 8 4-4 4 4\", key: \"11wl7u\" }],\n [\"path\", { d: \"M7 4v16\", key: \"1glfcx\" }]\n];\nconst ArrowUpDown = createLucideIcon(\"arrow-up-down\", __iconNode);\n\nexport { __iconNode, ArrowUpDown as default };\n//# sourceMappingURL=arrow-up-down.mjs.map\n","/**\n * @license lucide-react v1.23.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"m11 17-5-5 5-5\", key: \"13zhaf\" }],\n [\"path\", { d: \"m18 17-5-5 5-5\", key: \"h8a8et\" }]\n];\nconst ChevronsLeft = createLucideIcon(\"chevrons-left\", __iconNode);\n\nexport { __iconNode, ChevronsLeft as default };\n//# sourceMappingURL=chevrons-left.mjs.map\n","/**\n * @license lucide-react v1.23.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"m6 17 5-5-5-5\", key: \"xnjwq\" }],\n [\"path\", { d: \"m13 17 5-5-5-5\", key: \"17xmmf\" }]\n];\nconst ChevronsRight = createLucideIcon(\"chevrons-right\", __iconNode);\n\nexport { __iconNode, ChevronsRight as default };\n//# sourceMappingURL=chevrons-right.mjs.map\n","/**\n * @license lucide-react v1.23.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M12 15V3\", key: \"m9g1x1\" }],\n [\"path\", { d: \"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\", key: \"ih7n3h\" }],\n [\"path\", { d: \"m7 10 5 5 5-5\", key: \"brsn70\" }]\n];\nconst Download = createLucideIcon(\"download\", __iconNode);\n\nexport { __iconNode, Download as default };\n//# sourceMappingURL=download.mjs.map\n","/**\n * @license lucide-react v1.23.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z\",\n key: \"1oefj6\"\n }\n ],\n [\"path\", { d: \"M14 2v5a1 1 0 0 0 1 1h5\", key: \"wfsgrz\" }],\n [\n \"path\",\n { d: \"M10 12a1 1 0 0 0-1 1v1a1 1 0 0 1-1 1 1 1 0 0 1 1 1v1a1 1 0 0 0 1 1\", key: \"1oajmo\" }\n ],\n [\n \"path\",\n { d: \"M14 18a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1 1 1 0 0 1-1-1v-1a1 1 0 0 0-1-1\", key: \"mpwhp6\" }\n ]\n];\nconst FileBraces = createLucideIcon(\"file-braces\", __iconNode);\n\nexport { __iconNode, FileBraces as default };\n//# sourceMappingURL=file-braces.mjs.map\n","/**\n * @license lucide-react v1.23.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z\",\n key: \"1oefj6\"\n }\n ],\n [\"path\", { d: \"M14 2v5a1 1 0 0 0 1 1h5\", key: \"wfsgrz\" }],\n [\"path\", { d: \"M8 13h2\", key: \"yr2amv\" }],\n [\"path\", { d: \"M14 13h2\", key: \"un5t4a\" }],\n [\"path\", { d: \"M8 17h2\", key: \"2yhykz\" }],\n [\"path\", { d: \"M14 17h2\", key: \"10kma7\" }]\n];\nconst FileSpreadsheet = createLucideIcon(\"file-spreadsheet\", __iconNode);\n\nexport { __iconNode, FileSpreadsheet as default };\n//# sourceMappingURL=file-spreadsheet.mjs.map\n","/**\n * @license lucide-react v1.23.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"polyline\", { points: \"22 12 16 12 14 15 10 15 8 12 2 12\", key: \"o97t9d\" }],\n [\n \"path\",\n {\n d: \"M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z\",\n key: \"oot6mr\"\n }\n ]\n];\nconst Inbox = createLucideIcon(\"inbox\", __iconNode);\n\nexport { __iconNode, Inbox as default };\n//# sourceMappingURL=inbox.mjs.map\n","/**\n * @license lucide-react v1.23.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M2 5h20\", key: \"1fs1ex\" }],\n [\"path\", { d: \"M6 12h12\", key: \"8npq4p\" }],\n [\"path\", { d: \"M9 19h6\", key: \"456am0\" }]\n];\nconst ListFilter = createLucideIcon(\"list-filter\", __iconNode);\n\nexport { __iconNode, ListFilter as default };\n//# sourceMappingURL=list-filter.mjs.map\n","/**\n * @license lucide-react v1.23.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M10 5H3\", key: \"1qgfaw\" }],\n [\"path\", { d: \"M12 19H3\", key: \"yhmn1j\" }],\n [\"path\", { d: \"M14 3v4\", key: \"1sua03\" }],\n [\"path\", { d: \"M16 17v4\", key: \"1q0r14\" }],\n [\"path\", { d: \"M21 12h-9\", key: \"1o4lsq\" }],\n [\"path\", { d: \"M21 19h-5\", key: \"1rlt1p\" }],\n [\"path\", { d: \"M21 5h-7\", key: \"1oszz2\" }],\n [\"path\", { d: \"M8 10v4\", key: \"tgpxqk\" }],\n [\"path\", { d: \"M8 12H3\", key: \"a7s4jb\" }]\n];\nconst SlidersHorizontal = createLucideIcon(\"sliders-horizontal\", __iconNode);\n\nexport { __iconNode, SlidersHorizontal as default };\n//# sourceMappingURL=sliders-horizontal.mjs.map\n","/**\n * @license lucide-react v1.23.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M12 3v12\", key: \"1x0j5s\" }],\n [\"path\", { d: \"m17 8-5-5-5 5\", key: \"7q97r8\" }],\n [\"path\", { d: \"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\", key: \"ih7n3h\" }]\n];\nconst Upload = createLucideIcon(\"upload\", __iconNode);\n\nexport { __iconNode, Upload as default };\n//# sourceMappingURL=upload.mjs.map\n"],"x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9],"mappings":"mDAeA,IAAM,EAAc,EAAiB,gBAAiBA,CALpD,CAAC,OAAQ,CAAE,EAAG,iBAAkB,IAAK,QAAS,CAAC,EAC/C,CAAC,OAAQ,CAAE,EAAG,WAAY,IAAK,QAAS,CAAC,EACzC,CAAC,OAAQ,CAAE,EAAG,eAAgB,IAAK,QAAS,CAAC,EAC7C,CAAC,OAAQ,CAAE,EAAG,UAAW,IAAK,QAAS,CAAC,CAEYA,CAAU,ECF1D,EAAe,EAAiB,gBAAiBC,CAHrD,CAAC,OAAQ,CAAE,EAAG,iBAAkB,IAAK,QAAS,CAAC,EAC/C,CAAC,OAAQ,CAAE,EAAG,iBAAkB,IAAK,QAAS,CAAC,CAEMA,CAAU,ECA3D,EAAgB,EAAiB,iBAAkBC,CAHvD,CAAC,OAAQ,CAAE,EAAG,gBAAiB,IAAK,OAAQ,CAAC,EAC7C,CAAC,OAAQ,CAAE,EAAG,iBAAkB,IAAK,QAAS,CAAC,CAEQA,CAAU,ECC7D,EAAW,EAAiB,WAAYC,CAJ5C,CAAC,OAAQ,CAAE,EAAG,WAAY,IAAK,QAAS,CAAC,EACzC,CAAC,OAAQ,CAAE,EAAG,4CAA6C,IAAK,QAAS,CAAC,EAC1E,CAAC,OAAQ,CAAE,EAAG,gBAAiB,IAAK,QAAS,CAAC,CAEFA,CAAU,ECalD,EAAa,EAAiB,cAAeC,CAjBjD,CACE,OACA,CACE,EAAG,iHACH,IAAK,QACP,CACF,EACA,CAAC,OAAQ,CAAE,EAAG,0BAA2B,IAAK,QAAS,CAAC,EACxD,CACE,OACA,CAAE,EAAG,qEAAsE,IAAK,QAAS,CAC3F,EACA,CACE,OACA,CAAE,EAAG,uEAAwE,IAAK,QAAS,CAC7F,CAEiDA,CAAU,ECJvD,EAAkB,EAAiB,mBAAoBC,CAb3D,CACE,OACA,CACE,EAAG,iHACH,IAAK,QACP,CACF,EACA,CAAC,OAAQ,CAAE,EAAG,0BAA2B,IAAK,QAAS,CAAC,EACxD,CAAC,OAAQ,CAAE,EAAG,UAAW,IAAK,QAAS,CAAC,EACxC,CAAC,OAAQ,CAAE,EAAG,WAAY,IAAK,QAAS,CAAC,EACzC,CAAC,OAAQ,CAAE,EAAG,UAAW,IAAK,QAAS,CAAC,EACxC,CAAC,OAAQ,CAAE,EAAG,WAAY,IAAK,QAAS,CAAC,CAEkBA,CAAU,ECJjE,EAAQ,EAAiB,QAASC,CATtC,CAAC,WAAY,CAAE,OAAQ,oCAAqC,IAAK,QAAS,CAAC,EAC3E,CACE,OACA,CACE,EAAG,6GACH,IAAK,QACP,CACF,CAEsCA,CAAU,ECL5C,EAAa,EAAiB,cAAeC,CAJjD,CAAC,OAAQ,CAAE,EAAG,UAAW,IAAK,QAAS,CAAC,EACxC,CAAC,OAAQ,CAAE,EAAG,WAAY,IAAK,QAAS,CAAC,EACzC,CAAC,OAAQ,CAAE,EAAG,UAAW,IAAK,QAAS,CAAC,CAESA,CAAU,ECMvD,EAAoB,EAAiB,qBAAsBC,CAV/D,CAAC,OAAQ,CAAE,EAAG,UAAW,IAAK,QAAS,CAAC,EACxC,CAAC,OAAQ,CAAE,EAAG,WAAY,IAAK,QAAS,CAAC,EACzC,CAAC,OAAQ,CAAE,EAAG,UAAW,IAAK,QAAS,CAAC,EACxC,CAAC,OAAQ,CAAE,EAAG,WAAY,IAAK,QAAS,CAAC,EACzC,CAAC,OAAQ,CAAE,EAAG,YAAa,IAAK,QAAS,CAAC,EAC1C,CAAC,OAAQ,CAAE,EAAG,YAAa,IAAK,QAAS,CAAC,EAC1C,CAAC,OAAQ,CAAE,EAAG,WAAY,IAAK,QAAS,CAAC,EACzC,CAAC,OAAQ,CAAE,EAAG,UAAW,IAAK,QAAS,CAAC,EACxC,CAAC,OAAQ,CAAE,EAAG,UAAW,IAAK,QAAS,CAAC,CAEuBA,CAAU,ECNrE,EAAS,EAAiB,SAAU,CAJxC,CAAC,OAAQ,CAAE,EAAG,WAAY,IAAK,QAAS,CAAC,EACzC,CAAC,OAAQ,CAAE,EAAG,gBAAiB,IAAK,QAAS,CAAC,EAC9C,CAAC,OAAQ,CAAE,EAAG,4CAA6C,IAAK,QAAS,CAAC,CAElC,CAAU"}
|
|
1
|
+
{"version":3,"file":"upload-DrfB-4bU.js","names":["__iconNode","__iconNode","__iconNode","__iconNode","__iconNode","__iconNode","__iconNode","__iconNode","__iconNode"],"sources":["../../../../../node_modules/.bun/lucide-react@1.31.0+0f58469d5b3bd39f/node_modules/lucide-react/dist/esm/icons/arrow-up-down.mjs","../../../../../node_modules/.bun/lucide-react@1.31.0+0f58469d5b3bd39f/node_modules/lucide-react/dist/esm/icons/chevrons-left.mjs","../../../../../node_modules/.bun/lucide-react@1.31.0+0f58469d5b3bd39f/node_modules/lucide-react/dist/esm/icons/chevrons-right.mjs","../../../../../node_modules/.bun/lucide-react@1.31.0+0f58469d5b3bd39f/node_modules/lucide-react/dist/esm/icons/download.mjs","../../../../../node_modules/.bun/lucide-react@1.31.0+0f58469d5b3bd39f/node_modules/lucide-react/dist/esm/icons/file-braces.mjs","../../../../../node_modules/.bun/lucide-react@1.31.0+0f58469d5b3bd39f/node_modules/lucide-react/dist/esm/icons/file-spreadsheet.mjs","../../../../../node_modules/.bun/lucide-react@1.31.0+0f58469d5b3bd39f/node_modules/lucide-react/dist/esm/icons/inbox.mjs","../../../../../node_modules/.bun/lucide-react@1.31.0+0f58469d5b3bd39f/node_modules/lucide-react/dist/esm/icons/list-filter.mjs","../../../../../node_modules/.bun/lucide-react@1.31.0+0f58469d5b3bd39f/node_modules/lucide-react/dist/esm/icons/sliders-horizontal.mjs","../../../../../node_modules/.bun/lucide-react@1.31.0+0f58469d5b3bd39f/node_modules/lucide-react/dist/esm/icons/upload.mjs"],"sourcesContent":["/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"m21 16-4 4-4-4\", key: \"f6ql7i\" }],\n [\"path\", { d: \"M17 20V4\", key: \"1ejh1v\" }],\n [\"path\", { d: \"m3 8 4-4 4 4\", key: \"11wl7u\" }],\n [\"path\", { d: \"M7 4v16\", key: \"1glfcx\" }]\n];\nconst ArrowUpDown = createLucideIcon(\"arrow-up-down\", __iconNode);\n\nexport { __iconNode, ArrowUpDown as default };\n//# sourceMappingURL=arrow-up-down.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"m11 17-5-5 5-5\", key: \"13zhaf\" }],\n [\"path\", { d: \"m18 17-5-5 5-5\", key: \"h8a8et\" }]\n];\nconst ChevronsLeft = createLucideIcon(\"chevrons-left\", __iconNode);\n\nexport { __iconNode, ChevronsLeft as default };\n//# sourceMappingURL=chevrons-left.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"m6 17 5-5-5-5\", key: \"xnjwq\" }],\n [\"path\", { d: \"m13 17 5-5-5-5\", key: \"17xmmf\" }]\n];\nconst ChevronsRight = createLucideIcon(\"chevrons-right\", __iconNode);\n\nexport { __iconNode, ChevronsRight as default };\n//# sourceMappingURL=chevrons-right.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M12 15V3\", key: \"m9g1x1\" }],\n [\"path\", { d: \"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\", key: \"ih7n3h\" }],\n [\"path\", { d: \"m7 10 5 5 5-5\", key: \"brsn70\" }]\n];\nconst Download = createLucideIcon(\"download\", __iconNode);\n\nexport { __iconNode, Download as default };\n//# sourceMappingURL=download.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z\",\n key: \"1oefj6\"\n }\n ],\n [\"path\", { d: \"M14 2v5a1 1 0 0 0 1 1h5\", key: \"wfsgrz\" }],\n [\n \"path\",\n { d: \"M10 12a1 1 0 0 0-1 1v1a1 1 0 0 1-1 1 1 1 0 0 1 1 1v1a1 1 0 0 0 1 1\", key: \"1oajmo\" }\n ],\n [\n \"path\",\n { d: \"M14 18a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1 1 1 0 0 1-1-1v-1a1 1 0 0 0-1-1\", key: \"mpwhp6\" }\n ]\n];\nconst FileBraces = createLucideIcon(\"file-braces\", __iconNode);\n\nexport { __iconNode, FileBraces as default };\n//# sourceMappingURL=file-braces.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z\",\n key: \"1oefj6\"\n }\n ],\n [\"path\", { d: \"M14 2v5a1 1 0 0 0 1 1h5\", key: \"wfsgrz\" }],\n [\"path\", { d: \"M8 13h2\", key: \"yr2amv\" }],\n [\"path\", { d: \"M14 13h2\", key: \"un5t4a\" }],\n [\"path\", { d: \"M8 17h2\", key: \"2yhykz\" }],\n [\"path\", { d: \"M14 17h2\", key: \"10kma7\" }]\n];\nconst FileSpreadsheet = createLucideIcon(\"file-spreadsheet\", __iconNode);\n\nexport { __iconNode, FileSpreadsheet as default };\n//# sourceMappingURL=file-spreadsheet.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"polyline\", { points: \"22 12 16 12 14 15 10 15 8 12 2 12\", key: \"o97t9d\" }],\n [\n \"path\",\n {\n d: \"M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z\",\n key: \"oot6mr\"\n }\n ]\n];\nconst Inbox = createLucideIcon(\"inbox\", __iconNode);\n\nexport { __iconNode, Inbox as default };\n//# sourceMappingURL=inbox.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M2 5h20\", key: \"1fs1ex\" }],\n [\"path\", { d: \"M6 12h12\", key: \"8npq4p\" }],\n [\"path\", { d: \"M9 19h6\", key: \"456am0\" }]\n];\nconst ListFilter = createLucideIcon(\"list-filter\", __iconNode);\n\nexport { __iconNode, ListFilter as default };\n//# sourceMappingURL=list-filter.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M10 5H3\", key: \"1qgfaw\" }],\n [\"path\", { d: \"M12 19H3\", key: \"yhmn1j\" }],\n [\"path\", { d: \"M14 3v4\", key: \"1sua03\" }],\n [\"path\", { d: \"M16 17v4\", key: \"1q0r14\" }],\n [\"path\", { d: \"M21 12h-9\", key: \"1o4lsq\" }],\n [\"path\", { d: \"M21 19h-5\", key: \"1rlt1p\" }],\n [\"path\", { d: \"M21 5h-7\", key: \"1oszz2\" }],\n [\"path\", { d: \"M8 10v4\", key: \"tgpxqk\" }],\n [\"path\", { d: \"M8 12H3\", key: \"a7s4jb\" }]\n];\nconst SlidersHorizontal = createLucideIcon(\"sliders-horizontal\", __iconNode);\n\nexport { __iconNode, SlidersHorizontal as default };\n//# sourceMappingURL=sliders-horizontal.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M12 3v12\", key: \"1x0j5s\" }],\n [\"path\", { d: \"m17 8-5-5-5 5\", key: \"7q97r8\" }],\n [\"path\", { d: \"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\", key: \"ih7n3h\" }]\n];\nconst Upload = createLucideIcon(\"upload\", __iconNode);\n\nexport { __iconNode, Upload as default };\n//# sourceMappingURL=upload.mjs.map\n"],"x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as e,n as t}from"./createLucideIcon-QE2kj6ru.js";import{t as n}from"./uuid-DLSnbsz2.js";import{_ as r,a as i,c as a,d as o,l as s,m as c,o as l,p as u,t as d,u as f,v as p,y as m}from"./schemas-ByMQmMCS.js";var h=d([`kpi`,`line`,`area`,`bar`]),g=d([`count`,`sum`,`avg`,`min`,`max`]),_=d([`day`,`week`,`month`,`year`,`all`]);d([`7d`,`30d`,`90d`,`1y`,`all`,`custom`]);var v=d([`half`,`full`]),y=a(`preset`,[o({preset:d([`7d`,`30d`,`90d`,`1y`,`all`])}),o({preset:s(`custom`),from:p(),to:p()})]),b=o({op:d([`divide`,`multiply`,`add`,`subtract`]),value:f().finite()}),x=o({style:d([`number`,`currency`,`percent`]).default(`number`),currency:c().length(3).optional(),decimals:f().int().min(0).max(6).optional(),prefix:c().max(8).optional(),suffix:c().max(8).optional(),compact:l().optional()}),S=o({color:c().regex(/^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6})$/).optional()}),C=o({id:r(),title:c().max(120).default(``),resource:c().min(1),visualisation:h,dateField:c().min(1),step:_,metric:g,field:c().min(1).optional(),groupBy:c().min(1).optional(),topN:f().int().min(1).max(50).default(10),groupByLabelResource:c().min(1).optional(),width:v.default(`half`),filters:u(c(),c()).default({}),quickFilters:i(c()).default([]),timeRange:y,series:u(c(),S).optional(),transform:i(b).max(8).default([]),format:x.optional(),comparePrevious:l().default(!1),groupId:r().optional(),order:f().int().default(0),createdAt:m(),updatedAt:m()}).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`]}),w=o({id:r(),name:c().min(1).max(120),order:f().int().default(0),createdAt:m(),updatedAt:m()}),T=o({version:s(1),charts:i(C),groups:i(w).default([])}),E={version:1,charts:[],groups:[]},D=e(t(),1),O=`modern-admin:dashboard:v1:`,k=`__anon__`,A=new class{load(e){if(typeof window>`u`)return E;try{let t=window.localStorage.getItem(O+(e||k));if(!t)return E;let n=JSON.parse(t),r=T.safeParse(n);return r.success?r.data:E}catch{return E}}save(e,t){if(!(typeof window>`u`))try{window.localStorage.setItem(O+(e||k),JSON.stringify(t))}catch{}}},j=class{client;constructor(e){this.client=e}async load(e){try{return(await this.client.loadDashboard()).dashboard}catch{return E}}async save(e,t){try{await this.client.saveDashboard(t)}catch{}}};function M(e,t=new Date){if(e.preset===`custom`)return{from:e.from,to:e.to};let n=e.preset===`7d`?7:e.preset===`30d`?30:e.preset===`90d`?90:e.preset===`1y`?365:3650,r=new Date(t),i=new Date(t);return i.setDate(i.getDate()-n),{from:N(i),to:N(r)}}var N=e=>e.toISOString().slice(0,10),P=new Set;function F(){for(let e of P)try{e()}catch{}}function I(e){let{userId:t,store:r=A}=e,[i,a]=(0,D.useState)([]),[o,s]=(0,D.useState)([]),[c,l]=(0,D.useState)(!0),[u,d]=(0,D.useState)(0);(0,D.useEffect)(()=>{if(!t){a([]),l(!1);return}let e=!1;return l(!0),Promise.resolve(r.load(t)).then(t=>{e||(a(t.charts),s([...t.groups].sort(L)),l(!1))}),()=>{e=!0}},[t,r,u]),(0,D.useEffect)(()=>{let e=()=>d(e=>e+1);return P.add(e),()=>{P.delete(e)}},[]);let f=(0,D.useCallback)((e,n)=>{a(e),s([...n].sort(L)),t&&Promise.resolve(r.save(t,{version:1,charts:e,groups:n}))},[t,r]);return{charts:i,groups:o,isLoading:c,addChart:(0,D.useCallback)(e=>{let t=new Date().toISOString(),r=e.groupId??o[0]?.id,a={...e,id:n(),title:e.title??``,filters:e.filters??{},...r?{groupId:r}:{},createdAt:t,updatedAt:t};f([...i,a],o)},[i,o,f]),updateChart:(0,D.useCallback)((e,t)=>{f(i.map(n=>n.id===e?{...n,...t,id:e,title:t.title??``,filters:t.filters??{},createdAt:n.createdAt,updatedAt:new Date().toISOString()}:n),o)},[i,o,f]),removeChart:(0,D.useCallback)(e=>{f(i.filter(t=>t.id!==e),o)},[i,o,f]),addGroup:(0,D.useCallback)(e=>{let t=new Date().toISOString(),r=n(),a={id:r,name:e.name,order:e.order??o.length,createdAt:t,updatedAt:t},s=o.length===0?i.map(e=>e.groupId?e:{...e,groupId:r,updatedAt:t}):i;return f(s,[...o,a]),r},[i,o,f]),updateGroup:(0,D.useCallback)((e,t)=>{let n=new Date().toISOString();f(i,o.map(r=>r.id===e?{...r,...t.name===void 0?{}:{name:t.name},...t.order===void 0?{}:{order:t.order},updatedAt:n}:r))},[i,o,f]),removeGroup:(0,D.useCallback)(e=>{f(i.filter(t=>t.groupId!==e),o.filter(t=>t.id!==e))},[i,o,f])}}function L(e,t){return e.order===t.order?e.createdAt.localeCompare(t.createdAt):e.order-t.order}export{C as a,I as i,F as n,M as r,j as t};
|
|
2
|
+
//# sourceMappingURL=use-dashboard-charts-D7-ctwCE.js.map
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-dashboard-charts-Cr3OUSL5.js","names":[],"sources":["../../../../core/src/dashboard/store.ts","../../../../react/src/use-dashboard-charts.ts"],"sourcesContent":["// Dashboard / chart-builder schemas and storage port.\n//\n// Source of truth for the on-disk shape of saved dashboards. Both the\n// frontend (localStorage default) and any future server-side store\n// implement the same `IDashboardStore` interface, so the UI is agnostic\n// to where the data actually lives.\n\nimport { z } from 'zod'\n\n// Pie removed in Phase 10 — time-series first means category-only charts\n// don't fit the model.\nexport const chartVisualisationZ = z.enum(['kpi', 'line', 'area', 'bar'])\nexport type ChartVisualisation = z.infer<typeof chartVisualisationZ>\n\nexport const aggregationOpZ = z.enum(['count', 'sum', 'avg', 'min', 'max'])\nexport type AggregationOpName = z.infer<typeof aggregationOpZ>\n\n// `'all'` collapses the whole window into one bucket (KPI mode).\nexport const aggregationStepZ = z.enum(['day', 'week', 'month', 'year', 'all'])\nexport type AggregationStep = z.infer<typeof aggregationStepZ>\n\nexport const timeRangePresetZ = z.enum(['7d', '30d', '90d', '1y', 'all', 'custom'])\nexport type TimeRangePreset = z.infer<typeof timeRangePresetZ>\n\n/** Tile width on the dashboard grid. `'half'` = 1 of 2 columns at md+, `'full'` = full row. */\nexport const chartWidthZ = z.enum(['half', 'full'])\nexport type ChartWidth = z.infer<typeof chartWidthZ>\n\n/**\n * Time range stored on a chart. Presets resolve to concrete from/to at\n * render time so cards always reflect \"now\" without re-saving.\n */\nexport const timeRangeZ = z.discriminatedUnion('preset', [\n z.object({ preset: z.enum(['7d', '30d', '90d', '1y', 'all']) }),\n z.object({\n preset: z.literal('custom'),\n from: z.iso.date(),\n to: z.iso.date(),\n }),\n])\nexport type TimeRange = z.infer<typeof timeRangeZ>\n\n/**\n * One step of the presentation-only value pipeline applied client-side\n * before charting (so axis, tooltip and KPI values agree), e.g.\n * `{ op: 'divide', value: 100 }` to show cents as dollars.\n */\nexport const chartTransformStepZ = z.object({\n op: z.enum(['divide', 'multiply', 'add', 'subtract']),\n value: z.number().finite(),\n})\nexport type ChartTransformStep = z.infer<typeof chartTransformStepZ>\n\n/**\n * Display formatting applied at render time via `Intl.NumberFormat`.\n * Note: `percent` follows Intl semantics (0.42 → \"42%\"). `compact`\n * abbreviates large values (12.5k / 1.2M).\n */\nexport const chartFormatZ = z.object({\n style: z.enum(['number', 'currency', 'percent']).default('number'),\n /** ISO 4217 code; render layer falls back to 'USD' when absent. */\n currency: z.string().length(3).optional(),\n decimals: z.number().int().min(0).max(6).optional(),\n prefix: z.string().max(8).optional(),\n suffix: z.string().max(8).optional(),\n compact: z.boolean().optional(),\n})\nexport type ChartFormat = z.infer<typeof chartFormatZ>\n\n/**\n * Per-series style overrides, keyed by the stable series key\n * (`__total__`, a groupBy value, `__other__`, …) — never by display label.\n * Absent series fall back to the palette color for their index.\n */\nexport const seriesStyleZ = z.object({\n color: z\n .string()\n .regex(/^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6})$/)\n .optional(),\n})\nexport type SeriesStyle = z.infer<typeof seriesStyleZ>\n\nexport const chartDefZ = z\n .object({\n id: z.uuid(),\n title: z.string().max(120).default(''),\n resource: z.string().min(1),\n visualisation: chartVisualisationZ,\n /** Property path of the date/datetime column used for X-axis bucketing. */\n dateField: z.string().min(1),\n /** Time bucket granularity. KPI charts always use `'all'`. */\n step: aggregationStepZ,\n metric: aggregationOpZ,\n /** Required for non-count metrics. */\n field: z.string().min(1).optional(),\n /** Optional secondary breakdown — produces one series per distinct value. */\n groupBy: z.string().min(1).optional(),\n /** Maximum series count for `groupBy`-charts; rest collapses to \"other\". */\n topN: z.number().int().min(1).max(50).default(10),\n /**\n * When `groupBy` produces FK ids (reference property), the analytics\n * endpoint resolves them to human-readable titles via `findMany` on this\n * resource id. Auto-set by the chart builder when it detects a reference\n * property in the `groupBy` selector.\n */\n groupByLabelResource: z.string().min(1).optional(),\n width: chartWidthZ.default('half'),\n filters: z.record(z.string(), z.string()).default({}),\n /**\n * Property paths exposed as \"quick filters\" above the chart on the\n * dashboard tile. Their values are taken from `filters` but the widget\n * lets the user tweak them inline and apply via a dedicated Apply button.\n */\n quickFilters: z.array(z.string()).default([]),\n timeRange: timeRangeZ,\n /** Per-series style overrides keyed by stable series key. */\n series: z.record(z.string(), seriesStyleZ).optional(),\n /** Presentation-only value pipeline, applied in order before charting. */\n transform: z.array(chartTransformStepZ).max(8).default([]),\n /** Display number format for axis / tooltip / KPI values. */\n format: chartFormatZ.optional(),\n /**\n * Overlay the equal-length preceding window as a dashed series and show\n * the period-over-period delta next to the title. Only honoured for\n * charts without `groupBy` (top-N keys are not stable across windows).\n */\n comparePrevious: z.boolean().default(false),\n /**\n * Optional group membership. `undefined` means the chart is not assigned\n * to any group yet — when at least one group exists, ungrouped charts\n * are bucketed into the first group (by `order`) at display time.\n */\n groupId: z.uuid().optional(),\n /** Sort key within a group; lower numbers come first. Defaults to 0. */\n order: z.number().int().default(0),\n createdAt: z.iso.datetime(),\n updatedAt: z.iso.datetime(),\n })\n .refine((c) => c.metric === 'count' || !!c.field, {\n message: 'field is required when metric is not count',\n path: ['field'],\n })\n .refine((c) => c.visualisation !== 'kpi' || c.step === 'all', {\n message: \"KPI charts must use step 'all'\",\n path: ['step'],\n })\n .refine((c) => c.visualisation === 'kpi' || c.step !== 'all', {\n message: \"non-KPI charts cannot use step 'all'\",\n path: ['step'],\n })\n\nexport type ChartDef = z.infer<typeof chartDefZ>\nexport type ChartDefInput = z.input<typeof chartDefZ>\n\n/**\n * Group of charts on the dashboard. Groups are rendered as tabs above the\n * charts grid. When the user creates the very first group, all existing\n * (ungrouped) charts are auto-assigned to it.\n */\nexport const chartGroupZ = z.object({\n id: z.uuid(),\n name: z.string().min(1).max(120),\n /** Sort key for the tab strip; lower numbers come first. */\n order: z.number().int().default(0),\n createdAt: z.iso.datetime(),\n updatedAt: z.iso.datetime(),\n})\nexport type ChartGroup = z.infer<typeof chartGroupZ>\nexport type ChartGroupInput = z.input<typeof chartGroupZ>\n\nexport const dashboardBlobZ = z.object({\n version: z.literal(1),\n charts: z.array(chartDefZ),\n /** Optional — legacy blobs without `groups` parse cleanly via `.default([])`. */\n groups: z.array(chartGroupZ).default([]),\n})\nexport type DashboardBlob = z.infer<typeof dashboardBlobZ>\n\nexport const EMPTY_DASHBOARD: DashboardBlob = { version: 1, charts: [], groups: [] }\n\n/**\n * Per-user dashboard storage port. Default implementation in\n * `@modern-admin/react` is browser-localStorage; a server-side store\n * implementing this same shape can be plugged in later without UI changes.\n */\nexport interface IDashboardStore {\n load(userId: string): Promise<DashboardBlob> | DashboardBlob\n\n save(userId: string, blob: DashboardBlob): Promise<void> | void\n}\n","import { useCallback, useEffect, useState } from 'react'\nimport {\n EMPTY_DASHBOARD,\n dashboardBlobZ,\n uuidv7,\n type ChartDef,\n type ChartDefInput,\n type ChartGroup,\n type DashboardBlob,\n type IDashboardStore,\n type TimeRange,\n} from '@modern-admin/core'\nimport type { AdminClient, TimeSeriesMetric, TimeSeriesStep } from './client.js'\n\nconst STORAGE_PREFIX = 'modern-admin:dashboard:v1:'\nconst ANON_USER = '__anon__'\n\n/**\n * localStorage-backed `IDashboardStore`. Persists one blob per user under\n * `modern-admin:dashboard:v1:<userId>` so multiple admins on the same\n * browser do not see each other's charts.\n *\n * SSR-safe: `typeof window` checks gate every access; on the server load()\n * returns `EMPTY_DASHBOARD` and save() is a no-op.\n */\nexport class LocalStorageDashboardStore implements IDashboardStore {\n load(userId: string): DashboardBlob {\n if (typeof window === 'undefined') return EMPTY_DASHBOARD\n try {\n const raw = window.localStorage.getItem(STORAGE_PREFIX + (userId || ANON_USER))\n if (!raw) return EMPTY_DASHBOARD\n const parsed = JSON.parse(raw) as unknown\n const result = dashboardBlobZ.safeParse(parsed)\n // Legacy bare-array shapes and other malformed blobs reset to empty\n // rather than crashing the dashboard.\n return result.success ? result.data : EMPTY_DASHBOARD\n } catch {\n return EMPTY_DASHBOARD\n }\n }\n\n save(userId: string, blob: DashboardBlob): void {\n if (typeof window === 'undefined') return\n try {\n window.localStorage.setItem(\n STORAGE_PREFIX + (userId || ANON_USER),\n JSON.stringify(blob),\n )\n } catch {\n // Quota exceeded / private mode — silently drop.\n }\n }\n}\n\nconst defaultStore = new LocalStorageDashboardStore()\n\n/**\n * Server-backed `IDashboardStore` that persists per-user dashboard layouts\n * via `GET/PUT /admin/api/dashboard`. Requires `configStore` to be wired in\n * `ModernAdminModule.forRoot()`. Falls back gracefully when the endpoint\n * returns an empty dashboard (e.g. first load or missing configStore).\n */\nexport class ServerDashboardStore implements IDashboardStore {\n constructor(private readonly client: AdminClient) {}\n\n async load(_userId: string): Promise<DashboardBlob> {\n try {\n const res = await this.client.loadDashboard()\n return res.dashboard\n } catch {\n return EMPTY_DASHBOARD\n }\n }\n\n async save(_userId: string, blob: DashboardBlob): Promise<void> {\n try {\n await this.client.saveDashboard(blob)\n } catch {\n // Server unavailable — silently drop. The next save attempt will retry.\n }\n }\n}\n\n// ─── Time-range helpers ──────────────────────────────────────────────────\n\n/**\n * Resolve a `TimeRange` (preset or explicit custom) into concrete\n * inclusive `from`/`to` `YYYY-MM-DD` strings. Presets are anchored to\n * `now` so cards always reflect \"the last N days\" without re-saving.\n *\n * `'all'` resolves to a 10-year window ending at `now`, which is wide\n * enough for any realistic admin dataset while keeping the server's\n * date-range constraint satisfied.\n */\nexport function resolveRange(\n range: TimeRange,\n now: Date = new Date(),\n): { from: string; to: string } {\n if (range.preset === 'custom') return { from: range.from, to: range.to }\n const days =\n range.preset === '7d' ? 7\n : range.preset === '30d' ? 30\n : range.preset === '90d' ? 90\n : range.preset === '1y' ? 365\n : 3650 // 'all' → 10 years\n const to = new Date(now)\n const from = new Date(now)\n from.setDate(from.getDate() - days)\n return { from: ymd(from), to: ymd(to) }\n}\n\n/**\n * Equal-length window immediately preceding `[from, to]`.\n */\nexport function previousRangeOf(\n range: { from: string; to: string },\n): { from: string; to: string } | null {\n const f = new Date(range.from).getTime()\n const t = new Date(range.to).getTime()\n if (isNaN(f) || isNaN(t) || t < f) return null\n const span = t - f\n const prevTo = new Date(f - 86_400_000)\n const prevFrom = new Date(prevTo.getTime() - span)\n return { from: ymd(prevFrom), to: ymd(prevTo) }\n}\n\nconst ymd = (d: Date): string => d.toISOString().slice(0, 10)\n\n// ─── Reload signal ───────────────────────────────────────────────────────\n\n/**\n * Module-scoped pub/sub so external code (e.g. AI assistant widget after a\n * chart mutation) can force the dashboard to reload its blob from the store\n * without lifting state up. Subscribers are notified asynchronously.\n */\nconst dashboardReloadListeners = new Set<() => void>()\n\n/** Signal every mounted `useDashboardCharts` hook to reload from its store. */\nexport function emitDashboardReload(): void {\n for (const listener of dashboardReloadListeners) {\n try {\n listener()\n } catch {\n // Listener errors must not block sibling listeners.\n }\n }\n}\n\n// ─── Hook ────────────────────────────────────────────────────────────────\n\nexport interface UseDashboardChartsOptions {\n /** Used to scope the storage key. `null`/`undefined` defers loading. */\n userId: string | null | undefined\n /** Override the default localStorage store (e.g. server-backed in future). */\n store?: IDashboardStore\n}\n\nexport interface UseDashboardChartsResult {\n charts: ChartDef[]\n /** Groups defined on the dashboard, sorted by `order` ascending. */\n groups: ChartGroup[]\n /** True until the initial load has resolved (relevant for async stores). */\n isLoading: boolean\n /** Append a new chart. Auto-assigns to the first group when groups exist and no `groupId` is provided. */\n addChart(input: ChartDefInput): void\n updateChart(id: string, input: ChartDefInput): void\n removeChart(id: string): void\n /**\n * Create a new group. When this is the very first group, every existing\n * (ungrouped) chart is moved into it so the user keeps the same view.\n * Returns the new group id so callers can switch to it.\n */\n addGroup(input: { name: string; order?: number }): string\n updateGroup(id: string, patch: { name?: string; order?: number }): void\n /** Remove a group AND every chart assigned to it. */\n removeGroup(id: string): void\n}\n\n/**\n * Per-user dashboard chart registry backed by `IDashboardStore` (default:\n * `LocalStorageDashboardStore`). When `userId` is null/undefined the hook\n * returns an empty list and ignores writes — used while\n * `useCurrentUser()` is still loading.\n */\nexport function useDashboardCharts(\n options: UseDashboardChartsOptions,\n): UseDashboardChartsResult {\n const { userId, store = defaultStore } = options\n const [charts, setCharts] = useState<ChartDef[]>([])\n const [groups, setGroups] = useState<ChartGroup[]>([])\n const [isLoading, setIsLoading] = useState(true)\n // Bumping this counter re-runs the load effect; used by external\n // `emitDashboardReload()` callers (e.g. AI assistant widget) so the hook\n // can pick up changes other actors made to the underlying store.\n const [reloadTick, setReloadTick] = useState(0)\n\n // Reload whenever `userId` flips (login / logout / switch) or an external\n // reload is signalled.\n useEffect(() => {\n if (!userId) {\n setCharts([])\n setIsLoading(false)\n return\n }\n let cancelled = false\n setIsLoading(true)\n Promise.resolve(store.load(userId)).then((blob) => {\n if (cancelled) return\n setCharts(blob.charts)\n setGroups([...blob.groups].sort(byOrderThenCreated))\n setIsLoading(false)\n })\n return () => {\n cancelled = true\n }\n }, [userId, store, reloadTick])\n\n // Subscribe to module-scoped reload signal.\n useEffect(() => {\n const listener = (): void => setReloadTick((tick) => tick + 1)\n dashboardReloadListeners.add(listener)\n return () => {\n dashboardReloadListeners.delete(listener)\n }\n }, [])\n\n // Single persist that writes BOTH charts and groups so a partial update\n // never strands one in localStorage while overwriting the other.\n const persist = useCallback(\n (nextCharts: ChartDef[], nextGroups: ChartGroup[]): void => {\n setCharts(nextCharts)\n setGroups([...nextGroups].sort(byOrderThenCreated))\n if (!userId) return\n void Promise.resolve(\n store.save(userId, { version: 1, charts: nextCharts, groups: nextGroups }),\n )\n },\n [userId, store],\n )\n\n const addChart = useCallback(\n (input: ChartDefInput): void => {\n const now = new Date().toISOString()\n // When groups exist and the caller didn't pick one, fall back to the\n // first-ordered group so the new chart is visible somewhere.\n const fallbackGroupId = input.groupId ?? groups[0]?.id\n const def = {\n ...input,\n id: uuidv7(),\n title: input.title ?? '',\n filters: input.filters ?? {},\n ...(fallbackGroupId ? { groupId: fallbackGroupId } : {}),\n createdAt: now,\n updatedAt: now,\n } as ChartDef\n persist([...charts, def], groups)\n },\n [charts, groups, persist],\n )\n\n const updateChart = useCallback(\n (id: string, input: ChartDefInput): void => {\n persist(\n charts.map((c) =>\n c.id === id\n ? ({\n ...c,\n ...input,\n id,\n title: input.title ?? '',\n filters: input.filters ?? {},\n createdAt: c.createdAt,\n updatedAt: new Date().toISOString(),\n } as ChartDef)\n : c,\n ),\n groups,\n )\n },\n [charts, groups, persist],\n )\n\n const removeChart = useCallback(\n (id: string): void => {\n persist(charts.filter((c) => c.id !== id), groups)\n },\n [charts, groups, persist],\n )\n\n const addGroup = useCallback(\n (input: { name: string; order?: number }): string => {\n const now = new Date().toISOString()\n const id = uuidv7()\n const next: ChartGroup = {\n id,\n name: input.name,\n order: input.order ?? groups.length,\n createdAt: now,\n updatedAt: now,\n }\n // First-group rule: existing ungrouped charts join this group so the\n // user does not lose their current dashboard view.\n const isFirstGroup = groups.length === 0\n const nextCharts = isFirstGroup\n ? charts.map((c) => (c.groupId ? c : { ...c, groupId: id, updatedAt: now }))\n : charts\n persist(nextCharts, [...groups, next])\n return id\n },\n [charts, groups, persist],\n )\n\n const updateGroup = useCallback(\n (id: string, patch: { name?: string; order?: number }): void => {\n const now = new Date().toISOString()\n persist(\n charts,\n groups.map((g) =>\n g.id === id\n ? {\n ...g,\n ...(patch.name !== undefined ? { name: patch.name } : {}),\n ...(patch.order !== undefined ? { order: patch.order } : {}),\n updatedAt: now,\n }\n : g,\n ),\n )\n },\n [charts, groups, persist],\n )\n\n const removeGroup = useCallback(\n (id: string): void => {\n // Cascading delete: every chart assigned to the group disappears with it.\n persist(charts.filter((c) => c.groupId !== id), groups.filter((g) => g.id !== id))\n },\n [charts, groups, persist],\n )\n\n return {\n charts,\n groups,\n isLoading,\n addChart,\n updateChart,\n removeChart,\n addGroup,\n updateGroup,\n removeGroup,\n }\n}\n\n/** Stable sort: by `order` ascending, then by `createdAt` for tie-breaking. */\nfunction byOrderThenCreated(a: { order: number; createdAt: string }, b: { order: number; createdAt: string }): number {\n if (a.order !== b.order) return a.order - b.order\n return a.createdAt.localeCompare(b.createdAt)\n}\n\n// Re-export types from client for convenience so consumers import from one place.\nexport type { TimeSeriesMetric, TimeSeriesStep }\nexport type { ChartDef, ChartDefInput, ChartGroup } from '@modern-admin/core'\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"use-dashboard-charts-D7-ctwCE.js","names":[],"sources":["../../../../core/src/dashboard/store.ts","../../../../react/src/use-dashboard-charts.ts"],"sourcesContent":["// Dashboard / chart-builder schemas and storage port.\n//\n// Source of truth for the on-disk shape of saved dashboards. Both the\n// frontend (localStorage default) and any future server-side store\n// implement the same `IDashboardStore` interface, so the UI is agnostic\n// to where the data actually lives.\n\nimport { z } from 'zod'\n\n// Pie removed in Phase 10 — time-series first means category-only charts\n// don't fit the model.\nexport const chartVisualisationZ = z.enum(['kpi', 'line', 'area', 'bar'])\nexport type ChartVisualisation = z.infer<typeof chartVisualisationZ>\n\nexport const aggregationOpZ = z.enum(['count', 'sum', 'avg', 'min', 'max'])\nexport type AggregationOpName = z.infer<typeof aggregationOpZ>\n\n// `'all'` collapses the whole window into one bucket (KPI mode).\nexport const aggregationStepZ = z.enum(['day', 'week', 'month', 'year', 'all'])\nexport type AggregationStep = z.infer<typeof aggregationStepZ>\n\nexport const timeRangePresetZ = z.enum(['7d', '30d', '90d', '1y', 'all', 'custom'])\nexport type TimeRangePreset = z.infer<typeof timeRangePresetZ>\n\n/** Tile width on the dashboard grid. `'half'` = 1 of 2 columns at md+, `'full'` = full row. */\nexport const chartWidthZ = z.enum(['half', 'full'])\nexport type ChartWidth = z.infer<typeof chartWidthZ>\n\n/**\n * Time range stored on a chart. Presets resolve to concrete from/to at\n * render time so cards always reflect \"now\" without re-saving.\n */\nexport const timeRangeZ = z.discriminatedUnion('preset', [\n z.object({ preset: z.enum(['7d', '30d', '90d', '1y', 'all']) }),\n z.object({\n preset: z.literal('custom'),\n from: z.iso.date(),\n to: z.iso.date(),\n }),\n])\nexport type TimeRange = z.infer<typeof timeRangeZ>\n\n/**\n * One step of the presentation-only value pipeline applied client-side\n * before charting (so axis, tooltip and KPI values agree), e.g.\n * `{ op: 'divide', value: 100 }` to show cents as dollars.\n */\nexport const chartTransformStepZ = z.object({\n op: z.enum(['divide', 'multiply', 'add', 'subtract']),\n value: z.number().finite(),\n})\nexport type ChartTransformStep = z.infer<typeof chartTransformStepZ>\n\n/**\n * Display formatting applied at render time via `Intl.NumberFormat`.\n * Note: `percent` follows Intl semantics (0.42 → \"42%\"). `compact`\n * abbreviates large values (12.5k / 1.2M).\n */\nexport const chartFormatZ = z.object({\n style: z.enum(['number', 'currency', 'percent']).default('number'),\n /** ISO 4217 code; render layer falls back to 'USD' when absent. */\n currency: z.string().length(3).optional(),\n decimals: z.number().int().min(0).max(6).optional(),\n prefix: z.string().max(8).optional(),\n suffix: z.string().max(8).optional(),\n compact: z.boolean().optional(),\n})\nexport type ChartFormat = z.infer<typeof chartFormatZ>\n\n/**\n * Per-series style overrides, keyed by the stable series key\n * (`__total__`, a groupBy value, `__other__`, …) — never by display label.\n * Absent series fall back to the palette color for their index.\n */\nexport const seriesStyleZ = z.object({\n color: z\n .string()\n .regex(/^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6})$/)\n .optional(),\n})\nexport type SeriesStyle = z.infer<typeof seriesStyleZ>\n\nexport const chartDefZ = z\n .object({\n id: z.uuid(),\n title: z.string().max(120).default(''),\n resource: z.string().min(1),\n visualisation: chartVisualisationZ,\n /** Property path of the date/datetime column used for X-axis bucketing. */\n dateField: z.string().min(1),\n /** Time bucket granularity. KPI charts always use `'all'`. */\n step: aggregationStepZ,\n metric: aggregationOpZ,\n /** Required for non-count metrics. */\n field: z.string().min(1).optional(),\n /** Optional secondary breakdown — produces one series per distinct value. */\n groupBy: z.string().min(1).optional(),\n /** Maximum series count for `groupBy`-charts; rest collapses to \"other\". */\n topN: z.number().int().min(1).max(50).default(10),\n /**\n * When `groupBy` produces FK ids (reference property), the analytics\n * endpoint resolves them to human-readable titles via `findMany` on this\n * resource id. Auto-set by the chart builder when it detects a reference\n * property in the `groupBy` selector.\n */\n groupByLabelResource: z.string().min(1).optional(),\n width: chartWidthZ.default('half'),\n filters: z.record(z.string(), z.string()).default({}),\n /**\n * Property paths exposed as \"quick filters\" above the chart on the\n * dashboard tile. Their values are taken from `filters` but the widget\n * lets the user tweak them inline and apply via a dedicated Apply button.\n */\n quickFilters: z.array(z.string()).default([]),\n timeRange: timeRangeZ,\n /** Per-series style overrides keyed by stable series key. */\n series: z.record(z.string(), seriesStyleZ).optional(),\n /** Presentation-only value pipeline, applied in order before charting. */\n transform: z.array(chartTransformStepZ).max(8).default([]),\n /** Display number format for axis / tooltip / KPI values. */\n format: chartFormatZ.optional(),\n /**\n * Overlay the equal-length preceding window as a dashed series and show\n * the period-over-period delta next to the title. Only honoured for\n * charts without `groupBy` (top-N keys are not stable across windows).\n */\n comparePrevious: z.boolean().default(false),\n /**\n * Optional group membership. `undefined` means the chart is not assigned\n * to any group yet — when at least one group exists, ungrouped charts\n * are bucketed into the first group (by `order`) at display time.\n */\n groupId: z.uuid().optional(),\n /** Sort key within a group; lower numbers come first. Defaults to 0. */\n order: z.number().int().default(0),\n createdAt: z.iso.datetime(),\n updatedAt: z.iso.datetime(),\n })\n .refine((c) => c.metric === 'count' || !!c.field, {\n message: 'field is required when metric is not count',\n path: ['field'],\n })\n .refine((c) => c.visualisation !== 'kpi' || c.step === 'all', {\n message: \"KPI charts must use step 'all'\",\n path: ['step'],\n })\n .refine((c) => c.visualisation === 'kpi' || c.step !== 'all', {\n message: \"non-KPI charts cannot use step 'all'\",\n path: ['step'],\n })\n\nexport type ChartDef = z.infer<typeof chartDefZ>\nexport type ChartDefInput = z.input<typeof chartDefZ>\n\n/**\n * Group of charts on the dashboard. Groups are rendered as tabs above the\n * charts grid. When the user creates the very first group, all existing\n * (ungrouped) charts are auto-assigned to it.\n */\nexport const chartGroupZ = z.object({\n id: z.uuid(),\n name: z.string().min(1).max(120),\n /** Sort key for the tab strip; lower numbers come first. */\n order: z.number().int().default(0),\n createdAt: z.iso.datetime(),\n updatedAt: z.iso.datetime(),\n})\nexport type ChartGroup = z.infer<typeof chartGroupZ>\nexport type ChartGroupInput = z.input<typeof chartGroupZ>\n\nexport const dashboardBlobZ = z.object({\n version: z.literal(1),\n charts: z.array(chartDefZ),\n /** Optional — legacy blobs without `groups` parse cleanly via `.default([])`. */\n groups: z.array(chartGroupZ).default([]),\n})\nexport type DashboardBlob = z.infer<typeof dashboardBlobZ>\n\nexport const EMPTY_DASHBOARD: DashboardBlob = { version: 1, charts: [], groups: [] }\n\n/**\n * Per-user dashboard storage port. Default implementation in\n * `@modern-admin/react` is browser-localStorage; a server-side store\n * implementing this same shape can be plugged in later without UI changes.\n */\nexport interface IDashboardStore {\n load(userId: string): Promise<DashboardBlob> | DashboardBlob\n\n save(userId: string, blob: DashboardBlob): Promise<void> | void\n}\n","import { useCallback, useEffect, useState } from 'react'\nimport {\n EMPTY_DASHBOARD,\n dashboardBlobZ,\n uuidv7,\n type ChartDef,\n type ChartDefInput,\n type ChartGroup,\n type DashboardBlob,\n type IDashboardStore,\n type TimeRange,\n} from '@modern-admin/core'\nimport type { AdminClient, TimeSeriesMetric, TimeSeriesStep } from './client.js'\n\nconst STORAGE_PREFIX = 'modern-admin:dashboard:v1:'\nconst ANON_USER = '__anon__'\n\n/**\n * localStorage-backed `IDashboardStore`. Persists one blob per user under\n * `modern-admin:dashboard:v1:<userId>` so multiple admins on the same\n * browser do not see each other's charts.\n *\n * SSR-safe: `typeof window` checks gate every access; on the server load()\n * returns `EMPTY_DASHBOARD` and save() is a no-op.\n */\nexport class LocalStorageDashboardStore implements IDashboardStore {\n load(userId: string): DashboardBlob {\n if (typeof window === 'undefined') return EMPTY_DASHBOARD\n try {\n const raw = window.localStorage.getItem(STORAGE_PREFIX + (userId || ANON_USER))\n if (!raw) return EMPTY_DASHBOARD\n const parsed = JSON.parse(raw) as unknown\n const result = dashboardBlobZ.safeParse(parsed)\n // Legacy bare-array shapes and other malformed blobs reset to empty\n // rather than crashing the dashboard.\n return result.success ? result.data : EMPTY_DASHBOARD\n } catch {\n return EMPTY_DASHBOARD\n }\n }\n\n save(userId: string, blob: DashboardBlob): void {\n if (typeof window === 'undefined') return\n try {\n window.localStorage.setItem(\n STORAGE_PREFIX + (userId || ANON_USER),\n JSON.stringify(blob),\n )\n } catch {\n // Quota exceeded / private mode — silently drop.\n }\n }\n}\n\nconst defaultStore = new LocalStorageDashboardStore()\n\n/**\n * Server-backed `IDashboardStore` that persists per-user dashboard layouts\n * via `GET/PUT /admin/api/dashboard`. Requires `configStore` to be wired in\n * `ModernAdminModule.forRoot()`. Falls back gracefully when the endpoint\n * returns an empty dashboard (e.g. first load or missing configStore).\n */\nexport class ServerDashboardStore implements IDashboardStore {\n constructor(private readonly client: AdminClient) {}\n\n async load(_userId: string): Promise<DashboardBlob> {\n try {\n const res = await this.client.loadDashboard()\n return res.dashboard\n } catch {\n return EMPTY_DASHBOARD\n }\n }\n\n async save(_userId: string, blob: DashboardBlob): Promise<void> {\n try {\n await this.client.saveDashboard(blob)\n } catch {\n // Server unavailable — silently drop. The next save attempt will retry.\n }\n }\n}\n\n// ─── Time-range helpers ──────────────────────────────────────────────────\n\n/**\n * Resolve a `TimeRange` (preset or explicit custom) into concrete\n * inclusive `from`/`to` `YYYY-MM-DD` strings. Presets are anchored to\n * `now` so cards always reflect \"the last N days\" without re-saving.\n *\n * `'all'` resolves to a 10-year window ending at `now`, which is wide\n * enough for any realistic admin dataset while keeping the server's\n * date-range constraint satisfied.\n */\nexport function resolveRange(\n range: TimeRange,\n now: Date = new Date(),\n): { from: string; to: string } {\n if (range.preset === 'custom') return { from: range.from, to: range.to }\n const days =\n range.preset === '7d' ? 7\n : range.preset === '30d' ? 30\n : range.preset === '90d' ? 90\n : range.preset === '1y' ? 365\n : 3650 // 'all' → 10 years\n const to = new Date(now)\n const from = new Date(now)\n from.setDate(from.getDate() - days)\n return { from: ymd(from), to: ymd(to) }\n}\n\n/**\n * Equal-length window immediately preceding `[from, to]`.\n */\nexport function previousRangeOf(\n range: { from: string; to: string },\n): { from: string; to: string } | null {\n const f = new Date(range.from).getTime()\n const t = new Date(range.to).getTime()\n if (isNaN(f) || isNaN(t) || t < f) return null\n const span = t - f\n const prevTo = new Date(f - 86_400_000)\n const prevFrom = new Date(prevTo.getTime() - span)\n return { from: ymd(prevFrom), to: ymd(prevTo) }\n}\n\nconst ymd = (d: Date): string => d.toISOString().slice(0, 10)\n\n// ─── Reload signal ───────────────────────────────────────────────────────\n\n/**\n * Module-scoped pub/sub so external code (e.g. AI assistant widget after a\n * chart mutation) can force the dashboard to reload its blob from the store\n * without lifting state up. Subscribers are notified asynchronously.\n */\nconst dashboardReloadListeners = new Set<() => void>()\n\n/** Signal every mounted `useDashboardCharts` hook to reload from its store. */\nexport function emitDashboardReload(): void {\n for (const listener of dashboardReloadListeners) {\n try {\n listener()\n } catch {\n // Listener errors must not block sibling listeners.\n }\n }\n}\n\n// ─── Hook ────────────────────────────────────────────────────────────────\n\nexport interface UseDashboardChartsOptions {\n /** Used to scope the storage key. `null`/`undefined` defers loading. */\n userId: string | null | undefined\n /** Override the default localStorage store (e.g. server-backed in future). */\n store?: IDashboardStore\n}\n\nexport interface UseDashboardChartsResult {\n charts: ChartDef[]\n /** Groups defined on the dashboard, sorted by `order` ascending. */\n groups: ChartGroup[]\n /** True until the initial load has resolved (relevant for async stores). */\n isLoading: boolean\n /** Append a new chart. Auto-assigns to the first group when groups exist and no `groupId` is provided. */\n addChart(input: ChartDefInput): void\n updateChart(id: string, input: ChartDefInput): void\n removeChart(id: string): void\n /**\n * Create a new group. When this is the very first group, every existing\n * (ungrouped) chart is moved into it so the user keeps the same view.\n * Returns the new group id so callers can switch to it.\n */\n addGroup(input: { name: string; order?: number }): string\n updateGroup(id: string, patch: { name?: string; order?: number }): void\n /** Remove a group AND every chart assigned to it. */\n removeGroup(id: string): void\n}\n\n/**\n * Per-user dashboard chart registry backed by `IDashboardStore` (default:\n * `LocalStorageDashboardStore`). When `userId` is null/undefined the hook\n * returns an empty list and ignores writes — used while\n * `useCurrentUser()` is still loading.\n */\nexport function useDashboardCharts(\n options: UseDashboardChartsOptions,\n): UseDashboardChartsResult {\n const { userId, store = defaultStore } = options\n const [charts, setCharts] = useState<ChartDef[]>([])\n const [groups, setGroups] = useState<ChartGroup[]>([])\n const [isLoading, setIsLoading] = useState(true)\n // Bumping this counter re-runs the load effect; used by external\n // `emitDashboardReload()` callers (e.g. AI assistant widget) so the hook\n // can pick up changes other actors made to the underlying store.\n const [reloadTick, setReloadTick] = useState(0)\n\n // Reload whenever `userId` flips (login / logout / switch) or an external\n // reload is signalled.\n useEffect(() => {\n if (!userId) {\n setCharts([])\n setIsLoading(false)\n return\n }\n let cancelled = false\n setIsLoading(true)\n Promise.resolve(store.load(userId)).then((blob) => {\n if (cancelled) return\n setCharts(blob.charts)\n setGroups([...blob.groups].sort(byOrderThenCreated))\n setIsLoading(false)\n })\n return () => {\n cancelled = true\n }\n }, [userId, store, reloadTick])\n\n // Subscribe to module-scoped reload signal.\n useEffect(() => {\n const listener = (): void => setReloadTick((tick) => tick + 1)\n dashboardReloadListeners.add(listener)\n return () => {\n dashboardReloadListeners.delete(listener)\n }\n }, [])\n\n // Single persist that writes BOTH charts and groups so a partial update\n // never strands one in localStorage while overwriting the other.\n const persist = useCallback(\n (nextCharts: ChartDef[], nextGroups: ChartGroup[]): void => {\n setCharts(nextCharts)\n setGroups([...nextGroups].sort(byOrderThenCreated))\n if (!userId) return\n void Promise.resolve(\n store.save(userId, { version: 1, charts: nextCharts, groups: nextGroups }),\n )\n },\n [userId, store],\n )\n\n const addChart = useCallback(\n (input: ChartDefInput): void => {\n const now = new Date().toISOString()\n // When groups exist and the caller didn't pick one, fall back to the\n // first-ordered group so the new chart is visible somewhere.\n const fallbackGroupId = input.groupId ?? groups[0]?.id\n const def = {\n ...input,\n id: uuidv7(),\n title: input.title ?? '',\n filters: input.filters ?? {},\n ...(fallbackGroupId ? { groupId: fallbackGroupId } : {}),\n createdAt: now,\n updatedAt: now,\n } as ChartDef\n persist([...charts, def], groups)\n },\n [charts, groups, persist],\n )\n\n const updateChart = useCallback(\n (id: string, input: ChartDefInput): void => {\n persist(\n charts.map((c) =>\n c.id === id\n ? ({\n ...c,\n ...input,\n id,\n title: input.title ?? '',\n filters: input.filters ?? {},\n createdAt: c.createdAt,\n updatedAt: new Date().toISOString(),\n } as ChartDef)\n : c,\n ),\n groups,\n )\n },\n [charts, groups, persist],\n )\n\n const removeChart = useCallback(\n (id: string): void => {\n persist(charts.filter((c) => c.id !== id), groups)\n },\n [charts, groups, persist],\n )\n\n const addGroup = useCallback(\n (input: { name: string; order?: number }): string => {\n const now = new Date().toISOString()\n const id = uuidv7()\n const next: ChartGroup = {\n id,\n name: input.name,\n order: input.order ?? groups.length,\n createdAt: now,\n updatedAt: now,\n }\n // First-group rule: existing ungrouped charts join this group so the\n // user does not lose their current dashboard view.\n const isFirstGroup = groups.length === 0\n const nextCharts = isFirstGroup\n ? charts.map((c) => (c.groupId ? c : { ...c, groupId: id, updatedAt: now }))\n : charts\n persist(nextCharts, [...groups, next])\n return id\n },\n [charts, groups, persist],\n )\n\n const updateGroup = useCallback(\n (id: string, patch: { name?: string; order?: number }): void => {\n const now = new Date().toISOString()\n persist(\n charts,\n groups.map((g) =>\n g.id === id\n ? {\n ...g,\n ...(patch.name !== undefined ? { name: patch.name } : {}),\n ...(patch.order !== undefined ? { order: patch.order } : {}),\n updatedAt: now,\n }\n : g,\n ),\n )\n },\n [charts, groups, persist],\n )\n\n const removeGroup = useCallback(\n (id: string): void => {\n // Cascading delete: every chart assigned to the group disappears with it.\n persist(charts.filter((c) => c.groupId !== id), groups.filter((g) => g.id !== id))\n },\n [charts, groups, persist],\n )\n\n return {\n charts,\n groups,\n isLoading,\n addChart,\n updateChart,\n removeChart,\n addGroup,\n updateGroup,\n removeGroup,\n }\n}\n\n/** Stable sort: by `order` ascending, then by `createdAt` for tie-breaking. */\nfunction byOrderThenCreated(a: { order: number; createdAt: string }, b: { order: number; createdAt: string }): number {\n if (a.order !== b.order) return a.order - b.order\n return a.createdAt.localeCompare(b.createdAt)\n}\n\n// Re-export types from client for convenience so consumers import from one place.\nexport type { TimeSeriesMetric, TimeSeriesStep }\nexport type { ChartDef, ChartDefInput, ChartGroup } from '@modern-admin/core'\n"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as e,n as t}from"./createLucideIcon-QE2kj6ru.js";import{C as n,S as r,_ as i,a,d as o,f as s,h as c,i as l,l as u,o as d,p as f,r as p,x as m,y as h}from"./floating-layer-BcTp2AMB.js";import{i as g,n as _,r as v,t as y}from"./dist-DPxQeZn3.js";import{$ as b,B as ee,G as x,H as S,J as te,K as ne,Q as C,U as w,V as T,W as E,X as D,Y as O,Z as re,at as ie,et as ae,it as k,ot as A,q as j,rt as M}from"./hooks-BiOfAnEq.js";var N=e(t(),1),P=n(),F=Object.defineProperty,I=(e,t)=>F(e,`name`,{value:t,configurable:!0}),L=`Popover`,[R,oe]=r(L,[g]),z=g(),[B,V]=R(L),H=I(e=>{let{__scopePopover:t,children:n,open:r,defaultOpen:i,onOpenChange:a,modal:s=!1}=e,l=z(t),u=N.useRef(null),[d,f]=N.useState(!1),[p,m]=c({prop:r,defaultProp:i??!1,onChange:a,caller:L});return(0,P.jsx)(v,{...l,children:(0,P.jsx)(B,{scope:t,contentId:o(),triggerRef:u,open:p,onOpenChange:m,onOpenToggle:N.useCallback(()=>m(e=>!e),[m]),hasCustomAnchor:d,onCustomAnchorAdd:N.useCallback(()=>f(!0),[]),onCustomAnchorRemove:N.useCallback(()=>f(!1),[]),modal:s,children:n})})},`Popover`),U=`PopoverAnchor`,W=N.forwardRef(I(function(e,t){let{__scopePopover:n,...r}=e,i=V(U,n),a=z(n),{onCustomAnchorAdd:o,onCustomAnchorRemove:s}=i;return N.useEffect(()=>(o(),()=>s()),[o,s]),(0,P.jsx)(y,{...a,...r,ref:t})},`PopoverAnchor`)),G=`PopoverTrigger`,K=N.forwardRef(I(function(e,t){let{__scopePopover:n,...r}=e,a=V(G,n),o=z(n),s=m(t,a.triggerRef),c=(0,P.jsx)(f.button,{type:`button`,"aria-haspopup":`dialog`,"aria-expanded":a.open,"aria-controls":a.open?a.contentId:void 0,"data-state":X(a.open),...r,ref:s,onClick:i(e.onClick,a.onOpenToggle)});return a.hasCustomAnchor?c:(0,P.jsx)(y,{asChild:!0,...o,children:c})},`PopoverTrigger`)),q=`PopoverPortal`,[se,ce]=R(q,{forceMount:void 0}),le=I(e=>{let{__scopePopover:t,forceMount:n,children:r,container:i}=e,o=V(q,t);return(0,P.jsx)(se,{scope:t,forceMount:n,children:(0,P.jsx)(s,{present:n||o.open,children:(0,P.jsx)(a,{asChild:!0,container:i,children:r})})})},`PopoverPortal`),J=`PopoverContent`,ue=N.forwardRef(I(function(e,t){let n=ce(J,e.__scopePopover),{forceMount:r=n.forceMount,...i}=e,a=V(J,e.__scopePopover);return(0,P.jsx)(s,{present:r||a.open,children:a.modal?(0,P.jsx)(fe,{...i,ref:t}):(0,P.jsx)(pe,{...i,ref:t})})},`PopoverContent`)),de=h(`PopoverContent.RemoveScroll`),fe=N.forwardRef(I(function(e,t){let n=V(J,e.__scopePopover),r=N.useRef(null),a=m(t,r),o=N.useRef(!1);return N.useEffect(()=>{let e=r.current;if(e)return k(e)},[]),(0,P.jsx)(M,{as:de,allowPinchZoom:!0,children:(0,P.jsx)(Y,{...e,ref:a,trapFocus:n.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:i(e.onCloseAutoFocus,e=>{e.preventDefault(),o.current||n.triggerRef.current?.focus()}),onPointerDownOutside:i(e.onPointerDownOutside,e=>{let t=e.detail.originalEvent,n=t.button===0&&t.ctrlKey===!0,r=t.button===2||n;o.current=r},{checkForDefaultPrevented:!1}),onFocusOutside:i(e.onFocusOutside,e=>e.preventDefault(),{checkForDefaultPrevented:!1})})})},`PopoverContentModal`)),pe=N.forwardRef(I(function(e,t){let n=V(J,e.__scopePopover),r=N.useRef(!1),i=N.useRef(!1);return(0,P.jsx)(Y,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:t=>{e.onCloseAutoFocus?.(t),t.defaultPrevented||(r.current||n.triggerRef.current?.focus(),t.preventDefault()),r.current=!1,i.current=!1},onInteractOutside:t=>{e.onInteractOutside?.(t),t.defaultPrevented||(r.current=!0,t.detail.originalEvent.type===`pointerdown`&&(i.current=!0));let a=t.target;n.triggerRef.current?.contains(a)&&t.preventDefault(),t.detail.originalEvent.type===`focusin`&&i.current&&t.preventDefault()}})},`PopoverContentNonModal`)),Y=N.forwardRef(I(function(e,t){let{__scopePopover:n,trapFocus:r,onOpenAutoFocus:i,onCloseAutoFocus:a,disableOutsidePointerEvents:o,onEscapeKeyDown:s,onPointerDownOutside:c,onFocusOutside:l,onInteractOutside:u,...f}=e,p=V(J,n),m=z(n);return A(),(0,P.jsx)(ie,{asChild:!0,loop:!0,trapped:r,onMountAutoFocus:i,onUnmountAutoFocus:a,children:(0,P.jsx)(d,{asChild:!0,disableOutsidePointerEvents:o,onInteractOutside:u,onEscapeKeyDown:s,onPointerDownOutside:c,onFocusOutside:l,onDismiss:()=>p.onOpenChange(!1),deferPointerDownOutside:!0,children:(0,P.jsx)(_,{"data-state":X(p.open),role:`dialog`,id:p.contentId,...m,...f,ref:t,style:{...f.style,"--radix-popover-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-popover-content-available-width":`var(--radix-popper-available-width)`,"--radix-popover-content-available-height":`var(--radix-popper-available-height)`,"--radix-popover-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-popover-trigger-height":`var(--radix-popper-anchor-height)`}})})})},`PopoverContentImpl`));function X(e){return e?`open`:`closed`}I(X,`getState`);var me=H,he=W,ge=K,_e=le,Z=ue,ve=me,ye=ge,be=he,Q=N.forwardRef(({className:e,align:t=`center`,sideOffset:n=4,collisionPadding:r,container:i,...a},o)=>{let s=p(),c=l();return(0,P.jsx)(_e,{container:i??s,children:(0,P.jsx)(Z,{ref:o,align:t,sideOffset:n,collisionPadding:r??c,className:u(`z-50 w-72 rounded-md border border-border bg-popover p-4 text-popover-foreground shadow-md outline-none 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`,e),...a})})});Q.displayName=Z.displayName;function $(e,t){let n=new Set(t);return e.filter(e=>!n.has(e))}function xe(e,t,n){let r=e.slice(0);return r[t]=n,r}var Se=class extends ae{#e;#t;#n;#r;#i;#a;#o;#s;#c;#l=[];constructor(e,t,n){super(),this.#e=e,this.#r=n,this.#n=[],this.#i=[],this.#t=[],this.setQueries(t)}onSubscribe(){this.listeners.size===1&&this.#i.forEach(e=>{e.subscribe(t=>{this.#m(e,t)})})}onUnsubscribe(){this.listeners.size||this.destroy()}destroy(){this.listeners=new Set,this.#i.forEach(e=>{e.destroy()})}setQueries(e,t){this.#n=e,this.#r=t,D.batch(()=>{let e=this.#i,t=this.#p(this.#n);t.forEach(e=>e.observer.setOptions(e.defaultedQueryOptions));let n=t.map(e=>e.observer),r=n.map(e=>e.getCurrentResult()),i=e.length!==n.length,a=n.some((t,n)=>t!==e[n]),o=i||a,s=o?!0:r.some((e,t)=>{let n=this.#t[t];return!n||!b(e,n)});!o&&!s||(o&&(this.#l=t,this.#i=n),this.#t=r,this.hasListeners()&&(o&&($(e,n).forEach(e=>{e.destroy()}),$(n,e).forEach(e=>{e.subscribe(t=>{this.#m(e,t)})})),this.#h()))})}getCurrentResult(){return this.#t}getQueries(){return this.#i.map(e=>e.getCurrentQuery())}getObservers(){return this.#i}getOptimisticResult(e,t){let n=this.#p(e),r=n.map(e=>e.observer.getOptimisticResult(e.defaultedQueryOptions)),i=n.map(e=>e.defaultedQueryOptions.queryHash);return[r,e=>this.#d(e??r,t,i),()=>this.#u(r,n)]}#u(e,t){return t.map((n,r)=>{let i=e[r];return n.defaultedQueryOptions.notifyOnChangeProps?i:n.observer.trackResult(i,e=>{t.forEach(t=>{t.observer.trackProp(e)})})})}#d(e,t,n){if(t){let r=this.#c,i=n!==void 0&&r!==void 0&&(r.length!==n.length||n.some((e,t)=>e!==r[t]));return(!this.#a||this.#t!==this.#s||i||t!==this.#o)&&(this.#o=t,this.#s=this.#t,n!==void 0&&(this.#c=n),this.#a=C(this.#a,t(e))),this.#a}return e}#f(){return this.#r?.combine!==void 0&&this.#i.some((e,t)=>e.options.suspense&&this.#t[t]?.data===void 0)}#p(e){let t=new Map;this.#i.forEach(e=>{let n=e.options.queryHash;if(!n)return;let r=t.get(n);r?r.push(e):t.set(n,[e])});let n=[];return e.forEach(e=>{let r=this.#e.defaultQueryOptions(e),i=t.get(r.queryHash)?.shift()??new O(this.#e,r);n.push({defaultedQueryOptions:r,observer:i})}),n}#m(e,t){let n=this.#i.indexOf(e);n!==-1&&(this.#t=xe(this.#t,n,t),this.#h())}#h(){if(this.hasListeners()){let e=this.#u(this.#t,this.#l),t=this.#f(),n=this.#a,r=t?n:this.#d(e,this.#r?.combine);(t||n!==r)&&D.batch(()=>{this.listeners.forEach(e=>{e(this.#t)})})}}};function Ce({queries:e,...t},n){let r=te(n),i=j(),a=ne(),o=N.useMemo(()=>e.map(e=>{let t=r.defaultQueryOptions(e);return t._optimisticResults=i?`isRestoring`:`optimistic`,t}),[e,r,i]);o.forEach(e=>{ee(e);let t=r.getQueryCache().get(e.queryHash);w(e,a,t)}),x(a);let[s]=N.useState(()=>new Se(r,o,t)),[c,l,u]=s.getOptimisticResult(o,t.combine),d=!i&&t.subscribed!==!1;N.useSyncExternalStore(N.useCallback(e=>d?s.subscribe(D.batchCalls(e)):re,[s,d]),()=>s.getCurrentResult(),()=>s.getCurrentResult()),N.useEffect(()=>{s.setQueries(o,t)},[o,t,s]);let f=c.some((e,t)=>S(o[t],e))?c.flatMap((e,t)=>{let n=o[t];if(n&&S(n,e)){let e=new O(r,n);return T(n,e,a)}return[]}):[];if(f.length>0)throw Promise.all(f);let p=c.find((e,t)=>{let n=o[t];return n&&E({result:e,errorResetBoundary:a,throwOnError:n.throwOnError,query:r.getQueryCache().get(n.queryHash),suspense:n.suspense})});if(p?.error)throw p.error;return l(u())}export{ye as a,Q as i,ve as n,be as r,Ce as t};
|
|
2
|
+
//# sourceMappingURL=useQueries-DNUnShBb.js.map
|
|
Binary file
|
|
Binary file
|