@omnifyjp/ui 1.0.2 → 2.0.1
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/{chunk-TJMK2KBE.js → chunk-2BRCVWXR.js} +3 -3
- package/dist/chunk-2BRCVWXR.js.map +1 -0
- package/dist/{chunk-RQNZDWY3.js → chunk-33QLY6GI.js} +2 -2
- package/dist/chunk-33QLY6GI.js.map +1 -0
- package/dist/{chunk-NPL2R5LD.js → chunk-3V6NS4EQ.js} +5 -5
- package/dist/chunk-3V6NS4EQ.js.map +1 -0
- package/dist/{chunk-G7HTZBUR.js → chunk-47TUWE63.js} +3 -3
- package/dist/chunk-47TUWE63.js.map +1 -0
- package/dist/{chunk-75WZR6HF.js → chunk-4AGNE75K.js} +4 -4
- package/dist/chunk-4AGNE75K.js.map +1 -0
- package/dist/chunk-4NBDYSSQ.js +90 -0
- package/dist/chunk-4NBDYSSQ.js.map +1 -0
- package/dist/{chunk-FRKG7JQY.js → chunk-5AGUCELC.js} +2 -2
- package/dist/chunk-5AGUCELC.js.map +1 -0
- package/dist/{chunk-A3BB5ZOC.js → chunk-5SAUUOCN.js} +2 -2
- package/dist/chunk-5SAUUOCN.js.map +1 -0
- package/dist/{chunk-2TUWDXAC.js → chunk-5WOCEAZG.js} +3 -3
- package/dist/chunk-5WOCEAZG.js.map +1 -0
- package/dist/{chunk-2C2HRGM7.js → chunk-6W5FYOXQ.js} +3 -3
- package/dist/chunk-6W5FYOXQ.js.map +1 -0
- package/dist/{chunk-ZHEKDP5X.js → chunk-6Z6NRIQ2.js} +3 -3
- package/dist/chunk-6Z6NRIQ2.js.map +1 -0
- package/dist/{chunk-BAQWGQJG.js → chunk-7KZ7CVRN.js} +3 -3
- package/dist/chunk-7KZ7CVRN.js.map +1 -0
- package/dist/{chunk-C34KSTWA.js → chunk-7NMNLY7F.js} +2 -2
- package/dist/chunk-7NMNLY7F.js.map +1 -0
- package/dist/{chunk-55E7D2HR.js → chunk-BOV3Q2JH.js} +2 -2
- package/dist/chunk-BOV3Q2JH.js.map +1 -0
- package/dist/{chunk-34ARZSNP.js → chunk-CECQY5LL.js} +2 -2
- package/dist/chunk-CECQY5LL.js.map +1 -0
- package/dist/{chunk-JRU2QX7T.js → chunk-CLYBVDEQ.js} +2 -2
- package/dist/chunk-CLYBVDEQ.js.map +1 -0
- package/dist/{chunk-TGYQ3AKH.js → chunk-CNS3OMZ7.js} +2 -2
- package/dist/chunk-CNS3OMZ7.js.map +1 -0
- package/dist/{chunk-C5NZAOA7.js → chunk-CSYH7P6N.js} +2 -2
- package/dist/chunk-CSYH7P6N.js.map +1 -0
- package/dist/{chunk-USIHM7FV.js → chunk-DEKVLLTL.js} +2 -2
- package/dist/chunk-DEKVLLTL.js.map +1 -0
- package/dist/{chunk-Z2QAABLM.js → chunk-DXKFFJIE.js} +2 -2
- package/dist/chunk-DXKFFJIE.js.map +1 -0
- package/dist/{chunk-IAWKX5W4.js → chunk-DXZZURPN.js} +2 -2
- package/dist/chunk-DXZZURPN.js.map +1 -0
- package/dist/{chunk-XOJJBNDX.js → chunk-EAY3QSID.js} +2 -2
- package/dist/chunk-EAY3QSID.js.map +1 -0
- package/dist/{chunk-7XH3MGBR.js → chunk-EBV2XEHD.js} +5 -5
- package/dist/chunk-EBV2XEHD.js.map +1 -0
- package/dist/{chunk-P3M5TZD2.js → chunk-EYJ7TJIX.js} +2 -2
- package/dist/chunk-EYJ7TJIX.js.map +1 -0
- package/dist/{chunk-67YUL2ZS.js → chunk-FTNPOZGK.js} +2 -2
- package/dist/chunk-FTNPOZGK.js.map +1 -0
- package/dist/{chunk-JXGRW2MR.js → chunk-GR7T5QHL.js} +2 -2
- package/dist/chunk-GR7T5QHL.js.map +1 -0
- package/dist/{chunk-WS6E7HBT.js → chunk-HDTHGIQR.js} +3 -3
- package/dist/chunk-HDTHGIQR.js.map +1 -0
- package/dist/{chunk-LMT327XH.js → chunk-HEQVBUJO.js} +2 -2
- package/dist/chunk-HEQVBUJO.js.map +1 -0
- package/dist/{chunk-VVYSAGB3.js → chunk-I6PJSYBI.js} +3 -3
- package/dist/chunk-I6PJSYBI.js.map +1 -0
- package/dist/{chunk-35DNN46W.js → chunk-ITTPI2Z3.js} +3 -3
- package/dist/chunk-ITTPI2Z3.js.map +1 -0
- package/dist/{chunk-JAJMM32I.js → chunk-IXEPDTUE.js} +3 -3
- package/dist/chunk-IXEPDTUE.js.map +1 -0
- package/dist/{chunk-PGWNOZDX.js → chunk-KCUSO3CK.js} +2 -2
- package/dist/chunk-KCUSO3CK.js.map +1 -0
- package/dist/{chunk-QB3UWRZH.js → chunk-KJAXKHJ2.js} +3 -3
- package/dist/chunk-KJAXKHJ2.js.map +1 -0
- package/dist/{chunk-7IRLBU2I.js → chunk-LA4L3QIK.js} +3 -3
- package/dist/chunk-LA4L3QIK.js.map +1 -0
- package/dist/{chunk-NNJTKHCE.js → chunk-LTGCKJX7.js} +2 -2
- package/dist/chunk-LTGCKJX7.js.map +1 -0
- package/dist/{chunk-JJSVA3TH.js → chunk-LUYTKHGS.js} +2 -2
- package/dist/chunk-LUYTKHGS.js.map +1 -0
- package/dist/{chunk-6GWVQB3Q.js → chunk-MVYSUWSD.js} +3 -3
- package/dist/chunk-MVYSUWSD.js.map +1 -0
- package/dist/{chunk-YBMEQZX7.js → chunk-N5BNNKBR.js} +2 -2
- package/dist/chunk-N5BNNKBR.js.map +1 -0
- package/dist/{chunk-35U6QG4P.js → chunk-N6OUJIQD.js} +2 -2
- package/dist/chunk-N6OUJIQD.js.map +1 -0
- package/dist/{chunk-R2CDE5DO.js → chunk-NWVMNWOH.js} +2 -2
- package/dist/chunk-NWVMNWOH.js.map +1 -0
- package/dist/{chunk-NU56GKGM.js → chunk-ORTPKXBI.js} +2 -2
- package/dist/chunk-ORTPKXBI.js.map +1 -0
- package/dist/{chunk-FLWMT4DB.js → chunk-PJZ7D36X.js} +2 -2
- package/dist/chunk-PJZ7D36X.js.map +1 -0
- package/dist/{chunk-CUZR4JWM.js → chunk-PYB6RRA5.js} +3 -3
- package/dist/chunk-PYB6RRA5.js.map +1 -0
- package/dist/{chunk-BRSM3SZP.js → chunk-QGU4BRMO.js} +2 -2
- package/dist/chunk-QGU4BRMO.js.map +1 -0
- package/dist/{chunk-S6PDRGR5.js → chunk-RZZH57ZL.js} +2 -2
- package/dist/chunk-RZZH57ZL.js.map +1 -0
- package/dist/{chunk-EWBCV7VA.js → chunk-S73PGQD5.js} +2 -2
- package/dist/chunk-S73PGQD5.js.map +1 -0
- package/dist/{chunk-N47H4MHX.js → chunk-SAHHVJMQ.js} +3 -3
- package/dist/chunk-SAHHVJMQ.js.map +1 -0
- package/dist/{chunk-INLM7UJC.js → chunk-T65EBJUJ.js} +2 -2
- package/dist/chunk-T65EBJUJ.js.map +1 -0
- package/dist/{chunk-ZPMXRW2A.js → chunk-TPBRGO4D.js} +3 -3
- package/dist/chunk-TPBRGO4D.js.map +1 -0
- package/dist/{chunk-MJLFJPUG.js → chunk-V3S2AZKJ.js} +5 -5
- package/dist/chunk-V3S2AZKJ.js.map +1 -0
- package/dist/{chunk-MZ2P566X.js → chunk-VATNOBZ2.js} +3 -3
- package/dist/chunk-VATNOBZ2.js.map +1 -0
- package/dist/{chunk-JLTBUACL.js → chunk-VOLR236J.js} +2 -2
- package/dist/chunk-VOLR236J.js.map +1 -0
- package/dist/chunk-VPTIRPZW.js +75 -0
- package/dist/chunk-VPTIRPZW.js.map +1 -0
- package/dist/{chunk-WL4ZO2H3.js → chunk-W477ZR6B.js} +2 -2
- package/dist/chunk-W477ZR6B.js.map +1 -0
- package/dist/{chunk-3EOHW4QN.js → chunk-WJX6NKKF.js} +3 -3
- package/dist/chunk-WJX6NKKF.js.map +1 -0
- package/dist/{chunk-LTTNCAAA.js → chunk-XNUFKQYL.js} +3 -3
- package/dist/chunk-XNUFKQYL.js.map +1 -0
- package/dist/chunk-YN26HHZ4.js +71 -0
- package/dist/chunk-YN26HHZ4.js.map +1 -0
- package/dist/{chunk-ZYEGBF7G.js → chunk-YU23NDE4.js} +3 -3
- package/dist/chunk-YU23NDE4.js.map +1 -0
- package/dist/chunk-YU55YBID.js +144 -0
- package/dist/chunk-YU55YBID.js.map +1 -0
- package/dist/{chunk-F2ZJLKDP.js → chunk-YVCLIOMM.js} +2 -2
- package/dist/chunk-YVCLIOMM.js.map +1 -0
- package/dist/{chunk-7RMTPT6O.js → chunk-YYJVVYFS.js} +2 -2
- package/dist/chunk-YYJVVYFS.js.map +1 -0
- package/dist/chunk-ZUBW2ERW.js +70 -0
- package/dist/chunk-ZUBW2ERW.js.map +1 -0
- package/dist/components/display/accordion.js +4 -0
- package/dist/components/display/aspect-ratio.js +3 -0
- package/dist/components/display/avatar.js +4 -0
- package/dist/components/{badge.d.ts → display/badge.d.ts} +1 -1
- package/dist/components/display/badge.js +4 -0
- package/dist/components/display/card.js +4 -0
- package/dist/components/{carousel.d.ts → display/carousel.d.ts} +2 -2
- package/dist/components/display/carousel.js +5 -0
- package/dist/components/{chart.js → display/chart.js} +1 -1
- package/dist/components/display/chart.js.map +1 -0
- package/dist/components/{collapsible.js → display/collapsible.js} +1 -1
- package/dist/components/display/resizable.js +4 -0
- package/dist/components/display/scroll-area.js +4 -0
- package/dist/components/display/separator.js +4 -0
- package/dist/components/display/table.js +4 -0
- package/dist/components/display/toggle-group.js +5 -0
- package/dist/components/display/toggle.js +4 -0
- package/dist/components/domain/calendar/calendar-category-badge.js +5 -0
- package/dist/components/{calendar-event-chip.js → domain/calendar/calendar-event-chip.js} +1 -1
- package/dist/components/domain/calendar/calendar-event-chip.js.map +1 -0
- package/dist/components/{calendar-event-sheet.d.ts → domain/calendar/calendar-event-sheet.d.ts} +4 -1
- package/dist/components/{calendar-event-sheet.js → domain/calendar/calendar-event-sheet.js} +12 -8
- package/dist/components/domain/calendar/calendar-event-sheet.js.map +1 -0
- package/dist/components/{calendar-mini.d.ts → domain/calendar/calendar-mini.d.ts} +4 -1
- package/dist/components/{calendar-mini.js → domain/calendar/calendar-mini.js} +9 -5
- package/dist/components/domain/calendar/calendar-mini.js.map +1 -0
- package/dist/components/{calendar-toolbar.d.ts → domain/calendar/calendar-toolbar.d.ts} +4 -1
- package/dist/components/{calendar-toolbar.js → domain/calendar/calendar-toolbar.js} +10 -6
- package/dist/components/domain/calendar/calendar-toolbar.js.map +1 -0
- package/dist/components/domain/calendar/calendar.js +5 -0
- package/dist/components/domain/rbac/permission-grid.js +5 -0
- package/dist/components/domain/rbac/scope-tree.js +5 -0
- package/dist/components/domain/rbac/scope-type-badge.js +5 -0
- package/dist/components/domain/workflow/stage-type-badge.js +5 -0
- package/dist/components/domain/workflow/workflow-category-badge.js +5 -0
- package/dist/components/domain/workflow/workflow-diagram.js +5 -0
- package/dist/components/domain/workflow/workflow-status-badge.js +5 -0
- package/dist/components/domain/workflow/workflow-stepper.js +4 -0
- package/dist/components/{alert.d.ts → feedback/alert.d.ts} +1 -1
- package/dist/components/feedback/alert.js +4 -0
- package/dist/components/feedback/progress.js +4 -0
- package/dist/components/feedback/skeleton.js +4 -0
- package/dist/components/{button.d.ts → inputs/button.d.ts} +2 -2
- package/dist/components/inputs/button.js +4 -0
- package/dist/components/inputs/checkbox.js +4 -0
- package/dist/components/inputs/color-picker.js +9 -0
- package/dist/components/inputs/combobox.js +8 -0
- package/dist/components/{date-picker.d.ts → inputs/date-picker.d.ts} +2 -2
- package/dist/components/{date-picker.js → inputs/date-picker.js} +15 -8
- package/dist/components/inputs/date-picker.js.map +1 -0
- package/dist/components/inputs/file-upload.js +5 -0
- package/dist/components/{form.js → inputs/form.js} +2 -2
- package/dist/components/inputs/form.js.map +1 -0
- package/dist/components/inputs/input-otp.js +4 -0
- package/dist/components/inputs/input.d.ts +75 -0
- package/dist/components/inputs/input.js +6 -0
- package/dist/components/inputs/label.js +4 -0
- package/dist/components/{password-input.d.ts → inputs/password-input.d.ts} +2 -0
- package/dist/components/inputs/password-input.js +7 -0
- package/dist/components/inputs/radio-group.js +4 -0
- package/dist/components/inputs/rating.js +4 -0
- package/dist/components/{select.js → inputs/select.js} +2 -2
- package/dist/components/inputs/slider.js +4 -0
- package/dist/components/inputs/slug-input.js +8 -0
- package/dist/components/inputs/switch.js +4 -0
- package/dist/components/inputs/tag-input.js +5 -0
- package/dist/components/inputs/textarea.d.ts +67 -0
- package/dist/components/inputs/textarea.js +6 -0
- package/dist/{chunk-6DIDQ4TB.js → components/inputs/time-picker.js} +9 -7
- package/dist/components/inputs/time-picker.js.map +1 -0
- package/dist/components/inputs/translatable-field.d.ts +51 -0
- package/dist/components/inputs/translatable-field.js +4 -0
- package/dist/components/inputs/translatable-field.js.map +1 -0
- package/dist/components/layout/page-container.d.ts +96 -0
- package/dist/components/layout/page-container.js +5 -0
- package/dist/components/layout/page-container.js.map +1 -0
- package/dist/components/{breadcrumb.js → navigation/breadcrumb.js} +2 -2
- package/dist/components/{command.d.ts → navigation/command.d.ts} +1 -1
- package/dist/components/{command.js → navigation/command.js} +3 -3
- package/dist/components/{context-menu.js → navigation/context-menu.js} +2 -2
- package/dist/components/{dropdown-menu.js → navigation/dropdown-menu.js} +2 -2
- package/dist/components/{menubar.js → navigation/menubar.js} +2 -2
- package/dist/components/{navigation-menu.js → navigation/navigation-menu.js} +2 -2
- package/dist/components/{pagination.d.ts → navigation/pagination.d.ts} +2 -2
- package/dist/components/{pagination.js → navigation/pagination.js} +3 -3
- package/dist/components/navigation/tabs.js +4 -0
- package/dist/components/{alert-dialog.js → overlay/alert-dialog.js} +3 -3
- package/dist/components/{dialog.js → overlay/dialog.js} +2 -2
- package/dist/components/{drawer.js → overlay/drawer.js} +2 -2
- package/dist/components/{hover-card.js → overlay/hover-card.js} +2 -2
- package/dist/components/overlay/popover.js +4 -0
- package/dist/components/overlay/sheet.js +4 -0
- package/dist/components/overlay/sonner.js +3 -0
- package/dist/components/overlay/tooltip.js +4 -0
- package/dist/index.d.ts +84 -83
- package/dist/index.js +62 -60
- package/dist/providers/ui-provider.d.ts +96 -0
- package/dist/providers/ui-provider.js +3 -0
- package/dist/providers/ui-provider.js.map +1 -0
- package/package.json +13 -8
- package/dist/chunk-2C2HRGM7.js.map +0 -1
- package/dist/chunk-2TUWDXAC.js.map +0 -1
- package/dist/chunk-34ARZSNP.js.map +0 -1
- package/dist/chunk-35DNN46W.js.map +0 -1
- package/dist/chunk-35U6QG4P.js.map +0 -1
- package/dist/chunk-3EOHW4QN.js.map +0 -1
- package/dist/chunk-3VU56V66.js +0 -41
- package/dist/chunk-3VU56V66.js.map +0 -1
- package/dist/chunk-55E7D2HR.js.map +0 -1
- package/dist/chunk-67YUL2ZS.js.map +0 -1
- package/dist/chunk-6DIDQ4TB.js.map +0 -1
- package/dist/chunk-6GWVQB3Q.js.map +0 -1
- package/dist/chunk-75WZR6HF.js.map +0 -1
- package/dist/chunk-7IRLBU2I.js.map +0 -1
- package/dist/chunk-7RMTPT6O.js.map +0 -1
- package/dist/chunk-7XH3MGBR.js.map +0 -1
- package/dist/chunk-A3BB5ZOC.js.map +0 -1
- package/dist/chunk-BAQWGQJG.js.map +0 -1
- package/dist/chunk-BRSM3SZP.js.map +0 -1
- package/dist/chunk-C34KSTWA.js.map +0 -1
- package/dist/chunk-C5NZAOA7.js.map +0 -1
- package/dist/chunk-CUZR4JWM.js.map +0 -1
- package/dist/chunk-EWBCV7VA.js.map +0 -1
- package/dist/chunk-F2ZJLKDP.js.map +0 -1
- package/dist/chunk-FLWMT4DB.js.map +0 -1
- package/dist/chunk-FRKG7JQY.js.map +0 -1
- package/dist/chunk-G7HTZBUR.js.map +0 -1
- package/dist/chunk-IAWKX5W4.js.map +0 -1
- package/dist/chunk-INLM7UJC.js.map +0 -1
- package/dist/chunk-JAJMM32I.js.map +0 -1
- package/dist/chunk-JJSVA3TH.js.map +0 -1
- package/dist/chunk-JLTBUACL.js.map +0 -1
- package/dist/chunk-JRU2QX7T.js.map +0 -1
- package/dist/chunk-JXGRW2MR.js.map +0 -1
- package/dist/chunk-LMT327XH.js.map +0 -1
- package/dist/chunk-LTTNCAAA.js.map +0 -1
- package/dist/chunk-MJLFJPUG.js.map +0 -1
- package/dist/chunk-MZ2P566X.js.map +0 -1
- package/dist/chunk-N47H4MHX.js.map +0 -1
- package/dist/chunk-NNJTKHCE.js.map +0 -1
- package/dist/chunk-NPL2R5LD.js.map +0 -1
- package/dist/chunk-NU56GKGM.js.map +0 -1
- package/dist/chunk-P3M5TZD2.js.map +0 -1
- package/dist/chunk-PGWNOZDX.js.map +0 -1
- package/dist/chunk-QB3UWRZH.js.map +0 -1
- package/dist/chunk-R2CDE5DO.js.map +0 -1
- package/dist/chunk-RQNZDWY3.js.map +0 -1
- package/dist/chunk-S6PDRGR5.js.map +0 -1
- package/dist/chunk-TGYQ3AKH.js.map +0 -1
- package/dist/chunk-TJMK2KBE.js.map +0 -1
- package/dist/chunk-USIHM7FV.js.map +0 -1
- package/dist/chunk-VVYSAGB3.js.map +0 -1
- package/dist/chunk-WD5KZE25.js +0 -25
- package/dist/chunk-WD5KZE25.js.map +0 -1
- package/dist/chunk-WL4ZO2H3.js.map +0 -1
- package/dist/chunk-WS6E7HBT.js.map +0 -1
- package/dist/chunk-XOJJBNDX.js.map +0 -1
- package/dist/chunk-YBMEQZX7.js.map +0 -1
- package/dist/chunk-Z2QAABLM.js.map +0 -1
- package/dist/chunk-ZHEKDP5X.js.map +0 -1
- package/dist/chunk-ZPMXRW2A.js.map +0 -1
- package/dist/chunk-ZYEGBF7G.js.map +0 -1
- package/dist/components/accordion.js +0 -4
- package/dist/components/alert.js +0 -4
- package/dist/components/aspect-ratio.js +0 -3
- package/dist/components/avatar.js +0 -4
- package/dist/components/badge.js +0 -4
- package/dist/components/button.js +0 -4
- package/dist/components/calendar-category-badge.js +0 -5
- package/dist/components/calendar-event-chip.js.map +0 -1
- package/dist/components/calendar-event-sheet.js.map +0 -1
- package/dist/components/calendar-mini.js.map +0 -1
- package/dist/components/calendar-toolbar.js.map +0 -1
- package/dist/components/calendar.js +0 -5
- package/dist/components/card.js +0 -4
- package/dist/components/carousel.js +0 -5
- package/dist/components/chart.js.map +0 -1
- package/dist/components/checkbox.js +0 -4
- package/dist/components/color-picker.js +0 -7
- package/dist/components/combobox.js +0 -8
- package/dist/components/date-picker.js.map +0 -1
- package/dist/components/file-upload.js +0 -5
- package/dist/components/form.js.map +0 -1
- package/dist/components/input-otp.js +0 -4
- package/dist/components/input.d.ts +0 -38
- package/dist/components/input.js +0 -4
- package/dist/components/label.js +0 -4
- package/dist/components/password-input.js +0 -5
- package/dist/components/permission-grid.js +0 -5
- package/dist/components/popover.js +0 -4
- package/dist/components/progress.js +0 -4
- package/dist/components/radio-group.js +0 -4
- package/dist/components/rating.js +0 -4
- package/dist/components/resizable.js +0 -4
- package/dist/components/scope-tree.js +0 -5
- package/dist/components/scope-type-badge.js +0 -5
- package/dist/components/scroll-area.js +0 -4
- package/dist/components/separator.js +0 -4
- package/dist/components/sheet.js +0 -4
- package/dist/components/skeleton.js +0 -4
- package/dist/components/slider.js +0 -4
- package/dist/components/slug-input.js +0 -6
- package/dist/components/sonner.js +0 -3
- package/dist/components/stage-type-badge.js +0 -5
- package/dist/components/switch.js +0 -4
- package/dist/components/table.js +0 -4
- package/dist/components/tabs.js +0 -4
- package/dist/components/tag-input.js +0 -5
- package/dist/components/textarea.d.ts +0 -21
- package/dist/components/textarea.js +0 -4
- package/dist/components/time-picker.js +0 -8
- package/dist/components/time-picker.js.map +0 -1
- package/dist/components/toggle-group.js +0 -5
- package/dist/components/toggle.js +0 -4
- package/dist/components/tooltip.js +0 -4
- package/dist/components/workflow-category-badge.js +0 -5
- package/dist/components/workflow-diagram.js +0 -5
- package/dist/components/workflow-status-badge.js +0 -5
- package/dist/components/workflow-stepper.js +0 -4
- /package/dist/components/{accordion.d.ts → display/accordion.d.ts} +0 -0
- /package/dist/components/{accordion.js.map → display/accordion.js.map} +0 -0
- /package/dist/components/{aspect-ratio.d.ts → display/aspect-ratio.d.ts} +0 -0
- /package/dist/components/{aspect-ratio.js.map → display/aspect-ratio.js.map} +0 -0
- /package/dist/components/{avatar.d.ts → display/avatar.d.ts} +0 -0
- /package/dist/components/{avatar.js.map → display/avatar.js.map} +0 -0
- /package/dist/components/{badge.js.map → display/badge.js.map} +0 -0
- /package/dist/components/{card.d.ts → display/card.d.ts} +0 -0
- /package/dist/components/{card.js.map → display/card.js.map} +0 -0
- /package/dist/components/{carousel.js.map → display/carousel.js.map} +0 -0
- /package/dist/components/{chart.d.ts → display/chart.d.ts} +0 -0
- /package/dist/components/{collapsible.d.ts → display/collapsible.d.ts} +0 -0
- /package/dist/components/{collapsible.js.map → display/collapsible.js.map} +0 -0
- /package/dist/components/{resizable.d.ts → display/resizable.d.ts} +0 -0
- /package/dist/components/{resizable.js.map → display/resizable.js.map} +0 -0
- /package/dist/components/{scroll-area.d.ts → display/scroll-area.d.ts} +0 -0
- /package/dist/components/{scroll-area.js.map → display/scroll-area.js.map} +0 -0
- /package/dist/components/{separator.d.ts → display/separator.d.ts} +0 -0
- /package/dist/components/{separator.js.map → display/separator.js.map} +0 -0
- /package/dist/components/{table.d.ts → display/table.d.ts} +0 -0
- /package/dist/components/{table.js.map → display/table.js.map} +0 -0
- /package/dist/components/{toggle-group.d.ts → display/toggle-group.d.ts} +0 -0
- /package/dist/components/{toggle-group.js.map → display/toggle-group.js.map} +0 -0
- /package/dist/components/{toggle.d.ts → display/toggle.d.ts} +0 -0
- /package/dist/components/{toggle.js.map → display/toggle.js.map} +0 -0
- /package/dist/components/{calendar-category-badge.d.ts → domain/calendar/calendar-category-badge.d.ts} +0 -0
- /package/dist/components/{calendar-category-badge.js.map → domain/calendar/calendar-category-badge.js.map} +0 -0
- /package/dist/components/{calendar-event-chip.d.ts → domain/calendar/calendar-event-chip.d.ts} +0 -0
- /package/dist/components/{calendar.d.ts → domain/calendar/calendar.d.ts} +0 -0
- /package/dist/components/{calendar.js.map → domain/calendar/calendar.js.map} +0 -0
- /package/dist/components/{permission-grid.d.ts → domain/rbac/permission-grid.d.ts} +0 -0
- /package/dist/components/{permission-grid.js.map → domain/rbac/permission-grid.js.map} +0 -0
- /package/dist/components/{scope-tree.d.ts → domain/rbac/scope-tree.d.ts} +0 -0
- /package/dist/components/{scope-tree.js.map → domain/rbac/scope-tree.js.map} +0 -0
- /package/dist/components/{scope-type-badge.d.ts → domain/rbac/scope-type-badge.d.ts} +0 -0
- /package/dist/components/{scope-type-badge.js.map → domain/rbac/scope-type-badge.js.map} +0 -0
- /package/dist/components/{stage-type-badge.d.ts → domain/workflow/stage-type-badge.d.ts} +0 -0
- /package/dist/components/{stage-type-badge.js.map → domain/workflow/stage-type-badge.js.map} +0 -0
- /package/dist/components/{workflow-category-badge.d.ts → domain/workflow/workflow-category-badge.d.ts} +0 -0
- /package/dist/components/{workflow-category-badge.js.map → domain/workflow/workflow-category-badge.js.map} +0 -0
- /package/dist/components/{workflow-diagram.d.ts → domain/workflow/workflow-diagram.d.ts} +0 -0
- /package/dist/components/{workflow-diagram.js.map → domain/workflow/workflow-diagram.js.map} +0 -0
- /package/dist/components/{workflow-status-badge.d.ts → domain/workflow/workflow-status-badge.d.ts} +0 -0
- /package/dist/components/{workflow-status-badge.js.map → domain/workflow/workflow-status-badge.js.map} +0 -0
- /package/dist/components/{workflow-stepper.d.ts → domain/workflow/workflow-stepper.d.ts} +0 -0
- /package/dist/components/{workflow-stepper.js.map → domain/workflow/workflow-stepper.js.map} +0 -0
- /package/dist/components/{alert.js.map → feedback/alert.js.map} +0 -0
- /package/dist/components/{progress.d.ts → feedback/progress.d.ts} +0 -0
- /package/dist/components/{progress.js.map → feedback/progress.js.map} +0 -0
- /package/dist/components/{skeleton.d.ts → feedback/skeleton.d.ts} +0 -0
- /package/dist/components/{skeleton.js.map → feedback/skeleton.js.map} +0 -0
- /package/dist/components/{button.js.map → inputs/button.js.map} +0 -0
- /package/dist/components/{checkbox.d.ts → inputs/checkbox.d.ts} +0 -0
- /package/dist/components/{checkbox.js.map → inputs/checkbox.js.map} +0 -0
- /package/dist/components/{color-picker.d.ts → inputs/color-picker.d.ts} +0 -0
- /package/dist/components/{color-picker.js.map → inputs/color-picker.js.map} +0 -0
- /package/dist/components/{combobox.d.ts → inputs/combobox.d.ts} +0 -0
- /package/dist/components/{combobox.js.map → inputs/combobox.js.map} +0 -0
- /package/dist/components/{file-upload.d.ts → inputs/file-upload.d.ts} +0 -0
- /package/dist/components/{file-upload.js.map → inputs/file-upload.js.map} +0 -0
- /package/dist/components/{form.d.ts → inputs/form.d.ts} +0 -0
- /package/dist/components/{input-otp.d.ts → inputs/input-otp.d.ts} +0 -0
- /package/dist/components/{input-otp.js.map → inputs/input-otp.js.map} +0 -0
- /package/dist/components/{input.js.map → inputs/input.js.map} +0 -0
- /package/dist/components/{label.d.ts → inputs/label.d.ts} +0 -0
- /package/dist/components/{label.js.map → inputs/label.js.map} +0 -0
- /package/dist/components/{password-input.js.map → inputs/password-input.js.map} +0 -0
- /package/dist/components/{radio-group.d.ts → inputs/radio-group.d.ts} +0 -0
- /package/dist/components/{radio-group.js.map → inputs/radio-group.js.map} +0 -0
- /package/dist/components/{rating.d.ts → inputs/rating.d.ts} +0 -0
- /package/dist/components/{rating.js.map → inputs/rating.js.map} +0 -0
- /package/dist/components/{select.d.ts → inputs/select.d.ts} +0 -0
- /package/dist/components/{select.js.map → inputs/select.js.map} +0 -0
- /package/dist/components/{slider.d.ts → inputs/slider.d.ts} +0 -0
- /package/dist/components/{slider.js.map → inputs/slider.js.map} +0 -0
- /package/dist/components/{slug-input.d.ts → inputs/slug-input.d.ts} +0 -0
- /package/dist/components/{slug-input.js.map → inputs/slug-input.js.map} +0 -0
- /package/dist/components/{switch.d.ts → inputs/switch.d.ts} +0 -0
- /package/dist/components/{switch.js.map → inputs/switch.js.map} +0 -0
- /package/dist/components/{tag-input.d.ts → inputs/tag-input.d.ts} +0 -0
- /package/dist/components/{tag-input.js.map → inputs/tag-input.js.map} +0 -0
- /package/dist/components/{textarea.js.map → inputs/textarea.js.map} +0 -0
- /package/dist/components/{time-picker.d.ts → inputs/time-picker.d.ts} +0 -0
- /package/dist/components/{breadcrumb.d.ts → navigation/breadcrumb.d.ts} +0 -0
- /package/dist/components/{breadcrumb.js.map → navigation/breadcrumb.js.map} +0 -0
- /package/dist/components/{command.js.map → navigation/command.js.map} +0 -0
- /package/dist/components/{context-menu.d.ts → navigation/context-menu.d.ts} +0 -0
- /package/dist/components/{context-menu.js.map → navigation/context-menu.js.map} +0 -0
- /package/dist/components/{dropdown-menu.d.ts → navigation/dropdown-menu.d.ts} +0 -0
- /package/dist/components/{dropdown-menu.js.map → navigation/dropdown-menu.js.map} +0 -0
- /package/dist/components/{menubar.d.ts → navigation/menubar.d.ts} +0 -0
- /package/dist/components/{menubar.js.map → navigation/menubar.js.map} +0 -0
- /package/dist/components/{navigation-menu.d.ts → navigation/navigation-menu.d.ts} +0 -0
- /package/dist/components/{navigation-menu.js.map → navigation/navigation-menu.js.map} +0 -0
- /package/dist/components/{pagination.js.map → navigation/pagination.js.map} +0 -0
- /package/dist/components/{tabs.d.ts → navigation/tabs.d.ts} +0 -0
- /package/dist/components/{tabs.js.map → navigation/tabs.js.map} +0 -0
- /package/dist/components/{alert-dialog.d.ts → overlay/alert-dialog.d.ts} +0 -0
- /package/dist/components/{alert-dialog.js.map → overlay/alert-dialog.js.map} +0 -0
- /package/dist/components/{dialog.d.ts → overlay/dialog.d.ts} +0 -0
- /package/dist/components/{dialog.js.map → overlay/dialog.js.map} +0 -0
- /package/dist/components/{drawer.d.ts → overlay/drawer.d.ts} +0 -0
- /package/dist/components/{drawer.js.map → overlay/drawer.js.map} +0 -0
- /package/dist/components/{hover-card.d.ts → overlay/hover-card.d.ts} +0 -0
- /package/dist/components/{hover-card.js.map → overlay/hover-card.js.map} +0 -0
- /package/dist/components/{popover.d.ts → overlay/popover.d.ts} +0 -0
- /package/dist/components/{popover.js.map → overlay/popover.js.map} +0 -0
- /package/dist/components/{sheet.d.ts → overlay/sheet.d.ts} +0 -0
- /package/dist/components/{sheet.js.map → overlay/sheet.js.map} +0 -0
- /package/dist/components/{sonner.d.ts → overlay/sonner.d.ts} +0 -0
- /package/dist/components/{sonner.js.map → overlay/sonner.js.map} +0 -0
- /package/dist/components/{tooltip.d.ts → overlay/tooltip.d.ts} +0 -0
- /package/dist/components/{tooltip.js.map → overlay/tooltip.js.map} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/display/accordion.tsx"],"names":[],"mappings":";;;;;AA8BA,SAAS,SAAA,CAAU;AAAA,EACjB,GAAG;AACL,CAAA,EAAyD;AACvD,EAAA,2BAA2B,kBAAA,CAAA,IAAA,EAAnB,EAAwB,WAAA,EAAU,WAAA,EAAa,GAAG,KAAA,EAAO,CAAA;AACnE;AAGA,SAAS,aAAA,CAAc;AAAA,EACrB,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAyD;AACvD,EAAA,uBACE,GAAA;AAAA,IAAoB,kBAAA,CAAA,IAAA;AAAA,IAAnB;AAAA,MACC,WAAA,EAAU,gBAAA;AAAA,MACV,SAAA,EAAW,EAAA,CAAG,0BAAA,EAA4B,SAAS,CAAA;AAAA,MAClD,GAAG;AAAA;AAAA,GACN;AAEJ;AAGA,SAAS,gBAAA,CAAiB;AAAA,EACxB,SAAA;AAAA,EACA,QAAA;AAAA,EACA,GAAG;AACL,CAAA,EAA4D;AAC1D,EAAA,uBACE,GAAA,CAAoB,kBAAA,CAAA,MAAA,EAAnB,EAA0B,SAAA,EAAU,MAAA,EACnC,QAAA,kBAAA,IAAA;AAAA,IAAoB,kBAAA,CAAA,OAAA;AAAA,IAAnB;AAAA,MACC,WAAA,EAAU,mBAAA;AAAA,MACV,SAAA,EAAW,EAAA;AAAA,QACT,qUAAA;AAAA,QACA;AAAA,OACF;AAAA,MACC,GAAG,KAAA;AAAA,MAEH,QAAA,EAAA;AAAA,QAAA,QAAA;AAAA,wBACD,GAAA,CAAC,eAAA,EAAA,EAAgB,SAAA,EAAU,6GAAA,EAA8G;AAAA;AAAA;AAAA,GAC3I,EACF,CAAA;AAEJ;AAGA,SAAS,gBAAA,CAAiB;AAAA,EACxB,SAAA;AAAA,EACA,QAAA;AAAA,EACA,GAAG;AACL,CAAA,EAA4D;AAC1D,EAAA,uBACE,GAAA;AAAA,IAAoB,kBAAA,CAAA,OAAA;AAAA,IAAnB;AAAA,MACC,WAAA,EAAU,mBAAA;AAAA,MACV,SAAA,EAAU,2GAAA;AAAA,MACT,GAAG,KAAA;AAAA,MAEJ,8BAAC,KAAA,EAAA,EAAI,SAAA,EAAW,GAAG,oCAAA,EAAsC,SAAS,GAAI,QAAA,EAAS;AAAA;AAAA,GACjF;AAEJ","file":"chunk-CECQY5LL.js","sourcesContent":["import * as React from \"react\";\nimport * as AccordionPrimitive from \"@radix-ui/react-accordion\";\nimport { ChevronDownIcon } from \"lucide-react\";\n\nimport { cn } from \"../../lib/utils\";\n\n/**\n * Vertically collapsible content sections built on Radix Accordion.\n *\n * Supports `\"single\"` (one panel open at a time) and `\"multiple\"` (any number open)\n * modes via the `type` prop. Each section animates open/closed with a chevron indicator.\n *\n * @example\n * ```tsx\n * <Accordion type=\"single\" collapsible>\n * <AccordionItem value=\"item-1\">\n * <AccordionTrigger>Is it accessible?</AccordionTrigger>\n * <AccordionContent>\n * Yes. It adheres to the WAI-ARIA Accordion pattern.\n * </AccordionContent>\n * </AccordionItem>\n * <AccordionItem value=\"item-2\">\n * <AccordionTrigger>Is it styled?</AccordionTrigger>\n * <AccordionContent>\n * Yes. It ships with default styles via Tailwind CSS.\n * </AccordionContent>\n * </AccordionItem>\n * </Accordion>\n * ```\n */\nfunction Accordion({\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Root>) {\n return <AccordionPrimitive.Root data-slot=\"accordion\" {...props} />;\n}\n\n/** Individual accordion section. Requires a unique `value` prop. */\nfunction AccordionItem({\n className,\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Item>) {\n return (\n <AccordionPrimitive.Item\n data-slot=\"accordion-item\"\n className={cn(\"border-b last:border-b-0\", className)}\n {...props}\n />\n );\n}\n\n/** Clickable trigger that toggles its parent `AccordionItem`. Renders a chevron icon that rotates on open. */\nfunction AccordionTrigger({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Trigger>) {\n return (\n <AccordionPrimitive.Header className=\"flex\">\n <AccordionPrimitive.Trigger\n data-slot=\"accordion-trigger\"\n className={cn(\n \"focus-visible:border-ring focus-visible:ring-ring/50 flex flex-1 items-start justify-between gap-4 rounded-md py-[var(--density-accordion)] text-left text-sm font-medium transition-all outline-none hover:underline focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50 [&[data-state=open]>svg]:rotate-180\",\n className,\n )}\n {...props}\n >\n {children}\n <ChevronDownIcon className=\"text-muted-foreground pointer-events-none size-4 shrink-0 translate-y-0.5 transition-transform duration-200\" />\n </AccordionPrimitive.Trigger>\n </AccordionPrimitive.Header>\n );\n}\n\n/** Animated collapsible content area within an `AccordionItem`. */\nfunction AccordionContent({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Content>) {\n return (\n <AccordionPrimitive.Content\n data-slot=\"accordion-content\"\n className=\"data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down overflow-hidden text-sm\"\n {...props}\n >\n <div className={cn(\"pt-0 pb-[var(--density-accordion)]\", className)}>{children}</div>\n </AccordionPrimitive.Content>\n );\n}\n\nexport { Accordion, AccordionItem, AccordionTrigger, AccordionContent };"]}
|
|
@@ -34,5 +34,5 @@ function HoverCardContent({
|
|
|
34
34
|
}
|
|
35
35
|
|
|
36
36
|
export { HoverCard, HoverCardContent, HoverCardTrigger };
|
|
37
|
-
//# sourceMappingURL=chunk-
|
|
38
|
-
//# sourceMappingURL=chunk-
|
|
37
|
+
//# sourceMappingURL=chunk-CLYBVDEQ.js.map
|
|
38
|
+
//# sourceMappingURL=chunk-CLYBVDEQ.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/overlay/hover-card.tsx"],"names":[],"mappings":";;;;AAqCA,SAAS,SAAA,CAAU;AAAA,EACjB,GAAG;AACL,CAAA,EAAyD;AACvD,EAAA,2BAA2B,kBAAA,CAAA,IAAA,EAAnB,EAAwB,WAAA,EAAU,YAAA,EAAc,GAAG,KAAA,EAAO,CAAA;AACpE;AAGA,SAAS,gBAAA,CAAiB;AAAA,EACxB,GAAG;AACL,CAAA,EAA4D;AAC1D,EAAA,2BACsB,kBAAA,CAAA,OAAA,EAAnB,EAA2B,WAAA,EAAU,oBAAA,EAAsB,GAAG,KAAA,EAAO,CAAA;AAE1E;AAGA,SAAS,gBAAA,CAAiB;AAAA,EACxB,SAAA;AAAA,EACA,KAAA,GAAQ,QAAA;AAAA,EACR,UAAA,GAAa,CAAA;AAAA,EACb,GAAG;AACL,CAAA,EAA4D;AAC1D,EAAA,uBACE,GAAA,CAAoB,kBAAA,CAAA,MAAA,EAAnB,EAA0B,WAAA,EAAU,mBAAA,EACnC,QAAA,kBAAA,GAAA;AAAA,IAAoB,kBAAA,CAAA,OAAA;AAAA,IAAnB;AAAA,MACC,WAAA,EAAU,oBAAA;AAAA,MACV,KAAA;AAAA,MACA,UAAA;AAAA,MACA,SAAA,EAAW,EAAA;AAAA,QACT,meAAA;AAAA,QACA;AAAA,OACF;AAAA,MACC,GAAG;AAAA;AAAA,GACN,EACF,CAAA;AAEJ","file":"chunk-CLYBVDEQ.js","sourcesContent":["import * as React from \"react\";\nimport * as HoverCardPrimitive from \"@radix-ui/react-hover-card\";\n\nimport { cn } from \"../../lib/utils\";\n\n/**\n * Hover-activated floating card built on Radix UI HoverCard.\n *\n * Displays a preview card when the user hovers over a trigger element.\n * Ideal for showing user profiles, link previews, or supplementary info\n * without requiring a click.\n *\n * @example\n * ```tsx\n * <HoverCard>\n * <HoverCardTrigger asChild>\n * <a href=\"/user/john\" className=\"underline\">\n * @john\n * </a>\n * </HoverCardTrigger>\n * <HoverCardContent>\n * <div className=\"flex gap-4\">\n * <Avatar>\n * <AvatarImage src=\"/avatars/john.png\" />\n * <AvatarFallback>JD</AvatarFallback>\n * </Avatar>\n * <div>\n * <h4 className=\"text-sm font-semibold\">John Doe</h4>\n * <p className=\"text-sm text-muted-foreground\">\n * Software Engineer\n * </p>\n * </div>\n * </div>\n * </HoverCardContent>\n * </HoverCard>\n * ```\n */\nfunction HoverCard({\n ...props\n}: React.ComponentProps<typeof HoverCardPrimitive.Root>) {\n return <HoverCardPrimitive.Root data-slot=\"hover-card\" {...props} />;\n}\n\n/** Element that shows the hover card on mouse enter. Use `asChild` to merge into your own element. */\nfunction HoverCardTrigger({\n ...props\n}: React.ComponentProps<typeof HoverCardPrimitive.Trigger>) {\n return (\n <HoverCardPrimitive.Trigger data-slot=\"hover-card-trigger\" {...props} />\n );\n}\n\n/** Floating content panel that appears on hover. */\nfunction HoverCardContent({\n className,\n align = \"center\",\n sideOffset = 4,\n ...props\n}: React.ComponentProps<typeof HoverCardPrimitive.Content>) {\n return (\n <HoverCardPrimitive.Portal data-slot=\"hover-card-portal\">\n <HoverCardPrimitive.Content\n data-slot=\"hover-card-content\"\n align={align}\n sideOffset={sideOffset}\n className={cn(\n \"bg-popover text-popover-foreground 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=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-64 origin-(--radix-hover-card-content-transform-origin) rounded-md border p-4 shadow-md outline-hidden\",\n className,\n )}\n {...props}\n />\n </HoverCardPrimitive.Portal>\n );\n}\n\nexport { HoverCard, HoverCardTrigger, HoverCardContent };"]}
|
|
@@ -91,5 +91,5 @@ function AlertDescription({
|
|
|
91
91
|
}
|
|
92
92
|
|
|
93
93
|
export { Alert, AlertDescription, AlertTitle };
|
|
94
|
-
//# sourceMappingURL=chunk-
|
|
95
|
-
//# sourceMappingURL=chunk-
|
|
94
|
+
//# sourceMappingURL=chunk-CNS3OMZ7.js.map
|
|
95
|
+
//# sourceMappingURL=chunk-CNS3OMZ7.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/feedback/alert.tsx"],"names":[],"mappings":"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","file":"chunk-CNS3OMZ7.js","sourcesContent":["import * as React from \"react\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport { cn } from \"../../lib/utils\";\nimport type { UIColor } from \"../../lib/types\";\n\nconst alertVariants = cva(\n \"relative w-full rounded-lg border px-4 py-3 text-sm grid has-[>svg]:grid-cols-[calc(var(--spacing)*4)_1fr] grid-cols-[0_1fr] has-[>svg]:gap-x-3 gap-y-0.5 items-start [&>svg]:size-4 [&>svg]:translate-y-0.5 [&>svg]:text-current\",\n {\n variants: {\n variant: {\n // Bordered card style — color applied via compoundVariants\n default: \"\",\n // Legacy — maps to default + destructive color (backward compatible)\n destructive: \"\",\n // Filled background style — color applied via compoundVariants\n soft: \"\",\n },\n color: {\n primary: \"\",\n destructive: \"\",\n success: \"\",\n warning: \"\",\n info: \"\",\n },\n },\n compoundVariants: [\n // ── Default (bordered) × color ──\n { variant: \"default\", color: \"primary\", className: \"bg-card text-card-foreground\" },\n { variant: \"default\", color: \"destructive\", className: \"text-destructive bg-card [&>svg]:text-current *:data-[slot=alert-description]:text-destructive/90\" },\n { variant: \"default\", color: \"success\", className: \"text-success bg-card [&>svg]:text-current *:data-[slot=alert-description]:text-success/90\" },\n { variant: \"default\", color: \"warning\", className: \"text-warning bg-card [&>svg]:text-current *:data-[slot=alert-description]:text-warning/90\" },\n { variant: \"default\", color: \"info\", className: \"text-info bg-card [&>svg]:text-current *:data-[slot=alert-description]:text-info/90\" },\n\n // ── Legacy destructive variant (backward compat) ──\n { variant: \"destructive\", className: \"text-destructive bg-card [&>svg]:text-current *:data-[slot=alert-description]:text-destructive/90\" },\n\n // ── Soft (filled bg) × color ──\n { variant: \"soft\", color: \"primary\", className: \"bg-primary/10 text-primary border-primary/20 [&>svg]:text-current *:data-[slot=alert-description]:text-primary/90\" },\n { variant: \"soft\", color: \"destructive\", className: \"bg-destructive/10 text-destructive border-destructive/20 [&>svg]:text-current *:data-[slot=alert-description]:text-destructive/90\" },\n { variant: \"soft\", color: \"success\", className: \"bg-success/10 text-success border-success/20 [&>svg]:text-current *:data-[slot=alert-description]:text-success/90\" },\n { variant: \"soft\", color: \"warning\", className: \"bg-warning/10 text-warning border-warning/20 [&>svg]:text-current *:data-[slot=alert-description]:text-warning/90\" },\n { variant: \"soft\", color: \"info\", className: \"bg-info/10 text-info border-info/20 [&>svg]:text-current *:data-[slot=alert-description]:text-info/90\" },\n ],\n defaultVariants: {\n variant: \"default\",\n color: \"primary\",\n },\n },\n);\n\ninterface AlertProps\n extends React.ComponentProps<\"div\">,\n Omit<VariantProps<typeof alertVariants>, \"color\"> {\n /**\n * Semantic color intent.\n *\n * @default \"primary\"\n * @example\n * ```tsx\n * <Alert color=\"success\">Operation completed</Alert>\n * <Alert color=\"warning\">Check your input</Alert>\n * <Alert variant=\"soft\" color=\"info\">Tip</Alert>\n * ```\n */\n color?: UIColor;\n}\n\n/**\n * Static alert banner for displaying important messages.\n *\n * Supports semantic colors via `color` prop and two visual styles: `default` (bordered)\n * and `soft` (filled background). All existing `variant=\"destructive\"` usage continues to work.\n *\n * @example\n * ```tsx\n * // Default (bordered)\n * <Alert>\n * <InfoIcon className=\"size-4\" />\n * <AlertTitle>Heads up!</AlertTitle>\n * <AlertDescription>You can add components using the CLI.</AlertDescription>\n * </Alert>\n *\n * // Semantic colors\n * <Alert color=\"success\">\n * <CheckIcon className=\"size-4\" />\n * <AlertTitle>Success</AlertTitle>\n * <AlertDescription>Changes saved successfully.</AlertDescription>\n * </Alert>\n *\n * // Soft variant (filled background)\n * <Alert variant=\"soft\" color=\"warning\">\n * <AlertTriangleIcon className=\"size-4\" />\n * <AlertTitle>Warning</AlertTitle>\n * <AlertDescription>This action cannot be undone.</AlertDescription>\n * </Alert>\n *\n * // Legacy (still works)\n * <Alert variant=\"destructive\">\n * <AlertCircleIcon className=\"size-4\" />\n * <AlertTitle>Error</AlertTitle>\n * <AlertDescription>Session expired.</AlertDescription>\n * </Alert>\n * ```\n */\nfunction Alert({\n className,\n variant,\n color,\n ...props\n}: AlertProps) {\n return (\n <div\n data-slot=\"alert\"\n role=\"alert\"\n className={cn(alertVariants({ variant, color }), className)}\n {...props}\n />\n );\n}\n\n/** Bold title text within an Alert. Rendered in the second grid column when an icon is present. */\nfunction AlertTitle({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"alert-title\"\n className={cn(\n \"col-start-2 line-clamp-1 min-h-4 font-medium tracking-tight\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** Descriptive body text within an Alert, rendered below the title. */\nfunction AlertDescription({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"alert-description\"\n className={cn(\n \"text-muted-foreground col-start-2 grid justify-items-start gap-1 text-sm [&_p]:leading-relaxed\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport { Alert, AlertTitle, AlertDescription };\n"]}
|
|
@@ -50,5 +50,5 @@ function TooltipContent({
|
|
|
50
50
|
}
|
|
51
51
|
|
|
52
52
|
export { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger };
|
|
53
|
-
//# sourceMappingURL=chunk-
|
|
54
|
-
//# sourceMappingURL=chunk-
|
|
53
|
+
//# sourceMappingURL=chunk-CSYH7P6N.js.map
|
|
54
|
+
//# sourceMappingURL=chunk-CSYH7P6N.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/overlay/tooltip.tsx"],"names":[],"mappings":";;;;AAMA,SAAS,eAAA,CAAgB;AAAA,EACvB,aAAA,GAAgB,CAAA;AAAA,EAChB,GAAG;AACL,CAAA,EAA2D;AACzD,EAAA,uBACE,GAAA;AAAA,IAAkB,gBAAA,CAAA,QAAA;AAAA,IAAjB;AAAA,MACC,WAAA,EAAU,kBAAA;AAAA,MACV,aAAA;AAAA,MACC,GAAG;AAAA;AAAA,GACN;AAEJ;AAuBA,SAAS,OAAA,CAAQ;AAAA,EACf,GAAG;AACL,CAAA,EAAuD;AACrD,EAAA,uBACE,GAAA,CAAC,mBACC,QAAA,kBAAA,GAAA,CAAkB,gBAAA,CAAA,IAAA,EAAjB,EAAsB,WAAA,EAAU,SAAA,EAAW,GAAG,KAAA,EAAO,CAAA,EACxD,CAAA;AAEJ;AAGA,SAAS,cAAA,CAAe;AAAA,EACtB,GAAG;AACL,CAAA,EAA0D;AACxD,EAAA,2BAAyB,gBAAA,CAAA,OAAA,EAAjB,EAAyB,WAAA,EAAU,iBAAA,EAAmB,GAAG,KAAA,EAAO,CAAA;AAC1E;AAGA,SAAS,cAAA,CAAe;AAAA,EACtB,SAAA;AAAA,EACA,UAAA,GAAa,CAAA;AAAA,EACb,QAAA;AAAA,EACA,GAAG;AACL,CAAA,EAA0D;AACxD,EAAA,uBACE,GAAA,CAAkB,yBAAjB,EACC,QAAA,kBAAA,IAAA;AAAA,IAAkB,gBAAA,CAAA,OAAA;AAAA,IAAjB;AAAA,MACC,WAAA,EAAU,iBAAA;AAAA,MACV,UAAA;AAAA,MACA,SAAA,EAAW,EAAA;AAAA,QACT,waAAA;AAAA,QACA;AAAA,OACF;AAAA,MACC,GAAG,KAAA;AAAA,MAEH,QAAA,EAAA;AAAA,QAAA,QAAA;AAAA,wBACD,GAAA,CAAkB,gBAAA,CAAA,KAAA,EAAjB,EAAuB,SAAA,EAAU,8FAAA,EAA+F;AAAA;AAAA;AAAA,GACnI,EACF,CAAA;AAEJ","file":"chunk-CSYH7P6N.js","sourcesContent":["import * as React from \"react\";\nimport * as TooltipPrimitive from \"@radix-ui/react-tooltip\";\n\nimport { cn } from \"../../lib/utils\";\n\n/** Provider that configures shared tooltip settings like delay duration. */\nfunction TooltipProvider({\n delayDuration = 0,\n ...props\n}: React.ComponentProps<typeof TooltipPrimitive.Provider>) {\n return (\n <TooltipPrimitive.Provider\n data-slot=\"tooltip-provider\"\n delayDuration={delayDuration}\n {...props}\n />\n );\n}\n\n/**\n * Tooltip component built on Radix UI Tooltip.\n *\n * Displays a short informational label when the user hovers over or focuses\n * an element. Includes a built-in `TooltipProvider` with zero delay.\n * Renders with an arrow pointer for visual anchoring.\n *\n * @example\n * ```tsx\n * <Tooltip>\n * <TooltipTrigger asChild>\n * <Button variant=\"ghost\" size=\"icon\">\n * <InfoIcon className=\"size-4\" />\n * </Button>\n * </TooltipTrigger>\n * <TooltipContent>\n * <p>This is a helpful tooltip</p>\n * </TooltipContent>\n * </Tooltip>\n * ```\n */\nfunction Tooltip({\n ...props\n}: React.ComponentProps<typeof TooltipPrimitive.Root>) {\n return (\n <TooltipProvider>\n <TooltipPrimitive.Root data-slot=\"tooltip\" {...props} />\n </TooltipProvider>\n );\n}\n\n/** Element that shows the tooltip on hover/focus. Use `asChild` to merge into your own element. */\nfunction TooltipTrigger({\n ...props\n}: React.ComponentProps<typeof TooltipPrimitive.Trigger>) {\n return <TooltipPrimitive.Trigger data-slot=\"tooltip-trigger\" {...props} />;\n}\n\n/** Floating label that appears near the trigger. Includes an arrow indicator. */\nfunction TooltipContent({\n className,\n sideOffset = 0,\n children,\n ...props\n}: React.ComponentProps<typeof TooltipPrimitive.Content>) {\n return (\n <TooltipPrimitive.Portal>\n <TooltipPrimitive.Content\n data-slot=\"tooltip-content\"\n sideOffset={sideOffset}\n className={cn(\n \"bg-primary text-primary-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance\",\n className,\n )}\n {...props}\n >\n {children}\n <TooltipPrimitive.Arrow className=\"bg-primary fill-primary z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]\" />\n </TooltipPrimitive.Content>\n </TooltipPrimitive.Portal>\n );\n}\n\nexport { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider };"]}
|
|
@@ -207,5 +207,5 @@ function ContextMenuShortcut({
|
|
|
207
207
|
}
|
|
208
208
|
|
|
209
209
|
export { ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuPortal, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger };
|
|
210
|
-
//# sourceMappingURL=chunk-
|
|
211
|
-
//# sourceMappingURL=chunk-
|
|
210
|
+
//# sourceMappingURL=chunk-DEKVLLTL.js.map
|
|
211
|
+
//# sourceMappingURL=chunk-DEKVLLTL.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/navigation/context-menu.tsx"],"names":[],"mappings":"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","file":"chunk-DEKVLLTL.js","sourcesContent":["import * as React from \"react\";\nimport * as ContextMenuPrimitive from \"@radix-ui/react-context-menu\";\nimport { CheckIcon, ChevronRightIcon, CircleIcon } from \"lucide-react\";\n\nimport { cn } from \"../../lib/utils\";\n\n/**\n * Right-click context menu built on Radix UI ContextMenu.\n *\n * Displays a menu of actions when the user right-clicks (or long-presses)\n * on the trigger area. Supports items, checkbox items, radio items,\n * sub-menus, separators, labels, and shortcuts.\n *\n * @example\n * ```tsx\n * <ContextMenu>\n * <ContextMenuTrigger className=\"flex h-40 w-64 items-center justify-center rounded-md border border-dashed\">\n * Right click here\n * </ContextMenuTrigger>\n * <ContextMenuContent>\n * <ContextMenuItem>\n * Copy\n * <ContextMenuShortcut>Ctrl+C</ContextMenuShortcut>\n * </ContextMenuItem>\n * <ContextMenuItem>\n * Paste\n * <ContextMenuShortcut>Ctrl+V</ContextMenuShortcut>\n * </ContextMenuItem>\n * <ContextMenuSeparator />\n * <ContextMenuItem variant=\"destructive\">Delete</ContextMenuItem>\n * </ContextMenuContent>\n * </ContextMenu>\n * ```\n */\nfunction ContextMenu({\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.Root>) {\n return <ContextMenuPrimitive.Root data-slot=\"context-menu\" {...props} />;\n}\n\n/** Area that opens the context menu on right-click. */\nfunction ContextMenuTrigger({\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.Trigger>) {\n return (\n <ContextMenuPrimitive.Trigger data-slot=\"context-menu-trigger\" {...props} />\n );\n}\n\n/** Groups related context menu items together for accessibility. */\nfunction ContextMenuGroup({\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.Group>) {\n return (\n <ContextMenuPrimitive.Group data-slot=\"context-menu-group\" {...props} />\n );\n}\n\n/** Portal that renders context menu content outside the DOM hierarchy. */\nfunction ContextMenuPortal({\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.Portal>) {\n return (\n <ContextMenuPrimitive.Portal data-slot=\"context-menu-portal\" {...props} />\n );\n}\n\n/** Container for a nested sub-menu within the context menu. */\nfunction ContextMenuSub({\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.Sub>) {\n return <ContextMenuPrimitive.Sub data-slot=\"context-menu-sub\" {...props} />;\n}\n\n/** Container for radio context menu items where only one can be selected at a time. */\nfunction ContextMenuRadioGroup({\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.RadioGroup>) {\n return (\n <ContextMenuPrimitive.RadioGroup\n data-slot=\"context-menu-radio-group\"\n {...props}\n />\n );\n}\n\n/** Menu item that opens a sub-menu on hover. Displays a chevron indicator. */\nfunction ContextMenuSubTrigger({\n className,\n inset,\n children,\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.SubTrigger> & {\n inset?: boolean;\n}) {\n return (\n <ContextMenuPrimitive.SubTrigger\n data-slot=\"context-menu-sub-trigger\"\n data-inset={inset}\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n {children}\n <ChevronRightIcon className=\"ml-auto\" />\n </ContextMenuPrimitive.SubTrigger>\n );\n}\n\n/** Floating container for sub-menu items. */\nfunction ContextMenuSubContent({\n className,\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.SubContent>) {\n return (\n <ContextMenuPrimitive.SubContent\n data-slot=\"context-menu-sub-content\"\n className={cn(\n \"bg-popover text-popover-foreground 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=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] origin-(--radix-context-menu-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-lg\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** Floating container for context menu items, positioned at the cursor location. */\nfunction ContextMenuContent({\n className,\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.Content>) {\n return (\n <ContextMenuPrimitive.Portal>\n <ContextMenuPrimitive.Content\n data-slot=\"context-menu-content\"\n className={cn(\n \"bg-popover text-popover-foreground 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=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--radix-context-menu-content-available-height) min-w-[8rem] origin-(--radix-context-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md\",\n className,\n )}\n {...props}\n />\n </ContextMenuPrimitive.Portal>\n );\n}\n\n/** Actionable menu item. Set `variant=\"destructive\"` for dangerous actions, `inset` for left-padding alignment. */\nfunction ContextMenuItem({\n className,\n inset,\n variant = \"default\",\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.Item> & {\n inset?: boolean;\n variant?: \"default\" | \"destructive\";\n}) {\n return (\n <ContextMenuPrimitive.Item\n data-slot=\"context-menu-item\"\n data-inset={inset}\n data-variant={variant}\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** Menu item with a checkbox indicator for toggling options. */\nfunction ContextMenuCheckboxItem({\n className,\n children,\n checked,\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.CheckboxItem>) {\n return (\n <ContextMenuPrimitive.CheckboxItem\n data-slot=\"context-menu-checkbox-item\"\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n checked={checked}\n {...props}\n >\n <span className=\"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center\">\n <ContextMenuPrimitive.ItemIndicator>\n <CheckIcon className=\"size-4\" />\n </ContextMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </ContextMenuPrimitive.CheckboxItem>\n );\n}\n\n/** Menu item with a radio indicator for single-selection groups. */\nfunction ContextMenuRadioItem({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.RadioItem>) {\n return (\n <ContextMenuPrimitive.RadioItem\n data-slot=\"context-menu-radio-item\"\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n <span className=\"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center\">\n <ContextMenuPrimitive.ItemIndicator>\n <CircleIcon className=\"size-2 fill-current\" />\n </ContextMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </ContextMenuPrimitive.RadioItem>\n );\n}\n\n/** Non-interactive label used to title a group of menu items. */\nfunction ContextMenuLabel({\n className,\n inset,\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.Label> & {\n inset?: boolean;\n}) {\n return (\n <ContextMenuPrimitive.Label\n data-slot=\"context-menu-label\"\n data-inset={inset}\n className={cn(\n \"text-foreground px-2 py-1.5 text-sm font-medium data-[inset]:pl-8\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** Visual divider between groups of menu items. */\nfunction ContextMenuSeparator({\n className,\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.Separator>) {\n return (\n <ContextMenuPrimitive.Separator\n data-slot=\"context-menu-separator\"\n className={cn(\"bg-border -mx-1 my-1 h-px\", className)}\n {...props}\n />\n );\n}\n\n/** Keyboard shortcut hint displayed at the end of a menu item. */\nfunction ContextMenuShortcut({\n className,\n ...props\n}: React.ComponentProps<\"span\">) {\n return (\n <span\n data-slot=\"context-menu-shortcut\"\n className={cn(\n \"text-muted-foreground ml-auto text-xs tracking-widest\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport {\n ContextMenu,\n ContextMenuTrigger,\n ContextMenuContent,\n ContextMenuItem,\n ContextMenuCheckboxItem,\n ContextMenuRadioItem,\n ContextMenuLabel,\n ContextMenuSeparator,\n ContextMenuShortcut,\n ContextMenuGroup,\n ContextMenuPortal,\n ContextMenuSub,\n ContextMenuSubContent,\n ContextMenuSubTrigger,\n ContextMenuRadioGroup,\n};"]}
|
|
@@ -82,5 +82,5 @@ function CardFooter({ className, ...props }) {
|
|
|
82
82
|
}
|
|
83
83
|
|
|
84
84
|
export { Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle };
|
|
85
|
-
//# sourceMappingURL=chunk-
|
|
86
|
-
//# sourceMappingURL=chunk-
|
|
85
|
+
//# sourceMappingURL=chunk-DXKFFJIE.js.map
|
|
86
|
+
//# sourceMappingURL=chunk-DXKFFJIE.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/display/card.tsx"],"names":[],"mappings":";;;AA6BA,SAAS,IAAA,CAAK,EAAE,SAAA,EAAW,GAAG,OAAM,EAAgC;AAClE,EAAA,uBACE,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,WAAA,EAAU,MAAA;AAAA,MACV,SAAA,EAAW,EAAA;AAAA,QACT,uEAAA;AAAA,QACA;AAAA,OACF;AAAA,MACC,GAAG;AAAA;AAAA,GACN;AAEJ;AAGA,SAAS,UAAA,CAAW,EAAE,SAAA,EAAW,GAAG,OAAM,EAAgC;AACxE,EAAA,uBACE,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,WAAA,EAAU,aAAA;AAAA,MACV,SAAA,EAAW,EAAA;AAAA,QACT,0KAAA;AAAA,QACA;AAAA,OACF;AAAA,MACC,GAAG;AAAA;AAAA,GACN;AAEJ;AAGA,SAAS,SAAA,CAAU,EAAE,SAAA,EAAW,GAAG,OAAM,EAAgC;AACvE,EAAA,uBACE,GAAA;AAAA,IAAC,IAAA;AAAA,IAAA;AAAA,MACC,WAAA,EAAU,YAAA;AAAA,MACV,SAAA,EAAW,EAAA,CAAG,cAAA,EAAgB,SAAS,CAAA;AAAA,MACtC,GAAG;AAAA;AAAA,GACN;AAEJ;AAGA,SAAS,eAAA,CAAgB,EAAE,SAAA,EAAW,GAAG,OAAM,EAAgC;AAC7E,EAAA,uBACE,GAAA;AAAA,IAAC,GAAA;AAAA,IAAA;AAAA,MACC,WAAA,EAAU,kBAAA;AAAA,MACV,SAAA,EAAW,EAAA,CAAG,uBAAA,EAAyB,SAAS,CAAA;AAAA,MAC/C,GAAG;AAAA;AAAA,GACN;AAEJ;AAGA,SAAS,UAAA,CAAW,EAAE,SAAA,EAAW,GAAG,OAAM,EAAgC;AACxE,EAAA,uBACE,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,WAAA,EAAU,aAAA;AAAA,MACV,SAAA,EAAW,EAAA;AAAA,QACT,gEAAA;AAAA,QACA;AAAA,OACF;AAAA,MACC,GAAG;AAAA;AAAA,GACN;AAEJ;AAGA,SAAS,WAAA,CAAY,EAAE,SAAA,EAAW,GAAG,OAAM,EAAgC;AACzE,EAAA,uBACE,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,WAAA,EAAU,cAAA;AAAA,MACV,SAAA,EAAW,EAAA,CAAG,gCAAA,EAAkC,SAAS,CAAA;AAAA,MACxD,GAAG;AAAA;AAAA,GACN;AAEJ;AAGA,SAAS,UAAA,CAAW,EAAE,SAAA,EAAW,GAAG,OAAM,EAAgC;AACxE,EAAA,uBACE,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,WAAA,EAAU,aAAA;AAAA,MACV,SAAA,EAAW,EAAA,CAAG,uDAAA,EAAyD,SAAS,CAAA;AAAA,MAC/E,GAAG;AAAA;AAAA,GACN;AAEJ","file":"chunk-DXKFFJIE.js","sourcesContent":["import * as React from \"react\";\n\nimport { cn } from \"../../lib/utils\";\n\n/**\n * Styled card container with header, title, description, action, content, and footer sub-components.\n *\n * Uses density tokens (`px-card`, `pt-card`, `pb-card`, `gap-card`) for consistent\n * internal spacing that adapts to the design system.\n *\n * @example\n * ```tsx\n * <Card>\n * <CardHeader>\n * <CardTitle>Notifications</CardTitle>\n * <CardDescription>You have 3 unread messages.</CardDescription>\n * <CardAction>\n * <Button variant=\"outline\">Mark all read</Button>\n * </CardAction>\n * </CardHeader>\n * <CardContent>\n * <p>Your recent activity will appear here.</p>\n * </CardContent>\n * <CardFooter>\n * <Button>View all</Button>\n * </CardFooter>\n * </Card>\n * ```\n */\nfunction Card({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card\"\n className={cn(\n \"bg-card text-card-foreground flex flex-col gap-card rounded-lg border\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** Card header section. Lays out title, description, and optional action in a grid. */\nfunction CardHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-header\"\n className={cn(\n \"@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-1.5 px-card pt-card has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-card\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** Card title rendered as an `<h4>` element. */\nfunction CardTitle({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <h4\n data-slot=\"card-title\"\n className={cn(\"leading-none\", className)}\n {...props}\n />\n );\n}\n\n/** Card description text displayed in muted foreground color. */\nfunction CardDescription({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <p\n data-slot=\"card-description\"\n className={cn(\"text-muted-foreground\", className)}\n {...props}\n />\n );\n}\n\n/** Card action slot positioned at the top-right of `CardHeader`. Place buttons or menus here. */\nfunction CardAction({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-action\"\n className={cn(\n \"col-start-2 row-span-2 row-start-1 self-start justify-self-end\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** Card content area with horizontal padding. Bottom padding applied when last child. */\nfunction CardContent({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-content\"\n className={cn(\"px-card [&:last-child]:pb-card\", className)}\n {...props}\n />\n );\n}\n\n/** Card footer with horizontal layout. Typically used for action buttons. */\nfunction CardFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-footer\"\n className={cn(\"flex items-center px-card pb-card [.border-t]:pt-card\", className)}\n {...props}\n />\n );\n}\n\nexport {\n Card,\n CardHeader,\n CardFooter,\n CardTitle,\n CardAction,\n CardDescription,\n CardContent,\n};\n"]}
|
|
@@ -215,5 +215,5 @@ function DropdownMenuSubContent({
|
|
|
215
215
|
}
|
|
216
216
|
|
|
217
217
|
export { DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger };
|
|
218
|
-
//# sourceMappingURL=chunk-
|
|
219
|
-
//# sourceMappingURL=chunk-
|
|
218
|
+
//# sourceMappingURL=chunk-DXZZURPN.js.map
|
|
219
|
+
//# sourceMappingURL=chunk-DXZZURPN.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/navigation/dropdown-menu.tsx"],"names":[],"mappings":"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","file":"chunk-DXZZURPN.js","sourcesContent":["import * as React from \"react\";\nimport * as DropdownMenuPrimitive from \"@radix-ui/react-dropdown-menu\";\nimport { CheckIcon, ChevronRightIcon, CircleIcon } from \"lucide-react\";\n\nimport { cn } from \"../../lib/utils\";\n\n/**\n * Dropdown menu component built on Radix UI DropdownMenu.\n *\n * Displays a menu of actions or options triggered by a button click.\n * Supports items, checkbox items, radio items, sub-menus, separators,\n * labels, shortcuts, and destructive variants.\n *\n * @example\n * ```tsx\n * <DropdownMenu>\n * <DropdownMenuTrigger asChild>\n * <Button variant=\"outline\">Actions</Button>\n * </DropdownMenuTrigger>\n * <DropdownMenuContent>\n * <DropdownMenuLabel>My Account</DropdownMenuLabel>\n * <DropdownMenuSeparator />\n * <DropdownMenuItem>\n * <UserIcon className=\"size-4\" />\n * Profile\n * <DropdownMenuShortcut>Ctrl+P</DropdownMenuShortcut>\n * </DropdownMenuItem>\n * <DropdownMenuItem>\n * <SettingsIcon className=\"size-4\" />\n * Settings\n * </DropdownMenuItem>\n * <DropdownMenuSeparator />\n * <DropdownMenuItem variant=\"destructive\">\n * <TrashIcon className=\"size-4\" />\n * Delete\n * </DropdownMenuItem>\n * </DropdownMenuContent>\n * </DropdownMenu>\n * ```\n */\nfunction DropdownMenu({\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Root>) {\n return <DropdownMenuPrimitive.Root data-slot=\"dropdown-menu\" {...props} />;\n}\n\n/** Portal that renders dropdown content outside the DOM hierarchy. */\nfunction DropdownMenuPortal({\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Portal>) {\n return (\n <DropdownMenuPrimitive.Portal data-slot=\"dropdown-menu-portal\" {...props} />\n );\n}\n\n/** Element that opens the dropdown menu when clicked. Use `asChild` to merge into your own button. */\nfunction DropdownMenuTrigger({\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Trigger>) {\n return (\n <DropdownMenuPrimitive.Trigger\n data-slot=\"dropdown-menu-trigger\"\n {...props}\n />\n );\n}\n\n/** Floating container for menu items, positioned relative to the trigger. */\nfunction DropdownMenuContent({\n className,\n sideOffset = 4,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Content>) {\n return (\n <DropdownMenuPrimitive.Portal>\n <DropdownMenuPrimitive.Content\n data-slot=\"dropdown-menu-content\"\n sideOffset={sideOffset}\n className={cn(\n \"bg-popover text-popover-foreground 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=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--radix-dropdown-menu-content-available-height) min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md\",\n className,\n )}\n {...props}\n />\n </DropdownMenuPrimitive.Portal>\n );\n}\n\n/** Groups related menu items together for accessibility. */\nfunction DropdownMenuGroup({\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Group>) {\n return (\n <DropdownMenuPrimitive.Group data-slot=\"dropdown-menu-group\" {...props} />\n );\n}\n\n/** Actionable menu item. Set `variant=\"destructive\"` for dangerous actions, `inset` for left-padding alignment. */\nfunction DropdownMenuItem({\n className,\n inset,\n variant = \"default\",\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Item> & {\n inset?: boolean;\n variant?: \"default\" | \"destructive\";\n}) {\n return (\n <DropdownMenuPrimitive.Item\n data-slot=\"dropdown-menu-item\"\n data-inset={inset}\n data-variant={variant}\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-[var(--density-menu-item-py)] text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** Menu item with a checkbox indicator for toggling options. */\nfunction DropdownMenuCheckboxItem({\n className,\n children,\n checked,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.CheckboxItem>) {\n return (\n <DropdownMenuPrimitive.CheckboxItem\n data-slot=\"dropdown-menu-checkbox-item\"\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n checked={checked}\n {...props}\n >\n <span className=\"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center\">\n <DropdownMenuPrimitive.ItemIndicator>\n <CheckIcon className=\"size-4\" />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.CheckboxItem>\n );\n}\n\n/** Container for radio menu items where only one can be selected at a time. */\nfunction DropdownMenuRadioGroup({\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.RadioGroup>) {\n return (\n <DropdownMenuPrimitive.RadioGroup\n data-slot=\"dropdown-menu-radio-group\"\n {...props}\n />\n );\n}\n\n/** Menu item with a radio indicator for single-selection groups. */\nfunction DropdownMenuRadioItem({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.RadioItem>) {\n return (\n <DropdownMenuPrimitive.RadioItem\n data-slot=\"dropdown-menu-radio-item\"\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n <span className=\"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center\">\n <DropdownMenuPrimitive.ItemIndicator>\n <CircleIcon className=\"size-2 fill-current\" />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.RadioItem>\n );\n}\n\n/** Non-interactive label used to title a group of menu items. */\nfunction DropdownMenuLabel({\n className,\n inset,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Label> & {\n inset?: boolean;\n}) {\n return (\n <DropdownMenuPrimitive.Label\n data-slot=\"dropdown-menu-label\"\n data-inset={inset}\n className={cn(\n \"px-2 py-1.5 text-sm font-medium data-[inset]:pl-8\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** Visual divider between groups of menu items. */\nfunction DropdownMenuSeparator({\n className,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Separator>) {\n return (\n <DropdownMenuPrimitive.Separator\n data-slot=\"dropdown-menu-separator\"\n className={cn(\"bg-border -mx-1 my-1 h-px\", className)}\n {...props}\n />\n );\n}\n\n/** Keyboard shortcut hint displayed at the end of a menu item. */\nfunction DropdownMenuShortcut({\n className,\n ...props\n}: React.ComponentProps<\"span\">) {\n return (\n <span\n data-slot=\"dropdown-menu-shortcut\"\n className={cn(\n \"text-muted-foreground ml-auto text-xs tracking-widest\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** Container for a nested sub-menu within the dropdown. */\nfunction DropdownMenuSub({\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Sub>) {\n return <DropdownMenuPrimitive.Sub data-slot=\"dropdown-menu-sub\" {...props} />;\n}\n\n/** Menu item that opens a sub-menu on hover. Displays a chevron indicator. */\nfunction DropdownMenuSubTrigger({\n className,\n inset,\n children,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.SubTrigger> & {\n inset?: boolean;\n}) {\n return (\n <DropdownMenuPrimitive.SubTrigger\n data-slot=\"dropdown-menu-sub-trigger\"\n data-inset={inset}\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[inset]:pl-8\",\n className,\n )}\n {...props}\n >\n {children}\n <ChevronRightIcon className=\"ml-auto size-4\" />\n </DropdownMenuPrimitive.SubTrigger>\n );\n}\n\n/** Floating container for sub-menu items. */\nfunction DropdownMenuSubContent({\n className,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.SubContent>) {\n return (\n <DropdownMenuPrimitive.SubContent\n data-slot=\"dropdown-menu-sub-content\"\n className={cn(\n \"bg-popover text-popover-foreground 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=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-lg\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport {\n DropdownMenu,\n DropdownMenuPortal,\n DropdownMenuTrigger,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuLabel,\n DropdownMenuItem,\n DropdownMenuCheckboxItem,\n DropdownMenuRadioGroup,\n DropdownMenuRadioItem,\n DropdownMenuSeparator,\n DropdownMenuShortcut,\n DropdownMenuSub,\n DropdownMenuSubTrigger,\n DropdownMenuSubContent,\n};"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/inputs/switch.tsx"],"names":[],"mappings":";;;;AAyBA,SAAS,MAAA,CAAO;AAAA,EACd,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAgB;AACd,EAAA,uBACE,GAAA;AAAA,IAAkB,gBAAA,CAAA,IAAA;AAAA,IAAjB;AAAA,MACC,WAAA,EAAU,QAAA;AAAA,MACV,SAAA,EAAW,EAAA;AAAA,QACT,6WAAA;AAAA,QACA;AAAA,OACF;AAAA,MACC,GAAG,KAAA;AAAA,MAEJ,QAAA,kBAAA,GAAA;AAAA,QAAkB,gBAAA,CAAA,KAAA;AAAA,QAAjB;AAAA,UACC,WAAA,EAAU,cAAA;AAAA,UACV,SAAA,EAAW,EAAA;AAAA,YACT;AAAA;AACF;AAAA;AACF;AAAA,GACF;AAEJ","file":"chunk-EAY3QSID.js","sourcesContent":["import * as React from \"react\";\nimport * as SwitchPrimitives from \"@radix-ui/react-switch\";\n\nimport { cn } from \"../../lib/utils\";\n\ntype SwitchProps = React.ComponentProps<typeof SwitchPrimitives.Root>;\n\n/**\n * Toggle switch for boolean on/off states, styled as a sliding pill.\n *\n * @example\n * ```tsx\n * // Uncontrolled\n * <Switch defaultChecked />\n *\n * // Controlled\n * <Switch checked={enabled} onCheckedChange={setEnabled} />\n *\n * // With label\n * <div className=\"flex items-center gap-2\">\n * <Switch id=\"notifications\" />\n * <Label htmlFor=\"notifications\">Enable notifications</Label>\n * </div>\n * ```\n */\nfunction Switch({\n className,\n ...props\n}: SwitchProps) {\n return (\n <SwitchPrimitives.Root\n data-slot=\"switch\"\n className={cn(\n \"peer data-[state=checked]:bg-primary data-[state=unchecked]:bg-switch-background focus-visible:border-ring focus-visible:ring-ring/50 dark:data-[state=unchecked]:bg-input/80 inline-flex h-[1.15rem] w-8 shrink-0 items-center rounded-full border border-transparent transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50\",\n className,\n )}\n {...props}\n >\n <SwitchPrimitives.Thumb\n data-slot=\"switch-thumb\"\n className={cn(\n \"bg-card dark:data-[state=unchecked]:bg-card-foreground dark:data-[state=checked]:bg-primary-foreground pointer-events-none block size-4 rounded-full ring-0 transition-transform data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0\",\n )}\n />\n </SwitchPrimitives.Root>\n );\n}\n\nexport { Switch };\nexport type { SwitchProps };\n"]}
|
|
@@ -71,7 +71,7 @@ function DrawerHeader({ className, ...props }) {
|
|
|
71
71
|
"div",
|
|
72
72
|
{
|
|
73
73
|
"data-slot": "drawer-header",
|
|
74
|
-
className: cn("flex flex-col gap-1.5 p-
|
|
74
|
+
className: cn("flex flex-col gap-1.5 p-dialog", className),
|
|
75
75
|
...props
|
|
76
76
|
}
|
|
77
77
|
);
|
|
@@ -81,7 +81,7 @@ function DrawerBody({ className, ...props }) {
|
|
|
81
81
|
"div",
|
|
82
82
|
{
|
|
83
83
|
"data-slot": "drawer-body",
|
|
84
|
-
className: cn("flex-1 overflow-y-auto
|
|
84
|
+
className: cn("flex-1 overflow-y-auto p-dialog", className),
|
|
85
85
|
...props
|
|
86
86
|
}
|
|
87
87
|
);
|
|
@@ -91,7 +91,7 @@ function DrawerFooter({ className, ...props }) {
|
|
|
91
91
|
"div",
|
|
92
92
|
{
|
|
93
93
|
"data-slot": "drawer-footer",
|
|
94
|
-
className: cn("mt-auto flex flex-col gap-2 p-
|
|
94
|
+
className: cn("mt-auto flex flex-col gap-2 p-dialog", className),
|
|
95
95
|
...props
|
|
96
96
|
}
|
|
97
97
|
);
|
|
@@ -124,5 +124,5 @@ function DrawerDescription({
|
|
|
124
124
|
}
|
|
125
125
|
|
|
126
126
|
export { Drawer, DrawerBody, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger };
|
|
127
|
-
//# sourceMappingURL=chunk-
|
|
128
|
-
//# sourceMappingURL=chunk-
|
|
127
|
+
//# sourceMappingURL=chunk-EBV2XEHD.js.map
|
|
128
|
+
//# sourceMappingURL=chunk-EBV2XEHD.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/overlay/drawer.tsx"],"names":["DrawerPrimitive"],"mappings":"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","file":"chunk-EBV2XEHD.js","sourcesContent":["import * as React from \"react\";\nimport { Drawer as DrawerPrimitive } from \"vaul\";\n\nimport { cn } from \"../../lib/utils\";\n\n/**\n * Swipeable drawer component built on Vaul.\n *\n * Slides from any edge of the screen and can be dismissed by swiping.\n * Set the `direction` prop on the root to control direction (`\"top\"`, `\"bottom\"`,\n * `\"left\"`, `\"right\"`). Always wrap content in `DrawerBody` for proper scrolling.\n *\n * @example\n * ```tsx\n * <Drawer open={open} onOpenChange={setOpen}>\n * <DrawerTrigger asChild>\n * <Button variant=\"outline\">Open Drawer</Button>\n * </DrawerTrigger>\n * <DrawerContent>\n * <DrawerHeader>\n * <DrawerTitle>Task Details</DrawerTitle>\n * <DrawerDescription>\n * View and edit task information.\n * </DrawerDescription>\n * </DrawerHeader>\n * <DrawerBody>\n * <p>Scrollable content goes here.</p>\n * </DrawerBody>\n * <DrawerFooter>\n * <Button>Save</Button>\n * <DrawerClose asChild>\n * <Button variant=\"outline\">Cancel</Button>\n * </DrawerClose>\n * </DrawerFooter>\n * </DrawerContent>\n * </Drawer>\n * ```\n */\nfunction Drawer({\n ...props\n}: React.ComponentProps<typeof DrawerPrimitive.Root>) {\n return <DrawerPrimitive.Root data-slot=\"drawer\" {...props} />;\n}\n\n/** Element that opens the drawer when clicked. Use `asChild` to merge into your own button. */\nfunction DrawerTrigger({\n ...props\n}: React.ComponentProps<typeof DrawerPrimitive.Trigger>) {\n return <DrawerPrimitive.Trigger data-slot=\"drawer-trigger\" {...props} />;\n}\n\n/** Portal that renders drawer content outside the DOM hierarchy. */\nfunction DrawerPortal({\n ...props\n}: React.ComponentProps<typeof DrawerPrimitive.Portal>) {\n return <DrawerPrimitive.Portal data-slot=\"drawer-portal\" {...props} />;\n}\n\n/** Button that closes the drawer. Use `asChild` to merge into your own button. */\nfunction DrawerClose({\n ...props\n}: React.ComponentProps<typeof DrawerPrimitive.Close>) {\n return <DrawerPrimitive.Close data-slot=\"drawer-close\" {...props} />;\n}\n\n/** Semi-transparent backdrop rendered behind the drawer panel. */\nfunction DrawerOverlay({\n className,\n ...props\n}: React.ComponentProps<typeof DrawerPrimitive.Overlay>) {\n return (\n <DrawerPrimitive.Overlay\n data-slot=\"drawer-overlay\"\n className={cn(\n \"data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** Drawer content panel that slides in from the configured direction. Includes a drag handle for bottom drawers. */\nfunction DrawerContent({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof DrawerPrimitive.Content>) {\n return (\n <DrawerPortal data-slot=\"drawer-portal\">\n <DrawerOverlay />\n <DrawerPrimitive.Content\n data-slot=\"drawer-content\"\n className={cn(\n \"group/drawer-content bg-background fixed z-50 flex h-auto flex-col\",\n \"data-[vaul-drawer-direction=top]:inset-x-0 data-[vaul-drawer-direction=top]:top-0 data-[vaul-drawer-direction=top]:mb-24 data-[vaul-drawer-direction=top]:max-h-[80vh] data-[vaul-drawer-direction=top]:rounded-b-lg data-[vaul-drawer-direction=top]:border-b\",\n \"data-[vaul-drawer-direction=bottom]:inset-x-0 data-[vaul-drawer-direction=bottom]:bottom-0 data-[vaul-drawer-direction=bottom]:mt-24 data-[vaul-drawer-direction=bottom]:max-h-[80vh] data-[vaul-drawer-direction=bottom]:rounded-t-lg data-[vaul-drawer-direction=bottom]:border-t\",\n \"data-[vaul-drawer-direction=right]:inset-y-0 data-[vaul-drawer-direction=right]:right-0 data-[vaul-drawer-direction=right]:w-3/4 data-[vaul-drawer-direction=right]:border-l data-[vaul-drawer-direction=right]:sm:max-w-sm\",\n \"data-[vaul-drawer-direction=left]:inset-y-0 data-[vaul-drawer-direction=left]:left-0 data-[vaul-drawer-direction=left]:w-3/4 data-[vaul-drawer-direction=left]:border-r data-[vaul-drawer-direction=left]:sm:max-w-sm\",\n className,\n )}\n {...props}\n >\n <div className=\"bg-muted mx-auto mt-4 hidden h-2 w-[100px] shrink-0 rounded-full group-data-[vaul-drawer-direction=bottom]/drawer-content:block\" />\n {children}\n </DrawerPrimitive.Content>\n </DrawerPortal>\n );\n}\n\n/** Container for DrawerTitle and DrawerDescription at the top of the drawer. */\nfunction DrawerHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"drawer-header\"\n className={cn(\"flex flex-col gap-1.5 p-dialog\", className)}\n {...props}\n />\n );\n}\n\n/** Scrollable body area for drawer content. Always wrap main content in this component. */\nfunction DrawerBody({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"drawer-body\"\n className={cn(\"flex-1 overflow-y-auto p-dialog\", className)}\n {...props}\n />\n );\n}\n\n/** Container for action buttons at the bottom of the drawer. Pushed to the bottom via `mt-auto`. */\nfunction DrawerFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"drawer-footer\"\n className={cn(\"mt-auto flex flex-col gap-2 p-dialog\", className)}\n {...props}\n />\n );\n}\n\n/** Accessible title rendered inside DrawerHeader. */\nfunction DrawerTitle({\n className,\n ...props\n}: React.ComponentProps<typeof DrawerPrimitive.Title>) {\n return (\n <DrawerPrimitive.Title\n data-slot=\"drawer-title\"\n className={cn(\"text-foreground font-semibold\", className)}\n {...props}\n />\n );\n}\n\n/** Accessible description rendered inside DrawerHeader below the title. */\nfunction DrawerDescription({\n className,\n ...props\n}: React.ComponentProps<typeof DrawerPrimitive.Description>) {\n return (\n <DrawerPrimitive.Description\n data-slot=\"drawer-description\"\n className={cn(\"text-muted-foreground text-sm\", className)}\n {...props}\n />\n );\n}\n\nexport {\n Drawer,\n DrawerPortal,\n DrawerOverlay,\n DrawerTrigger,\n DrawerClose,\n DrawerContent,\n DrawerHeader,\n DrawerBody,\n DrawerFooter,\n DrawerTitle,\n DrawerDescription,\n};"]}
|
|
@@ -20,5 +20,5 @@ var Label = React.forwardRef(({ className, ...props }, ref) => {
|
|
|
20
20
|
Label.displayName = LabelPrimitive.Root.displayName;
|
|
21
21
|
|
|
22
22
|
export { Label };
|
|
23
|
-
//# sourceMappingURL=chunk-
|
|
24
|
-
//# sourceMappingURL=chunk-
|
|
23
|
+
//# sourceMappingURL=chunk-EYJ7TJIX.js.map
|
|
24
|
+
//# sourceMappingURL=chunk-EYJ7TJIX.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/inputs/label.tsx"],"names":[],"mappings":";;;;;AAoBA,IAAM,KAAA,GAAc,iBAGlB,CAAC,EAAE,WAAW,GAAG,KAAA,IAAS,GAAA,KAAQ;AAClC,EAAA,uBACE,GAAA;AAAA,IAAgB,cAAA,CAAA,IAAA;AAAA,IAAf;AAAA,MACC,GAAA;AAAA,MACA,WAAA,EAAU,OAAA;AAAA,MACV,SAAA,EAAW,EAAA;AAAA,QACT,qNAAA;AAAA,QACA;AAAA,OACF;AAAA,MACC,GAAG;AAAA;AAAA,GACN;AAEJ,CAAC;AACD,KAAA,CAAM,cAA6B,cAAA,CAAA,IAAA,CAAK,WAAA","file":"chunk-EYJ7TJIX.js","sourcesContent":["import * as React from \"react\";\nimport * as LabelPrimitive from \"@radix-ui/react-label\";\n\nimport { cn } from \"../../lib/utils\";\n\ntype LabelProps = React.ComponentPropsWithoutRef<typeof LabelPrimitive.Root>;\n\n/**\n * Accessible label for form controls, automatically associated via `htmlFor`.\n *\n * @example\n * ```tsx\n * // With an input\n * <Label htmlFor=\"email\">Email address</Label>\n * <Input id=\"email\" type=\"email\" />\n *\n * // Disabled state (responds to group/peer disabled)\n * <Label htmlFor=\"name\">Name</Label>\n * ```\n */\nconst Label = React.forwardRef<\n React.ElementRef<typeof LabelPrimitive.Root>,\n LabelProps\n>(({ className, ...props }, ref) => {\n return (\n <LabelPrimitive.Root\n ref={ref}\n data-slot=\"label\"\n className={cn(\n \"flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50\",\n className,\n )}\n {...props}\n />\n );\n});\nLabel.displayName = LabelPrimitive.Root.displayName;\n\nexport { Label };\nexport type { LabelProps };\n"]}
|
|
@@ -49,5 +49,5 @@ function AvatarFallback({
|
|
|
49
49
|
}
|
|
50
50
|
|
|
51
51
|
export { Avatar, AvatarFallback, AvatarImage };
|
|
52
|
-
//# sourceMappingURL=chunk-
|
|
53
|
-
//# sourceMappingURL=chunk-
|
|
52
|
+
//# sourceMappingURL=chunk-FTNPOZGK.js.map
|
|
53
|
+
//# sourceMappingURL=chunk-FTNPOZGK.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/display/avatar.tsx"],"names":[],"mappings":";;;;AAyBA,SAAS,MAAA,CAAO;AAAA,EACd,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAgB;AACd,EAAA,uBACE,GAAA;AAAA,IAAiB,eAAA,CAAA,IAAA;AAAA,IAAhB;AAAA,MACC,WAAA,EAAU,QAAA;AAAA,MACV,SAAA,EAAW,EAAA;AAAA,QACT,6DAAA;AAAA,QACA;AAAA,OACF;AAAA,MACC,GAAG;AAAA;AAAA,GACN;AAEJ;AAaA,SAAS,WAAA,CAAY;AAAA,EACnB,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAqB;AACnB,EAAA,uBACE,GAAA;AAAA,IAAiB,eAAA,CAAA,KAAA;AAAA,IAAhB;AAAA,MACC,WAAA,EAAU,cAAA;AAAA,MACV,SAAA,EAAW,EAAA,CAAG,yBAAA,EAA2B,SAAS,CAAA;AAAA,MACjD,GAAG;AAAA;AAAA,GACN;AAEJ;AAaA,SAAS,cAAA,CAAe;AAAA,EACtB,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAwB;AACtB,EAAA,uBACE,GAAA;AAAA,IAAiB,eAAA,CAAA,QAAA;AAAA,IAAhB;AAAA,MACC,WAAA,EAAU,iBAAA;AAAA,MACV,SAAA,EAAW,EAAA;AAAA,QACT,kEAAA;AAAA,QACA;AAAA,OACF;AAAA,MACC,GAAG;AAAA;AAAA,GACN;AAEJ","file":"chunk-FTNPOZGK.js","sourcesContent":["import * as React from \"react\";\nimport * as AvatarPrimitive from \"@radix-ui/react-avatar\";\n\nimport { cn } from \"../../lib/utils\";\n\ntype AvatarProps = React.ComponentProps<typeof AvatarPrimitive.Root>;\n\n/**\n * Circular container for user profile images or initials.\n * Use with {@link AvatarImage} and {@link AvatarFallback} for graceful loading.\n *\n * @example\n * ```tsx\n * <Avatar>\n * <AvatarImage src=\"/avatar.jpg\" alt=\"User\" />\n * <AvatarFallback>JD</AvatarFallback>\n * </Avatar>\n *\n * // Custom size\n * <Avatar className=\"size-8\">\n * <AvatarImage src=\"/small.jpg\" alt=\"User\" />\n * <AvatarFallback>U</AvatarFallback>\n * </Avatar>\n * ```\n */\nfunction Avatar({\n className,\n ...props\n}: AvatarProps) {\n return (\n <AvatarPrimitive.Root\n data-slot=\"avatar\"\n className={cn(\n \"relative flex size-10 shrink-0 overflow-hidden rounded-full\",\n className,\n )}\n {...props}\n />\n );\n}\n\ntype AvatarImageProps = React.ComponentProps<typeof AvatarPrimitive.Image>;\n\n/**\n * Image element rendered inside an {@link Avatar}. Falls back to\n * {@link AvatarFallback} when the image fails to load.\n *\n * @example\n * ```tsx\n * <AvatarImage src=\"/photo.jpg\" alt=\"Jane Doe\" />\n * ```\n */\nfunction AvatarImage({\n className,\n ...props\n}: AvatarImageProps) {\n return (\n <AvatarPrimitive.Image\n data-slot=\"avatar-image\"\n className={cn(\"aspect-square size-full\", className)}\n {...props}\n />\n );\n}\n\ntype AvatarFallbackProps = React.ComponentProps<typeof AvatarPrimitive.Fallback>;\n\n/**\n * Fallback content displayed while the {@link AvatarImage} is loading or\n * if it fails. Typically shows user initials (max 2 characters).\n *\n * @example\n * ```tsx\n * <AvatarFallback>JD</AvatarFallback>\n * ```\n */\nfunction AvatarFallback({\n className,\n ...props\n}: AvatarFallbackProps) {\n return (\n <AvatarPrimitive.Fallback\n data-slot=\"avatar-fallback\"\n className={cn(\n \"bg-muted flex size-full items-center justify-center rounded-full\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport { Avatar, AvatarImage, AvatarFallback };\nexport type { AvatarProps, AvatarImageProps, AvatarFallbackProps };"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/feedback/skeleton.tsx"],"names":[],"mappings":";;;AAuBA,SAAS,QAAA,CAAS,EAAE,SAAA,EAAW,GAAG,OAAM,EAAkB;AACxD,EAAA,uBACE,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,WAAA,EAAU,UAAA;AAAA,MACV,SAAA,EAAW,EAAA,CAAG,oCAAA,EAAsC,SAAS,CAAA;AAAA,MAC5D,GAAG;AAAA;AAAA,GACN;AAEJ","file":"chunk-GR7T5QHL.js","sourcesContent":["import { cn } from \"../../lib/utils\";\n\ntype SkeletonProps = React.ComponentProps<\"div\">;\n\n/**\n * Placeholder loading indicator with a pulse animation, used to represent\n * content that is being fetched or rendered.\n *\n * @example\n * ```tsx\n * // Text placeholder\n * <Skeleton className=\"h-4 w-48\" />\n *\n * // Circular avatar placeholder\n * <Skeleton className=\"size-10 rounded-full\" />\n *\n * // Card skeleton\n * <div className=\"space-y-2\">\n * <Skeleton className=\"h-4 w-full\" />\n * <Skeleton className=\"h-4 w-3/4\" />\n * </div>\n * ```\n */\nfunction Skeleton({ className, ...props }: SkeletonProps) {\n return (\n <div\n data-slot=\"skeleton\"\n className={cn(\"bg-accent animate-pulse rounded-md\", className)}\n {...props}\n />\n );\n}\n\nexport { Skeleton };\nexport type { SkeletonProps };\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { inputVariants } from './chunk-
|
|
1
|
+
import { inputVariants } from './chunk-4NBDYSSQ.js';
|
|
2
2
|
import { cn } from './chunk-DGPY4WP3.js';
|
|
3
3
|
import * as React from 'react';
|
|
4
4
|
import { EyeOff, Eye } from 'lucide-react';
|
|
@@ -35,5 +35,5 @@ var PasswordInput = React.forwardRef(
|
|
|
35
35
|
PasswordInput.displayName = "PasswordInput";
|
|
36
36
|
|
|
37
37
|
export { PasswordInput };
|
|
38
|
-
//# sourceMappingURL=chunk-
|
|
39
|
-
//# sourceMappingURL=chunk-
|
|
38
|
+
//# sourceMappingURL=chunk-HDTHGIQR.js.map
|
|
39
|
+
//# sourceMappingURL=chunk-HDTHGIQR.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/inputs/password-input.tsx"],"names":[],"mappings":";;;;;;AAiCA,IAAM,aAAA,GAAsB,KAAA,CAAA,UAAA;AAAA,EAC1B,CAAC,EAAE,SAAA,EAAW,MAAM,GAAG,KAAA,IAAS,GAAA,KAAQ;AACtC,IAAA,MAAM,CAAC,OAAA,EAAS,UAAU,CAAA,GAAU,eAAS,KAAK,CAAA;AAElD,IAAA,uBACE,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,UAAA,EACb,QAAA,EAAA;AAAA,sBAAA,GAAA;AAAA,QAAC,OAAA;AAAA,QAAA;AAAA,UACC,IAAA,EAAM,UAAU,MAAA,GAAS,UAAA;AAAA,UACzB,GAAA;AAAA,UACA,WAAA,EAAU,OAAA;AAAA,UACV,SAAA,EAAW,EAAA,CAAG,aAAA,CAAc,EAAE,IAAA,EAAM,SAAA,EAAW,EAAA,CAAG,+EAAA,EAAiF,SAAS,CAAA,EAAG,CAAC,CAAA;AAAA,UAC/I,GAAG;AAAA;AAAA,OACN;AAAA,sBACA,GAAA;AAAA,QAAC,QAAA;AAAA,QAAA;AAAA,UACC,IAAA,EAAK,QAAA;AAAA,UACL,QAAA,EAAU,EAAA;AAAA,UACV,SAAA,EAAU,mIAAA;AAAA,UACV,SAAS,MAAM,UAAA,CAAW,CAAC,CAAA,KAAM,CAAC,CAAC,CAAA;AAAA,UACnC,YAAA,EAAY,UAAU,eAAA,GAAkB,eAAA;AAAA,UAEvC,QAAA,EAAA,OAAA,uBACE,MAAA,EAAA,EAAO,SAAA,EAAU,WAAU,CAAA,mBAE5B,GAAA,CAAC,GAAA,EAAA,EAAI,SAAA,EAAU,SAAA,EAAU;AAAA;AAAA;AAE7B,KAAA,EACF,CAAA;AAAA,EAEJ;AACF;AACA,aAAA,CAAc,WAAA,GAAc,eAAA","file":"chunk-HDTHGIQR.js","sourcesContent":["import * as React from \"react\";\nimport { type VariantProps } from \"class-variance-authority\";\nimport { Eye, EyeOff } from \"lucide-react\";\n\nimport { cn } from \"../../lib/utils\";\nimport { inputVariants } from \"./input\";\n\ninterface PasswordInputProps\n extends Omit<React.ComponentProps<\"input\">, \"type\" | \"size\">,\n VariantProps<typeof inputVariants> {}\n\n/**\n * Password input with a built-in show/hide toggle button.\n *\n * Extends native `<input>` (minus `type` which is managed internally).\n * Shares the same size variants as `Input`.\n *\n * @example\n * ```tsx\n * // Default size\n * <PasswordInput placeholder=\"Enter password\" />\n *\n * // Sizes: xs (24px) | sm (28px) | default (32px) | lg (36px) | xl (44px)\n * <PasswordInput size=\"xl\" placeholder=\"Password\" />\n *\n * // Controlled\n * <PasswordInput\n * value={password}\n * onChange={(e) => setPassword(e.target.value)}\n * placeholder=\"Password\"\n * />\n * ```\n */\nconst PasswordInput = React.forwardRef<HTMLInputElement, PasswordInputProps>(\n ({ className, size, ...props }, ref) => {\n const [visible, setVisible] = React.useState(false);\n\n return (\n <div className=\"relative\">\n <input\n type={visible ? \"text\" : \"password\"}\n ref={ref}\n data-slot=\"input\"\n className={cn(inputVariants({ size, className: cn(\"pr-10 [&::-ms-reveal]:hidden [&::-webkit-credentials-auto-fill-button]:hidden\", className) }))}\n {...props}\n />\n <button\n type=\"button\"\n tabIndex={-1}\n className=\"absolute right-0 top-0 flex h-full w-10 items-center justify-center text-muted-foreground hover:text-foreground transition-colors\"\n onClick={() => setVisible((v) => !v)}\n aria-label={visible ? \"Hide password\" : \"Show password\"}\n >\n {visible ? (\n <EyeOff className=\"h-4 w-4\" />\n ) : (\n <Eye className=\"h-4 w-4\" />\n )}\n </button>\n </div>\n );\n },\n);\nPasswordInput.displayName = \"PasswordInput\";\n\nexport { PasswordInput };\nexport type { PasswordInputProps };\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/domain/workflow/workflow-stepper.tsx"],"names":[],"mappings":";;;;AAqDO,SAAS,eAAA,CAAgB;AAAA,EAC9B,MAAA;AAAA,EACA,OAAA;AAAA,EACA,cAAA;AAAA,EACA;AACF,CAAA,EAAyB;AACvB,EAAA,MAAM,YAAA,GAAe,CAAC,GAAG,MAAM,CAAA,CAAE,IAAA,CAAK,CAAC,CAAA,EAAG,CAAA,KAAM,CAAA,CAAE,KAAA,GAAQ,CAAA,CAAE,KAAK,CAAA;AACjE,EAAA,MAAM,iBAAA,GAAoB,IAAI,GAAA,CAAI,OAAA,CAAQ,IAAI,CAAC,CAAA,KAAM,CAAA,CAAE,OAAO,CAAC,CAAA;AAE/D,EAAA,uBACE,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,EAAA,CAAG,8CAAA,EAAgD,SAAS,CAAA,EACzE,QAAA,EAAA,YAAA,CAAa,GAAA,CAAI,CAAC,KAAA,EAAO,KAAA,KAAU;AAClC,IAAA,MAAM,WAAA,GAAc,iBAAA,CAAkB,GAAA,CAAI,KAAA,CAAM,EAAE,CAAA;AAClD,IAAA,MAAM,SAAA,GAAY,MAAM,EAAA,KAAO,cAAA;AAC/B,IAAA,MAAM,YAAA,GAAe,QAAQ,IAAA,CAAK,CAAC,MAAM,CAAA,CAAE,OAAA,KAAY,MAAM,EAAE,CAAA;AAC/D,IAAA,MAAM,UAAA,GAAa,cAAc,QAAA,KAAa,UAAA;AAE9C,IAAA,uBACE,IAAA,CAAC,KAAA,EAAA,EAAmB,SAAA,EAAU,iCAAA,EAC5B,QAAA,EAAA;AAAA,sBAAA,IAAA,CAAC,KAAA,EAAA,EAAI,WAAU,kCAAA,EACb,QAAA,EAAA;AAAA,wBAAA,GAAA;AAAA,UAAC,KAAA;AAAA,UAAA;AAAA,YACC,SAAA,EAAW,EAAA;AAAA,cACT,sGAAA;AAAA,cACA,WAAA,GACI,UAAA,GACE,8CAAA,GACA,sCAAA,GACF,YACE,yDAAA,GACA;AAAA,aACR;AAAA,YAEC,wCAAc,GAAA,CAAC,KAAA,EAAA,EAAM,SAAA,EAAU,SAAA,EAAU,IAAK,KAAA,CAAM;AAAA;AAAA,SACvD;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,SAAA,EAAW,EAAA;AAAA,cACT,uCAAA;AAAA,cACA,YAAY,6BAAA,GAAgC;AAAA,aAC9C;AAAA,YAEC,QAAA,EAAA,KAAA,CAAM;AAAA;AAAA;AACT,OAAA,EACF,CAAA;AAAA,MACC,KAAA,GAAQ,YAAA,CAAa,MAAA,GAAS,CAAA,oBAC7B,GAAA;AAAA,QAAC,KAAA;AAAA,QAAA;AAAA,UACC,SAAA,EAAW,EAAA;AAAA,YACT,4BAAA;AAAA,YACA,cAAc,YAAA,GAAe;AAAA;AAC/B;AAAA;AACF,KAAA,EAAA,EA/BM,MAAM,EAiChB,CAAA;AAAA,EAEJ,CAAC,CAAA,EACH,CAAA;AAEJ","file":"chunk-HEQVBUJO.js","sourcesContent":["import { Check } from 'lucide-react';\nimport { cn } from '../../../lib/utils';\n\n/** A single stage in the workflow stepper. */\nexport interface WorkflowStepperStage {\n /** Unique identifier for this stage. */\n id: string;\n /** Display name shown below the stage circle. */\n name: string;\n /** Numeric order used to sort stages left-to-right. */\n order: number;\n}\n\n/** A history entry representing a completed (or rejected) stage. */\nexport interface WorkflowStepperHistoryEntry {\n /** The stage ID this history entry applies to. */\n stageId: string;\n /** The decision made at this stage. \"rejected\" stages render in red. */\n decision: 'approved' | 'rejected' | 'skipped' | (string & {});\n}\n\nexport interface WorkflowStepperProps {\n /** Ordered list of stages to display. Will be sorted by `order`. */\n stages: WorkflowStepperStage[];\n /** History of completed stages. Used to determine which stages are done. */\n history: WorkflowStepperHistoryEntry[];\n /** The id of the currently active stage. */\n currentStageId: string;\n /** Optional additional className for the root container. */\n className?: string;\n}\n\n/**\n * WorkflowStepper displays a horizontal progression of workflow stages.\n *\n * Each stage is shown as a numbered circle. Completed stages show a checkmark\n * (green for approved, red for rejected). The current stage pulses with a blue\n * highlight. Stages are connected by a horizontal line that turns green once\n * the preceding stage is completed.\n *\n * @example\n * ```tsx\n * <WorkflowStepper\n * stages={[\n * { id: \"s1\", name: \"Submit\", order: 1 },\n * { id: \"s2\", name: \"Review\", order: 2 },\n * { id: \"s3\", name: \"Approve\", order: 3 },\n * ]}\n * history={[{ stageId: \"s1\", decision: \"approved\" }]}\n * currentStageId=\"s2\"\n * />\n * ```\n */\nexport function WorkflowStepper({\n stages,\n history,\n currentStageId,\n className,\n}: WorkflowStepperProps) {\n const sortedStages = [...stages].sort((a, b) => a.order - b.order);\n const completedStageIds = new Set(history.map((h) => h.stageId));\n\n return (\n <div className={cn('flex items-center gap-0 overflow-x-auto pb-2', className)}>\n {sortedStages.map((stage, index) => {\n const isCompleted = completedStageIds.has(stage.id);\n const isCurrent = stage.id === currentStageId;\n const historyEntry = history.find((h) => h.stageId === stage.id);\n const isRejected = historyEntry?.decision === 'rejected';\n\n return (\n <div key={stage.id} className=\"flex items-center flex-shrink-0\">\n <div className=\"flex flex-col items-center gap-1\">\n <div\n className={cn(\n 'w-8 h-8 rounded-full flex items-center justify-center text-sm font-medium border-2 transition-colors',\n isCompleted\n ? isRejected\n ? 'bg-destructive border-destructive text-white'\n : 'bg-success border-success text-white'\n : isCurrent\n ? 'border-primary bg-primary/10 text-primary animate-pulse'\n : 'border-border bg-muted text-muted-foreground',\n )}\n >\n {isCompleted ? <Check className=\"w-4 h-4\" /> : stage.order}\n </div>\n <span\n className={cn(\n 'text-xs max-w-20 text-center truncate',\n isCurrent ? 'font-medium text-foreground' : 'text-muted-foreground',\n )}\n >\n {stage.name}\n </span>\n </div>\n {index < sortedStages.length - 1 && (\n <div\n className={cn(\n 'w-12 h-0.5 mx-1 mt-[-12px]',\n isCompleted ? 'bg-success' : 'bg-border',\n )}\n />\n )}\n </div>\n );\n })}\n </div>\n );\n}\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Badge } from './chunk-
|
|
1
|
+
import { Badge } from './chunk-5SAUUOCN.js';
|
|
2
2
|
import { cn } from './chunk-DGPY4WP3.js';
|
|
3
3
|
import * as React from 'react';
|
|
4
4
|
import { X } from 'lucide-react';
|
|
@@ -100,5 +100,5 @@ function TagInput({
|
|
|
100
100
|
}
|
|
101
101
|
|
|
102
102
|
export { TagInput };
|
|
103
|
-
//# sourceMappingURL=chunk-
|
|
104
|
-
//# sourceMappingURL=chunk-
|
|
103
|
+
//# sourceMappingURL=chunk-I6PJSYBI.js.map
|
|
104
|
+
//# sourceMappingURL=chunk-I6PJSYBI.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/inputs/tag-input.tsx"],"names":[],"mappings":"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","file":"chunk-I6PJSYBI.js","sourcesContent":["import * as React from \"react\";\nimport { X } from \"lucide-react\";\nimport { cn } from \"../../lib/utils\";\nimport { Badge } from \"../display/badge\";\n\ninterface TagInputProps {\n /** Array of current tag strings. */\n value?: string[];\n /** Callback fired when the tags array changes. */\n onChange?: (tags: string[]) => void;\n /** Placeholder text shown when there are no tags. */\n placeholder?: string;\n /** Additional CSS class for the outer container. */\n className?: string;\n /** Whether the tag input is disabled. */\n disabled?: boolean;\n /** Maximum number of tags allowed. */\n maxTags?: number;\n /** Whether duplicate tag values are allowed. Defaults to `false`. */\n allowDuplicates?: boolean;\n /** Character or pattern used to split pasted text into tags. Defaults to `\",\"`. */\n delimiter?: string | RegExp;\n}\n\n/**\n * Tag input that lets users add and remove string tags.\n * Tags are added by pressing Enter or the delimiter key, and by pasting comma-separated text.\n * Backspace removes the last tag when the input is empty.\n *\n * @example\n * ```tsx\n * const [tags, setTags] = useState<string[]>([\"react\", \"typescript\"]);\n *\n * <TagInput\n * value={tags}\n * onChange={setTags}\n * placeholder=\"Add a tag...\"\n * maxTags={10}\n * />\n * ```\n */\nexport function TagInput({\n value = [],\n onChange,\n placeholder = \"Nhập và nhấn Enter...\",\n className,\n disabled,\n maxTags,\n allowDuplicates = false,\n delimiter = \",\",\n}: TagInputProps) {\n const [inputValue, setInputValue] = React.useState(\"\");\n const inputRef = React.useRef<HTMLInputElement>(null);\n\n const handleInputChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n setInputValue(e.target.value);\n };\n\n const addTag = (tag: string) => {\n const trimmedTag = tag.trim();\n\n if (!trimmedTag) return;\n\n if (maxTags && value.length >= maxTags) return;\n\n if (!allowDuplicates && value.includes(trimmedTag)) return;\n\n onChange?.([ ...value, trimmedTag]);\n setInputValue(\"\");\n };\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (e.key === \"Enter\" || e.key === delimiter) {\n e.preventDefault();\n addTag(inputValue);\n } else if (e.key === \"Backspace\" && !inputValue && value.length > 0) {\n // Remove last tag on backspace if input is empty\n onChange?.(value.slice(0, -1));\n }\n };\n\n const handlePaste = (e: React.ClipboardEvent<HTMLInputElement>) => {\n e.preventDefault();\n const pastedText = e.clipboardData.getData(\"text\");\n const tags = pastedText.split(delimiter).map((tag) => tag.trim()).filter(Boolean);\n\n const newTags = allowDuplicates\n ? tags\n : tags.filter((tag) => !value.includes(tag));\n\n const tagsToAdd = maxTags\n ? newTags.slice(0, maxTags - value.length)\n : newTags;\n\n onChange?.([...value, ...tagsToAdd]);\n setInputValue(\"\");\n };\n\n const removeTag = (index: number) => {\n onChange?.(value.filter((_, i) => i !== index));\n };\n\n return (\n <div\n className={cn(\n \"flex flex-wrap gap-2 p-2 border rounded-lg bg-background min-h-[42px] cursor-text\",\n disabled && \"opacity-50 cursor-not-allowed bg-muted\",\n className\n )}\n onClick={() => !disabled && inputRef.current?.focus()}\n >\n {value.map((tag, index) => (\n <Badge\n key={index}\n variant=\"secondary\"\n className=\"gap-1 pl-2 pr-1 py-1 h-auto\"\n >\n <span>{tag}</span>\n {!disabled && (\n <button\n type=\"button\"\n onClick={(e) => {\n e.stopPropagation();\n removeTag(index);\n }}\n className=\"rounded-full hover:bg-muted-foreground/30 p-0.5 transition-colors\"\n >\n <X className=\"h-3 w-3\" />\n </button>\n )}\n </Badge>\n ))}\n\n <input\n ref={inputRef}\n type=\"text\"\n value={inputValue}\n onChange={handleInputChange}\n onKeyDown={handleKeyDown}\n onPaste={handlePaste}\n disabled={disabled || (maxTags ? value.length >= maxTags : false)}\n placeholder={value.length === 0 ? placeholder : \"\"}\n className=\"flex-1 outline-none bg-transparent min-w-[120px] text-sm disabled:cursor-not-allowed\"\n />\n </div>\n );\n}\n"]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as AspectRatioPrimitive from '@radix-ui/react-aspect-ratio';
|
|
2
2
|
import { jsx } from 'react/jsx-runtime';
|
|
3
3
|
|
|
4
|
-
// src/components/aspect-ratio.tsx
|
|
4
|
+
// src/components/display/aspect-ratio.tsx
|
|
5
5
|
function AspectRatio({
|
|
6
6
|
...props
|
|
7
7
|
}) {
|
|
@@ -9,5 +9,5 @@ function AspectRatio({
|
|
|
9
9
|
}
|
|
10
10
|
|
|
11
11
|
export { AspectRatio };
|
|
12
|
-
//# sourceMappingURL=chunk-
|
|
13
|
-
//# sourceMappingURL=chunk-
|
|
12
|
+
//# sourceMappingURL=chunk-ITTPI2Z3.js.map
|
|
13
|
+
//# sourceMappingURL=chunk-ITTPI2Z3.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/display/aspect-ratio.tsx"],"names":[],"mappings":";;;;AAmBA,SAAS,WAAA,CAAY;AAAA,EACnB,GAAG;AACL,CAAA,EAA2D;AACzD,EAAA,2BAA6B,oBAAA,CAAA,IAAA,EAArB,EAA0B,WAAA,EAAU,cAAA,EAAgB,GAAG,KAAA,EAAO,CAAA;AACxE","file":"chunk-ITTPI2Z3.js","sourcesContent":["import * as AspectRatioPrimitive from \"@radix-ui/react-aspect-ratio\";\n\n/**\n * Maintains a consistent width-to-height ratio for its content.\n *\n * Useful for images, videos, and maps that need to preserve their aspect ratio\n * across different viewport sizes. Built on Radix AspectRatio.\n *\n * @example\n * ```tsx\n * <AspectRatio ratio={16 / 9}>\n * <img\n * src=\"/hero.jpg\"\n * alt=\"Hero image\"\n * className=\"h-full w-full rounded-md object-cover\"\n * />\n * </AspectRatio>\n * ```\n */\nfunction AspectRatio({\n ...props\n}: React.ComponentProps<typeof AspectRatioPrimitive.Root>) {\n return <AspectRatioPrimitive.Root data-slot=\"aspect-ratio\" {...props} />;\n}\n\nexport { AspectRatio };\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Badge } from './chunk-
|
|
1
|
+
import { Badge } from './chunk-5SAUUOCN.js';
|
|
2
2
|
import { jsx } from 'react/jsx-runtime';
|
|
3
3
|
|
|
4
4
|
var defaultCategoryStyles = {
|
|
@@ -14,5 +14,5 @@ function CalendarCategoryBadge({ category, label, styles }) {
|
|
|
14
14
|
}
|
|
15
15
|
|
|
16
16
|
export { CalendarCategoryBadge };
|
|
17
|
-
//# sourceMappingURL=chunk-
|
|
18
|
-
//# sourceMappingURL=chunk-
|
|
17
|
+
//# sourceMappingURL=chunk-IXEPDTUE.js.map
|
|
18
|
+
//# sourceMappingURL=chunk-IXEPDTUE.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/domain/calendar/calendar-category-badge.tsx"],"names":[],"mappings":";;;AAEA,IAAM,qBAAA,GAAgD;AAAA,EACpD,OAAA,EAAS,yGAAA;AAAA,EACT,QAAA,EAAU,mGAAA;AAAA,EACV,QAAA,EAAU,+GAAA;AAAA,EACV,QAAA,EAAU,qHAAA;AAAA,EACV,OAAA,EAAS;AACX,CAAA;AAsBO,SAAS,qBAAA,CAAsB,EAAE,QAAA,EAAU,KAAA,EAAO,QAAO,EAA+B;AAC7F,EAAA,MAAM,SAAA,GAAY,EAAE,GAAG,qBAAA,EAAuB,GAAG,MAAA,EAAO;AACxD,EAAA,uBACE,GAAA,CAAC,KAAA,EAAA,EAAM,OAAA,EAAQ,SAAA,EAAU,SAAA,EAAW,UAAU,QAAQ,CAAA,IAAK,EAAA,EACxD,QAAA,EAAA,KAAA,IAAS,QAAA,EACZ,CAAA;AAEJ","file":"chunk-IXEPDTUE.js","sourcesContent":["import { Badge } from '../../display/badge';\n\nconst defaultCategoryStyles: Record<string, string> = {\n meeting: 'bg-blue-50 dark:bg-blue-500/15 text-blue-600 dark:text-blue-400 border-blue-200 dark:border-blue-500/30',\n deadline: 'bg-red-50 dark:bg-red-500/15 text-red-600 dark:text-red-400 border-red-200 dark:border-red-500/30',\n reminder: 'bg-amber-50 dark:bg-amber-500/15 text-amber-600 dark:text-amber-400 border-amber-200 dark:border-amber-500/30',\n personal: 'bg-purple-50 dark:bg-purple-500/15 text-purple-600 dark:text-purple-400 border-purple-200 dark:border-purple-500/30',\n holiday: 'bg-green-50 dark:bg-green-500/15 text-green-600 dark:text-green-400 border-green-200 dark:border-green-500/30',\n};\n\nexport interface CalendarCategoryBadgeProps {\n /** The category key (e.g. \"meeting\", \"deadline\"). Determines the badge color from built-in or custom styles. */\n category: string;\n /** Override display label. Defaults to the raw category key. */\n label?: string;\n /** Custom className styles per category key, merged with built-in defaults. */\n styles?: Record<string, string>;\n}\n\n/**\n * Color-coded badge for calendar event categories. Ships with built-in styles\n * for meeting (blue), deadline (red), reminder (amber), personal (purple), and\n * holiday (green). Custom categories can be styled via the `styles` prop.\n *\n * @example\n * ```tsx\n * <CalendarCategoryBadge category=\"meeting\" label=\"Meeting\" />\n * <CalendarCategoryBadge category=\"custom\" label=\"Custom\" styles={{ custom: \"bg-pink-50 text-pink-600\" }} />\n * ```\n */\nexport function CalendarCategoryBadge({ category, label, styles }: CalendarCategoryBadgeProps) {\n const allStyles = { ...defaultCategoryStyles, ...styles };\n return (\n <Badge variant=\"outline\" className={allStyles[category] ?? ''}>\n {label ?? category}\n </Badge>\n );\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/display/separator.tsx"],"names":[],"mappings":";;;;AAuBA,SAAS,SAAA,CAAU;AAAA,EACjB,SAAA;AAAA,EACA,WAAA,GAAc,YAAA;AAAA,EACd,UAAA,GAAa,IAAA;AAAA,EACb,GAAG;AACL,CAAA,EAAmB;AACjB,EAAA,uBACE,GAAA;AAAA,IAAoB,kBAAA,CAAA,IAAA;AAAA,IAAnB;AAAA,MACC,WAAA,EAAU,gBAAA;AAAA,MACV,UAAA;AAAA,MACA,WAAA;AAAA,MACA,SAAA,EAAW,EAAA;AAAA,QACT,gKAAA;AAAA,QACA;AAAA,OACF;AAAA,MACC,GAAG;AAAA;AAAA,GACN;AAEJ","file":"chunk-KCUSO3CK.js","sourcesContent":["import * as React from \"react\";\nimport * as SeparatorPrimitive from \"@radix-ui/react-separator\";\n\nimport { cn } from \"../../lib/utils\";\n\ntype SeparatorProps = React.ComponentProps<typeof SeparatorPrimitive.Root>;\n\n/**\n * Visual divider between content sections, rendered as a horizontal or vertical line.\n *\n * @example\n * ```tsx\n * // Horizontal (default)\n * <Separator />\n *\n * // Vertical divider in a flex row\n * <div className=\"flex items-center gap-4\">\n * <span>Left</span>\n * <Separator orientation=\"vertical\" className=\"h-4\" />\n * <span>Right</span>\n * </div>\n * ```\n */\nfunction Separator({\n className,\n orientation = \"horizontal\",\n decorative = true,\n ...props\n}: SeparatorProps) {\n return (\n <SeparatorPrimitive.Root\n data-slot=\"separator-root\"\n decorative={decorative}\n orientation={orientation}\n className={cn(\n \"bg-border shrink-0 data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-px\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport { Separator };\nexport type { SeparatorProps };"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { buttonVariants } from './chunk-
|
|
1
|
+
import { buttonVariants } from './chunk-BOV3Q2JH.js';
|
|
2
2
|
import { cn } from './chunk-DGPY4WP3.js';
|
|
3
3
|
import { ChevronLeftIcon, ChevronRightIcon, ChevronDownIcon } from 'lucide-react';
|
|
4
4
|
import { getDefaultClassNames, DayPicker } from 'react-day-picker';
|
|
@@ -88,5 +88,5 @@ function Calendar({
|
|
|
88
88
|
}
|
|
89
89
|
|
|
90
90
|
export { Calendar };
|
|
91
|
-
//# sourceMappingURL=chunk-
|
|
92
|
-
//# sourceMappingURL=chunk-
|
|
91
|
+
//# sourceMappingURL=chunk-KJAXKHJ2.js.map
|
|
92
|
+
//# sourceMappingURL=chunk-KJAXKHJ2.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/domain/calendar/calendar.tsx"],"names":["className"],"mappings":"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","file":"chunk-KJAXKHJ2.js","sourcesContent":["import * as React from \"react\";\nimport { ChevronLeftIcon, ChevronRightIcon, ChevronDownIcon } from \"lucide-react\";\nimport { DayPicker, getDefaultClassNames } from \"react-day-picker\";\n\nimport { cn } from \"../../../lib/utils\";\nimport { buttonVariants } from \"../../inputs/button\";\n\n/**\n * Date picker calendar built on `react-day-picker` v9. Supports single, multiple,\n * and range selection modes. Styled with Shadcn UI conventions.\n *\n * @param showOutsideDays - Whether to show days from adjacent months. Defaults to `true`.\n *\n * @example\n * ```tsx\n * const [date, setDate] = useState<Date | undefined>();\n * <Calendar mode=\"single\" selected={date} onSelect={setDate} />\n * ```\n */\nfunction Calendar({\n className,\n classNames,\n showOutsideDays = true,\n ...props\n}: React.ComponentProps<typeof DayPicker>) {\n const defaultClassNames = getDefaultClassNames();\n\n return (\n <DayPicker\n showOutsideDays={showOutsideDays}\n className={cn(\"p-3\", className)}\n classNames={{\n root: cn(\"w-fit\", defaultClassNames.root),\n months: cn(\"flex flex-col sm:flex-row gap-2\", defaultClassNames.months),\n month: cn(\"flex flex-col gap-4 w-full\", defaultClassNames.month),\n month_caption: cn(\n \"flex justify-center pt-1 relative items-center w-full\",\n defaultClassNames.month_caption,\n ),\n caption_label: cn(\"text-sm font-medium select-none\", defaultClassNames.caption_label),\n dropdowns: cn(\n \"flex items-center text-sm font-medium justify-center gap-1.5\",\n defaultClassNames.dropdowns,\n ),\n dropdown_root: cn(\n \"relative border border-input rounded-md\",\n defaultClassNames.dropdown_root,\n ),\n dropdown: cn(\"absolute inset-0 opacity-0\", defaultClassNames.dropdown),\n nav: cn(\n \"flex items-center gap-1 w-full absolute top-0 inset-x-0 justify-between\",\n defaultClassNames.nav,\n ),\n button_previous: cn(\n buttonVariants({ variant: \"outline\" }),\n \"size-7 bg-transparent p-0 opacity-50 hover:opacity-100 select-none\",\n defaultClassNames.button_previous,\n ),\n button_next: cn(\n buttonVariants({ variant: \"outline\" }),\n \"size-7 bg-transparent p-0 opacity-50 hover:opacity-100 select-none\",\n defaultClassNames.button_next,\n ),\n table: \"w-full border-collapse\",\n weekdays: cn(\"flex\", defaultClassNames.weekdays),\n weekday: cn(\n \"text-muted-foreground rounded-md w-8 font-normal text-[0.8rem] select-none\",\n defaultClassNames.weekday,\n ),\n week: cn(\"flex w-full mt-2\", defaultClassNames.week),\n day: cn(\n \"relative p-0 text-center text-sm focus-within:relative focus-within:z-20 select-none\",\n \"[&:has([aria-selected])]:bg-accent\",\n \"[&:has([aria-selected].rdp-day_range_end)]:rounded-r-md\",\n props.mode === \"range\"\n ? \"[&:has(>.rdp-day_range_end)]:rounded-r-md [&:has(>.rdp-day_range_start)]:rounded-l-md first:[&:has([aria-selected])]:rounded-l-md last:[&:has([aria-selected])]:rounded-r-md\"\n : \"[&:has([aria-selected])]:rounded-md\",\n defaultClassNames.day,\n ),\n day_button: cn(\n buttonVariants({ variant: \"ghost\" }),\n \"size-8 p-0 font-normal aria-selected:opacity-100\",\n ),\n range_start:\n \"rdp-day_range_start aria-selected:bg-primary aria-selected:text-primary-foreground rounded-l-md\",\n range_end:\n \"rdp-day_range_end aria-selected:bg-primary aria-selected:text-primary-foreground rounded-r-md\",\n selected:\n \"bg-primary text-primary-foreground hover:bg-primary hover:text-primary-foreground focus:bg-primary focus:text-primary-foreground rounded-md\",\n today: \"bg-accent text-accent-foreground rounded-md\",\n outside: \"text-muted-foreground aria-selected:text-muted-foreground\",\n disabled: \"text-muted-foreground opacity-50\",\n range_middle:\n \"aria-selected:bg-accent aria-selected:text-accent-foreground rounded-none\",\n hidden: \"invisible\",\n ...classNames,\n }}\n components={{\n Chevron: ({ className, orientation, ...chevronProps }) => {\n const Icon =\n orientation === \"left\"\n ? ChevronLeftIcon\n : orientation === \"right\"\n ? ChevronRightIcon\n : ChevronDownIcon;\n return <Icon className={cn(\"size-4\", className)} {...chevronProps} />;\n },\n }}\n {...props}\n />\n );\n}\n\nexport { Calendar };\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { buttonVariants } from './chunk-
|
|
1
|
+
import { buttonVariants } from './chunk-BOV3Q2JH.js';
|
|
2
2
|
import { cn } from './chunk-DGPY4WP3.js';
|
|
3
3
|
import { ChevronLeftIcon, ChevronRightIcon, MoreHorizontalIcon } from 'lucide-react';
|
|
4
4
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
@@ -110,5 +110,5 @@ function PaginationEllipsis({
|
|
|
110
110
|
}
|
|
111
111
|
|
|
112
112
|
export { Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious };
|
|
113
|
-
//# sourceMappingURL=chunk-
|
|
114
|
-
//# sourceMappingURL=chunk-
|
|
113
|
+
//# sourceMappingURL=chunk-LA4L3QIK.js.map
|
|
114
|
+
//# sourceMappingURL=chunk-LA4L3QIK.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/navigation/pagination.tsx"],"names":[],"mappings":"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","file":"chunk-LA4L3QIK.js","sourcesContent":["import * as React from \"react\";\nimport {\n ChevronLeftIcon,\n ChevronRightIcon,\n MoreHorizontalIcon,\n} from \"lucide-react\";\n\nimport { cn } from \"../../lib/utils\";\nimport { Button, buttonVariants } from \"../inputs/button\";\n\n/**\n * Page navigation component with numbered links, previous/next buttons, and ellipsis indicators.\n *\n * Renders as a `<nav>` with `aria-label=\"pagination\"` for accessibility.\n * Compose with `PaginationContent`, `PaginationItem`, `PaginationLink`,\n * `PaginationPrevious`, `PaginationNext`, and `PaginationEllipsis`.\n *\n * @example\n * ```tsx\n * <Pagination>\n * <PaginationContent>\n * <PaginationItem>\n * <PaginationPrevious href=\"#\" />\n * </PaginationItem>\n * <PaginationItem>\n * <PaginationLink href=\"#\" isActive>1</PaginationLink>\n * </PaginationItem>\n * <PaginationItem>\n * <PaginationLink href=\"#\">2</PaginationLink>\n * </PaginationItem>\n * <PaginationItem>\n * <PaginationEllipsis />\n * </PaginationItem>\n * <PaginationItem>\n * <PaginationLink href=\"#\">10</PaginationLink>\n * </PaginationItem>\n * <PaginationItem>\n * <PaginationNext href=\"#\" />\n * </PaginationItem>\n * </PaginationContent>\n * </Pagination>\n * ```\n */\nfunction Pagination({ className, ...props }: React.ComponentProps<\"nav\">) {\n return (\n <nav\n role=\"navigation\"\n aria-label=\"pagination\"\n data-slot=\"pagination\"\n className={cn(\"mx-auto flex w-full justify-center\", className)}\n {...props}\n />\n );\n}\n\n/** Flex container for pagination items. Renders as a `<ul>`. */\nfunction PaginationContent({\n className,\n ...props\n}: React.ComponentProps<\"ul\">) {\n return (\n <ul\n data-slot=\"pagination-content\"\n className={cn(\"flex flex-row items-center gap-1\", className)}\n {...props}\n />\n );\n}\n\n/** List item wrapper for a single pagination element. */\nfunction PaginationItem({ ...props }: React.ComponentProps<\"li\">) {\n return <li data-slot=\"pagination-item\" {...props} />;\n}\n\ntype PaginationLinkProps = {\n /** When true, renders the link with an `outline` variant and `aria-current=\"page\"`. */\n isActive?: boolean;\n} & Pick<React.ComponentProps<typeof Button>, \"size\"> &\n React.ComponentProps<\"a\">;\n\n/** Styled pagination link using button variants. Supports `isActive` for the current page. */\nfunction PaginationLink({\n className,\n isActive,\n size = \"icon\",\n ...props\n}: PaginationLinkProps) {\n return (\n <a\n aria-current={isActive ? \"page\" : undefined}\n data-slot=\"pagination-link\"\n data-active={isActive}\n className={cn(\n buttonVariants({\n variant: isActive ? \"outline\" : \"ghost\",\n size,\n }),\n className,\n )}\n {...props}\n />\n );\n}\n\n/** \"Previous\" pagination link with a left chevron icon. */\nfunction PaginationPrevious({\n className,\n ...props\n}: React.ComponentProps<typeof PaginationLink>) {\n return (\n <PaginationLink\n aria-label=\"Go to previous page\"\n size=\"default\"\n className={cn(\"gap-1 px-2.5 sm:pl-2.5\", className)}\n {...props}\n >\n <ChevronLeftIcon />\n <span className=\"hidden sm:block\">Previous</span>\n </PaginationLink>\n );\n}\n\n/** \"Next\" pagination link with a right chevron icon. */\nfunction PaginationNext({\n className,\n ...props\n}: React.ComponentProps<typeof PaginationLink>) {\n return (\n <PaginationLink\n aria-label=\"Go to next page\"\n size=\"default\"\n className={cn(\"gap-1 px-2.5 sm:pr-2.5\", className)}\n {...props}\n >\n <span className=\"hidden sm:block\">Next</span>\n <ChevronRightIcon />\n </PaginationLink>\n );\n}\n\n/** Ellipsis indicator for omitted page numbers. Renders a `MoreHorizontal` icon with screen-reader text. */\nfunction PaginationEllipsis({\n className,\n ...props\n}: React.ComponentProps<\"span\">) {\n return (\n <span\n aria-hidden\n data-slot=\"pagination-ellipsis\"\n className={cn(\"flex size-9 items-center justify-center\", className)}\n {...props}\n >\n <MoreHorizontalIcon className=\"size-4\" />\n <span className=\"sr-only\">More pages</span>\n </span>\n );\n}\n\nexport {\n Pagination,\n PaginationContent,\n PaginationLink,\n PaginationItem,\n PaginationPrevious,\n PaginationNext,\n PaginationEllipsis,\n};\n"]}
|
|
@@ -156,5 +156,5 @@ function SelectScrollDownButton({
|
|
|
156
156
|
}
|
|
157
157
|
|
|
158
158
|
export { Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue };
|
|
159
|
-
//# sourceMappingURL=chunk-
|
|
160
|
-
//# sourceMappingURL=chunk-
|
|
159
|
+
//# sourceMappingURL=chunk-LTGCKJX7.js.map
|
|
160
|
+
//# sourceMappingURL=chunk-LTGCKJX7.js.map
|