@mdigital_ui/ui 0.2.5 → 0.2.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +1023 -341
- package/dist/accordion/index.js +3 -3
- package/dist/avatar/index.js +4 -0
- package/dist/avatar/index.js.map +1 -0
- package/dist/badge/index.js +3 -3
- package/dist/breadcrumbs/index.js +5 -5
- package/dist/button/index.js +4 -4
- package/dist/button-group/index.js +2 -2
- package/dist/card/index.js +2 -2
- package/dist/carousel/index.js +2 -1
- package/dist/cascader/index.js +2 -2
- package/dist/chart/index.js +2 -2
- package/dist/checkbox/index.js +3 -3
- package/dist/checkbox-group/index.js +2 -2
- package/dist/chunk-27QEPVKU.js +115 -0
- package/dist/chunk-27QEPVKU.js.map +1 -0
- package/dist/{chunk-Y5A26EGR.js → chunk-2J57G7XG.js} +82 -24
- package/dist/chunk-2J57G7XG.js.map +1 -0
- package/dist/{chunk-FPOXTCYV.js → chunk-2NYVRAG4.js} +29 -20
- package/dist/chunk-2NYVRAG4.js.map +1 -0
- package/dist/chunk-2OUGJBXK.js +742 -0
- package/dist/chunk-2OUGJBXK.js.map +1 -0
- package/dist/{chunk-ROR4E6IE.js → chunk-2WZVD7P3.js} +38 -12
- package/dist/chunk-2WZVD7P3.js.map +1 -0
- package/dist/chunk-3UCZ4GMN.js +84 -0
- package/dist/chunk-3UCZ4GMN.js.map +1 -0
- package/dist/{chunk-RPAQAZTI.js → chunk-4LSKRZOT.js} +12 -7
- package/dist/chunk-4LSKRZOT.js.map +1 -0
- package/dist/{chunk-ASW7TEAN.js → chunk-4SQOFZ3N.js} +35 -18
- package/dist/chunk-4SQOFZ3N.js.map +1 -0
- package/dist/chunk-5PUATOLR.js +127 -0
- package/dist/chunk-5PUATOLR.js.map +1 -0
- package/dist/chunk-6TMOKYR7.js +75 -0
- package/dist/chunk-6TMOKYR7.js.map +1 -0
- package/dist/chunk-7UCNBMCV.js +261 -0
- package/dist/chunk-7UCNBMCV.js.map +1 -0
- package/dist/chunk-AQYOVYPS.js +237 -0
- package/dist/chunk-AQYOVYPS.js.map +1 -0
- package/dist/{chunk-BP434VYV.js → chunk-C5YO5VZS.js} +17 -17
- package/dist/chunk-C5YO5VZS.js.map +1 -0
- package/dist/{chunk-ZNJ7M5QK.js → chunk-CHGJX5F2.js} +69 -46
- package/dist/chunk-CHGJX5F2.js.map +1 -0
- package/dist/chunk-CK6A2R66.js +336 -0
- package/dist/chunk-CK6A2R66.js.map +1 -0
- package/dist/{chunk-I5ANSIDK.js → chunk-CMGCJXE5.js} +280 -100
- package/dist/chunk-CMGCJXE5.js.map +1 -0
- package/dist/chunk-CSRMVLPR.js +394 -0
- package/dist/chunk-CSRMVLPR.js.map +1 -0
- package/dist/chunk-DH7R6NBG.js +107 -0
- package/dist/chunk-DH7R6NBG.js.map +1 -0
- package/dist/{chunk-XMAH5PDW.js → chunk-FEMHXG2P.js} +28 -11
- package/dist/chunk-FEMHXG2P.js.map +1 -0
- package/dist/chunk-FIGSNRWY.js +382 -0
- package/dist/chunk-FIGSNRWY.js.map +1 -0
- package/dist/{chunk-C7SXY3ZV.js → chunk-FVTMKQUE.js} +5 -3
- package/dist/chunk-FVTMKQUE.js.map +1 -0
- package/dist/{chunk-UAMFKX6L.js → chunk-GBVIACYQ.js} +103 -42
- package/dist/chunk-GBVIACYQ.js.map +1 -0
- package/dist/chunk-H47C2ENJ.js +215 -0
- package/dist/chunk-H47C2ENJ.js.map +1 -0
- package/dist/chunk-HWFI4GJE.js +130 -0
- package/dist/chunk-HWFI4GJE.js.map +1 -0
- package/dist/chunk-IA42ELUP.js +72 -0
- package/dist/chunk-IA42ELUP.js.map +1 -0
- package/dist/{chunk-HUVXKOJC.js → chunk-INQI3UUI.js} +80 -22
- package/dist/chunk-INQI3UUI.js.map +1 -0
- package/dist/{chunk-BNILRB4T.js → chunk-J525ROGL.js} +12 -7
- package/dist/chunk-J525ROGL.js.map +1 -0
- package/dist/chunk-JLS4MBHN.js +205 -0
- package/dist/chunk-JLS4MBHN.js.map +1 -0
- package/dist/{chunk-SK5ECBBK.js → chunk-KTHWXHDN.js} +15 -6
- package/dist/chunk-KTHWXHDN.js.map +1 -0
- package/dist/{chunk-SOV4PE3P.js → chunk-LMR7TKDJ.js} +25 -7
- package/dist/chunk-LMR7TKDJ.js.map +1 -0
- package/dist/{chunk-NNSS366W.js → chunk-MRFCITKK.js} +53 -11
- package/dist/chunk-MRFCITKK.js.map +1 -0
- package/dist/chunk-MXDTUN3V.js +459 -0
- package/dist/chunk-MXDTUN3V.js.map +1 -0
- package/dist/{chunk-YNNAOXU5.js → chunk-NGYLRX6F.js} +3 -18
- package/dist/chunk-NGYLRX6F.js.map +1 -0
- package/dist/chunk-NTPWR57C.js +445 -0
- package/dist/chunk-NTPWR57C.js.map +1 -0
- package/dist/chunk-OWXQ45GS.js +276 -0
- package/dist/chunk-OWXQ45GS.js.map +1 -0
- package/dist/{chunk-75XESYGN.js → chunk-P6A75RAH.js} +7 -13
- package/dist/chunk-P6A75RAH.js.map +1 -0
- package/dist/{chunk-RMGIO27V.js → chunk-PXOHJJBE.js} +39 -10
- package/dist/chunk-PXOHJJBE.js.map +1 -0
- package/dist/{chunk-SAVE5ACL.js → chunk-Q57THXIU.js} +28 -10
- package/dist/chunk-Q57THXIU.js.map +1 -0
- package/dist/{chunk-J3G5WWGR.js → chunk-QDHGE7IF.js} +7 -15
- package/dist/chunk-QDHGE7IF.js.map +1 -0
- package/dist/{chunk-7PKVBUGL.js → chunk-QKSDVYKF.js} +4 -4
- package/dist/chunk-QKSDVYKF.js.map +1 -0
- package/dist/chunk-ROA7BYGB.js +123 -0
- package/dist/chunk-ROA7BYGB.js.map +1 -0
- package/dist/{chunk-DPOSWW22.js → chunk-RPIJ2KY7.js} +11 -4
- package/dist/chunk-RPIJ2KY7.js.map +1 -0
- package/dist/{chunk-R225A5II.js → chunk-RW4RW4DV.js} +80 -30
- package/dist/chunk-RW4RW4DV.js.map +1 -0
- package/dist/chunk-RYKVZFGB.js +607 -0
- package/dist/chunk-RYKVZFGB.js.map +1 -0
- package/dist/chunk-SAVEKACZ.js +552 -0
- package/dist/chunk-SAVEKACZ.js.map +1 -0
- package/dist/chunk-SDNT2JGC.js +143 -0
- package/dist/chunk-SDNT2JGC.js.map +1 -0
- package/dist/{chunk-DOKTHDG3.js → chunk-SGRACNBP.js} +12 -7
- package/dist/chunk-SGRACNBP.js.map +1 -0
- package/dist/{chunk-OALOWWO7.js → chunk-TTEBZZ3T.js} +55 -42
- package/dist/chunk-TTEBZZ3T.js.map +1 -0
- package/dist/{chunk-FCMVKFVV.js → chunk-US4ZCMNU.js} +26 -20
- package/dist/chunk-US4ZCMNU.js.map +1 -0
- package/dist/chunk-UUP7YGOS.js +299 -0
- package/dist/chunk-UUP7YGOS.js.map +1 -0
- package/dist/{chunk-QPJL66S7.js → chunk-VUBU7Y4F.js} +123 -55
- package/dist/chunk-VUBU7Y4F.js.map +1 -0
- package/dist/chunk-WUBMNJGC.js +141 -0
- package/dist/chunk-WUBMNJGC.js.map +1 -0
- package/dist/chunk-WVG3QQDN.js +283 -0
- package/dist/chunk-WVG3QQDN.js.map +1 -0
- package/dist/chunk-WZ2KDHFP.js +109 -0
- package/dist/chunk-WZ2KDHFP.js.map +1 -0
- package/dist/{chunk-FGWSUPVW.js → chunk-X5SCI7KH.js} +190 -137
- package/dist/chunk-X5SCI7KH.js.map +1 -0
- package/dist/{chunk-D3JWPGCA.js → chunk-XJCWPPMM.js} +10 -56
- package/dist/chunk-XJCWPPMM.js.map +1 -0
- package/dist/{chunk-LEKLQR4I.js → chunk-YAAV7FQG.js} +70 -45
- package/dist/chunk-YAAV7FQG.js.map +1 -0
- package/dist/chunk-YOG5GXIC.js +196 -0
- package/dist/chunk-YOG5GXIC.js.map +1 -0
- package/dist/chunk-Z5VJ6MJP.js +234 -0
- package/dist/chunk-Z5VJ6MJP.js.map +1 -0
- package/dist/{chunk-267WNY3E.js → chunk-ZC3E3PWH.js} +109 -73
- package/dist/chunk-ZC3E3PWH.js.map +1 -0
- package/dist/clipboard/index.js +2 -2
- package/dist/collapse/index.js +2 -2
- package/dist/command/index.js +3 -3
- package/dist/context-menu/index.js +4 -0
- package/dist/context-menu/index.js.map +1 -0
- package/dist/date-picker/index.js +4 -3
- package/dist/descriptions/index.js +2 -2
- package/dist/divider/index.js +4 -0
- package/dist/divider/index.js.map +1 -0
- package/dist/drawer/index.js +2 -2
- package/dist/dropdown/index.js +4 -3
- package/dist/empty/index.js +2 -2
- package/dist/fetching-overlay/index.js +4 -3
- package/dist/grid/index.js +2 -2
- package/dist/image/index.js +2 -2
- package/dist/index.d.ts +2494 -211
- package/dist/index.js +63 -186
- package/dist/index.js.map +1 -1
- package/dist/input/index.js +4 -3
- package/dist/input-group/index.js +2 -2
- package/dist/input-otp/index.js +2 -2
- package/dist/input-password/index.js +5 -4
- package/dist/kbd/index.js +3 -2
- package/dist/modal/index.js +2 -2
- package/dist/multi-select/index.js +4 -3
- package/dist/notification/index.js +3 -2
- package/dist/pagination/index.js +2 -2
- package/dist/popover/index.js +3 -2
- package/dist/progress/index.js +2 -2
- package/dist/radio/index.js +3 -2
- package/dist/radio-group/index.js +2 -2
- package/dist/rating/index.js +2 -2
- package/dist/ribbon/index.js +2 -2
- package/dist/select/index.js +5 -4
- package/dist/skeleton/index.js +3 -2
- package/dist/slider/index.js +2 -2
- package/dist/spinner/index.js +3 -2
- package/dist/stepper/index.js +2 -2
- package/dist/styles/base.css +2165 -1375
- package/dist/styles/global.css +2393 -1036
- package/dist/styles/themes/dark.css +3 -1
- package/dist/styles/themes/light.css +3 -1
- package/dist/styles/themes/presets/corporate.css +126 -0
- package/dist/styles/themes/presets/minimal.css +126 -0
- package/dist/styles/themes/presets/vibrant.css +126 -0
- package/dist/switch/index.js +3 -2
- package/dist/table/index.js +10 -10
- package/dist/tabs/index.js +3 -3
- package/dist/tag/index.js +5 -0
- package/dist/tag/index.js.map +1 -0
- package/dist/textarea/index.js +2 -2
- package/dist/theme/index.js +3 -0
- package/dist/theme/index.js.map +1 -0
- package/dist/toggle/index.js +2 -2
- package/dist/toggle-group/index.js +2 -2
- package/dist/tooltip/index.js +3 -2
- package/dist/transfer/index.js +4 -4
- package/dist/tree/index.js +2 -2
- package/dist/tree-select/index.js +5 -4
- package/dist/upload/index.js +2 -2
- package/package.json +460 -70
- package/dist/chunk-267WNY3E.js.map +0 -1
- package/dist/chunk-2EKAF6EJ.js +0 -128
- package/dist/chunk-2EKAF6EJ.js.map +0 -1
- package/dist/chunk-3PFA3YG6.js +0 -228
- package/dist/chunk-3PFA3YG6.js.map +0 -1
- package/dist/chunk-56IXGP5C.js +0 -56
- package/dist/chunk-56IXGP5C.js.map +0 -1
- package/dist/chunk-5UEWVFF6.js +0 -212
- package/dist/chunk-5UEWVFF6.js.map +0 -1
- package/dist/chunk-6V5I5HJ2.js +0 -39
- package/dist/chunk-6V5I5HJ2.js.map +0 -1
- package/dist/chunk-75XESYGN.js.map +0 -1
- package/dist/chunk-7PKVBUGL.js.map +0 -1
- package/dist/chunk-ASW7TEAN.js.map +0 -1
- package/dist/chunk-AWPKZYHT.js +0 -152
- package/dist/chunk-AWPKZYHT.js.map +0 -1
- package/dist/chunk-BFO3ARVJ.js +0 -104
- package/dist/chunk-BFO3ARVJ.js.map +0 -1
- package/dist/chunk-BNILRB4T.js.map +0 -1
- package/dist/chunk-BP434VYV.js.map +0 -1
- package/dist/chunk-C3MX5EXL.js +0 -95
- package/dist/chunk-C3MX5EXL.js.map +0 -1
- package/dist/chunk-C7SXY3ZV.js.map +0 -1
- package/dist/chunk-D3JWPGCA.js.map +0 -1
- package/dist/chunk-DOKTHDG3.js.map +0 -1
- package/dist/chunk-DPOSWW22.js.map +0 -1
- package/dist/chunk-FCMVKFVV.js.map +0 -1
- package/dist/chunk-FGWSUPVW.js.map +0 -1
- package/dist/chunk-FPOXTCYV.js.map +0 -1
- package/dist/chunk-FYHQDFKE.js +0 -164
- package/dist/chunk-FYHQDFKE.js.map +0 -1
- package/dist/chunk-G6TAVRTJ.js +0 -640
- package/dist/chunk-G6TAVRTJ.js.map +0 -1
- package/dist/chunk-GEWR5ROK.js +0 -102
- package/dist/chunk-GEWR5ROK.js.map +0 -1
- package/dist/chunk-HUVXKOJC.js.map +0 -1
- package/dist/chunk-I5ANSIDK.js.map +0 -1
- package/dist/chunk-J3G5WWGR.js.map +0 -1
- package/dist/chunk-JLTDJ3VZ.js +0 -452
- package/dist/chunk-JLTDJ3VZ.js.map +0 -1
- package/dist/chunk-KBCBVH7B.js +0 -51
- package/dist/chunk-KBCBVH7B.js.map +0 -1
- package/dist/chunk-KNQ7UQ2W.js +0 -143
- package/dist/chunk-KNQ7UQ2W.js.map +0 -1
- package/dist/chunk-KTAIRCOL.js +0 -100
- package/dist/chunk-KTAIRCOL.js.map +0 -1
- package/dist/chunk-LEKLQR4I.js.map +0 -1
- package/dist/chunk-MLDX3Z67.js +0 -470
- package/dist/chunk-MLDX3Z67.js.map +0 -1
- package/dist/chunk-NNSS366W.js.map +0 -1
- package/dist/chunk-OALOWWO7.js.map +0 -1
- package/dist/chunk-OOS3B7YZ.js +0 -94
- package/dist/chunk-OOS3B7YZ.js.map +0 -1
- package/dist/chunk-OQANRZPV.js +0 -197
- package/dist/chunk-OQANRZPV.js.map +0 -1
- package/dist/chunk-OW5A5IIF.js +0 -175
- package/dist/chunk-OW5A5IIF.js.map +0 -1
- package/dist/chunk-QPJL66S7.js.map +0 -1
- package/dist/chunk-R225A5II.js.map +0 -1
- package/dist/chunk-RMGIO27V.js.map +0 -1
- package/dist/chunk-ROR4E6IE.js.map +0 -1
- package/dist/chunk-RPAQAZTI.js.map +0 -1
- package/dist/chunk-S5XJXU52.js +0 -178
- package/dist/chunk-S5XJXU52.js.map +0 -1
- package/dist/chunk-SAVE5ACL.js.map +0 -1
- package/dist/chunk-SK5ECBBK.js.map +0 -1
- package/dist/chunk-SOV4PE3P.js.map +0 -1
- package/dist/chunk-UAMFKX6L.js.map +0 -1
- package/dist/chunk-XMAH5PDW.js.map +0 -1
- package/dist/chunk-XMKNYG7I.js +0 -181
- package/dist/chunk-XMKNYG7I.js.map +0 -1
- package/dist/chunk-Y5A26EGR.js.map +0 -1
- package/dist/chunk-YNNAOXU5.js.map +0 -1
- package/dist/chunk-YZ6V6BQ7.js +0 -134
- package/dist/chunk-YZ6V6BQ7.js.map +0 -1
- package/dist/chunk-YZVSDRJD.js +0 -253
- package/dist/chunk-YZVSDRJD.js.map +0 -1
- package/dist/chunk-ZNJ7M5QK.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/multi-select/utils.ts","../src/multi-select/index.tsx"],"names":[],"mappings":";;;;;;;;AAEO,IAAM,0BAAA,GAA6B,GAAA;AAAA,EACxC,mMAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,MAAA,EAAQ;AAAA,QACN,OAAA,EAAS,eAAA;AAAA,QACT,KAAA,EAAO,cAAA;AAAA,QACP,OAAA,EAAS,gBAAA;AAAA,QACT,IAAA,EAAM,aAAA;AAAA,QACN,OAAA,EAAS;AAAA,OACX;AAAA,MACA,IAAA,EAAM;AAAA,QACJ,EAAA,EAAI,6GAAA;AAAA,QACJ,EAAA,EAAI,6GAAA;AAAA,QACJ,EAAA,EAAI,+GAAA;AAAA,QACJ,EAAA,EAAI;AAAA,OACN;AAAA,MACA,SAAA,EAAW;AAAA,QACT,IAAA,EAAM,QAAA;AAAA,QACN,KAAA,EAAO;AAAA;AACT,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,MAAA,EAAQ,SAAA;AAAA,MACR,IAAA,EAAM,IAAA;AAAA,MACN,SAAA,EAAW;AAAA;AACb;AAEJ,CAAA;AAE2C,GAAA;AAAA,EACzC;AACF;AAEO,IAAM,yBAAA,GAA4B,GAAA;AAAA,EACvC,iEAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,QAAA,EAAU;AAAA,QACR,IAAA,EAAM,wCAAA;AAAA,QACN,KAAA,EAAO;AAAA,OACT;AAAA,MACA,QAAA,EAAU;AAAA,QACR,IAAA,EAAM,+BAAA;AAAA,QACN,KAAA,EAAO;AAAA;AACT,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,QAAA,EAAU,KAAA;AAAA,MACV,QAAA,EAAU;AAAA;AACZ;AAEJ,CAAA;AAEO,IAAM,wBAAA,GAA2B,GAAA;AAAA,EACtC;AACF,CAAA;AC7CA,IAAM,cAAc,KAAA,CAAM,IAAA;AAAA,EACxB,CAAC;AAAA,IACC,IAAA,GAAO,IAAA;AAAA,IACP,KAAA;AAAA,IACA,UAAA;AAAA,IACA,KAAA;AAAA,IACA,OAAA;AAAA,IACA,IAAA;AAAA,IACA,OAAA;AAAA,IACA,UAAU,EAAC;AAAA,IACX,WAAA,GAAc,gBAAA;AAAA,IACd,OAAA,GAAU,KAAA;AAAA,IACV,SAAA,GAAY,IAAA;AAAA,IACZ,eAAA,GAAkB,CAAA;AAAA,IAClB,KAAA;AAAA,IACA,YAAA;AAAA,IACA,QAAA;AAAA,IACA,QAAA;AAAA,IACA,QAAA;AAAA,IACA,SAAA,GAAY,KAAA;AAAA,IACZ,mBAAA,GAAsB,EAAA;AAAA,IACtB,iBAAA,GAAoB,GAAA;AAAA,IACpB,SAAA;AAAA,IACA,GAAA;AAAA,IACA,GAAG;AAAA,GACL,KAAM;AACJ,IAAA,MAAM,CAAC,MAAA,EAAQ,SAAS,CAAA,GAAI,KAAA,CAAM,SAAS,KAAK,CAAA;AAChD,IAAA,MAAM,CAAC,aAAA,EAAe,gBAAgB,CAAA,GAAI,KAAA,CAAM,QAAA;AAAA,MAC9C,gBAAgB;AAAC,KACnB;AACA,IAAA,MAAM,CAAC,UAAA,EAAY,aAAa,CAAA,GAAI,KAAA,CAAM,QAAA;AAAA,MACxC;AAAA,KACF;AACA,IAAA,MAAM,CAAC,WAAA,EAAa,cAAc,CAAA,GAAI,KAAA,CAAM,SAAS,EAAE,CAAA;AACvD,IAAA,MAAM,CAAC,gBAAA,EAAkB,mBAAmB,CAAA,GAAI,KAAA,CAAM,SAAS,EAAE,CAAA;AACjE,IAAA,MAAM,CAAC,iBAAA,EAAmB,oBAAoB,CAAA,GAC5C,KAAA,CAAM,SAAS,eAAe,CAAA;AAChC,IAAA,MAAM,CAAC,YAAA,EAAc,eAAe,CAAA,GAAI,KAAA,CAAM,SAAS,KAAK,CAAA;AAC5D,IAAA,MAAM,CAAC,eAAA,EAAiB,kBAAkB,CAAA,GAAI,KAAA,CAAM,SAAS,KAAK,CAAA;AAElE,IAAA,MAAM,UAAA,GAAa,KAAA,CAAM,MAAA,CAA0B,IAAI,CAAA;AACvD,IAAA,MAAM,QAAA,GAAW,KAAA,CAAM,MAAA,CAAyB,IAAI,CAAA;AACpD,IAAA,MAAM,kBAAA,GAAqB,KAAA,CAAM,MAAA,CAAuB,IAAI,CAAA;AAE5D,IAAA,MAAM,YAAA,GAAe,KAAA,KAAU,MAAA,GAAY,KAAA,GAAQ,aAAA;AAEnD,IAAA,IAAI,MAAA,GAA+D,SAAA;AACnE,IAAA,MAAM,aAAA,GAAgB,KAAA,IAAS,OAAA,IAAW,IAAA,IAAQ,OAAA,IAAW,UAAA;AAE7D,IAAA,IAAI,KAAA,EAAO;AACT,MAAA,MAAA,GAAS,OAAA;AAAA,IACX,WAAW,OAAA,EAAS;AAClB,MAAA,MAAA,GAAS,SAAA;AAAA,IACX,WAAW,OAAA,EAAS;AAClB,MAAA,MAAA,GAAS,SAAA;AAAA,IACX,WAAW,IAAA,EAAM;AACf,MAAA,MAAA,GAAS,MAAA;AAAA,IACX;AAEA,IAAA,MAAM,cAAA,GAAiB,KAAA,CAAM,OAAA,CAAQ,MAAM;AACzC,MAAA,MAAM,SAA8C,EAAC;AACrD,MAAA,MAAM,YAAiC,EAAC;AAExC,MAAA,OAAA,CAAQ,OAAA,CAAQ,CAAC,MAAA,KAAW;AAC1B,QAAA,IAAI,OAAO,KAAA,EAAO;AAChB,UAAA,IAAI,CAAC,MAAA,CAAO,MAAA,CAAO,KAAK,CAAA,EAAG;AACzB,YAAA,MAAA,CAAO,MAAA,CAAO,KAAK,CAAA,GAAI,EAAC;AAAA,UAC1B;AACA,UAAA,MAAA,CAAO,MAAA,CAAO,KAAK,CAAA,CAAG,IAAA,CAAK,MAAM,CAAA;AAAA,QACnC,CAAA,MAAO;AACL,UAAA,SAAA,CAAU,KAAK,MAAM,CAAA;AAAA,QACvB;AAAA,MACF,CAAC,CAAA;AAED,MAAA,OAAO,EAAE,QAAQ,SAAA,EAAU;AAAA,IAC7B,CAAA,EAAG,CAAC,OAAO,CAAC,CAAA;AAEZ,IAAA,MAAM,gBAAA,GAAmB,KAAA,CAAM,OAAA,CAAQ,MAAM;AAC3C,MAAA,MAAM,QAGD,EAAC;AAEN,MAAA,cAAA,CAAe,SAAA,CAAU,OAAA,CAAQ,CAAC,MAAA,KAAW;AAC3C,QAAA,KAAA,CAAM,KAAK,EAAE,IAAA,EAAM,QAAA,EAAU,IAAA,EAAM,QAAQ,CAAA;AAAA,MAC7C,CAAC,CAAA;AAED,MAAA,MAAA,CAAO,OAAA,CAAQ,cAAA,CAAe,MAAM,CAAA,CAAE,OAAA;AAAA,QACpC,CAAC,CAAC,SAAA,EAAW,YAAY,CAAA,KAAM;AAC7B,UAAA,KAAA,CAAM,KAAK,EAAE,IAAA,EAAM,OAAA,EAAS,IAAA,EAAM,WAAW,CAAA;AAC7C,UAAA,YAAA,CAAa,OAAA,CAAQ,CAAC,MAAA,KAAW;AAC/B,YAAA,KAAA,CAAM,KAAK,EAAE,IAAA,EAAM,QAAA,EAAU,IAAA,EAAM,QAAQ,CAAA;AAAA,UAC7C,CAAC,CAAA;AAAA,QACH;AAAA,OACF;AAEA,MAAA,OAAO,KAAA;AAAA,IACT,CAAA,EAAG,CAAC,cAAc,CAAC,CAAA;AAEnB,IAAA,MAAM,eAAA,GAAkB,KAAA,CAAM,OAAA,CAAQ,MAAM;AAC1C,MAAA,IAAI,CAAC,aAAa,OAAO,gBAAA;AAEzB,MAAA,OAAO,gBAAA,CAAiB,MAAA,CAAO,CAAC,IAAA,KAAS;AACvC,QAAA,IAAI,IAAA,CAAK,IAAA,KAAS,OAAA,EAAS,OAAO,IAAA;AAClC,QAAA,MAAM,SAAS,IAAA,CAAK,IAAA;AACpB,QAAA,OAAO,OAAO,KAAA,CAAM,WAAA,GAAc,QAAA,CAAS,WAAA,CAAY,aAAa,CAAA;AAAA,MACtE,CAAC,CAAA;AAAA,IACH,CAAA,EAAG,CAAC,gBAAA,EAAkB,WAAW,CAAC,CAAA;AAElC,IAAA,MAAM,gBAAA,GAAmB,gBAAgB,MAAA,GAAS,mBAAA;AAElD,IAAA,MAAM,cAAc,cAAA,CAAe;AAAA,MACjC,OAAO,eAAA,CAAgB,MAAA;AAAA,MACvB,kBAAkB,MAAM,UAAA;AAAA,MACxB,cAAc,MAAM,EAAA;AAAA,MACpB,OAAA,EAAS;AAAA,KACV,CAAA;AAGD,IAAA,MAAM,cAAA,GAAiB,KAAA,CAAM,MAAA,CAAO,WAAW,CAAA;AAC/C,IAAA,KAAA,CAAM,UAAU,MAAM;AACpB,MAAA,cAAA,CAAe,OAAA,GAAU,WAAA;AAAA,IAC3B,CAAA,EAAG,CAAC,WAAW,CAAC,CAAA;AAEhB,IAAA,MAAM,WAAA,GAAc,WAAA,CAAY,CAAC,IAAA,KAAyB;AACxD,MAAA,IAAI,IAAA,EAAM;AACR,QAAA,aAAA,CAAc,IAAI,CAAA;AAElB,QAAA,kBAAA,CAAmB,OAAA,GAAU,IAAA;AAAA,MAC/B;AAAA,IACF,CAAA,EAAG,EAAE,CAAA;AAEL,IAAA,MAAM,kBAAkB,OAAA,CAAQ,MAAA;AAAA,MAAO,CAAC,GAAA,KACtC,YAAA,CAAa,QAAA,CAAS,IAAI,KAAK;AAAA,KACjC;AAEA,IAAA,MAAM,eAAe,KAAA,CAAM,WAAA;AAAA,MACzB,CAAC,WAAA,KAAwB;AACvB,QAAA,MAAM,QAAA,GAAW,YAAA,CAAa,QAAA,CAAS,WAAW,IAC9C,YAAA,CAAa,MAAA,CAAO,CAAC,CAAA,KAAM,MAAM,WAAW,CAAA,GAC5C,CAAC,GAAG,cAAc,WAAW,CAAA;AAEjC,QAAA,IAAI,UAAU,MAAA,EAAW;AACvB,UAAA,gBAAA,CAAiB,QAAQ,CAAA;AAAA,QAC3B;AACA,QAAA,QAAA,GAAW,QAAQ,CAAA;AACnB,QAAA,mBAAA,CAAoB,EAAE,CAAA;AAAA,MACxB,CAAA;AAAA,MACA,CAAC,KAAA,EAAO,QAAA,EAAU,YAAY;AAAA,KAChC;AAEA,IAAA,MAAM,mBAAmB,KAAA,CAAM,WAAA;AAAA,MAC7B,CAAC,aAAqB,CAAA,KAA8C;AAClE,QAAA,CAAA,CAAE,eAAA,EAAgB;AAClB,QAAA,MAAM,WAAW,YAAA,CAAa,MAAA,CAAO,CAAC,CAAA,KAAM,MAAM,WAAW,CAAA;AAE7D,QAAA,IAAI,UAAU,MAAA,EAAW;AACvB,UAAA,gBAAA,CAAiB,QAAQ,CAAA;AAAA,QAC3B;AACA,QAAA,QAAA,GAAW,QAAQ,CAAA;AAAA,MACrB,CAAA;AAAA,MACA,CAAC,KAAA,EAAO,QAAA,EAAU,YAAY;AAAA,KAChC;AAEA,IAAA,MAAM,cAAc,KAAA,CAAM,WAAA;AAAA,MACxB,CAAC,CAAA,KAAwB;AACvB,QAAA,CAAA,CAAE,eAAA,EAAgB;AAClB,QAAA,IAAI,UAAU,MAAA,EAAW;AACvB,UAAA,gBAAA,CAAiB,EAAE,CAAA;AAAA,QACrB;AACA,QAAA,QAAA,GAAW,EAAE,CAAA;AAAA,MACf,CAAA;AAAA,MACA,CAAC,OAAO,QAAQ;AAAA,KAClB;AAEA,IAAA,MAAM,oBAAoB,KAAA,CAAM,WAAA;AAAA,MAC9B,CAAC,CAAA,KAA2C;AAC1C,QAAA,cAAA,CAAe,CAAA,CAAE,OAAO,KAAK,CAAA;AAC7B,QAAA,IAAI,CAAC,MAAA,EAAQ,SAAA,CAAU,IAAI,CAAA;AAAA,MAC7B,CAAA;AAAA,MACA,CAAC,MAAM;AAAA,KACT;AAEA,IAAA,MAAM,gBAAA,GAAmB,KAAA,CAAM,WAAA,CAAY,MAAM;AAC/C,MAAA,SAAA,CAAU,IAAI,CAAA;AAAA,IAChB,CAAA,EAAG,EAAE,CAAA;AAEL,IAAA,MAAM,gBAAgB,KAAA,CAAM,WAAA;AAAA,MAC1B,CAAC,CAAA,KAA2B;AAC1B,QAAA,IAAI,CAAC,MAAA,IAAU,CAAA,CAAE,GAAA,KAAQ,KAAA,EAAO;AAC9B,UAAA,IAAI,CAAA,CAAE,QAAQ,OAAA,IAAW,CAAA,CAAE,QAAQ,GAAA,IAAO,CAAA,CAAE,QAAQ,WAAA,EAAa;AAC/D,YAAA,CAAA,CAAE,cAAA,EAAe;AACjB,YAAA,SAAA,CAAU,IAAI,CAAA;AAAA,UAChB;AACA,UAAA;AAAA,QACF;AAEA,QAAA,MAAM,oBAAoB,eAAA,CAAgB,MAAA;AAAA,UACxC,CAAC,IAAA,KACC,IAAA,CAAK,SAAS,QAAA,IACd,CAAE,KAAK,IAAA,CAA2B;AAAA,SACtC;AAEA,QAAA,QAAQ,EAAE,GAAA;AAAK,UACb,KAAK,QAAA;AACH,YAAA,CAAA,CAAE,cAAA,EAAe;AACjB,YAAA,SAAA,CAAU,KAAK,CAAA;AACf,YAAA,cAAA,CAAe,EAAE,CAAA;AACjB,YAAA,mBAAA,CAAoB,EAAE,CAAA;AACtB,YAAA,QAAA,CAAS,SAAS,IAAA,EAAK;AACvB,YAAA;AAAA,UAEF,KAAK,WAAA;AACH,YAAA,CAAA,CAAE,cAAA,EAAe;AACjB,YAAA,mBAAA,CAAoB,CAAC,IAAA,KAAS;AAC5B,cAAA,MAAM,YAAY,IAAA,CAAK,GAAA,CAAI,OAAO,CAAA,EAAG,iBAAA,CAAkB,SAAS,CAAC,CAAA;AACjE,cAAA,MAAM,cAAc,eAAA,CAAgB,OAAA;AAAA,gBAClC,kBAAkB,SAAS;AAAA,eAC7B;AACA,cAAA,IAAI,gBAAA,IAAoB,eAAe,OAAA,EAAS;AAC9C,gBAAA,cAAA,CAAe,OAAA,CAAQ,cAAc,WAAA,EAAa;AAAA,kBAChD,KAAA,EAAO;AAAA,iBACR,CAAA;AAAA,cACH;AACA,cAAA,OAAO,SAAA;AAAA,YACT,CAAC,CAAA;AACD,YAAA;AAAA,UAEF,KAAK,SAAA;AACH,YAAA,CAAA,CAAE,cAAA,EAAe;AACjB,YAAA,mBAAA,CAAoB,CAAC,IAAA,KAAS;AAC5B,cAAA,MAAM,SAAA,GAAY,IAAA,CAAK,GAAA,CAAI,IAAA,GAAO,GAAG,CAAC,CAAA;AACtC,cAAA,MAAM,cAAc,eAAA,CAAgB,OAAA;AAAA,gBAClC,kBAAkB,SAAS;AAAA,eAC7B;AACA,cAAA,IAAI,gBAAA,IAAoB,eAAe,OAAA,EAAS;AAC9C,gBAAA,cAAA,CAAe,OAAA,CAAQ,cAAc,WAAA,EAAa;AAAA,kBAChD,KAAA,EAAO;AAAA,iBACR,CAAA;AAAA,cACH;AACA,cAAA,OAAO,SAAA;AAAA,YACT,CAAC,CAAA;AACD,YAAA;AAAA,UAEF,KAAK,OAAA;AACH,YAAA,CAAA,CAAE,cAAA,EAAe;AACjB,YAAA,IACE,gBAAA,IAAoB,CAAA,IACpB,gBAAA,GAAmB,iBAAA,CAAkB,MAAA,EACrC;AACA,cAAA,MAAM,MAAA,GAAS,iBAAA,CAAkB,gBAAgB,CAAA,CAC9C,IAAA;AACH,cAAA,YAAA,CAAa,OAAO,KAAK,CAAA;AAAA,YAC3B;AACA,YAAA;AAAA,UAEF,KAAK,MAAA;AACH,YAAA,CAAA,CAAE,cAAA,EAAe;AACjB,YAAA,mBAAA,CAAoB,CAAC,CAAA;AACrB,YAAA,IAAI,gBAAA,IAAoB,eAAe,OAAA,EAAS;AAC9C,cAAA,cAAA,CAAe,OAAA,CAAQ,cAAc,CAAC,CAAA;AAAA,YACxC;AACA,YAAA;AAAA,UAEF,KAAK,KAAA;AACH,YAAA,CAAA,CAAE,cAAA,EAAe;AACjB,YAAA,mBAAA,CAAoB,iBAAA,CAAkB,SAAS,CAAC,CAAA;AAChD,YAAA,IAAI,gBAAA,IAAoB,eAAe,OAAA,EAAS;AAC9C,cAAA,cAAA,CAAe,OAAA,CAAQ,aAAA,CAAc,eAAA,CAAgB,MAAA,GAAS,CAAC,CAAA;AAAA,YACjE;AACA,YAAA;AAGA;AACJ,MACF,CAAA;AAAA,MACA;AAAA,QACE,MAAA;AAAA,QACA,eAAA;AAAA,QACA,gBAAA;AAAA,QACA,YAAA;AAAA,QACA;AAAA;AACF,KACF;AAEA,IAAA,MAAM,qBAAqB,KAAA,CAAM,WAAA;AAAA,MAC/B,CAAC,CAAA,KAA6C;AAC5C,QAAA,IAAI,EAAE,GAAA,KAAQ,WAAA,IAAe,CAAC,WAAA,IAAe,YAAA,CAAa,SAAS,CAAA,EAAG;AACpE,UAAA,CAAA,CAAE,cAAA,EAAe;AACjB,UAAA,MAAM,SAAA,GAAY,YAAA,CAAa,YAAA,CAAa,MAAA,GAAS,CAAC,CAAA;AACtD,UAAA,gBAAA,CAAiB,WAAY,CAAC,CAAA;AAAA,QAChC,CAAA,MAAO;AACL,UAAA,aAAA,CAAc,CAAC,CAAA;AAAA,QACjB;AAAA,MACF,CAAA;AAAA,MACA,CAAC,WAAA,EAAa,YAAA,EAAc,gBAAA,EAAkB,aAAa;AAAA,KAC7D;AAEA,IAAA,KAAA,CAAM,UAAU,MAAM;AACpB,MAAA,IAAI,eAAA,CAAgB,MAAA,KAAW,CAAA,IAAK,CAAC,WAAW,OAAA,EAAS;AACvD,QAAA,oBAAA,CAAqB,eAAe,CAAA;AACpC,QAAA;AAAA,MACF;AAEA,MAAA,MAAM,wBAAwB,MAAM;AAClC,QAAA,MAAM,YAAY,UAAA,CAAW,OAAA;AAC7B,QAAA,IAAI,CAAC,SAAA,EAAW;AAEhB,QAAA,MAAM,WAAA,GAAc,SAAA,CAAU,gBAAA,CAAiB,oBAAoB,CAAA;AACnE,QAAA,IAAI,WAAA,CAAY,WAAW,CAAA,EAAG;AAE9B,QAAA,MAAM,iBAAiB,SAAA,CAAU,WAAA;AACjC,QAAA,MAAM,OAAA,GACJ,SAAS,IAAA,GAAO,EAAA,GAAK,SAAS,IAAA,GAAO,EAAA,GAAK,IAAA,KAAS,IAAA,GAAO,EAAA,GAAK,EAAA;AACjE,QAAA,MAAM,YAAA,GAAe,EAAA;AACrB,QAAA,MAAM,GAAA,GAAM,CAAA;AACZ,QAAA,MAAM,kBAAA,GAAqB,EAAA;AAE3B,QAAA,MAAM,cAAA,GAAiB,cAAA,GAAiB,OAAA,GAAU,CAAA,GAAI,YAAA;AACtD,QAAA,IAAI,UAAA,GAAa,CAAA;AACjB,QAAA,IAAI,YAAA,GAAe,CAAA;AAEnB,QAAA,KAAA,IAAS,CAAA,GAAI,CAAA,EAAG,CAAA,GAAI,WAAA,CAAY,QAAQ,CAAA,EAAA,EAAK;AAC3C,UAAA,MAAM,SAAA,GAAY,WAAA,CAAY,CAAC,CAAA,CAAG,uBAAsB,CAAE,KAAA;AAC1D,UAAA,MAAM,aAAA,GACJ,UAAA,GAAa,SAAA,IAAa,YAAA,GAAe,IAAI,GAAA,GAAM,CAAA,CAAA;AAErD,UAAA,MAAM,kBAAA,GAAqB,CAAA,GAAI,WAAA,CAAY,MAAA,GAAS,CAAA;AACpD,UAAA,MAAM,kBAAA,GACJ,aAAA,IAAiB,kBAAA,GAAqB,GAAA,GAAM,kBAAA,GAAqB,CAAA,CAAA;AAEnE,UAAA,IAAI,sBAAsB,cAAA,EAAgB;AACxC,YAAA,UAAA,GAAa,aAAA;AACb,YAAA,YAAA,EAAA;AAAA,UACF,CAAA,MAAO;AACL,YAAA;AAAA,UACF;AAAA,QACF;AAEA,QAAA,oBAAA,CAAqB,IAAA,CAAK,GAAA,CAAI,CAAA,EAAG,YAAY,CAAC,CAAA;AAAA,MAChD,CAAA;AAEA,MAAA,MAAM,SAAA,GAAY,UAAA,CAAW,qBAAA,EAAuB,CAAC,CAAA;AAErD,MAAA,MAAM,cAAA,GAAiB,IAAI,cAAA,CAAe,MAAM;AAC9C,QAAA,qBAAA,EAAsB;AAAA,MACxB,CAAC,CAAA;AAED,MAAA,IAAI,WAAW,OAAA,EAAS;AACtB,QAAA,cAAA,CAAe,OAAA,CAAQ,WAAW,OAAO,CAAA;AAAA,MAC3C;AAEA,MAAA,OAAO,MAAM;AACX,QAAA,YAAA,CAAa,SAAS,CAAA;AACtB,QAAA,cAAA,CAAe,UAAA,EAAW;AAAA,MAC5B,CAAA;AAAA,IACF,CAAA,EAAG,CAAC,eAAA,EAAiB,IAAA,EAAM,eAAe,CAAC,CAAA;AAG3C,IAAA,MAAM,eAAe,KAAA,CAAM,WAAA;AAAA,MACzB,CAAC,CAAA,KAAqC;AACpC,QAAA,MAAM,UAAU,CAAA,CAAE,aAAA;AAClB,QAAA,MAAM,EAAE,SAAA,EAAW,YAAA,EAAc,YAAA,EAAa,GAAI,OAAA;AAElD,QAAA,eAAA,CAAgB,YAAY,CAAC,CAAA;AAC7B,QAAA,kBAAA,CAAmB,SAAA,GAAY,YAAA,GAAe,YAAA,GAAe,CAAC,CAAA;AAAA,MAChE,CAAA;AAAA,MACA;AAAC,KACH;AAGA,IAAA,KAAA,CAAM,UAAU,MAAM;AACpB,MAAA,IAAI,MAAA,EAAQ;AAEV,QAAA,MAAM,SAAA,GAAY,WAAW,MAAM;AACjC,UAAA,MAAM,UAAU,kBAAA,CAAmB,OAAA;AACnC,UAAA,IAAI,OAAA,EAAS;AACX,YAAA,MAAM,EAAE,SAAA,EAAW,YAAA,EAAc,YAAA,EAAa,GAAI,OAAA;AAClD,YAAA,eAAA,CAAgB,YAAY,CAAC,CAAA;AAC7B,YAAA,kBAAA,CAAmB,SAAA,GAAY,YAAA,GAAe,YAAA,GAAe,CAAC,CAAA;AAAA,UAChE;AAAA,QACF,GAAG,EAAE,CAAA;AAEL,QAAA,OAAO,MAAM,aAAa,SAAS,CAAA;AAAA,MACrC,CAAA,MAAO;AACL,QAAA,eAAA,CAAgB,KAAK,CAAA;AACrB,QAAA,kBAAA,CAAmB,KAAK,CAAA;AACxB,QAAA;AAAA,MACF;AAAA,IACF,CAAA,EAAG,CAAC,MAAA,EAAQ,eAAA,EAAiB,gBAAgB,CAAC,CAAA;AAE9C,IAAA,MAAM,iBAAA,GAAoB,sBACxB,IAAA,CAAC,KAAA,EAAA,EAAI,WAAU,UAAA,EAEZ,QAAA,EAAA;AAAA,MAAA,YAAA,oBACC,GAAA,CAAC,SAAI,SAAA,EAAU,kCAAA,EACb,8BAAC,SAAA,EAAA,EAAU,SAAA,EAAU,6BAA4B,CAAA,EACnD,CAAA;AAAA,sBAGF,GAAA;AAAA,QAAC,KAAA;AAAA,QAAA;AAAA,UACC,GAAA,EAAK,kBAAA;AAAA,UACL,SAAA,EAAU,wBAAA;AAAA,UACV,KAAA,EAAO,EAAE,SAAA,EAAW,iBAAA,EAAkB;AAAA,UACtC,IAAA,EAAK,SAAA;AAAA,UACL,iBAAA,EAAiB,QAAQ,mBAAA,GAAsB,MAAA;AAAA,UAC/C,QAAA,EAAU,YAAA;AAAA,UAET,QAAA,EAAA,eAAA,CAAgB,WAAW,CAAA,mBAC1B,GAAA,CAAC,SAAI,SAAA,EAAU,+CAAA,EAAgD,QAAA,EAAA,kBAAA,EAE/D,CAAA,GACE,gBAAA,mBACF,GAAA;AAAA,YAAC,KAAA;AAAA,YAAA;AAAA,cACC,GAAA,EAAK,WAAA;AAAA,cACL,KAAA,EAAO;AAAA,gBACL,MAAA,EAAQ,GAAG,IAAA,CAAK,GAAA,CAAI,YAAY,YAAA,EAAa,EAAG,iBAAiB,CAAC,CAAA,EAAA,CAAA;AAAA,gBAClE,QAAA,EAAU;AAAA,eACZ;AAAA,cACA,QAAA,EAAU,YAAA;AAAA,cAEV,QAAA,kBAAA,GAAA;AAAA,gBAAC,KAAA;AAAA,gBAAA;AAAA,kBACC,KAAA,EAAO;AAAA,oBACL,MAAA,EAAQ,CAAA,EAAG,WAAA,CAAY,YAAA,EAAc,CAAA,EAAA,CAAA;AAAA,oBACrC,KAAA,EAAO,MAAA;AAAA,oBACP,QAAA,EAAU;AAAA,mBACZ;AAAA,kBAEC,QAAA,EAAA,WAAA,CAAY,eAAA,EAAgB,CAAE,GAAA,CAAI,CAAC,WAAA,KAAgB;AAClD,oBAAA,MAAM,IAAA,GAAO,eAAA,CAAgB,WAAA,CAAY,KAAK,CAAA;AAE9C,oBAAA,IAAI,IAAA,EAAM,SAAS,OAAA,EAAS;AAC1B,sBAAA,uBACE,GAAA;AAAA,wBAAC,KAAA;AAAA,wBAAA;AAAA,0BAEC,KAAA,EAAO;AAAA,4BACL,QAAA,EAAU,UAAA;AAAA,4BACV,GAAA,EAAK,CAAA;AAAA,4BACL,IAAA,EAAM,CAAA;AAAA,4BACN,KAAA,EAAO,MAAA;AAAA,4BACP,MAAA,EAAQ,CAAA,EAAG,WAAA,CAAY,IAAI,CAAA,EAAA,CAAA;AAAA,4BAC3B,SAAA,EAAW,CAAA,WAAA,EAAc,WAAA,CAAY,KAAK,CAAA,GAAA;AAAA,2BAC5C;AAAA,0BACA,WAAW,wBAAA,EAAyB;AAAA,0BAEnC,QAAA,EAAA,IAAA,EAAM;AAAA,yBAAA;AAAA,wBAXF,CAAA,MAAA,EAAS,YAAY,KAAK,CAAA;AAAA,uBAYjC;AAAA,oBAEJ;AAEA,oBAAA,MAAM,SAAS,IAAA,EAAM,IAAA;AACrB,oBAAA,MAAM,UAAA,GAAa,YAAA,CAAa,QAAA,CAAS,MAAA,CAAO,KAAK,CAAA;AACrD,oBAAA,MAAM,oBAAoB,eAAA,CAAgB,MAAA;AAAA,sBACxC,CAAC,CAAA,KACC,CAAA,CAAE,SAAS,QAAA,IACX,CAAE,EAAE,IAAA,CAA2B;AAAA,qBACnC;AACA,oBAAA,MAAM,kBAAkB,iBAAA,CAAkB,SAAA;AAAA,sBACxC,CAAC,MAAM,CAAA,KAAM;AAAA,qBACf;AACA,oBAAA,MAAM,gBAAgB,eAAA,KAAoB,gBAAA;AAE1C,oBAAA,uBACE,IAAA;AAAA,sBAAC,KAAA;AAAA,sBAAA;AAAA,wBAEC,KAAA,EAAO;AAAA,0BACL,QAAA,EAAU,UAAA;AAAA,0BACV,GAAA,EAAK,CAAA;AAAA,0BACL,IAAA,EAAM,CAAA;AAAA,0BACN,KAAA,EAAO,MAAA;AAAA,0BACP,MAAA,EAAQ,CAAA,EAAG,WAAA,CAAY,IAAI,CAAA,EAAA,CAAA;AAAA,0BAC3B,SAAA,EAAW,CAAA,WAAA,EAAc,WAAA,CAAY,KAAK,CAAA,GAAA;AAAA,yBAC5C;AAAA,wBACA,SAAA,EAAW,EAAA;AAAA,0BACT,yBAAA,CAA0B;AAAA,4BACxB,QAAA,EAAU,UAAA;AAAA,4BACV,QAAA,EAAU,CAAC,CAAC,MAAA,CAAO;AAAA,2BACpB,CAAA;AAAA,0BACD,aAAA,IAAiB;AAAA,yBACnB;AAAA,wBACA,SAAS,MACP,CAAC,OAAO,QAAA,IAAY,YAAA,CAAa,OAAO,KAAK,CAAA;AAAA,wBAE/C,IAAA,EAAK,QAAA;AAAA,wBACL,eAAA,EAAe,UAAA;AAAA,wBACf,iBAAe,MAAA,CAAO,QAAA;AAAA,wBAErB,QAAA,EAAA;AAAA,0BAAA,MAAA,CAAO,KAAA;AAAA,0BACP,UAAA,oBACC,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,2CAAA,EACd,QAAA,kBAAA,GAAA;AAAA,4BAAC,KAAA;AAAA,4BAAA;AAAA,8BACC,SAAA,EAAW,EAAA,CAAG,cAAA,EAAgB,SAAA,CAAU,IAAI,CAAC;AAAA;AAAA,2BAC/C,EACF;AAAA;AAAA,uBAAA;AAAA,sBA7BG,MAAA,CAAO;AAAA,qBA+Bd;AAAA,kBAEJ,CAAC;AAAA;AAAA;AACH;AAAA,WACF,uBAEC,KAAA,EAAA,EAAI,SAAA,EAAU,QACZ,QAAA,EAAA,eAAA,CAAgB,GAAA,CAAI,CAAC,IAAA,EAAM,KAAA,KAAU;AACpC,YAAA,IAAI,IAAA,CAAK,SAAS,OAAA,EAAS;AACzB,cAAA,uBACE,GAAA;AAAA,gBAAC,KAAA;AAAA,gBAAA;AAAA,kBAEC,WAAW,wBAAA,EAAyB;AAAA,kBAEnC,QAAA,EAAA,IAAA,CAAK;AAAA,iBAAA;AAAA,gBAHD,SAAS,KAAK,CAAA;AAAA,eAIrB;AAAA,YAEJ;AAEA,YAAA,MAAM,SAAS,IAAA,CAAK,IAAA;AACpB,YAAA,MAAM,UAAA,GAAa,YAAA,CAAa,QAAA,CAAS,MAAA,CAAO,KAAK,CAAA;AACrD,YAAA,MAAM,oBAAoB,eAAA,CAAgB,MAAA;AAAA,cACxC,CAAC,CAAA,KACC,CAAA,CAAE,SAAS,QAAA,IACX,CAAE,EAAE,IAAA,CAA2B;AAAA,aACnC;AACA,YAAA,MAAM,kBAAkB,iBAAA,CAAkB,SAAA;AAAA,cACxC,CAAC,MAAM,CAAA,KAAM;AAAA,aACf;AACA,YAAA,MAAM,gBAAgB,eAAA,KAAoB,gBAAA;AAE1C,YAAA,uBACE,IAAA;AAAA,cAAC,KAAA;AAAA,cAAA;AAAA,gBAEC,SAAA,EAAW,EAAA;AAAA,kBACT,yBAAA,CAA0B;AAAA,oBACxB,QAAA,EAAU,UAAA;AAAA,oBACV,QAAA,EAAU,CAAC,CAAC,MAAA,CAAO;AAAA,mBACpB,CAAA;AAAA,kBACD,aAAA,IAAiB;AAAA,iBACnB;AAAA,gBACA,SAAS,MACP,CAAC,OAAO,QAAA,IAAY,YAAA,CAAa,OAAO,KAAK,CAAA;AAAA,gBAE/C,IAAA,EAAK,QAAA;AAAA,gBACL,eAAA,EAAe,UAAA;AAAA,gBACf,iBAAe,MAAA,CAAO,QAAA;AAAA,gBAErB,QAAA,EAAA;AAAA,kBAAA,MAAA,CAAO,KAAA;AAAA,kBACP,UAAA,oBACC,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,2CAAA,EACd,QAAA,kBAAA,GAAA;AAAA,oBAAC,KAAA;AAAA,oBAAA;AAAA,sBACC,SAAA,EAAW,EAAA,CAAG,cAAA,EAAgB,SAAA,CAAU,IAAI,CAAC;AAAA;AAAA,mBAC/C,EACF;AAAA;AAAA,eAAA;AAAA,cArBG,MAAA,CAAO;AAAA,aAuBd;AAAA,UAEJ,CAAC,CAAA,EACH;AAAA;AAAA,OAEJ;AAAA,MAGC,eAAA,wBACE,KAAA,EAAA,EAAI,SAAA,EAAU,oCACb,QAAA,kBAAA,GAAA,CAAC,WAAA,EAAA,EAAY,SAAA,EAAU,2BAAA,EAA4B,CAAA,EACrD;AAAA,KAAA,EAEJ,CAAA;AAIF,IAAA,MAAM,aAAA,mBACJ,IAAA;AAAA,MAAC,QAAA;AAAA,MAAA;AAAA,QACC,GAAA,EAAK,UAAA;AAAA,QACL,IAAA,EAAK,QAAA;AAAA,QACL,SAAA,EAAW,EAAA;AAAA,UACT,0BAAA,CAA2B,EAAE,MAAA,EAAQ,IAAA,EAAM,WAAW,CAAA;AAAA,UACtD,OAAA,IAAW,YAAA;AAAA,UACX;AAAA,SACF;AAAA,QACA,UAAU,QAAA,IAAY,OAAA;AAAA,QACtB,eAAA,EAAc,SAAA;AAAA,QACd,eAAA,EAAe,MAAA;AAAA,QACf,iBAAA,EAAiB,QAAQ,mBAAA,GAAsB,MAAA;AAAA,QAC/C,OAAA,EAAS,MAAM,SAAA,CAAU,CAAC,MAAM,CAAA;AAAA,QAE/B,QAAA,EAAA;AAAA,UAAA,eAAA,CAAgB,MAAA,GAAS,CAAA,oBACxB,IAAA,CAAC,KAAA,EAAA,EAAI,WAAU,0BAAA,EACZ,QAAA,EAAA;AAAA,YAAA,eAAA,CAAgB,MAAM,CAAA,EAAG,iBAAiB,CAAA,CAAE,GAAA,CAAI,CAAC,MAAA,qBAChD,IAAA;AAAA,cAAC,MAAA;AAAA,cAAA;AAAA,gBAEC,SAAA,EAAU,yGAAA;AAAA,gBAET,QAAA,EAAA;AAAA,kBAAA,MAAA,CAAO,KAAA;AAAA,kCACR,GAAA;AAAA,oBAAC,QAAA;AAAA,oBAAA;AAAA,sBACC,IAAA,EAAK,QAAA;AAAA,sBACL,SAAS,CAAC,CAAA,KAAM,gBAAA,CAAiB,MAAA,CAAO,OAAO,CAAC,CAAA;AAAA,sBAChD,SAAA,EAAU,kBAAA;AAAA,sBACV,QAAA;AAAA,sBAEA,QAAA,kBAAA,GAAA,CAAC,CAAA,EAAA,EAAE,SAAA,EAAU,SAAA,EAAU;AAAA;AAAA;AACzB;AAAA,eAAA;AAAA,cAXK,MAAA,CAAO;AAAA,aAaf,CAAA;AAAA,YACA,gBAAgB,MAAA,GAAS,iBAAA,oBACxB,IAAA,CAAC,MAAA,EAAA,EAAK,WAAU,mGAAA,EAAoG,QAAA,EAAA;AAAA,cAAA,GAAA;AAAA,cAChH,gBAAgB,MAAA,GAAS;AAAA,aAAA,EAC7B;AAAA,WAAA,EAEJ,CAAA;AAAA,0BAEF,GAAA;AAAA,YAAC,KAAA;AAAA,YAAA;AAAA,cACC,SAAA,EAAU,0DAAA;AAAA,cACV,aAAA,EAAY,MAAA;AAAA,cAEX,QAAA,EAAA,eAAA,CAAgB,GAAA,CAAI,CAAC,MAAA,qBACpB,IAAA;AAAA,gBAAC,MAAA;AAAA,gBAAA;AAAA,kBAEC,kBAAA,EAAgB,IAAA;AAAA,kBAChB,SAAA,EAAU,yGAAA;AAAA,kBAET,QAAA,EAAA;AAAA,oBAAA,MAAA,CAAO,KAAA;AAAA,oCACR,GAAA,CAAC,CAAA,EAAA,EAAE,SAAA,EAAU,SAAA,EAAU;AAAA;AAAA,iBAAA;AAAA,gBALlB,MAAA,CAAO;AAAA,eAOf;AAAA;AAAA,WACH;AAAA,0BACA,GAAA;AAAA,YAAC,OAAA;AAAA,YAAA;AAAA,cACC,GAAA,EAAK,QAAA;AAAA,cACL,IAAA,EAAK,MAAA;AAAA,cACL,SAAA,EAAU,2GAAA;AAAA,cACV,WAAA,EAAa,eAAA,CAAgB,MAAA,GAAS,CAAA,GAAI,EAAA,GAAK,WAAA;AAAA,cAC/C,KAAA,EAAO,WAAA;AAAA,cACP,QAAA,EAAU,iBAAA;AAAA,cACV,OAAA,EAAS,gBAAA;AAAA,cACT,SAAA,EAAW,kBAAA;AAAA,cACX,UAAU,QAAA,IAAY,OAAA;AAAA,cACtB,UAAU,CAAC,MAAA;AAAA,cACX,QAAA,EAAU;AAAA;AAAA,WACZ;AAAA,0BACA,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,yCAAA,EACZ,oCACC,GAAA,CAAC,OAAA,EAAA,EAAQ,SAAA,EAAW,EAAA,CAAG,gBAAgB,SAAA,CAAU,IAAI,CAAC,CAAA,EAAG,oBAEzD,IAAA,CAAA,QAAA,EAAA,EACG,QAAA,EAAA;AAAA,YAAA,SAAA,IAAa,eAAA,CAAgB,MAAA,GAAS,CAAA,IAAK,CAAC,QAAA,oBAC3C,GAAA;AAAA,cAAC,QAAA;AAAA,cAAA;AAAA,gBACC,IAAA,EAAK,QAAA;AAAA,gBACL,OAAA,EAAS,WAAA;AAAA,gBACT,SAAA,EAAU,2CAAA;AAAA,gBACV,YAAA,EAAW,iBAAA;AAAA,gBAEX,QAAA,kBAAA,GAAA,CAAC,CAAA,EAAA,EAAE,SAAA,EAAW,SAAA,CAAU,IAAI,CAAA,EAAG;AAAA;AAAA,aACjC;AAAA,YAED,MAAA,mBACC,GAAA,CAAC,MAAA,EAAA,EAAO,SAAA,EAAW,SAAA,CAAU,IAAI,CAAA,EAAG,CAAA,mBAEpC,GAAA,CAAC,WAAA,EAAA,EAAY,SAAA,EAAW,SAAA,CAAU,IAAI,CAAA,EAAG;AAAA,WAAA,EAE7C,CAAA,EAEJ;AAAA;AAAA;AAAA,KACF;AAGF,IAAA,MAAM,aAAA,mBACJ,GAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,SAAA,EAAW,EAAA,CAAG,gBAAA,EAAkB,SAAA,GAAY,WAAW,cAAc,CAAA;AAAA,QACrE,GAAA;AAAA,QACC,GAAG,KAAA;AAAA,QAEJ,QAAA,kBAAA,IAAA;AAAA,UAAC,OAAA;AAAA,UAAA;AAAA,YACC,IAAA,EAAM,MAAA;AAAA,YACN,YAAA,EAAc,SAAA;AAAA,YAEd,QAAA,EAAA;AAAA,8BAAA,GAAA,CAAC,cAAA,EAAA,EAAe,OAAA,EAAO,IAAA,EAAE,QAAA,EAAA,aAAA,EAAc,CAAA;AAAA,8BAEvC,GAAA;AAAA,gBAAC,cAAA;AAAA,gBAAA;AAAA,kBACC,SAAA,EAAU,4CAAA;AAAA,kBACV,KAAA,EAAM,OAAA;AAAA,kBACN,UAAA,EAAY,CAAA;AAAA,kBACZ,eAAA,EAAiB,CAAC,CAAA,KAAM;AACtB,oBAAA,CAAA,CAAE,cAAA,EAAe;AACjB,oBAAA,QAAA,CAAS,SAAS,KAAA,EAAM;AAAA,kBAC1B,CAAA;AAAA,kBAEC,QAAA,EAAA,iBAAA;AAAkB;AAAA;AACrB;AAAA;AAAA;AACF;AAAA,KACF;AAGF,IAAA,IAAI,CAAC,KAAA,IAAS,CAAC,aAAA,EAAe,OAAO,aAAA;AAErC,IAAA,uBACE,IAAA,CAAC,SAAI,SAAA,EAAW,EAAA,CAAG,wBAAwB,CAAC,SAAA,IAAa,cAAc,CAAA,EACrE,QAAA,EAAA;AAAA,sBAAA,IAAA,CAAC,KAAA,EAAA,EAAI,WAAU,yBAAA,EACZ,QAAA,EAAA;AAAA,QAAA,KAAA,oBACC,GAAA;AAAA,UAAC,OAAA;AAAA,UAAA;AAAA,YACC,EAAA,EAAG,mBAAA;AAAA,YACH,SAAA,EAAU,cAAA;AAAA,YAEV,QAAA,kBAAA,IAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,qCAAA,EACb,QAAA,EAAA;AAAA,cAAA,KAAA;AAAA,cACA,QAAA,oBAAY,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,mBAAkB,QAAA,EAAA,GAAA,EAAC;AAAA,aAAA,EAClD;AAAA;AAAA,SACF;AAAA,QAED,aAAA,oBACC,GAAA;AAAA,UAAC,GAAA;AAAA,UAAA;AAAA,YACC,SAAA,EAAW,EAAA;AAAA,cACT,SAAA;AAAA,cACA,WAAW,OAAA,IAAW,YAAA;AAAA,cACtB,WAAW,SAAA,IAAa,cAAA;AAAA,cACxB,WAAW,MAAA,IAAU,WAAA;AAAA,cACrB,WAAW,SAAA,IAAa,cAAA;AAAA,cACxB,WAAW,SAAA,IAAa;AAAA,aAC1B;AAAA,YAEC,QAAA,EAAA;AAAA;AAAA;AACH,OAAA,EAEJ,CAAA;AAAA,MACC;AAAA,KAAA,EACH,CAAA;AAAA,EAEJ;AACF,CAAA;AAEA,WAAA,CAAY,WAAA,GAAc,aAAA;AAG1B,IAAO,oBAAA,GAAQ","file":"chunk-267WNY3E.js","sourcesContent":["import { cva } from 'class-variance-authority'\n\nexport const multiSelectTriggerVariants = cva(\n 'w-full flex items-center justify-between rounded-md bg-background text-text-primary border focus:border-primary outline-none disabled:opacity-50 disabled:cursor-not-allowed cursor-pointer gap-1',\n {\n variants: {\n status: {\n default: 'border-border',\n error: 'border-error',\n warning: 'border-warning',\n info: 'border-info',\n success: 'border-success',\n },\n size: {\n xs: 'h-[var(--select-height-xs)] pl-[var(--select-padding-x-xs)] pr-[calc(var(--select-padding-x-xs)*2)] text-xs',\n sm: 'h-[var(--select-height-sm)] pl-[var(--select-padding-x-sm)] pr-[calc(var(--select-padding-x-sm)*2)] text-sm',\n md: 'h-[var(--select-height-md)] pl-[var(--select-padding-x-md)] pr-[calc(var(--select-padding-x-md)*2)] text-base',\n lg: 'h-[var(--select-height-lg)] pl-[var(--select-padding-x-lg)] pr-[calc(var(--select-padding-x-lg)*2)] text-lg',\n },\n fullWidth: {\n true: 'w-full',\n false: 'max-w-full',\n },\n },\n defaultVariants: {\n status: 'default',\n size: 'md',\n fullWidth: true,\n },\n },\n)\n\nexport const multiSelectDropdownVariants = cva(\n 'absolute z-50 mt-1 overflow-auto rounded-md border border-border bg-background',\n)\n\nexport const multiSelectOptionVariants = cva(\n 'relative cursor-pointer select-none px-3 py-2 text-text-primary',\n {\n variants: {\n selected: {\n true: 'bg-primary/10 text-primary font-medium',\n false: 'hover:bg-surface',\n },\n disabled: {\n true: 'opacity-50 cursor-not-allowed',\n false: '',\n },\n },\n defaultVariants: {\n selected: false,\n disabled: false,\n },\n },\n)\n\nexport const multiSelectGroupVariants = cva(\n 'px-3 py-2 text-xs font-semibold text-text-secondary uppercase tracking-wider bg-surface',\n)\n","import { useVirtualizer } from '@tanstack/react-virtual'\nimport { Check, ChevronDown, ChevronUp, Loader2, Search, X } from 'lucide-react'\nimport React, { useCallback } from 'react'\n\nimport { Popover, PopoverContent, PopoverTrigger } from '../popover'\nimport { cn, iconSizes } from '../utils'\nimport type { MultiSelectOption, MultiSelectProps } from './types'\nimport {\n multiSelectGroupVariants,\n multiSelectOptionVariants,\n multiSelectTriggerVariants,\n} from './utils'\n\nconst MultiSelect = React.memo<MultiSelectProps>(\n ({\n size = 'md',\n label,\n helperText,\n error,\n warning,\n info,\n success,\n options = [],\n placeholder = 'Select options',\n loading = false,\n fullWidth = true,\n maxChipsVisible = 3,\n value,\n defaultValue,\n onChange,\n disabled,\n required,\n clearable = false,\n virtualizeThreshold = 50,\n maxDropdownHeight = 300,\n className,\n ref,\n ...props\n }) => {\n const [isOpen, setIsOpen] = React.useState(false)\n const [internalValue, setInternalValue] = React.useState<string[]>(\n defaultValue || [],\n )\n const [parentNode, setParentNode] = React.useState<HTMLDivElement | null>(\n null,\n )\n const [searchQuery, setSearchQuery] = React.useState('')\n const [highlightedIndex, setHighlightedIndex] = React.useState(-1)\n const [visibleChipsCount, setVisibleChipsCount] =\n React.useState(maxChipsVisible)\n const [showTopArrow, setShowTopArrow] = React.useState(false)\n const [showBottomArrow, setShowBottomArrow] = React.useState(false)\n\n const triggerRef = React.useRef<HTMLButtonElement>(null)\n const inputRef = React.useRef<HTMLInputElement>(null)\n const scrollContainerRef = React.useRef<HTMLDivElement>(null)\n\n const currentValue = value !== undefined ? value : internalValue\n\n let status: 'default' | 'error' | 'warning' | 'info' | 'success' = 'default'\n const helperMessage = error || warning || info || success || helperText\n\n if (error) {\n status = 'error'\n } else if (warning) {\n status = 'warning'\n } else if (success) {\n status = 'success'\n } else if (info) {\n status = 'info'\n }\n\n const groupedOptions = React.useMemo(() => {\n const groups: Record<string, MultiSelectOption[]> = {}\n const ungrouped: MultiSelectOption[] = []\n\n options.forEach((option) => {\n if (option.group) {\n if (!groups[option.group]) {\n groups[option.group] = []\n }\n groups[option.group]!.push(option)\n } else {\n ungrouped.push(option)\n }\n })\n\n return { groups, ungrouped }\n }, [options])\n\n const flattenedOptions = React.useMemo(() => {\n const items: Array<{\n type: 'option' | 'group'\n data: MultiSelectOption | string\n }> = []\n\n groupedOptions.ungrouped.forEach((option) => {\n items.push({ type: 'option', data: option })\n })\n\n Object.entries(groupedOptions.groups).forEach(\n ([groupName, groupOptions]) => {\n items.push({ type: 'group', data: groupName })\n groupOptions.forEach((option) => {\n items.push({ type: 'option', data: option })\n })\n },\n )\n\n return items\n }, [groupedOptions])\n\n const filteredOptions = React.useMemo(() => {\n if (!searchQuery) return flattenedOptions\n\n return flattenedOptions.filter((item) => {\n if (item.type === 'group') return true\n const option = item.data as MultiSelectOption\n return option.label.toLowerCase().includes(searchQuery.toLowerCase())\n })\n }, [flattenedOptions, searchQuery])\n\n const shouldVirtualize = filteredOptions.length > virtualizeThreshold\n\n const virtualizer = useVirtualizer({\n count: filteredOptions.length,\n getScrollElement: () => parentNode,\n estimateSize: () => 40,\n enabled: shouldVirtualize,\n })\n\n // Store virtualizer in ref to avoid recreating handleKeyDown on every render\n const virtualizerRef = React.useRef(virtualizer)\n React.useEffect(() => {\n virtualizerRef.current = virtualizer\n }, [virtualizer])\n\n const refCallback = useCallback((node: HTMLDivElement) => {\n if (node) {\n setParentNode(node)\n // Also set as scroll container for virtualized lists\n scrollContainerRef.current = node\n }\n }, [])\n\n const selectedOptions = options.filter((opt) =>\n currentValue.includes(opt.value),\n )\n\n const handleSelect = React.useCallback(\n (optionValue: string) => {\n const newValue = currentValue.includes(optionValue)\n ? currentValue.filter((v) => v !== optionValue)\n : [...currentValue, optionValue]\n\n if (value === undefined) {\n setInternalValue(newValue)\n }\n onChange?.(newValue)\n setHighlightedIndex(-1)\n },\n [value, onChange, currentValue],\n )\n\n const handleRemoveChip = React.useCallback(\n (optionValue: string, e: React.MouseEvent | React.KeyboardEvent) => {\n e.stopPropagation()\n const newValue = currentValue.filter((v) => v !== optionValue)\n\n if (value === undefined) {\n setInternalValue(newValue)\n }\n onChange?.(newValue)\n },\n [value, onChange, currentValue],\n )\n\n const handleClear = React.useCallback(\n (e: React.MouseEvent) => {\n e.stopPropagation()\n if (value === undefined) {\n setInternalValue([])\n }\n onChange?.([])\n },\n [value, onChange],\n )\n\n const handleInputChange = React.useCallback(\n (e: React.ChangeEvent<HTMLInputElement>) => {\n setSearchQuery(e.target.value)\n if (!isOpen) setIsOpen(true)\n },\n [isOpen],\n )\n\n const handleInputFocus = React.useCallback(() => {\n setIsOpen(true)\n }, [])\n\n const handleKeyDown = React.useCallback(\n (e: React.KeyboardEvent) => {\n if (!isOpen && e.key !== 'Tab') {\n if (e.key === 'Enter' || e.key === ' ' || e.key === 'ArrowDown') {\n e.preventDefault()\n setIsOpen(true)\n }\n return\n }\n\n const selectableOptions = filteredOptions.filter(\n (item) =>\n item.type === 'option' &&\n !(item.data as MultiSelectOption).disabled,\n )\n\n switch (e.key) {\n case 'Escape':\n e.preventDefault()\n setIsOpen(false)\n setSearchQuery('')\n setHighlightedIndex(-1)\n inputRef.current?.blur()\n break\n\n case 'ArrowDown':\n e.preventDefault()\n setHighlightedIndex((prev) => {\n const nextIndex = Math.min(prev + 1, selectableOptions.length - 1)\n const optionIndex = filteredOptions.indexOf(\n selectableOptions[nextIndex]!,\n )\n if (shouldVirtualize && virtualizerRef.current) {\n virtualizerRef.current.scrollToIndex(optionIndex, {\n align: 'auto',\n })\n }\n return nextIndex\n })\n break\n\n case 'ArrowUp':\n e.preventDefault()\n setHighlightedIndex((prev) => {\n const nextIndex = Math.max(prev - 1, 0)\n const optionIndex = filteredOptions.indexOf(\n selectableOptions[nextIndex]!,\n )\n if (shouldVirtualize && virtualizerRef.current) {\n virtualizerRef.current.scrollToIndex(optionIndex, {\n align: 'auto',\n })\n }\n return nextIndex\n })\n break\n\n case 'Enter':\n e.preventDefault()\n if (\n highlightedIndex >= 0 &&\n highlightedIndex < selectableOptions.length\n ) {\n const option = selectableOptions[highlightedIndex]!\n .data as MultiSelectOption\n handleSelect(option.value)\n }\n break\n\n case 'Home':\n e.preventDefault()\n setHighlightedIndex(0)\n if (shouldVirtualize && virtualizerRef.current) {\n virtualizerRef.current.scrollToIndex(0)\n }\n break\n\n case 'End':\n e.preventDefault()\n setHighlightedIndex(selectableOptions.length - 1)\n if (shouldVirtualize && virtualizerRef.current) {\n virtualizerRef.current.scrollToIndex(filteredOptions.length - 1)\n }\n break\n\n default:\n break\n }\n },\n [\n isOpen,\n filteredOptions,\n highlightedIndex,\n handleSelect,\n shouldVirtualize,\n ],\n )\n\n const handleInputKeyDown = React.useCallback(\n (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (e.key === 'Backspace' && !searchQuery && currentValue.length > 0) {\n e.preventDefault()\n const lastValue = currentValue[currentValue.length - 1]\n handleRemoveChip(lastValue!, e)\n } else {\n handleKeyDown(e)\n }\n },\n [searchQuery, currentValue, handleRemoveChip, handleKeyDown],\n )\n\n React.useEffect(() => {\n if (selectedOptions.length === 0 || !triggerRef.current) {\n setVisibleChipsCount(maxChipsVisible)\n return\n }\n\n const calculateVisibleChips = () => {\n const container = triggerRef.current\n if (!container) return\n\n const hiddenChips = container.querySelectorAll('[data-hidden-chip]')\n if (hiddenChips.length === 0) return\n\n const containerWidth = container.offsetWidth\n const padding =\n size === 'sm' ? 12 : size === 'md' ? 16 : size === 'lg' ? 20 : 24\n const chevronWidth = 32\n const gap = 4\n const plusIndicatorWidth = 50\n\n const availableWidth = containerWidth - padding * 2 - chevronWidth\n let totalWidth = 0\n let visibleCount = 0\n\n for (let i = 0; i < hiddenChips.length; i++) {\n const chipWidth = hiddenChips[i]!.getBoundingClientRect().width\n const requiredSpace =\n totalWidth + chipWidth + (visibleCount > 0 ? gap : 0)\n\n const needsPlusIndicator = i < hiddenChips.length - 1\n const spaceWithIndicator =\n requiredSpace + (needsPlusIndicator ? gap + plusIndicatorWidth : 0)\n\n if (spaceWithIndicator <= availableWidth) {\n totalWidth = requiredSpace\n visibleCount++\n } else {\n break\n }\n }\n\n setVisibleChipsCount(Math.max(1, visibleCount))\n }\n\n const timeoutId = setTimeout(calculateVisibleChips, 0)\n\n const resizeObserver = new ResizeObserver(() => {\n calculateVisibleChips()\n })\n\n if (triggerRef.current) {\n resizeObserver.observe(triggerRef.current)\n }\n\n return () => {\n clearTimeout(timeoutId)\n resizeObserver.disconnect()\n }\n }, [selectedOptions, size, maxChipsVisible])\n\n // Handle scroll to update arrow visibility\n const handleScroll = React.useCallback(\n (e: React.UIEvent<HTMLDivElement>) => {\n const element = e.currentTarget\n const { scrollTop, scrollHeight, clientHeight } = element\n\n setShowTopArrow(scrollTop > 0)\n setShowBottomArrow(scrollTop + clientHeight < scrollHeight - 1)\n },\n [],\n )\n\n // Check initial scroll state when dropdown opens\n React.useEffect(() => {\n if (isOpen) {\n // Use a small delay to ensure the DOM is fully rendered\n const timeoutId = setTimeout(() => {\n const element = scrollContainerRef.current\n if (element) {\n const { scrollTop, scrollHeight, clientHeight } = element\n setShowTopArrow(scrollTop > 0)\n setShowBottomArrow(scrollTop + clientHeight < scrollHeight - 1)\n }\n }, 50)\n\n return () => clearTimeout(timeoutId)\n } else {\n setShowTopArrow(false)\n setShowBottomArrow(false)\n return\n }\n }, [isOpen, filteredOptions, shouldVirtualize])\n\n const renderOptionsList = () => (\n <div className=\"relative\">\n {/* Top scroll indicator */}\n {showTopArrow && (\n <div className=\"flex items-center justify-center\">\n <ChevronUp className=\"h-4 w-4 text-text-primary\" />\n </div>\n )}\n\n <div\n ref={scrollContainerRef}\n className=\"overflow-auto relative\"\n style={{ maxHeight: maxDropdownHeight }}\n role=\"listbox\"\n aria-labelledby={label ? 'multiselect-label' : undefined}\n onScroll={handleScroll}\n >\n {filteredOptions.length === 0 ? (\n <div className=\"px-3 py-4 text-center text-sm text-text-muted\">\n No options found\n </div>\n ) : shouldVirtualize ? (\n <div\n ref={refCallback}\n style={{\n height: `${Math.min(virtualizer.getTotalSize(), maxDropdownHeight)}px`,\n overflow: 'auto',\n }}\n onScroll={handleScroll}\n >\n <div\n style={{\n height: `${virtualizer.getTotalSize()}px`,\n width: '100%',\n position: 'relative',\n }}\n >\n {virtualizer.getVirtualItems().map((virtualItem) => {\n const item = filteredOptions[virtualItem.index]\n\n if (item?.type === 'group') {\n return (\n <div\n key={`group-${virtualItem.index}`}\n style={{\n position: 'absolute',\n top: 0,\n left: 0,\n width: '100%',\n height: `${virtualItem.size}px`,\n transform: `translateY(${virtualItem.start}px)`,\n }}\n className={multiSelectGroupVariants()}\n >\n {item?.data as string}\n </div>\n )\n }\n\n const option = item?.data as MultiSelectOption\n const isSelected = currentValue.includes(option.value)\n const selectableOptions = filteredOptions.filter(\n (i) =>\n i.type === 'option' &&\n !(i.data as MultiSelectOption).disabled,\n )\n const selectableIndex = selectableOptions.findIndex(\n (i) => i === item,\n )\n const isHighlighted = selectableIndex === highlightedIndex\n\n return (\n <div\n key={option.value}\n style={{\n position: 'absolute',\n top: 0,\n left: 0,\n width: '100%',\n height: `${virtualItem.size}px`,\n transform: `translateY(${virtualItem.start}px)`,\n }}\n className={cn(\n multiSelectOptionVariants({\n selected: isSelected,\n disabled: !!option.disabled,\n }),\n isHighlighted && 'bg-surface',\n )}\n onClick={() =>\n !option.disabled && handleSelect(option.value)\n }\n role=\"option\"\n aria-selected={isSelected}\n aria-disabled={option.disabled}\n >\n {option.label}\n {isSelected && (\n <span className=\"absolute right-3 top-1/2 -translate-y-1/2\">\n <Check\n className={cn('text-primary', iconSizes[size])}\n />\n </span>\n )}\n </div>\n )\n })}\n </div>\n </div>\n ) : (\n <div className=\"py-1\">\n {filteredOptions.map((item, index) => {\n if (item.type === 'group') {\n return (\n <div\n key={`group-${index}`}\n className={multiSelectGroupVariants()}\n >\n {item.data as string}\n </div>\n )\n }\n\n const option = item.data as MultiSelectOption\n const isSelected = currentValue.includes(option.value)\n const selectableOptions = filteredOptions.filter(\n (i) =>\n i.type === 'option' &&\n !(i.data as MultiSelectOption).disabled,\n )\n const selectableIndex = selectableOptions.findIndex(\n (i) => i === item,\n )\n const isHighlighted = selectableIndex === highlightedIndex\n\n return (\n <div\n key={option.value}\n className={cn(\n multiSelectOptionVariants({\n selected: isSelected,\n disabled: !!option.disabled,\n }),\n isHighlighted && 'bg-surface',\n )}\n onClick={() =>\n !option.disabled && handleSelect(option.value)\n }\n role=\"option\"\n aria-selected={isSelected}\n aria-disabled={option.disabled}\n >\n {option.label}\n {isSelected && (\n <span className=\"absolute right-3 top-1/2 -translate-y-1/2\">\n <Check\n className={cn('text-primary', iconSizes[size])}\n />\n </span>\n )}\n </div>\n )\n })}\n </div>\n )}\n </div>\n\n {/* Bottom scroll indicator */}\n {showBottomArrow && (\n <div className=\"flex items-center justify-center\">\n <ChevronDown className=\"h-4 w-4 text-text-primary\" />\n </div>\n )}\n </div>\n )\n\n // Trigger button (used in both desktop and mobile)\n const triggerButton = (\n <button\n ref={triggerRef}\n type=\"button\"\n className={cn(\n multiSelectTriggerVariants({ status, size, fullWidth }),\n loading && 'opacity-50',\n className,\n )}\n disabled={disabled || loading}\n aria-haspopup=\"listbox\"\n aria-expanded={isOpen}\n aria-labelledby={label ? 'multiselect-label' : undefined}\n onClick={() => setIsOpen(!isOpen)}\n >\n {selectedOptions.length > 0 && (\n <div className=\"flex gap-1 flex-shrink-0\">\n {selectedOptions.slice(0, visibleChipsCount).map((option) => (\n <span\n key={option.value}\n className=\"inline-flex items-center gap-1 px-2 py-0.5 bg-primary/10 text-primary rounded text-sm whitespace-nowrap\"\n >\n {option.label}\n <button\n type=\"button\"\n onClick={(e) => handleRemoveChip(option.value, e)}\n className=\"hover:text-error\"\n disabled={disabled}\n >\n <X className=\"h-3 w-3\" />\n </button>\n </span>\n ))}\n {selectedOptions.length > visibleChipsCount && (\n <span className=\"inline-flex items-center px-2 py-0.5 bg-surface text-text-muted rounded text-sm whitespace-nowrap\">\n +{selectedOptions.length - visibleChipsCount}\n </span>\n )}\n </div>\n )}\n <div\n className=\"absolute opacity-0 pointer-events-none whitespace-nowrap\"\n aria-hidden=\"true\"\n >\n {selectedOptions.map((option) => (\n <span\n key={option.value}\n data-hidden-chip\n className=\"inline-flex items-center gap-1 px-2 py-0.5 bg-primary/10 text-primary rounded text-sm whitespace-nowrap\"\n >\n {option.label}\n <X className=\"h-3 w-3\" />\n </span>\n ))}\n </div>\n <input\n ref={inputRef}\n type=\"text\"\n className=\"bg-transparent outline-none cursor-pointer placeholder:text-text-muted flex-1 min-w-0 pointer-events-none\"\n placeholder={selectedOptions.length > 0 ? '' : placeholder}\n value={searchQuery}\n onChange={handleInputChange}\n onFocus={handleInputFocus}\n onKeyDown={handleInputKeyDown}\n disabled={disabled || loading}\n readOnly={!isOpen}\n tabIndex={-1}\n />\n <div className=\"flex items-center gap-1 text-text-muted\">\n {loading ? (\n <Loader2 className={cn('animate-spin', iconSizes[size])} />\n ) : (\n <>\n {clearable && selectedOptions.length > 0 && !disabled && (\n <button\n type=\"button\"\n onClick={handleClear}\n className=\"hover:text-text-primary transition-colors\"\n aria-label=\"Clear selection\"\n >\n <X className={iconSizes[size]} />\n </button>\n )}\n {isOpen ? (\n <Search className={iconSizes[size]} />\n ) : (\n <ChevronDown className={iconSizes[size]} />\n )}\n </>\n )}\n </div>\n </button>\n )\n\n const selectElement = (\n <div\n className={cn('relative group', fullWidth ? 'w-full' : 'inline-block')}\n ref={ref}\n {...props}\n >\n <Popover\n open={isOpen}\n onOpenChange={setIsOpen}\n >\n <PopoverTrigger asChild>{triggerButton}</PopoverTrigger>\n\n <PopoverContent\n className=\"p-0 w-[var(--radix-popover-trigger-width)]\"\n align=\"start\"\n sideOffset={4}\n onOpenAutoFocus={(e) => {\n e.preventDefault()\n inputRef.current?.focus()\n }}\n >\n {renderOptionsList()}\n </PopoverContent>\n </Popover>\n </div>\n )\n\n if (!label && !helperMessage) return selectElement\n\n return (\n <div className={cn('w-full flex flex-col', !fullWidth && 'inline-block')}>\n <div className=\"flex gap-2 items-center\">\n {label && (\n <label\n id=\"multiselect-label\"\n className=\"block mb-0.5\"\n >\n <span className=\"text-sm font-medium text-text-muted\">\n {label}\n {required && <span className=\"text-error ml-1\">*</span>}\n </span>\n </label>\n )}\n {helperMessage && (\n <p\n className={cn(\n 'text-xs',\n status === 'error' && 'text-error',\n status === 'warning' && 'text-warning',\n status === 'info' && 'text-info',\n status === 'success' && 'text-success',\n status === 'default' && 'text-text-muted',\n )}\n >\n {helperMessage}\n </p>\n )}\n </div>\n {selectElement}\n </div>\n )\n },\n)\n\nMultiSelect.displayName = 'MultiSelect'\n\nexport type * from './types'\nexport default MultiSelect\n"]}
|
package/dist/chunk-2EKAF6EJ.js
DELETED
|
@@ -1,128 +0,0 @@
|
|
|
1
|
-
import { getAccordionColorClass } from './chunk-5UEWVFF6.js';
|
|
2
|
-
import { cn, iconSizes } from './chunk-YNNAOXU5.js';
|
|
3
|
-
import { cva } from 'class-variance-authority';
|
|
4
|
-
import { ChevronDown } from 'lucide-react';
|
|
5
|
-
import React, { useState } from 'react';
|
|
6
|
-
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
7
|
-
|
|
8
|
-
var accordionHeaderVariants = cva(
|
|
9
|
-
"flex items-center justify-between w-full text-left font-medium transition-all cursor-pointer",
|
|
10
|
-
{
|
|
11
|
-
variants: {
|
|
12
|
-
size: {
|
|
13
|
-
xs: "px-[var(--accordion-padding-x-xs)] py-[var(--accordion-padding-y-xs)] text-xs",
|
|
14
|
-
sm: "px-[var(--accordion-padding-x-sm)] py-[var(--accordion-padding-y-sm)] text-sm",
|
|
15
|
-
md: "px-[var(--accordion-padding-x-md)] py-[var(--accordion-padding-y-md)] text-base",
|
|
16
|
-
lg: "px-[var(--accordion-padding-x-lg)] py-[var(--accordion-padding-y-lg)] text-lg"
|
|
17
|
-
}
|
|
18
|
-
},
|
|
19
|
-
defaultVariants: {
|
|
20
|
-
size: "md"
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
);
|
|
24
|
-
var accordionContentVariants = cva("overflow-hidden transition-all", {
|
|
25
|
-
variants: {
|
|
26
|
-
size: {
|
|
27
|
-
xs: "px-[var(--accordion-padding-x-xs)] pb-[var(--accordion-padding-y-xs)] text-xs",
|
|
28
|
-
sm: "px-[var(--accordion-padding-x-sm)] pb-[var(--accordion-padding-y-sm)] text-sm",
|
|
29
|
-
md: "px-[var(--accordion-padding-x-md)] pb-[var(--accordion-padding-y-md)] text-base",
|
|
30
|
-
lg: "px-[var(--accordion-padding-x-lg)] pb-[var(--accordion-padding-y-lg)] text-lg"
|
|
31
|
-
}
|
|
32
|
-
},
|
|
33
|
-
defaultVariants: {
|
|
34
|
-
size: "md"
|
|
35
|
-
}
|
|
36
|
-
});
|
|
37
|
-
var Accordion = React.memo(
|
|
38
|
-
({
|
|
39
|
-
items,
|
|
40
|
-
color = "default",
|
|
41
|
-
size = "md",
|
|
42
|
-
variant = "default",
|
|
43
|
-
defaultActiveKey,
|
|
44
|
-
activeKey: controlledActiveKey,
|
|
45
|
-
onChange,
|
|
46
|
-
multiple = false,
|
|
47
|
-
className
|
|
48
|
-
}) => {
|
|
49
|
-
const [internalActiveKey, setInternalActiveKey] = useState(defaultActiveKey || (multiple ? [] : ""));
|
|
50
|
-
const activeKey = controlledActiveKey !== void 0 ? controlledActiveKey : internalActiveKey;
|
|
51
|
-
const isActive = (key) => {
|
|
52
|
-
if (Array.isArray(activeKey)) {
|
|
53
|
-
return activeKey.includes(key);
|
|
54
|
-
}
|
|
55
|
-
return activeKey === key;
|
|
56
|
-
};
|
|
57
|
-
const handleToggle = (key) => {
|
|
58
|
-
let newActiveKey;
|
|
59
|
-
if (multiple) {
|
|
60
|
-
const currentKeys = Array.isArray(activeKey) ? activeKey : [];
|
|
61
|
-
newActiveKey = currentKeys.includes(key) ? currentKeys.filter((k) => k !== key) : [...currentKeys, key];
|
|
62
|
-
} else {
|
|
63
|
-
newActiveKey = activeKey === key ? "" : key;
|
|
64
|
-
}
|
|
65
|
-
if (controlledActiveKey === void 0) {
|
|
66
|
-
setInternalActiveKey(newActiveKey);
|
|
67
|
-
}
|
|
68
|
-
onChange?.(newActiveKey);
|
|
69
|
-
};
|
|
70
|
-
return /* @__PURE__ */ jsx("div", { className: cn("w-full space-y-2", className), children: items.map((item) => {
|
|
71
|
-
const active = isActive(item.key);
|
|
72
|
-
return /* @__PURE__ */ jsxs(
|
|
73
|
-
"div",
|
|
74
|
-
{
|
|
75
|
-
className: cn(
|
|
76
|
-
getAccordionColorClass(color, variant),
|
|
77
|
-
"rounded-lg border transition-all",
|
|
78
|
-
item.disabled && "opacity-50 cursor-not-allowed"
|
|
79
|
-
),
|
|
80
|
-
children: [
|
|
81
|
-
/* @__PURE__ */ jsxs(
|
|
82
|
-
"button",
|
|
83
|
-
{
|
|
84
|
-
type: "button",
|
|
85
|
-
onClick: () => !item.disabled && handleToggle(item.key),
|
|
86
|
-
disabled: item.disabled,
|
|
87
|
-
className: cn(
|
|
88
|
-
accordionHeaderVariants({ size }),
|
|
89
|
-
item.disabled && "cursor-not-allowed"
|
|
90
|
-
),
|
|
91
|
-
children: [
|
|
92
|
-
/* @__PURE__ */ jsx("span", { children: item.title }),
|
|
93
|
-
/* @__PURE__ */ jsx(
|
|
94
|
-
ChevronDown,
|
|
95
|
-
{
|
|
96
|
-
className: cn(
|
|
97
|
-
"transition-transform duration-300 ease-out",
|
|
98
|
-
active && "rotate-180",
|
|
99
|
-
iconSizes[size]
|
|
100
|
-
)
|
|
101
|
-
}
|
|
102
|
-
)
|
|
103
|
-
]
|
|
104
|
-
}
|
|
105
|
-
),
|
|
106
|
-
/* @__PURE__ */ jsx(
|
|
107
|
-
"div",
|
|
108
|
-
{
|
|
109
|
-
className: cn(
|
|
110
|
-
"grid transition-[grid-template-rows] duration-300 ease-out",
|
|
111
|
-
active ? "grid-rows-[1fr]" : "grid-rows-[0fr]"
|
|
112
|
-
),
|
|
113
|
-
children: /* @__PURE__ */ jsx("div", { className: "overflow-hidden", children: /* @__PURE__ */ jsx("div", { className: cn(accordionContentVariants({ size })), children: item.content }) })
|
|
114
|
-
}
|
|
115
|
-
)
|
|
116
|
-
]
|
|
117
|
-
},
|
|
118
|
-
item.key
|
|
119
|
-
);
|
|
120
|
-
}) });
|
|
121
|
-
}
|
|
122
|
-
);
|
|
123
|
-
Accordion.displayName = "Accordion";
|
|
124
|
-
var accordion_default = Accordion;
|
|
125
|
-
|
|
126
|
-
export { accordion_default };
|
|
127
|
-
//# sourceMappingURL=chunk-2EKAF6EJ.js.map
|
|
128
|
-
//# sourceMappingURL=chunk-2EKAF6EJ.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/accordion/index.tsx"],"names":[],"mappings":"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","file":"chunk-2EKAF6EJ.js","sourcesContent":["import { cva } from 'class-variance-authority'\nimport { ChevronDown } from 'lucide-react'\nimport React, { useState } from 'react'\n\nimport { cn, iconSizes } from '../utils'\nimport { getAccordionColorClass } from '../variants'\nimport type { AccordionProps } from './types'\n\nconst accordionHeaderVariants = cva(\n 'flex items-center justify-between w-full text-left font-medium transition-all cursor-pointer',\n {\n variants: {\n size: {\n xs: 'px-[var(--accordion-padding-x-xs)] py-[var(--accordion-padding-y-xs)] text-xs',\n sm: 'px-[var(--accordion-padding-x-sm)] py-[var(--accordion-padding-y-sm)] text-sm',\n md: 'px-[var(--accordion-padding-x-md)] py-[var(--accordion-padding-y-md)] text-base',\n lg: 'px-[var(--accordion-padding-x-lg)] py-[var(--accordion-padding-y-lg)] text-lg',\n },\n },\n defaultVariants: {\n size: 'md',\n },\n },\n)\n\nconst accordionContentVariants = cva('overflow-hidden transition-all', {\n variants: {\n size: {\n xs: 'px-[var(--accordion-padding-x-xs)] pb-[var(--accordion-padding-y-xs)] text-xs',\n sm: 'px-[var(--accordion-padding-x-sm)] pb-[var(--accordion-padding-y-sm)] text-sm',\n md: 'px-[var(--accordion-padding-x-md)] pb-[var(--accordion-padding-y-md)] text-base',\n lg: 'px-[var(--accordion-padding-x-lg)] pb-[var(--accordion-padding-y-lg)] text-lg',\n },\n },\n defaultVariants: {\n size: 'md',\n },\n})\n\nconst Accordion = React.memo<AccordionProps>(\n ({\n items,\n color = 'default',\n size = 'md',\n variant = 'default',\n defaultActiveKey,\n activeKey: controlledActiveKey,\n onChange,\n multiple = false,\n className,\n }) => {\n const [internalActiveKey, setInternalActiveKey] = useState<\n string | string[]\n >(defaultActiveKey || (multiple ? [] : ''))\n\n const activeKey =\n controlledActiveKey !== undefined\n ? controlledActiveKey\n : internalActiveKey\n\n const isActive = (key: string) => {\n if (Array.isArray(activeKey)) {\n return activeKey.includes(key)\n }\n return activeKey === key\n }\n\n const handleToggle = (key: string) => {\n let newActiveKey: string | string[]\n\n if (multiple) {\n const currentKeys = Array.isArray(activeKey) ? activeKey : []\n newActiveKey = currentKeys.includes(key)\n ? currentKeys.filter((k) => k !== key)\n : [...currentKeys, key]\n } else {\n newActiveKey = activeKey === key ? '' : key\n }\n\n if (controlledActiveKey === undefined) {\n setInternalActiveKey(newActiveKey)\n }\n onChange?.(newActiveKey)\n }\n\n return (\n <div className={cn('w-full space-y-2', className)}>\n {items.map((item) => {\n const active = isActive(item.key)\n\n return (\n <div\n key={item.key}\n className={cn(\n getAccordionColorClass(color, variant),\n 'rounded-lg border transition-all',\n item.disabled && 'opacity-50 cursor-not-allowed',\n )}\n >\n <button\n type=\"button\"\n onClick={() => !item.disabled && handleToggle(item.key)}\n disabled={item.disabled}\n className={cn(\n accordionHeaderVariants({ size }),\n item.disabled && 'cursor-not-allowed',\n )}\n >\n <span>{item.title}</span>\n <ChevronDown\n className={cn(\n 'transition-transform duration-300 ease-out',\n active && 'rotate-180',\n iconSizes[size],\n )}\n />\n </button>\n <div\n className={cn(\n 'grid transition-[grid-template-rows] duration-300 ease-out',\n active ? 'grid-rows-[1fr]' : 'grid-rows-[0fr]',\n )}\n >\n <div className=\"overflow-hidden\">\n <div className={cn(accordionContentVariants({ size }))}>\n {item.content}\n </div>\n </div>\n </div>\n </div>\n )\n })}\n </div>\n )\n },\n)\n\nAccordion.displayName = 'Accordion'\n\nexport type * from './types'\nexport default Accordion\n"]}
|
package/dist/chunk-3PFA3YG6.js
DELETED
|
@@ -1,228 +0,0 @@
|
|
|
1
|
-
import { cn } from './chunk-YNNAOXU5.js';
|
|
2
|
-
import * as PopoverPrimitive from '@radix-ui/react-popover';
|
|
3
|
-
import { cva } from 'class-variance-authority';
|
|
4
|
-
import { jsx } from 'react/jsx-runtime';
|
|
5
|
-
|
|
6
|
-
function Popover({
|
|
7
|
-
...props
|
|
8
|
-
}) {
|
|
9
|
-
return /* @__PURE__ */ jsx(
|
|
10
|
-
PopoverPrimitive.Root,
|
|
11
|
-
{
|
|
12
|
-
"data-slot": "popover",
|
|
13
|
-
...props
|
|
14
|
-
}
|
|
15
|
-
);
|
|
16
|
-
}
|
|
17
|
-
function PopoverTrigger({
|
|
18
|
-
...props
|
|
19
|
-
}) {
|
|
20
|
-
return /* @__PURE__ */ jsx(
|
|
21
|
-
PopoverPrimitive.Trigger,
|
|
22
|
-
{
|
|
23
|
-
"data-slot": "popover-trigger",
|
|
24
|
-
...props
|
|
25
|
-
}
|
|
26
|
-
);
|
|
27
|
-
}
|
|
28
|
-
var popoverContentVariants = cva(
|
|
29
|
-
"overflow-hidden data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-72 origin-(--radix-popover-content-transform-origin) rounded-md border outline-none",
|
|
30
|
-
{
|
|
31
|
-
variants: {
|
|
32
|
-
size: {
|
|
33
|
-
xs: "p-2 text-xs",
|
|
34
|
-
sm: "p-3 text-sm",
|
|
35
|
-
md: "p-4 text-base",
|
|
36
|
-
lg: "p-5 text-lg"
|
|
37
|
-
},
|
|
38
|
-
variant: {
|
|
39
|
-
default: "",
|
|
40
|
-
solid: "",
|
|
41
|
-
soft: ""
|
|
42
|
-
},
|
|
43
|
-
color: {
|
|
44
|
-
default: "",
|
|
45
|
-
primary: "",
|
|
46
|
-
secondary: "",
|
|
47
|
-
accent: "",
|
|
48
|
-
success: "",
|
|
49
|
-
error: "",
|
|
50
|
-
warning: "",
|
|
51
|
-
info: ""
|
|
52
|
-
}
|
|
53
|
-
},
|
|
54
|
-
compoundVariants: [
|
|
55
|
-
// Default color variants
|
|
56
|
-
{
|
|
57
|
-
variant: "default",
|
|
58
|
-
color: "default",
|
|
59
|
-
class: "bg-background border-border text-text-primary"
|
|
60
|
-
},
|
|
61
|
-
{
|
|
62
|
-
variant: "solid",
|
|
63
|
-
color: "default",
|
|
64
|
-
class: "bg-surface border-border text-text-primary"
|
|
65
|
-
},
|
|
66
|
-
{
|
|
67
|
-
variant: "soft",
|
|
68
|
-
color: "default",
|
|
69
|
-
class: "backdrop-blur-sm bg-surface/80 border-border text-text-primary"
|
|
70
|
-
},
|
|
71
|
-
// Primary color variants
|
|
72
|
-
{
|
|
73
|
-
variant: "default",
|
|
74
|
-
color: "primary",
|
|
75
|
-
class: "bg-background border-primary text-text-primary"
|
|
76
|
-
},
|
|
77
|
-
{
|
|
78
|
-
variant: "solid",
|
|
79
|
-
color: "primary",
|
|
80
|
-
class: "bg-primary border-primary text-primary-text"
|
|
81
|
-
},
|
|
82
|
-
{
|
|
83
|
-
variant: "soft",
|
|
84
|
-
color: "primary",
|
|
85
|
-
class: "backdrop-blur-sm bg-primary/10 border-primary/30 text-primary"
|
|
86
|
-
},
|
|
87
|
-
// Secondary color variants
|
|
88
|
-
{
|
|
89
|
-
variant: "default",
|
|
90
|
-
color: "secondary",
|
|
91
|
-
class: "bg-background border-secondary text-text-primary"
|
|
92
|
-
},
|
|
93
|
-
{
|
|
94
|
-
variant: "solid",
|
|
95
|
-
color: "secondary",
|
|
96
|
-
class: "bg-secondary border-secondary text-secondary-text"
|
|
97
|
-
},
|
|
98
|
-
{
|
|
99
|
-
variant: "soft",
|
|
100
|
-
color: "secondary",
|
|
101
|
-
class: "backdrop-blur-sm bg-secondary/10 border-secondary/30 text-secondary"
|
|
102
|
-
},
|
|
103
|
-
// Accent color variants
|
|
104
|
-
{
|
|
105
|
-
variant: "default",
|
|
106
|
-
color: "accent",
|
|
107
|
-
class: "bg-background border-accent text-text-primary"
|
|
108
|
-
},
|
|
109
|
-
{
|
|
110
|
-
variant: "solid",
|
|
111
|
-
color: "accent",
|
|
112
|
-
class: "bg-accent border-accent text-primary-text"
|
|
113
|
-
},
|
|
114
|
-
{
|
|
115
|
-
variant: "soft",
|
|
116
|
-
color: "accent",
|
|
117
|
-
class: "backdrop-blur-sm bg-accent/10 border-accent/30 text-accent"
|
|
118
|
-
},
|
|
119
|
-
// Success color variants
|
|
120
|
-
{
|
|
121
|
-
variant: "default",
|
|
122
|
-
color: "success",
|
|
123
|
-
class: "bg-background border-success text-text-primary"
|
|
124
|
-
},
|
|
125
|
-
{
|
|
126
|
-
variant: "solid",
|
|
127
|
-
color: "success",
|
|
128
|
-
class: "bg-success border-success text-success-text"
|
|
129
|
-
},
|
|
130
|
-
{
|
|
131
|
-
variant: "soft",
|
|
132
|
-
color: "success",
|
|
133
|
-
class: "backdrop-blur-sm bg-success/10 border-success/30 text-success"
|
|
134
|
-
},
|
|
135
|
-
// Error color variants
|
|
136
|
-
{
|
|
137
|
-
variant: "default",
|
|
138
|
-
color: "error",
|
|
139
|
-
class: "bg-background border-error text-text-primary"
|
|
140
|
-
},
|
|
141
|
-
{
|
|
142
|
-
variant: "solid",
|
|
143
|
-
color: "error",
|
|
144
|
-
class: "bg-error border-error text-error-text"
|
|
145
|
-
},
|
|
146
|
-
{
|
|
147
|
-
variant: "soft",
|
|
148
|
-
color: "error",
|
|
149
|
-
class: "backdrop-blur-sm bg-error/10 border-error/30 text-error"
|
|
150
|
-
},
|
|
151
|
-
// Warning color variants
|
|
152
|
-
{
|
|
153
|
-
variant: "default",
|
|
154
|
-
color: "warning",
|
|
155
|
-
class: "bg-background border-warning text-text-primary"
|
|
156
|
-
},
|
|
157
|
-
{
|
|
158
|
-
variant: "solid",
|
|
159
|
-
color: "warning",
|
|
160
|
-
class: "bg-warning border-warning text-primary-text"
|
|
161
|
-
},
|
|
162
|
-
{
|
|
163
|
-
variant: "soft",
|
|
164
|
-
color: "warning",
|
|
165
|
-
class: "backdrop-blur-sm bg-warning/10 border-warning/30 text-warning"
|
|
166
|
-
},
|
|
167
|
-
// Info color variants
|
|
168
|
-
{
|
|
169
|
-
variant: "default",
|
|
170
|
-
color: "info",
|
|
171
|
-
class: "bg-background border-info text-text-primary"
|
|
172
|
-
},
|
|
173
|
-
{
|
|
174
|
-
variant: "solid",
|
|
175
|
-
color: "info",
|
|
176
|
-
class: "bg-info border-info text-info-text"
|
|
177
|
-
},
|
|
178
|
-
{
|
|
179
|
-
variant: "soft",
|
|
180
|
-
color: "info",
|
|
181
|
-
class: "backdrop-blur-sm bg-info/10 border-info/30 text-info"
|
|
182
|
-
}
|
|
183
|
-
],
|
|
184
|
-
defaultVariants: {
|
|
185
|
-
size: "md",
|
|
186
|
-
variant: "default",
|
|
187
|
-
color: "default"
|
|
188
|
-
}
|
|
189
|
-
}
|
|
190
|
-
);
|
|
191
|
-
function PopoverContent({
|
|
192
|
-
className,
|
|
193
|
-
align = "center",
|
|
194
|
-
sideOffset = 4,
|
|
195
|
-
size = "md",
|
|
196
|
-
variant = "default",
|
|
197
|
-
color = "default",
|
|
198
|
-
...props
|
|
199
|
-
}) {
|
|
200
|
-
return /* @__PURE__ */ jsx(PopoverPrimitive.Portal, { children: /* @__PURE__ */ jsx(
|
|
201
|
-
PopoverPrimitive.Content,
|
|
202
|
-
{
|
|
203
|
-
"data-slot": "popover-content",
|
|
204
|
-
align,
|
|
205
|
-
sideOffset,
|
|
206
|
-
className: cn(
|
|
207
|
-
popoverContentVariants({ size, variant, color }),
|
|
208
|
-
className
|
|
209
|
-
),
|
|
210
|
-
...props
|
|
211
|
-
}
|
|
212
|
-
) });
|
|
213
|
-
}
|
|
214
|
-
function PopoverAnchor({
|
|
215
|
-
...props
|
|
216
|
-
}) {
|
|
217
|
-
return /* @__PURE__ */ jsx(
|
|
218
|
-
PopoverPrimitive.Anchor,
|
|
219
|
-
{
|
|
220
|
-
"data-slot": "popover-anchor",
|
|
221
|
-
...props
|
|
222
|
-
}
|
|
223
|
-
);
|
|
224
|
-
}
|
|
225
|
-
|
|
226
|
-
export { Popover, PopoverAnchor, PopoverContent, PopoverTrigger };
|
|
227
|
-
//# sourceMappingURL=chunk-3PFA3YG6.js.map
|
|
228
|
-
//# sourceMappingURL=chunk-3PFA3YG6.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/popover/index.tsx"],"names":[],"mappings":"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","file":"chunk-3PFA3YG6.js","sourcesContent":["import * as PopoverPrimitive from '@radix-ui/react-popover'\nimport { cva, type VariantProps } from 'class-variance-authority'\nimport * as React from 'react'\n\nimport { cn } from '../utils'\n\nfunction Popover({\n ...props\n}: React.ComponentProps<typeof PopoverPrimitive.Root>) {\n return (\n <PopoverPrimitive.Root\n data-slot=\"popover\"\n {...props}\n />\n )\n}\n\nfunction PopoverTrigger({\n ...props\n}: React.ComponentProps<typeof PopoverPrimitive.Trigger>) {\n return (\n <PopoverPrimitive.Trigger\n data-slot=\"popover-trigger\"\n {...props}\n />\n )\n}\n\nconst popoverContentVariants = cva(\n 'overflow-hidden data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-72 origin-(--radix-popover-content-transform-origin) rounded-md border outline-none',\n {\n variants: {\n size: {\n xs: 'p-2 text-xs',\n sm: 'p-3 text-sm',\n md: 'p-4 text-base',\n lg: 'p-5 text-lg',\n },\n variant: {\n default: '',\n solid: '',\n soft: '',\n },\n color: {\n default: '',\n primary: '',\n secondary: '',\n accent: '',\n success: '',\n error: '',\n warning: '',\n info: '',\n },\n },\n compoundVariants: [\n // Default color variants\n {\n variant: 'default',\n color: 'default',\n class: 'bg-background border-border text-text-primary',\n },\n {\n variant: 'solid',\n color: 'default',\n class: 'bg-surface border-border text-text-primary',\n },\n {\n variant: 'soft',\n color: 'default',\n class: 'backdrop-blur-sm bg-surface/80 border-border text-text-primary',\n },\n\n // Primary color variants\n {\n variant: 'default',\n color: 'primary',\n class: 'bg-background border-primary text-text-primary',\n },\n {\n variant: 'solid',\n color: 'primary',\n class: 'bg-primary border-primary text-primary-text',\n },\n {\n variant: 'soft',\n color: 'primary',\n class: 'backdrop-blur-sm bg-primary/10 border-primary/30 text-primary',\n },\n\n // Secondary color variants\n {\n variant: 'default',\n color: 'secondary',\n class: 'bg-background border-secondary text-text-primary',\n },\n {\n variant: 'solid',\n color: 'secondary',\n class: 'bg-secondary border-secondary text-secondary-text',\n },\n {\n variant: 'soft',\n color: 'secondary',\n class:\n 'backdrop-blur-sm bg-secondary/10 border-secondary/30 text-secondary',\n },\n\n // Accent color variants\n {\n variant: 'default',\n color: 'accent',\n class: 'bg-background border-accent text-text-primary',\n },\n {\n variant: 'solid',\n color: 'accent',\n class: 'bg-accent border-accent text-primary-text',\n },\n {\n variant: 'soft',\n color: 'accent',\n class: 'backdrop-blur-sm bg-accent/10 border-accent/30 text-accent',\n },\n\n // Success color variants\n {\n variant: 'default',\n color: 'success',\n class: 'bg-background border-success text-text-primary',\n },\n {\n variant: 'solid',\n color: 'success',\n class: 'bg-success border-success text-success-text',\n },\n {\n variant: 'soft',\n color: 'success',\n class: 'backdrop-blur-sm bg-success/10 border-success/30 text-success',\n },\n\n // Error color variants\n {\n variant: 'default',\n color: 'error',\n class: 'bg-background border-error text-text-primary',\n },\n {\n variant: 'solid',\n color: 'error',\n class: 'bg-error border-error text-error-text',\n },\n {\n variant: 'soft',\n color: 'error',\n class: 'backdrop-blur-sm bg-error/10 border-error/30 text-error',\n },\n\n // Warning color variants\n {\n variant: 'default',\n color: 'warning',\n class: 'bg-background border-warning text-text-primary',\n },\n {\n variant: 'solid',\n color: 'warning',\n class: 'bg-warning border-warning text-primary-text',\n },\n {\n variant: 'soft',\n color: 'warning',\n class: 'backdrop-blur-sm bg-warning/10 border-warning/30 text-warning',\n },\n\n // Info color variants\n {\n variant: 'default',\n color: 'info',\n class: 'bg-background border-info text-text-primary',\n },\n {\n variant: 'solid',\n color: 'info',\n class: 'bg-info border-info text-info-text',\n },\n {\n variant: 'soft',\n color: 'info',\n class: 'backdrop-blur-sm bg-info/10 border-info/30 text-info',\n },\n ],\n defaultVariants: {\n size: 'md',\n variant: 'default',\n color: 'default',\n },\n },\n)\n\nexport interface PopoverContentProps\n extends Omit<React.ComponentProps<typeof PopoverPrimitive.Content>, 'color'>,\n VariantProps<typeof popoverContentVariants> {}\n\nfunction PopoverContent({\n className,\n align = 'center',\n sideOffset = 4,\n size = 'md',\n variant = 'default',\n color = 'default',\n ...props\n}: PopoverContentProps) {\n return (\n <PopoverPrimitive.Portal>\n <PopoverPrimitive.Content\n data-slot=\"popover-content\"\n align={align}\n sideOffset={sideOffset}\n className={cn(\n popoverContentVariants({ size, variant, color }),\n className,\n )}\n {...props}\n />\n </PopoverPrimitive.Portal>\n )\n}\n\nfunction PopoverAnchor({\n ...props\n}: React.ComponentProps<typeof PopoverPrimitive.Anchor>) {\n return (\n <PopoverPrimitive.Anchor\n data-slot=\"popover-anchor\"\n {...props}\n />\n )\n}\n\nexport type * from './types'\nexport { Popover, PopoverTrigger, PopoverContent, PopoverAnchor }\n"]}
|
package/dist/chunk-56IXGP5C.js
DELETED
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
import { cn } from './chunk-YNNAOXU5.js';
|
|
2
|
-
import { cva } from 'class-variance-authority';
|
|
3
|
-
import React from 'react';
|
|
4
|
-
import { jsx } from 'react/jsx-runtime';
|
|
5
|
-
|
|
6
|
-
var buttonGroupVariants = cva("inline-flex", {
|
|
7
|
-
variants: {
|
|
8
|
-
vertical: {
|
|
9
|
-
true: "flex-col [&>*:not(:first-child)]:rounded-t-none [&>*:not(:last-child)]:border-b-0 [&>*:not(:last-child)]:rounded-b-none",
|
|
10
|
-
false: "flex-row [&>*:not(:first-child)]:rounded-l-none [&>*:not(:last-child)]:border-r-0 [&>*:not(:last-child)]:rounded-r-none"
|
|
11
|
-
},
|
|
12
|
-
spacing: {
|
|
13
|
-
true: "gap-2",
|
|
14
|
-
false: "gap-0"
|
|
15
|
-
},
|
|
16
|
-
fullWidth: {
|
|
17
|
-
true: "w-full [&>*]:flex-1",
|
|
18
|
-
false: ""
|
|
19
|
-
}
|
|
20
|
-
},
|
|
21
|
-
defaultVariants: {
|
|
22
|
-
vertical: false,
|
|
23
|
-
fullWidth: false
|
|
24
|
-
}
|
|
25
|
-
});
|
|
26
|
-
var ButtonGroup = React.memo(
|
|
27
|
-
({
|
|
28
|
-
vertical = false,
|
|
29
|
-
spacing = false,
|
|
30
|
-
fullWidth = false,
|
|
31
|
-
className,
|
|
32
|
-
children,
|
|
33
|
-
ref,
|
|
34
|
-
...props
|
|
35
|
-
}) => {
|
|
36
|
-
return /* @__PURE__ */ jsx(
|
|
37
|
-
"div",
|
|
38
|
-
{
|
|
39
|
-
ref,
|
|
40
|
-
role: "group",
|
|
41
|
-
className: cn(
|
|
42
|
-
buttonGroupVariants({ vertical, spacing, fullWidth }),
|
|
43
|
-
className
|
|
44
|
-
),
|
|
45
|
-
...props,
|
|
46
|
-
children
|
|
47
|
-
}
|
|
48
|
-
);
|
|
49
|
-
}
|
|
50
|
-
);
|
|
51
|
-
ButtonGroup.displayName = "ButtonGroup";
|
|
52
|
-
var button_group_default = ButtonGroup;
|
|
53
|
-
|
|
54
|
-
export { button_group_default };
|
|
55
|
-
//# sourceMappingURL=chunk-56IXGP5C.js.map
|
|
56
|
-
//# sourceMappingURL=chunk-56IXGP5C.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/button-group/index.tsx"],"names":[],"mappings":";;;;;AAMA,IAAM,mBAAA,GAAsB,IAAI,aAAA,EAAe;AAAA,EAC7C,QAAA,EAAU;AAAA,IACR,QAAA,EAAU;AAAA,MACR,IAAA,EAAM,yHAAA;AAAA,MACN,KAAA,EACE;AAAA,KACJ;AAAA,IACA,OAAA,EAAS;AAAA,MACP,IAAA,EAAM,OAAA;AAAA,MACN,KAAA,EAAO;AAAA,KACT;AAAA,IACA,SAAA,EAAW;AAAA,MACT,IAAA,EAAM,qBAAA;AAAA,MACN,KAAA,EAAO;AAAA;AACT,GACF;AAAA,EACA,eAAA,EAAiB;AAAA,IACf,QAAA,EAAU,KAAA;AAAA,IACV,SAAA,EAAW;AAAA;AAEf,CAAC,CAAA;AAED,IAAM,cAAc,KAAA,CAAM,IAAA;AAAA,EACxB,CAAC;AAAA,IACC,QAAA,GAAW,KAAA;AAAA,IACX,OAAA,GAAU,KAAA;AAAA,IACV,SAAA,GAAY,KAAA;AAAA,IACZ,SAAA;AAAA,IACA,QAAA;AAAA,IACA,GAAA;AAAA,IACA,GAAG;AAAA,GACL,KAAM;AACJ,IAAA,uBACE,GAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,GAAA;AAAA,QACA,IAAA,EAAK,OAAA;AAAA,QACL,SAAA,EAAW,EAAA;AAAA,UACT,mBAAA,CAAoB,EAAE,QAAA,EAAU,OAAA,EAAS,WAAW,CAAA;AAAA,UACpD;AAAA,SACF;AAAA,QACC,GAAG,KAAA;AAAA,QAEH;AAAA;AAAA,KACH;AAAA,EAEJ;AACF,CAAA;AAEA,WAAA,CAAY,WAAA,GAAc,aAAA;AAG1B,IAAO,oBAAA,GAAQ","file":"chunk-56IXGP5C.js","sourcesContent":["import { cva } from 'class-variance-authority'\nimport React from 'react'\n\nimport { cn } from '../utils'\nimport type { ButtonGroupProps } from './types'\n\nconst buttonGroupVariants = cva('inline-flex', {\n variants: {\n vertical: {\n true: 'flex-col [&>*:not(:first-child)]:rounded-t-none [&>*:not(:last-child)]:border-b-0 [&>*:not(:last-child)]:rounded-b-none',\n false:\n 'flex-row [&>*:not(:first-child)]:rounded-l-none [&>*:not(:last-child)]:border-r-0 [&>*:not(:last-child)]:rounded-r-none',\n },\n spacing: {\n true: 'gap-2',\n false: 'gap-0',\n },\n fullWidth: {\n true: 'w-full [&>*]:flex-1',\n false: '',\n },\n },\n defaultVariants: {\n vertical: false,\n fullWidth: false,\n },\n})\n\nconst ButtonGroup = React.memo<ButtonGroupProps>(\n ({\n vertical = false,\n spacing = false,\n fullWidth = false,\n className,\n children,\n ref,\n ...props\n }) => {\n return (\n <div\n ref={ref}\n role=\"group\"\n className={cn(\n buttonGroupVariants({ vertical, spacing, fullWidth }),\n className,\n )}\n {...props}\n >\n {children}\n </div>\n )\n },\n)\n\nButtonGroup.displayName = 'ButtonGroup'\n\nexport type * from './types'\nexport default ButtonGroup\n"]}
|