@vegait/lyra-ds-v2 0.1.0 → 0.1.1-beta.37850
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/README.md +5 -5
- package/dist/chunk-25TSMDQG.js +66 -0
- package/dist/chunk-25TSMDQG.js.map +1 -0
- package/dist/{chunk-CUW7MUCY.js → chunk-2BQ6YZAW.js} +20 -21
- package/dist/chunk-2BQ6YZAW.js.map +1 -0
- package/dist/{chunk-NVCGKCTH.cjs → chunk-2CWYKITU.cjs} +7 -3
- package/dist/chunk-2CWYKITU.cjs.map +1 -0
- package/dist/{chunk-ABFMWZVI.cjs → chunk-2DKSIFQ5.cjs} +19 -14
- package/dist/chunk-2DKSIFQ5.cjs.map +1 -0
- package/dist/{chunk-A665K552.cjs → chunk-2O3Y67RU.cjs} +5 -5
- package/dist/chunk-2O3Y67RU.cjs.map +1 -0
- package/dist/chunk-3SXQHLJB.cjs +133 -0
- package/dist/chunk-3SXQHLJB.cjs.map +1 -0
- package/dist/chunk-45HHDJR5.cjs +294 -0
- package/dist/chunk-45HHDJR5.cjs.map +1 -0
- package/dist/chunk-4WER7Z5F.js +294 -0
- package/dist/chunk-4WER7Z5F.js.map +1 -0
- package/dist/chunk-55JNFYRD.js +94 -0
- package/dist/chunk-55JNFYRD.js.map +1 -0
- package/dist/chunk-562W4FCG.cjs.map +1 -1
- package/dist/{chunk-BXKWAQYI.cjs → chunk-5BGMX6VT.cjs} +23 -10
- package/dist/chunk-5BGMX6VT.cjs.map +1 -0
- package/dist/chunk-5SCF3EGT.cjs.map +1 -1
- package/dist/{chunk-JQ5LATTJ.cjs → chunk-64XJTNAN.cjs} +3 -3
- package/dist/chunk-64XJTNAN.cjs.map +1 -0
- package/dist/chunk-65J2FTEE.js +244 -0
- package/dist/chunk-65J2FTEE.js.map +1 -0
- package/dist/chunk-66UWZNZW.cjs +66 -0
- package/dist/chunk-66UWZNZW.cjs.map +1 -0
- package/dist/{chunk-6GT2L3FX.js → chunk-6EH3SIOP.js} +11 -11
- package/dist/chunk-6EH3SIOP.js.map +1 -0
- package/dist/chunk-6HUQY6FY.js +66 -0
- package/dist/chunk-6HUQY6FY.js.map +1 -0
- package/dist/chunk-6J3OCTKW.cjs +66 -0
- package/dist/chunk-6J3OCTKW.cjs.map +1 -0
- package/dist/chunk-6UBZFL75.cjs +66 -0
- package/dist/chunk-6UBZFL75.cjs.map +1 -0
- package/dist/chunk-7CFBUZGF.cjs +45 -0
- package/dist/chunk-7CFBUZGF.cjs.map +1 -0
- package/dist/{chunk-MMQZ7YMO.js → chunk-7RDX4GIT.js} +39 -31
- package/dist/chunk-7RDX4GIT.js.map +1 -0
- package/dist/chunk-AOIXQNV4.cjs +74 -0
- package/dist/chunk-AOIXQNV4.cjs.map +1 -0
- package/dist/{chunk-6NZHRSXB.cjs → chunk-ASZ4ZVVD.cjs} +8 -6
- package/dist/chunk-ASZ4ZVVD.cjs.map +1 -0
- package/dist/{chunk-COV6FW4J.cjs → chunk-C2KJBV5X.cjs} +11 -11
- package/dist/chunk-C2KJBV5X.cjs.map +1 -0
- package/dist/{chunk-AFMNLT45.js → chunk-CIZ5BCSX.js} +8 -12
- package/dist/chunk-CIZ5BCSX.js.map +1 -0
- package/dist/{chunk-DKHG23OR.js → chunk-DJAMG2EL.js} +8 -6
- package/dist/chunk-DJAMG2EL.js.map +1 -0
- package/dist/chunk-DQ5VNZ7I.cjs +141 -0
- package/dist/chunk-DQ5VNZ7I.cjs.map +1 -0
- package/dist/chunk-FJV4BKC2.cjs +244 -0
- package/dist/chunk-FJV4BKC2.cjs.map +1 -0
- package/dist/chunk-FMWJSLHP.js +91 -0
- package/dist/chunk-FMWJSLHP.js.map +1 -0
- package/dist/chunk-FOEG2WRL.cjs +31 -0
- package/dist/chunk-FOEG2WRL.cjs.map +1 -0
- package/dist/chunk-FRTHJMGT.js +130 -0
- package/dist/chunk-FRTHJMGT.js.map +1 -0
- package/dist/chunk-FWVTBY6Z.cjs +47 -0
- package/dist/chunk-FWVTBY6Z.cjs.map +1 -0
- package/dist/chunk-I45SJT26.js +74 -0
- package/dist/chunk-I45SJT26.js.map +1 -0
- package/dist/chunk-IJSDCAVH.js +47 -0
- package/dist/chunk-IJSDCAVH.js.map +1 -0
- package/dist/chunk-IQKAZF4O.js +47 -0
- package/dist/chunk-IQKAZF4O.js.map +1 -0
- package/dist/{chunk-ACADNUHF.js → chunk-JJCMCVBK.js} +3 -3
- package/dist/chunk-JJCMCVBK.js.map +1 -0
- package/dist/{chunk-TONUCO3E.cjs → chunk-KBW7VS42.cjs} +19 -8
- package/dist/chunk-KBW7VS42.cjs.map +1 -0
- package/dist/chunk-L3OW56O5.cjs +94 -0
- package/dist/chunk-L3OW56O5.cjs.map +1 -0
- package/dist/{chunk-NZOAZF3W.cjs → chunk-LBGGLZQ7.cjs} +7 -5
- package/dist/chunk-LBGGLZQ7.cjs.map +1 -0
- package/dist/chunk-LBHO3VC4.cjs.map +1 -1
- package/dist/chunk-M2WRPFM4.js +165 -0
- package/dist/chunk-M2WRPFM4.js.map +1 -0
- package/dist/chunk-M7JXFKA2.js +26 -0
- package/dist/chunk-M7JXFKA2.js.map +1 -0
- package/dist/{chunk-P5BKGZY2.cjs → chunk-MRSXYO4I.cjs} +20 -21
- package/dist/chunk-MRSXYO4I.cjs.map +1 -0
- package/dist/chunk-MXGUFJCA.cjs +165 -0
- package/dist/chunk-MXGUFJCA.cjs.map +1 -0
- package/dist/chunk-MXNDHPOG.js +39 -0
- package/dist/chunk-MXNDHPOG.js.map +1 -0
- package/dist/{chunk-BAUTON3J.js → chunk-OM5BLVUO.js} +17 -12
- package/dist/chunk-OM5BLVUO.js.map +1 -0
- package/dist/chunk-ORFG73MJ.js +31 -0
- package/dist/chunk-ORFG73MJ.js.map +1 -0
- package/dist/chunk-OS2O66IV.cjs.map +1 -1
- package/dist/chunk-OV6M2ZQ7.js +133 -0
- package/dist/chunk-OV6M2ZQ7.js.map +1 -0
- package/dist/{chunk-POMJPII4.cjs → chunk-P4EGPLR7.cjs} +8 -12
- package/dist/chunk-P4EGPLR7.cjs.map +1 -0
- package/dist/chunk-PCOAKNV7.js +64 -0
- package/dist/chunk-PCOAKNV7.js.map +1 -0
- package/dist/chunk-POH54SGH.cjs +39 -0
- package/dist/chunk-POH54SGH.cjs.map +1 -0
- package/dist/chunk-Q4N3IZOS.cjs +45 -0
- package/dist/chunk-Q4N3IZOS.cjs.map +1 -0
- package/dist/chunk-Q5WLUAHY.js +130 -0
- package/dist/chunk-Q5WLUAHY.js.map +1 -0
- package/dist/chunk-QN2DIVUD.js +45 -0
- package/dist/chunk-QN2DIVUD.js.map +1 -0
- package/dist/chunk-QNLWC5NH.cjs +64 -0
- package/dist/chunk-QNLWC5NH.cjs.map +1 -0
- package/dist/{chunk-SPAC4VNO.js → chunk-QOBVAV47.js} +3 -3
- package/dist/chunk-QOBVAV47.js.map +1 -0
- package/dist/{chunk-4EEFY4FU.cjs → chunk-QT5LUEQV.cjs} +10 -7
- package/dist/chunk-QT5LUEQV.cjs.map +1 -0
- package/dist/{chunk-N7M2UZM6.js → chunk-QZU5M2D5.js} +7 -5
- package/dist/chunk-QZU5M2D5.js.map +1 -0
- package/dist/chunk-R5SUYP2F.cjs.map +1 -1
- package/dist/chunk-RNOBHLMA.js +45 -0
- package/dist/chunk-RNOBHLMA.js.map +1 -0
- package/dist/{chunk-6HFYY5KR.cjs → chunk-RP5AU6NF.cjs} +3 -3
- package/dist/chunk-RP5AU6NF.cjs.map +1 -0
- package/dist/{chunk-RBPMBCU3.js → chunk-S5RDBQU7.js} +22 -9
- package/dist/chunk-S5RDBQU7.js.map +1 -0
- package/dist/{chunk-32QWDFOV.js → chunk-SHATVR7M.js} +8 -5
- package/dist/chunk-SHATVR7M.js.map +1 -0
- package/dist/chunk-SX2RX3ZA.cjs +130 -0
- package/dist/chunk-SX2RX3ZA.cjs.map +1 -0
- package/dist/{chunk-YVPOTKKQ.js → chunk-TAU3SFGM.js} +5 -5
- package/dist/chunk-TAU3SFGM.js.map +1 -0
- package/dist/chunk-THHUEBGN.cjs +91 -0
- package/dist/chunk-THHUEBGN.cjs.map +1 -0
- package/dist/{chunk-LUQS7LYG.cjs → chunk-THZR6WGA.cjs} +22 -20
- package/dist/chunk-THZR6WGA.cjs.map +1 -0
- package/dist/chunk-TKDCRYDL.cjs +47 -0
- package/dist/chunk-TKDCRYDL.cjs.map +1 -0
- package/dist/chunk-TMFHY4HG.cjs +133 -0
- package/dist/chunk-TMFHY4HG.cjs.map +1 -0
- package/dist/chunk-TMRY6K45.cjs +130 -0
- package/dist/chunk-TMRY6K45.cjs.map +1 -0
- package/dist/chunk-TUBUJGRM.cjs +47 -0
- package/dist/chunk-TUBUJGRM.cjs.map +1 -0
- package/dist/chunk-TVOQX5WM.js +141 -0
- package/dist/chunk-TVOQX5WM.js.map +1 -0
- package/dist/chunk-UREHHJBQ.js +133 -0
- package/dist/chunk-UREHHJBQ.js.map +1 -0
- package/dist/{chunk-FZFA24YL.js → chunk-VHVYNO57.js} +7 -3
- package/dist/chunk-VHVYNO57.js.map +1 -0
- package/dist/{chunk-RZQAADXK.cjs → chunk-VIVWJQKY.cjs} +39 -31
- package/dist/chunk-VIVWJQKY.cjs.map +1 -0
- package/dist/{chunk-COFNZ2CM.js → chunk-WMPE5OXJ.js} +19 -8
- package/dist/chunk-WMPE5OXJ.js.map +1 -0
- package/dist/{chunk-EMKU3IZY.js → chunk-X3SE5DCK.js} +22 -20
- package/dist/chunk-X3SE5DCK.js.map +1 -0
- package/dist/chunk-YDZWVY2F.js +66 -0
- package/dist/chunk-YDZWVY2F.js.map +1 -0
- package/dist/chunk-YU75VRQ4.js +47 -0
- package/dist/chunk-YU75VRQ4.js.map +1 -0
- package/dist/chunk-YV4H57BY.cjs +26 -0
- package/dist/chunk-YV4H57BY.cjs.map +1 -0
- package/dist/components/alert.cjs +3 -2
- package/dist/components/alert.cjs.map +1 -1
- package/dist/components/alert.js +2 -1
- package/dist/components/app-shell.cjs +16 -0
- package/dist/components/app-shell.cjs.map +1 -0
- package/dist/components/app-shell.d.cts +74 -0
- package/dist/components/app-shell.d.ts +74 -0
- package/dist/components/app-shell.js +16 -0
- package/dist/components/avatar.cjs +2 -2
- package/dist/components/avatar.cjs.map +1 -1
- package/dist/components/avatar.js +1 -1
- package/dist/components/badge.cjs +2 -2
- package/dist/components/badge.cjs.map +1 -1
- package/dist/components/badge.js +1 -1
- package/dist/components/bulk-bar.cjs +4 -3
- package/dist/components/bulk-bar.cjs.map +1 -1
- package/dist/components/bulk-bar.d.cts +2 -2
- package/dist/components/bulk-bar.d.ts +2 -2
- package/dist/components/bulk-bar.js +3 -2
- package/dist/components/button.cjs +2 -2
- package/dist/components/button.cjs.map +1 -1
- package/dist/components/button.js +1 -1
- package/dist/components/card.cjs +2 -2
- package/dist/components/card.cjs.map +1 -1
- package/dist/components/card.js +1 -1
- package/dist/components/checkbox.cjs +10 -0
- package/dist/components/checkbox.cjs.map +1 -0
- package/dist/components/checkbox.d.cts +19 -0
- package/dist/components/checkbox.d.ts +19 -0
- package/dist/components/checkbox.js +10 -0
- package/dist/components/checkbox.js.map +1 -0
- package/dist/components/confidence-badge.cjs +10 -0
- package/dist/components/confidence-badge.cjs.map +1 -0
- package/dist/components/confidence-badge.d.cts +12 -0
- package/dist/components/confidence-badge.d.ts +12 -0
- package/dist/components/confidence-badge.js +10 -0
- package/dist/components/confidence-badge.js.map +1 -0
- package/dist/components/data-table.cjs +4 -2
- package/dist/components/data-table.cjs.map +1 -1
- package/dist/components/data-table.js +3 -1
- package/dist/components/date-picker.cjs +5 -2
- package/dist/components/date-picker.cjs.map +1 -1
- package/dist/components/date-picker.d.cts +7 -0
- package/dist/components/date-picker.d.ts +7 -0
- package/dist/components/date-picker.js +6 -3
- package/dist/components/destructive-dialog.cjs +6 -5
- package/dist/components/destructive-dialog.cjs.map +1 -1
- package/dist/components/destructive-dialog.d.cts +2 -2
- package/dist/components/destructive-dialog.d.ts +2 -2
- package/dist/components/destructive-dialog.js +5 -4
- package/dist/components/dropdown-menu.cjs +2 -2
- package/dist/components/dropdown-menu.cjs.map +1 -1
- package/dist/components/dropdown-menu.js +1 -1
- package/dist/components/empty-state.cjs +3 -3
- package/dist/components/empty-state.cjs.map +1 -1
- package/dist/components/empty-state.d.cts +1 -2
- package/dist/components/empty-state.d.ts +1 -2
- package/dist/components/empty-state.js +2 -2
- package/dist/components/expandable-reasoning.cjs +11 -0
- package/dist/components/expandable-reasoning.cjs.map +1 -0
- package/dist/components/expandable-reasoning.d.cts +12 -0
- package/dist/components/expandable-reasoning.d.ts +12 -0
- package/dist/components/expandable-reasoning.js +11 -0
- package/dist/components/expandable-reasoning.js.map +1 -0
- package/dist/components/feedback-widget.cjs +10 -0
- package/dist/components/feedback-widget.cjs.map +1 -0
- package/dist/components/feedback-widget.d.cts +12 -0
- package/dist/components/feedback-widget.d.ts +12 -0
- package/dist/components/feedback-widget.js +10 -0
- package/dist/components/feedback-widget.js.map +1 -0
- package/dist/components/field-group.cjs +9 -0
- package/dist/components/field-group.cjs.map +1 -0
- package/dist/components/field-group.d.cts +12 -0
- package/dist/components/field-group.d.ts +12 -0
- package/dist/components/field-group.js +9 -0
- package/dist/components/field-group.js.map +1 -0
- package/dist/components/filter-chips.cjs +2 -2
- package/dist/components/filter-chips.cjs.map +1 -1
- package/dist/components/filter-chips.d.cts +3 -2
- package/dist/components/filter-chips.d.ts +3 -2
- package/dist/components/filter-chips.js +1 -1
- package/dist/components/input.cjs +2 -2
- package/dist/components/input.cjs.map +1 -1
- package/dist/components/input.js +1 -1
- package/dist/components/kpi-cards.cjs +2 -2
- package/dist/components/kpi-cards.cjs.map +1 -1
- package/dist/components/kpi-cards.js +1 -1
- package/dist/components/modal.cjs +3 -2
- package/dist/components/modal.cjs.map +1 -1
- package/dist/components/modal.d.cts +2 -2
- package/dist/components/modal.d.ts +2 -2
- package/dist/components/modal.js +2 -1
- package/dist/components/multi-select.cjs +11 -0
- package/dist/components/multi-select.cjs.map +1 -0
- package/dist/components/multi-select.d.cts +31 -0
- package/dist/components/multi-select.d.ts +31 -0
- package/dist/components/multi-select.js +11 -0
- package/dist/components/multi-select.js.map +1 -0
- package/dist/components/page-header.cjs +11 -0
- package/dist/components/page-header.cjs.map +1 -0
- package/dist/components/page-header.d.cts +25 -0
- package/dist/components/page-header.d.ts +25 -0
- package/dist/components/page-header.js +11 -0
- package/dist/components/page-header.js.map +1 -0
- package/dist/components/pagination-bar.cjs +6 -3
- package/dist/components/pagination-bar.cjs.map +1 -1
- package/dist/components/pagination-bar.d.cts +5 -2
- package/dist/components/pagination-bar.d.ts +5 -2
- package/dist/components/pagination-bar.js +5 -2
- package/dist/components/progress-bar.cjs.map +1 -1
- package/dist/components/radio-group.cjs.map +1 -1
- package/dist/components/select.cjs +11 -0
- package/dist/components/select.cjs.map +1 -0
- package/dist/components/select.d.cts +23 -0
- package/dist/components/select.d.ts +23 -0
- package/dist/components/select.js +11 -0
- package/dist/components/select.js.map +1 -0
- package/dist/components/sidebar.cjs +4 -3
- package/dist/components/sidebar.cjs.map +1 -1
- package/dist/components/sidebar.d.cts +46 -1
- package/dist/components/sidebar.d.ts +46 -1
- package/dist/components/sidebar.js +3 -2
- package/dist/components/skeleton.cjs.map +1 -1
- package/dist/components/snackbar.cjs +12 -0
- package/dist/components/snackbar.cjs.map +1 -0
- package/dist/components/snackbar.d.cts +28 -0
- package/dist/components/snackbar.d.ts +28 -0
- package/dist/components/snackbar.js +12 -0
- package/dist/components/snackbar.js.map +1 -0
- package/dist/components/status-tag.cjs +3 -2
- package/dist/components/status-tag.cjs.map +1 -1
- package/dist/components/status-tag.js +2 -1
- package/dist/components/stepper.cjs +10 -0
- package/dist/components/stepper.cjs.map +1 -0
- package/dist/components/stepper.d.cts +16 -0
- package/dist/components/stepper.d.ts +16 -0
- package/dist/components/stepper.js +10 -0
- package/dist/components/stepper.js.map +1 -0
- package/dist/components/streaming-text.cjs +9 -0
- package/dist/components/streaming-text.cjs.map +1 -0
- package/dist/components/streaming-text.d.cts +11 -0
- package/dist/components/streaming-text.d.ts +11 -0
- package/dist/components/streaming-text.js +9 -0
- package/dist/components/streaming-text.js.map +1 -0
- package/dist/components/tabs.cjs +2 -2
- package/dist/components/tabs.cjs.map +1 -1
- package/dist/components/tabs.js +1 -1
- package/dist/components/textarea.cjs +9 -0
- package/dist/components/textarea.cjs.map +1 -0
- package/dist/components/textarea.d.cts +10 -0
- package/dist/components/textarea.d.ts +10 -0
- package/dist/components/textarea.js +9 -0
- package/dist/components/textarea.js.map +1 -0
- package/dist/components/thinking-indicator.cjs +10 -0
- package/dist/components/thinking-indicator.cjs.map +1 -0
- package/dist/components/thinking-indicator.d.cts +11 -0
- package/dist/components/thinking-indicator.d.ts +11 -0
- package/dist/components/thinking-indicator.js +10 -0
- package/dist/components/thinking-indicator.js.map +1 -0
- package/dist/components/toggle.cjs +2 -2
- package/dist/components/toggle.cjs.map +1 -1
- package/dist/components/toggle.d.cts +1 -0
- package/dist/components/toggle.d.ts +1 -0
- package/dist/components/toggle.js +1 -1
- package/dist/components/tooltip.cjs +2 -2
- package/dist/components/tooltip.cjs.map +1 -1
- package/dist/components/tooltip.d.cts +1 -2
- package/dist/components/tooltip.d.ts +1 -2
- package/dist/components/tooltip.js +1 -1
- package/dist/components/unit-selector.cjs +11 -0
- package/dist/components/unit-selector.cjs.map +1 -0
- package/dist/components/unit-selector.d.cts +17 -0
- package/dist/components/unit-selector.d.ts +17 -0
- package/dist/components/unit-selector.js +11 -0
- package/dist/components/unit-selector.js.map +1 -0
- package/dist/components/user-menu.cjs +12 -0
- package/dist/components/user-menu.cjs.map +1 -0
- package/dist/components/user-menu.d.cts +19 -0
- package/dist/components/user-menu.d.ts +19 -0
- package/dist/components/user-menu.js +12 -0
- package/dist/components/user-menu.js.map +1 -0
- package/dist/i18n/index.cjs +15 -0
- package/dist/i18n/index.cjs.map +1 -0
- package/dist/i18n/index.d.cts +88 -0
- package/dist/i18n/index.d.ts +88 -0
- package/dist/i18n/index.js +15 -0
- package/dist/i18n/index.js.map +1 -0
- package/dist/index.cjs +95 -23
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +21 -3
- package/dist/index.d.ts +21 -3
- package/dist/index.js +122 -50
- package/dist/styles/components.css +2 -0
- package/dist/styles/global.css +488 -168
- package/package.json +13 -2
- package/dist/chunk-32QWDFOV.js.map +0 -1
- package/dist/chunk-4EEFY4FU.cjs.map +0 -1
- package/dist/chunk-5XB7CPVP.cjs +0 -34
- package/dist/chunk-5XB7CPVP.cjs.map +0 -1
- package/dist/chunk-62OTWTBL.cjs +0 -274
- package/dist/chunk-62OTWTBL.cjs.map +0 -1
- package/dist/chunk-6GT2L3FX.js.map +0 -1
- package/dist/chunk-6HFYY5KR.cjs.map +0 -1
- package/dist/chunk-6NZHRSXB.cjs.map +0 -1
- package/dist/chunk-76G7PKIJ.cjs +0 -42
- package/dist/chunk-76G7PKIJ.cjs.map +0 -1
- package/dist/chunk-7PRTXARY.js +0 -87
- package/dist/chunk-7PRTXARY.js.map +0 -1
- package/dist/chunk-A665K552.cjs.map +0 -1
- package/dist/chunk-ABFMWZVI.cjs.map +0 -1
- package/dist/chunk-ACADNUHF.js.map +0 -1
- package/dist/chunk-AFMNLT45.js.map +0 -1
- package/dist/chunk-BAUTON3J.js.map +0 -1
- package/dist/chunk-BNDEIZZQ.js +0 -40
- package/dist/chunk-BNDEIZZQ.js.map +0 -1
- package/dist/chunk-BXKWAQYI.cjs.map +0 -1
- package/dist/chunk-COFNZ2CM.js.map +0 -1
- package/dist/chunk-COV6FW4J.cjs.map +0 -1
- package/dist/chunk-CUW7MUCY.js.map +0 -1
- package/dist/chunk-DKHG23OR.js.map +0 -1
- package/dist/chunk-EMKU3IZY.js.map +0 -1
- package/dist/chunk-FZFA24YL.js.map +0 -1
- package/dist/chunk-G5SLIXQ5.cjs +0 -87
- package/dist/chunk-G5SLIXQ5.cjs.map +0 -1
- package/dist/chunk-GGZSDAN3.cjs +0 -43
- package/dist/chunk-GGZSDAN3.cjs.map +0 -1
- package/dist/chunk-GLMTTY4G.js +0 -34
- package/dist/chunk-GLMTTY4G.js.map +0 -1
- package/dist/chunk-JQ5LATTJ.cjs.map +0 -1
- package/dist/chunk-KLHQMRAY.js +0 -42
- package/dist/chunk-KLHQMRAY.js.map +0 -1
- package/dist/chunk-LUQS7LYG.cjs.map +0 -1
- package/dist/chunk-MMQZ7YMO.js.map +0 -1
- package/dist/chunk-N7M2UZM6.js.map +0 -1
- package/dist/chunk-NLOLOFBX.js +0 -43
- package/dist/chunk-NLOLOFBX.js.map +0 -1
- package/dist/chunk-NPXSB4WO.js +0 -48
- package/dist/chunk-NPXSB4WO.js.map +0 -1
- package/dist/chunk-NVCGKCTH.cjs.map +0 -1
- package/dist/chunk-NZOAZF3W.cjs.map +0 -1
- package/dist/chunk-P5BKGZY2.cjs.map +0 -1
- package/dist/chunk-POMJPII4.cjs.map +0 -1
- package/dist/chunk-QSRVMLAL.cjs +0 -40
- package/dist/chunk-QSRVMLAL.cjs.map +0 -1
- package/dist/chunk-RBPMBCU3.js.map +0 -1
- package/dist/chunk-RZQAADXK.cjs.map +0 -1
- package/dist/chunk-SPAC4VNO.js.map +0 -1
- package/dist/chunk-TONUCO3E.cjs.map +0 -1
- package/dist/chunk-V7DPKW5E.cjs +0 -48
- package/dist/chunk-V7DPKW5E.cjs.map +0 -1
- package/dist/chunk-W3H3KWRL.js +0 -274
- package/dist/chunk-W3H3KWRL.js.map +0 -1
- package/dist/chunk-YVPOTKKQ.js.map +0 -1
- package/dist/components/list-page.cjs +0 -21
- package/dist/components/list-page.cjs.map +0 -1
- package/dist/components/list-page.d.cts +0 -87
- package/dist/components/list-page.d.ts +0 -87
- package/dist/components/list-page.js +0 -21
- /package/dist/components/{list-page.js.map → app-shell.js.map} +0 -0
package/README.md
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
# @vegait/lyra-ds
|
|
1
|
+
# @vegait/lyra-ds-v2
|
|
2
2
|
|
|
3
3
|
Biblioteca de componentes do Lyra Design System. Construída com Radix UI + CVA + Tailwind v4, distribuída como pacote npm.
|
|
4
4
|
|
|
5
5
|
## Instalação
|
|
6
6
|
|
|
7
7
|
```bash
|
|
8
|
-
pnpm add @vegait/lyra-ds tw-animate-css
|
|
8
|
+
pnpm add @vegait/lyra-ds-v2 tw-animate-css
|
|
9
9
|
```
|
|
10
10
|
|
|
11
11
|
`tw-animate-css` é peerDependency obrigatória: provê os utilitários de animação (`animate-in`, `fade-in-0`, `zoom-in-95`, `slide-in-from-*`) usados em Modal, DropdownMenu, Tooltip e DatePicker. Sem ele, overlays abrem sem animação.
|
|
@@ -13,7 +13,7 @@ pnpm add @vegait/lyra-ds tw-animate-css
|
|
|
13
13
|
Importe o CSS global da lib uma vez no entry point da aplicação:
|
|
14
14
|
|
|
15
15
|
```ts
|
|
16
|
-
import "@vegait/lyra-ds/styles";
|
|
16
|
+
import "@vegait/lyra-ds-v2/styles";
|
|
17
17
|
```
|
|
18
18
|
|
|
19
19
|
E adicione o import do `tw-animate-css` no mesmo arquivo CSS onde Tailwind é inicializado (ex: `app/globals.css`):
|
|
@@ -28,7 +28,7 @@ E adicione o import do `tw-animate-css` no mesmo arquivo CSS onde Tailwind é in
|
|
|
28
28
|
## Uso
|
|
29
29
|
|
|
30
30
|
```tsx
|
|
31
|
-
import { Button, Input, Badge } from "@vegait/lyra-ds";
|
|
31
|
+
import { Button, Input, Badge } from "@vegait/lyra-ds-v2";
|
|
32
32
|
|
|
33
33
|
export function Example() {
|
|
34
34
|
return (
|
|
@@ -52,7 +52,7 @@ Esta biblioteca usa o modelo de distribuição npm (não shadcn copy-paste). Ver
|
|
|
52
52
|
|
|
53
53
|
## Tokens CSS
|
|
54
54
|
|
|
55
|
-
Os tokens são importados via `@vegait/lyra-ds/styles`. Cadeia de tokens:
|
|
55
|
+
Os tokens são importados via `@vegait/lyra-ds-v2/styles`. Cadeia de tokens:
|
|
56
56
|
|
|
57
57
|
```
|
|
58
58
|
Primitivos → Brand → Semânticos → Componente
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
useLyraI18n
|
|
4
|
+
} from "./chunk-M2WRPFM4.js";
|
|
5
|
+
import {
|
|
6
|
+
cn
|
|
7
|
+
} from "./chunk-KQJCGTS3.js";
|
|
8
|
+
|
|
9
|
+
// src/components/feedback-widget.tsx
|
|
10
|
+
import * as React from "react";
|
|
11
|
+
import { ThumbsUp, ThumbsDown } from "lucide-react";
|
|
12
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
13
|
+
var FeedbackWidget = React.forwardRef(
|
|
14
|
+
({ value, onFeedback, className, "data-testid": testId }, ref) => {
|
|
15
|
+
const t = useLyraI18n();
|
|
16
|
+
function handleClick(clicked) {
|
|
17
|
+
onFeedback(value === clicked ? null : clicked);
|
|
18
|
+
}
|
|
19
|
+
return /* @__PURE__ */ jsxs(
|
|
20
|
+
"div",
|
|
21
|
+
{
|
|
22
|
+
ref,
|
|
23
|
+
"data-testid": testId,
|
|
24
|
+
className: cn("flex items-center gap-1", className),
|
|
25
|
+
children: [
|
|
26
|
+
/* @__PURE__ */ jsx(
|
|
27
|
+
"button",
|
|
28
|
+
{
|
|
29
|
+
type: "button",
|
|
30
|
+
onClick: () => handleClick("positive"),
|
|
31
|
+
"aria-label": t.ai.feedbackPositive,
|
|
32
|
+
"aria-pressed": value === "positive",
|
|
33
|
+
className: cn(
|
|
34
|
+
"size-8 flex items-center justify-center rounded-[var(--radius-md)]",
|
|
35
|
+
"transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--state-focus-ring)]",
|
|
36
|
+
value === "positive" ? "text-[var(--color-success)] bg-[var(--color-success-container)]" : "text-[var(--color-on-surface-var)] hover:bg-[var(--state-hover-on-surface)]"
|
|
37
|
+
),
|
|
38
|
+
children: /* @__PURE__ */ jsx(ThumbsUp, { className: "size-4", "aria-hidden": "true" })
|
|
39
|
+
}
|
|
40
|
+
),
|
|
41
|
+
/* @__PURE__ */ jsx(
|
|
42
|
+
"button",
|
|
43
|
+
{
|
|
44
|
+
type: "button",
|
|
45
|
+
onClick: () => handleClick("negative"),
|
|
46
|
+
"aria-label": t.ai.feedbackNegative,
|
|
47
|
+
"aria-pressed": value === "negative",
|
|
48
|
+
className: cn(
|
|
49
|
+
"size-8 flex items-center justify-center rounded-[var(--radius-md)]",
|
|
50
|
+
"transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--state-focus-ring)]",
|
|
51
|
+
value === "negative" ? "text-[var(--color-error)] bg-[var(--color-error-container)]" : "text-[var(--color-on-surface-var)] hover:bg-[var(--state-hover-on-surface)]"
|
|
52
|
+
),
|
|
53
|
+
children: /* @__PURE__ */ jsx(ThumbsDown, { className: "size-4", "aria-hidden": "true" })
|
|
54
|
+
}
|
|
55
|
+
)
|
|
56
|
+
]
|
|
57
|
+
}
|
|
58
|
+
);
|
|
59
|
+
}
|
|
60
|
+
);
|
|
61
|
+
FeedbackWidget.displayName = "FeedbackWidget";
|
|
62
|
+
|
|
63
|
+
export {
|
|
64
|
+
FeedbackWidget
|
|
65
|
+
};
|
|
66
|
+
//# sourceMappingURL=chunk-25TSMDQG.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/feedback-widget.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { ThumbsUp, ThumbsDown } from \"lucide-react\";\nimport { cn } from \"../lib/utils\";\nimport { useLyraI18n } from \"../i18n/index\";\n\nexport type FeedbackValue = \"positive\" | \"negative\" | null;\n\nexport interface FeedbackWidgetProps {\n value?: FeedbackValue;\n onFeedback: (value: FeedbackValue) => void;\n className?: string;\n \"data-testid\"?: string;\n}\n\nconst FeedbackWidget = React.forwardRef<HTMLDivElement, FeedbackWidgetProps>(\n ({ value, onFeedback, className, \"data-testid\": testId }, ref) => {\n const t = useLyraI18n();\n\n function handleClick(clicked: \"positive\" | \"negative\") {\n onFeedback(value === clicked ? null : clicked);\n }\n\n return (\n <div\n ref={ref}\n data-testid={testId}\n className={cn(\"flex items-center gap-1\", className)}\n >\n <button\n type=\"button\"\n onClick={() => handleClick(\"positive\")}\n aria-label={t.ai.feedbackPositive}\n aria-pressed={value === \"positive\"}\n className={cn(\n \"size-8 flex items-center justify-center rounded-[var(--radius-md)]\",\n \"transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--state-focus-ring)]\",\n value === \"positive\"\n ? \"text-[var(--color-success)] bg-[var(--color-success-container)]\"\n : \"text-[var(--color-on-surface-var)] hover:bg-[var(--state-hover-on-surface)]\"\n )}\n >\n <ThumbsUp className=\"size-4\" aria-hidden=\"true\" />\n </button>\n <button\n type=\"button\"\n onClick={() => handleClick(\"negative\")}\n aria-label={t.ai.feedbackNegative}\n aria-pressed={value === \"negative\"}\n className={cn(\n \"size-8 flex items-center justify-center rounded-[var(--radius-md)]\",\n \"transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--state-focus-ring)]\",\n value === \"negative\"\n ? \"text-[var(--color-error)] bg-[var(--color-error-container)]\"\n : \"text-[var(--color-on-surface-var)] hover:bg-[var(--state-hover-on-surface)]\"\n )}\n >\n <ThumbsDown className=\"size-4\" aria-hidden=\"true\" />\n </button>\n </div>\n );\n }\n);\n\nFeedbackWidget.displayName = \"FeedbackWidget\";\n\nexport { FeedbackWidget };\n"],"mappings":";;;;;;;;;AAAA,YAAY,WAAW;AACvB,SAAS,UAAU,kBAAkB;AAsB/B,SAkBI,KAlBJ;AATN,IAAM,iBAAuB;AAAA,EAC3B,CAAC,EAAE,OAAO,YAAY,WAAW,eAAe,OAAO,GAAG,QAAQ;AAChE,UAAM,IAAI,YAAY;AAEtB,aAAS,YAAY,SAAkC;AACrD,iBAAW,UAAU,UAAU,OAAO,OAAO;AAAA,IAC/C;AAEA,WACE;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA,eAAa;AAAA,QACb,WAAW,GAAG,2BAA2B,SAAS;AAAA,QAElD;AAAA;AAAA,YAAC;AAAA;AAAA,cACC,MAAK;AAAA,cACL,SAAS,MAAM,YAAY,UAAU;AAAA,cACrC,cAAY,EAAE,GAAG;AAAA,cACjB,gBAAc,UAAU;AAAA,cACxB,WAAW;AAAA,gBACT;AAAA,gBACA;AAAA,gBACA,UAAU,aACN,oEACA;AAAA,cACN;AAAA,cAEA,8BAAC,YAAS,WAAU,UAAS,eAAY,QAAO;AAAA;AAAA,UAClD;AAAA,UACA;AAAA,YAAC;AAAA;AAAA,cACC,MAAK;AAAA,cACL,SAAS,MAAM,YAAY,UAAU;AAAA,cACrC,cAAY,EAAE,GAAG;AAAA,cACjB,gBAAc,UAAU;AAAA,cACxB,WAAW;AAAA,gBACT;AAAA,gBACA;AAAA,gBACA,UAAU,aACN,gEACA;AAAA,cACN;AAAA,cAEA,8BAAC,cAAW,WAAU,UAAS,eAAY,QAAO;AAAA;AAAA,UACpD;AAAA;AAAA;AAAA,IACF;AAAA,EAEJ;AACF;AAEA,eAAe,cAAc;","names":[]}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
|
+
import {
|
|
3
|
+
useLyraI18n
|
|
4
|
+
} from "./chunk-M2WRPFM4.js";
|
|
2
5
|
import {
|
|
3
6
|
cn
|
|
4
7
|
} from "./chunk-KQJCGTS3.js";
|
|
@@ -7,15 +10,8 @@ import {
|
|
|
7
10
|
import * as React from "react";
|
|
8
11
|
import { cva } from "class-variance-authority";
|
|
9
12
|
import { jsx } from "react/jsx-runtime";
|
|
10
|
-
var DEFAULT_LABELS = {
|
|
11
|
-
active: "Ativo",
|
|
12
|
-
invited: "Convidado",
|
|
13
|
-
pending: "Pendente",
|
|
14
|
-
suspended: "Suspenso",
|
|
15
|
-
inactive: "Inativo"
|
|
16
|
-
};
|
|
17
13
|
var statusTagVariants = cva(
|
|
18
|
-
"inline-flex items-center font-semibold rounded-[var(--radius-
|
|
14
|
+
"inline-flex items-center font-semibold rounded-[var(--radius-full)]",
|
|
19
15
|
{
|
|
20
16
|
variants: {
|
|
21
17
|
status: {
|
|
@@ -26,8 +22,8 @@ var statusTagVariants = cva(
|
|
|
26
22
|
inactive: "bg-[var(--color-surf-container-high)] text-[var(--color-on-surface-var)]"
|
|
27
23
|
},
|
|
28
24
|
size: {
|
|
29
|
-
sm: "h-[18px] px-[
|
|
30
|
-
md: "h-[22px] px-[
|
|
25
|
+
sm: "h-[18px] px-[7px] text-[10px] tracking-[0.04em]",
|
|
26
|
+
md: "h-[22px] px-[9px] text-[11px] tracking-[0.04em]"
|
|
31
27
|
}
|
|
32
28
|
},
|
|
33
29
|
defaultVariants: {
|
|
@@ -36,20 +32,23 @@ var statusTagVariants = cva(
|
|
|
36
32
|
}
|
|
37
33
|
);
|
|
38
34
|
var StatusTag = React.forwardRef(
|
|
39
|
-
({ className, status, label, tooltip, size = "md", ...props }, ref) =>
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
35
|
+
({ className, status, label, tooltip, size = "md", ...props }, ref) => {
|
|
36
|
+
const t = useLyraI18n();
|
|
37
|
+
return /* @__PURE__ */ jsx(
|
|
38
|
+
"span",
|
|
39
|
+
{
|
|
40
|
+
ref,
|
|
41
|
+
className: cn(statusTagVariants({ status, size }), className),
|
|
42
|
+
title: tooltip,
|
|
43
|
+
...props,
|
|
44
|
+
children: label ?? t.statusTag[status]
|
|
45
|
+
}
|
|
46
|
+
);
|
|
47
|
+
}
|
|
49
48
|
);
|
|
50
49
|
StatusTag.displayName = "StatusTag";
|
|
51
50
|
|
|
52
51
|
export {
|
|
53
52
|
StatusTag
|
|
54
53
|
};
|
|
55
|
-
//# sourceMappingURL=chunk-
|
|
54
|
+
//# sourceMappingURL=chunk-2BQ6YZAW.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/status-tag.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { cva } from \"class-variance-authority\";\nimport { cn } from \"../lib/utils\";\nimport { useLyraI18n } from \"../i18n/index\";\n\nconst statusTagVariants = cva(\n \"inline-flex items-center font-semibold rounded-[var(--radius-full)]\",\n {\n variants: {\n status: {\n active:\n \"bg-[var(--color-success-container)] text-[var(--color-on-success-container)]\",\n invited:\n \"bg-[var(--color-info-container)] text-[var(--color-on-info-container)]\",\n pending:\n \"bg-[var(--color-warning-container)] text-[var(--color-on-warning-container)]\",\n suspended:\n \"bg-[var(--color-error-container)] text-[var(--color-on-error-container)]\",\n inactive:\n \"bg-[var(--color-surf-container-high)] text-[var(--color-on-surface-var)]\",\n },\n size: {\n sm: \"h-[18px] px-[7px] text-[10px] tracking-[0.04em]\",\n md: \"h-[22px] px-[9px] text-[11px] tracking-[0.04em]\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n }\n);\n\nexport interface StatusTagProps\n extends Omit<React.HTMLAttributes<HTMLSpanElement>, \"children\"> {\n status: \"active\" | \"invited\" | \"pending\" | \"suspended\" | \"inactive\";\n label?: string;\n tooltip?: string;\n size?: \"sm\" | \"md\";\n}\n\nconst StatusTag = React.forwardRef<HTMLSpanElement, StatusTagProps>(\n ({ className, status, label, tooltip, size = \"md\", ...props }, ref) => {\n const t = useLyraI18n();\n return (\n <span\n ref={ref}\n className={cn(statusTagVariants({ status, size }), className)}\n title={tooltip}\n {...props}\n >\n {label ?? t.statusTag[status]}\n </span>\n );\n }\n);\nStatusTag.displayName = \"StatusTag\";\n\nexport { StatusTag };\n"],"mappings":";;;;;;;;;AAAA,YAAY,WAAW;AACvB,SAAS,WAAW;AA2Cd;AAvCN,IAAM,oBAAoB;AAAA,EACxB;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,QAAQ;AAAA,QACN,QACE;AAAA,QACF,SACE;AAAA,QACF,SACE;AAAA,QACF,WACE;AAAA,QACF,UACE;AAAA,MACJ;AAAA,MACA,MAAM;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MACN;AAAA,IACF;AAAA,IACA,iBAAiB;AAAA,MACf,MAAM;AAAA,IACR;AAAA,EACF;AACF;AAUA,IAAM,YAAkB;AAAA,EACtB,CAAC,EAAE,WAAW,QAAQ,OAAO,SAAS,OAAO,MAAM,GAAG,MAAM,GAAG,QAAQ;AACrE,UAAM,IAAI,YAAY;AACtB,WACE;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA,WAAW,GAAG,kBAAkB,EAAE,QAAQ,KAAK,CAAC,GAAG,SAAS;AAAA,QAC5D,OAAO;AAAA,QACN,GAAG;AAAA,QAEH,mBAAS,EAAE,UAAU,MAAM;AAAA;AAAA,IAC9B;AAAA,EAEJ;AACF;AACA,UAAU,cAAc;","names":[]}
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } }"use client";
|
|
2
2
|
|
|
3
3
|
|
|
4
|
+
var _chunkMXGUFJCAcjs = require('./chunk-MXGUFJCA.cjs');
|
|
5
|
+
|
|
6
|
+
|
|
4
7
|
var _chunk5SCF3EGTcjs = require('./chunk-5SCF3EGT.cjs');
|
|
5
8
|
|
|
6
9
|
// src/components/alert.tsx
|
|
@@ -15,7 +18,7 @@ var _lucidereact = require('lucide-react');
|
|
|
15
18
|
var _classvarianceauthority = require('class-variance-authority');
|
|
16
19
|
var _jsxruntime = require('react/jsx-runtime');
|
|
17
20
|
var alertVariants = _classvarianceauthority.cva.call(void 0,
|
|
18
|
-
"flex gap-3 p-4 rounded-[var(--radius-
|
|
21
|
+
"flex gap-3 p-4 rounded-[var(--radius-lg)] border-l-4",
|
|
19
22
|
{
|
|
20
23
|
variants: {
|
|
21
24
|
variant: {
|
|
@@ -45,6 +48,7 @@ var Alert = React.forwardRef(
|
|
|
45
48
|
...props
|
|
46
49
|
}, ref) => {
|
|
47
50
|
const Icon = _nullishCoalesce(IconProp, () => ( DEFAULT_ICONS[variant]));
|
|
51
|
+
const t = _chunkMXGUFJCAcjs.useLyraI18n.call(void 0, );
|
|
48
52
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
49
53
|
"div",
|
|
50
54
|
{
|
|
@@ -73,7 +77,7 @@ var Alert = React.forwardRef(
|
|
|
73
77
|
type: "button",
|
|
74
78
|
onClick: onDismiss,
|
|
75
79
|
className: "shrink-0 rounded hover:opacity-70 transition-opacity",
|
|
76
|
-
"aria-label":
|
|
80
|
+
"aria-label": t.alert.close,
|
|
77
81
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.X, { className: "size-4" })
|
|
78
82
|
}
|
|
79
83
|
)
|
|
@@ -87,4 +91,4 @@ Alert.displayName = "Alert";
|
|
|
87
91
|
|
|
88
92
|
|
|
89
93
|
exports.Alert = Alert;
|
|
90
|
-
//# sourceMappingURL=chunk-
|
|
94
|
+
//# sourceMappingURL=chunk-2CWYKITU.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/vsts/work/1/s/packages/lyra-ds/dist/chunk-2CWYKITU.cjs","../src/components/alert.tsx"],"names":[],"mappings":"AAAA,2cAAY;AACZ;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACA;ACRA,2EAAuB;AACvB;AACE;AACA;AACA;AACA;AACA;AAAA,2CACK;AAEP,kEAAoB;AA6DZ,+CAAA;AAzDR,IAAM,cAAA,EAAgB,yCAAA;AAAA,EACpB,sDAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,OAAA,EAAS;AAAA,QACP,IAAA,EAAM,qGAAA;AAAA,QACN,OAAA,EACE,8GAAA;AAAA,QACF,OAAA,EACE,8GAAA;AAAA,QACF,KAAA,EACE;AAAA,MACJ;AAAA,IACF;AAAA,EACF;AACF,CAAA;AAEA,IAAM,cAAA,EAA4C;AAAA,EAChD,IAAA,EAAM,iBAAA;AAAA,EACN,OAAA,EAAS,wBAAA;AAAA,EACT,OAAA,EAAS,0BAAA;AAAA,EACT,KAAA,EAAO;AACT,CAAA;AAWA,IAAM,MAAA,EAAc,KAAA,CAAA,UAAA;AAAA,EAClB,CACE;AAAA,IACE,SAAA;AAAA,IACA,OAAA;AAAA,IACA,KAAA;AAAA,IACA,WAAA;AAAA,IACA,IAAA,EAAM,QAAA;AAAA,IACN,SAAA;AAAA,IACA,MAAA;AAAA,IACA,GAAG;AAAA,EACL,CAAA,EACA,GAAA,EAAA,GACG;AACH,IAAA,MAAM,KAAA,mBAAO,QAAA,UAAY,aAAA,CAAc,OAAO,GAAA;AAC9C,IAAA,MAAM,EAAA,EAAI,2CAAA,CAAY;AAEtB,IAAA,uBACE,8BAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,GAAA;AAAA,QACA,IAAA,EAAK,OAAA;AAAA,QACL,SAAA,EAAW,kCAAA,aAAG,CAAc,EAAE,QAAQ,CAAC,CAAA,EAAG,SAAS,CAAA;AAAA,QAClD,GAAG,KAAA;AAAA,QAEJ,QAAA,EAAA;AAAA,0BAAA,6BAAA,IAAC,EAAA,EAAK,SAAA,EAAU,wBAAA,EAAyB,aAAA,EAAY,OAAA,CAAO,CAAA;AAAA,0BAC5D,8BAAA,KAAC,EAAA,EAAI,SAAA,EAAU,gBAAA,EACZ,QAAA,EAAA;AAAA,YAAA,MAAA,mBAAS,6BAAA,GAAC,EAAA,EAAE,SAAA,EAAU,qBAAA,EAAuB,QAAA,EAAA,MAAA,CAAM,CAAA;AAAA,4BACpD,6BAAA,GAAC,EAAA,EAAE,SAAA,EAAU,cAAA,EAAgB,QAAA,EAAA,YAAA,CAAY,CAAA;AAAA,YACxC,OAAA,mBACC,6BAAA;AAAA,cAAC,QAAA;AAAA,cAAA;AAAA,gBACC,IAAA,EAAK,QAAA;AAAA,gBACL,OAAA,EAAS,MAAA,CAAO,OAAA;AAAA,gBAChB,SAAA,EAAU,8DAAA;AAAA,gBAET,QAAA,EAAA,MAAA,CAAO;AAAA,cAAA;AAAA,YACV;AAAA,UAAA,EAAA,CAEJ,CAAA;AAAA,UACC,UAAA,mBACC,6BAAA;AAAA,YAAC,QAAA;AAAA,YAAA;AAAA,cACC,IAAA,EAAK,QAAA;AAAA,cACL,OAAA,EAAS,SAAA;AAAA,cACT,SAAA,EAAU,sDAAA;AAAA,cACV,YAAA,EAAY,CAAA,CAAE,KAAA,CAAM,KAAA;AAAA,cAEpB,QAAA,kBAAA,6BAAA,cAAC,EAAA,EAAE,SAAA,EAAU,SAAA,CAAS;AAAA,YAAA;AAAA,UACxB;AAAA,QAAA;AAAA,MAAA;AAAA,IAEJ,CAAA;AAAA,EAEJ;AACF,CAAA;AACA,KAAA,CAAM,YAAA,EAAc,OAAA;ADTpB;AACA;AACE;AACF,sBAAC","file":"/home/vsts/work/1/s/packages/lyra-ds/dist/chunk-2CWYKITU.cjs","sourcesContent":[null,"import * as React from \"react\";\nimport {\n Info,\n CheckCircle,\n AlertTriangle,\n AlertCircle,\n X,\n} from \"lucide-react\";\nimport type { LucideIcon } from \"lucide-react\";\nimport { cva } from \"class-variance-authority\";\nimport { cn } from \"../lib/utils\";\nimport { useLyraI18n } from \"../i18n/index\";\n\nconst alertVariants = cva(\n \"flex gap-3 p-4 rounded-[var(--radius-lg)] border-l-4\",\n {\n variants: {\n variant: {\n info: \"bg-[var(--color-info-container)] text-[var(--color-on-info-container)] border-l-[var(--color-info)]\",\n success:\n \"bg-[var(--color-success-container)] text-[var(--color-on-success-container)] border-l-[var(--color-success)]\",\n warning:\n \"bg-[var(--color-warning-container)] text-[var(--color-on-warning-container)] border-l-[var(--color-warning)]\",\n error:\n \"bg-[var(--color-error-container)] text-[var(--color-on-error-container)] border-l-[var(--color-error)]\",\n },\n },\n }\n);\n\nconst DEFAULT_ICONS: Record<string, LucideIcon> = {\n info: Info,\n success: CheckCircle,\n warning: AlertTriangle,\n error: AlertCircle,\n};\n\nexport interface AlertProps extends React.HTMLAttributes<HTMLDivElement> {\n variant: \"info\" | \"success\" | \"warning\" | \"error\";\n title?: string;\n description: string;\n icon?: LucideIcon;\n onDismiss?: () => void;\n action?: { label: string; onClick: () => void };\n}\n\nconst Alert = React.forwardRef<HTMLDivElement, AlertProps>(\n (\n {\n className,\n variant,\n title,\n description,\n icon: IconProp,\n onDismiss,\n action,\n ...props\n },\n ref\n ) => {\n const Icon = IconProp ?? DEFAULT_ICONS[variant];\n const t = useLyraI18n();\n\n return (\n <div\n ref={ref}\n role=\"alert\"\n className={cn(alertVariants({ variant }), className)}\n {...props}\n >\n <Icon className=\"mt-0.5 size-5 shrink-0\" aria-hidden=\"true\" />\n <div className=\"flex-1 min-w-0\">\n {title && <p className=\"text-heading mb-0.5\">{title}</p>}\n <p className=\"text-body-md\">{description}</p>\n {action && (\n <button\n type=\"button\"\n onClick={action.onClick}\n className=\"mt-2 text-body-sm font-semibold underline hover:no-underline\"\n >\n {action.label}\n </button>\n )}\n </div>\n {onDismiss && (\n <button\n type=\"button\"\n onClick={onDismiss}\n className=\"shrink-0 rounded hover:opacity-70 transition-opacity\"\n aria-label={t.alert.close}\n >\n <X className=\"size-4\" />\n </button>\n )}\n </div>\n );\n }\n);\nAlert.displayName = \"Alert\";\n\nexport { Alert };\n"]}
|
|
@@ -1,19 +1,22 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }"use client";
|
|
2
2
|
|
|
3
3
|
|
|
4
|
-
var
|
|
4
|
+
var _chunkC2KJBV5Xcjs = require('./chunk-C2KJBV5X.cjs');
|
|
5
5
|
|
|
6
6
|
|
|
7
|
-
var
|
|
7
|
+
var _chunkKBW7VS42cjs = require('./chunk-KBW7VS42.cjs');
|
|
8
8
|
|
|
9
9
|
|
|
10
|
-
var
|
|
10
|
+
var _chunkMXGUFJCAcjs = require('./chunk-MXGUFJCA.cjs');
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
var _chunkTHZR6WGAcjs = require('./chunk-THZR6WGA.cjs');
|
|
11
14
|
|
|
12
15
|
// src/components/destructive-dialog.tsx
|
|
13
16
|
var _react = require('react'); var React = _interopRequireWildcard(_react);
|
|
14
17
|
var _lucidereact = require('lucide-react');
|
|
15
18
|
var _jsxruntime = require('react/jsx-runtime');
|
|
16
|
-
|
|
19
|
+
var DestructiveDialog = React.forwardRef(function DestructiveDialog2({
|
|
17
20
|
open,
|
|
18
21
|
onClose,
|
|
19
22
|
onConfirm,
|
|
@@ -23,7 +26,8 @@ function DestructiveDialog({
|
|
|
23
26
|
confirmInput,
|
|
24
27
|
confirmLabel,
|
|
25
28
|
loading = false
|
|
26
|
-
}) {
|
|
29
|
+
}, ref) {
|
|
30
|
+
const t = _chunkMXGUFJCAcjs.useLyraI18n.call(void 0, );
|
|
27
31
|
const [inputValue, setInputValue] = React.useState("");
|
|
28
32
|
const cancelRef = React.useRef(null);
|
|
29
33
|
const isConfirmDisabled = loading || confirmInput !== void 0 && inputValue.trim() !== confirmInput.expectedValue;
|
|
@@ -33,23 +37,23 @@ function DestructiveDialog({
|
|
|
33
37
|
};
|
|
34
38
|
React.useEffect(() => {
|
|
35
39
|
if (open) {
|
|
36
|
-
const
|
|
37
|
-
return () => clearTimeout(
|
|
40
|
+
const timerId = setTimeout(() => _optionalChain([cancelRef, 'access', _ => _.current, 'optionalAccess', _2 => _2.focus, 'call', _3 => _3()]), 80);
|
|
41
|
+
return () => clearTimeout(timerId);
|
|
38
42
|
}
|
|
39
43
|
}, [open]);
|
|
40
44
|
const footer = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
41
45
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
42
|
-
|
|
46
|
+
_chunkTHZR6WGAcjs.Button,
|
|
43
47
|
{
|
|
44
48
|
ref: cancelRef,
|
|
45
49
|
variant: "outlined",
|
|
46
50
|
onClick: handleClose,
|
|
47
51
|
disabled: loading,
|
|
48
|
-
children:
|
|
52
|
+
children: t.destructiveDialog.cancel
|
|
49
53
|
}
|
|
50
54
|
),
|
|
51
55
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
52
|
-
|
|
56
|
+
_chunkTHZR6WGAcjs.Button,
|
|
53
57
|
{
|
|
54
58
|
variant: "destructive",
|
|
55
59
|
onClick: onConfirm,
|
|
@@ -59,7 +63,7 @@ function DestructiveDialog({
|
|
|
59
63
|
}
|
|
60
64
|
)
|
|
61
65
|
] });
|
|
62
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
66
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkKBW7VS42cjs.Modal, { ref, open, onClose: handleClose, title, size: "sm", footer, children: [
|
|
63
67
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex justify-center mb-4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "size-12 rounded-full bg-[var(--color-error-container)] flex items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.AlertCircle, { className: "size-6 text-[var(--color-error)]" }) }) }),
|
|
64
68
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-body-md text-[var(--color-on-surface-var)] mb-4", children: description }),
|
|
65
69
|
consequenceList && consequenceList.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mb-4 pl-3 border-l-[3px] border-l-[var(--color-error)] bg-[var(--color-error-container)] rounded-r-[var(--radius-sm)] py-2 pr-3", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "ul", { className: "list-disc list-inside space-y-1", children: consequenceList.map((item, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -71,7 +75,7 @@ function DestructiveDialog({
|
|
|
71
75
|
i
|
|
72
76
|
)) }) }),
|
|
73
77
|
confirmInput && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
74
|
-
|
|
78
|
+
_chunkC2KJBV5Xcjs.Input,
|
|
75
79
|
{
|
|
76
80
|
id: "destructive-confirm-input",
|
|
77
81
|
label: confirmInput.label,
|
|
@@ -81,9 +85,10 @@ function DestructiveDialog({
|
|
|
81
85
|
}
|
|
82
86
|
)
|
|
83
87
|
] });
|
|
84
|
-
}
|
|
88
|
+
});
|
|
89
|
+
DestructiveDialog.displayName = "DestructiveDialog";
|
|
85
90
|
|
|
86
91
|
|
|
87
92
|
|
|
88
93
|
exports.DestructiveDialog = DestructiveDialog;
|
|
89
|
-
//# sourceMappingURL=chunk-
|
|
94
|
+
//# sourceMappingURL=chunk-2DKSIFQ5.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/vsts/work/1/s/packages/lyra-ds/dist/chunk-2DKSIFQ5.cjs","../src/components/destructive-dialog.tsx"],"names":["DestructiveDialog"],"mappings":"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","file":"/home/vsts/work/1/s/packages/lyra-ds/dist/chunk-2DKSIFQ5.cjs","sourcesContent":[null,"\"use client\";\n\nimport * as React from \"react\";\nimport { AlertCircle } from \"lucide-react\";\nimport { Modal } from \"./modal\";\nimport { Button } from \"./button\";\nimport { Input } from \"./input\";\nimport { useLyraI18n } from \"../i18n/index\";\n\nexport interface DestructiveDialogProps {\n open: boolean;\n onClose: () => void;\n onConfirm: () => void | Promise<void>;\n title: string;\n description: string;\n consequenceList?: string[];\n confirmInput?: {\n label: string;\n expectedValue: string;\n };\n confirmLabel: string;\n loading?: boolean;\n}\n\nconst DestructiveDialog = React.forwardRef<HTMLDivElement, DestructiveDialogProps>(function DestructiveDialog(\n {\n open,\n onClose,\n onConfirm,\n title,\n description,\n consequenceList,\n confirmInput,\n confirmLabel,\n loading = false,\n },\n ref\n) {\n const t = useLyraI18n();\n const [inputValue, setInputValue] = React.useState(\"\");\n const cancelRef = React.useRef<HTMLButtonElement>(null);\n\n const isConfirmDisabled =\n loading ||\n (confirmInput !== undefined &&\n inputValue.trim() !== confirmInput.expectedValue);\n\n const handleClose = () => {\n setInputValue(\"\");\n onClose();\n };\n\n React.useEffect(() => {\n if (open) {\n const timerId = setTimeout(() => cancelRef.current?.focus(), 80);\n return () => clearTimeout(timerId);\n }\n }, [open]);\n\n const footer = (\n <>\n <Button\n ref={cancelRef}\n variant=\"outlined\"\n onClick={handleClose}\n disabled={loading}\n >\n {t.destructiveDialog.cancel}\n </Button>\n\n <Button\n variant=\"destructive\"\n onClick={onConfirm}\n disabled={isConfirmDisabled}\n loading={loading}\n >\n {confirmLabel}\n </Button>\n </>\n );\n\n return (\n <Modal ref={ref} open={open} onClose={handleClose} title={title} size=\"sm\" footer={footer}>\n {/* Ícone de alerta */}\n <div className=\"flex justify-center mb-4\">\n <div className=\"size-12 rounded-full bg-[var(--color-error-container)] flex items-center justify-center\">\n <AlertCircle className=\"size-6 text-[var(--color-error)]\" />\n </div>\n </div>\n\n <p className=\"text-body-md text-[var(--color-on-surface-var)] mb-4\">\n {description}\n </p>\n\n {consequenceList && consequenceList.length > 0 && (\n <div className=\"mb-4 pl-3 border-l-[3px] border-l-[var(--color-error)] bg-[var(--color-error-container)] rounded-r-[var(--radius-sm)] py-2 pr-3\">\n <ul className=\"list-disc list-inside space-y-1\">\n {consequenceList.map((item, i) => (\n <li\n key={i}\n className=\"text-body-sm text-[var(--color-on-error-container)]\"\n >\n {item}\n </li>\n ))}\n </ul>\n </div>\n )}\n\n {confirmInput && (\n <Input\n id=\"destructive-confirm-input\"\n label={confirmInput.label}\n value={inputValue}\n onChange={(e) => setInputValue(e.target.value)}\n placeholder={confirmInput.expectedValue}\n />\n )}\n </Modal>\n );\n});\nDestructiveDialog.displayName = \"DestructiveDialog\";\n\nexport { DestructiveDialog };\n"]}
|
|
@@ -25,9 +25,9 @@ function initials(name) {
|
|
|
25
25
|
return parts[0].charAt(0).toUpperCase() + parts[parts.length - 1].charAt(0).toUpperCase();
|
|
26
26
|
}
|
|
27
27
|
var SIZE = {
|
|
28
|
-
sm: { root: "size-6", text: "text-
|
|
29
|
-
md: { root: "size-8", text: "text-
|
|
30
|
-
lg: { root: "size-10", text: "text-
|
|
28
|
+
sm: { root: "size-6", text: "text-tiny" },
|
|
29
|
+
md: { root: "size-8", text: "text-label" },
|
|
30
|
+
lg: { root: "size-10", text: "text-body-md-strong" }
|
|
31
31
|
};
|
|
32
32
|
var Avatar = React.forwardRef(({ name, src, size = "md", className, style }, ref) => {
|
|
33
33
|
const { bg, text } = hashColor(name);
|
|
@@ -55,7 +55,7 @@ var Avatar = React.forwardRef(({ name, src, size = "md", className, style }, ref
|
|
|
55
55
|
RadixAvatar.Fallback,
|
|
56
56
|
{
|
|
57
57
|
className: _chunk5SCF3EGTcjs.cn.call(void 0,
|
|
58
|
-
"flex size-full items-center justify-center rounded-full
|
|
58
|
+
"flex size-full items-center justify-center rounded-full select-none",
|
|
59
59
|
textSize
|
|
60
60
|
),
|
|
61
61
|
style: { backgroundColor: bg, color: text },
|
|
@@ -72,4 +72,4 @@ Avatar.displayName = "Avatar";
|
|
|
72
72
|
|
|
73
73
|
|
|
74
74
|
exports.Avatar = Avatar;
|
|
75
|
-
//# sourceMappingURL=chunk-
|
|
75
|
+
//# sourceMappingURL=chunk-2O3Y67RU.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/vsts/work/1/s/packages/lyra-ds/dist/chunk-2O3Y67RU.cjs","../src/components/avatar.tsx"],"names":[],"mappings":"AAAA,uWAAY;AACZ;AACE;AACF,wDAA6B;AAC7B;AACA;ACLA,2EAAuB;AACvB,8GAA6B;AAsDzB,+CAAA;AAjDJ,IAAM,gBAAA,EAAkB;AAAA,EACtB,EAAE,EAAA,EAAI,gCAAA,EAAmC,IAAA,EAAM,oCAAqC,CAAA;AAAA,EACpF,EAAE,EAAA,EAAI,gCAAA,EAAmC,IAAA,EAAM,oCAAqC,CAAA;AAAA,EACpF,EAAE,EAAA,EAAI,6BAAA,EAAmC,IAAA,EAAM,iCAAqC,CAAA;AAAA,EACpF,EAAE,EAAA,EAAI,gCAAA,EAAmC,IAAA,EAAM,oCAAqC,CAAA;AAAA,EACpF,EAAE,EAAA,EAAI,8BAAA,EAAmC,IAAA,EAAM,kCAAqC,CAAA;AAAA,EACpF,EAAE,EAAA,EAAI,+BAAA,EAAmC,IAAA,EAAM,mCAAqC;AACtF,CAAA;AAEA,SAAS,SAAA,CAAU,IAAA,EAAc;AAC/B,EAAA,MAAM,KAAA,EAAO,IAAA,CAAK,KAAA,CAAM,EAAE,CAAA,CAAE,MAAA,CAAO,CAAC,GAAA,EAAK,CAAA,EAAA,GAAM,IAAA,EAAM,CAAA,CAAE,UAAA,CAAW,CAAC,CAAA,EAAG,CAAC,CAAA;AACvE,EAAA,OAAO,eAAA,CAAgB,KAAA,EAAO,eAAA,CAAgB,MAAM,CAAA;AACtD;AAEA,SAAS,QAAA,CAAS,IAAA,EAAsB;AACtC,EAAA,MAAM,MAAA,EAAQ,IAAA,CAAK,IAAA,CAAK,CAAA,CAAE,KAAA,CAAM,KAAK,CAAA;AACrC,EAAA,GAAA,CAAI,KAAA,CAAM,OAAA,IAAW,CAAA,EAAG,OAAO,KAAA,CAAM,CAAC,CAAA,CAAE,MAAA,CAAO,CAAC,CAAA,CAAE,WAAA,CAAY,CAAA;AAC9D,EAAA,OACE,KAAA,CAAM,CAAC,CAAA,CAAE,MAAA,CAAO,CAAC,CAAA,CAAE,WAAA,CAAY,EAAA,EAC/B,KAAA,CAAM,KAAA,CAAM,OAAA,EAAS,CAAC,CAAA,CAAE,MAAA,CAAO,CAAC,CAAA,CAAE,WAAA,CAAY,CAAA;AAElD;AAIA,IAAM,KAAA,EAAuD;AAAA,EAC3D,EAAA,EAAI,EAAE,IAAA,EAAM,QAAA,EAAW,IAAA,EAAM,YAAY,CAAA;AAAA,EACzC,EAAA,EAAI,EAAE,IAAA,EAAM,QAAA,EAAW,IAAA,EAAM,aAAa,CAAA;AAAA,EAC1C,EAAA,EAAI,EAAE,IAAA,EAAM,SAAA,EAAW,IAAA,EAAM,sBAAsB;AACrD,CAAA;AAYA,IAAM,OAAA,EAAe,KAAA,CAAA,UAAA,CAGnB,CAAC,EAAE,IAAA,EAAM,GAAA,EAAK,KAAA,EAAO,IAAA,EAAM,SAAA,EAAW,MAAM,CAAA,EAAG,GAAA,EAAA,GAAQ;AACvD,EAAA,MAAM,EAAE,EAAA,EAAI,KAAK,EAAA,EAAI,SAAA,CAAU,IAAI,CAAA;AACnC,EAAA,MAAM,EAAE,IAAA,EAAM,IAAA,EAAM,SAAS,EAAA,EAAI,IAAA,CAAK,IAAI,CAAA;AAE1C,EAAA,uBACE,8BAAA;AAAA,IAAa,WAAA,CAAA,IAAA;AAAA,IAAZ;AAAA,MACC,GAAA;AAAA,MACA,SAAA,EAAW,kCAAA;AAAA,QACT,wFAAA;AAAA,QACA,IAAA;AAAA,QACA;AAAA,MACF,CAAA;AAAA,MACA,KAAA;AAAA,MAEC,QAAA,EAAA;AAAA,QAAA,IAAA,mBACC,6BAAA;AAAA,UAAa,WAAA,CAAA,KAAA;AAAA,UAAZ;AAAA,YACC,GAAA;AAAA,YACA,GAAA,EAAK,IAAA;AAAA,YACL,SAAA,EAAU;AAAA,UAAA;AAAA,QACZ,CAAA;AAAA,wBAEF,6BAAA;AAAA,UAAa,WAAA,CAAA,QAAA;AAAA,UAAZ;AAAA,YACC,SAAA,EAAW,kCAAA;AAAA,cACT,qEAAA;AAAA,cACA;AAAA,YACF,CAAA;AAAA,YACA,KAAA,EAAO,EAAE,eAAA,EAAiB,EAAA,EAAI,KAAA,EAAO,KAAK,CAAA;AAAA,YAC1C,OAAA,EAAS,IAAA,EAAM,IAAA,EAAM,CAAA;AAAA,YAEpB,QAAA,EAAA,QAAA,CAAS,IAAI;AAAA,UAAA;AAAA,QAChB;AAAA,MAAA;AAAA,IAAA;AAAA,EACF,CAAA;AAEJ,CAAC,CAAA;AACD,MAAA,CAAO,YAAA,EAAc,QAAA;ADdrB;AACA;AACE;AACF,wBAAC","file":"/home/vsts/work/1/s/packages/lyra-ds/dist/chunk-2O3Y67RU.cjs","sourcesContent":[null,"import * as React from \"react\";\nimport * as RadixAvatar from \"@radix-ui/react-avatar\";\nimport { cn } from \"../lib/utils\";\n\n// ─── Fallback color derivada do nome ─────────────────────────────────────────\n\nconst FALLBACK_COLORS = [\n { bg: \"var(--color-primary-container)\", text: \"var(--color-on-primary-container)\" },\n { bg: \"var(--color-success-container)\", text: \"var(--color-on-success-container)\" },\n { bg: \"var(--color-info-container)\", text: \"var(--color-on-info-container)\" },\n { bg: \"var(--color-warning-container)\", text: \"var(--color-on-warning-container)\" },\n { bg: \"var(--color-error-container)\", text: \"var(--color-on-error-container)\" },\n { bg: \"var(--color-action-secondary)\", text: \"var(--color-on-action-secondary)\" },\n] as const;\n\nfunction hashColor(name: string) {\n const hash = name.split(\"\").reduce((acc, c) => acc + c.charCodeAt(0), 0);\n return FALLBACK_COLORS[hash % FALLBACK_COLORS.length];\n}\n\nfunction initials(name: string): string {\n const parts = name.trim().split(/\\s+/);\n if (parts.length === 1) return parts[0].charAt(0).toUpperCase();\n return (\n parts[0].charAt(0).toUpperCase() +\n parts[parts.length - 1].charAt(0).toUpperCase()\n );\n}\n\n// ─── Size map ────────────────────────────────────────────────────────────────\n\nconst SIZE: Record<string, { root: string; text: string }> = {\n sm: { root: \"size-6\", text: \"text-tiny\" },\n md: { root: \"size-8\", text: \"text-label\" },\n lg: { root: \"size-10\", text: \"text-body-md-strong\" },\n};\n\n// ─── Component ───────────────────────────────────────────────────────────────\n\nexport interface AvatarProps {\n name: string;\n src?: string;\n size?: \"sm\" | \"md\" | \"lg\";\n className?: string;\n style?: React.CSSProperties;\n}\n\nconst Avatar = React.forwardRef<\n React.ComponentRef<typeof RadixAvatar.Root>,\n AvatarProps\n>(({ name, src, size = \"md\", className, style }, ref) => {\n const { bg, text } = hashColor(name);\n const { root, text: textSize } = SIZE[size];\n\n return (\n <RadixAvatar.Root\n ref={ref}\n className={cn(\n \"relative inline-flex shrink-0 items-center justify-center overflow-hidden rounded-full\",\n root,\n className\n )}\n style={style}\n >\n {src && (\n <RadixAvatar.Image\n src={src}\n alt={name}\n className=\"size-full object-cover\"\n />\n )}\n <RadixAvatar.Fallback\n className={cn(\n \"flex size-full items-center justify-center rounded-full select-none\",\n textSize\n )}\n style={{ backgroundColor: bg, color: text }}\n delayMs={src ? 300 : 0}\n >\n {initials(name)}\n </RadixAvatar.Fallback>\n </RadixAvatar.Root>\n );\n});\nAvatar.displayName = \"Avatar\";\n\nexport { Avatar };\n"]}
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } }"use client";
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
var _chunkDQ5VNZ7Icjs = require('./chunk-DQ5VNZ7I.cjs');
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
var _chunkMXGUFJCAcjs = require('./chunk-MXGUFJCA.cjs');
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
var _chunkTHZR6WGAcjs = require('./chunk-THZR6WGA.cjs');
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
var _chunk5SCF3EGTcjs = require('./chunk-5SCF3EGT.cjs');
|
|
14
|
+
|
|
15
|
+
// src/components/pagination-bar.tsx
|
|
16
|
+
var _react = require('react'); var React = _interopRequireWildcard(_react);
|
|
17
|
+
var _jsxruntime = require('react/jsx-runtime');
|
|
18
|
+
var DEFAULT_PAGE_SIZE_OPTIONS = [10, 25, 50, 100];
|
|
19
|
+
var PaginationBar = React.forwardRef(
|
|
20
|
+
({
|
|
21
|
+
page,
|
|
22
|
+
pageSize,
|
|
23
|
+
total,
|
|
24
|
+
onPageChange,
|
|
25
|
+
onPageSizeChange,
|
|
26
|
+
pageSizeOptions = DEFAULT_PAGE_SIZE_OPTIONS,
|
|
27
|
+
className
|
|
28
|
+
}, ref) => {
|
|
29
|
+
const t = _chunkMXGUFJCAcjs.useLyraI18n.call(void 0, );
|
|
30
|
+
const totalPages = Math.max(1, Math.ceil(total / pageSize));
|
|
31
|
+
const start = total === 0 ? 0 : Math.min((page - 1) * pageSize + 1, total);
|
|
32
|
+
const end = Math.min(page * pageSize, total);
|
|
33
|
+
const [jumpValue, setJumpValue] = React.useState(String(page));
|
|
34
|
+
React.useEffect(() => {
|
|
35
|
+
setJumpValue(String(page));
|
|
36
|
+
}, [page]);
|
|
37
|
+
function commitJump() {
|
|
38
|
+
const n = parseInt(jumpValue, 10);
|
|
39
|
+
if (!isNaN(n)) {
|
|
40
|
+
const clamped = Math.max(1, Math.min(n, totalPages));
|
|
41
|
+
if (clamped !== page) onPageChange(clamped);
|
|
42
|
+
else setJumpValue(String(page));
|
|
43
|
+
} else {
|
|
44
|
+
setJumpValue(String(page));
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
const pageSizeSelectOptions = pageSizeOptions.map((n) => ({
|
|
48
|
+
value: String(n),
|
|
49
|
+
label: `${n} ${t.pagination.perPage}`
|
|
50
|
+
}));
|
|
51
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
52
|
+
"div",
|
|
53
|
+
{
|
|
54
|
+
ref,
|
|
55
|
+
className: _chunk5SCF3EGTcjs.cn.call(void 0,
|
|
56
|
+
"flex items-center justify-between gap-4 px-4 py-3 border-t border-[var(--color-outline-variant)]",
|
|
57
|
+
className
|
|
58
|
+
),
|
|
59
|
+
children: [
|
|
60
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-meta text-[var(--color-on-surface-var)] shrink-0", children: total === 0 ? t.pagination.noResults : t.pagination.showing(start, end, total) }),
|
|
61
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
|
|
62
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
63
|
+
_chunkTHZR6WGAcjs.Button,
|
|
64
|
+
{
|
|
65
|
+
variant: "outlined",
|
|
66
|
+
size: "sm",
|
|
67
|
+
onClick: () => onPageChange(page - 1),
|
|
68
|
+
disabled: page <= 1,
|
|
69
|
+
children: t.pagination.previous
|
|
70
|
+
}
|
|
71
|
+
),
|
|
72
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex items-center gap-1.5 text-body-sm text-[var(--color-on-surface-var)] shrink-0", children: [
|
|
73
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: t.pagination.jump }),
|
|
74
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
75
|
+
"input",
|
|
76
|
+
{
|
|
77
|
+
type: "text",
|
|
78
|
+
inputMode: "numeric",
|
|
79
|
+
value: jumpValue,
|
|
80
|
+
onChange: (e) => setJumpValue(e.target.value),
|
|
81
|
+
onBlur: commitJump,
|
|
82
|
+
onKeyDown: (e) => {
|
|
83
|
+
if (e.key === "Enter") {
|
|
84
|
+
e.preventDefault();
|
|
85
|
+
commitJump();
|
|
86
|
+
}
|
|
87
|
+
},
|
|
88
|
+
"aria-label": `${t.pagination.jump} ${page} ${t.pagination.of} ${totalPages}`,
|
|
89
|
+
className: _chunk5SCF3EGTcjs.cn.call(void 0,
|
|
90
|
+
"w-10 h-7 rounded-[var(--radius-sm)] border border-[var(--color-outline)]",
|
|
91
|
+
"bg-[var(--color-surf-container)] text-center text-body-sm text-[var(--color-on-surface)]",
|
|
92
|
+
"outline-none focus-visible:ring-2 focus-visible:ring-[var(--state-focus-ring)]",
|
|
93
|
+
"focus-visible:border-[var(--color-action-primary)]"
|
|
94
|
+
)
|
|
95
|
+
}
|
|
96
|
+
),
|
|
97
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { children: [
|
|
98
|
+
t.pagination.of,
|
|
99
|
+
" ",
|
|
100
|
+
totalPages
|
|
101
|
+
] })
|
|
102
|
+
] }),
|
|
103
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
104
|
+
_chunkTHZR6WGAcjs.Button,
|
|
105
|
+
{
|
|
106
|
+
variant: "outlined",
|
|
107
|
+
size: "sm",
|
|
108
|
+
onClick: () => onPageChange(page + 1),
|
|
109
|
+
disabled: page >= totalPages,
|
|
110
|
+
children: t.pagination.next
|
|
111
|
+
}
|
|
112
|
+
)
|
|
113
|
+
] }),
|
|
114
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0", children: onPageSizeChange ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
115
|
+
_chunkDQ5VNZ7Icjs.Select,
|
|
116
|
+
{
|
|
117
|
+
options: pageSizeSelectOptions,
|
|
118
|
+
value: String(pageSize),
|
|
119
|
+
onValueChange: (v) => onPageSizeChange(Number(v)),
|
|
120
|
+
className: "w-[120px]"
|
|
121
|
+
}
|
|
122
|
+
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", {}) })
|
|
123
|
+
]
|
|
124
|
+
}
|
|
125
|
+
);
|
|
126
|
+
}
|
|
127
|
+
);
|
|
128
|
+
PaginationBar.displayName = "PaginationBar";
|
|
129
|
+
|
|
130
|
+
|
|
131
|
+
|
|
132
|
+
exports.PaginationBar = PaginationBar;
|
|
133
|
+
//# sourceMappingURL=chunk-3SXQHLJB.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/vsts/work/1/s/packages/lyra-ds/dist/chunk-3SXQHLJB.cjs","../src/components/pagination-bar.tsx"],"names":[],"mappings":"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","file":"/home/vsts/work/1/s/packages/lyra-ds/dist/chunk-3SXQHLJB.cjs","sourcesContent":[null,"\"use client\";\n\nimport * as React from \"react\";\nimport { Button } from \"./button\";\nimport { Select } from \"./select\";\nimport { useLyraI18n } from \"../i18n/index\";\nimport { cn } from \"../lib/utils\";\n\nexport interface PaginationBarProps {\n page: number;\n pageSize: number;\n total: number;\n onPageChange: (page: number) => void;\n onPageSizeChange?: (pageSize: number) => void;\n pageSizeOptions?: number[];\n className?: string;\n}\n\nconst DEFAULT_PAGE_SIZE_OPTIONS = [10, 25, 50, 100];\n\nconst PaginationBar = React.forwardRef<HTMLDivElement, PaginationBarProps>(\n (\n {\n page,\n pageSize,\n total,\n onPageChange,\n onPageSizeChange,\n pageSizeOptions = DEFAULT_PAGE_SIZE_OPTIONS,\n className,\n },\n ref\n ) => {\n const t = useLyraI18n();\n const totalPages = Math.max(1, Math.ceil(total / pageSize));\n const start = total === 0 ? 0 : Math.min((page - 1) * pageSize + 1, total);\n const end = Math.min(page * pageSize, total);\n\n const [jumpValue, setJumpValue] = React.useState(String(page));\n React.useEffect(() => {\n setJumpValue(String(page));\n }, [page]);\n\n function commitJump() {\n const n = parseInt(jumpValue, 10);\n if (!isNaN(n)) {\n const clamped = Math.max(1, Math.min(n, totalPages));\n if (clamped !== page) onPageChange(clamped);\n else setJumpValue(String(page));\n } else {\n setJumpValue(String(page));\n }\n }\n\n const pageSizeSelectOptions = pageSizeOptions.map((n) => ({\n value: String(n),\n label: `${n} ${t.pagination.perPage}`,\n }));\n\n return (\n <div\n ref={ref}\n className={cn(\n \"flex items-center justify-between gap-4 px-4 py-3 border-t border-[var(--color-outline-variant)]\",\n className\n )}\n >\n <span className=\"text-meta text-[var(--color-on-surface-var)] shrink-0\">\n {total === 0\n ? t.pagination.noResults\n : t.pagination.showing(start, end, total)}\n </span>\n\n <div className=\"flex items-center gap-2\">\n <Button\n variant=\"outlined\"\n size=\"sm\"\n onClick={() => onPageChange(page - 1)}\n disabled={page <= 1}\n >\n {t.pagination.previous}\n </Button>\n\n <span className=\"flex items-center gap-1.5 text-body-sm text-[var(--color-on-surface-var)] shrink-0\">\n <span>{t.pagination.jump}</span>\n <input\n type=\"text\"\n inputMode=\"numeric\"\n value={jumpValue}\n onChange={(e) => setJumpValue(e.target.value)}\n onBlur={commitJump}\n onKeyDown={(e) => {\n if (e.key === \"Enter\") {\n e.preventDefault();\n commitJump();\n }\n }}\n aria-label={`${t.pagination.jump} ${page} ${t.pagination.of} ${totalPages}`}\n className={cn(\n \"w-10 h-7 rounded-[var(--radius-sm)] border border-[var(--color-outline)]\",\n \"bg-[var(--color-surf-container)] text-center text-body-sm text-[var(--color-on-surface)]\",\n \"outline-none focus-visible:ring-2 focus-visible:ring-[var(--state-focus-ring)]\",\n \"focus-visible:border-[var(--color-action-primary)]\"\n )}\n />\n <span>\n {t.pagination.of} {totalPages}\n </span>\n </span>\n\n <Button\n variant=\"outlined\"\n size=\"sm\"\n onClick={() => onPageChange(page + 1)}\n disabled={page >= totalPages}\n >\n {t.pagination.next}\n </Button>\n </div>\n\n <div className=\"shrink-0\">\n {onPageSizeChange ? (\n <Select\n options={pageSizeSelectOptions}\n value={String(pageSize)}\n onValueChange={(v) => onPageSizeChange(Number(v))}\n className=\"w-[120px]\"\n />\n ) : (\n <span />\n )}\n </div>\n </div>\n );\n }\n);\nPaginationBar.displayName = \"PaginationBar\";\n\nexport { PaginationBar };\n"]}
|