@blueshift-gg/ui-components 0.1.50 → 0.1.52
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 +2 -2
- package/dist/Alert.cjs +71 -0
- package/dist/Alert.cjs.map +1 -0
- package/dist/Alert.d.cts +32 -0
- package/dist/Alert.d.cts.map +1 -0
- package/dist/Alert.d.mts +29 -16
- package/dist/Alert.d.mts.map +1 -0
- package/dist/Alert.mjs +64 -91
- package/dist/Alert.mjs.map +1 -1
- package/dist/Avatar.cjs +43 -0
- package/dist/Avatar.cjs.map +1 -0
- package/dist/Avatar.d.cts +26 -0
- package/dist/Avatar.d.cts.map +1 -0
- package/dist/Avatar.d.mts +23 -14
- package/dist/Avatar.d.mts.map +1 -0
- package/dist/Avatar.mjs +36 -61
- package/dist/Avatar.mjs.map +1 -1
- package/dist/Badge.cjs +51 -0
- package/dist/Badge.cjs.map +1 -0
- package/dist/Badge.d.cts +31 -0
- package/dist/Badge.d.cts.map +1 -0
- package/dist/Badge.d.mts +28 -17
- package/dist/Badge.d.mts.map +1 -0
- package/dist/Badge.mjs +44 -77
- package/dist/Badge.mjs.map +1 -1
- package/dist/Banner.cjs +53 -0
- package/dist/Banner.cjs.map +1 -0
- package/dist/Banner.d.cts +28 -0
- package/dist/Banner.d.cts.map +1 -0
- package/dist/Banner.d.mts +25 -15
- package/dist/Banner.d.mts.map +1 -0
- package/dist/Banner.mjs +46 -58
- package/dist/Banner.mjs.map +1 -1
- package/dist/Button.cjs +71 -0
- package/dist/Button.cjs.map +1 -0
- package/dist/Button.d.cts +53 -0
- package/dist/Button.d.cts.map +1 -0
- package/dist/Button.d.mts +49 -27
- package/dist/Button.d.mts.map +1 -0
- package/dist/Button.mjs +64 -143
- package/dist/Button.mjs.map +1 -1
- package/dist/Checkbox.cjs +59 -0
- package/dist/Checkbox.cjs.map +1 -0
- package/dist/Checkbox.d.cts +20 -0
- package/dist/Checkbox.d.cts.map +1 -0
- package/dist/Checkbox.d.mts +17 -9
- package/dist/Checkbox.d.mts.map +1 -0
- package/dist/Checkbox.mjs +52 -52
- package/dist/Checkbox.mjs.map +1 -1
- package/dist/Codeblock.cjs +95 -0
- package/dist/Codeblock.cjs.map +1 -0
- package/dist/Codeblock.d.cts +24 -0
- package/dist/Codeblock.d.cts.map +1 -0
- package/dist/Codeblock.d.mts +21 -12
- package/dist/Codeblock.d.mts.map +1 -0
- package/dist/Codeblock.mjs +88 -88
- package/dist/Codeblock.mjs.map +1 -1
- package/dist/CrossHair.cjs +175 -0
- package/dist/CrossHair.cjs.map +1 -0
- package/dist/CrossHair.d.cts +32 -0
- package/dist/CrossHair.d.cts.map +1 -0
- package/dist/CrossHair.d.mts +29 -15
- package/dist/CrossHair.d.mts.map +1 -0
- package/dist/CrossHair.mjs +168 -256
- package/dist/CrossHair.mjs.map +1 -1
- package/dist/DecryptText.cjs +89 -0
- package/dist/DecryptText.cjs.map +1 -0
- package/dist/DecryptText.d.cts +21 -0
- package/dist/DecryptText.d.cts.map +1 -0
- package/dist/DecryptText.d.mts +18 -9
- package/dist/DecryptText.d.mts.map +1 -0
- package/dist/DecryptText.mjs +82 -94
- package/dist/DecryptText.mjs.map +1 -1
- package/dist/Difficulty.cjs +175 -0
- package/dist/Difficulty.cjs.map +1 -0
- package/dist/Difficulty.d.cts +16 -0
- package/dist/Difficulty.d.cts.map +1 -0
- package/dist/Difficulty.d.mts +13 -7
- package/dist/Difficulty.d.mts.map +1 -0
- package/dist/Difficulty.mjs +167 -133
- package/dist/Difficulty.mjs.map +1 -1
- package/dist/Divider.cjs +18 -0
- package/dist/Divider.cjs.map +1 -0
- package/dist/Divider.d.cts +14 -0
- package/dist/Divider.d.cts.map +1 -0
- package/dist/Divider.d.mts +11 -6
- package/dist/Divider.d.mts.map +1 -0
- package/dist/Divider.mjs +11 -40
- package/dist/Divider.mjs.map +1 -1
- package/dist/Dropdown.cjs +404 -0
- package/dist/Dropdown.cjs.map +1 -0
- package/dist/Dropdown.d.cts +139 -0
- package/dist/Dropdown.d.cts.map +1 -0
- package/dist/Dropdown.d.mts +128 -69
- package/dist/Dropdown.d.mts.map +1 -0
- package/dist/Dropdown.mjs +383 -588
- package/dist/Dropdown.mjs.map +1 -1
- package/dist/GridLines.cjs +82 -0
- package/dist/GridLines.cjs.map +1 -0
- package/dist/GridLines.d.cts +18 -0
- package/dist/GridLines.d.cts.map +1 -0
- package/dist/GridLines.d.mts +15 -8
- package/dist/GridLines.d.mts.map +1 -0
- package/dist/GridLines.mjs +75 -80
- package/dist/GridLines.mjs.map +1 -1
- package/dist/HeadingReveal.cjs +64 -0
- package/dist/HeadingReveal.cjs.map +1 -0
- package/dist/HeadingReveal.d.cts +26 -0
- package/dist/HeadingReveal.d.cts.map +1 -0
- package/dist/HeadingReveal.d.mts +23 -12
- package/dist/HeadingReveal.d.mts.map +1 -0
- package/dist/HeadingReveal.mjs +57 -57
- package/dist/HeadingReveal.mjs.map +1 -1
- package/dist/Icon.cjs +25 -0
- package/dist/Icon.cjs.map +1 -0
- package/dist/Icon.d.cts +17 -0
- package/dist/Icon.d.cts.map +1 -0
- package/dist/Icon.d.mts +17 -2
- package/dist/Icon.d.mts.map +1 -0
- package/dist/Icon.mjs +17 -18
- package/dist/Icon.mjs.map +1 -1
- package/dist/Input.cjs +135 -0
- package/dist/Input.cjs.map +1 -0
- package/dist/Input.d.cts +60 -0
- package/dist/Input.d.cts.map +1 -0
- package/dist/Input.d.mts +57 -37
- package/dist/Input.d.mts.map +1 -0
- package/dist/Input.mjs +128 -178
- package/dist/Input.mjs.map +1 -1
- package/dist/Logo.cjs +127 -0
- package/dist/Logo.cjs.map +1 -0
- package/dist/Logo.d.cts +18 -0
- package/dist/Logo.d.cts.map +1 -0
- package/dist/Logo.d.mts +15 -8
- package/dist/Logo.d.mts.map +1 -0
- package/dist/Logo.mjs +120 -146
- package/dist/Logo.mjs.map +1 -1
- package/dist/Pagination.cjs +133 -0
- package/dist/Pagination.cjs.map +1 -0
- package/dist/Pagination.d.cts +40 -0
- package/dist/Pagination.d.cts.map +1 -0
- package/dist/Pagination.d.mts +35 -18
- package/dist/Pagination.d.mts.map +1 -0
- package/dist/Pagination.mjs +124 -175
- package/dist/Pagination.mjs.map +1 -1
- package/dist/Slider.cjs +291 -0
- package/dist/Slider.cjs.map +1 -0
- package/dist/Slider.d.cts +40 -0
- package/dist/Slider.d.cts.map +1 -0
- package/dist/Slider.d.mts +37 -24
- package/dist/Slider.d.mts.map +1 -0
- package/dist/Slider.mjs +282 -331
- package/dist/Slider.mjs.map +1 -1
- package/dist/Tabs.cjs +67 -0
- package/dist/Tabs.cjs.map +1 -0
- package/dist/Tabs.d.cts +37 -0
- package/dist/Tabs.d.cts.map +1 -0
- package/dist/Tabs.d.mts +33 -22
- package/dist/Tabs.d.mts.map +1 -0
- package/dist/Tabs.mjs +60 -100
- package/dist/Tabs.mjs.map +1 -1
- package/dist/Toast.cjs +82 -0
- package/dist/Toast.cjs.map +1 -0
- package/dist/Toast.d.cts +28 -0
- package/dist/Toast.d.cts.map +1 -0
- package/dist/Toast.d.mts +21 -11
- package/dist/Toast.d.mts.map +1 -0
- package/dist/Toast.mjs +63 -66
- package/dist/Toast.mjs.map +1 -1
- package/dist/Tooltip.cjs +149 -0
- package/dist/Tooltip.cjs.map +1 -0
- package/dist/Tooltip.d.cts +16 -0
- package/dist/Tooltip.d.cts.map +1 -0
- package/dist/Tooltip.d.mts +13 -7
- package/dist/Tooltip.d.mts.map +1 -0
- package/dist/Tooltip.mjs +135 -128
- package/dist/Tooltip.mjs.map +1 -1
- package/dist/_virtual/rolldown_runtime.cjs +29 -0
- package/dist/fonts/CommitMono-Regular.cjs +6 -0
- package/dist/fonts/CommitMono-Regular.cjs.map +1 -0
- package/dist/fonts/CommitMono-Regular.mjs +6 -0
- package/dist/fonts/CommitMono-Regular.mjs.map +1 -0
- package/dist/fonts/MONTECHV02-Medium.cjs +6 -0
- package/dist/fonts/MONTECHV02-Medium.cjs.map +1 -0
- package/dist/fonts/MONTECHV02-Medium.mjs +6 -0
- package/dist/fonts/MONTECHV02-Medium.mjs.map +1 -0
- package/dist/fonts/Switzer-Regular.cjs +6 -0
- package/dist/fonts/Switzer-Regular.cjs.map +1 -0
- package/dist/fonts/Switzer-Regular.mjs +6 -0
- package/dist/fonts/Switzer-Regular.mjs.map +1 -0
- package/dist/icons/Anchor.cjs +65 -0
- package/dist/icons/Anchor.cjs.map +1 -0
- package/dist/icons/Anchor.d.cts +11 -0
- package/dist/icons/Anchor.d.cts.map +1 -0
- package/dist/icons/Anchor.d.mts +9 -4
- package/dist/icons/Anchor.d.mts.map +1 -0
- package/dist/icons/Anchor.mjs +57 -77
- package/dist/icons/Anchor.mjs.map +1 -1
- package/dist/icons/ArrowLeft.cjs +25 -0
- package/dist/icons/ArrowLeft.cjs.map +1 -0
- package/dist/icons/ArrowLeft.d.cts +11 -0
- package/dist/icons/ArrowLeft.d.cts.map +1 -0
- package/dist/icons/ArrowLeft.d.mts +9 -4
- package/dist/icons/ArrowLeft.d.mts.map +1 -0
- package/dist/icons/ArrowLeft.mjs +18 -29
- package/dist/icons/ArrowLeft.mjs.map +1 -1
- package/dist/icons/ArrowRight.cjs +25 -0
- package/dist/icons/ArrowRight.cjs.map +1 -0
- package/dist/icons/ArrowRight.d.cts +11 -0
- package/dist/icons/ArrowRight.d.cts.map +1 -0
- package/dist/icons/ArrowRight.d.mts +9 -4
- package/dist/icons/ArrowRight.d.mts.map +1 -0
- package/dist/icons/ArrowRight.mjs +18 -29
- package/dist/icons/ArrowRight.mjs.map +1 -1
- package/dist/icons/Assembly.cjs +109 -0
- package/dist/icons/Assembly.cjs.map +1 -0
- package/dist/icons/Assembly.d.cts +11 -0
- package/dist/icons/Assembly.d.cts.map +1 -0
- package/dist/icons/Assembly.d.mts +9 -4
- package/dist/icons/Assembly.d.mts.map +1 -0
- package/dist/icons/Assembly.mjs +101 -160
- package/dist/icons/Assembly.mjs.map +1 -1
- package/dist/icons/Backpack.cjs +34 -0
- package/dist/icons/Backpack.cjs.map +1 -0
- package/dist/icons/Backpack.d.cts +11 -0
- package/dist/icons/Backpack.d.cts.map +1 -0
- package/dist/icons/Backpack.d.mts +9 -4
- package/dist/icons/Backpack.d.mts.map +1 -0
- package/dist/icons/Backpack.mjs +27 -38
- package/dist/icons/Backpack.mjs.map +1 -1
- package/dist/icons/Brave.cjs +51 -0
- package/dist/icons/Brave.cjs.map +1 -0
- package/dist/icons/Brave.d.cts +11 -0
- package/dist/icons/Brave.d.cts.map +1 -0
- package/dist/icons/Brave.d.mts +9 -4
- package/dist/icons/Brave.d.mts.map +1 -0
- package/dist/icons/Brave.mjs +44 -52
- package/dist/icons/Brave.mjs.map +1 -1
- package/dist/icons/Challenge.cjs +30 -0
- package/dist/icons/Challenge.cjs.map +1 -0
- package/dist/icons/Challenge.d.cts +11 -0
- package/dist/icons/Challenge.d.cts.map +1 -0
- package/dist/icons/Challenge.d.mts +9 -4
- package/dist/icons/Challenge.d.mts.map +1 -0
- package/dist/icons/Challenge.mjs +23 -34
- package/dist/icons/Challenge.mjs.map +1 -1
- package/dist/icons/Chevron.cjs +22 -0
- package/dist/icons/Chevron.cjs.map +1 -0
- package/dist/icons/Chevron.d.cts +11 -0
- package/dist/icons/Chevron.d.cts.map +1 -0
- package/dist/icons/Chevron.d.mts +9 -4
- package/dist/icons/Chevron.d.mts.map +1 -0
- package/dist/icons/Chevron.mjs +15 -20
- package/dist/icons/Chevron.mjs.map +1 -1
- package/dist/icons/ChevronLeft.cjs +22 -0
- package/dist/icons/ChevronLeft.cjs.map +1 -0
- package/dist/icons/ChevronLeft.d.cts +11 -0
- package/dist/icons/ChevronLeft.d.cts.map +1 -0
- package/dist/icons/ChevronLeft.d.mts +9 -4
- package/dist/icons/ChevronLeft.d.mts.map +1 -0
- package/dist/icons/ChevronLeft.mjs +15 -20
- package/dist/icons/ChevronLeft.mjs.map +1 -1
- package/dist/icons/ChevronRight.cjs +22 -0
- package/dist/icons/ChevronRight.cjs.map +1 -0
- package/dist/icons/ChevronRight.d.cts +11 -0
- package/dist/icons/ChevronRight.d.cts.map +1 -0
- package/dist/icons/ChevronRight.d.mts +9 -4
- package/dist/icons/ChevronRight.d.mts.map +1 -0
- package/dist/icons/ChevronRight.mjs +15 -20
- package/dist/icons/ChevronRight.mjs.map +1 -1
- package/dist/icons/Claim.cjs +26 -0
- package/dist/icons/Claim.cjs.map +1 -0
- package/dist/icons/Claim.d.cts +11 -0
- package/dist/icons/Claim.d.cts.map +1 -0
- package/dist/icons/Claim.d.mts +9 -4
- package/dist/icons/Claim.d.mts.map +1 -0
- package/dist/icons/Claim.mjs +19 -30
- package/dist/icons/Claim.mjs.map +1 -1
- package/dist/icons/Claimed.cjs +22 -0
- package/dist/icons/Claimed.cjs.map +1 -0
- package/dist/icons/Claimed.d.cts +11 -0
- package/dist/icons/Claimed.d.cts.map +1 -0
- package/dist/icons/Claimed.d.mts +9 -4
- package/dist/icons/Claimed.d.mts.map +1 -0
- package/dist/icons/Claimed.mjs +15 -20
- package/dist/icons/Claimed.mjs.map +1 -1
- package/dist/icons/Clock.cjs +30 -0
- package/dist/icons/Clock.cjs.map +1 -0
- package/dist/icons/Clock.d.cts +11 -0
- package/dist/icons/Clock.d.cts.map +1 -0
- package/dist/icons/Clock.d.mts +9 -4
- package/dist/icons/Clock.d.mts.map +1 -0
- package/dist/icons/Clock.mjs +23 -34
- package/dist/icons/Clock.mjs.map +1 -1
- package/dist/icons/Close.cjs +27 -0
- package/dist/icons/Close.cjs.map +1 -0
- package/dist/icons/Close.d.cts +11 -0
- package/dist/icons/Close.d.cts.map +1 -0
- package/dist/icons/Close.d.mts +9 -4
- package/dist/icons/Close.d.mts.map +1 -0
- package/dist/icons/Close.mjs +20 -31
- package/dist/icons/Close.mjs.map +1 -1
- package/dist/icons/Code.cjs +31 -0
- package/dist/icons/Code.cjs.map +1 -0
- package/dist/icons/Code.d.cts +11 -0
- package/dist/icons/Code.d.cts.map +1 -0
- package/dist/icons/Code.d.mts +9 -4
- package/dist/icons/Code.d.mts.map +1 -0
- package/dist/icons/Code.mjs +24 -32
- package/dist/icons/Code.mjs.map +1 -1
- package/dist/icons/Copy.cjs +25 -0
- package/dist/icons/Copy.cjs.map +1 -0
- package/dist/icons/Copy.d.cts +11 -0
- package/dist/icons/Copy.d.cts.map +1 -0
- package/dist/icons/Copy.d.mts +9 -4
- package/dist/icons/Copy.d.mts.map +1 -0
- package/dist/icons/Copy.mjs +18 -29
- package/dist/icons/Copy.mjs.map +1 -1
- package/dist/icons/Cross.cjs +25 -0
- package/dist/icons/Cross.cjs.map +1 -0
- package/dist/icons/Cross.d.cts +11 -0
- package/dist/icons/Cross.d.cts.map +1 -0
- package/dist/icons/Cross.d.mts +9 -4
- package/dist/icons/Cross.d.mts.map +1 -0
- package/dist/icons/Cross.mjs +18 -29
- package/dist/icons/Cross.mjs.map +1 -1
- package/dist/icons/Developer.cjs +34 -0
- package/dist/icons/Developer.cjs.map +1 -0
- package/dist/icons/Developer.d.cts +11 -0
- package/dist/icons/Developer.d.cts.map +1 -0
- package/dist/icons/Developer.d.mts +9 -4
- package/dist/icons/Developer.d.mts.map +1 -0
- package/dist/icons/Developer.mjs +27 -38
- package/dist/icons/Developer.mjs.map +1 -1
- package/dist/icons/Disconnect.cjs +40 -0
- package/dist/icons/Disconnect.cjs.map +1 -0
- package/dist/icons/Disconnect.d.cts +11 -0
- package/dist/icons/Disconnect.d.cts.map +1 -0
- package/dist/icons/Disconnect.d.mts +9 -4
- package/dist/icons/Disconnect.d.mts.map +1 -0
- package/dist/icons/Disconnect.mjs +33 -38
- package/dist/icons/Disconnect.mjs.map +1 -1
- package/dist/icons/Discord.cjs +22 -0
- package/dist/icons/Discord.cjs.map +1 -0
- package/dist/icons/Discord.d.cts +11 -0
- package/dist/icons/Discord.d.cts.map +1 -0
- package/dist/icons/Discord.d.mts +9 -4
- package/dist/icons/Discord.d.mts.map +1 -0
- package/dist/icons/Discord.mjs +15 -20
- package/dist/icons/Discord.mjs.map +1 -1
- package/dist/icons/Dollar.cjs +24 -0
- package/dist/icons/Dollar.cjs.map +1 -0
- package/dist/icons/Dollar.d.cts +11 -0
- package/dist/icons/Dollar.d.cts.map +1 -0
- package/dist/icons/Dollar.d.mts +9 -4
- package/dist/icons/Dollar.d.mts.map +1 -0
- package/dist/icons/Dollar.mjs +17 -22
- package/dist/icons/Dollar.mjs.map +1 -1
- package/dist/icons/DoubleArrow.cjs +25 -0
- package/dist/icons/DoubleArrow.cjs.map +1 -0
- package/dist/icons/DoubleArrow.d.cts +11 -0
- package/dist/icons/DoubleArrow.d.cts.map +1 -0
- package/dist/icons/DoubleArrow.d.mts +9 -4
- package/dist/icons/DoubleArrow.d.mts.map +1 -0
- package/dist/icons/DoubleArrow.mjs +18 -29
- package/dist/icons/DoubleArrow.mjs.map +1 -1
- package/dist/icons/EVM.cjs +29 -0
- package/dist/icons/EVM.cjs.map +1 -0
- package/dist/icons/EVM.d.cts +11 -0
- package/dist/icons/EVM.d.cts.map +1 -0
- package/dist/icons/EVM.d.mts +9 -4
- package/dist/icons/EVM.d.mts.map +1 -0
- package/dist/icons/EVM.mjs +22 -33
- package/dist/icons/EVM.mjs.map +1 -1
- package/dist/icons/Email.cjs +33 -0
- package/dist/icons/Email.cjs.map +1 -0
- package/dist/icons/Email.d.cts +11 -0
- package/dist/icons/Email.d.cts.map +1 -0
- package/dist/icons/Email.d.mts +9 -4
- package/dist/icons/Email.d.mts.map +1 -0
- package/dist/icons/Email.mjs +26 -37
- package/dist/icons/Email.mjs.map +1 -1
- package/dist/icons/Error.cjs +22 -0
- package/dist/icons/Error.cjs.map +1 -0
- package/dist/icons/Error.d.cts +11 -0
- package/dist/icons/Error.d.cts.map +1 -0
- package/dist/icons/Error.d.mts +9 -4
- package/dist/icons/Error.d.mts.map +1 -0
- package/dist/icons/Error.mjs +15 -20
- package/dist/icons/Error.mjs.map +1 -1
- package/dist/icons/Expand.cjs +25 -0
- package/dist/icons/Expand.cjs.map +1 -0
- package/dist/icons/Expand.d.cts +11 -0
- package/dist/icons/Expand.d.cts.map +1 -0
- package/dist/icons/Expand.d.mts +9 -4
- package/dist/icons/Expand.d.mts.map +1 -0
- package/dist/icons/Expand.mjs +18 -29
- package/dist/icons/Expand.mjs.map +1 -1
- package/dist/icons/External.cjs +26 -0
- package/dist/icons/External.cjs.map +1 -0
- package/dist/icons/External.d.cts +11 -0
- package/dist/icons/External.d.cts.map +1 -0
- package/dist/icons/External.d.mts +9 -4
- package/dist/icons/External.d.mts.map +1 -0
- package/dist/icons/External.mjs +19 -30
- package/dist/icons/External.mjs.map +1 -1
- package/dist/icons/Filter.cjs +33 -0
- package/dist/icons/Filter.cjs.map +1 -0
- package/dist/icons/Filter.d.cts +11 -0
- package/dist/icons/Filter.d.cts.map +1 -0
- package/dist/icons/Filter.d.mts +9 -4
- package/dist/icons/Filter.d.mts.map +1 -0
- package/dist/icons/Filter.mjs +26 -37
- package/dist/icons/Filter.mjs.map +1 -1
- package/dist/icons/Firmware.cjs +25 -0
- package/dist/icons/Firmware.cjs.map +1 -0
- package/dist/icons/Firmware.d.cts +11 -0
- package/dist/icons/Firmware.d.cts.map +1 -0
- package/dist/icons/Firmware.d.mts +9 -4
- package/dist/icons/Firmware.d.mts.map +1 -0
- package/dist/icons/Firmware.mjs +18 -29
- package/dist/icons/Firmware.mjs.map +1 -1
- package/dist/icons/Flag.cjs +25 -0
- package/dist/icons/Flag.cjs.map +1 -0
- package/dist/icons/Flag.d.cts +11 -0
- package/dist/icons/Flag.d.cts.map +1 -0
- package/dist/icons/Flag.d.mts +9 -4
- package/dist/icons/Flag.d.mts.map +1 -0
- package/dist/icons/Flag.mjs +18 -29
- package/dist/icons/Flag.mjs.map +1 -1
- package/dist/icons/Flame.cjs +22 -0
- package/dist/icons/Flame.cjs.map +1 -0
- package/dist/icons/Flame.d.cts +11 -0
- package/dist/icons/Flame.d.cts.map +1 -0
- package/dist/icons/Flame.d.mts +9 -4
- package/dist/icons/Flame.d.mts.map +1 -0
- package/dist/icons/Flame.mjs +15 -20
- package/dist/icons/Flame.mjs.map +1 -1
- package/dist/icons/Flexible.cjs +40 -0
- package/dist/icons/Flexible.cjs.map +1 -0
- package/dist/icons/Flexible.d.cts +11 -0
- package/dist/icons/Flexible.d.cts.map +1 -0
- package/dist/icons/Flexible.d.mts +9 -4
- package/dist/icons/Flexible.d.mts.map +1 -0
- package/dist/icons/Flexible.mjs +33 -44
- package/dist/icons/Flexible.mjs.map +1 -1
- package/dist/icons/Free.cjs +38 -0
- package/dist/icons/Free.cjs.map +1 -0
- package/dist/icons/Free.d.cts +11 -0
- package/dist/icons/Free.d.cts.map +1 -0
- package/dist/icons/Free.d.mts +9 -4
- package/dist/icons/Free.d.mts.map +1 -0
- package/dist/icons/Free.mjs +31 -45
- package/dist/icons/Free.mjs.map +1 -1
- package/dist/icons/General.cjs +63 -0
- package/dist/icons/General.cjs.map +1 -0
- package/dist/icons/General.d.cts +11 -0
- package/dist/icons/General.d.cts.map +1 -0
- package/dist/icons/General.d.mts +9 -4
- package/dist/icons/General.d.mts.map +1 -0
- package/dist/icons/General.mjs +56 -52
- package/dist/icons/General.mjs.map +1 -1
- package/dist/icons/Github.cjs +33 -0
- package/dist/icons/Github.cjs.map +1 -0
- package/dist/icons/Github.d.cts +11 -0
- package/dist/icons/Github.d.cts.map +1 -0
- package/dist/icons/Github.d.mts +9 -4
- package/dist/icons/Github.d.mts.map +1 -0
- package/dist/icons/Github.mjs +26 -31
- package/dist/icons/Github.mjs.map +1 -1
- package/dist/icons/Globe.cjs +22 -0
- package/dist/icons/Globe.cjs.map +1 -0
- package/dist/icons/Globe.d.cts +11 -0
- package/dist/icons/Globe.d.cts.map +1 -0
- package/dist/icons/Globe.d.mts +9 -4
- package/dist/icons/Globe.d.mts.map +1 -0
- package/dist/icons/Globe.mjs +15 -17
- package/dist/icons/Globe.mjs.map +1 -1
- package/dist/icons/GridView.cjs +36 -0
- package/dist/icons/GridView.cjs.map +1 -0
- package/dist/icons/GridView.d.cts +11 -0
- package/dist/icons/GridView.d.cts.map +1 -0
- package/dist/icons/GridView.d.mts +9 -4
- package/dist/icons/GridView.d.mts.map +1 -0
- package/dist/icons/GridView.mjs +29 -43
- package/dist/icons/GridView.mjs.map +1 -1
- package/dist/icons/Heart.cjs +22 -0
- package/dist/icons/Heart.cjs.map +1 -0
- package/dist/icons/Heart.d.cts +11 -0
- package/dist/icons/Heart.d.cts.map +1 -0
- package/dist/icons/Heart.d.mts +9 -4
- package/dist/icons/Heart.d.mts.map +1 -0
- package/dist/icons/Heart.mjs +15 -20
- package/dist/icons/Heart.mjs.map +1 -1
- package/dist/icons/Info.cjs +22 -0
- package/dist/icons/Info.cjs.map +1 -0
- package/dist/icons/Info.d.cts +11 -0
- package/dist/icons/Info.d.cts.map +1 -0
- package/dist/icons/Info.d.mts +9 -4
- package/dist/icons/Info.d.mts.map +1 -0
- package/dist/icons/Info.mjs +15 -20
- package/dist/icons/Info.mjs.map +1 -1
- package/dist/icons/Language.cjs +30 -0
- package/dist/icons/Language.cjs.map +1 -0
- package/dist/icons/Language.d.cts +11 -0
- package/dist/icons/Language.d.cts.map +1 -0
- package/dist/icons/Language.d.mts +9 -4
- package/dist/icons/Language.d.mts.map +1 -0
- package/dist/icons/Language.mjs +23 -34
- package/dist/icons/Language.mjs.map +1 -1
- package/dist/icons/Lessons.cjs +26 -0
- package/dist/icons/Lessons.cjs.map +1 -0
- package/dist/icons/Lessons.d.cts +11 -0
- package/dist/icons/Lessons.d.cts.map +1 -0
- package/dist/icons/Lessons.d.mts +9 -4
- package/dist/icons/Lessons.d.mts.map +1 -0
- package/dist/icons/Lessons.mjs +19 -30
- package/dist/icons/Lessons.mjs.map +1 -1
- package/dist/icons/Link.cjs +28 -0
- package/dist/icons/Link.cjs.map +1 -0
- package/dist/icons/Link.d.cts +11 -0
- package/dist/icons/Link.d.cts.map +1 -0
- package/dist/icons/Link.d.mts +9 -4
- package/dist/icons/Link.d.mts.map +1 -0
- package/dist/icons/Link.mjs +21 -29
- package/dist/icons/Link.mjs.map +1 -1
- package/dist/icons/ListView.cjs +32 -0
- package/dist/icons/ListView.cjs.map +1 -0
- package/dist/icons/ListView.d.cts +11 -0
- package/dist/icons/ListView.d.cts.map +1 -0
- package/dist/icons/ListView.d.mts +9 -4
- package/dist/icons/ListView.d.mts.map +1 -0
- package/dist/icons/ListView.mjs +25 -36
- package/dist/icons/ListView.mjs.map +1 -1
- package/dist/icons/Loading.cjs +26 -0
- package/dist/icons/Loading.cjs.map +1 -0
- package/dist/icons/Loading.d.cts +11 -0
- package/dist/icons/Loading.d.cts.map +1 -0
- package/dist/icons/Loading.d.mts +9 -4
- package/dist/icons/Loading.d.mts.map +1 -0
- package/dist/icons/Loading.mjs +19 -32
- package/dist/icons/Loading.mjs.map +1 -1
- package/dist/icons/Locked.cjs +25 -0
- package/dist/icons/Locked.cjs.map +1 -0
- package/dist/icons/Locked.d.cts +11 -0
- package/dist/icons/Locked.d.cts.map +1 -0
- package/dist/icons/Locked.d.mts +9 -4
- package/dist/icons/Locked.d.mts.map +1 -0
- package/dist/icons/Locked.mjs +18 -29
- package/dist/icons/Locked.mjs.map +1 -1
- package/dist/icons/Logs.cjs +33 -0
- package/dist/icons/Logs.cjs.map +1 -0
- package/dist/icons/Logs.d.cts +11 -0
- package/dist/icons/Logs.d.cts.map +1 -0
- package/dist/icons/Logs.d.mts +9 -4
- package/dist/icons/Logs.d.mts.map +1 -0
- package/dist/icons/Logs.mjs +26 -18
- package/dist/icons/Logs.mjs.map +1 -1
- package/dist/icons/Mentor.cjs +38 -0
- package/dist/icons/Mentor.cjs.map +1 -0
- package/dist/icons/Mentor.d.cts +11 -0
- package/dist/icons/Mentor.d.cts.map +1 -0
- package/dist/icons/Mentor.d.mts +9 -4
- package/dist/icons/Mentor.d.mts.map +1 -0
- package/dist/icons/Mentor.mjs +31 -39
- package/dist/icons/Mentor.mjs.map +1 -1
- package/dist/icons/Metamask.cjs +48 -0
- package/dist/icons/Metamask.cjs.map +1 -0
- package/dist/icons/Metamask.d.cts +11 -0
- package/dist/icons/Metamask.d.cts.map +1 -0
- package/dist/icons/Metamask.d.mts +9 -4
- package/dist/icons/Metamask.d.mts.map +1 -0
- package/dist/icons/Metamask.mjs +41 -64
- package/dist/icons/Metamask.mjs.map +1 -1
- package/dist/icons/Minimize.cjs +25 -0
- package/dist/icons/Minimize.cjs.map +1 -0
- package/dist/icons/Minimize.d.cts +11 -0
- package/dist/icons/Minimize.d.cts.map +1 -0
- package/dist/icons/Minimize.d.mts +9 -4
- package/dist/icons/Minimize.d.mts.map +1 -0
- package/dist/icons/Minimize.mjs +18 -29
- package/dist/icons/Minimize.mjs.map +1 -1
- package/dist/icons/Modular.cjs +38 -0
- package/dist/icons/Modular.cjs.map +1 -0
- package/dist/icons/Modular.d.cts +11 -0
- package/dist/icons/Modular.d.cts.map +1 -0
- package/dist/icons/Modular.d.mts +9 -4
- package/dist/icons/Modular.d.mts.map +1 -0
- package/dist/icons/Modular.mjs +31 -45
- package/dist/icons/Modular.mjs.map +1 -1
- package/dist/icons/NFT.cjs +37 -0
- package/dist/icons/NFT.cjs.map +1 -0
- package/dist/icons/NFT.d.cts +11 -0
- package/dist/icons/NFT.d.cts.map +1 -0
- package/dist/icons/NFT.d.mts +9 -4
- package/dist/icons/NFT.d.mts.map +1 -0
- package/dist/icons/NFT.mjs +30 -41
- package/dist/icons/NFT.mjs.map +1 -1
- package/dist/icons/Online.cjs +47 -0
- package/dist/icons/Online.cjs.map +1 -0
- package/dist/icons/Online.d.cts +11 -0
- package/dist/icons/Online.d.cts.map +1 -0
- package/dist/icons/Online.d.mts +9 -4
- package/dist/icons/Online.d.mts.map +1 -0
- package/dist/icons/Online.mjs +40 -47
- package/dist/icons/Online.mjs.map +1 -1
- package/dist/icons/Password.cjs +32 -0
- package/dist/icons/Password.cjs.map +1 -0
- package/dist/icons/Password.d.cts +11 -0
- package/dist/icons/Password.d.cts.map +1 -0
- package/dist/icons/Password.d.mts +9 -4
- package/dist/icons/Password.d.mts.map +1 -0
- package/dist/icons/Password.mjs +25 -36
- package/dist/icons/Password.mjs.map +1 -1
- package/dist/icons/Path.cjs +30 -0
- package/dist/icons/Path.cjs.map +1 -0
- package/dist/icons/Path.d.cts +11 -0
- package/dist/icons/Path.d.cts.map +1 -0
- package/dist/icons/Path.d.mts +9 -4
- package/dist/icons/Path.d.mts.map +1 -0
- package/dist/icons/Path.mjs +23 -34
- package/dist/icons/Path.mjs.map +1 -1
- package/dist/icons/Perks.cjs +35 -0
- package/dist/icons/Perks.cjs.map +1 -0
- package/dist/icons/Perks.d.cts +11 -0
- package/dist/icons/Perks.d.cts.map +1 -0
- package/dist/icons/Perks.d.mts +9 -4
- package/dist/icons/Perks.d.mts.map +1 -0
- package/dist/icons/Perks.mjs +28 -33
- package/dist/icons/Perks.mjs.map +1 -1
- package/dist/icons/Phantom.cjs +22 -0
- package/dist/icons/Phantom.cjs.map +1 -0
- package/dist/icons/Phantom.d.cts +11 -0
- package/dist/icons/Phantom.d.cts.map +1 -0
- package/dist/icons/Phantom.d.mts +9 -4
- package/dist/icons/Phantom.d.mts.map +1 -0
- package/dist/icons/Phantom.mjs +15 -20
- package/dist/icons/Phantom.mjs.map +1 -1
- package/dist/icons/Play.cjs +22 -0
- package/dist/icons/Play.cjs.map +1 -0
- package/dist/icons/Play.d.cts +11 -0
- package/dist/icons/Play.d.cts.map +1 -0
- package/dist/icons/Play.d.mts +9 -4
- package/dist/icons/Play.d.mts.map +1 -0
- package/dist/icons/Play.mjs +15 -20
- package/dist/icons/Play.mjs.map +1 -1
- package/dist/icons/Product.cjs +32 -0
- package/dist/icons/Product.cjs.map +1 -0
- package/dist/icons/Product.d.cts +11 -0
- package/dist/icons/Product.d.cts.map +1 -0
- package/dist/icons/Product.d.mts +9 -4
- package/dist/icons/Product.d.mts.map +1 -0
- package/dist/icons/Product.mjs +25 -36
- package/dist/icons/Product.mjs.map +1 -1
- package/dist/icons/Progress.cjs +28 -0
- package/dist/icons/Progress.cjs.map +1 -0
- package/dist/icons/Progress.d.cts +11 -0
- package/dist/icons/Progress.d.cts.map +1 -0
- package/dist/icons/Progress.d.mts +9 -4
- package/dist/icons/Progress.d.mts.map +1 -0
- package/dist/icons/Progress.mjs +21 -29
- package/dist/icons/Progress.mjs.map +1 -1
- package/dist/icons/Protocol.cjs +32 -0
- package/dist/icons/Protocol.cjs.map +1 -0
- package/dist/icons/Protocol.d.cts +11 -0
- package/dist/icons/Protocol.d.cts.map +1 -0
- package/dist/icons/Protocol.d.mts +9 -4
- package/dist/icons/Protocol.d.mts.map +1 -0
- package/dist/icons/Protocol.mjs +25 -36
- package/dist/icons/Protocol.mjs.map +1 -1
- package/dist/icons/Refresh.cjs +25 -0
- package/dist/icons/Refresh.cjs.map +1 -0
- package/dist/icons/Refresh.d.cts +11 -0
- package/dist/icons/Refresh.d.cts.map +1 -0
- package/dist/icons/Refresh.d.mts +9 -4
- package/dist/icons/Refresh.d.mts.map +1 -0
- package/dist/icons/Refresh.mjs +18 -29
- package/dist/icons/Refresh.mjs.map +1 -1
- package/dist/icons/Rewards.cjs +26 -0
- package/dist/icons/Rewards.cjs.map +1 -0
- package/dist/icons/Rewards.d.cts +11 -0
- package/dist/icons/Rewards.d.cts.map +1 -0
- package/dist/icons/Rewards.d.mts +9 -4
- package/dist/icons/Rewards.d.mts.map +1 -0
- package/dist/icons/Rewards.mjs +19 -30
- package/dist/icons/Rewards.mjs.map +1 -1
- package/dist/icons/Rust.cjs +95 -0
- package/dist/icons/Rust.cjs.map +1 -0
- package/dist/icons/Rust.d.cts +11 -0
- package/dist/icons/Rust.d.cts.map +1 -0
- package/dist/icons/Rust.d.mts +9 -4
- package/dist/icons/Rust.d.mts.map +1 -0
- package/dist/icons/Rust.mjs +88 -138
- package/dist/icons/Rust.mjs.map +1 -1
- package/dist/icons/Search.cjs +37 -0
- package/dist/icons/Search.cjs.map +1 -0
- package/dist/icons/Search.d.cts +11 -0
- package/dist/icons/Search.d.cts.map +1 -0
- package/dist/icons/Search.d.mts +9 -4
- package/dist/icons/Search.d.mts.map +1 -0
- package/dist/icons/Search.mjs +30 -44
- package/dist/icons/Search.mjs.map +1 -1
- package/dist/icons/SmartContract.cjs +22 -0
- package/dist/icons/SmartContract.cjs.map +1 -0
- package/dist/icons/SmartContract.d.cts +11 -0
- package/dist/icons/SmartContract.d.cts.map +1 -0
- package/dist/icons/SmartContract.d.mts +9 -4
- package/dist/icons/SmartContract.d.mts.map +1 -0
- package/dist/icons/SmartContract.mjs +15 -20
- package/dist/icons/SmartContract.mjs.map +1 -1
- package/dist/icons/Solana.cjs +64 -0
- package/dist/icons/Solana.cjs.map +1 -0
- package/dist/icons/Solana.d.cts +11 -0
- package/dist/icons/Solana.d.cts.map +1 -0
- package/dist/icons/Solana.d.mts +9 -4
- package/dist/icons/Solana.d.mts.map +1 -0
- package/dist/icons/Solana.mjs +57 -44
- package/dist/icons/Solana.mjs.map +1 -1
- package/dist/icons/Solflare.cjs +22 -0
- package/dist/icons/Solflare.cjs.map +1 -0
- package/dist/icons/Solflare.d.cts +11 -0
- package/dist/icons/Solflare.d.cts.map +1 -0
- package/dist/icons/Solflare.d.mts +9 -4
- package/dist/icons/Solflare.d.mts.map +1 -0
- package/dist/icons/Solflare.mjs +15 -20
- package/dist/icons/Solflare.mjs.map +1 -1
- package/dist/icons/Success.cjs +25 -0
- package/dist/icons/Success.cjs.map +1 -0
- package/dist/icons/Success.d.cts +11 -0
- package/dist/icons/Success.d.cts.map +1 -0
- package/dist/icons/Success.d.mts +9 -4
- package/dist/icons/Success.d.mts.map +1 -0
- package/dist/icons/Success.mjs +18 -23
- package/dist/icons/Success.mjs.map +1 -1
- package/dist/icons/SuccessCircle.cjs +25 -0
- package/dist/icons/SuccessCircle.cjs.map +1 -0
- package/dist/icons/SuccessCircle.d.cts +11 -0
- package/dist/icons/SuccessCircle.d.cts.map +1 -0
- package/dist/icons/SuccessCircle.d.mts +9 -4
- package/dist/icons/SuccessCircle.d.mts.map +1 -0
- package/dist/icons/SuccessCircle.mjs +18 -23
- package/dist/icons/SuccessCircle.mjs.map +1 -1
- package/dist/icons/Table.cjs +32 -0
- package/dist/icons/Table.cjs.map +1 -0
- package/dist/icons/Table.d.cts +11 -0
- package/dist/icons/Table.d.cts.map +1 -0
- package/dist/icons/Table.d.mts +9 -4
- package/dist/icons/Table.d.mts.map +1 -0
- package/dist/icons/Table.mjs +25 -36
- package/dist/icons/Table.mjs.map +1 -1
- package/dist/icons/Target.cjs +35 -0
- package/dist/icons/Target.cjs.map +1 -0
- package/dist/icons/Target.d.cts +11 -0
- package/dist/icons/Target.d.cts.map +1 -0
- package/dist/icons/Target.d.mts +9 -4
- package/dist/icons/Target.d.mts.map +1 -0
- package/dist/icons/Target.mjs +28 -39
- package/dist/icons/Target.mjs.map +1 -1
- package/dist/icons/Training.cjs +32 -0
- package/dist/icons/Training.cjs.map +1 -0
- package/dist/icons/Training.d.cts +11 -0
- package/dist/icons/Training.d.cts.map +1 -0
- package/dist/icons/Training.d.mts +9 -4
- package/dist/icons/Training.d.mts.map +1 -0
- package/dist/icons/Training.mjs +25 -36
- package/dist/icons/Training.mjs.map +1 -1
- package/dist/icons/Typescript.cjs +79 -0
- package/dist/icons/Typescript.cjs.map +1 -0
- package/dist/icons/Typescript.d.cts +11 -0
- package/dist/icons/Typescript.d.cts.map +1 -0
- package/dist/icons/Typescript.d.mts +9 -4
- package/dist/icons/Typescript.d.mts.map +1 -0
- package/dist/icons/Typescript.mjs +72 -116
- package/dist/icons/Typescript.mjs.map +1 -1
- package/dist/icons/Unclaimed.cjs +25 -0
- package/dist/icons/Unclaimed.cjs.map +1 -0
- package/dist/icons/Unclaimed.d.cts +11 -0
- package/dist/icons/Unclaimed.d.cts.map +1 -0
- package/dist/icons/Unclaimed.d.mts +9 -4
- package/dist/icons/Unclaimed.d.mts.map +1 -0
- package/dist/icons/Unclaimed.mjs +18 -29
- package/dist/icons/Unclaimed.mjs.map +1 -1
- package/dist/icons/Upload.cjs +26 -0
- package/dist/icons/Upload.cjs.map +1 -0
- package/dist/icons/Upload.d.cts +11 -0
- package/dist/icons/Upload.d.cts.map +1 -0
- package/dist/icons/Upload.d.mts +9 -4
- package/dist/icons/Upload.d.mts.map +1 -0
- package/dist/icons/Upload.mjs +19 -30
- package/dist/icons/Upload.mjs.map +1 -1
- package/dist/icons/User.cjs +32 -0
- package/dist/icons/User.cjs.map +1 -0
- package/dist/icons/User.d.cts +11 -0
- package/dist/icons/User.d.cts.map +1 -0
- package/dist/icons/User.d.mts +9 -4
- package/dist/icons/User.d.mts.map +1 -0
- package/dist/icons/User.mjs +25 -36
- package/dist/icons/User.mjs.map +1 -1
- package/dist/icons/Wallet.cjs +34 -0
- package/dist/icons/Wallet.cjs.map +1 -0
- package/dist/icons/Wallet.d.cts +11 -0
- package/dist/icons/Wallet.d.cts.map +1 -0
- package/dist/icons/Wallet.d.mts +9 -4
- package/dist/icons/Wallet.d.mts.map +1 -0
- package/dist/icons/Wallet.mjs +27 -38
- package/dist/icons/Wallet.mjs.map +1 -1
- package/dist/icons/WalletSmall.cjs +25 -0
- package/dist/icons/WalletSmall.cjs.map +1 -0
- package/dist/icons/WalletSmall.d.cts +11 -0
- package/dist/icons/WalletSmall.d.cts.map +1 -0
- package/dist/icons/WalletSmall.d.mts +9 -4
- package/dist/icons/WalletSmall.d.mts.map +1 -0
- package/dist/icons/WalletSmall.mjs +18 -29
- package/dist/icons/WalletSmall.mjs.map +1 -1
- package/dist/icons/Warning.cjs +30 -0
- package/dist/icons/Warning.cjs.map +1 -0
- package/dist/icons/Warning.d.cts +11 -0
- package/dist/icons/Warning.d.cts.map +1 -0
- package/dist/icons/Warning.d.mts +9 -4
- package/dist/icons/Warning.d.mts.map +1 -0
- package/dist/icons/Warning.mjs +23 -25
- package/dist/icons/Warning.mjs.map +1 -1
- package/dist/icons/X.cjs +22 -0
- package/dist/icons/X.cjs.map +1 -0
- package/dist/icons/X.d.cts +11 -0
- package/dist/icons/X.d.cts.map +1 -0
- package/dist/icons/X.d.mts +9 -4
- package/dist/icons/X.d.mts.map +1 -0
- package/dist/icons/X.mjs +15 -20
- package/dist/icons/X.mjs.map +1 -1
- package/dist/icons/index.cjs +180 -0
- package/dist/icons/index.cjs.map +1 -0
- package/dist/icons/index.d.cts +335 -0
- package/dist/icons/index.d.cts.map +1 -0
- package/dist/icons/index.d.mts +335 -2
- package/dist/icons/index.d.mts.map +1 -0
- package/dist/icons/index.mjs +171 -168
- package/dist/icons/index.mjs.map +1 -1
- package/dist/index.cjs +64 -0
- package/dist/index.d.cts +26 -0
- package/dist/index.d.mts +26 -27
- package/dist/index.mjs +27 -27
- package/dist/utils/colours.cjs +36 -0
- package/dist/utils/colours.cjs.map +1 -0
- package/dist/utils/colours.d.cts +33 -0
- package/dist/utils/colours.d.cts.map +1 -0
- package/dist/utils/colours.d.mts +26 -24
- package/dist/utils/colours.d.mts.map +1 -0
- package/dist/utils/colours.mjs +24 -23
- package/dist/utils/colours.mjs.map +1 -1
- package/dist/utils/easings.cjs +58 -0
- package/dist/utils/easings.cjs.map +1 -0
- package/dist/utils/easings.d.cts +15 -0
- package/dist/utils/easings.d.cts.map +1 -0
- package/dist/utils/easings.d.mts +12 -16
- package/dist/utils/easings.d.mts.map +1 -0
- package/dist/utils/easings.mjs +44 -8
- package/dist/utils/easings.mjs.map +1 -1
- package/package.json +3 -3
- package/dist/Alert.d.ts +0 -19
- package/dist/Alert.js +0 -102
- package/dist/Alert.js.map +0 -1
- package/dist/Avatar.d.ts +0 -17
- package/dist/Avatar.js +0 -72
- package/dist/Avatar.js.map +0 -1
- package/dist/Badge.d.ts +0 -20
- package/dist/Badge.js +0 -88
- package/dist/Badge.js.map +0 -1
- package/dist/Banner.d.ts +0 -18
- package/dist/Banner.js +0 -69
- package/dist/Banner.js.map +0 -1
- package/dist/Button.d.ts +0 -31
- package/dist/Button.js +0 -155
- package/dist/Button.js.map +0 -1
- package/dist/Checkbox.d.ts +0 -12
- package/dist/Checkbox.js +0 -63
- package/dist/Checkbox.js.map +0 -1
- package/dist/Codeblock.d.ts +0 -15
- package/dist/Codeblock.js +0 -99
- package/dist/Codeblock.js.map +0 -1
- package/dist/CrossHair.d.ts +0 -18
- package/dist/CrossHair.js +0 -267
- package/dist/CrossHair.js.map +0 -1
- package/dist/DecryptText.d.ts +0 -13
- package/dist/DecryptText.js +0 -105
- package/dist/DecryptText.js.map +0 -1
- package/dist/Difficulty.d.ts +0 -10
- package/dist/Difficulty.js +0 -142
- package/dist/Difficulty.js.map +0 -1
- package/dist/Divider.d.ts +0 -9
- package/dist/Divider.js +0 -51
- package/dist/Divider.js.map +0 -1
- package/dist/Dropdown.d.ts +0 -80
- package/dist/Dropdown.js +0 -613
- package/dist/Dropdown.js.map +0 -1
- package/dist/GridLines.d.ts +0 -11
- package/dist/GridLines.js +0 -91
- package/dist/GridLines.js.map +0 -1
- package/dist/HeadingReveal.d.ts +0 -15
- package/dist/HeadingReveal.js +0 -68
- package/dist/HeadingReveal.js.map +0 -1
- package/dist/Icon-CS8ZR20W.d.mts +0 -97
- package/dist/Icon-CS8ZR20W.d.ts +0 -97
- package/dist/Icon.d.ts +0 -2
- package/dist/Icon.js +0 -32
- package/dist/Icon.js.map +0 -1
- package/dist/Input.d.ts +0 -40
- package/dist/Input.js +0 -189
- package/dist/Input.js.map +0 -1
- package/dist/Logo.d.ts +0 -11
- package/dist/Logo.js +0 -157
- package/dist/Logo.js.map +0 -1
- package/dist/Pagination.d.ts +0 -23
- package/dist/Pagination.js +0 -188
- package/dist/Pagination.js.map +0 -1
- package/dist/Slider.d.ts +0 -27
- package/dist/Slider.js +0 -344
- package/dist/Slider.js.map +0 -1
- package/dist/Tabs.d.ts +0 -26
- package/dist/Tabs.js +0 -111
- package/dist/Tabs.js.map +0 -1
- package/dist/Toast.d.ts +0 -18
- package/dist/Toast.js +0 -89
- package/dist/Toast.js.map +0 -1
- package/dist/Tooltip.d.ts +0 -10
- package/dist/Tooltip.js +0 -146
- package/dist/Tooltip.js.map +0 -1
- package/dist/fonts/CommitMono-Regular.woff2.d.mts +0 -2
- package/dist/fonts/CommitMono-Regular.woff2.d.ts +0 -2
- package/dist/fonts/MONTECHV02-Medium.woff2.d.mts +0 -2
- package/dist/fonts/MONTECHV02-Medium.woff2.d.ts +0 -2
- package/dist/fonts/Switzer-Regular.woff2.d.mts +0 -2
- package/dist/fonts/Switzer-Regular.woff2.d.ts +0 -2
- package/dist/icons/Anchor.d.ts +0 -6
- package/dist/icons/Anchor.js +0 -89
- package/dist/icons/Anchor.js.map +0 -1
- package/dist/icons/ArrowLeft.d.ts +0 -6
- package/dist/icons/ArrowLeft.js +0 -37
- package/dist/icons/ArrowLeft.js.map +0 -1
- package/dist/icons/ArrowRight.d.ts +0 -6
- package/dist/icons/ArrowRight.js +0 -37
- package/dist/icons/ArrowRight.js.map +0 -1
- package/dist/icons/Assembly.d.ts +0 -6
- package/dist/icons/Assembly.js +0 -172
- package/dist/icons/Assembly.js.map +0 -1
- package/dist/icons/Backpack.d.ts +0 -6
- package/dist/icons/Backpack.js +0 -46
- package/dist/icons/Backpack.js.map +0 -1
- package/dist/icons/Brave.d.ts +0 -6
- package/dist/icons/Brave.js +0 -60
- package/dist/icons/Brave.js.map +0 -1
- package/dist/icons/Challenge.d.ts +0 -6
- package/dist/icons/Challenge.js +0 -42
- package/dist/icons/Challenge.js.map +0 -1
- package/dist/icons/Chevron.d.ts +0 -6
- package/dist/icons/Chevron.js +0 -28
- package/dist/icons/Chevron.js.map +0 -1
- package/dist/icons/ChevronLeft.d.ts +0 -6
- package/dist/icons/ChevronLeft.js +0 -28
- package/dist/icons/ChevronLeft.js.map +0 -1
- package/dist/icons/ChevronRight.d.ts +0 -6
- package/dist/icons/ChevronRight.js +0 -28
- package/dist/icons/ChevronRight.js.map +0 -1
- package/dist/icons/Claim.d.ts +0 -6
- package/dist/icons/Claim.js +0 -38
- package/dist/icons/Claim.js.map +0 -1
- package/dist/icons/Claimed.d.ts +0 -6
- package/dist/icons/Claimed.js +0 -28
- package/dist/icons/Claimed.js.map +0 -1
- package/dist/icons/Clock.d.ts +0 -6
- package/dist/icons/Clock.js +0 -42
- package/dist/icons/Clock.js.map +0 -1
- package/dist/icons/Close.d.ts +0 -6
- package/dist/icons/Close.js +0 -39
- package/dist/icons/Close.js.map +0 -1
- package/dist/icons/Code.d.ts +0 -6
- package/dist/icons/Code.js +0 -40
- package/dist/icons/Code.js.map +0 -1
- package/dist/icons/Copy.d.ts +0 -6
- package/dist/icons/Copy.js +0 -37
- package/dist/icons/Copy.js.map +0 -1
- package/dist/icons/Cross.d.ts +0 -6
- package/dist/icons/Cross.js +0 -37
- package/dist/icons/Cross.js.map +0 -1
- package/dist/icons/Developer.d.ts +0 -6
- package/dist/icons/Developer.js +0 -46
- package/dist/icons/Developer.js.map +0 -1
- package/dist/icons/Disconnect.d.ts +0 -6
- package/dist/icons/Disconnect.js +0 -46
- package/dist/icons/Disconnect.js.map +0 -1
- package/dist/icons/Discord.d.ts +0 -6
- package/dist/icons/Discord.js +0 -28
- package/dist/icons/Discord.js.map +0 -1
- package/dist/icons/Dollar.d.ts +0 -6
- package/dist/icons/Dollar.js +0 -30
- package/dist/icons/Dollar.js.map +0 -1
- package/dist/icons/DoubleArrow.d.ts +0 -6
- package/dist/icons/DoubleArrow.js +0 -37
- package/dist/icons/DoubleArrow.js.map +0 -1
- package/dist/icons/EVM.d.ts +0 -6
- package/dist/icons/EVM.js +0 -41
- package/dist/icons/EVM.js.map +0 -1
- package/dist/icons/Email.d.ts +0 -6
- package/dist/icons/Email.js +0 -45
- package/dist/icons/Email.js.map +0 -1
- package/dist/icons/Error.d.ts +0 -6
- package/dist/icons/Error.js +0 -28
- package/dist/icons/Error.js.map +0 -1
- package/dist/icons/Expand.d.ts +0 -6
- package/dist/icons/Expand.js +0 -37
- package/dist/icons/Expand.js.map +0 -1
- package/dist/icons/External.d.ts +0 -6
- package/dist/icons/External.js +0 -38
- package/dist/icons/External.js.map +0 -1
- package/dist/icons/Filter.d.ts +0 -6
- package/dist/icons/Filter.js +0 -45
- package/dist/icons/Filter.js.map +0 -1
- package/dist/icons/Firmware.d.ts +0 -6
- package/dist/icons/Firmware.js +0 -37
- package/dist/icons/Firmware.js.map +0 -1
- package/dist/icons/Flag.d.ts +0 -6
- package/dist/icons/Flag.js +0 -37
- package/dist/icons/Flag.js.map +0 -1
- package/dist/icons/Flame.d.ts +0 -6
- package/dist/icons/Flame.js +0 -28
- package/dist/icons/Flame.js.map +0 -1
- package/dist/icons/Flexible.d.ts +0 -6
- package/dist/icons/Flexible.js +0 -52
- package/dist/icons/Flexible.js.map +0 -1
- package/dist/icons/Free.d.ts +0 -6
- package/dist/icons/Free.js +0 -53
- package/dist/icons/Free.js.map +0 -1
- package/dist/icons/General.d.ts +0 -6
- package/dist/icons/General.js +0 -60
- package/dist/icons/General.js.map +0 -1
- package/dist/icons/Github.d.ts +0 -6
- package/dist/icons/Github.js +0 -39
- package/dist/icons/Github.js.map +0 -1
- package/dist/icons/Globe.d.ts +0 -6
- package/dist/icons/Globe.js +0 -25
- package/dist/icons/Globe.js.map +0 -1
- package/dist/icons/GridView.d.ts +0 -6
- package/dist/icons/GridView.js +0 -51
- package/dist/icons/GridView.js.map +0 -1
- package/dist/icons/Heart.d.ts +0 -6
- package/dist/icons/Heart.js +0 -28
- package/dist/icons/Heart.js.map +0 -1
- package/dist/icons/Info.d.ts +0 -6
- package/dist/icons/Info.js +0 -28
- package/dist/icons/Info.js.map +0 -1
- package/dist/icons/Language.d.ts +0 -6
- package/dist/icons/Language.js +0 -42
- package/dist/icons/Language.js.map +0 -1
- package/dist/icons/Lessons.d.ts +0 -6
- package/dist/icons/Lessons.js +0 -38
- package/dist/icons/Lessons.js.map +0 -1
- package/dist/icons/Link.d.ts +0 -6
- package/dist/icons/Link.js +0 -37
- package/dist/icons/Link.js.map +0 -1
- package/dist/icons/ListView.d.ts +0 -6
- package/dist/icons/ListView.js +0 -44
- package/dist/icons/ListView.js.map +0 -1
- package/dist/icons/Loading.d.ts +0 -6
- package/dist/icons/Loading.js +0 -40
- package/dist/icons/Loading.js.map +0 -1
- package/dist/icons/Locked.d.ts +0 -6
- package/dist/icons/Locked.js +0 -37
- package/dist/icons/Locked.js.map +0 -1
- package/dist/icons/Logs.d.ts +0 -6
- package/dist/icons/Logs.js +0 -26
- package/dist/icons/Logs.js.map +0 -1
- package/dist/icons/Mentor.d.ts +0 -6
- package/dist/icons/Mentor.js +0 -47
- package/dist/icons/Mentor.js.map +0 -1
- package/dist/icons/Metamask.d.ts +0 -6
- package/dist/icons/Metamask.js +0 -72
- package/dist/icons/Metamask.js.map +0 -1
- package/dist/icons/Minimize.d.ts +0 -6
- package/dist/icons/Minimize.js +0 -37
- package/dist/icons/Minimize.js.map +0 -1
- package/dist/icons/Modular.d.ts +0 -6
- package/dist/icons/Modular.js +0 -53
- package/dist/icons/Modular.js.map +0 -1
- package/dist/icons/NFT.d.ts +0 -6
- package/dist/icons/NFT.js +0 -49
- package/dist/icons/NFT.js.map +0 -1
- package/dist/icons/Online.d.ts +0 -6
- package/dist/icons/Online.js +0 -55
- package/dist/icons/Online.js.map +0 -1
- package/dist/icons/Password.d.ts +0 -6
- package/dist/icons/Password.js +0 -44
- package/dist/icons/Password.js.map +0 -1
- package/dist/icons/Path.d.ts +0 -6
- package/dist/icons/Path.js +0 -42
- package/dist/icons/Path.js.map +0 -1
- package/dist/icons/Perks.d.ts +0 -6
- package/dist/icons/Perks.js +0 -41
- package/dist/icons/Perks.js.map +0 -1
- package/dist/icons/Phantom.d.ts +0 -6
- package/dist/icons/Phantom.js +0 -28
- package/dist/icons/Phantom.js.map +0 -1
- package/dist/icons/Play.d.ts +0 -6
- package/dist/icons/Play.js +0 -28
- package/dist/icons/Play.js.map +0 -1
- package/dist/icons/Product.d.ts +0 -6
- package/dist/icons/Product.js +0 -44
- package/dist/icons/Product.js.map +0 -1
- package/dist/icons/Progress.d.ts +0 -6
- package/dist/icons/Progress.js +0 -37
- package/dist/icons/Progress.js.map +0 -1
- package/dist/icons/Protocol.d.ts +0 -6
- package/dist/icons/Protocol.js +0 -44
- package/dist/icons/Protocol.js.map +0 -1
- package/dist/icons/Refresh.d.ts +0 -6
- package/dist/icons/Refresh.js +0 -37
- package/dist/icons/Refresh.js.map +0 -1
- package/dist/icons/Rewards.d.ts +0 -6
- package/dist/icons/Rewards.js +0 -38
- package/dist/icons/Rewards.js.map +0 -1
- package/dist/icons/Rust.d.ts +0 -6
- package/dist/icons/Rust.js +0 -146
- package/dist/icons/Rust.js.map +0 -1
- package/dist/icons/Search.d.ts +0 -6
- package/dist/icons/Search.js +0 -52
- package/dist/icons/Search.js.map +0 -1
- package/dist/icons/SmartContract.d.ts +0 -6
- package/dist/icons/SmartContract.js +0 -28
- package/dist/icons/SmartContract.js.map +0 -1
- package/dist/icons/Solana.d.ts +0 -6
- package/dist/icons/Solana.js +0 -52
- package/dist/icons/Solana.js.map +0 -1
- package/dist/icons/Solflare.d.ts +0 -6
- package/dist/icons/Solflare.js +0 -28
- package/dist/icons/Solflare.js.map +0 -1
- package/dist/icons/Success.d.ts +0 -6
- package/dist/icons/Success.js +0 -31
- package/dist/icons/Success.js.map +0 -1
- package/dist/icons/SuccessCircle.d.ts +0 -6
- package/dist/icons/SuccessCircle.js +0 -31
- package/dist/icons/SuccessCircle.js.map +0 -1
- package/dist/icons/Table.d.ts +0 -6
- package/dist/icons/Table.js +0 -44
- package/dist/icons/Table.js.map +0 -1
- package/dist/icons/Target.d.ts +0 -6
- package/dist/icons/Target.js +0 -47
- package/dist/icons/Target.js.map +0 -1
- package/dist/icons/Training.d.ts +0 -6
- package/dist/icons/Training.js +0 -44
- package/dist/icons/Training.js.map +0 -1
- package/dist/icons/Typescript.d.ts +0 -6
- package/dist/icons/Typescript.js +0 -124
- package/dist/icons/Typescript.js.map +0 -1
- package/dist/icons/Unclaimed.d.ts +0 -6
- package/dist/icons/Unclaimed.js +0 -37
- package/dist/icons/Unclaimed.js.map +0 -1
- package/dist/icons/Upload.d.ts +0 -6
- package/dist/icons/Upload.js +0 -38
- package/dist/icons/Upload.js.map +0 -1
- package/dist/icons/User.d.ts +0 -6
- package/dist/icons/User.js +0 -44
- package/dist/icons/User.js.map +0 -1
- package/dist/icons/Wallet.d.ts +0 -6
- package/dist/icons/Wallet.js +0 -46
- package/dist/icons/Wallet.js.map +0 -1
- package/dist/icons/WalletSmall.d.ts +0 -6
- package/dist/icons/WalletSmall.js +0 -37
- package/dist/icons/WalletSmall.js.map +0 -1
- package/dist/icons/Warning.d.ts +0 -6
- package/dist/icons/Warning.js +0 -33
- package/dist/icons/Warning.js.map +0 -1
- package/dist/icons/X.d.ts +0 -6
- package/dist/icons/X.js +0 -28
- package/dist/icons/X.js.map +0 -1
- package/dist/icons/index.d.ts +0 -2
- package/dist/icons/index.js +0 -179
- package/dist/icons/index.js.map +0 -1
- package/dist/index.d.ts +0 -27
- package/dist/index.js +0 -154
- package/dist/index.js.map +0 -1
- package/dist/index.mjs.map +0 -1
- package/dist/utils/colours.d.ts +0 -31
- package/dist/utils/colours.js +0 -36
- package/dist/utils/colours.js.map +0 -1
- package/dist/utils/easings.d.ts +0 -19
- package/dist/utils/easings.js +0 -23
- package/dist/utils/easings.js.map +0 -1
- /package/dist/{fonts/CommitMono-Regular.woff2 → assets/CommitMono-Regular-CO8xzcA8.woff2} +0 -0
- /package/dist/{fonts/MONTECHV02-Medium.woff2 → assets/MONTECHV02-Medium-sFbAcPHg.woff2} +0 -0
- /package/dist/{fonts/Switzer-Regular.woff2 → assets/Switzer-Regular-T9RxCVNS.woff2} +0 -0
|
@@ -0,0 +1,404 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
const require_rolldown_runtime = require('./_virtual/rolldown_runtime.cjs');
|
|
4
|
+
const require_Icon = require('./Icon.cjs');
|
|
5
|
+
const require_CrossHair = require('./CrossHair.cjs');
|
|
6
|
+
const require_utils_easings = require('./utils/easings.cjs');
|
|
7
|
+
const require_Button = require('./Button.cjs');
|
|
8
|
+
const require_Checkbox = require('./Checkbox.cjs');
|
|
9
|
+
const require_Divider = require('./Divider.cjs');
|
|
10
|
+
let motion_react = require("motion/react");
|
|
11
|
+
let classnames = require("classnames");
|
|
12
|
+
classnames = require_rolldown_runtime.__toESM(classnames);
|
|
13
|
+
let react_jsx_runtime = require("react/jsx-runtime");
|
|
14
|
+
let react = require("react");
|
|
15
|
+
let usehooks_ts = require("usehooks-ts");
|
|
16
|
+
|
|
17
|
+
//#region src/Dropdown.tsx
|
|
18
|
+
const useMousePosition = () => {
|
|
19
|
+
const [mousePosition, setMousePosition] = (0, react.useState)([0, 0]);
|
|
20
|
+
const updateMousePosition = (0, react.useCallback)((ev) => {
|
|
21
|
+
setMousePosition([ev.clientX, ev.clientY]);
|
|
22
|
+
}, []);
|
|
23
|
+
(0, react.useEffect)(() => {
|
|
24
|
+
const throttledUpdate = (ev) => {
|
|
25
|
+
requestAnimationFrame(() => updateMousePosition(ev));
|
|
26
|
+
};
|
|
27
|
+
window.addEventListener("mousemove", throttledUpdate);
|
|
28
|
+
return () => window.removeEventListener("mousemove", throttledUpdate);
|
|
29
|
+
}, [updateMousePosition]);
|
|
30
|
+
return mousePosition;
|
|
31
|
+
};
|
|
32
|
+
const MouseSafeArea = ({ parentRef, submenuRef, onEnter, onLeave, debug = false }) => {
|
|
33
|
+
const { x = 0, y = 0, height: h = 0, width: w = 0 } = submenuRef.current?.getBoundingClientRect() || {};
|
|
34
|
+
const [mouseX, mouseY] = useMousePosition();
|
|
35
|
+
const positions = {
|
|
36
|
+
x,
|
|
37
|
+
y,
|
|
38
|
+
h,
|
|
39
|
+
w,
|
|
40
|
+
mouseX,
|
|
41
|
+
mouseY
|
|
42
|
+
};
|
|
43
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
44
|
+
style: {
|
|
45
|
+
position: "absolute",
|
|
46
|
+
left: getLeft(positions),
|
|
47
|
+
right: getRight(positions),
|
|
48
|
+
top: 0,
|
|
49
|
+
width: getWidth(positions),
|
|
50
|
+
height: h,
|
|
51
|
+
clipPath: getClipPath(positions),
|
|
52
|
+
pointerEvents: "auto",
|
|
53
|
+
zIndex: 9999,
|
|
54
|
+
backgroundColor: debug ? "rgba(0, 179, 179, 0.25)" : "transparent"
|
|
55
|
+
},
|
|
56
|
+
onMouseEnter: onEnter,
|
|
57
|
+
onMouseLeave: onLeave
|
|
58
|
+
});
|
|
59
|
+
};
|
|
60
|
+
const getLeft = ({ x, mouseX }) => mouseX > x ? void 0 : -Math.max(x - mouseX, 10) + "px";
|
|
61
|
+
const getRight = ({ x, w, mouseX }) => mouseX > x ? -Math.max(mouseX - (x + w), 10) + "px" : void 0;
|
|
62
|
+
const getWidth = ({ x, w, mouseX }) => mouseX > x ? Math.max(mouseX - (x + w), 10) + "px" : Math.max(x - mouseX, 10) + "px";
|
|
63
|
+
const getClipPath = ({ x, y, h, mouseX, mouseY }) => mouseX < x ? `polygon(100% 0%, 0% ${100 * (mouseY - y) / h}%, 100% 100%)` : `polygon(0% 0%, 0% 100%, 100% ${100 * (mouseY - y) / h}%)`;
|
|
64
|
+
const DropdownMenu = ({ items, selectedItem, handleChange, multiple = false, menuClassName, size = "md", isOpen, onItemClick, isScrollable = false, animationOrigin = "top-left", search, onClearSearch, showSelectAll = true, showSafeTriangle = false, subMenuClassName }) => {
|
|
65
|
+
const [isAtBottom, setIsAtBottom] = (0, react.useState)(false);
|
|
66
|
+
const scrollContainerRef = (0, react.useRef)(null);
|
|
67
|
+
const filteredItems = (() => {
|
|
68
|
+
if (search) return items.filter((item) => item.label.toLowerCase().includes(search.toLowerCase()));
|
|
69
|
+
return items;
|
|
70
|
+
})();
|
|
71
|
+
const handleScroll = (0, react.useCallback)(() => {
|
|
72
|
+
const container = scrollContainerRef.current;
|
|
73
|
+
if (!container) return;
|
|
74
|
+
const { scrollTop, scrollHeight, clientHeight } = container;
|
|
75
|
+
setIsAtBottom(scrollTop + clientHeight >= scrollHeight - 5);
|
|
76
|
+
}, []);
|
|
77
|
+
(0, react.useEffect)(() => {
|
|
78
|
+
if (isOpen) setIsAtBottom(false);
|
|
79
|
+
}, [isOpen, filteredItems.length]);
|
|
80
|
+
(0, react.useEffect)(() => {
|
|
81
|
+
const container = scrollContainerRef.current;
|
|
82
|
+
if (!container || !isOpen) return;
|
|
83
|
+
const { scrollHeight, clientHeight } = container;
|
|
84
|
+
if (!(scrollHeight > clientHeight)) setIsAtBottom(true);
|
|
85
|
+
}, [isOpen, filteredItems.length]);
|
|
86
|
+
const isItemSelected = (value) => {
|
|
87
|
+
if (multiple) return Array.isArray(selectedItem) && selectedItem.length > 0 && selectedItem.includes(value);
|
|
88
|
+
return !!selectedItem && selectedItem === value;
|
|
89
|
+
};
|
|
90
|
+
const flattenSelectable = (options) => {
|
|
91
|
+
const out = [];
|
|
92
|
+
const walk = (nodes) => {
|
|
93
|
+
nodes.forEach((n) => {
|
|
94
|
+
if (n.children && n.children.length > 0) walk(n.children);
|
|
95
|
+
else out.push(n);
|
|
96
|
+
});
|
|
97
|
+
};
|
|
98
|
+
walk(options);
|
|
99
|
+
return out;
|
|
100
|
+
};
|
|
101
|
+
const handleItemClick = (value) => {
|
|
102
|
+
if (multiple) {
|
|
103
|
+
const currentSelection = Array.isArray(selectedItem) ? selectedItem : [];
|
|
104
|
+
if (isAllSelected()) handleChange([value]);
|
|
105
|
+
else if (currentSelection.includes(value)) handleChange(currentSelection.filter((item) => item !== value));
|
|
106
|
+
else handleChange([...currentSelection, value]);
|
|
107
|
+
} else {
|
|
108
|
+
if (selectedItem === value) handleChange(void 0);
|
|
109
|
+
else handleChange(value);
|
|
110
|
+
onItemClick?.(value);
|
|
111
|
+
}
|
|
112
|
+
};
|
|
113
|
+
const handleSelectAll = () => {
|
|
114
|
+
const currentSelection = Array.isArray(selectedItem) ? selectedItem : [];
|
|
115
|
+
const allValues = flattenSelectable(filteredItems).filter((item) => !item.disabled).map((item) => item.value);
|
|
116
|
+
if (currentSelection.length === allValues.length) handleChange([]);
|
|
117
|
+
else handleChange(allValues);
|
|
118
|
+
};
|
|
119
|
+
const isAllSelected = () => {
|
|
120
|
+
if (!Array.isArray(selectedItem) || selectedItem.length === 0) return false;
|
|
121
|
+
const selectableItems = flattenSelectable(filteredItems).filter((item) => !item.disabled);
|
|
122
|
+
return selectableItems.length > 0 && selectedItem.length === selectableItems.length && selectableItems.every((item) => selectedItem.includes(item.value));
|
|
123
|
+
};
|
|
124
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(motion_react.AnimatePresence, { children: isOpen && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(motion_react.motion.div, {
|
|
125
|
+
initial: {
|
|
126
|
+
opacity: 0,
|
|
127
|
+
scale: .8,
|
|
128
|
+
y: -15
|
|
129
|
+
},
|
|
130
|
+
animate: {
|
|
131
|
+
opacity: 1,
|
|
132
|
+
scale: 1,
|
|
133
|
+
y: 0
|
|
134
|
+
},
|
|
135
|
+
transition: {
|
|
136
|
+
duration: .1,
|
|
137
|
+
ease: require_utils_easings.swift
|
|
138
|
+
},
|
|
139
|
+
exit: {
|
|
140
|
+
opacity: 0,
|
|
141
|
+
scale: .8,
|
|
142
|
+
y: -5
|
|
143
|
+
},
|
|
144
|
+
className: (0, classnames.default)("z-50 absolute top-[calc(100%+6px)] p-1 bg-card-foreground border border-border-light", (size === "lg" || size === "md") && "min-w-[200px]", animationOrigin === "top-left" && "origin-top-left", animationOrigin === "top-center" && "origin-top-center", animationOrigin === "top-right" && "origin-top-right", menuClassName),
|
|
145
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
146
|
+
ref: scrollContainerRef,
|
|
147
|
+
onScroll: handleScroll,
|
|
148
|
+
className: (0, classnames.default)("flex flex-col gap-y-1", isScrollable && ["max-h-[250px] overflow-y-auto", !isAtBottom && "[mask-image:linear-gradient(180deg,black,black_85%,transparent_100%)]"]),
|
|
149
|
+
children: [multiple && showSelectAll && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
150
|
+
className: "group flex flex-col gap-y-1",
|
|
151
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("button", {
|
|
152
|
+
onClick: handleSelectAll,
|
|
153
|
+
className: (0, classnames.default)("py-3 pl-2.5 pr-3 flex items-center gap-x-2.5 outline-none bg-transparent transition-colors duration-100 ease-crisp hover:bg-border-light/50"),
|
|
154
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Checkbox.Checkbox, { checked: isAllSelected() }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
155
|
+
className: "text-sm text-shade-primary font-medium",
|
|
156
|
+
children: "Select All"
|
|
157
|
+
})]
|
|
158
|
+
}), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Divider.Divider, { direction: "horizontal" })]
|
|
159
|
+
}), filteredItems.length > 0 ? filteredItems.map((item) => item.children && item.children.length > 0 ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DropdownSubmenuItem, {
|
|
160
|
+
item,
|
|
161
|
+
size,
|
|
162
|
+
onLeafClick: handleItemClick,
|
|
163
|
+
isLeafSelected: isItemSelected
|
|
164
|
+
}, item.value) : /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DropdownItem, {
|
|
165
|
+
label: item.label,
|
|
166
|
+
icon: item.icon,
|
|
167
|
+
onClick: () => handleItemClick(item.value),
|
|
168
|
+
disabled: item.disabled,
|
|
169
|
+
isSelected: isItemSelected(item.value),
|
|
170
|
+
size
|
|
171
|
+
}, item.value)) : /* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
|
|
172
|
+
onClick: () => {
|
|
173
|
+
if (onClearSearch) onClearSearch();
|
|
174
|
+
},
|
|
175
|
+
className: "py-3 pl-2.5 pr-3 text-sm font-mono text-shade-tertiary hover:bg-border-light/50 transition-colors duration-100 ease-crisp w-full text-center",
|
|
176
|
+
children: "No options found"
|
|
177
|
+
})]
|
|
178
|
+
})
|
|
179
|
+
}) });
|
|
180
|
+
};
|
|
181
|
+
const Dropdown = ({ className, items, selectedItem, handleChange, label = "View All", multiSelectLabel, disabled, buttonClassName, menuClassName, multiple = false, menuIcon, size = "md", isScrollable = false, search, onClearSearch, showSelectAll, showClear = true, subMenuClassName, showSelectedItem = true }) => {
|
|
182
|
+
const [isOpen, setIsOpen] = (0, react.useState)(false);
|
|
183
|
+
const handleItemClick = (value) => {
|
|
184
|
+
if (!multiple) {
|
|
185
|
+
if (selectedItem === value) handleChange(void 0);
|
|
186
|
+
else handleChange(value);
|
|
187
|
+
setIsOpen(false);
|
|
188
|
+
}
|
|
189
|
+
};
|
|
190
|
+
const ref = (0, react.useRef)(null);
|
|
191
|
+
const handleClickOutside = () => {
|
|
192
|
+
setIsOpen(false);
|
|
193
|
+
};
|
|
194
|
+
(0, usehooks_ts.useOnClickOutside)(ref, handleClickOutside);
|
|
195
|
+
const getSelectedItems = () => {
|
|
196
|
+
const flatten = (options) => {
|
|
197
|
+
const out = [];
|
|
198
|
+
const walk = (nodes) => {
|
|
199
|
+
nodes.forEach((n) => {
|
|
200
|
+
if (n.children && n.children.length > 0) walk(n.children);
|
|
201
|
+
else out.push(n);
|
|
202
|
+
});
|
|
203
|
+
};
|
|
204
|
+
walk(options);
|
|
205
|
+
return out;
|
|
206
|
+
};
|
|
207
|
+
const leaves = flatten(items);
|
|
208
|
+
if (multiple) {
|
|
209
|
+
const selectedValues = Array.isArray(selectedItem) ? selectedItem : [];
|
|
210
|
+
return leaves.filter((item) => selectedValues.includes(item.value));
|
|
211
|
+
}
|
|
212
|
+
const selected = leaves.find((item) => item.value === selectedItem);
|
|
213
|
+
return selected ? [selected] : [];
|
|
214
|
+
};
|
|
215
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
216
|
+
ref,
|
|
217
|
+
className: (0, classnames.default)("relative flex flex-col gap-y-1.5 items-start", className),
|
|
218
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(DropdownButton, {
|
|
219
|
+
label,
|
|
220
|
+
multiSelectLabel,
|
|
221
|
+
disabled,
|
|
222
|
+
className: buttonClassName,
|
|
223
|
+
onClick: () => setIsOpen(!isOpen),
|
|
224
|
+
selectedItems: getSelectedItems(),
|
|
225
|
+
multiple,
|
|
226
|
+
count: getSelectedItems().length,
|
|
227
|
+
menuIcon,
|
|
228
|
+
size,
|
|
229
|
+
onClear: () => handleChange(multiple ? [] : void 0),
|
|
230
|
+
showClear,
|
|
231
|
+
showSelectedItem
|
|
232
|
+
}), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DropdownMenu, {
|
|
233
|
+
items,
|
|
234
|
+
selectedItem,
|
|
235
|
+
handleChange,
|
|
236
|
+
multiple,
|
|
237
|
+
menuClassName,
|
|
238
|
+
size,
|
|
239
|
+
isOpen,
|
|
240
|
+
onItemClick: handleItemClick,
|
|
241
|
+
isScrollable,
|
|
242
|
+
search,
|
|
243
|
+
onClearSearch,
|
|
244
|
+
showSelectAll,
|
|
245
|
+
subMenuClassName
|
|
246
|
+
})]
|
|
247
|
+
});
|
|
248
|
+
};
|
|
249
|
+
const DropdownButton = ({ label, multiSelectLabel, disabled, className, onClick, selectedItems = [], multiple = false, count = 0, menuIcon, size, onClear, showClear, showSelectedItem }) => {
|
|
250
|
+
const [isHovered, setIsHovered] = (0, react.useState)(false);
|
|
251
|
+
const hasSelection = selectedItems.length > 0;
|
|
252
|
+
const isSingleSelection = selectedItems.length === 1;
|
|
253
|
+
const isMultipleSelection = selectedItems.length > 1;
|
|
254
|
+
let buttonIcon;
|
|
255
|
+
let buttonLabel;
|
|
256
|
+
if (hasSelection && isSingleSelection) {
|
|
257
|
+
const selectedItem = selectedItems[0];
|
|
258
|
+
buttonIcon = selectedItem.icon ? (0, react.isValidElement)(selectedItem.icon) ? selectedItem.icon : {
|
|
259
|
+
name: selectedItem.icon.name,
|
|
260
|
+
className: selectedItem.icon.className || "",
|
|
261
|
+
size: selectedItem.icon.size || 18
|
|
262
|
+
} : menuIcon;
|
|
263
|
+
buttonLabel = typeof label === "function" ? label(selectedItem.label) : selectedItem.label;
|
|
264
|
+
} else if (isMultipleSelection && multiple && multiSelectLabel) {
|
|
265
|
+
buttonIcon = menuIcon ? (0, react.isValidElement)(menuIcon) ? menuIcon : {
|
|
266
|
+
name: menuIcon.name,
|
|
267
|
+
className: menuIcon.className || "",
|
|
268
|
+
size: menuIcon.size || 18
|
|
269
|
+
} : void 0;
|
|
270
|
+
buttonLabel = `${count} ${multiSelectLabel}`;
|
|
271
|
+
} else {
|
|
272
|
+
buttonIcon = menuIcon;
|
|
273
|
+
buttonLabel = typeof label === "function" ? label("") : label;
|
|
274
|
+
}
|
|
275
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Button.Button, {
|
|
276
|
+
icon: buttonIcon,
|
|
277
|
+
label: showSelectedItem ? buttonLabel : void 0,
|
|
278
|
+
disabled,
|
|
279
|
+
size,
|
|
280
|
+
variant: "secondary",
|
|
281
|
+
className: (0, classnames.default)("!origin-bottom-left !justify-start w-full", (size === "md" || size === "lg") && "!pr-[18px] !pl-[12px]", size === "sm" && "!pr-4 !pl-3", showClear && "!pr-[48px]", className),
|
|
282
|
+
useDecryptAnimation: false,
|
|
283
|
+
useHoverEffect: false,
|
|
284
|
+
crosshairProps: {
|
|
285
|
+
variant: "corners",
|
|
286
|
+
corners: ["bottom-right"],
|
|
287
|
+
spacingX: !isHovered ? -6 : -4,
|
|
288
|
+
spacingY: !isHovered ? -6 : -4,
|
|
289
|
+
animationDuration: .5,
|
|
290
|
+
animationDelay: 0,
|
|
291
|
+
className: "text-shade-mute group-hover:text-shade-primary"
|
|
292
|
+
},
|
|
293
|
+
onClick,
|
|
294
|
+
onMouseEnter: () => setIsHovered(true),
|
|
295
|
+
onMouseLeave: () => setIsHovered(false),
|
|
296
|
+
children: hasSelection && showClear && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
297
|
+
className: "order-last top-1/2 -translate-y-1/2 right-2 absolute h-[24px] w-[24px] flex items-center justify-center hover:bg-background/40 transition duration-100 ease-crisp cursor-pointer",
|
|
298
|
+
onClick: (e) => {
|
|
299
|
+
e.stopPropagation();
|
|
300
|
+
onClear?.();
|
|
301
|
+
},
|
|
302
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Icon.Icon, {
|
|
303
|
+
name: "Close",
|
|
304
|
+
size: 12
|
|
305
|
+
})
|
|
306
|
+
})
|
|
307
|
+
});
|
|
308
|
+
};
|
|
309
|
+
const DropdownItem = ({ label, icon, onClick, disabled, isSelected = false, size }) => {
|
|
310
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("button", {
|
|
311
|
+
onClick,
|
|
312
|
+
disabled,
|
|
313
|
+
className: (0, classnames.default)("hover:bg-border-light/50 relative group/item disabled:opacity-40 flex items-center gap-x-2.5 outline-none transition-colors duration-100 ease-crisp", size === "lg" && "py-4 pl-3 pr-3 text-base", size === "md" && "py-3 pl-2.5 pr-3 text-sm", size === "sm" && "py-2 pl-2.5 pr-3 h-[36px] text-sm", isSelected && "bg-background/50"),
|
|
314
|
+
children: [
|
|
315
|
+
/* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
316
|
+
className: "opacity-0 group-hover/item:!opacity-100 absolute inset-0.5",
|
|
317
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_CrossHair.CrosshairCorners, {
|
|
318
|
+
size: 6,
|
|
319
|
+
variant: "corners",
|
|
320
|
+
corners: ["bottom-right"],
|
|
321
|
+
className: "text-shade-mute",
|
|
322
|
+
animationDelay: 0,
|
|
323
|
+
animationDuration: .5
|
|
324
|
+
})
|
|
325
|
+
}),
|
|
326
|
+
icon && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(react_jsx_runtime.Fragment, { children: (0, react.isValidElement)(icon) ? icon : /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Icon.Icon, {
|
|
327
|
+
name: icon.name,
|
|
328
|
+
className: (0, classnames.default)("flex-shrink-0", icon.className),
|
|
329
|
+
size: icon.size || 18
|
|
330
|
+
}) }),
|
|
331
|
+
/* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
332
|
+
className: (0, classnames.default)(" text-shade-primary font-medium leading-[100%]"),
|
|
333
|
+
children: label
|
|
334
|
+
})
|
|
335
|
+
]
|
|
336
|
+
});
|
|
337
|
+
};
|
|
338
|
+
const DropdownSubmenuItem = ({ item, size = "md", subMenuClassName, onLeafClick, isLeafSelected }) => {
|
|
339
|
+
const parentRef = (0, react.useRef)(null);
|
|
340
|
+
const submenuRef = (0, react.useRef)(null);
|
|
341
|
+
const [hoverParent, setHoverParent] = (0, react.useState)(false);
|
|
342
|
+
const [hoverSubmenu, setHoverSubmenu] = (0, react.useState)(false);
|
|
343
|
+
const [hoverSafe, setHoverSafe] = (0, react.useState)(false);
|
|
344
|
+
const open = hoverParent || hoverSubmenu || hoverSafe;
|
|
345
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
346
|
+
ref: parentRef,
|
|
347
|
+
className: (0, classnames.default)("relative", subMenuClassName),
|
|
348
|
+
onMouseEnter: () => setHoverParent(true),
|
|
349
|
+
onMouseLeave: () => setHoverParent(false),
|
|
350
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("button", {
|
|
351
|
+
type: "button",
|
|
352
|
+
className: (0, classnames.default)("hover:bg-border-light/50 relative h-max group/item disabled:opacity-40 flex items-center justify-between gap-x-2.5 w-full outline-none transition-colors duration-100 ease-crisp", size === "lg" && "py-4 pl-3 pr-3 text-base", size === "md" && "py-3 pl-2.5 pr-3 text-sm", size === "sm" && "py-2 pl-2.5 pr-3 !h-[36px] text-sm", open && "bg-border-light/50"),
|
|
353
|
+
disabled: item.disabled,
|
|
354
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("span", {
|
|
355
|
+
className: "flex items-center gap-x-2.5",
|
|
356
|
+
children: [item.icon && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(react_jsx_runtime.Fragment, { children: (0, react.isValidElement)(item.icon) ? item.icon : /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Icon.Icon, {
|
|
357
|
+
name: item.icon.name,
|
|
358
|
+
className: (0, classnames.default)("flex-shrink-0", item.icon.className),
|
|
359
|
+
size: item.icon.size || 18
|
|
360
|
+
}) }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
361
|
+
className: "text-shade-primary font-medium leading-[100%]",
|
|
362
|
+
children: item.label
|
|
363
|
+
})]
|
|
364
|
+
}), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Icon.Icon, {
|
|
365
|
+
name: "ChevronRight",
|
|
366
|
+
size: 12,
|
|
367
|
+
className: "text-shade-tertiary"
|
|
368
|
+
})]
|
|
369
|
+
}), open && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
370
|
+
ref: submenuRef,
|
|
371
|
+
onMouseEnter: () => setHoverSubmenu(true),
|
|
372
|
+
onMouseLeave: () => setHoverSubmenu(false),
|
|
373
|
+
className: (0, classnames.default)("z-[60] !absolute top-0 left-[calc(100%+6px)] p-1 bg-card-foreground gradient-border before:bg-card-border min-w-[180px]"),
|
|
374
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(MouseSafeArea, {
|
|
375
|
+
parentRef,
|
|
376
|
+
submenuRef,
|
|
377
|
+
onEnter: () => setHoverSafe(true),
|
|
378
|
+
onLeave: () => setHoverSafe(false)
|
|
379
|
+
}), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
380
|
+
className: "flex flex-col gap-y-1",
|
|
381
|
+
children: (item.children || []).map((child) => child.children && child.children.length > 0 ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DropdownSubmenuItem, {
|
|
382
|
+
item: child,
|
|
383
|
+
size,
|
|
384
|
+
onLeafClick,
|
|
385
|
+
isLeafSelected
|
|
386
|
+
}, child.value) : /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DropdownItem, {
|
|
387
|
+
label: child.label,
|
|
388
|
+
icon: child.icon,
|
|
389
|
+
onClick: () => onLeafClick(child.value),
|
|
390
|
+
disabled: child.disabled,
|
|
391
|
+
isSelected: isLeafSelected(child.value),
|
|
392
|
+
size
|
|
393
|
+
}, child.value))
|
|
394
|
+
})]
|
|
395
|
+
})]
|
|
396
|
+
});
|
|
397
|
+
};
|
|
398
|
+
|
|
399
|
+
//#endregion
|
|
400
|
+
exports.Dropdown = Dropdown;
|
|
401
|
+
exports.DropdownButton = DropdownButton;
|
|
402
|
+
exports.DropdownItem = DropdownItem;
|
|
403
|
+
exports.DropdownMenu = DropdownMenu;
|
|
404
|
+
//# sourceMappingURL=Dropdown.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Dropdown.cjs","names":["out: DropdownOption[]","AnimatePresence","motion","swift","Checkbox","Divider","buttonIcon: ButtonProps[\"icon\"] | undefined","buttonLabel: string","Button","Icon","CrosshairCorners"],"sources":["../src/Dropdown.tsx"],"sourcesContent":["\"use client\";\n\nimport { Button, ButtonProps } from \"./Button\";\nimport { useRef, useState, useEffect, useCallback } from \"react\";\nimport { AnimatePresence, motion } from \"motion/react\";\nimport classNames from \"classnames\";\nimport { swift } from \"./utils/easings\";\nimport { Checkbox } from \"./Checkbox\";\nimport { Divider } from \"./Divider\";\nimport { Icon, type IconProps } from \"./Icon\";\nimport { useOnClickOutside } from \"usehooks-ts\";\nimport { CrosshairCorners } from \"./CrossHair\";\nimport { isValidElement, ReactNode } from \"react\";\n\nexport type DropdownOption = {\n label: string;\n icon?: IconProps | ReactNode;\n value: string;\n disabled?: boolean;\n children?: DropdownOption[];\n};\n\nexport type DropdownProps = {\n className?: string;\n items: DropdownOption[];\n selectedItem?: string | string[] | undefined;\n handleChange: (item: string | string[] | undefined) => void;\n multiple?: boolean;\n disabled?: boolean;\n label: string | ((selectedLabel: string) => string);\n multiSelectLabel?: string;\n buttonClassName?: string;\n menuClassName?: string;\n subMenuClassName?: string;\n menuIcon?: IconProps | ReactNode;\n size?: \"sm\" | \"md\" | \"lg\";\n isScrollable?: boolean;\n animationOrigin?: \"top-left\" | \"top-center\" | \"top-right\";\n search?: string;\n onClearSearch?: () => void;\n showSelectAll?: boolean;\n showClear?: boolean;\n showSelectedItem?: boolean;\n};\n\nexport type DropdownButtonProps = {\n label: string | ((selectedLabel: string) => string);\n multiSelectLabel?: string;\n disabled?: boolean;\n className?: string;\n onClick: () => void;\n buttonClassName?: string;\n selectedItems?: DropdownProps[\"items\"];\n multiple?: boolean;\n count?: number;\n menuIcon?: IconProps | ReactNode;\n size?: \"sm\" | \"md\" | \"lg\";\n onClear?: () => void;\n showSelectedItem?: boolean;\n showClear?: boolean;\n};\n\nexport type DropdownItemProps = {\n label: string;\n icon?: IconProps | ReactNode;\n onClick: () => void;\n disabled?: boolean;\n isSelected?: boolean;\n size?: \"sm\" | \"md\" | \"lg\";\n};\n\nexport type DropdownMenuProps = {\n items: DropdownOption[];\n selectedItem?: string | string[] | undefined;\n handleChange: (item: string | string[] | undefined) => void;\n multiple?: boolean;\n menuClassName?: string;\n size?: \"sm\" | \"md\" | \"lg\";\n isOpen: boolean;\n onItemClick?: (value: string) => void;\n isScrollable?: boolean;\n animationOrigin?: \"top-left\" | \"top-center\" | \"top-right\";\n search?: string;\n onClearSearch?: () => void;\n showSelectAll?: boolean;\n showSafeTriangle?: boolean;\n subMenuClassName?: string;\n};\n\n// Track mouse position for SafeArea triangles\nconst useMousePosition = () => {\n const [mousePosition, setMousePosition] = useState<[number, number]>([0, 0]);\n\n const updateMousePosition = useCallback((ev: MouseEvent) => {\n setMousePosition([ev.clientX, ev.clientY]);\n }, []);\n\n useEffect(() => {\n const throttledUpdate = (ev: MouseEvent) => {\n requestAnimationFrame(() => updateMousePosition(ev));\n };\n\n window.addEventListener(\"mousemove\", throttledUpdate);\n return () => window.removeEventListener(\"mousemove\", throttledUpdate);\n }, [updateMousePosition]);\n\n return mousePosition;\n};\n\ntype MouseSafeAreaProps = {\n submenuRef: React.RefObject<HTMLDivElement | null>;\n parentRef: React.RefObject<HTMLDivElement | null>;\n onEnter?: () => void;\n onLeave?: () => void;\n debug?: boolean;\n};\n\n// Component to cover the area between the mouse cursor and the sub-menu, to allow moving cursor to lower parts of sub-menu without the sub-menu disappearing.\nconst MouseSafeArea = ({\n parentRef,\n submenuRef,\n onEnter,\n onLeave,\n debug = false,\n}: MouseSafeAreaProps) => {\n const {\n x = 0,\n y = 0,\n height: h = 0,\n width: w = 0,\n } = submenuRef.current?.getBoundingClientRect() || {};\n const [mouseX, mouseY] = useMousePosition();\n const positions = { x, y, h, w, mouseX, mouseY };\n\n return (\n <div\n style={{\n position: \"absolute\",\n left: getLeft(positions),\n right: getRight(positions),\n top: 0,\n width: getWidth(positions),\n height: h,\n clipPath: getClipPath(positions),\n pointerEvents: \"auto\",\n zIndex: 9999,\n backgroundColor: debug ? \"rgba(0, 179, 179, 0.25)\" : \"transparent\",\n }}\n onMouseEnter={onEnter}\n onMouseLeave={onLeave}\n />\n );\n};\n\ninterface Positions {\n /* Sub-menu x */\n x: number;\n /* Sub-menu y */\n y: number;\n /* Sub-menu height */\n h: number;\n /* Sub-menu width */\n w: number;\n /* Mouse x */\n mouseX: number;\n /* Mouse y */\n mouseY: number;\n}\n\nconst getLeft = ({ x, mouseX }: Positions) =>\n mouseX > x ? undefined : -Math.max(x - mouseX, 10) + \"px\";\nconst getRight = ({ x, w, mouseX }: Positions) =>\n mouseX > x ? -Math.max(mouseX - (x + w), 10) + \"px\" : undefined;\nconst getWidth = ({ x, w, mouseX }: Positions) =>\n mouseX > x\n ? Math.max(mouseX - (x + w), 10) + \"px\"\n : Math.max(x - mouseX, 10) + \"px\";\nconst getClipPath = ({ x, y, h, mouseX, mouseY }: Positions) =>\n mouseX < x\n ? `polygon(100% 0%, 0% ${(100 * (mouseY - y)) / h}%, 100% 100%)`\n : `polygon(0% 0%, 0% 100%, 100% ${(100 * (mouseY - y)) / h}%)`;\n\nexport const DropdownMenu = ({\n items,\n selectedItem,\n handleChange,\n multiple = false,\n menuClassName,\n size = \"md\",\n isOpen,\n onItemClick,\n isScrollable = false,\n animationOrigin = \"top-left\",\n search,\n onClearSearch,\n showSelectAll = true,\n showSafeTriangle = false,\n subMenuClassName,\n}: DropdownMenuProps) => {\n const [isAtBottom, setIsAtBottom] = useState(false);\n const scrollContainerRef = useRef<HTMLDivElement>(null);\n\n // Filter items based on search term\n const filteredItems = (() => {\n // If search is provided, filter based on search\n if (search) {\n return items.filter((item) =>\n item.label.toLowerCase().includes(search.toLowerCase()),\n );\n }\n\n // Default: show all items\n return items;\n })();\n\n // Handle scroll detection\n const handleScroll = useCallback(() => {\n const container = scrollContainerRef.current;\n if (!container) return;\n\n const { scrollTop, scrollHeight, clientHeight } = container;\n const threshold = 5; // Small threshold to account for rounding\n const isNearBottom = scrollTop + clientHeight >= scrollHeight - threshold;\n\n setIsAtBottom(isNearBottom);\n }, []);\n\n // Reset scroll state when items change or menu opens\n useEffect(() => {\n if (isOpen) {\n setIsAtBottom(false);\n }\n }, [isOpen, filteredItems.length]);\n\n // Check if content is actually scrollable\n useEffect(() => {\n const container = scrollContainerRef.current;\n if (!container || !isOpen) return;\n\n const { scrollHeight, clientHeight } = container;\n const hasScrollbar = scrollHeight > clientHeight;\n\n // If no scrollbar (content fits), consider it \"at bottom\"\n if (!hasScrollbar) {\n setIsAtBottom(true);\n }\n }, [isOpen, filteredItems.length]);\n\n // Helper to check if an item is selected\n const isItemSelected = (value: string) => {\n if (multiple) {\n return (\n Array.isArray(selectedItem) &&\n selectedItem.length > 0 &&\n selectedItem.includes(value)\n );\n }\n return !!selectedItem && selectedItem === value;\n };\n\n const flattenSelectable = (options: DropdownOption[]): DropdownOption[] => {\n const out: DropdownOption[] = [];\n const walk = (nodes: DropdownOption[]) => {\n nodes.forEach((n) => {\n if (n.children && n.children.length > 0) {\n walk(n.children);\n } else {\n out.push(n);\n }\n });\n };\n walk(options);\n return out;\n };\n\n // Handle item selection\n const handleItemClick = (value: string) => {\n if (multiple) {\n const currentSelection = Array.isArray(selectedItem) ? selectedItem : [];\n\n // If all items are selected, clicking any item should deselect all others\n if (isAllSelected()) {\n handleChange([value]);\n } else if (currentSelection.includes(value)) {\n // Remove from selection\n handleChange(currentSelection.filter((item) => item !== value));\n } else {\n // Add to selection\n handleChange([...currentSelection, value]);\n }\n } else {\n // Single select - if clicking the already selected item, deselect it\n if (selectedItem === value) {\n handleChange(undefined);\n } else {\n // Otherwise, select the new item\n handleChange(value);\n }\n // Call the optional callback for single select\n onItemClick?.(value);\n }\n };\n\n // Handle select all\n const handleSelectAll = () => {\n const currentSelection = Array.isArray(selectedItem) ? selectedItem : [];\n const allValues = flattenSelectable(filteredItems)\n .filter((item) => !item.disabled)\n .map((item) => item.value);\n\n if (currentSelection.length === allValues.length) {\n // Deselect all\n handleChange([]);\n } else {\n // Select all\n handleChange(allValues);\n }\n };\n\n // Check if all items are selected\n const isAllSelected = () => {\n if (!Array.isArray(selectedItem) || selectedItem.length === 0) return false;\n const selectableItems = flattenSelectable(filteredItems).filter(\n (item) => !item.disabled,\n );\n return (\n selectableItems.length > 0 &&\n selectedItem.length === selectableItems.length &&\n selectableItems.every((item) => selectedItem.includes(item.value))\n );\n };\n\n return (\n <AnimatePresence>\n {isOpen && (\n <motion.div\n initial={{ opacity: 0, scale: 0.8, y: -15 }}\n animate={{ opacity: 1, scale: 1, y: 0 }}\n transition={{ duration: 0.1, ease: swift }}\n exit={{ opacity: 0, scale: 0.8, y: -5 }}\n className={classNames(\n \"z-50 absolute top-[calc(100%+6px)] p-1 bg-card-foreground border border-border-light\",\n (size === \"lg\" || size === \"md\") && \"min-w-[200px]\",\n animationOrigin === \"top-left\" && \"origin-top-left\",\n animationOrigin === \"top-center\" && \"origin-top-center\",\n animationOrigin === \"top-right\" && \"origin-top-right\",\n menuClassName,\n )}\n >\n <div\n ref={scrollContainerRef}\n onScroll={handleScroll}\n className={classNames(\n \"flex flex-col gap-y-1\",\n isScrollable && [\n \"max-h-[250px] overflow-y-auto\",\n !isAtBottom &&\n \"[mask-image:linear-gradient(180deg,black,black_85%,transparent_100%)]\",\n ],\n )}\n >\n {multiple && showSelectAll && (\n <div className=\"group flex flex-col gap-y-1\">\n <button\n onClick={handleSelectAll}\n className={classNames(\n \"py-3 pl-2.5 pr-3 flex items-center gap-x-2.5 outline-none bg-transparent transition-colors duration-100 ease-crisp hover:bg-border-light/50\",\n )}\n >\n <Checkbox checked={isAllSelected()} />\n <span className=\"text-sm text-shade-primary font-medium\">\n Select All\n </span>\n </button>\n <Divider direction=\"horizontal\" />\n </div>\n )}\n {filteredItems.length > 0 ? (\n filteredItems.map((item) =>\n item.children && item.children.length > 0 ? (\n <DropdownSubmenuItem\n key={item.value}\n item={item}\n size={size}\n onLeafClick={handleItemClick}\n isLeafSelected={isItemSelected}\n />\n ) : (\n <DropdownItem\n key={item.value}\n label={item.label}\n icon={item.icon}\n onClick={() => handleItemClick(item.value)}\n disabled={item.disabled}\n isSelected={isItemSelected(item.value)}\n size={size}\n />\n ),\n )\n ) : (\n <button\n onClick={() => {\n // Clear search by calling the onClearSearch callback\n if (onClearSearch) {\n onClearSearch();\n }\n }}\n className=\"py-3 pl-2.5 pr-3 text-sm font-mono text-shade-tertiary hover:bg-border-light/50 transition-colors duration-100 ease-crisp w-full text-center\"\n >\n No options found\n </button>\n )}\n </div>\n </motion.div>\n )}\n </AnimatePresence>\n );\n};\n\nexport const Dropdown = ({\n className,\n items,\n selectedItem,\n handleChange,\n label = \"View All\",\n multiSelectLabel,\n disabled,\n buttonClassName,\n menuClassName,\n multiple = false,\n menuIcon,\n size = \"md\",\n isScrollable = false,\n search,\n onClearSearch,\n showSelectAll,\n showClear = true,\n subMenuClassName,\n showSelectedItem = true,\n}: DropdownProps) => {\n const [isOpen, setIsOpen] = useState(false);\n\n // Handle item selection for single select (closes menu)\n const handleItemClick = (value: string) => {\n if (!multiple) {\n // Single select - if clicking the already selected item, deselect it\n if (selectedItem === value) {\n handleChange(undefined);\n } else {\n // Otherwise, select the new item\n handleChange(value);\n }\n setIsOpen(false);\n }\n };\n\n const ref = useRef<HTMLDivElement>(null);\n\n const handleClickOutside = () => {\n setIsOpen(false);\n };\n\n // Cast ref to RefObject<HTMLElement> to satisfy useOnClickOutside's expected type\n useOnClickOutside(ref as React.RefObject<HTMLElement>, handleClickOutside);\n\n // Get selected items for display in button\n const getSelectedItems = () => {\n const flatten = (options: DropdownOption[]): DropdownOption[] => {\n const out: DropdownOption[] = [];\n const walk = (nodes: DropdownOption[]) => {\n nodes.forEach((n) => {\n if (n.children && n.children.length > 0) {\n walk(n.children);\n } else {\n out.push(n);\n }\n });\n };\n walk(options);\n return out;\n };\n\n const leaves = flatten(items);\n if (multiple) {\n const selectedValues = Array.isArray(selectedItem) ? selectedItem : [];\n return leaves.filter((item) => selectedValues.includes(item.value));\n }\n const selected = leaves.find((item) => item.value === selectedItem);\n return selected ? [selected] : [];\n };\n\n return (\n <div\n ref={ref}\n className={classNames(\n \"relative flex flex-col gap-y-1.5 items-start\",\n className,\n )}\n >\n <DropdownButton\n label={label}\n multiSelectLabel={multiSelectLabel}\n disabled={disabled}\n className={buttonClassName}\n onClick={() => setIsOpen(!isOpen)}\n selectedItems={getSelectedItems()}\n multiple={multiple}\n count={getSelectedItems().length}\n menuIcon={menuIcon}\n size={size}\n onClear={() => handleChange(multiple ? [] : undefined)}\n showClear={showClear}\n showSelectedItem={showSelectedItem}\n />\n\n <DropdownMenu\n items={items}\n selectedItem={selectedItem}\n handleChange={handleChange}\n multiple={multiple}\n menuClassName={menuClassName}\n size={size}\n isOpen={isOpen}\n onItemClick={handleItemClick}\n isScrollable={isScrollable}\n search={search}\n onClearSearch={onClearSearch}\n showSelectAll={showSelectAll}\n subMenuClassName={subMenuClassName}\n />\n </div>\n );\n};\n\nexport const DropdownButton = ({\n label,\n multiSelectLabel,\n disabled,\n className,\n onClick,\n selectedItems = [],\n multiple = false,\n count = 0,\n menuIcon,\n size,\n onClear,\n showClear,\n showSelectedItem,\n}: DropdownButtonProps) => {\n const [isHovered, setIsHovered] = useState(false);\n\n // Determine what to display\n const hasSelection = selectedItems.length > 0;\n const isSingleSelection = selectedItems.length === 1;\n const isMultipleSelection = selectedItems.length > 1;\n\n // Compute icon and label based on selection state\n let buttonIcon: ButtonProps[\"icon\"] | undefined;\n let buttonLabel: string;\n\n if (hasSelection && isSingleSelection) {\n // Single selection: show selected item's icon and label\n const selectedItem = selectedItems[0];\n buttonIcon = selectedItem.icon\n ? isValidElement(selectedItem.icon)\n ? selectedItem.icon\n : {\n name: (selectedItem.icon as IconProps).name,\n className: (selectedItem.icon as IconProps).className || \"\",\n size: (selectedItem.icon as IconProps).size || 18,\n }\n : menuIcon;\n // If label is a function, call it with the selected item's label; otherwise use the selected item's label directly\n buttonLabel =\n typeof label === \"function\"\n ? label(selectedItem.label)\n : selectedItem.label;\n } else if (isMultipleSelection && multiple && multiSelectLabel) {\n // Multiple selections: show count and multiSelectLabel\n\n buttonIcon = menuIcon\n ? isValidElement(menuIcon)\n ? menuIcon\n : {\n name: (menuIcon as IconProps).name,\n className: (menuIcon as IconProps).className || \"\",\n size: (menuIcon as IconProps).size || 18,\n }\n : undefined;\n buttonLabel = `${count} ${multiSelectLabel}`;\n } else {\n // Default: no selection - use label as string\n buttonIcon = menuIcon;\n buttonLabel = typeof label === \"function\" ? label(\"\") : label;\n }\n\n return (\n <Button\n icon={buttonIcon}\n label={showSelectedItem ? buttonLabel : undefined}\n disabled={disabled}\n size={size}\n variant=\"secondary\"\n className={classNames(\n \"!origin-bottom-left !justify-start w-full\",\n (size === \"md\" || size === \"lg\") && \"!pr-[18px] !pl-[12px]\",\n size === \"sm\" && \"!pr-4 !pl-3\",\n showClear && \"!pr-[48px]\",\n className,\n )}\n useDecryptAnimation={false}\n useHoverEffect={false}\n crosshairProps={{\n variant: \"corners\",\n corners: [\"bottom-right\"],\n spacingX: !isHovered ? -6 : -4,\n spacingY: !isHovered ? -6 : -4,\n animationDuration: 0.5,\n animationDelay: 0,\n className: \"text-shade-mute group-hover:text-shade-primary\",\n }}\n onClick={onClick}\n onMouseEnter={() => setIsHovered(true)}\n onMouseLeave={() => setIsHovered(false)}\n children={\n hasSelection &&\n showClear && (\n <div\n className=\"order-last top-1/2 -translate-y-1/2 right-2 absolute h-[24px] w-[24px] flex items-center justify-center hover:bg-background/40 transition duration-100 ease-crisp cursor-pointer\"\n onClick={(e) => {\n e.stopPropagation();\n onClear?.();\n }}\n >\n <Icon name=\"Close\" size={12} />\n </div>\n )\n }\n />\n );\n};\n\nexport const DropdownItem = ({\n label,\n icon,\n onClick,\n disabled,\n isSelected = false,\n size,\n}: DropdownItemProps) => {\n return (\n <button\n onClick={onClick}\n disabled={disabled}\n className={classNames(\n \"hover:bg-border-light/50 relative group/item disabled:opacity-40 flex items-center gap-x-2.5 outline-none transition-colors duration-100 ease-crisp\",\n size === \"lg\" && \"py-4 pl-3 pr-3 text-base\",\n size === \"md\" && \"py-3 pl-2.5 pr-3 text-sm\",\n size === \"sm\" && \"py-2 pl-2.5 pr-3 h-[36px] text-sm\",\n isSelected && \"bg-background/50\",\n )}\n >\n <div className=\"opacity-0 group-hover/item:!opacity-100 absolute inset-0.5\">\n <CrosshairCorners\n size={6}\n variant=\"corners\"\n corners={[\"bottom-right\"]}\n className=\"text-shade-mute\"\n animationDelay={0}\n animationDuration={0.5}\n />\n </div>\n\n {icon && (\n <>\n {isValidElement(icon) ? (\n icon\n ) : (\n <Icon\n name={(icon as IconProps).name}\n className={classNames(\n \"flex-shrink-0\",\n (icon as IconProps).className,\n )}\n size={(icon as IconProps).size || 18}\n />\n )}\n </>\n )}\n <span\n className={classNames(\" text-shade-primary font-medium leading-[100%]\")}\n >\n {label}\n </span>\n </button>\n );\n};\n\ntype DropdownSubmenuItemProps = {\n item: DropdownOption;\n size?: \"sm\" | \"md\" | \"lg\";\n onLeafClick: (value: string) => void;\n isLeafSelected: (value: string) => boolean;\n subMenuClassName?: string;\n};\n\nconst DropdownSubmenuItem = ({\n item,\n size = \"md\",\n subMenuClassName,\n onLeafClick,\n isLeafSelected,\n}: DropdownSubmenuItemProps) => {\n const parentRef = useRef<HTMLDivElement | null>(null);\n const submenuRef = useRef<HTMLDivElement | null>(null);\n\n const [hoverParent, setHoverParent] = useState(false);\n const [hoverSubmenu, setHoverSubmenu] = useState(false);\n const [hoverSafe, setHoverSafe] = useState(false);\n\n const open = hoverParent || hoverSubmenu || hoverSafe;\n\n return (\n <div\n ref={parentRef}\n className={classNames(\"relative\", subMenuClassName)}\n onMouseEnter={() => setHoverParent(true)}\n onMouseLeave={() => setHoverParent(false)}\n >\n <button\n type=\"button\"\n className={classNames(\n \"hover:bg-border-light/50 relative h-max group/item disabled:opacity-40 flex items-center justify-between gap-x-2.5 w-full outline-none transition-colors duration-100 ease-crisp\",\n size === \"lg\" && \"py-4 pl-3 pr-3 text-base\",\n size === \"md\" && \"py-3 pl-2.5 pr-3 text-sm\",\n size === \"sm\" && \"py-2 pl-2.5 pr-3 !h-[36px] text-sm\",\n open && \"bg-border-light/50\",\n )}\n disabled={item.disabled}\n >\n <span className=\"flex items-center gap-x-2.5\">\n {item.icon && (\n <>\n {isValidElement(item.icon) ? (\n item.icon\n ) : (\n <Icon\n name={(item.icon as IconProps).name}\n className={classNames(\n \"flex-shrink-0\",\n (item.icon as IconProps).className,\n )}\n size={(item.icon as IconProps).size || 18}\n />\n )}\n </>\n )}\n <span className=\"text-shade-primary font-medium leading-[100%]\">\n {item.label}\n </span>\n </span>\n <Icon name=\"ChevronRight\" size={12} className=\"text-shade-tertiary\" />\n </button>\n\n {open && (\n <div\n ref={submenuRef}\n onMouseEnter={() => setHoverSubmenu(true)}\n onMouseLeave={() => setHoverSubmenu(false)}\n className={classNames(\n \"z-[60] !absolute top-0 left-[calc(100%+6px)] p-1 bg-card-foreground gradient-border before:bg-card-border min-w-[180px]\",\n )}\n >\n <MouseSafeArea\n parentRef={parentRef}\n submenuRef={submenuRef}\n onEnter={() => setHoverSafe(true)}\n onLeave={() => setHoverSafe(false)}\n />\n <div className=\"flex flex-col gap-y-1\">\n {(item.children || []).map((child) =>\n child.children && child.children.length > 0 ? (\n <DropdownSubmenuItem\n key={child.value}\n item={child}\n size={size}\n onLeafClick={onLeafClick}\n isLeafSelected={isLeafSelected}\n />\n ) : (\n <DropdownItem\n key={child.value}\n label={child.label}\n icon={child.icon}\n onClick={() => onLeafClick(child.value)}\n disabled={child.disabled}\n isSelected={isLeafSelected(child.value)}\n size={size}\n />\n ),\n )}\n </div>\n </div>\n )}\n </div>\n );\n};\n"],"mappings":"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"}
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
import { IconProps } from "./Icon.cjs";
|
|
2
|
+
import * as react_jsx_runtime90 from "react/jsx-runtime";
|
|
3
|
+
import { ReactNode } from "react";
|
|
4
|
+
|
|
5
|
+
//#region src/Dropdown.d.ts
|
|
6
|
+
type DropdownOption = {
|
|
7
|
+
label: string;
|
|
8
|
+
icon?: IconProps | ReactNode;
|
|
9
|
+
value: string;
|
|
10
|
+
disabled?: boolean;
|
|
11
|
+
children?: DropdownOption[];
|
|
12
|
+
};
|
|
13
|
+
type DropdownProps = {
|
|
14
|
+
className?: string;
|
|
15
|
+
items: DropdownOption[];
|
|
16
|
+
selectedItem?: string | string[] | undefined;
|
|
17
|
+
handleChange: (item: string | string[] | undefined) => void;
|
|
18
|
+
multiple?: boolean;
|
|
19
|
+
disabled?: boolean;
|
|
20
|
+
label: string | ((selectedLabel: string) => string);
|
|
21
|
+
multiSelectLabel?: string;
|
|
22
|
+
buttonClassName?: string;
|
|
23
|
+
menuClassName?: string;
|
|
24
|
+
subMenuClassName?: string;
|
|
25
|
+
menuIcon?: IconProps | ReactNode;
|
|
26
|
+
size?: "sm" | "md" | "lg";
|
|
27
|
+
isScrollable?: boolean;
|
|
28
|
+
animationOrigin?: "top-left" | "top-center" | "top-right";
|
|
29
|
+
search?: string;
|
|
30
|
+
onClearSearch?: () => void;
|
|
31
|
+
showSelectAll?: boolean;
|
|
32
|
+
showClear?: boolean;
|
|
33
|
+
showSelectedItem?: boolean;
|
|
34
|
+
};
|
|
35
|
+
type DropdownButtonProps = {
|
|
36
|
+
label: string | ((selectedLabel: string) => string);
|
|
37
|
+
multiSelectLabel?: string;
|
|
38
|
+
disabled?: boolean;
|
|
39
|
+
className?: string;
|
|
40
|
+
onClick: () => void;
|
|
41
|
+
buttonClassName?: string;
|
|
42
|
+
selectedItems?: DropdownProps["items"];
|
|
43
|
+
multiple?: boolean;
|
|
44
|
+
count?: number;
|
|
45
|
+
menuIcon?: IconProps | ReactNode;
|
|
46
|
+
size?: "sm" | "md" | "lg";
|
|
47
|
+
onClear?: () => void;
|
|
48
|
+
showSelectedItem?: boolean;
|
|
49
|
+
showClear?: boolean;
|
|
50
|
+
};
|
|
51
|
+
type DropdownItemProps = {
|
|
52
|
+
label: string;
|
|
53
|
+
icon?: IconProps | ReactNode;
|
|
54
|
+
onClick: () => void;
|
|
55
|
+
disabled?: boolean;
|
|
56
|
+
isSelected?: boolean;
|
|
57
|
+
size?: "sm" | "md" | "lg";
|
|
58
|
+
};
|
|
59
|
+
type DropdownMenuProps = {
|
|
60
|
+
items: DropdownOption[];
|
|
61
|
+
selectedItem?: string | string[] | undefined;
|
|
62
|
+
handleChange: (item: string | string[] | undefined) => void;
|
|
63
|
+
multiple?: boolean;
|
|
64
|
+
menuClassName?: string;
|
|
65
|
+
size?: "sm" | "md" | "lg";
|
|
66
|
+
isOpen: boolean;
|
|
67
|
+
onItemClick?: (value: string) => void;
|
|
68
|
+
isScrollable?: boolean;
|
|
69
|
+
animationOrigin?: "top-left" | "top-center" | "top-right";
|
|
70
|
+
search?: string;
|
|
71
|
+
onClearSearch?: () => void;
|
|
72
|
+
showSelectAll?: boolean;
|
|
73
|
+
showSafeTriangle?: boolean;
|
|
74
|
+
subMenuClassName?: string;
|
|
75
|
+
};
|
|
76
|
+
declare const DropdownMenu: ({
|
|
77
|
+
items,
|
|
78
|
+
selectedItem,
|
|
79
|
+
handleChange,
|
|
80
|
+
multiple,
|
|
81
|
+
menuClassName,
|
|
82
|
+
size,
|
|
83
|
+
isOpen,
|
|
84
|
+
onItemClick,
|
|
85
|
+
isScrollable,
|
|
86
|
+
animationOrigin,
|
|
87
|
+
search,
|
|
88
|
+
onClearSearch,
|
|
89
|
+
showSelectAll,
|
|
90
|
+
showSafeTriangle,
|
|
91
|
+
subMenuClassName
|
|
92
|
+
}: DropdownMenuProps) => react_jsx_runtime90.JSX.Element;
|
|
93
|
+
declare const Dropdown: ({
|
|
94
|
+
className,
|
|
95
|
+
items,
|
|
96
|
+
selectedItem,
|
|
97
|
+
handleChange,
|
|
98
|
+
label,
|
|
99
|
+
multiSelectLabel,
|
|
100
|
+
disabled,
|
|
101
|
+
buttonClassName,
|
|
102
|
+
menuClassName,
|
|
103
|
+
multiple,
|
|
104
|
+
menuIcon,
|
|
105
|
+
size,
|
|
106
|
+
isScrollable,
|
|
107
|
+
search,
|
|
108
|
+
onClearSearch,
|
|
109
|
+
showSelectAll,
|
|
110
|
+
showClear,
|
|
111
|
+
subMenuClassName,
|
|
112
|
+
showSelectedItem
|
|
113
|
+
}: DropdownProps) => react_jsx_runtime90.JSX.Element;
|
|
114
|
+
declare const DropdownButton: ({
|
|
115
|
+
label,
|
|
116
|
+
multiSelectLabel,
|
|
117
|
+
disabled,
|
|
118
|
+
className,
|
|
119
|
+
onClick,
|
|
120
|
+
selectedItems,
|
|
121
|
+
multiple,
|
|
122
|
+
count,
|
|
123
|
+
menuIcon,
|
|
124
|
+
size,
|
|
125
|
+
onClear,
|
|
126
|
+
showClear,
|
|
127
|
+
showSelectedItem
|
|
128
|
+
}: DropdownButtonProps) => react_jsx_runtime90.JSX.Element;
|
|
129
|
+
declare const DropdownItem: ({
|
|
130
|
+
label,
|
|
131
|
+
icon,
|
|
132
|
+
onClick,
|
|
133
|
+
disabled,
|
|
134
|
+
isSelected,
|
|
135
|
+
size
|
|
136
|
+
}: DropdownItemProps) => react_jsx_runtime90.JSX.Element;
|
|
137
|
+
//#endregion
|
|
138
|
+
export { Dropdown, DropdownButton, DropdownButtonProps, DropdownItem, DropdownItemProps, DropdownMenu, DropdownMenuProps, DropdownOption, DropdownProps };
|
|
139
|
+
//# sourceMappingURL=Dropdown.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Dropdown.d.cts","names":[],"sources":["../src/Dropdown.tsx"],"sourcesContent":[],"mappings":";;;;;KAcY,cAAA;;SAEH,YAAY;EAFT,KAAA,EAAA,MAAA;EAEH,QAAA,CAAA,EAAA,OAAA;EAAY,QAAA,CAAA,EAGR,cAHQ,EAAA;CAGR;AAAc,KAGf,aAAA,GAHe;EAGf,SAAA,CAAA,EAAA,MAAa;EAEhB,KAAA,EAAA,cAAA,EAAA;EAUI,YAAA,CAAA,EAAA,MAAA,GAAA,MAAA,EAAA,GAAA,SAAA;EAAY,YAAA,EAAA,CAAA,IAAA,EAAA,MAAA,GAAA,MAAA,EAAA,GAAA,SAAA,EAAA,GAAA,IAAA;EAAS,QAAA,CAAA,EAAA,OAAA;EAWtB,QAAA,CAAA,EAAA,OAAA;EAOM,KAAA,EAAA,MAAA,GAAA,CAAA,CAAA,aAAA,EAAA,MAAA,EAAA,GAAA,MAAA,CAAA;EAGL,gBAAA,CAAA,EAAA,MAAA;EAAY,eAAA,CAAA,EAAA,MAAA;EAAS,aAAA,CAAA,EAAA,MAAA;EAOtB,gBAAA,CAAA,EAAA,MAAiB;EASjB,QAAA,CAAA,EArCC,SAqCgB,GArCJ,SAqCI;EA+GhB,IAAA,CAAA,EAAA,IAAA,GAAA,IA2OZ,GAAA,IAAA;EA3O4B,YAAA,CAAA,EAAA,OAAA;EAAA,eAAA,CAAA,EAAA,UAAA,GAAA,YAAA,GAAA,WAAA;EAAA,MAAA,CAAA,EAAA,MAAA;EAAA,aAAA,CAAA,EAAA,GAAA,GAAA,IAAA;EAAA,aAAA,CAAA,EAAA,OAAA;EAAA,SAAA,CAAA,EAAA,OAAA;EAAA,gBAAA,CAAA,EAAA,OAAA;CAAA;AAAA,KAzIjB,mBAAA,GAyIiB;EAAA,KAAA,EAAA,MAAA,GAAA,CAAA,CAAA,aAAA,EAAA,MAAA,EAAA,GAAA,MAAA,CAAA;EAAA,gBAAA,CAAA,EAAA,MAAA;EAAA,QAAA,CAAA,EAAA,OAAA;EAAA,SAAA,CAAA,EAAA,MAAA;EAAA,OAAA,EAAA,GAAA,GAAA,IAAA;EAAA,eAAA,CAAA,EAAA,MAAA;EAgB1B,aAAA,CAAA,EAlJe,aAkJf,CAAA,OAAA,CAAA;EAAiB,QAAA,CAAA,EAAA,OAAA;EA2NnB,KAAA,CAAA,EAAA,MAAA;EAEY,QAAA,CAAA,EA5WA,SA6dZ,GA7dwB,SA6dxB;EAjHwB,IAAA,CAAA,EAAA,IAAA,GAAA,IAAA,GAAA,IAAA;EAAA,OAAA,CAAA,EAAA,GAAA,GAAA,IAAA;EAAA,gBAAA,CAAA,EAAA,OAAA;EAAA,SAAA,CAAA,EAAA,OAAA;CAAA;AAAA,KArWb,iBAAA,GAqWa;EAAA,KAAA,EAAA,MAAA;EAAA,IAAA,CAAA,EAnWhB,SAmWgB,GAnWJ,SAmWI;EAAA,OAAA,EAAA,GAAA,GAAA,IAAA;EAAA,QAAA,CAAA,EAAA,OAAA;EAAA,UAAA,CAAA,EAAA,OAAA;EAAA,IAAA,CAAA,EAAA,IAAA,GAAA,IAAA,GAAA,IAAA;CAAA;AAAA,KA5Vb,iBAAA,GA4Va;EAAA,KAAA,EA3VhB,cA2VgB,EAAA;EAAA,YAAA,CAAA,EAAA,MAAA,GAAA,MAAA,EAAA,GAAA,SAAA;EAAA,YAAA,EAAA,CAAA,IAAA,EAAA,MAAA,GAAA,MAAA,EAAA,GAAA,SAAA,EAAA,GAAA,IAAA;EAAA,QAAA,CAAA,EAAA,OAAA;EAAA,aAAA,CAAA,EAAA,MAAA;EAoBtB,IAAA,CAAA,EAAA,IAAA,GAAA,IAAA,GAAA,IAAA;EAAa,MAAA,EAAA,OAAA;EA6Ff,WAAA,CAAA,EAAA,CAAA,KAAA,EAAA,MAAA,EAAA,GAAA,IAAA;EAEY,YAAA,CAAA,EAAA,OA0GZ;EA1G8B,eAAA,CAAA,EAAA,UAAA,GAAA,YAAA,GAAA,WAAA;EAAA,MAAA,CAAA,EAAA,MAAA;EAAA,aAAA,CAAA,EAAA,GAAA,GAAA,IAAA;EAAA,aAAA,CAAA,EAAA,OAAA;EAAA,gBAAA,CAAA,EAAA,OAAA;EAAA,gBAAA,CAAA,EAAA,MAAA;CAAA;AAAA,cAhWlB,YAgWkB,EAAA,CAAA;EAAA,KAAA;EAAA,YAAA;EAAA,YAAA;EAAA,QAAA;EAAA,aAAA;EAAA,IAAA;EAAA,MAAA;EAAA,WAAA;EAAA,YAAA;EAAA,eAAA;EAAA,MAAA;EAAA,aAAA;EAAA,aAAA;EAAA,gBAAA;EAAA;AAAA,CAAA,EAhV5B,iBAgV4B,EAAA,GAhVX,mBAAA,CAAA,GAAA,CAAA,OAgVW;AAAA,cAnHlB,QAmHkB,EAAA,CAAA;EAAA,SAAA;EAAA,KAAA;EAAA,YAAA;EAAA,YAAA;EAAA,KAAA;EAAA,gBAAA;EAAA,QAAA;EAAA,eAAA;EAAA,aAAA;EAAA,QAAA;EAAA,QAAA;EAAA,IAAA;EAAA,YAAA;EAAA,MAAA;EAAA,aAAA;EAAA,aAAA;EAAA,SAAA;EAAA,gBAAA;EAAA;AAAA,CAAA,EA/F5B,aA+F4B,EAAA,GA/Ff,mBAAA,CAAA,GAAA,CAAA,OA+Fe;AAAA,cAAlB,cAAkB,EAAA,CAAA;EAAA,KAAA;EAAA,gBAAA;EAAA,QAAA;EAAA,SAAA;EAAA,OAAA;EAAA,aAAA;EAAA,QAAA;EAAA,KAAA;EAAA,QAAA;EAAA,IAAA;EAAA,OAAA;EAAA,SAAA;EAAA;AAAA,CAAA,EAc5B,mBAd4B,EAAA,GAcT,mBAAA,CAAA,GAAA,CAAA,OAdS;AAAA,cA4GlB,YA5GkB,EAAA,CAAA;EAAA,KAAA;EAAA,IAAA;EAAA,OAAA;EAAA,QAAA;EAAA,UAAA;EAAA;AAAA,CAAA,EAmH5B,iBAnH4B,EAAA,GAmHX,mBAAA,CAAA,GAAA,CAAA,OAnHW"}
|