@mdigital_ui/ui 0.4.2 → 0.4.4
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 +45 -5
- package/dist/accordion/index.d.ts.map +1 -1
- package/dist/accordion/index.js +3 -3
- package/dist/accordion/types.d.ts +2 -42
- package/dist/accordion/types.d.ts.map +1 -1
- package/dist/alert/index.d.ts +6 -0
- package/dist/alert/index.d.ts.map +1 -0
- package/dist/alert/index.js +5 -0
- package/dist/alert/types.d.ts +24 -0
- package/dist/alert/types.d.ts.map +1 -0
- package/dist/anchor/index.d.ts +6 -0
- package/dist/anchor/index.d.ts.map +1 -0
- package/dist/anchor/types.d.ts +26 -0
- package/dist/anchor/types.d.ts.map +1 -0
- package/dist/autocomplete/index.d.ts +6 -0
- package/dist/autocomplete/index.d.ts.map +1 -0
- package/dist/autocomplete/types.d.ts +39 -0
- package/dist/autocomplete/types.d.ts.map +1 -0
- package/dist/avatar/index.d.ts +0 -6
- package/dist/avatar/index.d.ts.map +1 -1
- package/dist/avatar/index.js +3 -2
- package/dist/avatar/types.d.ts +0 -48
- package/dist/avatar/types.d.ts.map +1 -1
- package/dist/badge/index.d.ts +1 -23
- package/dist/badge/index.d.ts.map +1 -1
- package/dist/badge/index.js +3 -3
- package/dist/badge/types.d.ts +1 -20
- package/dist/badge/types.d.ts.map +1 -1
- package/dist/breadcrumbs/index.d.ts.map +1 -1
- package/dist/breadcrumbs/index.js +7 -6
- package/dist/breadcrumbs/types.d.ts +3 -38
- package/dist/breadcrumbs/types.d.ts.map +1 -1
- package/dist/button/index.d.ts +1 -1
- package/dist/button/index.d.ts.map +1 -1
- package/dist/button/index.js +5 -5
- package/dist/button/types.d.ts +2 -8
- package/dist/button/types.d.ts.map +1 -1
- package/dist/button-group/index.d.ts +0 -28
- package/dist/button-group/index.d.ts.map +1 -1
- package/dist/button-group/index.js +2 -2
- package/dist/button-group/types.d.ts +0 -19
- package/dist/button-group/types.d.ts.map +1 -1
- package/dist/calendar/index.d.ts +6 -0
- package/dist/calendar/index.d.ts.map +1 -0
- package/dist/calendar/types.d.ts +29 -0
- package/dist/calendar/types.d.ts.map +1 -0
- package/dist/card/index.d.ts +1 -41
- package/dist/card/index.d.ts.map +1 -1
- package/dist/card/index.js +3 -3
- package/dist/card/types.d.ts +3 -29
- package/dist/card/types.d.ts.map +1 -1
- package/dist/carousel/carousel-navigation.d.ts.map +1 -1
- package/dist/carousel/index.d.ts +5 -2
- package/dist/carousel/index.d.ts.map +1 -1
- package/dist/carousel/index.js +2 -2
- package/dist/carousel/styles.d.ts +12 -0
- package/dist/carousel/styles.d.ts.map +1 -0
- package/dist/cascader/CascaderMenu.d.ts +41 -0
- package/dist/cascader/CascaderMenu.d.ts.map +1 -0
- package/dist/cascader/index.d.ts +0 -21
- package/dist/cascader/index.d.ts.map +1 -1
- package/dist/cascader/index.js +3 -3
- package/dist/cascader/types.d.ts +3 -89
- package/dist/cascader/types.d.ts.map +1 -1
- package/dist/checkbox/index.d.ts.map +1 -1
- package/dist/checkbox/index.js +3 -3
- package/dist/checkbox/types.d.ts +2 -2
- package/dist/checkbox/types.d.ts.map +1 -1
- package/dist/checkbox-group/index.d.ts.map +1 -1
- package/dist/checkbox-group/index.js +2 -2
- package/dist/checkbox-group/types.d.ts +0 -24
- package/dist/checkbox-group/types.d.ts.map +1 -1
- package/dist/{chunk-HCOTO5WX.js → chunk-253JZOYG.js} +8 -9
- package/dist/chunk-253JZOYG.js.map +1 -0
- package/dist/{chunk-FZSCLZF6.js → chunk-3D77IPKB.js} +68 -113
- package/dist/chunk-3D77IPKB.js.map +1 -0
- package/dist/{chunk-GJPZOMFE.js → chunk-3XOHSE3X.js} +71 -34
- package/dist/chunk-3XOHSE3X.js.map +1 -0
- package/dist/{chunk-ROA7BYGB.js → chunk-3YP7HY3Y.js} +7 -5
- package/dist/chunk-3YP7HY3Y.js.map +1 -0
- package/dist/chunk-4HKPDSA6.js +378 -0
- package/dist/chunk-4HKPDSA6.js.map +1 -0
- package/dist/{chunk-OFUPJH35.js → chunk-4TEZWGX7.js} +3 -3
- package/dist/{chunk-OFUPJH35.js.map → chunk-4TEZWGX7.js.map} +1 -1
- package/dist/{chunk-TLNHWOQQ.js → chunk-4ZXHLPRS.js} +53 -44
- package/dist/chunk-4ZXHLPRS.js.map +1 -0
- package/dist/{chunk-6LYRMQOI.js → chunk-5MBKTMDW.js} +21 -16
- package/dist/chunk-5MBKTMDW.js.map +1 -0
- package/dist/{chunk-CN74CNAN.js → chunk-5SEVPU6C.js} +8 -22
- package/dist/chunk-5SEVPU6C.js.map +1 -0
- package/dist/{chunk-6JGNJI5T.js → chunk-7RT65ZGV.js} +38 -26
- package/dist/chunk-7RT65ZGV.js.map +1 -0
- package/dist/{chunk-I32ZQUYY.js → chunk-A4MYCEGM.js} +15 -16
- package/dist/chunk-A4MYCEGM.js.map +1 -0
- package/dist/{chunk-KJTMZJ7V.js → chunk-ADZWWBAX.js} +76 -110
- package/dist/chunk-ADZWWBAX.js.map +1 -0
- package/dist/{chunk-YXLIGJTN.js → chunk-AFW2ORFT.js} +16 -8
- package/dist/chunk-AFW2ORFT.js.map +1 -0
- package/dist/{chunk-OLTQAMV2.js → chunk-BGMYX7L5.js} +9 -24
- package/dist/chunk-BGMYX7L5.js.map +1 -0
- package/dist/chunk-BKLJDEUX.js +857 -0
- package/dist/chunk-BKLJDEUX.js.map +1 -0
- package/dist/{chunk-4FFVNUTK.js → chunk-BNHRUHI4.js} +7 -6
- package/dist/chunk-BNHRUHI4.js.map +1 -0
- package/dist/{chunk-DUIL5BYS.js → chunk-BS4PZPY6.js} +82 -53
- package/dist/chunk-BS4PZPY6.js.map +1 -0
- package/dist/{chunk-POLVJ36Y.js → chunk-C32HL4XU.js} +13 -38
- package/dist/chunk-C32HL4XU.js.map +1 -0
- package/dist/chunk-C65SCJD6.js +138 -0
- package/dist/chunk-C65SCJD6.js.map +1 -0
- package/dist/{chunk-3BZE6BBJ.js → chunk-CUXQZRDI.js} +45 -34
- package/dist/chunk-CUXQZRDI.js.map +1 -0
- package/dist/{chunk-674JC24S.js → chunk-DDZCRCTQ.js} +28 -29
- package/dist/chunk-DDZCRCTQ.js.map +1 -0
- package/dist/{chunk-64NHVOZS.js → chunk-FU5Q4WVX.js} +26 -16
- package/dist/chunk-FU5Q4WVX.js.map +1 -0
- package/dist/chunk-G6QIIWKU.js +24 -0
- package/dist/chunk-G6QIIWKU.js.map +1 -0
- package/dist/{chunk-UTWQ2FZK.js → chunk-GOBUFGGJ.js} +45 -108
- package/dist/chunk-GOBUFGGJ.js.map +1 -0
- package/dist/{chunk-WRSG7WU5.js → chunk-HJITFPBT.js} +78 -94
- package/dist/chunk-HJITFPBT.js.map +1 -0
- package/dist/{chunk-ZJNGZCRB.js → chunk-HR5TGNOF.js} +54 -153
- package/dist/chunk-HR5TGNOF.js.map +1 -0
- package/dist/{chunk-HECAAILV.js → chunk-HRVOTFU4.js} +24 -16
- package/dist/chunk-HRVOTFU4.js.map +1 -0
- package/dist/{chunk-LX4FDH4J.js → chunk-HSMO2BR4.js} +13 -22
- package/dist/chunk-HSMO2BR4.js.map +1 -0
- package/dist/chunk-HVHQA34X.js +534 -0
- package/dist/chunk-HVHQA34X.js.map +1 -0
- package/dist/{chunk-6G3BMY4N.js → chunk-I5AD247M.js} +80 -85
- package/dist/chunk-I5AD247M.js.map +1 -0
- package/dist/chunk-I7HJBHQU.js +99 -0
- package/dist/chunk-I7HJBHQU.js.map +1 -0
- package/dist/{chunk-3PWILVOE.js → chunk-J2WIZULN.js} +50 -50
- package/dist/chunk-J2WIZULN.js.map +1 -0
- package/dist/{chunk-VOODO2ZE.js → chunk-JFTSWOGE.js} +12 -32
- package/dist/chunk-JFTSWOGE.js.map +1 -0
- package/dist/{chunk-LOYLJRCF.js → chunk-JIXINKUJ.js} +8 -17
- package/dist/chunk-JIXINKUJ.js.map +1 -0
- package/dist/{chunk-6HGUDHHE.js → chunk-L5BU2QTI.js} +3 -5
- package/dist/chunk-L5BU2QTI.js.map +1 -0
- package/dist/chunk-LJOQ2C5W.js +81 -0
- package/dist/chunk-LJOQ2C5W.js.map +1 -0
- package/dist/chunk-LWYZCSX4.js +531 -0
- package/dist/chunk-LWYZCSX4.js.map +1 -0
- package/dist/{chunk-3BIV3QE2.js → chunk-LXHFGQOI.js} +61 -29
- package/dist/chunk-LXHFGQOI.js.map +1 -0
- package/dist/{chunk-ZIYA7TGX.js → chunk-NMP4HY6M.js} +13 -23
- package/dist/chunk-NMP4HY6M.js.map +1 -0
- package/dist/{chunk-2TLOWZE4.js → chunk-NTCAZ2LF.js} +64 -183
- package/dist/chunk-NTCAZ2LF.js.map +1 -0
- package/dist/chunk-NZHKNUGE.js +96 -0
- package/dist/chunk-NZHKNUGE.js.map +1 -0
- package/dist/{chunk-764UKE6X.js → chunk-OGB5QPNZ.js} +11 -92
- package/dist/chunk-OGB5QPNZ.js.map +1 -0
- package/dist/chunk-OJAHIPPP.js +198 -0
- package/dist/chunk-OJAHIPPP.js.map +1 -0
- package/dist/{chunk-2PNLIQYM.js → chunk-ON76IMMI.js} +3 -3
- package/dist/chunk-ON76IMMI.js.map +1 -0
- package/dist/{chunk-HUXODBIO.js → chunk-PB5VGXS5.js} +42 -101
- package/dist/chunk-PB5VGXS5.js.map +1 -0
- package/dist/chunk-PQOIW5CM.js +27 -0
- package/dist/chunk-PQOIW5CM.js.map +1 -0
- package/dist/{chunk-BVO2BNFG.js → chunk-PRDJLQLB.js} +23 -103
- package/dist/chunk-PRDJLQLB.js.map +1 -0
- package/dist/{chunk-N2WHJ3FI.js → chunk-QEAALOJC.js} +14 -16
- package/dist/chunk-QEAALOJC.js.map +1 -0
- package/dist/{chunk-NGYLRX6F.js → chunk-RAS6HUEI.js} +2 -2
- package/dist/chunk-RAS6HUEI.js.map +1 -0
- package/dist/{chunk-C5IGZLIT.js → chunk-ROQGBDET.js} +9 -23
- package/dist/chunk-ROQGBDET.js.map +1 -0
- package/dist/{chunk-Y4XAXZHB.js → chunk-RRPMZYVN.js} +9 -8
- package/dist/chunk-RRPMZYVN.js.map +1 -0
- package/dist/{chunk-D4SUSZDN.js → chunk-S6HO7HUY.js} +19 -17
- package/dist/chunk-S6HO7HUY.js.map +1 -0
- package/dist/{chunk-YS5AIY4A.js → chunk-SFP77VS3.js} +6 -5
- package/dist/chunk-SFP77VS3.js.map +1 -0
- package/dist/{chunk-RFHTC6AH.js → chunk-SJLH5ZDW.js} +16 -38
- package/dist/chunk-SJLH5ZDW.js.map +1 -0
- package/dist/{chunk-SGRACNBP.js → chunk-STAYOHDI.js} +13 -5
- package/dist/chunk-STAYOHDI.js.map +1 -0
- package/dist/{chunk-ON2CMF6J.js → chunk-TBKPQOXF.js} +58 -35
- package/dist/chunk-TBKPQOXF.js.map +1 -0
- package/dist/{chunk-GOLARX5K.js → chunk-TDNPACQD.js} +14 -11
- package/dist/chunk-TDNPACQD.js.map +1 -0
- package/dist/{chunk-7UCNBMCV.js → chunk-TQEMGWZ2.js} +27 -34
- package/dist/chunk-TQEMGWZ2.js.map +1 -0
- package/dist/{chunk-X3YNHX77.js → chunk-U4JPTWK6.js} +33 -34
- package/dist/chunk-U4JPTWK6.js.map +1 -0
- package/dist/{chunk-R3TLU26W.js → chunk-UFC3RGIN.js} +9 -7
- package/dist/chunk-UFC3RGIN.js.map +1 -0
- package/dist/{chunk-KH577UDI.js → chunk-W5VLFE4U.js} +11 -8
- package/dist/chunk-W5VLFE4U.js.map +1 -0
- package/dist/{chunk-G6NVGBYZ.js → chunk-WG5AYAC6.js} +27 -35
- package/dist/chunk-WG5AYAC6.js.map +1 -0
- package/dist/{chunk-YJOLLSHH.js → chunk-WQT24BGG.js} +44 -49
- package/dist/chunk-WQT24BGG.js.map +1 -0
- package/dist/{chunk-JWTWPZ32.js → chunk-X7MF3TIF.js} +15 -19
- package/dist/chunk-X7MF3TIF.js.map +1 -0
- package/dist/chunk-XAM5EKOS.js +150 -0
- package/dist/chunk-XAM5EKOS.js.map +1 -0
- package/dist/{chunk-EHWXPH76.js → chunk-XBXPY7U3.js} +9 -7
- package/dist/chunk-XBXPY7U3.js.map +1 -0
- package/dist/{chunk-5PUATOLR.js → chunk-XCK62GVU.js} +4 -4
- package/dist/chunk-XCK62GVU.js.map +1 -0
- package/dist/{chunk-ONGJXAYQ.js → chunk-XMBZBXXS.js} +9 -16
- package/dist/chunk-XMBZBXXS.js.map +1 -0
- package/dist/{chunk-H6G4BUPA.js → chunk-XOEEAMMY.js} +210 -183
- package/dist/chunk-XOEEAMMY.js.map +1 -0
- package/dist/{chunk-O3V3BTIJ.js → chunk-Z3DIBMBQ.js} +60 -107
- package/dist/chunk-Z3DIBMBQ.js.map +1 -0
- package/dist/clipboard/index.d.ts.map +1 -1
- package/dist/clipboard/index.js +4 -4
- package/dist/clipboard/types.d.ts +2 -35
- package/dist/clipboard/types.d.ts.map +1 -1
- package/dist/collapse/index.d.ts.map +1 -1
- package/dist/collapse/index.js +4 -3
- package/dist/collapse/types.d.ts +2 -35
- package/dist/collapse/types.d.ts.map +1 -1
- package/dist/color-picker/index.d.ts +8 -0
- package/dist/color-picker/index.d.ts.map +1 -0
- package/dist/color-picker/types.d.ts +42 -0
- package/dist/color-picker/types.d.ts.map +1 -0
- package/dist/command/index.d.ts +39 -66
- package/dist/command/index.d.ts.map +1 -1
- package/dist/command/index.js +4 -3
- package/dist/command/types.d.ts +2 -2
- package/dist/command/types.d.ts.map +1 -1
- package/dist/context-menu/index.d.ts +2 -46
- package/dist/context-menu/index.d.ts.map +1 -1
- package/dist/context-menu/index.js +5 -3
- package/dist/context-menu/types.d.ts +21 -63
- package/dist/context-menu/types.d.ts.map +1 -1
- package/dist/date-picker/CalendarHeader.d.ts +18 -0
- package/dist/date-picker/CalendarHeader.d.ts.map +1 -0
- package/dist/date-picker/MonthSelector.d.ts +11 -0
- package/dist/date-picker/MonthSelector.d.ts.map +1 -0
- package/dist/date-picker/PickerWrapper.d.ts +18 -0
- package/dist/date-picker/PickerWrapper.d.ts.map +1 -0
- package/dist/date-picker/RangePicker.d.ts +4 -0
- package/dist/date-picker/RangePicker.d.ts.map +1 -0
- package/dist/date-picker/TimePicker.d.ts +4 -0
- package/dist/date-picker/TimePicker.d.ts.map +1 -0
- package/dist/date-picker/YearSelector.d.ts +10 -0
- package/dist/date-picker/YearSelector.d.ts.map +1 -0
- package/dist/date-picker/index.d.ts +6 -6
- package/dist/date-picker/index.d.ts.map +1 -1
- package/dist/date-picker/index.js +4 -4
- package/dist/date-picker/shared.d.ts +3 -0
- package/dist/date-picker/shared.d.ts.map +1 -0
- package/dist/date-picker/types.d.ts +2 -2
- package/dist/date-picker/types.d.ts.map +1 -1
- package/dist/date-picker/utils.d.ts +1 -1
- package/dist/date-picker/utils.d.ts.map +1 -1
- package/dist/descriptions/index.d.ts.map +1 -1
- package/dist/descriptions/index.js +3 -2
- package/dist/divider/index.d.ts.map +1 -1
- package/dist/divider/index.js +3 -2
- package/dist/divider/types.d.ts +0 -12
- package/dist/divider/types.d.ts.map +1 -1
- package/dist/drawer/index.d.ts +4 -1
- package/dist/drawer/index.d.ts.map +1 -1
- package/dist/drawer/index.js +2 -2
- package/dist/drawer/types.d.ts +2 -145
- package/dist/drawer/types.d.ts.map +1 -1
- package/dist/dropdown/index.d.ts.map +1 -1
- package/dist/dropdown/index.js +6 -5
- package/dist/dropdown/types.d.ts +2 -71
- package/dist/dropdown/types.d.ts.map +1 -1
- package/dist/fetching-overlay/index.d.ts.map +1 -1
- package/dist/fetching-overlay/index.js +4 -4
- package/dist/float-button/index.d.ts +9 -0
- package/dist/float-button/index.d.ts.map +1 -0
- package/dist/float-button/types.d.ts +45 -0
- package/dist/float-button/types.d.ts.map +1 -0
- package/dist/float-input/index.d.ts.map +1 -1
- package/dist/float-input/index.js +4 -4
- package/dist/float-input/types.d.ts +5 -10
- package/dist/float-input/types.d.ts.map +1 -1
- package/dist/grid/index.d.ts +1 -1
- package/dist/grid/index.d.ts.map +1 -1
- package/dist/grid/index.js +2 -2
- package/dist/grid/types.d.ts +1 -9
- package/dist/grid/types.d.ts.map +1 -1
- package/dist/hooks/index.d.ts +1 -0
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/useMenuNavigation.d.ts +18 -0
- package/dist/hooks/useMenuNavigation.d.ts.map +1 -0
- package/dist/image/index.d.ts.map +1 -1
- package/dist/image/index.js +2 -2
- package/dist/image/types.d.ts +2 -34
- package/dist/image/types.d.ts.map +1 -1
- package/dist/index.d.ts +30 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3030 -90
- package/dist/index.js.map +1 -1
- package/dist/input/index.d.ts.map +1 -1
- package/dist/input/index.js +4 -4
- package/dist/input/types.d.ts +9 -4
- package/dist/input/types.d.ts.map +1 -1
- package/dist/input-group/index.d.ts.map +1 -1
- package/dist/input-group/index.js +2 -2
- package/dist/input-group/types.d.ts +7 -19
- package/dist/input-group/types.d.ts.map +1 -1
- package/dist/input-otp/index.d.ts.map +1 -1
- package/dist/input-otp/index.js +2 -2
- package/dist/input-otp/types.d.ts +3 -81
- package/dist/input-otp/types.d.ts.map +1 -1
- package/dist/input-password/index.d.ts.map +1 -1
- package/dist/input-password/index.js +5 -5
- package/dist/input-password/types.d.ts +0 -6
- package/dist/input-password/types.d.ts.map +1 -1
- package/dist/kbd/index.d.ts.map +1 -1
- package/dist/kbd/index.js +3 -3
- package/dist/kbd/types.d.ts +2 -17
- package/dist/kbd/types.d.ts.map +1 -1
- package/dist/link/index.d.ts +1 -1
- package/dist/link/index.d.ts.map +1 -1
- package/dist/link/index.js +3 -2
- package/dist/mentions/index.d.ts +6 -0
- package/dist/mentions/index.d.ts.map +1 -0
- package/dist/mentions/types.d.ts +36 -0
- package/dist/mentions/types.d.ts.map +1 -0
- package/dist/menubar/index.d.ts.map +1 -1
- package/dist/menubar/index.js +5 -4
- package/dist/modal/index.d.ts +1 -1
- package/dist/modal/index.d.ts.map +1 -1
- package/dist/modal/index.js +2 -2
- package/dist/modal/types.d.ts +7 -41
- package/dist/modal/types.d.ts.map +1 -1
- package/dist/multi-select/index.d.ts.map +1 -1
- package/dist/multi-select/index.js +8 -6
- package/dist/multi-select/types.d.ts +2 -34
- package/dist/multi-select/types.d.ts.map +1 -1
- package/dist/navigation-menu/index.d.ts.map +1 -1
- package/dist/navigation-menu/index.js +2 -2
- package/dist/navigation-menu/types.d.ts +2 -0
- package/dist/navigation-menu/types.d.ts.map +1 -1
- package/dist/notification/index.d.ts.map +1 -1
- package/dist/notification/index.js +3 -3
- package/dist/notification/types.d.ts +2 -62
- package/dist/notification/types.d.ts.map +1 -1
- package/dist/number-input/index.d.ts.map +1 -1
- package/dist/number-input/index.js +6 -5
- package/dist/number-input/types.d.ts +5 -2
- package/dist/number-input/types.d.ts.map +1 -1
- package/dist/pagination/index.d.ts.map +1 -1
- package/dist/pagination/index.js +4 -3
- package/dist/pagination/types.d.ts +3 -53
- package/dist/pagination/types.d.ts.map +1 -1
- package/dist/popover/index.d.ts +1 -1
- package/dist/popover/index.d.ts.map +1 -1
- package/dist/popover/index.js +3 -3
- package/dist/popover/types.d.ts +3 -17
- package/dist/popover/types.d.ts.map +1 -1
- package/dist/progress/index.d.ts.map +1 -1
- package/dist/progress/index.js +3 -2
- package/dist/progress/styles.d.ts +4 -5
- package/dist/progress/styles.d.ts.map +1 -1
- package/dist/progress/types.d.ts +2 -44
- package/dist/progress/types.d.ts.map +1 -1
- package/dist/qr-code/index.d.ts +6 -0
- package/dist/qr-code/index.d.ts.map +1 -0
- package/dist/qr-code/types.d.ts +49 -0
- package/dist/qr-code/types.d.ts.map +1 -0
- package/dist/radio/index.d.ts.map +1 -1
- package/dist/radio/index.js +3 -3
- package/dist/radio/types.d.ts +2 -2
- package/dist/radio/types.d.ts.map +1 -1
- package/dist/radio-group/index.d.ts.map +1 -1
- package/dist/radio-group/index.js +2 -2
- package/dist/radio-group/types.d.ts +0 -24
- package/dist/radio-group/types.d.ts.map +1 -1
- package/dist/rating/index.d.ts.map +1 -1
- package/dist/rating/index.js +3 -2
- package/dist/rating/types.d.ts +2 -2
- package/dist/rating/types.d.ts.map +1 -1
- package/dist/resizable/index.d.ts +7 -0
- package/dist/resizable/index.d.ts.map +1 -0
- package/dist/resizable/types.d.ts +8 -0
- package/dist/resizable/types.d.ts.map +1 -0
- package/dist/result/index.d.ts +6 -0
- package/dist/result/index.d.ts.map +1 -0
- package/dist/result/types.d.ts +22 -0
- package/dist/result/types.d.ts.map +1 -0
- package/dist/scroll-area/index.d.ts.map +1 -1
- package/dist/scroll-area/index.js +2 -2
- package/dist/select/index.d.ts.map +1 -1
- package/dist/select/index.js +8 -6
- package/dist/select/types.d.ts +8 -3
- package/dist/select/types.d.ts.map +1 -1
- package/dist/shared/useSelectBase.d.ts +4 -2
- package/dist/shared/useSelectBase.d.ts.map +1 -1
- package/dist/skeleton/index.d.ts.map +1 -1
- package/dist/skeleton/index.js +3 -3
- package/dist/skeleton/types.d.ts +1 -1
- package/dist/skeleton/types.d.ts.map +1 -1
- package/dist/slider/index.d.ts.map +1 -1
- package/dist/slider/index.js +3 -2
- package/dist/slider/types.d.ts +2 -36
- package/dist/slider/types.d.ts.map +1 -1
- package/dist/spinner/index.d.ts +2 -1
- package/dist/spinner/index.d.ts.map +1 -1
- package/dist/spinner/index.js +3 -3
- package/dist/spinner/types.d.ts +1 -1
- package/dist/spinner/types.d.ts.map +1 -1
- package/dist/stepper/index.d.ts +3 -3
- package/dist/stepper/index.d.ts.map +1 -1
- package/dist/stepper/index.js +3 -2
- package/dist/stepper/types.d.ts +3 -2
- package/dist/stepper/types.d.ts.map +1 -1
- package/dist/switch/index.d.ts.map +1 -1
- package/dist/switch/index.js +3 -3
- package/dist/switch/types.d.ts +2 -31
- package/dist/switch/types.d.ts.map +1 -1
- package/dist/table/TableHeaderCell.d.ts.map +1 -1
- package/dist/table/index.d.ts +1 -1
- package/dist/table/index.d.ts.map +1 -1
- package/dist/table/index.js +11 -11
- package/dist/table/types.d.ts +8 -2
- package/dist/table/types.d.ts.map +1 -1
- package/dist/tabs/index.d.ts.map +1 -1
- package/dist/tabs/index.js +3 -3
- package/dist/tabs/types.d.ts +3 -53
- package/dist/tabs/types.d.ts.map +1 -1
- package/dist/tag/index.d.ts +1 -1
- package/dist/tag/index.d.ts.map +1 -1
- package/dist/tag/index.js +3 -3
- package/dist/tag/types.d.ts +1 -1
- package/dist/tag/types.d.ts.map +1 -1
- package/dist/tags-input/index.d.ts +6 -0
- package/dist/tags-input/index.d.ts.map +1 -0
- package/dist/tags-input/types.d.ts +36 -0
- package/dist/tags-input/types.d.ts.map +1 -0
- package/dist/textarea/index.d.ts.map +1 -1
- package/dist/textarea/index.js +2 -2
- package/dist/textarea/types.d.ts +3 -54
- package/dist/textarea/types.d.ts.map +1 -1
- package/dist/theme/ThemeProvider.d.ts +11 -3
- package/dist/theme/ThemeProvider.d.ts.map +1 -1
- package/dist/theme/index.js +1 -1
- package/dist/theme/types.d.ts +0 -12
- package/dist/theme/types.d.ts.map +1 -1
- package/dist/timeline/index.d.ts.map +1 -1
- package/dist/timeline/index.js +3 -2
- package/dist/toast/index.d.ts.map +1 -1
- package/dist/toast/index.js +3 -3
- package/dist/toast/types.d.ts +0 -6
- package/dist/toast/types.d.ts.map +1 -1
- package/dist/toggle/index.d.ts.map +1 -1
- package/dist/toggle/index.js +4 -3
- package/dist/toggle/types.d.ts +3 -26
- package/dist/toggle/types.d.ts.map +1 -1
- package/dist/toggle-group/index.d.ts.map +1 -1
- package/dist/toggle-group/index.js +4 -3
- package/dist/toggle-group/types.d.ts +3 -44
- package/dist/toggle-group/types.d.ts.map +1 -1
- package/dist/tooltip/index.d.ts.map +1 -1
- package/dist/tooltip/index.js +3 -3
- package/dist/tooltip/types.d.ts +2 -44
- package/dist/tooltip/types.d.ts.map +1 -1
- package/dist/tour/index.d.ts +6 -0
- package/dist/tour/index.d.ts.map +1 -0
- package/dist/tour/types.d.ts +45 -0
- package/dist/tour/types.d.ts.map +1 -0
- package/dist/transfer/index.d.ts.map +1 -1
- package/dist/transfer/index.js +4 -4
- package/dist/transfer/types.d.ts +0 -20
- package/dist/transfer/types.d.ts.map +1 -1
- package/dist/transfer/utils.d.ts.map +1 -1
- package/dist/tree/index.d.ts.map +1 -1
- package/dist/tree/index.js +2 -2
- package/dist/tree/types.d.ts +2 -73
- package/dist/tree/types.d.ts.map +1 -1
- package/dist/tree-select/index.d.ts.map +1 -1
- package/dist/tree-select/index.js +5 -5
- package/dist/tree-select/types.d.ts +3 -91
- package/dist/tree-select/types.d.ts.map +1 -1
- package/dist/types.d.ts +1 -35
- package/dist/types.d.ts.map +1 -1
- package/dist/typography/index.d.ts +8 -0
- package/dist/typography/index.d.ts.map +1 -0
- package/dist/typography/types.d.ts +33 -0
- package/dist/typography/types.d.ts.map +1 -0
- package/dist/upload/index.d.ts.map +1 -1
- package/dist/upload/index.js +4 -3
- package/dist/upload/types.d.ts +5 -32
- package/dist/upload/types.d.ts.map +1 -1
- package/dist/upload/utils.d.ts +2 -1
- package/dist/upload/utils.d.ts.map +1 -1
- package/dist/utils.d.ts +0 -39
- package/dist/utils.d.ts.map +1 -1
- package/dist/variants.d.ts +3 -314
- package/dist/variants.d.ts.map +1 -1
- package/dist/watermark/index.d.ts +6 -0
- package/dist/watermark/index.d.ts.map +1 -0
- package/dist/watermark/types.d.ts +24 -0
- package/dist/watermark/types.d.ts.map +1 -0
- package/package.json +5 -2
- package/styles/global.css +575 -2012
- package/styles/themes/dark.css +15 -5
- package/styles/themes/light.css +20 -2
- package/styles/themes/presets/corporate.css +2 -0
- package/styles/themes/presets/minimal.css +2 -0
- package/styles/themes/presets/vibrant.css +2 -0
- package/dist/chunk-2PNLIQYM.js.map +0 -1
- package/dist/chunk-2TLOWZE4.js.map +0 -1
- package/dist/chunk-2WZVD7P3.js +0 -145
- package/dist/chunk-2WZVD7P3.js.map +0 -1
- package/dist/chunk-3BIV3QE2.js.map +0 -1
- package/dist/chunk-3BZE6BBJ.js.map +0 -1
- package/dist/chunk-3PWILVOE.js.map +0 -1
- package/dist/chunk-4FFVNUTK.js.map +0 -1
- package/dist/chunk-5PUATOLR.js.map +0 -1
- package/dist/chunk-64NHVOZS.js.map +0 -1
- package/dist/chunk-674JC24S.js.map +0 -1
- package/dist/chunk-6BAP6QUT.js +0 -72
- package/dist/chunk-6BAP6QUT.js.map +0 -1
- package/dist/chunk-6G3BMY4N.js.map +0 -1
- package/dist/chunk-6HGUDHHE.js.map +0 -1
- package/dist/chunk-6JGNJI5T.js.map +0 -1
- package/dist/chunk-6LYRMQOI.js.map +0 -1
- package/dist/chunk-6YOOKE6C.js +0 -138
- package/dist/chunk-6YOOKE6C.js.map +0 -1
- package/dist/chunk-764UKE6X.js.map +0 -1
- package/dist/chunk-7UCNBMCV.js.map +0 -1
- package/dist/chunk-BPRCBPVJ.js +0 -253
- package/dist/chunk-BPRCBPVJ.js.map +0 -1
- package/dist/chunk-BVO2BNFG.js.map +0 -1
- package/dist/chunk-C5IGZLIT.js.map +0 -1
- package/dist/chunk-CN74CNAN.js.map +0 -1
- package/dist/chunk-D4SUSZDN.js.map +0 -1
- package/dist/chunk-DUIL5BYS.js.map +0 -1
- package/dist/chunk-EHWXPH76.js.map +0 -1
- package/dist/chunk-ERRZ2CSG.js +0 -192
- package/dist/chunk-ERRZ2CSG.js.map +0 -1
- package/dist/chunk-EZGK67T6.js +0 -383
- package/dist/chunk-EZGK67T6.js.map +0 -1
- package/dist/chunk-FZSCLZF6.js.map +0 -1
- package/dist/chunk-G6NVGBYZ.js.map +0 -1
- package/dist/chunk-GJPZOMFE.js.map +0 -1
- package/dist/chunk-GOLARX5K.js.map +0 -1
- package/dist/chunk-GVVP5TZM.js +0 -506
- package/dist/chunk-GVVP5TZM.js.map +0 -1
- package/dist/chunk-H6G4BUPA.js.map +0 -1
- package/dist/chunk-HCOTO5WX.js.map +0 -1
- package/dist/chunk-HECAAILV.js.map +0 -1
- package/dist/chunk-HUXODBIO.js.map +0 -1
- package/dist/chunk-I32ZQUYY.js.map +0 -1
- package/dist/chunk-JWTWPZ32.js.map +0 -1
- package/dist/chunk-KH577UDI.js.map +0 -1
- package/dist/chunk-KJTMZJ7V.js.map +0 -1
- package/dist/chunk-L5UYN5LX.js +0 -787
- package/dist/chunk-L5UYN5LX.js.map +0 -1
- package/dist/chunk-LOYLJRCF.js.map +0 -1
- package/dist/chunk-LX4FDH4J.js.map +0 -1
- package/dist/chunk-N2WHJ3FI.js.map +0 -1
- package/dist/chunk-NGYLRX6F.js.map +0 -1
- package/dist/chunk-O3V3BTIJ.js.map +0 -1
- package/dist/chunk-OLTQAMV2.js.map +0 -1
- package/dist/chunk-ON2CMF6J.js.map +0 -1
- package/dist/chunk-ONGJXAYQ.js.map +0 -1
- package/dist/chunk-OQFYIKWR.js +0 -1264
- package/dist/chunk-OQFYIKWR.js.map +0 -1
- package/dist/chunk-POLVJ36Y.js.map +0 -1
- package/dist/chunk-POXI7JJ4.js +0 -351
- package/dist/chunk-POXI7JJ4.js.map +0 -1
- package/dist/chunk-R3TLU26W.js.map +0 -1
- package/dist/chunk-RFHTC6AH.js.map +0 -1
- package/dist/chunk-ROA7BYGB.js.map +0 -1
- package/dist/chunk-SGRACNBP.js.map +0 -1
- package/dist/chunk-TLNHWOQQ.js.map +0 -1
- package/dist/chunk-UTWQ2FZK.js.map +0 -1
- package/dist/chunk-VOODO2ZE.js.map +0 -1
- package/dist/chunk-WRSG7WU5.js.map +0 -1
- package/dist/chunk-X3YNHX77.js.map +0 -1
- package/dist/chunk-Y4XAXZHB.js.map +0 -1
- package/dist/chunk-YJOLLSHH.js.map +0 -1
- package/dist/chunk-YS5AIY4A.js.map +0 -1
- package/dist/chunk-YXLIGJTN.js.map +0 -1
- package/dist/chunk-ZIYA7TGX.js.map +0 -1
- package/dist/chunk-ZJNGZCRB.js.map +0 -1
- package/dist/empty/index.d.ts +0 -6
- package/dist/empty/index.d.ts.map +0 -1
- package/dist/empty/index.js +0 -4
- package/dist/empty/types.d.ts +0 -62
- package/dist/empty/types.d.ts.map +0 -1
- package/dist/styles/tokens.d.ts +0 -428
- package/dist/styles/tokens.d.ts.map +0 -1
- /package/dist/{empty → alert}/index.js.map +0 -0
|
@@ -1,14 +1,15 @@
|
|
|
1
|
-
import { toggle_group_default } from './chunk-
|
|
2
|
-
import { pagination_default } from './chunk-
|
|
3
|
-
import { input_default } from './chunk-
|
|
4
|
-
import { checkbox_default } from './chunk-
|
|
5
|
-
import { Popover, PopoverTrigger, PopoverContent } from './chunk-
|
|
6
|
-
import { button_default } from './chunk-
|
|
7
|
-
import {
|
|
1
|
+
import { toggle_group_default } from './chunk-XAM5EKOS.js';
|
|
2
|
+
import { pagination_default } from './chunk-PB5VGXS5.js';
|
|
3
|
+
import { input_default } from './chunk-W5VLFE4U.js';
|
|
4
|
+
import { checkbox_default } from './chunk-A4MYCEGM.js';
|
|
5
|
+
import { Popover, PopoverTrigger, PopoverContent } from './chunk-ROQGBDET.js';
|
|
6
|
+
import { button_default } from './chunk-SJLH5ZDW.js';
|
|
7
|
+
import { colorVars } from './chunk-G6QIIWKU.js';
|
|
8
|
+
import { iconSizes, cn } from './chunk-RAS6HUEI.js';
|
|
8
9
|
import { useReactTable, getGroupedRowModel, getExpandedRowModel, getPaginationRowModel, getFilteredRowModel, getSortedRowModel, getCoreRowModel, flexRender } from '@tanstack/react-table';
|
|
9
10
|
import { useVirtualizer } from '@tanstack/react-virtual';
|
|
11
|
+
import React, { useState, useRef, useEffect, useMemo } from 'react';
|
|
10
12
|
import { ChevronDown, ChevronRight, PinOff, Pin, Search, Columns3, ChevronsUpDown, Inbox } from 'lucide-react';
|
|
11
|
-
import React, { useState, useRef, useMemo, useEffect } from 'react';
|
|
12
13
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
13
14
|
import { cva } from 'class-variance-authority';
|
|
14
15
|
|
|
@@ -220,31 +221,14 @@ function TableHeaderCell({
|
|
|
220
221
|
}) {
|
|
221
222
|
const isPinnedLeft = header.column.getIsPinned() === "left";
|
|
222
223
|
const isPinnedRight = header.column.getIsPinned() === "right";
|
|
223
|
-
const
|
|
224
|
-
|
|
225
|
-
primary: "hover:bg-primary/10",
|
|
226
|
-
secondary: "hover:bg-secondary/10",
|
|
227
|
-
accent: "hover:bg-accent/10",
|
|
228
|
-
success: "hover:bg-success/10",
|
|
229
|
-
error: "hover:bg-error/10",
|
|
230
|
-
warning: "hover:bg-warning/10",
|
|
231
|
-
info: "hover:bg-info/10"
|
|
232
|
-
};
|
|
233
|
-
const colorIconClasses = {
|
|
234
|
-
default: "text-text-primary",
|
|
235
|
-
primary: "text-primary",
|
|
236
|
-
secondary: "text-secondary",
|
|
237
|
-
accent: "text-accent",
|
|
238
|
-
success: "text-success",
|
|
239
|
-
error: "text-error",
|
|
240
|
-
warning: "text-warning",
|
|
241
|
-
info: "text-info"
|
|
242
|
-
};
|
|
224
|
+
const hoverSlot = "hover:bg-slot-10";
|
|
225
|
+
const textSlot = "text-slot";
|
|
243
226
|
return /* @__PURE__ */ jsx(
|
|
244
227
|
"th",
|
|
245
228
|
{
|
|
246
229
|
className: cn(
|
|
247
230
|
"table_headerCell",
|
|
231
|
+
colorVars[color],
|
|
248
232
|
cellVariants({ size }),
|
|
249
233
|
"font-semibold text-text-primary border-b border-border relative group",
|
|
250
234
|
variant === "line" && "border-b-2",
|
|
@@ -269,8 +253,8 @@ function TableHeaderCell({
|
|
|
269
253
|
},
|
|
270
254
|
className: cn(
|
|
271
255
|
"p-1 rounded transition-[colors,opacity]",
|
|
272
|
-
header.column.getIsSorted() ? `opacity-100 ${
|
|
273
|
-
header.column.getIsSorted() &&
|
|
256
|
+
header.column.getIsSorted() ? `opacity-100 ${hoverSlot}` : `opacity-0 group-hover:opacity-100 ${hoverSlot}`,
|
|
257
|
+
header.column.getIsSorted() && textSlot
|
|
274
258
|
),
|
|
275
259
|
children: header.column.getIsSorted() === "asc" ? /* @__PURE__ */ jsx(ChevronDown, { className: "w-3.5 h-3.5 rotate-180" }) : header.column.getIsSorted() === "desc" ? /* @__PURE__ */ jsx(ChevronDown, { className: "w-3.5 h-3.5" }) : /* @__PURE__ */ jsx(ChevronsUpDown, { className: "w-3.5 h-3.5" })
|
|
276
260
|
}
|
|
@@ -290,7 +274,7 @@ function TableHeaderCell({
|
|
|
290
274
|
},
|
|
291
275
|
className: cn(
|
|
292
276
|
"p-1 rounded transition-[colors,opacity]",
|
|
293
|
-
isPinnedLeft || isPinnedRight ? `opacity-100 ${
|
|
277
|
+
isPinnedLeft || isPinnedRight ? `opacity-100 ${hoverSlot} ${textSlot}` : `opacity-0 group-hover:opacity-100 ${hoverSlot}`
|
|
294
278
|
),
|
|
295
279
|
children: isPinnedLeft || isPinnedRight ? /* @__PURE__ */ jsx(PinOff, { className: "w-3.5 h-3.5" }) : /* @__PURE__ */ jsx(Pin, { className: "w-3.5 h-3.5" })
|
|
296
280
|
}
|
|
@@ -378,9 +362,12 @@ function TableComponent({
|
|
|
378
362
|
hoverable = true,
|
|
379
363
|
bordered = false,
|
|
380
364
|
enableSorting = true,
|
|
365
|
+
sorting: controlledSorting,
|
|
366
|
+
onSortingChange: onSortingChangeProp,
|
|
381
367
|
enableFiltering = false,
|
|
382
368
|
enablePagination = false,
|
|
383
369
|
enableRowSelection = false,
|
|
370
|
+
rowSelection: controlledRowSelection,
|
|
384
371
|
enableMultiRowSelection = true,
|
|
385
372
|
enableRowPinning = false,
|
|
386
373
|
enableExpandable = false,
|
|
@@ -405,9 +392,20 @@ function TableComponent({
|
|
|
405
392
|
className,
|
|
406
393
|
classNames
|
|
407
394
|
}) {
|
|
408
|
-
const [
|
|
395
|
+
const [internalSorting, setInternalSorting] = useState([]);
|
|
396
|
+
const sorting = controlledSorting ?? internalSorting;
|
|
397
|
+
const setSorting = (updater) => {
|
|
398
|
+
const next = typeof updater === "function" ? updater(sorting) : updater;
|
|
399
|
+
if (!controlledSorting) setInternalSorting(next);
|
|
400
|
+
onSortingChangeProp?.(next);
|
|
401
|
+
};
|
|
409
402
|
const [columnFilters, setColumnFilters] = useState([]);
|
|
410
|
-
const [
|
|
403
|
+
const [internalRowSelection, setInternalRowSelection] = useState({});
|
|
404
|
+
const rowSelection = controlledRowSelection ?? internalRowSelection;
|
|
405
|
+
const setRowSelection = (updater) => {
|
|
406
|
+
const next = typeof updater === "function" ? updater(rowSelection) : updater;
|
|
407
|
+
if (!controlledRowSelection) setInternalRowSelection(next);
|
|
408
|
+
};
|
|
411
409
|
const [expanded, setExpanded] = useState({});
|
|
412
410
|
const [grouping, setGrouping] = useState([]);
|
|
413
411
|
const [pinnedRows, setPinnedRows] = useState(pinnedRowIds);
|
|
@@ -420,6 +418,11 @@ function TableComponent({
|
|
|
420
418
|
const [size, setSize] = useState(initialSize);
|
|
421
419
|
const tableContainerRef = useRef(null);
|
|
422
420
|
const prevAutoPinnedIdsRef = useRef("");
|
|
421
|
+
const pinnedRowsRef = useRef(pinnedRows);
|
|
422
|
+
const prevSelectionRef = useRef("");
|
|
423
|
+
useEffect(() => {
|
|
424
|
+
pinnedRowsRef.current = pinnedRows;
|
|
425
|
+
}, [pinnedRows]);
|
|
423
426
|
const autoPinnedIds = useMemo(() => {
|
|
424
427
|
if (!enableRowPinning || data.length === 0) return [];
|
|
425
428
|
return data.map((row, index) => ({ row, id: String(index) })).filter(({ row }) => row.pin === true).map(({ id }) => id);
|
|
@@ -524,13 +527,14 @@ function TableComponent({
|
|
|
524
527
|
header: () => /* @__PURE__ */ jsx(Pin, { className: "w-4 h-4 text-text-secondary" }),
|
|
525
528
|
cell: ({ row }) => {
|
|
526
529
|
const rowId = row.id;
|
|
527
|
-
const isPinned =
|
|
530
|
+
const isPinned = pinnedRowsRef.current.includes(rowId);
|
|
528
531
|
return /* @__PURE__ */ jsx(
|
|
529
532
|
"button",
|
|
530
533
|
{
|
|
531
534
|
onClick: (e) => {
|
|
532
535
|
e.stopPropagation();
|
|
533
|
-
const
|
|
536
|
+
const currentPinned = pinnedRowsRef.current;
|
|
537
|
+
const newPinnedRows = isPinned ? currentPinned.filter((id) => id !== rowId) : [...currentPinned, rowId];
|
|
534
538
|
setPinnedRows(newPinnedRows);
|
|
535
539
|
onPinnedRowsChange?.(newPinnedRows);
|
|
536
540
|
},
|
|
@@ -559,7 +563,7 @@ function TableComponent({
|
|
|
559
563
|
size: 50
|
|
560
564
|
}
|
|
561
565
|
] : finalColumns,
|
|
562
|
-
[finalColumns, enableRowPinning,
|
|
566
|
+
[finalColumns, enableRowPinning, onPinnedRowsChange, size]
|
|
563
567
|
);
|
|
564
568
|
const columnsWithEditable = useMemo(
|
|
565
569
|
() => columnsWithPinning.map((col) => {
|
|
@@ -653,13 +657,18 @@ function TableComponent({
|
|
|
653
657
|
useEffect(() => {
|
|
654
658
|
if (onSelectionChange) {
|
|
655
659
|
const selectedRows = table.getSelectedRowModel().rows.map((row) => row.original);
|
|
656
|
-
|
|
660
|
+
const selectionKey = Object.keys(rowSelection).sort().join(",");
|
|
661
|
+
if (selectionKey !== prevSelectionRef.current) {
|
|
662
|
+
prevSelectionRef.current = selectionKey;
|
|
663
|
+
onSelectionChange(selectedRows);
|
|
664
|
+
}
|
|
657
665
|
}
|
|
658
666
|
}, [rowSelection, onSelectionChange]);
|
|
659
667
|
const rows = table.getRowModel().rows;
|
|
660
668
|
const allRowsOrdered = useMemo(() => {
|
|
661
|
-
const
|
|
662
|
-
const
|
|
669
|
+
const pinnedSet = new Set(pinnedRows);
|
|
670
|
+
const pinned = rows.filter((row) => pinnedSet.has(row.id));
|
|
671
|
+
const unpinned = rows.filter((row) => !pinnedSet.has(row.id));
|
|
663
672
|
return [...pinned, ...unpinned];
|
|
664
673
|
}, [rows, pinnedRows]);
|
|
665
674
|
const rowVirtualizer = useVirtualizer({
|
|
@@ -669,12 +678,12 @@ function TableComponent({
|
|
|
669
678
|
overscan: 5,
|
|
670
679
|
enabled: enableVirtualization
|
|
671
680
|
});
|
|
672
|
-
const handleRowClick = (row, rowData) => {
|
|
681
|
+
const handleRowClick = React.useCallback((row, rowData) => {
|
|
673
682
|
if (enableClickToSelect && enableRowSelection) {
|
|
674
683
|
row.toggleSelected();
|
|
675
684
|
}
|
|
676
685
|
onRowClick?.(rowData);
|
|
677
|
-
};
|
|
686
|
+
}, [enableClickToSelect, enableRowSelection, onRowClick]);
|
|
678
687
|
const renderColumnGroups = () => {
|
|
679
688
|
if (!columnGroups || columnGroups.length === 0) return null;
|
|
680
689
|
const headerGroups = table.getHeaderGroups()[0];
|
|
@@ -934,7 +943,7 @@ function TableComponent({
|
|
|
934
943
|
});
|
|
935
944
|
setColumnVisibility(newVisibility);
|
|
936
945
|
};
|
|
937
|
-
return /* @__PURE__ */ jsxs("div", { className: cn("table_root w-full space-y-4", classNames?.root), children: [
|
|
946
|
+
return /* @__PURE__ */ jsxs("div", { "data-slot": "root", className: cn("table_root w-full space-y-4", classNames?.root), children: [
|
|
938
947
|
enableActions && /* @__PURE__ */ jsx(
|
|
939
948
|
TableActions,
|
|
940
949
|
{
|
|
@@ -1022,5 +1031,5 @@ var Table = React.memo(TableComponent);
|
|
|
1022
1031
|
var table_default = Table;
|
|
1023
1032
|
|
|
1024
1033
|
export { EditableCell, TableActions, TableCell, TableHeaderCell, TableRow, TableSkeleton, table_default };
|
|
1025
|
-
//# sourceMappingURL=chunk-
|
|
1026
|
-
//# sourceMappingURL=chunk-
|
|
1034
|
+
//# sourceMappingURL=chunk-4ZXHLPRS.js.map
|
|
1035
|
+
//# sourceMappingURL=chunk-4ZXHLPRS.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/table/EditableCell.tsx","../src/table/TableActions.tsx","../src/table/variants.ts","../src/table/TableCell.tsx","../src/table/TableHeaderCell.tsx","../src/table/TableRow.tsx","../src/table/TableSkeleton.tsx","../src/table/index.tsx"],"names":["jsx","jsxs","_","useState","useRef","useEffect","table","ChevronDown","Pin","PinOff","Fragment","pageSize"],"mappings":"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","file":"chunk-4ZXHLPRS.js","sourcesContent":["'use client'\n\nimport { useEffect, useRef, useState } from 'react'\n\nimport Input from '../input'\nimport { cn } from '../utils'\nimport type { TableSize } from './types'\n\ninterface EditableCellProps<TValue = unknown> {\n value: TValue\n onValueChange: (value: TValue) => void\n size?: TableSize\n className?: string\n}\n\nexport function EditableCell<TValue = unknown>({\n value,\n onValueChange,\n size = 'md',\n className,\n}: EditableCellProps<TValue>) {\n const [isEditing, setIsEditing] = useState(false)\n const [editValue, setEditValue] = useState(String(value ?? ''))\n const inputRef = useRef<HTMLInputElement>(null)\n const containerRef = useRef<HTMLDivElement>(null)\n\n useEffect(() => {\n if (isEditing && inputRef.current) {\n inputRef.current.focus()\n inputRef.current.select()\n }\n }, [isEditing])\n\n useEffect(() => {\n setEditValue(String(value ?? ''))\n }, [value])\n\n const handleSave = () => {\n setIsEditing(false)\n if (editValue !== String(value ?? '')) {\n onValueChange(editValue as TValue)\n }\n }\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (e.key === 'Enter') {\n handleSave()\n } else if (e.key === 'Escape') {\n setEditValue(String(value ?? ''))\n setIsEditing(false)\n }\n }\n\n const sizeClasses = {\n xs: 'text-xs py-0.5',\n sm: 'text-sm py-1',\n md: 'text-base py-1.5',\n lg: 'text-lg py-2',\n }\n\n const inputSizeMap = {\n xs: 'sm' as const,\n sm: 'sm' as const,\n md: 'md' as const,\n lg: 'lg' as const,\n }\n\n return (\n <div\n ref={containerRef}\n className={cn('table_editableCell relative w-full max-w-full overflow-hidden', className)}\n >\n {isEditing ? (\n <div className=\"w-full\">\n <Input\n ref={inputRef}\n type=\"text\"\n value={editValue}\n onChange={(e) => setEditValue(e.target.value)}\n onBlur={handleSave}\n onKeyDown={handleKeyDown}\n size={inputSizeMap[size]}\n className=\"w-full min-w-0 max-w-full\"\n />\n </div>\n ) : (\n <div\n onClick={() => setIsEditing(true)}\n className={cn(\n 'cursor-text hover:bg-surface/50 rounded transition-colors min-h-[20px] px-3 w-full overflow-hidden text-ellipsis whitespace-nowrap',\n sizeClasses[size],\n )}\n title=\"Click to edit\"\n >\n {String(value ?? '')}\n </div>\n )}\n </div>\n )\n}\n\nEditableCell.displayName = 'EditableCell'\n","'use client'\n\nimport { Columns3, Search } from 'lucide-react'\n\nimport Button from '../button'\nimport Checkbox from '../checkbox'\nimport Input from '../input'\nimport { Popover, PopoverContent, PopoverTrigger } from '../popover'\nimport ToggleGroup from '../toggle-group'\nimport { cn, iconSizes } from '../utils'\nimport type { TableColor, TableSize } from './types'\n\ninterface TableActionsProps {\n searchValue: string\n onSearchChange: (value: string) => void\n visibleColumns: string[]\n allColumns: Array<{ id: string; label: string }>\n onVisibleColumnsChange: (columns: string[]) => void\n size: TableSize\n onSizeChange: (size: TableSize) => void\n color?: TableColor\n className?: string\n}\n\nexport function TableActions({\n searchValue,\n onSearchChange,\n visibleColumns,\n allColumns,\n onVisibleColumnsChange,\n size,\n onSizeChange,\n color = 'default',\n className,\n}: TableActionsProps) {\n const handleColumnToggle = (columnId: string) => {\n if (visibleColumns.includes(columnId)) {\n onVisibleColumnsChange(visibleColumns.filter((id) => id !== columnId))\n } else {\n onVisibleColumnsChange([...visibleColumns, columnId])\n }\n }\n\n const sizeOptions = [\n { value: 'sm', label: 'SM' },\n { value: 'md', label: 'MD' },\n { value: 'lg', label: 'LG' },\n ]\n\n return (\n <div className={cn('table_actions flex flex-wrap items-center gap-4 rounded-md', className)}>\n {/* Search Input - Left */}\n <div className=\"w-auto mr-auto\">\n <Input\n type=\"text\"\n placeholder=\"Search...\"\n value={searchValue}\n onChange={(e) => onSearchChange(e.target.value)}\n size=\"sm\"\n rightIcon={<Search className={iconSizes[size]} />}\n />\n </div>\n\n {/* Column Visibility Selector */}\n <Popover>\n <PopoverTrigger asChild>\n <Button\n variant=\"outline\"\n size=\"sm\"\n leftIcon={<Columns3 className={iconSizes[size]} />}\n >\n Columns\n </Button>\n </PopoverTrigger>\n <PopoverContent className=\"w-56 p-2\">\n <div className=\"space-y-1 max-h-[300px] overflow-y-auto\">\n {allColumns.map((col) => (\n <label\n key={col.id}\n className=\"flex items-center gap-2 px-3 py-2 hover:bg-surface rounded cursor-pointer\"\n >\n <Checkbox\n checked={visibleColumns.includes(col.id)}\n onChange={() => handleColumnToggle(col.id)}\n color={color === 'default' ? 'primary' : color}\n size=\"sm\"\n />\n <span className=\"text-sm text-text-primary\">{col.label}</span>\n </label>\n ))}\n </div>\n </PopoverContent>\n </Popover>\n\n {/* Size Toggle Group */}\n <ToggleGroup\n options={sizeOptions}\n value={size}\n onChange={(value) => onSizeChange(value as TableSize)}\n color={color}\n size=\"sm\"\n variant=\"default\"\n />\n </div>\n )\n}\n\nTableActions.displayName = 'TableActions'\n","import { cva } from 'class-variance-authority'\n\nexport const cellVariants = cva('text-left transition-colors', {\n variants: {\n size: {\n xs: 'px-2 py-1 text-xs',\n sm: 'px-3 py-2 text-sm',\n md: 'px-4 py-3 text-base',\n lg: 'px-6 py-4 text-lg',\n },\n },\n defaultVariants: {\n size: 'md',\n },\n})\n","import { cn } from '../utils'\nimport type { TableSize } from './types'\nimport { cellVariants } from './variants'\n\ninterface TableCellProps extends React.TdHTMLAttributes<HTMLTableCellElement> {\n size?: TableSize\n bordered?: boolean\n fixed?: 'left' | 'right'\n}\n\nexport const TableCell = ({\n size = 'md',\n bordered = false,\n fixed,\n className,\n children,\n ...props\n}: TableCellProps) => {\n return (\n <td\n className={cn(\n 'table_cell',\n cellVariants({ size }),\n 'text-text-primary',\n bordered && 'border-r border-border last:border-r-0',\n fixed === 'left' && 'sticky left-0 bg-background z-10',\n fixed === 'right' && 'sticky right-0 bg-background z-10',\n className,\n )}\n {...props}\n >\n {children}\n </td>\n )\n}\n\nTableCell.displayName = 'TableCell'\n","'use client'\n\nimport type { Header } from '@tanstack/react-table'\n\nimport { ChevronDown, ChevronsUpDown, Pin, PinOff } from 'lucide-react'\n\nimport { cn } from '../utils'\nimport { colorVars } from '../variants'\nimport type { TableColor, TableSize, TableVariant } from './types'\nimport { cellVariants } from './variants'\n\ninterface TableHeaderCellProps<TData>\n extends React.ThHTMLAttributes<HTMLTableCellElement> {\n header: Header<TData, unknown>\n size?: TableSize\n variant?: TableVariant\n color?: TableColor\n bordered?: boolean\n enableColumnPinning?: boolean\n}\n\nexport function TableHeaderCell<TData>({\n header,\n size = 'md',\n variant = 'outline',\n color = 'default',\n bordered = false,\n enableColumnPinning = false,\n className,\n ...props\n}: TableHeaderCellProps<TData>) {\n const isPinnedLeft = header.column.getIsPinned() === 'left'\n const isPinnedRight = header.column.getIsPinned() === 'right'\n\n // Slot-based: colorVars[color] on <th> sets --_c, children use slot utilities\n const hoverSlot = 'hover:bg-slot-10'\n const textSlot = 'text-slot'\n\n return (\n <th\n className={cn(\n 'table_headerCell',\n colorVars[color],\n cellVariants({ size }),\n 'font-semibold text-text-primary border-b border-border relative group',\n variant === 'line' && 'border-b-2',\n bordered && 'border-r border-border last:border-r-0',\n header.column.getCanSort() &&\n 'cursor-pointer select-none hover:bg-background',\n isPinnedLeft && 'sticky left-0 bg-surface z-20',\n isPinnedRight && 'sticky right-0 bg-surface z-20',\n className,\n )}\n onClick={header.column.getToggleSortingHandler()}\n {...props}\n >\n <div className=\"flex items-center justify-between gap-2\">\n <span className=\"flex-1\">\n {header.isPlaceholder\n ? null\n : typeof header.column.columnDef.header === 'function'\n ? header.column.columnDef.header(header.getContext())\n : header.column.columnDef.header}\n </span>\n <div className=\"flex items-center gap-1\">\n {header.column.getCanSort() && (\n <button\n type=\"button\"\n onClick={(e) => {\n e.stopPropagation()\n header.column.toggleSorting()\n }}\n className={cn(\n 'p-1 rounded transition-[colors,opacity]',\n header.column.getIsSorted()\n ? `opacity-100 ${hoverSlot}`\n : `opacity-0 group-hover:opacity-100 ${hoverSlot}`,\n header.column.getIsSorted() && textSlot,\n )}\n >\n {header.column.getIsSorted() === 'asc' ? (\n <ChevronDown className=\"w-3.5 h-3.5 rotate-180\" />\n ) : header.column.getIsSorted() === 'desc' ? (\n <ChevronDown className=\"w-3.5 h-3.5\" />\n ) : (\n <ChevronsUpDown className=\"w-3.5 h-3.5\" />\n )}\n </button>\n )}\n {enableColumnPinning && header.column.getCanPin() && (\n <button\n type=\"button\"\n onClick={(e) => {\n e.stopPropagation()\n const isPinned = header.column.getIsPinned()\n if (isPinned) {\n header.column.pin(false)\n } else {\n header.column.pin('left')\n }\n }}\n className={cn(\n 'p-1 rounded transition-[colors,opacity]',\n isPinnedLeft || isPinnedRight\n ? `opacity-100 ${hoverSlot} ${textSlot}`\n : `opacity-0 group-hover:opacity-100 ${hoverSlot}`,\n )}\n >\n {isPinnedLeft || isPinnedRight ? (\n <PinOff className=\"w-3.5 h-3.5\" />\n ) : (\n <Pin className=\"w-3.5 h-3.5\" />\n )}\n </button>\n )}\n </div>\n </div>\n </th>\n )\n}\n\nTableHeaderCell.displayName = 'TableHeaderCell'\n","'use client'\n\nimport type { Row } from '@tanstack/react-table'\n\nimport { cn } from '../utils'\n\ninterface TableRowProps<TData>\n extends React.HTMLAttributes<HTMLTableRowElement> {\n row: Row<TData>\n index: number\n striped?: boolean\n hoverable?: boolean\n onRowClick?: (row: TData) => void\n isPinned?: boolean\n isExpanded?: boolean\n}\n\nexport function TableRow<TData>({\n row,\n index,\n striped = false,\n hoverable = true,\n onRowClick,\n isPinned = false,\n isExpanded = false,\n className,\n children,\n ...props\n}: TableRowProps<TData>) {\n const handleKeyDown = (e: React.KeyboardEvent<HTMLTableRowElement>) => {\n if (onRowClick && (e.key === 'Enter' || e.key === ' ')) {\n e.preventDefault()\n onRowClick(row.original)\n }\n }\n\n return (\n <tr\n className={cn(\n 'table_row border-b border-border last:border-b-0 transition-colors duration-150',\n striped && index % 2 === 1 && 'bg-surface/50',\n hoverable && 'hover:bg-surface cursor-pointer',\n onRowClick && 'cursor-pointer focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-primary',\n isPinned && 'bg-primary/5 border-primary/20',\n row.getIsSelected() && 'bg-primary/10',\n className,\n )}\n onClick={() => onRowClick?.(row.original)}\n onKeyDown={handleKeyDown}\n tabIndex={onRowClick ? 0 : undefined}\n role={onRowClick ? 'button' : undefined}\n {...props}\n >\n {children}\n </tr>\n )\n}\n\nTableRow.displayName = 'TableRow'\n","import { cn } from '../utils'\nimport type { TableSize } from './types'\nimport { cellVariants } from './variants'\n\ninterface TableSkeletonProps {\n rows?: number\n columns: number\n size?: TableSize\n className?: string\n}\n\nexport const TableSkeleton = ({\n rows = 5,\n columns,\n size = 'md',\n className,\n}: TableSkeletonProps) => {\n return (\n <>\n {Array.from({ length: rows }).map((_, rowIndex) => (\n <tr\n key={rowIndex}\n className={cn('table_skeleton border-b border-border', className)}\n >\n {Array.from({ length: columns }).map((_, colIndex) => (\n <td\n key={colIndex}\n className={cn(cellVariants({ size }))}\n >\n <div className=\"animate-pulse\">\n <div className=\"h-4 bg-surface rounded w-full\" />\n </div>\n </td>\n ))}\n </tr>\n ))}\n </>\n )\n}\n\nTableSkeleton.displayName = 'TableSkeleton'\n","'use client'\n\nimport {\n flexRender,\n getCoreRowModel,\n getExpandedRowModel,\n getFilteredRowModel,\n getGroupedRowModel,\n getPaginationRowModel,\n getSortedRowModel,\n useReactTable,\n type ColumnFiltersState,\n type ColumnPinningState,\n type ExpandedState,\n type GroupingState,\n type Row,\n type SortingState,\n type VisibilityState,\n} from '@tanstack/react-table'\nimport { useVirtualizer } from '@tanstack/react-virtual'\nimport React, { useEffect, useMemo, useRef, useState } from 'react'\n\nimport { ChevronDown, ChevronRight, Inbox, Pin, PinOff } from 'lucide-react'\n\nimport Checkbox from '../checkbox'\nimport Pagination from '../pagination'\nimport { cn, iconSizes } from '../utils'\nimport { EditableCell } from './EditableCell'\nimport { TableActions } from './TableActions'\nimport { TableCell } from './TableCell'\nimport { TableHeaderCell } from './TableHeaderCell'\nimport { TableRow } from './TableRow'\nimport { TableSkeleton } from './TableSkeleton'\nimport type {\n TableCellContext,\n TableHeaderContext,\n TableProps,\n TableSize,\n} from './types'\nimport { cellVariants } from './variants'\n\nfunction TableComponent<TData>({\n data,\n columns,\n columnGroups,\n caption,\n showCaption = false,\n 'aria-label': ariaLabel,\n variant = 'outline',\n size: initialSize = 'md',\n color = 'default',\n striped = false,\n hoverable = true,\n bordered = false,\n enableSorting = true,\n sorting: controlledSorting,\n onSortingChange: onSortingChangeProp,\n enableFiltering = false,\n enablePagination = false,\n enableRowSelection = false,\n rowSelection: controlledRowSelection,\n enableMultiRowSelection = true,\n enableRowPinning = false,\n enableExpandable = false,\n enableGrouping = false,\n enableVirtualization = false,\n enableClickToSelect = false,\n enableColumnPinning = false,\n enableActions = false,\n paginationPosition = 'bottomcenter',\n expandedContent,\n footer,\n emptyState,\n loading = false,\n loadingRows = 5,\n pageSize = 10,\n pageSizeOptions = [5, 10, 20, 50],\n onRowClick,\n onSelectionChange,\n onCellEdit,\n pinnedRowIds = [],\n onPinnedRowsChange,\n className,\n classNames,\n}: TableProps<TData>) {\n const [internalSorting, setInternalSorting] = useState<SortingState>([])\n const sorting = controlledSorting ?? internalSorting\n const setSorting = (updater: SortingState | ((prev: SortingState) => SortingState)) => {\n const next = typeof updater === 'function' ? updater(sorting) : updater\n if (!controlledSorting) setInternalSorting(next)\n onSortingChangeProp?.(next)\n }\n\n const [columnFilters, setColumnFilters] = useState<ColumnFiltersState>([])\n\n const [internalRowSelection, setInternalRowSelection] = useState<Record<string, boolean>>({})\n const rowSelection = controlledRowSelection ?? internalRowSelection\n const setRowSelection = (updater: Record<string, boolean> | ((prev: Record<string, boolean>) => Record<string, boolean>)) => {\n const next = typeof updater === 'function' ? updater(rowSelection) : updater\n if (!controlledRowSelection) setInternalRowSelection(next)\n }\n const [expanded, setExpanded] = useState<ExpandedState>({})\n const [grouping, setGrouping] = useState<GroupingState>([])\n const [pinnedRows, setPinnedRows] = useState<string[]>(pinnedRowIds)\n const [columnPinning, setColumnPinning] = useState<ColumnPinningState>({\n left: [],\n right: [],\n })\n const [columnVisibility, setColumnVisibility] = useState<VisibilityState>({})\n const [searchValue, setSearchValue] = useState('')\n const [size, setSize] = useState<TableSize>(initialSize)\n\n const tableContainerRef = useRef<HTMLDivElement>(null)\n const prevAutoPinnedIdsRef = useRef<string>('')\n const pinnedRowsRef = useRef<string[]>(pinnedRows)\n const prevSelectionRef = useRef<string>('')\n\n useEffect(() => {\n pinnedRowsRef.current = pinnedRows\n }, [pinnedRows])\n\n const autoPinnedIds = useMemo(() => {\n if (!enableRowPinning || data.length === 0) return []\n\n return data\n .map((row, index) => ({ row, id: String(index) }))\n .filter(({ row }) => (row as Record<string, unknown>).pin === true)\n .map(({ id }) => id)\n }, [data, enableRowPinning])\n\n useEffect(() => {\n if (autoPinnedIds.length > 0) {\n const combinedPinnedIds = [\n ...new Set([...pinnedRowIds, ...autoPinnedIds]),\n ]\n\n const autoPinnedIdsStr = autoPinnedIds.sort().join(',')\n if (autoPinnedIdsStr !== prevAutoPinnedIdsRef.current) {\n prevAutoPinnedIdsRef.current = autoPinnedIdsStr\n setPinnedRows(combinedPinnedIds)\n }\n }\n }, [autoPinnedIds, pinnedRowIds])\n\n useEffect(() => {\n if (enableColumnPinning && columns.length > 0) {\n const leftPinned = columns\n .filter((col) => (col as unknown as Record<string, unknown>).pin === 'left')\n .map(\n (col) =>\n (col.id as string) ||\n ((col as unknown as Record<string, unknown>).accessorKey as string),\n )\n const rightPinned = columns\n .filter((col) => (col as unknown as Record<string, unknown>).pin === 'right')\n .map(\n (col) =>\n (col.id as string) ||\n ((col as unknown as Record<string, unknown>).accessorKey as string),\n )\n\n if (leftPinned.length > 0 || rightPinned.length > 0) {\n setColumnPinning({\n left: leftPinned,\n right: rightPinned,\n })\n }\n }\n }, [columns, enableColumnPinning])\n\n const enhancedColumns = useMemo(\n () =>\n enableRowSelection\n ? [\n {\n id: 'select',\n header: ({ table }: TableHeaderContext<TData>) =>\n enableMultiRowSelection ? (\n <Checkbox\n checked={table.getIsAllRowsSelected()}\n indeterminate={table.getIsSomeRowsSelected()}\n onChange={table.getToggleAllRowsSelectedHandler()}\n size=\"sm\"\n />\n ) : null,\n cell: ({ row }: TableCellContext<TData>) => (\n <Checkbox\n checked={row.getIsSelected()}\n disabled={!row.getCanSelect()}\n onChange={row.getToggleSelectedHandler()}\n size=\"sm\"\n />\n ),\n size: 50,\n },\n ...columns,\n ]\n : columns,\n [columns, enableRowSelection, enableMultiRowSelection],\n )\n\n const finalColumns = useMemo(\n () =>\n enableExpandable\n ? [\n {\n id: 'expand',\n header: () => null,\n cell: ({ row }: TableCellContext<TData>) => (\n <button\n onClick={(e) => {\n e.stopPropagation()\n row.toggleExpanded()\n }}\n className=\"text-text-secondary hover:text-text-primary transition-colors\"\n aria-label={\n row.getIsExpanded() ? 'Collapse row' : 'Expand row'\n }\n aria-expanded={row.getIsExpanded()}\n >\n {row.getIsExpanded() ? (\n <ChevronDown\n className={iconSizes[size]}\n aria-hidden=\"true\"\n />\n ) : (\n <ChevronRight\n className={iconSizes[size]}\n aria-hidden=\"true\"\n />\n )}\n </button>\n ),\n size: 50,\n },\n ...enhancedColumns,\n ]\n : enhancedColumns,\n [enhancedColumns, enableExpandable, size],\n )\n\n const columnsWithPinning = useMemo(\n () =>\n enableRowPinning\n ? [\n ...finalColumns,\n {\n id: 'pin',\n header: () => <Pin className=\"w-4 h-4 text-text-secondary\" />,\n cell: ({ row }: TableCellContext<TData>) => {\n const rowId = row.id\n const isPinned = pinnedRowsRef.current.includes(rowId)\n\n return (\n <button\n onClick={(e) => {\n e.stopPropagation()\n const currentPinned = pinnedRowsRef.current\n const newPinnedRows = isPinned\n ? currentPinned.filter((id) => id !== rowId)\n : [...currentPinned, rowId]\n setPinnedRows(newPinnedRows)\n onPinnedRowsChange?.(newPinnedRows)\n }}\n className={cn(\n 'text-text-secondary hover:text-text-primary transition-colors',\n isPinned && 'text-primary',\n )}\n aria-label={isPinned ? 'Unpin row' : 'Pin row'}\n aria-pressed={isPinned}\n >\n {isPinned ? (\n <PinOff\n className={iconSizes[size]}\n aria-hidden=\"true\"\n />\n ) : (\n <Pin\n className={iconSizes[size]}\n aria-hidden=\"true\"\n />\n )}\n </button>\n )\n },\n size: 50,\n },\n ]\n : finalColumns,\n [finalColumns, enableRowPinning, onPinnedRowsChange, size],\n )\n\n const columnsWithEditable = useMemo(\n () =>\n columnsWithPinning.map((col) => {\n const colAny = col as unknown as Record<string, unknown>\n if (colAny.editable && onCellEdit) {\n return {\n ...col,\n cell: ({ row, getValue }: TableCellContext<TData>) => {\n const value =\n getValue?.() ??\n (row.original as Record<string, unknown>)[\n colAny.accessorKey as string\n ]\n return (\n <EditableCell\n value={value}\n size={size}\n onValueChange={(newValue) => {\n onCellEdit({\n rowIndex: row.index,\n columnId:\n (colAny.id as string) || (colAny.accessorKey as string),\n value: newValue,\n row: row.original,\n })\n }}\n />\n )\n },\n }\n }\n return col\n }),\n [columnsWithPinning, onCellEdit, size],\n )\n\n const filteredData = useMemo(() => {\n if (!enableActions || !searchValue.trim()) {\n return data\n }\n\n const searchLower = searchValue.toLowerCase()\n return data.filter((row) => {\n return Object.values(row as Record<string, unknown>).some((value) =>\n String(value).toLowerCase().includes(searchLower),\n )\n })\n }, [data, searchValue, enableActions])\n\n const allColumnsList = useMemo(() => {\n return columns.map((col) => {\n const colAny = col as unknown as Record<string, unknown>\n return {\n id: (col.id as string) || (colAny.accessorKey as string),\n label:\n typeof colAny.header === 'string'\n ? colAny.header\n : (col.id as string) || (colAny.accessorKey as string),\n }\n })\n }, [columns])\n\n const visibleColumnIds = useMemo(() => {\n return Object.keys(columnVisibility).length === 0\n ? allColumnsList.map((c) => c.id)\n : allColumnsList\n .filter((c) => columnVisibility[c.id] !== false)\n .map((c) => c.id)\n }, [columnVisibility, allColumnsList])\n\n const table = useReactTable({\n data: filteredData,\n columns: columnsWithEditable as typeof columns,\n getCoreRowModel: getCoreRowModel(),\n getSortedRowModel: enableSorting ? getSortedRowModel() : undefined,\n getFilteredRowModel: enableFiltering ? getFilteredRowModel() : undefined,\n getPaginationRowModel:\n enablePagination && !enableVirtualization\n ? getPaginationRowModel()\n : undefined,\n getExpandedRowModel: enableExpandable ? getExpandedRowModel() : undefined,\n getGroupedRowModel: enableGrouping ? getGroupedRowModel() : undefined,\n onSortingChange: setSorting,\n onColumnFiltersChange: setColumnFilters,\n onRowSelectionChange: setRowSelection,\n onExpandedChange: setExpanded,\n onGroupingChange: setGrouping,\n onColumnPinningChange: setColumnPinning,\n onColumnVisibilityChange: setColumnVisibility,\n enableRowSelection,\n enableMultiRowSelection,\n enableGrouping,\n enableColumnPinning,\n getRowCanExpand: enableExpandable ? () => true : undefined,\n state: {\n sorting,\n columnFilters,\n rowSelection,\n expanded,\n grouping,\n columnPinning,\n columnVisibility,\n },\n initialState: {\n pagination: {\n pageSize,\n },\n },\n })\n\n useEffect(() => {\n if (onSelectionChange) {\n const selectedRows = table\n .getSelectedRowModel()\n .rows.map((row) => row.original)\n const selectionKey = Object.keys(rowSelection).sort().join(',')\n\n if (selectionKey !== prevSelectionRef.current) {\n prevSelectionRef.current = selectionKey\n onSelectionChange(selectedRows)\n }\n }\n }, [rowSelection, onSelectionChange])\n\n const rows = table.getRowModel().rows\n const allRowsOrdered = useMemo(() => {\n const pinnedSet = new Set(pinnedRows)\n const pinned = rows.filter((row) => pinnedSet.has(row.id))\n const unpinned = rows.filter((row) => !pinnedSet.has(row.id))\n return [...pinned, ...unpinned]\n }, [rows, pinnedRows])\n\n const rowVirtualizer = useVirtualizer({\n count: allRowsOrdered.length,\n getScrollElement: () => tableContainerRef.current,\n estimateSize: () => (size === 'sm' ? 44 : size === 'lg' ? 68 : 56),\n overscan: 5,\n enabled: enableVirtualization,\n })\n\n const handleRowClick = React.useCallback((row: Row<TData>, rowData: TData) => {\n if (enableClickToSelect && enableRowSelection) {\n row.toggleSelected()\n }\n onRowClick?.(rowData)\n }, [enableClickToSelect, enableRowSelection, onRowClick])\n\n const renderColumnGroups = () => {\n if (!columnGroups || columnGroups.length === 0) return null\n\n const headerGroups = table.getHeaderGroups()[0]\n if (!headerGroups) return null\n\n const groupedHeaders: Array<{\n header: string\n span: number\n startIndex: number\n }> = []\n const processedCols = new Set<string>()\n\n headerGroups.headers.forEach((header, index) => {\n const colId = header.column.id\n\n if (processedCols.has(colId)) return\n\n const group = columnGroups.find((g) => g.columns.includes(colId))\n\n if (group) {\n // Mark all columns in this group as processed\n group.columns.forEach((c) => processedCols.add(c))\n\n groupedHeaders.push({\n header: group.header,\n span: group.columns.length,\n startIndex: index,\n })\n } else {\n groupedHeaders.push({\n header: '',\n span: 1,\n startIndex: index,\n })\n }\n })\n\n return (\n <tr className=\"border-b border-border\">\n {groupedHeaders.map((group, idx) => (\n <th\n key={idx}\n colSpan={group.span}\n className={cn(\n cellVariants({ size }),\n 'font-bold text-text-primary bg-surface/70 border-border text-center',\n bordered && 'border-r border-border last:border-r-0',\n )}\n >\n {group.header}\n </th>\n ))}\n </tr>\n )\n }\n\n const renderRows = () => {\n if (loading) {\n return (\n <TableSkeleton\n rows={loadingRows}\n columns={columnsWithPinning.length}\n size={size}\n className={classNames?.skeleton}\n />\n )\n }\n\n if (allRowsOrdered.length === 0) {\n return (\n <tr className=\"table_empty\">\n <td\n colSpan={columnsWithPinning.length}\n className={cn('px-4 py-12 text-center', classNames?.empty)}\n >\n {emptyState || (\n <div className=\"flex flex-col items-center justify-center gap-2 text-text-secondary\">\n <Inbox className=\"w-12 h-12 opacity-20\" />\n <p className=\"text-sm\">No data available</p>\n </div>\n )}\n </td>\n </tr>\n )\n }\n\n if (enableVirtualization) {\n const virtualRows = rowVirtualizer.getVirtualItems()\n const paddingTop = virtualRows.length > 0 ? virtualRows[0]?.start || 0 : 0\n const paddingBottom =\n virtualRows.length > 0\n ? rowVirtualizer.getTotalSize() -\n (virtualRows[virtualRows.length - 1]?.end || 0)\n : 0\n\n return (\n <>\n {paddingTop > 0 && (\n <tr>\n <td\n colSpan={columnsWithPinning.length}\n style={{ height: `${paddingTop}px`, padding: 0, border: 0 }}\n />\n </tr>\n )}\n {virtualRows.map((virtualRow) => {\n const row = allRowsOrdered[virtualRow.index]\n if (!row) return null\n\n const isLastVirtualRow =\n virtualRow.index === allRowsOrdered.length - 1\n\n return (\n <TableRow\n key={row.id}\n row={row}\n index={virtualRow.index}\n striped={striped}\n hoverable={hoverable}\n onRowClick={() => handleRowClick(row, row.original)}\n isPinned={pinnedRows.includes(row.id)}\n className={cn(isLastVirtualRow && 'border-b-0', classNames?.row)}\n >\n {row.getVisibleCells().map((cell) => {\n const isPinnedLeft = cell.column.getIsPinned() === 'left'\n const isPinnedRight = cell.column.getIsPinned() === 'right'\n\n return (\n <TableCell\n key={cell.id}\n size={size}\n bordered={bordered}\n fixed={\n isPinnedLeft\n ? 'left'\n : isPinnedRight\n ? 'right'\n : undefined\n }\n className={classNames?.cell}\n >\n {cell.getIsGrouped() ? (\n <div className=\"flex items-center gap-2\">\n <button\n type=\"button\"\n onClick={(e) => {\n e.stopPropagation()\n row.toggleExpanded()\n }}\n className=\"text-text-secondary hover:text-text-primary\"\n aria-label={row.getIsExpanded() ? 'Collapse group' : 'Expand group'}\n aria-expanded={row.getIsExpanded()}\n >\n {row.getIsExpanded() ? (\n <ChevronDown className={iconSizes[size]} aria-hidden=\"true\" />\n ) : (\n <ChevronRight className={iconSizes[size]} aria-hidden=\"true\" />\n )}\n </button>\n {flexRender(\n cell.column.columnDef.cell,\n cell.getContext(),\n )}{' '}\n ({row.subRows.length})\n </div>\n ) : cell.getIsAggregated() ? (\n flexRender(\n cell.column.columnDef.aggregatedCell ??\n cell.column.columnDef.cell,\n cell.getContext(),\n )\n ) : cell.getIsPlaceholder() ? null : (\n flexRender(\n cell.column.columnDef.cell,\n cell.getContext(),\n )\n )}\n </TableCell>\n )\n })}\n </TableRow>\n )\n })}\n {paddingBottom > 0 && (\n <tr>\n <td\n colSpan={columnsWithPinning.length}\n style={{ height: `${paddingBottom}px`, padding: 0, border: 0 }}\n />\n </tr>\n )}\n </>\n )\n }\n\n return allRowsOrdered.map((row, index) => (\n <React.Fragment key={row.id}>\n <TableRow\n row={row}\n index={index}\n striped={striped}\n hoverable={hoverable}\n onRowClick={() => handleRowClick(row, row.original)}\n isPinned={pinnedRows.includes(row.id)}\n className={classNames?.row}\n >\n {row.getVisibleCells().map((cell) => {\n const isPinnedLeft = cell.column.getIsPinned() === 'left'\n const isPinnedRight = cell.column.getIsPinned() === 'right'\n\n return (\n <TableCell\n key={cell.id}\n size={size}\n bordered={bordered}\n fixed={\n isPinnedLeft ? 'left' : isPinnedRight ? 'right' : undefined\n }\n className={classNames?.cell}\n >\n {cell.getIsGrouped() ? (\n <div className=\"flex items-center gap-2\">\n <button\n type=\"button\"\n onClick={(e) => {\n e.stopPropagation()\n row.toggleExpanded()\n }}\n className=\"text-text-secondary hover:text-text-primary\"\n aria-label={row.getIsExpanded() ? 'Collapse group' : 'Expand group'}\n aria-expanded={row.getIsExpanded()}\n >\n {row.getIsExpanded() ? (\n <ChevronDown className={iconSizes[size]} aria-hidden=\"true\" />\n ) : (\n <ChevronRight className={iconSizes[size]} aria-hidden=\"true\" />\n )}\n </button>\n {flexRender(cell.column.columnDef.cell, cell.getContext())}{' '}\n ({row.subRows.length})\n </div>\n ) : cell.getIsAggregated() ? (\n flexRender(\n cell.column.columnDef.aggregatedCell ??\n cell.column.columnDef.cell,\n cell.getContext(),\n )\n ) : cell.getIsPlaceholder() ? null : (\n flexRender(cell.column.columnDef.cell, cell.getContext())\n )}\n </TableCell>\n )\n })}\n </TableRow>\n {/* Expanded Content Row */}\n {enableExpandable && row.getIsExpanded() && expandedContent && (\n <tr>\n <td\n colSpan={row.getVisibleCells().length}\n className=\"bg-surface/30 border-b border-border p-4\"\n >\n {expandedContent(row)}\n </td>\n </tr>\n )}\n </React.Fragment>\n ))\n }\n\n const renderPagination = () => {\n if (\n !enablePagination ||\n table.getPageCount() === 0 ||\n loading ||\n enableVirtualization\n ) {\n return null\n }\n\n const getPaginationPositionClasses = () => {\n const positionClasses = {\n topleft: 'justify-start',\n topcenter: 'w-full justify-between',\n topright: 'justify-end',\n bottomleft: 'justify-start',\n bottomcenter: 'w-full justify-between',\n bottomright: 'justify-end',\n }\n return positionClasses[paginationPosition]\n }\n\n return (\n <Pagination\n total={table.getFilteredRowModel().rows.length}\n current={table.getState().pagination.pageIndex + 1}\n pageSize={table.getState().pagination.pageSize}\n onChange={(page, pageSize) => {\n table.setPageIndex(page - 1)\n table.setPageSize(pageSize)\n }}\n showSizeChanger\n pageSizeOptions={pageSizeOptions}\n showTotal={(total, range) => (\n <>\n Showing {range[0]}-{range[1]} of {total} rows\n </>\n )}\n color={color}\n size=\"sm\"\n className={cn('table_pagination flex', getPaginationPositionClasses(), classNames?.pagination)}\n />\n )\n }\n\n const shouldShowTopPagination = paginationPosition.startsWith('top')\n const shouldShowBottomPagination = paginationPosition.startsWith('bottom')\n\n const handleVisibleColumnsChange = (newVisibleColumns: string[]) => {\n const newVisibility: VisibilityState = {}\n allColumnsList.forEach((col) => {\n newVisibility[col.id] = newVisibleColumns.includes(col.id)\n })\n setColumnVisibility(newVisibility)\n }\n\n return (\n <div data-slot=\"root\" className={cn('table_root w-full space-y-4', classNames?.root)}>\n {enableActions && (\n <TableActions\n searchValue={searchValue}\n onSearchChange={setSearchValue}\n visibleColumns={visibleColumnIds}\n allColumns={allColumnsList}\n onVisibleColumnsChange={handleVisibleColumnsChange}\n size={size}\n onSizeChange={setSize}\n color={color}\n className={classNames?.actions}\n />\n )}\n\n {shouldShowTopPagination && renderPagination()}\n\n <div\n ref={tableContainerRef}\n className={cn(\n 'table_wrapper overflow-auto rounded-md',\n enableVirtualization && 'max-h-[500px]',\n variant === 'outline' && 'border border-border',\n classNames?.wrapper,\n )}\n >\n <table\n className={cn(\n 'w-full border-collapse',\n variant === 'line' && 'border-0',\n variant === 'ghost' && 'border-0',\n className,\n )}\n aria-label={ariaLabel}\n >\n {caption && (\n <caption className={cn(!showCaption && 'sr-only')}>\n {caption}\n </caption>\n )}\n <thead className={cn('table_header bg-surface sticky top-0 z-30', classNames?.header)}>\n {renderColumnGroups()}\n {table.getHeaderGroups().map((headerGroup) => (\n <tr key={headerGroup.id} className={cn('table_headerRow', classNames?.headerRow)}>\n {headerGroup.headers.map((header) => (\n <TableHeaderCell\n key={header.id}\n header={header}\n size={size}\n variant={variant}\n color={color}\n bordered={bordered}\n enableColumnPinning={enableColumnPinning}\n className={classNames?.headerCell}\n />\n ))}\n </tr>\n ))}\n </thead>\n <tbody className={cn('table_body', classNames?.body)}>{renderRows()}</tbody>\n {footer && (\n <tfoot className={cn('table_footer bg-surface border-t border-border sticky bottom-0 z-30', classNames?.footer)}>\n {table.getFooterGroups().map((footerGroup) => (\n <tr key={footerGroup.id}>\n {footerGroup.headers.map((header) => {\n const isPinnedLeft = header.column.getIsPinned() === 'left'\n const isPinnedRight =\n header.column.getIsPinned() === 'right'\n\n return (\n <th\n key={header.id}\n className={cn(\n 'px-4 py-3 text-left font-semibold text-text-primary',\n bordered && 'border-r border-border last:border-r-0',\n isPinnedLeft && 'sticky left-0 bg-surface z-20',\n isPinnedRight && 'sticky right-0 bg-surface z-20',\n )}\n >\n {header.isPlaceholder\n ? null\n : flexRender(\n header.column.columnDef.footer,\n header.getContext(),\n )}\n </th>\n )\n })}\n </tr>\n ))}\n </tfoot>\n )}\n </table>\n </div>\n\n {shouldShowBottomPagination && renderPagination()}\n </div>\n )\n}\n\nTableComponent.displayName = 'Table'\n\n// Wrap with React.memo for performance - prevents unnecessary re-renders\nconst Table = React.memo(TableComponent) as typeof TableComponent\n\nexport { TableCell } from './TableCell'\nexport { TableHeaderCell } from './TableHeaderCell'\nexport { TableRow } from './TableRow'\nexport { TableSkeleton } from './TableSkeleton'\nexport { TableActions } from './TableActions'\nexport { EditableCell } from './EditableCell'\nexport type * from './types'\nexport default Table\n"]}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { cn } from './chunk-
|
|
1
|
+
import { colorVars } from './chunk-G6QIIWKU.js';
|
|
2
|
+
import { cn } from './chunk-RAS6HUEI.js';
|
|
3
3
|
import { cva } from 'class-variance-authority';
|
|
4
4
|
import { Loader2 } from 'lucide-react';
|
|
5
|
-
import React, { useId, useState } from 'react';
|
|
5
|
+
import React, { useId, useState, useCallback } from 'react';
|
|
6
6
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
7
7
|
|
|
8
8
|
var switchTrackVariants = cva(
|
|
@@ -13,7 +13,7 @@ var switchTrackVariants = cva(
|
|
|
13
13
|
],
|
|
14
14
|
{
|
|
15
15
|
variants: {
|
|
16
|
-
color:
|
|
16
|
+
color: colorVars,
|
|
17
17
|
size: {
|
|
18
18
|
xs: "w-(--switch-width-xs) h-(--switch-height-xs)",
|
|
19
19
|
sm: "w-(--switch-width-sm) h-(--switch-height-sm)",
|
|
@@ -127,17 +127,21 @@ var Switch = React.memo(
|
|
|
127
127
|
);
|
|
128
128
|
const isControlled = checked !== void 0;
|
|
129
129
|
const currentChecked = isControlled ? checked : internalChecked;
|
|
130
|
-
const handleChange = (
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
130
|
+
const handleChange = useCallback(
|
|
131
|
+
(e) => {
|
|
132
|
+
if (!isControlled) {
|
|
133
|
+
setInternalChecked(e.target.checked);
|
|
134
|
+
}
|
|
135
|
+
props.onChange?.(e);
|
|
136
|
+
},
|
|
137
|
+
[isControlled, props.onChange]
|
|
138
|
+
);
|
|
136
139
|
const isDisabled = disabled || loading;
|
|
137
140
|
const hasInnerText = !!(startContent || endContent);
|
|
138
141
|
const switchElement = /* @__PURE__ */ jsxs(
|
|
139
142
|
"span",
|
|
140
143
|
{
|
|
144
|
+
"data-slot": "root",
|
|
141
145
|
className: cn(
|
|
142
146
|
"relative inline-flex items-center",
|
|
143
147
|
"switch_root",
|
|
@@ -171,9 +175,10 @@ var Switch = React.memo(
|
|
|
171
175
|
"peer-disabled:opacity-50 peer-disabled:cursor-not-allowed",
|
|
172
176
|
"peer-focus-visible:ring-2 peer-focus-visible:ring-offset-2 peer-focus-visible:ring-offset-background",
|
|
173
177
|
trackHeightClasses[size],
|
|
174
|
-
|
|
178
|
+
colorVars[color],
|
|
179
|
+
"bg-border peer-checked:bg-slot peer-focus-visible:ring-slot",
|
|
175
180
|
error && "bg-error/30 peer-checked:bg-error peer-focus-visible:ring-error"
|
|
176
|
-
) : switchTrackVariants({ color, size, hasError: !!error }),
|
|
181
|
+
) : cn(switchTrackVariants({ color, size, hasError: !!error }), "bg-border peer-checked:bg-slot peer-focus-visible:ring-slot"),
|
|
177
182
|
"switch_track",
|
|
178
183
|
classNames?.track,
|
|
179
184
|
className
|
|
@@ -213,7 +218,7 @@ var Switch = React.memo(
|
|
|
213
218
|
"span",
|
|
214
219
|
{
|
|
215
220
|
className: cn(
|
|
216
|
-
"absolute right-0.5 top-1/2 -translate-y-1/2 text-
|
|
221
|
+
"absolute right-0.5 top-1/2 -translate-y-1/2 text-background font-medium transition-opacity",
|
|
217
222
|
trackContentSizeClasses[size],
|
|
218
223
|
currentChecked ? "opacity-0" : "opacity-100"
|
|
219
224
|
),
|
|
@@ -224,7 +229,7 @@ var Switch = React.memo(
|
|
|
224
229
|
"span",
|
|
225
230
|
{
|
|
226
231
|
className: cn(
|
|
227
|
-
"absolute left-0.5 top-1/2 -translate-y-1/2 text-
|
|
232
|
+
"absolute left-0.5 top-1/2 -translate-y-1/2 text-background font-medium transition-opacity",
|
|
228
233
|
trackContentSizeClasses[size],
|
|
229
234
|
currentChecked ? "opacity-100" : "opacity-0"
|
|
230
235
|
),
|
|
@@ -324,5 +329,5 @@ Switch.displayName = "Switch";
|
|
|
324
329
|
var switch_default = Switch;
|
|
325
330
|
|
|
326
331
|
export { switch_default };
|
|
327
|
-
//# sourceMappingURL=chunk-
|
|
328
|
-
//# sourceMappingURL=chunk-
|
|
332
|
+
//# sourceMappingURL=chunk-5MBKTMDW.js.map
|
|
333
|
+
//# sourceMappingURL=chunk-5MBKTMDW.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/switch/index.tsx"],"names":[],"mappings":"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","file":"chunk-5MBKTMDW.js","sourcesContent":["\"use client\";\n\nimport { cva } from \"class-variance-authority\";\nimport { Loader2 } from \"lucide-react\";\nimport React, { useState, useId, useCallback } from \"react\";\n\nimport { cn } from \"../utils\";\nimport { colorVars } from \"../variants\";\nimport type { SwitchProps, SwitchSize } from \"./types\";\n\nconst switchTrackVariants = cva(\n [\n \"relative rounded-full cursor-pointer transition-colors\",\n \"peer-disabled:opacity-50 peer-disabled:cursor-not-allowed\",\n \"peer-focus-visible:ring-2 peer-focus-visible:ring-offset-2 peer-focus-visible:ring-offset-background\",\n ],\n {\n variants: {\n color: colorVars,\n size: {\n xs: \"w-(--switch-width-xs) h-(--switch-height-xs)\",\n sm: \"w-(--switch-width-sm) h-(--switch-height-sm)\",\n md: \"w-(--switch-width-md) h-(--switch-height-md)\",\n lg: \"w-(--switch-width-lg) h-(--switch-height-lg)\",\n },\n hasError: {\n true: \"bg-error/30 peer-checked:bg-error peer-focus-visible:ring-error\",\n false: \"\",\n },\n },\n defaultVariants: {\n color: \"primary\",\n size: \"md\",\n hasError: false,\n },\n },\n);\n\nconst switchThumbVariants = cva(\n \"absolute top-0.5 left-0.5 bg-background rounded-full shadow-sm transition-transform duration-200 ease-in-out flex items-center justify-center\",\n {\n variants: {\n size: {\n xs: \"w-(--switch-thumb-xs) h-(--switch-thumb-xs) peer-checked:translate-x-(--switch-translate-xs)\",\n sm: \"w-(--switch-thumb-sm) h-(--switch-thumb-sm) peer-checked:translate-x-(--switch-translate-sm)\",\n md: \"w-(--switch-thumb-md) h-(--switch-thumb-md) peer-checked:translate-x-(--switch-translate-md)\",\n lg: \"w-(--switch-thumb-lg) h-(--switch-thumb-lg) peer-checked:translate-x-(--switch-translate-lg)\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n },\n);\n\n/**\n * Loader size classes based on switch size\n */\nconst loaderSizeClasses: Record<SwitchSize, string> = {\n xs: \"size-2\",\n sm: \"size-2.5\",\n md: \"size-3\",\n lg: \"size-3.5\",\n};\n\n/**\n * Thumb icon size classes based on switch size\n */\nconst thumbIconSizeClasses: Record<SwitchSize, string> = {\n xs: \"size-2\",\n sm: \"size-2.5\",\n md: \"size-3\",\n lg: \"size-3.5\",\n};\n\n/**\n * Track content size classes\n */\nconst trackContentSizeClasses: Record<SwitchSize, string> = {\n xs: \"text-[7px] px-0.5\",\n sm: \"text-[8px] px-1\",\n md: \"text-[9px] px-1\",\n lg: \"text-[10px] px-1.5\",\n};\n\n/** Thumb size in px for auto-width calculation */\nconst thumbSizePx: Record<SwitchSize, number> = {\n xs: 10,\n sm: 12,\n md: 16,\n lg: 20,\n};\n\n/** Track height classes (without width, for auto-width mode) */\nconst trackHeightClasses: Record<SwitchSize, string> = {\n xs: \"h-(--switch-height-xs)\",\n sm: \"h-(--switch-height-sm)\",\n md: \"h-(--switch-height-md)\",\n lg: \"h-(--switch-height-lg)\",\n};\n\n/** Thumb size classes (without translate, for auto-width mode) */\nconst thumbSizeOnlyClasses: Record<SwitchSize, string> = {\n xs: \"w-(--switch-thumb-xs) h-(--switch-thumb-xs)\",\n sm: \"w-(--switch-thumb-sm) h-(--switch-thumb-sm)\",\n md: \"w-(--switch-thumb-md) h-(--switch-thumb-md)\",\n lg: \"w-(--switch-thumb-lg) h-(--switch-thumb-lg)\",\n};\n\n/** Font classes for auto-width sizing (no padding) */\nconst trackContentFontClasses: Record<SwitchSize, string> = {\n xs: \"text-[7px]\",\n sm: \"text-[8px]\",\n md: \"text-[9px]\",\n lg: \"text-[10px]\",\n};\n\n/** Content padding per side in px (matches trackContentSizeClasses) */\nconst contentPadPx: Record<SwitchSize, number> = {\n xs: 2,\n sm: 4,\n md: 4,\n lg: 6,\n};\n\nconst Switch = React.memo<SwitchProps>(\n ({\n color = \"primary\",\n size = \"md\",\n label,\n labelPosition = \"right\",\n helperText,\n error,\n loading = false,\n thumbIcon,\n startContent,\n endContent,\n required,\n labelClassName,\n className,\n classNames,\n disabled,\n checked,\n defaultChecked,\n ref,\n ...props\n }) => {\n const id = useId();\n const inputId = props.id || id;\n const helperId = `switch-helper-${id}`;\n const hasHelperText = !!(helperText || error);\n\n // Handle uncontrolled mode\n const [internalChecked, setInternalChecked] = useState(\n defaultChecked ?? false,\n );\n const isControlled = checked !== undefined;\n const currentChecked = isControlled ? checked : internalChecked;\n\n const handleChange = useCallback(\n (e: React.ChangeEvent<HTMLInputElement>) => {\n if (!isControlled) {\n setInternalChecked(e.target.checked);\n }\n props.onChange?.(e);\n },\n [isControlled, props.onChange],\n );\n\n const isDisabled = disabled || loading;\n const hasInnerText = !!(startContent || endContent);\n\n const switchElement = (\n <span\n data-slot=\"root\"\n className={cn(\n \"relative inline-flex items-center\",\n \"switch_root\",\n classNames?.root,\n )}\n >\n <input\n ref={ref}\n type=\"checkbox\"\n className=\"peer sr-only\"\n role=\"switch\"\n aria-checked={currentChecked}\n aria-invalid={!!error || undefined}\n aria-describedby={hasHelperText ? helperId : undefined}\n required={required}\n {...props}\n id={inputId}\n disabled={isDisabled}\n checked={currentChecked}\n onChange={handleChange}\n />\n <span\n className={cn(\n hasInnerText\n ? cn(\n \"relative inline-flex rounded-full cursor-pointer transition-colors\",\n \"peer-disabled:opacity-50 peer-disabled:cursor-not-allowed\",\n \"peer-focus-visible:ring-2 peer-focus-visible:ring-offset-2 peer-focus-visible:ring-offset-background\",\n trackHeightClasses[size],\n colorVars[color],\n \"bg-border peer-checked:bg-slot peer-focus-visible:ring-slot\",\n error &&\n \"bg-error/30 peer-checked:bg-error peer-focus-visible:ring-error\",\n )\n : cn(switchTrackVariants({ color, size, hasError: !!error }), \"bg-border peer-checked:bg-slot peer-focus-visible:ring-slot\"),\n \"switch_track\",\n classNames?.track,\n className,\n )}\n >\n {/* Auto-width sizing grid (invisible, determines track width) */}\n {hasInnerText && (\n <span className=\"inline-grid\" aria-hidden=\"true\">\n {startContent != null && (\n <span\n className={cn(\n \"col-start-1 row-start-1 invisible whitespace-nowrap font-medium\",\n trackContentFontClasses[size],\n )}\n style={{\n paddingLeft:\n thumbSizePx[size] + 4 + contentPadPx[size],\n paddingRight: contentPadPx[size] + 2,\n }}\n >\n {startContent}\n </span>\n )}\n {endContent != null && (\n <span\n className={cn(\n \"col-start-1 row-start-1 invisible whitespace-nowrap font-medium\",\n trackContentFontClasses[size],\n )}\n style={{\n paddingLeft: contentPadPx[size] + 2,\n paddingRight:\n thumbSizePx[size] + 4 + contentPadPx[size],\n }}\n >\n {endContent}\n </span>\n )}\n </span>\n )}\n {/* Track content - start (visible when unchecked) */}\n {startContent && (\n <span\n className={cn(\n \"absolute right-0.5 top-1/2 -translate-y-1/2 text-background font-medium transition-opacity\",\n trackContentSizeClasses[size],\n currentChecked ? \"opacity-0\" : \"opacity-100\",\n )}\n >\n {startContent}\n </span>\n )}\n {/* Track content - end (visible when checked) */}\n {endContent && (\n <span\n className={cn(\n \"absolute left-0.5 top-1/2 -translate-y-1/2 text-background font-medium transition-opacity\",\n trackContentSizeClasses[size],\n currentChecked ? \"opacity-100\" : \"opacity-0\",\n )}\n >\n {endContent}\n </span>\n )}\n </span>\n\n {/* Thumb */}\n <span\n className={cn(\n hasInnerText\n ? cn(\n \"absolute top-0.5 bg-background rounded-full shadow-sm transition-[left] duration-200 ease-in-out flex items-center justify-center\",\n thumbSizeOnlyClasses[size],\n )\n : switchThumbVariants({ size }),\n \"switch_thumb\",\n classNames?.thumb,\n )}\n style={\n hasInnerText\n ? {\n left: currentChecked\n ? `calc(100% - ${thumbSizePx[size] + 2}px)`\n : \"2px\",\n }\n : undefined\n }\n >\n {loading ? (\n <Loader2\n className={cn(\n \"animate-spin text-text-secondary\",\n loaderSizeClasses[size],\n )}\n />\n ) : thumbIcon ? (\n <span\n className={cn(\n \"flex items-center justify-center text-text-secondary\",\n thumbIconSizeClasses[size],\n )}\n >\n {thumbIcon}\n </span>\n ) : null}\n </span>\n </span>\n );\n\n // Switch with label and/or helper/error text\n return (\n <div className=\"w-full\">\n <label\n htmlFor={inputId}\n className={cn(\n \"inline-flex items-center gap-2\",\n !isDisabled && \"cursor-pointer\",\n labelPosition === \"left\" && \"flex-row-reverse\",\n )}\n >\n {switchElement}\n {label && (\n <span\n className={cn(\n \"text-sm text-text-primary select-none\",\n error && \"text-error\",\n isDisabled && \"opacity-50\",\n \"switch_label\",\n classNames?.label,\n labelClassName,\n )}\n >\n {label}\n {required && (\n <span className=\"text-error ml-0.5\" aria-hidden=\"true\">\n *\n </span>\n )}\n </span>\n )}\n </label>\n {(helperText || error) && (\n <p\n id={helperId}\n className={cn(\n \"mt-1 text-xs\",\n labelPosition === \"left\" ? \"text-right\" : \"text-left\",\n error ? \"text-error\" : \"text-text-secondary\",\n \"switch_description\",\n classNames?.description,\n )}\n >\n {error || helperText}\n </p>\n )}\n </div>\n );\n },\n);\n\nSwitch.displayName = \"Switch\";\n\nexport type * from \"./types\";\nexport default Switch;\n"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { cn } from './chunk-
|
|
1
|
+
import { colorVars } from './chunk-G6QIIWKU.js';
|
|
2
|
+
import { cn } from './chunk-RAS6HUEI.js';
|
|
3
3
|
import { cva } from 'class-variance-authority';
|
|
4
4
|
import React from 'react';
|
|
5
5
|
import { jsx } from 'react/jsx-runtime';
|
|
@@ -9,20 +9,11 @@ var kbdVariants = cva(
|
|
|
9
9
|
{
|
|
10
10
|
variants: {
|
|
11
11
|
variant: {
|
|
12
|
-
solid: "",
|
|
13
|
-
outline: "",
|
|
14
|
-
soft: ""
|
|
15
|
-
},
|
|
16
|
-
color: {
|
|
17
|
-
default: "",
|
|
18
|
-
primary: "",
|
|
19
|
-
secondary: "",
|
|
20
|
-
accent: "",
|
|
21
|
-
success: "",
|
|
22
|
-
error: "",
|
|
23
|
-
warning: "",
|
|
24
|
-
info: ""
|
|
12
|
+
solid: "bg-slot border border-slot text-slot-fg",
|
|
13
|
+
outline: "bg-background border border-slot text-slot",
|
|
14
|
+
soft: "bg-slot-10 border border-slot-20 text-slot"
|
|
25
15
|
},
|
|
16
|
+
color: colorVars,
|
|
26
17
|
size: {
|
|
27
18
|
xs: "h-3.5 p-0.5 text-[9px]",
|
|
28
19
|
sm: "h-4 p-0.5 text-xs",
|
|
@@ -30,11 +21,6 @@ var kbdVariants = cva(
|
|
|
30
21
|
lg: "h-5 px-2 text-sm"
|
|
31
22
|
}
|
|
32
23
|
},
|
|
33
|
-
compoundVariants: createKbdColorVariants(componentColors, [
|
|
34
|
-
"solid",
|
|
35
|
-
"outline",
|
|
36
|
-
"soft"
|
|
37
|
-
]),
|
|
38
24
|
defaultVariants: {
|
|
39
25
|
variant: "outline",
|
|
40
26
|
color: "default",
|
|
@@ -71,5 +57,5 @@ Kbd.displayName = "Kbd";
|
|
|
71
57
|
var kbd_default = Kbd;
|
|
72
58
|
|
|
73
59
|
export { kbd_default };
|
|
74
|
-
//# sourceMappingURL=chunk-
|
|
75
|
-
//# sourceMappingURL=chunk-
|
|
60
|
+
//# sourceMappingURL=chunk-5SEVPU6C.js.map
|
|
61
|
+
//# sourceMappingURL=chunk-5SEVPU6C.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/kbd/index.tsx"],"names":[],"mappings":";;;;;;AASA,IAAM,WAAA,GAAc,GAAA;AAAA,EAClB,4JAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,OAAA,EAAS;AAAA,QACP,KAAA,EAAO,yCAAA;AAAA,QACP,OAAA,EAAS,4CAAA;AAAA,QACT,IAAA,EAAM;AAAA,OACR;AAAA,MACA,KAAA,EAAO,SAAA;AAAA,MACP,IAAA,EAAM;AAAA,QACJ,EAAA,EAAI,wBAAA;AAAA,QACJ,EAAA,EAAI,mBAAA;AAAA,QACJ,EAAA,EAAI,sBAAA;AAAA,QACJ,EAAA,EAAI;AAAA;AACN,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,OAAA,EAAS,SAAA;AAAA,MACT,KAAA,EAAO,SAAA;AAAA,MACP,IAAA,EAAM;AAAA;AACR;AAEJ,CAAA;AAEA,IAAM,MAAM,KAAA,CAAM,IAAA;AAAA,EAChB,CAAC;AAAA,IACC,OAAA,GAAU,SAAA;AAAA,IACV,KAAA,GAAQ,SAAA;AAAA,IACR,IAAA,GAAO,IAAA;AAAA,IACP,SAAA;AAAA,IACA,QAAA;AAAA,IACA,GAAG;AAAA,GACL,KAAM;AACJ,IAAA,uBACE,GAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,WAAA,EAAU,MAAA;AAAA,QACV,SAAA,EAAW,EAAA;AAAA,UACT,UAAA;AAAA,UACA,WAAA,CAAY,EAAE,OAAA,EAAS,KAAA,EAAO,MAAM,CAAA;AAAA,UACpC,sCAAA;AAAA,UACA;AAAA,SACF;AAAA,QACC,GAAG,KAAA;AAAA,QAEH;AAAA;AAAA,KACH;AAAA,EAEJ;AACF,CAAA;AAEA,GAAA,CAAI,WAAA,GAAc,KAAA;AAGlB,IAAO,WAAA,GAAQ","file":"chunk-5SEVPU6C.js","sourcesContent":["'use client'\n\nimport { cva } from 'class-variance-authority'\nimport React from 'react'\n\nimport { cn } from '../utils'\nimport { colorVars } from '../variants'\nimport type { KbdProps } from './types'\n\nconst kbdVariants = cva(\n 'pointer-events-none min-w-4 min-h-3.5 border inline-flex align-middle w-fit items-center justify-center gap-1 rounded-sm font-sans font-medium select-none',\n {\n variants: {\n variant: {\n solid: 'bg-slot border border-slot text-slot-fg',\n outline: 'bg-background border border-slot text-slot',\n soft: 'bg-slot-10 border border-slot-20 text-slot',\n },\n color: colorVars,\n size: {\n xs: 'h-3.5 p-0.5 text-[9px]',\n sm: 'h-4 p-0.5 text-xs',\n md: 'h-4.5 px-1.5 text-sm',\n lg: 'h-5 px-2 text-sm',\n },\n },\n defaultVariants: {\n variant: 'outline',\n color: 'default',\n size: 'sm',\n },\n },\n)\n\nconst Kbd = React.memo<KbdProps>(\n ({\n variant = 'outline',\n color = 'default',\n size = 'sm',\n className,\n children,\n ...props\n }) => {\n return (\n <kbd\n data-slot=\"root\"\n className={cn(\n 'kbd_root',\n kbdVariants({ variant, color, size }),\n \"[&_svg:not([class*='size-'])]:size-3\",\n className,\n )}\n {...props}\n >\n {children}\n </kbd>\n )\n },\n)\n\nKbd.displayName = 'Kbd'\n\nexport type * from './types'\nexport default Kbd\n"]}
|