@metamask-previews/design-system-react 0.0.0-preview.bf69b6b → 0.0.0-preview.fbd1fe9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/avatar-base/AvatarBase.cjs +28 -0
- package/dist/components/avatar-base/AvatarBase.cjs.map +1 -0
- package/dist/components/avatar-base/AvatarBase.constants.cjs +19 -0
- package/dist/components/avatar-base/AvatarBase.constants.cjs.map +1 -0
- package/dist/components/avatar-base/AvatarBase.constants.d.cts +4 -0
- package/dist/components/avatar-base/AvatarBase.constants.d.cts.map +1 -0
- package/dist/components/avatar-base/AvatarBase.constants.d.mts +4 -0
- package/dist/components/avatar-base/AvatarBase.constants.d.mts.map +1 -0
- package/dist/components/avatar-base/AvatarBase.constants.mjs +16 -0
- package/dist/components/avatar-base/AvatarBase.constants.mjs.map +1 -0
- package/dist/components/avatar-base/AvatarBase.d.cts +4 -0
- package/dist/components/avatar-base/AvatarBase.d.cts.map +1 -0
- package/dist/components/avatar-base/AvatarBase.d.mts +4 -0
- package/dist/components/avatar-base/AvatarBase.d.mts.map +1 -0
- package/dist/components/avatar-base/AvatarBase.mjs +29 -0
- package/dist/components/avatar-base/AvatarBase.mjs.map +1 -0
- package/dist/components/avatar-base/AvatarBase.types.cjs +38 -0
- package/dist/components/avatar-base/AvatarBase.types.cjs.map +1 -0
- package/dist/components/avatar-base/AvatarBase.types.d.cts +77 -0
- package/dist/components/avatar-base/AvatarBase.types.d.cts.map +1 -0
- package/dist/components/avatar-base/AvatarBase.types.d.mts +77 -0
- package/dist/components/avatar-base/AvatarBase.types.d.mts.map +1 -0
- package/dist/components/avatar-base/AvatarBase.types.mjs +35 -0
- package/dist/components/avatar-base/AvatarBase.types.mjs.map +1 -0
- package/dist/components/avatar-base/index.cjs +9 -0
- package/dist/components/avatar-base/index.cjs.map +1 -0
- package/dist/components/avatar-base/index.d.cts +4 -0
- package/dist/components/{button-link → avatar-base}/index.d.cts.map +1 -1
- package/dist/components/avatar-base/index.d.mts +4 -0
- package/dist/components/{button-link → avatar-base}/index.d.mts.map +1 -1
- package/dist/components/avatar-base/index.mjs +3 -0
- package/dist/components/avatar-base/index.mjs.map +1 -0
- package/dist/components/avatar-favicon/AvatarFavicon.cjs +16 -0
- package/dist/components/avatar-favicon/AvatarFavicon.cjs.map +1 -0
- package/dist/components/avatar-favicon/AvatarFavicon.constants.cjs +13 -0
- package/dist/components/avatar-favicon/AvatarFavicon.constants.cjs.map +1 -0
- package/dist/components/avatar-favicon/AvatarFavicon.constants.d.cts +4 -0
- package/dist/components/avatar-favicon/AvatarFavicon.constants.d.cts.map +1 -0
- package/dist/components/avatar-favicon/AvatarFavicon.constants.d.mts +4 -0
- package/dist/components/avatar-favicon/AvatarFavicon.constants.d.mts.map +1 -0
- package/dist/components/avatar-favicon/AvatarFavicon.constants.mjs +10 -0
- package/dist/components/avatar-favicon/AvatarFavicon.constants.mjs.map +1 -0
- package/dist/components/avatar-favicon/AvatarFavicon.d.cts +4 -0
- package/dist/components/avatar-favicon/AvatarFavicon.d.cts.map +1 -0
- package/dist/components/avatar-favicon/AvatarFavicon.d.mts +4 -0
- package/dist/components/avatar-favicon/AvatarFavicon.d.mts.map +1 -0
- package/dist/components/avatar-favicon/AvatarFavicon.mjs +17 -0
- package/dist/components/avatar-favicon/AvatarFavicon.mjs.map +1 -0
- package/dist/components/avatar-favicon/AvatarFavicon.types.cjs +27 -0
- package/dist/components/avatar-favicon/AvatarFavicon.types.cjs.map +1 -0
- package/dist/components/avatar-favicon/AvatarFavicon.types.d.cts +62 -0
- package/dist/components/avatar-favicon/AvatarFavicon.types.d.cts.map +1 -0
- package/dist/components/avatar-favicon/AvatarFavicon.types.d.mts +62 -0
- package/dist/components/avatar-favicon/AvatarFavicon.types.d.mts.map +1 -0
- package/dist/components/avatar-favicon/AvatarFavicon.types.mjs +24 -0
- package/dist/components/avatar-favicon/AvatarFavicon.types.mjs.map +1 -0
- package/dist/components/avatar-favicon/index.cjs +8 -0
- package/dist/components/avatar-favicon/index.cjs.map +1 -0
- package/dist/components/avatar-favicon/index.d.cts +4 -0
- package/dist/components/avatar-favicon/index.d.cts.map +1 -0
- package/dist/components/avatar-favicon/index.d.mts +4 -0
- package/dist/components/avatar-favicon/index.d.mts.map +1 -0
- package/dist/components/avatar-favicon/index.mjs +3 -0
- package/dist/components/avatar-favicon/index.mjs.map +1 -0
- package/dist/components/avatar-icon/AvatarIcon.cjs +19 -0
- package/dist/components/avatar-icon/AvatarIcon.cjs.map +1 -0
- package/dist/components/avatar-icon/AvatarIcon.constants.cjs +44 -0
- package/dist/components/avatar-icon/AvatarIcon.constants.cjs.map +1 -0
- package/dist/components/avatar-icon/AvatarIcon.constants.d.cts +11 -0
- package/dist/components/avatar-icon/AvatarIcon.constants.d.cts.map +1 -0
- package/dist/components/avatar-icon/AvatarIcon.constants.d.mts +11 -0
- package/dist/components/avatar-icon/AvatarIcon.constants.d.mts.map +1 -0
- package/dist/components/avatar-icon/AvatarIcon.constants.mjs +41 -0
- package/dist/components/avatar-icon/AvatarIcon.constants.mjs.map +1 -0
- package/dist/components/avatar-icon/AvatarIcon.d.cts +4 -0
- package/dist/components/avatar-icon/AvatarIcon.d.cts.map +1 -0
- package/dist/components/avatar-icon/AvatarIcon.d.mts +4 -0
- package/dist/components/avatar-icon/AvatarIcon.d.mts.map +1 -0
- package/dist/components/avatar-icon/AvatarIcon.mjs +20 -0
- package/dist/components/avatar-icon/AvatarIcon.mjs.map +1 -0
- package/dist/components/avatar-icon/AvatarIcon.types.cjs +36 -0
- package/dist/components/avatar-icon/AvatarIcon.types.cjs.map +1 -0
- package/dist/components/avatar-icon/AvatarIcon.types.d.cts +57 -0
- package/dist/components/avatar-icon/AvatarIcon.types.d.cts.map +1 -0
- package/dist/components/avatar-icon/AvatarIcon.types.d.mts +57 -0
- package/dist/components/avatar-icon/AvatarIcon.types.d.mts.map +1 -0
- package/dist/components/avatar-icon/AvatarIcon.types.mjs +33 -0
- package/dist/components/avatar-icon/AvatarIcon.types.mjs.map +1 -0
- package/dist/components/avatar-icon/index.cjs +9 -0
- package/dist/components/avatar-icon/index.cjs.map +1 -0
- package/dist/components/avatar-icon/index.d.cts +4 -0
- package/dist/components/avatar-icon/index.d.cts.map +1 -0
- package/dist/components/avatar-icon/index.d.mts +4 -0
- package/dist/components/avatar-icon/index.d.mts.map +1 -0
- package/dist/components/avatar-icon/index.mjs +3 -0
- package/dist/components/avatar-icon/index.mjs.map +1 -0
- package/dist/components/avatar-network/AvatarNetwork.cjs +15 -0
- package/dist/components/avatar-network/AvatarNetwork.cjs.map +1 -0
- package/dist/components/avatar-network/AvatarNetwork.d.cts +4 -0
- package/dist/components/avatar-network/AvatarNetwork.d.cts.map +1 -0
- package/dist/components/avatar-network/AvatarNetwork.d.mts +4 -0
- package/dist/components/avatar-network/AvatarNetwork.d.mts.map +1 -0
- package/dist/components/avatar-network/AvatarNetwork.mjs +16 -0
- package/dist/components/avatar-network/AvatarNetwork.mjs.map +1 -0
- package/dist/components/avatar-network/AvatarNetwork.types.cjs +4 -0
- package/dist/components/avatar-network/AvatarNetwork.types.cjs.map +1 -0
- package/dist/components/avatar-network/AvatarNetwork.types.d.cts +40 -0
- package/dist/components/avatar-network/AvatarNetwork.types.d.cts.map +1 -0
- package/dist/components/avatar-network/AvatarNetwork.types.d.mts +40 -0
- package/dist/components/avatar-network/AvatarNetwork.types.d.mts.map +1 -0
- package/dist/components/avatar-network/AvatarNetwork.types.mjs +2 -0
- package/dist/components/avatar-network/AvatarNetwork.types.mjs.map +1 -0
- package/dist/components/avatar-network/index.cjs +8 -0
- package/dist/components/avatar-network/index.cjs.map +1 -0
- package/dist/components/avatar-network/index.d.cts +4 -0
- package/dist/components/avatar-network/index.d.cts.map +1 -0
- package/dist/components/avatar-network/index.d.mts +4 -0
- package/dist/components/avatar-network/index.d.mts.map +1 -0
- package/dist/components/avatar-network/index.mjs +3 -0
- package/dist/components/avatar-network/index.mjs.map +1 -0
- package/dist/components/avatar-token/AvatarToken.cjs +15 -0
- package/dist/components/avatar-token/AvatarToken.cjs.map +1 -0
- package/dist/components/avatar-token/AvatarToken.d.cts +4 -0
- package/dist/components/avatar-token/AvatarToken.d.cts.map +1 -0
- package/dist/components/avatar-token/AvatarToken.d.mts +4 -0
- package/dist/components/avatar-token/AvatarToken.d.mts.map +1 -0
- package/dist/components/avatar-token/AvatarToken.mjs +16 -0
- package/dist/components/avatar-token/AvatarToken.mjs.map +1 -0
- package/dist/components/avatar-token/AvatarToken.types.cjs +4 -0
- package/dist/components/avatar-token/AvatarToken.types.cjs.map +1 -0
- package/dist/components/avatar-token/AvatarToken.types.d.cts +40 -0
- package/dist/components/avatar-token/AvatarToken.types.d.cts.map +1 -0
- package/dist/components/avatar-token/AvatarToken.types.d.mts +40 -0
- package/dist/components/avatar-token/AvatarToken.types.d.mts.map +1 -0
- package/dist/components/avatar-token/AvatarToken.types.mjs +2 -0
- package/dist/components/avatar-token/AvatarToken.types.mjs.map +1 -0
- package/dist/components/avatar-token/index.cjs +8 -0
- package/dist/components/avatar-token/index.cjs.map +1 -0
- package/dist/components/avatar-token/index.d.cts +4 -0
- package/dist/components/avatar-token/index.d.cts.map +1 -0
- package/dist/components/avatar-token/index.d.mts +4 -0
- package/dist/components/avatar-token/index.d.mts.map +1 -0
- package/dist/components/avatar-token/index.mjs +3 -0
- package/dist/components/avatar-token/index.mjs.map +1 -0
- package/dist/components/button/Button.cjs +25 -0
- package/dist/components/button/Button.cjs.map +1 -0
- package/dist/components/button/Button.d.cts +4 -0
- package/dist/components/button/Button.d.cts.map +1 -0
- package/dist/components/button/Button.d.mts +4 -0
- package/dist/components/button/Button.d.mts.map +1 -0
- package/dist/components/button/Button.mjs +26 -0
- package/dist/components/button/Button.mjs.map +1 -0
- package/dist/components/button/Button.types.cjs +19 -0
- package/dist/components/button/Button.types.cjs.map +1 -0
- package/dist/components/button/Button.types.d.cts +31 -0
- package/dist/components/button/Button.types.d.cts.map +1 -0
- package/dist/components/button/Button.types.d.mts +31 -0
- package/dist/components/button/Button.types.d.mts.map +1 -0
- package/dist/components/button/Button.types.mjs +16 -0
- package/dist/components/button/Button.types.mjs.map +1 -0
- package/dist/components/button/index.cjs +10 -0
- package/dist/components/button/index.cjs.map +1 -0
- package/dist/components/button/index.d.cts +5 -0
- package/dist/components/button/index.d.cts.map +1 -0
- package/dist/components/button/index.d.mts +5 -0
- package/dist/components/button/index.d.mts.map +1 -0
- package/dist/components/button/index.mjs +4 -0
- package/dist/components/button/index.mjs.map +1 -0
- package/dist/components/button-base/ButtonBase.cjs +24 -10
- package/dist/components/button-base/ButtonBase.cjs.map +1 -1
- package/dist/components/button-base/ButtonBase.d.cts.map +1 -1
- package/dist/components/button-base/ButtonBase.d.mts.map +1 -1
- package/dist/components/button-base/ButtonBase.mjs +22 -8
- package/dist/components/button-base/ButtonBase.mjs.map +1 -1
- package/dist/components/button-base/ButtonBase.types.cjs.map +1 -1
- package/dist/components/button-base/ButtonBase.types.d.cts +1 -1
- package/dist/components/button-base/ButtonBase.types.d.mts +1 -1
- package/dist/components/button-base/ButtonBase.types.mjs.map +1 -1
- package/dist/components/button-icon/ButtonIcon.cjs +38 -0
- package/dist/components/button-icon/ButtonIcon.cjs.map +1 -0
- package/dist/components/button-icon/ButtonIcon.constants.cjs +16 -0
- package/dist/components/button-icon/ButtonIcon.constants.cjs.map +1 -0
- package/dist/components/button-icon/ButtonIcon.constants.d.cts +12 -0
- package/dist/components/button-icon/ButtonIcon.constants.d.cts.map +1 -0
- package/dist/components/button-icon/ButtonIcon.constants.d.mts +12 -0
- package/dist/components/button-icon/ButtonIcon.constants.d.mts.map +1 -0
- package/dist/components/button-icon/ButtonIcon.constants.mjs +13 -0
- package/dist/components/button-icon/ButtonIcon.constants.mjs.map +1 -0
- package/dist/components/button-icon/ButtonIcon.d.cts +4 -0
- package/dist/components/button-icon/ButtonIcon.d.cts.map +1 -0
- package/dist/components/button-icon/ButtonIcon.d.mts +4 -0
- package/dist/components/button-icon/ButtonIcon.d.mts.map +1 -0
- package/dist/components/button-icon/ButtonIcon.mjs +39 -0
- package/dist/components/button-icon/ButtonIcon.mjs.map +1 -0
- package/dist/components/button-icon/ButtonIcon.types.cjs +19 -0
- package/dist/components/button-icon/ButtonIcon.types.cjs.map +1 -0
- package/dist/components/button-icon/ButtonIcon.types.d.cts +61 -0
- package/dist/components/button-icon/ButtonIcon.types.d.cts.map +1 -0
- package/dist/components/button-icon/ButtonIcon.types.d.mts +61 -0
- package/dist/components/button-icon/ButtonIcon.types.d.mts.map +1 -0
- package/dist/components/button-icon/ButtonIcon.types.mjs +16 -0
- package/dist/components/button-icon/ButtonIcon.types.mjs.map +1 -0
- package/dist/components/button-icon/index.cjs +8 -0
- package/dist/components/button-icon/index.cjs.map +1 -0
- package/dist/components/button-icon/index.d.cts +4 -0
- package/dist/components/button-icon/index.d.cts.map +1 -0
- package/dist/components/button-icon/index.d.mts +4 -0
- package/dist/components/button-icon/index.d.mts.map +1 -0
- package/dist/components/button-icon/index.mjs +3 -0
- package/dist/components/button-icon/index.mjs.map +1 -0
- package/dist/components/button-primary/ButtonPrimary.cjs +45 -23
- package/dist/components/button-primary/ButtonPrimary.cjs.map +1 -1
- package/dist/components/button-primary/ButtonPrimary.d.cts.map +1 -1
- package/dist/components/button-primary/ButtonPrimary.d.mts.map +1 -1
- package/dist/components/button-primary/ButtonPrimary.mjs +45 -23
- package/dist/components/button-primary/ButtonPrimary.mjs.map +1 -1
- package/dist/components/button-secondary/ButtonSecondary.cjs +26 -25
- package/dist/components/button-secondary/ButtonSecondary.cjs.map +1 -1
- package/dist/components/button-secondary/ButtonSecondary.d.cts.map +1 -1
- package/dist/components/button-secondary/ButtonSecondary.d.mts.map +1 -1
- package/dist/components/button-secondary/ButtonSecondary.mjs +26 -25
- package/dist/components/button-secondary/ButtonSecondary.mjs.map +1 -1
- package/dist/components/button-tertiary/ButtonTertiary.cjs +60 -0
- package/dist/components/button-tertiary/ButtonTertiary.cjs.map +1 -0
- package/dist/components/button-tertiary/ButtonTertiary.d.cts +4 -0
- package/dist/components/button-tertiary/ButtonTertiary.d.cts.map +1 -0
- package/dist/components/button-tertiary/ButtonTertiary.d.mts +4 -0
- package/dist/components/button-tertiary/ButtonTertiary.d.mts.map +1 -0
- package/dist/components/button-tertiary/ButtonTertiary.mjs +61 -0
- package/dist/components/button-tertiary/ButtonTertiary.mjs.map +1 -0
- package/dist/components/button-tertiary/ButtonTertiary.types.cjs +3 -0
- package/dist/components/button-tertiary/ButtonTertiary.types.cjs.map +1 -0
- package/dist/components/{button-link/ButtonLink.types.d.cts → button-tertiary/ButtonTertiary.types.d.cts} +8 -3
- package/dist/components/button-tertiary/ButtonTertiary.types.d.cts.map +1 -0
- package/dist/components/{button-link/ButtonLink.types.d.mts → button-tertiary/ButtonTertiary.types.d.mts} +8 -3
- package/dist/components/button-tertiary/ButtonTertiary.types.d.mts.map +1 -0
- package/dist/components/button-tertiary/ButtonTertiary.types.mjs +2 -0
- package/dist/components/button-tertiary/ButtonTertiary.types.mjs.map +1 -0
- package/dist/components/button-tertiary/index.cjs +8 -0
- package/dist/components/button-tertiary/index.cjs.map +1 -0
- package/dist/components/button-tertiary/index.d.cts +4 -0
- package/dist/components/button-tertiary/index.d.cts.map +1 -0
- package/dist/components/button-tertiary/index.d.mts +4 -0
- package/dist/components/button-tertiary/index.d.mts.map +1 -0
- package/dist/components/button-tertiary/index.mjs +3 -0
- package/dist/components/button-tertiary/index.mjs.map +1 -0
- package/dist/components/index.cjs +30 -9
- package/dist/components/index.cjs.map +1 -1
- package/dist/components/index.d.cts +20 -7
- package/dist/components/index.d.cts.map +1 -1
- package/dist/components/index.d.mts +20 -7
- package/dist/components/index.d.mts.map +1 -1
- package/dist/components/index.mjs +11 -6
- package/dist/components/index.mjs.map +1 -1
- package/dist/components/text/Text.cjs +2 -2
- package/dist/components/text/Text.cjs.map +1 -1
- package/dist/components/text/Text.d.cts.map +1 -1
- package/dist/components/text/Text.d.mts.map +1 -1
- package/dist/components/text/Text.mjs +2 -2
- package/dist/components/text/Text.mjs.map +1 -1
- package/dist/components/text/Text.types.cjs.map +1 -1
- package/dist/components/text/Text.types.d.cts +4 -0
- package/dist/components/text/Text.types.d.cts.map +1 -1
- package/dist/components/text/Text.types.d.mts +4 -0
- package/dist/components/text/Text.types.d.mts.map +1 -1
- package/dist/components/text/Text.types.mjs.map +1 -1
- package/dist/components/text-button/TextButton.cjs +49 -0
- package/dist/components/text-button/TextButton.cjs.map +1 -0
- package/dist/components/text-button/TextButton.d.cts +4 -0
- package/dist/components/text-button/TextButton.d.cts.map +1 -0
- package/dist/components/text-button/TextButton.d.mts +4 -0
- package/dist/components/text-button/TextButton.d.mts.map +1 -0
- package/dist/components/text-button/TextButton.mjs +50 -0
- package/dist/components/text-button/TextButton.mjs.map +1 -0
- package/dist/components/{button-link/ButtonLink.types.cjs → text-button/TextButton.types.cjs} +1 -1
- package/dist/components/text-button/TextButton.types.cjs.map +1 -0
- package/dist/components/text-button/TextButton.types.d.cts +35 -0
- package/dist/components/text-button/TextButton.types.d.cts.map +1 -0
- package/dist/components/text-button/TextButton.types.d.mts +35 -0
- package/dist/components/text-button/TextButton.types.d.mts.map +1 -0
- package/dist/components/text-button/TextButton.types.mjs +2 -0
- package/dist/components/text-button/TextButton.types.mjs.map +1 -0
- package/dist/components/text-button/index.cjs +6 -0
- package/dist/components/text-button/index.cjs.map +1 -0
- package/dist/components/text-button/index.d.cts +3 -0
- package/dist/components/text-button/index.d.cts.map +1 -0
- package/dist/components/text-button/index.d.mts +3 -0
- package/dist/components/text-button/index.d.mts.map +1 -0
- package/dist/components/text-button/index.mjs +2 -0
- package/dist/components/text-button/index.mjs.map +1 -0
- package/package.json +6 -6
- package/dist/components/button-link/ButtonLink.cjs +0 -32
- package/dist/components/button-link/ButtonLink.cjs.map +0 -1
- package/dist/components/button-link/ButtonLink.d.cts +0 -4
- package/dist/components/button-link/ButtonLink.d.cts.map +0 -1
- package/dist/components/button-link/ButtonLink.d.mts +0 -4
- package/dist/components/button-link/ButtonLink.d.mts.map +0 -1
- package/dist/components/button-link/ButtonLink.mjs +0 -33
- package/dist/components/button-link/ButtonLink.mjs.map +0 -1
- package/dist/components/button-link/ButtonLink.types.cjs.map +0 -1
- package/dist/components/button-link/ButtonLink.types.d.cts.map +0 -1
- package/dist/components/button-link/ButtonLink.types.d.mts.map +0 -1
- package/dist/components/button-link/ButtonLink.types.mjs +0 -2
- package/dist/components/button-link/ButtonLink.types.mjs.map +0 -1
- package/dist/components/button-link/index.cjs +0 -8
- package/dist/components/button-link/index.cjs.map +0 -1
- package/dist/components/button-link/index.d.cts +0 -4
- package/dist/components/button-link/index.d.mts +0 -4
- package/dist/components/button-link/index.mjs +0 -3
- package/dist/components/button-link/index.mjs.map +0 -1
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
function $importDefault(module) {
|
|
2
|
+
if (module?.__esModule) {
|
|
3
|
+
return module.default;
|
|
4
|
+
}
|
|
5
|
+
return module;
|
|
6
|
+
}
|
|
7
|
+
import $React from "react";
|
|
8
|
+
const React = $importDefault($React);
|
|
9
|
+
import { ButtonTertiary } from "../button-tertiary/index.mjs";
|
|
10
|
+
import { ButtonPrimary } from "../button-primary/index.mjs";
|
|
11
|
+
import { ButtonSecondary } from "../button-secondary/index.mjs";
|
|
12
|
+
import { ButtonVariant } from "./Button.types.mjs";
|
|
13
|
+
export const Button = React.forwardRef(({ variant = ButtonVariant.Primary, ...props }, ref) => {
|
|
14
|
+
switch (variant) {
|
|
15
|
+
case ButtonVariant.Primary:
|
|
16
|
+
return React.createElement(ButtonPrimary, { ref: ref, ...props });
|
|
17
|
+
case ButtonVariant.Secondary:
|
|
18
|
+
return (React.createElement(ButtonSecondary, { ref: ref, ...props }));
|
|
19
|
+
case ButtonVariant.Tertiary:
|
|
20
|
+
return React.createElement(ButtonTertiary, { ref: ref, ...props });
|
|
21
|
+
default:
|
|
22
|
+
return React.createElement(ButtonPrimary, { ref: ref, ...props });
|
|
23
|
+
}
|
|
24
|
+
});
|
|
25
|
+
Button.displayName = 'Button';
|
|
26
|
+
//# sourceMappingURL=Button.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Button.mjs","sourceRoot":"","sources":["../../../src/components/button/Button.tsx"],"names":[],"mappings":";;;;;;AAAA,OAAO,MAAK,cAAc;;AAE1B,OAAO,EAAE,cAAc,EAAE,qCAA2B;AACpD,OAAO,EAAE,aAAa,EAAE,oCAA0B;AAClD,OAAO,EAAE,eAAe,EAAE,sCAA4B;AAKtD,OAAO,EAAE,aAAa,EAAE,2BAAuB;AAE/C,MAAM,CAAC,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,CACpC,CAAC,EAAE,OAAO,GAAG,aAAa,CAAC,OAAO,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE;IACrD,QAAQ,OAAO,EAAE;QACf,KAAK,aAAa,CAAC,OAAO;YACxB,OAAO,oBAAC,aAAa,IAAC,GAAG,EAAE,GAAG,KAAO,KAA4B,GAAI,CAAC;QACxE,KAAK,aAAa,CAAC,SAAS;YAC1B,OAAO,CACL,oBAAC,eAAe,IAAC,GAAG,EAAE,GAAG,KAAO,KAA8B,GAAI,CACnE,CAAC;QACJ,KAAK,aAAa,CAAC,QAAQ;YACzB,OAAO,oBAAC,cAAc,IAAC,GAAG,EAAE,GAAG,KAAO,KAA6B,GAAI,CAAC;QAC1E;YACE,OAAO,oBAAC,aAAa,IAAC,GAAG,EAAE,GAAG,KAAO,KAA4B,GAAI,CAAC;KACzE;AACH,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,WAAW,GAAG,QAAQ,CAAC","sourcesContent":["import React from 'react';\n\nimport { ButtonTertiary } from '../button-tertiary';\nimport { ButtonPrimary } from '../button-primary';\nimport { ButtonSecondary } from '../button-secondary';\nimport type { ButtonTertiaryProps } from '../button-tertiary';\nimport type { ButtonPrimaryProps } from '../button-primary';\nimport type { ButtonSecondaryProps } from '../button-secondary';\nimport type { ButtonProps } from './Button.types';\nimport { ButtonVariant } from './Button.types';\n\nexport const Button = React.forwardRef<HTMLButtonElement, ButtonProps>(\n ({ variant = ButtonVariant.Primary, ...props }, ref) => {\n switch (variant) {\n case ButtonVariant.Primary:\n return <ButtonPrimary ref={ref} {...(props as ButtonPrimaryProps)} />;\n case ButtonVariant.Secondary:\n return (\n <ButtonSecondary ref={ref} {...(props as ButtonSecondaryProps)} />\n );\n case ButtonVariant.Tertiary:\n return <ButtonTertiary ref={ref} {...(props as ButtonTertiaryProps)} />;\n default:\n return <ButtonPrimary ref={ref} {...(props as ButtonPrimaryProps)} />;\n }\n },\n);\n\nButton.displayName = 'Button';\n"]}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ButtonVariant = void 0;
|
|
4
|
+
var ButtonVariant;
|
|
5
|
+
(function (ButtonVariant) {
|
|
6
|
+
/**
|
|
7
|
+
* Primary button variant - used for primary actions
|
|
8
|
+
*/
|
|
9
|
+
ButtonVariant["Primary"] = "primary";
|
|
10
|
+
/**
|
|
11
|
+
* Secondary button variant - used for secondary actions
|
|
12
|
+
*/
|
|
13
|
+
ButtonVariant["Secondary"] = "secondary";
|
|
14
|
+
/**
|
|
15
|
+
* Tertiary button variant - used for tertiary-like actions
|
|
16
|
+
*/
|
|
17
|
+
ButtonVariant["Tertiary"] = "tertiary";
|
|
18
|
+
})(ButtonVariant || (exports.ButtonVariant = ButtonVariant = {}));
|
|
19
|
+
//# sourceMappingURL=Button.types.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Button.types.cjs","sourceRoot":"","sources":["../../../src/components/button/Button.types.ts"],"names":[],"mappings":";;;AAIA,IAAY,aAaX;AAbD,WAAY,aAAa;IACvB;;OAEG;IACH,oCAAmB,CAAA;IACnB;;OAEG;IACH,wCAAuB,CAAA;IACvB;;OAEG;IACH,sCAAqB,CAAA;AACvB,CAAC,EAbW,aAAa,6BAAb,aAAa,QAaxB","sourcesContent":["import type { ButtonPrimaryProps } from '../button-primary';\nimport type { ButtonSecondaryProps } from '../button-secondary';\nimport type { ButtonTertiaryProps } from '../button-tertiary';\n\nexport enum ButtonVariant {\n /**\n * Primary button variant - used for primary actions\n */\n Primary = 'primary',\n /**\n * Secondary button variant - used for secondary actions\n */\n Secondary = 'secondary',\n /**\n * Tertiary button variant - used for tertiary-like actions\n */\n Tertiary = 'tertiary',\n}\n\nexport type ButtonProps = {\n /**\n * Optional prop to control the variant of the Button\n * @default ButtonVariant.Primary\n */\n variant?: ButtonVariant;\n} & (\n | (Omit<ButtonPrimaryProps, 'ref'> & {\n variant?: ButtonVariant.Primary;\n })\n | (Omit<ButtonSecondaryProps, 'ref'> & {\n variant?: ButtonVariant.Secondary;\n })\n | (Omit<ButtonTertiaryProps, 'ref'> & {\n variant?: ButtonVariant.Tertiary;\n })\n);\n"]}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { ButtonPrimaryProps } from "../button-primary/index.cjs";
|
|
2
|
+
import type { ButtonSecondaryProps } from "../button-secondary/index.cjs";
|
|
3
|
+
import type { ButtonTertiaryProps } from "../button-tertiary/index.cjs";
|
|
4
|
+
export declare enum ButtonVariant {
|
|
5
|
+
/**
|
|
6
|
+
* Primary button variant - used for primary actions
|
|
7
|
+
*/
|
|
8
|
+
Primary = "primary",
|
|
9
|
+
/**
|
|
10
|
+
* Secondary button variant - used for secondary actions
|
|
11
|
+
*/
|
|
12
|
+
Secondary = "secondary",
|
|
13
|
+
/**
|
|
14
|
+
* Tertiary button variant - used for tertiary-like actions
|
|
15
|
+
*/
|
|
16
|
+
Tertiary = "tertiary"
|
|
17
|
+
}
|
|
18
|
+
export type ButtonProps = {
|
|
19
|
+
/**
|
|
20
|
+
* Optional prop to control the variant of the Button
|
|
21
|
+
* @default ButtonVariant.Primary
|
|
22
|
+
*/
|
|
23
|
+
variant?: ButtonVariant;
|
|
24
|
+
} & ((Omit<ButtonPrimaryProps, 'ref'> & {
|
|
25
|
+
variant?: ButtonVariant.Primary;
|
|
26
|
+
}) | (Omit<ButtonSecondaryProps, 'ref'> & {
|
|
27
|
+
variant?: ButtonVariant.Secondary;
|
|
28
|
+
}) | (Omit<ButtonTertiaryProps, 'ref'> & {
|
|
29
|
+
variant?: ButtonVariant.Tertiary;
|
|
30
|
+
}));
|
|
31
|
+
//# sourceMappingURL=Button.types.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Button.types.d.cts","sourceRoot":"","sources":["../../../src/components/button/Button.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,oCAA0B;AAC5D,OAAO,KAAK,EAAE,oBAAoB,EAAE,sCAA4B;AAChE,OAAO,KAAK,EAAE,mBAAmB,EAAE,qCAA2B;AAE9D,oBAAY,aAAa;IACvB;;OAEG;IACH,OAAO,YAAY;IACnB;;OAEG;IACH,SAAS,cAAc;IACvB;;OAEG;IACH,QAAQ,aAAa;CACtB;AAED,MAAM,MAAM,WAAW,GAAG;IACxB;;;OAGG;IACH,OAAO,CAAC,EAAE,aAAa,CAAC;CACzB,GAAG,CACA,CAAC,IAAI,CAAC,kBAAkB,EAAE,KAAK,CAAC,GAAG;IACjC,OAAO,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC;CACjC,CAAC,GACF,CAAC,IAAI,CAAC,oBAAoB,EAAE,KAAK,CAAC,GAAG;IACnC,OAAO,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC;CACnC,CAAC,GACF,CAAC,IAAI,CAAC,mBAAmB,EAAE,KAAK,CAAC,GAAG;IAClC,OAAO,CAAC,EAAE,aAAa,CAAC,QAAQ,CAAC;CAClC,CAAC,CACL,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { ButtonPrimaryProps } from "../button-primary/index.mjs";
|
|
2
|
+
import type { ButtonSecondaryProps } from "../button-secondary/index.mjs";
|
|
3
|
+
import type { ButtonTertiaryProps } from "../button-tertiary/index.mjs";
|
|
4
|
+
export declare enum ButtonVariant {
|
|
5
|
+
/**
|
|
6
|
+
* Primary button variant - used for primary actions
|
|
7
|
+
*/
|
|
8
|
+
Primary = "primary",
|
|
9
|
+
/**
|
|
10
|
+
* Secondary button variant - used for secondary actions
|
|
11
|
+
*/
|
|
12
|
+
Secondary = "secondary",
|
|
13
|
+
/**
|
|
14
|
+
* Tertiary button variant - used for tertiary-like actions
|
|
15
|
+
*/
|
|
16
|
+
Tertiary = "tertiary"
|
|
17
|
+
}
|
|
18
|
+
export type ButtonProps = {
|
|
19
|
+
/**
|
|
20
|
+
* Optional prop to control the variant of the Button
|
|
21
|
+
* @default ButtonVariant.Primary
|
|
22
|
+
*/
|
|
23
|
+
variant?: ButtonVariant;
|
|
24
|
+
} & ((Omit<ButtonPrimaryProps, 'ref'> & {
|
|
25
|
+
variant?: ButtonVariant.Primary;
|
|
26
|
+
}) | (Omit<ButtonSecondaryProps, 'ref'> & {
|
|
27
|
+
variant?: ButtonVariant.Secondary;
|
|
28
|
+
}) | (Omit<ButtonTertiaryProps, 'ref'> & {
|
|
29
|
+
variant?: ButtonVariant.Tertiary;
|
|
30
|
+
}));
|
|
31
|
+
//# sourceMappingURL=Button.types.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Button.types.d.mts","sourceRoot":"","sources":["../../../src/components/button/Button.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,oCAA0B;AAC5D,OAAO,KAAK,EAAE,oBAAoB,EAAE,sCAA4B;AAChE,OAAO,KAAK,EAAE,mBAAmB,EAAE,qCAA2B;AAE9D,oBAAY,aAAa;IACvB;;OAEG;IACH,OAAO,YAAY;IACnB;;OAEG;IACH,SAAS,cAAc;IACvB;;OAEG;IACH,QAAQ,aAAa;CACtB;AAED,MAAM,MAAM,WAAW,GAAG;IACxB;;;OAGG;IACH,OAAO,CAAC,EAAE,aAAa,CAAC;CACzB,GAAG,CACA,CAAC,IAAI,CAAC,kBAAkB,EAAE,KAAK,CAAC,GAAG;IACjC,OAAO,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC;CACjC,CAAC,GACF,CAAC,IAAI,CAAC,oBAAoB,EAAE,KAAK,CAAC,GAAG;IACnC,OAAO,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC;CACnC,CAAC,GACF,CAAC,IAAI,CAAC,mBAAmB,EAAE,KAAK,CAAC,GAAG;IAClC,OAAO,CAAC,EAAE,aAAa,CAAC,QAAQ,CAAC;CAClC,CAAC,CACL,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export var ButtonVariant;
|
|
2
|
+
(function (ButtonVariant) {
|
|
3
|
+
/**
|
|
4
|
+
* Primary button variant - used for primary actions
|
|
5
|
+
*/
|
|
6
|
+
ButtonVariant["Primary"] = "primary";
|
|
7
|
+
/**
|
|
8
|
+
* Secondary button variant - used for secondary actions
|
|
9
|
+
*/
|
|
10
|
+
ButtonVariant["Secondary"] = "secondary";
|
|
11
|
+
/**
|
|
12
|
+
* Tertiary button variant - used for tertiary-like actions
|
|
13
|
+
*/
|
|
14
|
+
ButtonVariant["Tertiary"] = "tertiary";
|
|
15
|
+
})(ButtonVariant || (ButtonVariant = {}));
|
|
16
|
+
//# sourceMappingURL=Button.types.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Button.types.mjs","sourceRoot":"","sources":["../../../src/components/button/Button.types.ts"],"names":[],"mappings":"AAIA,MAAM,CAAN,IAAY,aAaX;AAbD,WAAY,aAAa;IACvB;;OAEG;IACH,oCAAmB,CAAA;IACnB;;OAEG;IACH,wCAAuB,CAAA;IACvB;;OAEG;IACH,sCAAqB,CAAA;AACvB,CAAC,EAbW,aAAa,KAAb,aAAa,QAaxB","sourcesContent":["import type { ButtonPrimaryProps } from '../button-primary';\nimport type { ButtonSecondaryProps } from '../button-secondary';\nimport type { ButtonTertiaryProps } from '../button-tertiary';\n\nexport enum ButtonVariant {\n /**\n * Primary button variant - used for primary actions\n */\n Primary = 'primary',\n /**\n * Secondary button variant - used for secondary actions\n */\n Secondary = 'secondary',\n /**\n * Tertiary button variant - used for tertiary-like actions\n */\n Tertiary = 'tertiary',\n}\n\nexport type ButtonProps = {\n /**\n * Optional prop to control the variant of the Button\n * @default ButtonVariant.Primary\n */\n variant?: ButtonVariant;\n} & (\n | (Omit<ButtonPrimaryProps, 'ref'> & {\n variant?: ButtonVariant.Primary;\n })\n | (Omit<ButtonSecondaryProps, 'ref'> & {\n variant?: ButtonVariant.Secondary;\n })\n | (Omit<ButtonTertiaryProps, 'ref'> & {\n variant?: ButtonVariant.Tertiary;\n })\n);\n"]}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ButtonSize = exports.ButtonVariant = exports.Button = void 0;
|
|
4
|
+
var Button_1 = require("./Button.cjs");
|
|
5
|
+
Object.defineProperty(exports, "Button", { enumerable: true, get: function () { return Button_1.Button; } });
|
|
6
|
+
var Button_types_1 = require("./Button.types.cjs");
|
|
7
|
+
Object.defineProperty(exports, "ButtonVariant", { enumerable: true, get: function () { return Button_types_1.ButtonVariant; } });
|
|
8
|
+
var button_base_1 = require("../button-base/index.cjs");
|
|
9
|
+
Object.defineProperty(exports, "ButtonSize", { enumerable: true, get: function () { return button_base_1.ButtonBaseSize; } });
|
|
10
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.cjs","sourceRoot":"","sources":["../../../src/components/button/index.ts"],"names":[],"mappings":";;;AAAA,uCAAkC;AAAzB,gGAAA,MAAM,OAAA;AAEf,mDAA+C;AAAtC,6GAAA,aAAa,OAAA;AACtB,wDAA8D;AAArD,yGAAA,cAAc,OAAc","sourcesContent":["export { Button } from './Button';\nexport type { ButtonProps } from './Button.types';\nexport { ButtonVariant } from './Button.types';\nexport { ButtonBaseSize as ButtonSize } from '../button-base';\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.cts","sourceRoot":"","sources":["../../../src/components/button/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,qBAAiB;AAClC,YAAY,EAAE,WAAW,EAAE,2BAAuB;AAClD,OAAO,EAAE,aAAa,EAAE,2BAAuB;AAC/C,OAAO,EAAE,cAAc,IAAI,UAAU,EAAE,iCAAuB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../../../src/components/button/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,qBAAiB;AAClC,YAAY,EAAE,WAAW,EAAE,2BAAuB;AAClD,OAAO,EAAE,aAAa,EAAE,2BAAuB;AAC/C,OAAO,EAAE,cAAc,IAAI,UAAU,EAAE,iCAAuB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../../src/components/button/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,qBAAiB;AAElC,OAAO,EAAE,aAAa,EAAE,2BAAuB;AAC/C,OAAO,EAAE,cAAc,IAAI,UAAU,EAAE,iCAAuB","sourcesContent":["export { Button } from './Button';\nexport type { ButtonProps } from './Button.types';\nexport { ButtonVariant } from './Button.types';\nexport { ButtonBaseSize as ButtonSize } from '../button-base';\n"]}
|
|
@@ -6,18 +6,22 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.ButtonBase = void 0;
|
|
7
7
|
const react_slot_1 = require("@radix-ui/react-slot");
|
|
8
8
|
const react_1 = __importDefault(require("react"));
|
|
9
|
-
const
|
|
9
|
+
const text_1 = require("../text/index.cjs");
|
|
10
|
+
const icon_1 = require("../icon/index.cjs");
|
|
10
11
|
const tw_merge_1 = require("../../utils/tw-merge.cjs");
|
|
11
12
|
const ButtonBase_constants_1 = require("./ButtonBase.constants.cjs");
|
|
12
13
|
const ButtonBase_types_1 = require("./ButtonBase.types.cjs");
|
|
13
|
-
exports.ButtonBase = react_1.default.forwardRef(({ children, className, size = ButtonBase_types_1.ButtonBaseSize.
|
|
14
|
+
exports.ButtonBase = react_1.default.forwardRef(({ children, className, size = ButtonBase_types_1.ButtonBaseSize.Lg, isFullWidth, asChild, isDisabled, isLoading, loadingText, loadingIconProps, startIconName, startIconProps, startAccessory, endIconName, endIconProps, endAccessory, textProps, style, ...props }, ref) => {
|
|
14
15
|
const Component = asChild ? react_slot_1.Slot : 'button';
|
|
15
|
-
const
|
|
16
|
-
|
|
17
|
-
|
|
16
|
+
const isInteractive = !(isDisabled ?? isLoading);
|
|
17
|
+
const renderLoadingState = () => (react_1.default.createElement(react_1.default.Fragment, null,
|
|
18
|
+
react_1.default.createElement("span", { className: "absolute inline-flex items-center" },
|
|
19
|
+
react_1.default.createElement(icon_1.Icon, { name: icon_1.IconName.Loading, size: icon_1.IconSize.Sm, className: (0, tw_merge_1.twMerge)('animate-spin mr-2 text-inherit', loadingIconProps?.className), ...loadingIconProps }),
|
|
20
|
+
loadingText),
|
|
21
|
+
react_1.default.createElement("span", { className: "invisible inline-flex items-center" }, children)));
|
|
18
22
|
const renderStartContent = () => {
|
|
19
23
|
if (startIconName) {
|
|
20
|
-
return (react_1.default.createElement(
|
|
24
|
+
return (react_1.default.createElement(icon_1.Icon, { name: startIconName, size: icon_1.IconSize.Sm, className: (0, tw_merge_1.twMerge)('mr-2 text-inherit', startIconProps?.className), ...startIconProps }));
|
|
21
25
|
}
|
|
22
26
|
if (startAccessory) {
|
|
23
27
|
return react_1.default.createElement("span", { className: "mr-2" }, startAccessory);
|
|
@@ -26,7 +30,7 @@ exports.ButtonBase = react_1.default.forwardRef(({ children, className, size = B
|
|
|
26
30
|
};
|
|
27
31
|
const renderEndContent = () => {
|
|
28
32
|
if (endIconName) {
|
|
29
|
-
return (react_1.default.createElement(
|
|
33
|
+
return (react_1.default.createElement(icon_1.Icon, { name: endIconName, size: icon_1.IconSize.Sm, className: (0, tw_merge_1.twMerge)('ml-2 text-inherit', endIconProps?.className), ...endIconProps }));
|
|
30
34
|
}
|
|
31
35
|
if (endAccessory) {
|
|
32
36
|
return react_1.default.createElement("span", { className: "ml-2" }, endAccessory);
|
|
@@ -35,7 +39,7 @@ exports.ButtonBase = react_1.default.forwardRef(({ children, className, size = B
|
|
|
35
39
|
};
|
|
36
40
|
const renderContent = () => {
|
|
37
41
|
if (children && typeof children === 'string') {
|
|
38
|
-
return (react_1.default.createElement(
|
|
42
|
+
return (react_1.default.createElement(text_1.Text, { fontWeight: text_1.FontWeight.Medium, color: text_1.TextColor.Inherit, asChild: true, ...textProps },
|
|
39
43
|
react_1.default.createElement("span", null, children)));
|
|
40
44
|
}
|
|
41
45
|
return children;
|
|
@@ -43,15 +47,25 @@ exports.ButtonBase = react_1.default.forwardRef(({ children, className, size = B
|
|
|
43
47
|
const mergedClassName = (0, tw_merge_1.twMerge)(
|
|
44
48
|
// Base styles
|
|
45
49
|
'inline-flex items-center justify-center', 'rounded-full px-4', 'text-default font-medium', 'bg-muted',
|
|
50
|
+
// Add relative positioning for loading state
|
|
51
|
+
'relative',
|
|
46
52
|
// Size
|
|
47
53
|
ButtonBase_constants_1.BUTTON_BASE_SIZE_CLASS_MAP[size],
|
|
48
54
|
// Full width
|
|
49
55
|
isFullWidth && 'w-full',
|
|
56
|
+
// Animation classes - only applied when interactive
|
|
57
|
+
isInteractive && [
|
|
58
|
+
'transition-[transform,colors,opacity]',
|
|
59
|
+
'duration-100',
|
|
60
|
+
'ease-linear',
|
|
61
|
+
'active:scale-[0.97]',
|
|
62
|
+
'active:ease-[cubic-bezier(0.3,0.8,0.3,1)]',
|
|
63
|
+
],
|
|
50
64
|
// Disabled state - apply to both isDisabled and isLoading
|
|
51
|
-
(isDisabled || isLoading) && '
|
|
65
|
+
(isDisabled || isLoading) && 'cursor-not-allowed', isDisabled && 'opacity-50',
|
|
52
66
|
// Custom classes
|
|
53
67
|
className);
|
|
54
|
-
return (react_1.default.createElement(Component, { ref: ref, className: mergedClassName, disabled: asChild ? undefined : isDisabled ?? isLoading, style: style, ...props },
|
|
68
|
+
return (react_1.default.createElement(Component, { ref: ref, className: mergedClassName, disabled: asChild ? undefined : (isDisabled ?? isLoading), style: style, ...props },
|
|
55
69
|
renderStartContent(),
|
|
56
70
|
react_1.default.createElement(react_slot_1.Slottable, null, isLoading ? renderLoadingState() : renderContent()),
|
|
57
71
|
renderEndContent()));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ButtonBase.cjs","sourceRoot":"","sources":["../../../src/components/button-base/ButtonBase.tsx"],"names":[],"mappings":";;;;;;AAAA,qDAAuD;AACvD,kDAA0B;AAE1B,
|
|
1
|
+
{"version":3,"file":"ButtonBase.cjs","sourceRoot":"","sources":["../../../src/components/button-base/ButtonBase.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Slot, Slottable } from '@radix-ui/react-slot';\nimport React from 'react';\n\nimport { Text, FontWeight, TextColor } from '../text';\nimport { Icon, IconName, IconSize } from '../icon';\nimport { twMerge } from '../../utils/tw-merge';\nimport { BUTTON_BASE_SIZE_CLASS_MAP } from './ButtonBase.constants';\nimport type { ButtonBaseProps } from './ButtonBase.types';\nimport { ButtonBaseSize } from './ButtonBase.types';\n\nexport const ButtonBase = React.forwardRef<HTMLButtonElement, ButtonBaseProps>(\n (\n {\n children,\n className,\n size = ButtonBaseSize.Lg,\n isFullWidth,\n asChild,\n isDisabled,\n isLoading,\n loadingText,\n loadingIconProps,\n startIconName,\n startIconProps,\n startAccessory,\n endIconName,\n endIconProps,\n endAccessory,\n textProps,\n style,\n ...props\n },\n ref,\n ) => {\n const Component = asChild ? Slot : 'button';\n const isInteractive = !(isDisabled ?? isLoading);\n\n const renderLoadingState = () => (\n <>\n <span className=\"absolute inline-flex items-center\">\n <Icon\n name={IconName.Loading}\n size={IconSize.Sm}\n className={twMerge(\n 'animate-spin mr-2 text-inherit',\n loadingIconProps?.className,\n )}\n {...loadingIconProps}\n />\n {loadingText}\n </span>\n <span className=\"invisible inline-flex items-center\">{children}</span>\n </>\n );\n\n const renderStartContent = () => {\n if (startIconName) {\n return (\n <Icon\n name={startIconName}\n size={IconSize.Sm}\n className={twMerge('mr-2 text-inherit', startIconProps?.className)}\n {...startIconProps}\n />\n );\n }\n if (startAccessory) {\n return <span className=\"mr-2\">{startAccessory}</span>;\n }\n return null;\n };\n\n const renderEndContent = () => {\n if (endIconName) {\n return (\n <Icon\n name={endIconName}\n size={IconSize.Sm}\n className={twMerge('ml-2 text-inherit', endIconProps?.className)}\n {...endIconProps}\n />\n );\n }\n if (endAccessory) {\n return <span className=\"ml-2\">{endAccessory}</span>;\n }\n return null;\n };\n\n const renderContent = () => {\n if (children && typeof children === 'string') {\n return (\n <Text\n fontWeight={FontWeight.Medium}\n color={TextColor.Inherit}\n asChild\n {...textProps}\n >\n <span>{children}</span>\n </Text>\n );\n }\n return children;\n };\n\n const mergedClassName = twMerge(\n // Base styles\n 'inline-flex items-center justify-center',\n 'rounded-full px-4',\n 'text-default font-medium',\n 'bg-muted',\n // Add relative positioning for loading state\n 'relative',\n // Size\n BUTTON_BASE_SIZE_CLASS_MAP[size],\n // Full width\n isFullWidth && 'w-full',\n // Animation classes - only applied when interactive\n isInteractive && [\n 'transition-[transform,colors,opacity]',\n 'duration-100',\n 'ease-linear',\n 'active:scale-[0.97]',\n 'active:ease-[cubic-bezier(0.3,0.8,0.3,1)]',\n ],\n // Disabled state - apply to both isDisabled and isLoading\n (isDisabled || isLoading) && 'cursor-not-allowed',\n isDisabled && 'opacity-50',\n // Custom classes\n className,\n );\n\n return (\n <Component\n ref={ref}\n className={mergedClassName}\n disabled={asChild ? undefined : (isDisabled ?? isLoading)}\n style={style}\n {...props}\n >\n {renderStartContent()}\n <Slottable>\n {isLoading ? renderLoadingState() : renderContent()}\n </Slottable>\n {renderEndContent()}\n </Component>\n );\n },\n);\n\nButtonBase.displayName = 'ButtonBase';\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ButtonBase.d.cts","sourceRoot":"","sources":["../../../src/components/button-base/ButtonBase.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,cAAc;
|
|
1
|
+
{"version":3,"file":"ButtonBase.d.cts","sourceRoot":"","sources":["../../../src/components/button-base/ButtonBase.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,cAAc;AAM1B,OAAO,KAAK,EAAE,eAAe,EAAE,+BAA2B;AAG1D,eAAO,MAAM,UAAU,wGA0ItB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ButtonBase.d.mts","sourceRoot":"","sources":["../../../src/components/button-base/ButtonBase.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,cAAc;
|
|
1
|
+
{"version":3,"file":"ButtonBase.d.mts","sourceRoot":"","sources":["../../../src/components/button-base/ButtonBase.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,cAAc;AAM1B,OAAO,KAAK,EAAE,eAAe,EAAE,+BAA2B;AAG1D,eAAO,MAAM,UAAU,wGA0ItB,CAAC"}
|
|
@@ -7,15 +7,19 @@ function $importDefault(module) {
|
|
|
7
7
|
import { Slot, Slottable } from "@radix-ui/react-slot";
|
|
8
8
|
import $React from "react";
|
|
9
9
|
const React = $importDefault($React);
|
|
10
|
-
import {
|
|
10
|
+
import { Text, FontWeight, TextColor } from "../text/index.mjs";
|
|
11
|
+
import { Icon, IconName, IconSize } from "../icon/index.mjs";
|
|
11
12
|
import { twMerge } from "../../utils/tw-merge.mjs";
|
|
12
13
|
import { BUTTON_BASE_SIZE_CLASS_MAP } from "./ButtonBase.constants.mjs";
|
|
13
14
|
import { ButtonBaseSize } from "./ButtonBase.types.mjs";
|
|
14
|
-
export const ButtonBase = React.forwardRef(({ children, className, size = ButtonBaseSize.
|
|
15
|
+
export const ButtonBase = React.forwardRef(({ children, className, size = ButtonBaseSize.Lg, isFullWidth, asChild, isDisabled, isLoading, loadingText, loadingIconProps, startIconName, startIconProps, startAccessory, endIconName, endIconProps, endAccessory, textProps, style, ...props }, ref) => {
|
|
15
16
|
const Component = asChild ? Slot : 'button';
|
|
16
|
-
const
|
|
17
|
-
|
|
18
|
-
|
|
17
|
+
const isInteractive = !(isDisabled ?? isLoading);
|
|
18
|
+
const renderLoadingState = () => (React.createElement(React.Fragment, null,
|
|
19
|
+
React.createElement("span", { className: "absolute inline-flex items-center" },
|
|
20
|
+
React.createElement(Icon, { name: IconName.Loading, size: IconSize.Sm, className: twMerge('animate-spin mr-2 text-inherit', loadingIconProps?.className), ...loadingIconProps }),
|
|
21
|
+
loadingText),
|
|
22
|
+
React.createElement("span", { className: "invisible inline-flex items-center" }, children)));
|
|
19
23
|
const renderStartContent = () => {
|
|
20
24
|
if (startIconName) {
|
|
21
25
|
return (React.createElement(Icon, { name: startIconName, size: IconSize.Sm, className: twMerge('mr-2 text-inherit', startIconProps?.className), ...startIconProps }));
|
|
@@ -36,7 +40,7 @@ export const ButtonBase = React.forwardRef(({ children, className, size = Button
|
|
|
36
40
|
};
|
|
37
41
|
const renderContent = () => {
|
|
38
42
|
if (children && typeof children === 'string') {
|
|
39
|
-
return (React.createElement(Text, { color: TextColor.Inherit, asChild: true, ...textProps },
|
|
43
|
+
return (React.createElement(Text, { fontWeight: FontWeight.Medium, color: TextColor.Inherit, asChild: true, ...textProps },
|
|
40
44
|
React.createElement("span", null, children)));
|
|
41
45
|
}
|
|
42
46
|
return children;
|
|
@@ -44,15 +48,25 @@ export const ButtonBase = React.forwardRef(({ children, className, size = Button
|
|
|
44
48
|
const mergedClassName = twMerge(
|
|
45
49
|
// Base styles
|
|
46
50
|
'inline-flex items-center justify-center', 'rounded-full px-4', 'text-default font-medium', 'bg-muted',
|
|
51
|
+
// Add relative positioning for loading state
|
|
52
|
+
'relative',
|
|
47
53
|
// Size
|
|
48
54
|
BUTTON_BASE_SIZE_CLASS_MAP[size],
|
|
49
55
|
// Full width
|
|
50
56
|
isFullWidth && 'w-full',
|
|
57
|
+
// Animation classes - only applied when interactive
|
|
58
|
+
isInteractive && [
|
|
59
|
+
'transition-[transform,colors,opacity]',
|
|
60
|
+
'duration-100',
|
|
61
|
+
'ease-linear',
|
|
62
|
+
'active:scale-[0.97]',
|
|
63
|
+
'active:ease-[cubic-bezier(0.3,0.8,0.3,1)]',
|
|
64
|
+
],
|
|
51
65
|
// Disabled state - apply to both isDisabled and isLoading
|
|
52
|
-
(isDisabled || isLoading) && '
|
|
66
|
+
(isDisabled || isLoading) && 'cursor-not-allowed', isDisabled && 'opacity-50',
|
|
53
67
|
// Custom classes
|
|
54
68
|
className);
|
|
55
|
-
return (React.createElement(Component, { ref: ref, className: mergedClassName, disabled: asChild ? undefined : isDisabled ?? isLoading, style: style, ...props },
|
|
69
|
+
return (React.createElement(Component, { ref: ref, className: mergedClassName, disabled: asChild ? undefined : (isDisabled ?? isLoading), style: style, ...props },
|
|
56
70
|
renderStartContent(),
|
|
57
71
|
React.createElement(Slottable, null, isLoading ? renderLoadingState() : renderContent()),
|
|
58
72
|
renderEndContent()));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ButtonBase.mjs","sourceRoot":"","sources":["../../../src/components/button-base/ButtonBase.tsx"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,6BAA6B;AACvD,OAAO,MAAK,cAAc;;AAE1B,OAAO,EAAE,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"ButtonBase.mjs","sourceRoot":"","sources":["../../../src/components/button-base/ButtonBase.tsx"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,6BAA6B;AACvD,OAAO,MAAK,cAAc;;AAE1B,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,0BAAgB;AACtD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,0BAAgB;AACnD,OAAO,EAAE,OAAO,EAAE,iCAA6B;AAC/C,OAAO,EAAE,0BAA0B,EAAE,mCAA+B;AAEpE,OAAO,EAAE,cAAc,EAAE,+BAA2B;AAEpD,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CACxC,CACE,EACE,QAAQ,EACR,SAAS,EACT,IAAI,GAAG,cAAc,CAAC,EAAE,EACxB,WAAW,EACX,OAAO,EACP,UAAU,EACV,SAAS,EACT,WAAW,EACX,gBAAgB,EAChB,aAAa,EACb,cAAc,EACd,cAAc,EACd,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,KAAK,EACL,GAAG,KAAK,EACT,EACD,GAAG,EACH,EAAE;IACF,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC;IAC5C,MAAM,aAAa,GAAG,CAAC,CAAC,UAAU,IAAI,SAAS,CAAC,CAAC;IAEjD,MAAM,kBAAkB,GAAG,GAAG,EAAE,CAAC,CAC/B;QACE,8BAAM,SAAS,EAAC,mCAAmC;YACjD,oBAAC,IAAI,IACH,IAAI,EAAE,QAAQ,CAAC,OAAO,EACtB,IAAI,EAAE,QAAQ,CAAC,EAAE,EACjB,SAAS,EAAE,OAAO,CAChB,gCAAgC,EAChC,gBAAgB,EAAE,SAAS,CAC5B,KACG,gBAAgB,GACpB;YACD,WAAW,CACP;QACP,8BAAM,SAAS,EAAC,oCAAoC,IAAE,QAAQ,CAAQ,CACrE,CACJ,CAAC;IAEF,MAAM,kBAAkB,GAAG,GAAG,EAAE;QAC9B,IAAI,aAAa,EAAE;YACjB,OAAO,CACL,oBAAC,IAAI,IACH,IAAI,EAAE,aAAa,EACnB,IAAI,EAAE,QAAQ,CAAC,EAAE,EACjB,SAAS,EAAE,OAAO,CAAC,mBAAmB,EAAE,cAAc,EAAE,SAAS,CAAC,KAC9D,cAAc,GAClB,CACH,CAAC;SACH;QACD,IAAI,cAAc,EAAE;YAClB,OAAO,8BAAM,SAAS,EAAC,MAAM,IAAE,cAAc,CAAQ,CAAC;SACvD;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,MAAM,gBAAgB,GAAG,GAAG,EAAE;QAC5B,IAAI,WAAW,EAAE;YACf,OAAO,CACL,oBAAC,IAAI,IACH,IAAI,EAAE,WAAW,EACjB,IAAI,EAAE,QAAQ,CAAC,EAAE,EACjB,SAAS,EAAE,OAAO,CAAC,mBAAmB,EAAE,YAAY,EAAE,SAAS,CAAC,KAC5D,YAAY,GAChB,CACH,CAAC;SACH;QACD,IAAI,YAAY,EAAE;YAChB,OAAO,8BAAM,SAAS,EAAC,MAAM,IAAE,YAAY,CAAQ,CAAC;SACrD;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,IAAI,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;YAC5C,OAAO,CACL,oBAAC,IAAI,IACH,UAAU,EAAE,UAAU,CAAC,MAAM,EAC7B,KAAK,EAAE,SAAS,CAAC,OAAO,EACxB,OAAO,WACH,SAAS;gBAEb,kCAAO,QAAQ,CAAQ,CAClB,CACR,CAAC;SACH;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC;IAEF,MAAM,eAAe,GAAG,OAAO;IAC7B,cAAc;IACd,yCAAyC,EACzC,mBAAmB,EACnB,0BAA0B,EAC1B,UAAU;IACV,6CAA6C;IAC7C,UAAU;IACV,OAAO;IACP,0BAA0B,CAAC,IAAI,CAAC;IAChC,aAAa;IACb,WAAW,IAAI,QAAQ;IACvB,oDAAoD;IACpD,aAAa,IAAI;QACf,uCAAuC;QACvC,cAAc;QACd,aAAa;QACb,qBAAqB;QACrB,2CAA2C;KAC5C;IACD,0DAA0D;IAC1D,CAAC,UAAU,IAAI,SAAS,CAAC,IAAI,oBAAoB,EACjD,UAAU,IAAI,YAAY;IAC1B,iBAAiB;IACjB,SAAS,CACV,CAAC;IAEF,OAAO,CACL,oBAAC,SAAS,IACR,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,eAAe,EAC1B,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,UAAU,IAAI,SAAS,CAAC,EACzD,KAAK,EAAE,KAAK,KACR,KAAK;QAER,kBAAkB,EAAE;QACrB,oBAAC,SAAS,QACP,SAAS,CAAC,CAAC,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC,aAAa,EAAE,CACzC;QACX,gBAAgB,EAAE,CACT,CACb,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,UAAU,CAAC,WAAW,GAAG,YAAY,CAAC","sourcesContent":["import { Slot, Slottable } from '@radix-ui/react-slot';\nimport React from 'react';\n\nimport { Text, FontWeight, TextColor } from '../text';\nimport { Icon, IconName, IconSize } from '../icon';\nimport { twMerge } from '../../utils/tw-merge';\nimport { BUTTON_BASE_SIZE_CLASS_MAP } from './ButtonBase.constants';\nimport type { ButtonBaseProps } from './ButtonBase.types';\nimport { ButtonBaseSize } from './ButtonBase.types';\n\nexport const ButtonBase = React.forwardRef<HTMLButtonElement, ButtonBaseProps>(\n (\n {\n children,\n className,\n size = ButtonBaseSize.Lg,\n isFullWidth,\n asChild,\n isDisabled,\n isLoading,\n loadingText,\n loadingIconProps,\n startIconName,\n startIconProps,\n startAccessory,\n endIconName,\n endIconProps,\n endAccessory,\n textProps,\n style,\n ...props\n },\n ref,\n ) => {\n const Component = asChild ? Slot : 'button';\n const isInteractive = !(isDisabled ?? isLoading);\n\n const renderLoadingState = () => (\n <>\n <span className=\"absolute inline-flex items-center\">\n <Icon\n name={IconName.Loading}\n size={IconSize.Sm}\n className={twMerge(\n 'animate-spin mr-2 text-inherit',\n loadingIconProps?.className,\n )}\n {...loadingIconProps}\n />\n {loadingText}\n </span>\n <span className=\"invisible inline-flex items-center\">{children}</span>\n </>\n );\n\n const renderStartContent = () => {\n if (startIconName) {\n return (\n <Icon\n name={startIconName}\n size={IconSize.Sm}\n className={twMerge('mr-2 text-inherit', startIconProps?.className)}\n {...startIconProps}\n />\n );\n }\n if (startAccessory) {\n return <span className=\"mr-2\">{startAccessory}</span>;\n }\n return null;\n };\n\n const renderEndContent = () => {\n if (endIconName) {\n return (\n <Icon\n name={endIconName}\n size={IconSize.Sm}\n className={twMerge('ml-2 text-inherit', endIconProps?.className)}\n {...endIconProps}\n />\n );\n }\n if (endAccessory) {\n return <span className=\"ml-2\">{endAccessory}</span>;\n }\n return null;\n };\n\n const renderContent = () => {\n if (children && typeof children === 'string') {\n return (\n <Text\n fontWeight={FontWeight.Medium}\n color={TextColor.Inherit}\n asChild\n {...textProps}\n >\n <span>{children}</span>\n </Text>\n );\n }\n return children;\n };\n\n const mergedClassName = twMerge(\n // Base styles\n 'inline-flex items-center justify-center',\n 'rounded-full px-4',\n 'text-default font-medium',\n 'bg-muted',\n // Add relative positioning for loading state\n 'relative',\n // Size\n BUTTON_BASE_SIZE_CLASS_MAP[size],\n // Full width\n isFullWidth && 'w-full',\n // Animation classes - only applied when interactive\n isInteractive && [\n 'transition-[transform,colors,opacity]',\n 'duration-100',\n 'ease-linear',\n 'active:scale-[0.97]',\n 'active:ease-[cubic-bezier(0.3,0.8,0.3,1)]',\n ],\n // Disabled state - apply to both isDisabled and isLoading\n (isDisabled || isLoading) && 'cursor-not-allowed',\n isDisabled && 'opacity-50',\n // Custom classes\n className,\n );\n\n return (\n <Component\n ref={ref}\n className={mergedClassName}\n disabled={asChild ? undefined : (isDisabled ?? isLoading)}\n style={style}\n {...props}\n >\n {renderStartContent()}\n <Slottable>\n {isLoading ? renderLoadingState() : renderContent()}\n </Slottable>\n {renderEndContent()}\n </Component>\n );\n },\n);\n\nButtonBase.displayName = 'ButtonBase';\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ButtonBase.types.cjs","sourceRoot":"","sources":["../../../src/components/button-base/ButtonBase.types.ts"],"names":[],"mappings":";;;AAMA,IAAY,cAaX;AAbD,WAAY,cAAc;IACxB;;OAEG;IACH,2BAAS,CAAA;IACT;;OAEG;IACH,2BAAS,CAAA;IACT;;OAEG;IACH,2BAAS,CAAA;AACX,CAAC,EAbW,cAAc,8BAAd,cAAc,QAazB","sourcesContent":["import type { ComponentProps } from 'react';\n\nimport type { MakePropsOptional } from '../../types/make-props-optional';\nimport type { IconName, IconProps } from '../icon';\nimport type { TextProps } from '../text';\n\nexport enum ButtonBaseSize {\n /**\n * Represents a small button size (32px).\n */\n Sm = 'sm',\n /**\n * Represents a medium button size (40px).\n */\n Md = 'md',\n /**\n * Represents a large button size (48px).\n */\n Lg = 'lg',\n}\n\nexport type ButtonBaseProps = ComponentProps<'button'> & {\n /**\n * Required prop for the content to be rendered within the ButtonBase\n */\n children: React.ReactNode;\n /**\n * Optional prop for additional CSS classes to be applied to the ButtonBase component.\n * These classes will be merged with the component's default classes using twMerge.\n */\n className?: string;\n /**\n * Optional prop to control the size of the ButtonBase\n * @default ButtonBaseSize.
|
|
1
|
+
{"version":3,"file":"ButtonBase.types.cjs","sourceRoot":"","sources":["../../../src/components/button-base/ButtonBase.types.ts"],"names":[],"mappings":";;;AAMA,IAAY,cAaX;AAbD,WAAY,cAAc;IACxB;;OAEG;IACH,2BAAS,CAAA;IACT;;OAEG;IACH,2BAAS,CAAA;IACT;;OAEG;IACH,2BAAS,CAAA;AACX,CAAC,EAbW,cAAc,8BAAd,cAAc,QAazB","sourcesContent":["import type { ComponentProps } from 'react';\n\nimport type { MakePropsOptional } from '../../types/make-props-optional';\nimport type { IconName, IconProps } from '../icon';\nimport type { TextProps } from '../text';\n\nexport enum ButtonBaseSize {\n /**\n * Represents a small button size (32px).\n */\n Sm = 'sm',\n /**\n * Represents a medium button size (40px).\n */\n Md = 'md',\n /**\n * Represents a large button size (48px).\n */\n Lg = 'lg',\n}\n\nexport type ButtonBaseProps = ComponentProps<'button'> & {\n /**\n * Required prop for the content to be rendered within the ButtonBase\n */\n children: React.ReactNode;\n /**\n * Optional prop for additional CSS classes to be applied to the ButtonBase component.\n * These classes will be merged with the component's default classes using twMerge.\n */\n className?: string;\n /**\n * Optional prop to control the size of the ButtonBase\n * @default ButtonBaseSize.Lg\n */\n size?: ButtonBaseSize;\n /**\n * Optional props to be passed to the Text component when children is a string\n */\n textProps?: Partial<TextProps>;\n /**\n * Optional prop that when true, makes the button take up the full width of its container\n * @default false\n */\n isFullWidth?: boolean;\n /**\n * Optional boolean that determines if the component should merge its props onto its immediate child\n * instead of rendering a button element\n * @default false\n */\n asChild?: boolean;\n /**\n * Optional prop that when true, shows a loading spinner\n * @default false\n */\n isLoading?: boolean;\n /**\n * Optional prop for text to display when button is in loading state\n */\n loadingText?: string;\n /**\n * Optional prop to specify an icon to show at the start of the button\n */\n startIconName?: IconName;\n /**\n * Optional prop to pass additional properties to the start icon\n */\n startIconProps?: MakePropsOptional<IconProps>;\n /**\n * Optional prop for a custom element to show at the start of the button\n */\n startAccessory?: React.ReactNode;\n /**\n * Optional prop to specify an icon to show at the end of the button\n */\n endIconName?: IconName;\n /**\n * Optional prop to pass additional properties to the end icon\n */\n endIconProps?: MakePropsOptional<IconProps>;\n /**\n * Optional prop for a custom element to show at the end of the button\n */\n endAccessory?: React.ReactNode;\n /**\n * Optional prop that when true, disables the button\n * @default false\n */\n isDisabled?: boolean;\n /**\n * Optional prop to pass additional properties to the loading icon\n */\n loadingIconProps?: MakePropsOptional<IconProps>;\n /**\n * Optional CSS styles to be applied to the component.\n * Should be used sparingly and only for dynamic styles that can't be achieved with className.\n */\n style?: React.CSSProperties;\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ButtonBase.types.mjs","sourceRoot":"","sources":["../../../src/components/button-base/ButtonBase.types.ts"],"names":[],"mappings":"AAMA,MAAM,CAAN,IAAY,cAaX;AAbD,WAAY,cAAc;IACxB;;OAEG;IACH,2BAAS,CAAA;IACT;;OAEG;IACH,2BAAS,CAAA;IACT;;OAEG;IACH,2BAAS,CAAA;AACX,CAAC,EAbW,cAAc,KAAd,cAAc,QAazB","sourcesContent":["import type { ComponentProps } from 'react';\n\nimport type { MakePropsOptional } from '../../types/make-props-optional';\nimport type { IconName, IconProps } from '../icon';\nimport type { TextProps } from '../text';\n\nexport enum ButtonBaseSize {\n /**\n * Represents a small button size (32px).\n */\n Sm = 'sm',\n /**\n * Represents a medium button size (40px).\n */\n Md = 'md',\n /**\n * Represents a large button size (48px).\n */\n Lg = 'lg',\n}\n\nexport type ButtonBaseProps = ComponentProps<'button'> & {\n /**\n * Required prop for the content to be rendered within the ButtonBase\n */\n children: React.ReactNode;\n /**\n * Optional prop for additional CSS classes to be applied to the ButtonBase component.\n * These classes will be merged with the component's default classes using twMerge.\n */\n className?: string;\n /**\n * Optional prop to control the size of the ButtonBase\n * @default ButtonBaseSize.
|
|
1
|
+
{"version":3,"file":"ButtonBase.types.mjs","sourceRoot":"","sources":["../../../src/components/button-base/ButtonBase.types.ts"],"names":[],"mappings":"AAMA,MAAM,CAAN,IAAY,cAaX;AAbD,WAAY,cAAc;IACxB;;OAEG;IACH,2BAAS,CAAA;IACT;;OAEG;IACH,2BAAS,CAAA;IACT;;OAEG;IACH,2BAAS,CAAA;AACX,CAAC,EAbW,cAAc,KAAd,cAAc,QAazB","sourcesContent":["import type { ComponentProps } from 'react';\n\nimport type { MakePropsOptional } from '../../types/make-props-optional';\nimport type { IconName, IconProps } from '../icon';\nimport type { TextProps } from '../text';\n\nexport enum ButtonBaseSize {\n /**\n * Represents a small button size (32px).\n */\n Sm = 'sm',\n /**\n * Represents a medium button size (40px).\n */\n Md = 'md',\n /**\n * Represents a large button size (48px).\n */\n Lg = 'lg',\n}\n\nexport type ButtonBaseProps = ComponentProps<'button'> & {\n /**\n * Required prop for the content to be rendered within the ButtonBase\n */\n children: React.ReactNode;\n /**\n * Optional prop for additional CSS classes to be applied to the ButtonBase component.\n * These classes will be merged with the component's default classes using twMerge.\n */\n className?: string;\n /**\n * Optional prop to control the size of the ButtonBase\n * @default ButtonBaseSize.Lg\n */\n size?: ButtonBaseSize;\n /**\n * Optional props to be passed to the Text component when children is a string\n */\n textProps?: Partial<TextProps>;\n /**\n * Optional prop that when true, makes the button take up the full width of its container\n * @default false\n */\n isFullWidth?: boolean;\n /**\n * Optional boolean that determines if the component should merge its props onto its immediate child\n * instead of rendering a button element\n * @default false\n */\n asChild?: boolean;\n /**\n * Optional prop that when true, shows a loading spinner\n * @default false\n */\n isLoading?: boolean;\n /**\n * Optional prop for text to display when button is in loading state\n */\n loadingText?: string;\n /**\n * Optional prop to specify an icon to show at the start of the button\n */\n startIconName?: IconName;\n /**\n * Optional prop to pass additional properties to the start icon\n */\n startIconProps?: MakePropsOptional<IconProps>;\n /**\n * Optional prop for a custom element to show at the start of the button\n */\n startAccessory?: React.ReactNode;\n /**\n * Optional prop to specify an icon to show at the end of the button\n */\n endIconName?: IconName;\n /**\n * Optional prop to pass additional properties to the end icon\n */\n endIconProps?: MakePropsOptional<IconProps>;\n /**\n * Optional prop for a custom element to show at the end of the button\n */\n endAccessory?: React.ReactNode;\n /**\n * Optional prop that when true, disables the button\n * @default false\n */\n isDisabled?: boolean;\n /**\n * Optional prop to pass additional properties to the loading icon\n */\n loadingIconProps?: MakePropsOptional<IconProps>;\n /**\n * Optional CSS styles to be applied to the component.\n * Should be used sparingly and only for dynamic styles that can't be achieved with className.\n */\n style?: React.CSSProperties;\n};\n"]}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.ButtonIcon = void 0;
|
|
7
|
+
const react_1 = __importDefault(require("react"));
|
|
8
|
+
const tw_merge_1 = require("../../utils/tw-merge.cjs");
|
|
9
|
+
const button_base_1 = require("../button-base/index.cjs");
|
|
10
|
+
const icon_1 = require("../icon/index.cjs");
|
|
11
|
+
const ButtonIcon_constants_1 = require("./ButtonIcon.constants.cjs");
|
|
12
|
+
const ButtonIcon_types_1 = require("./ButtonIcon.types.cjs");
|
|
13
|
+
exports.ButtonIcon = react_1.default.forwardRef(({ className, iconName, iconProps, ariaLabel, isDisabled = false, isInverse = false, isFloating = false, size = ButtonIcon_types_1.ButtonIconSize.Md, style, ...props }, ref) => {
|
|
14
|
+
const isInteractive = !isDisabled;
|
|
15
|
+
const mergedClassName = (0, tw_merge_1.twMerge)(
|
|
16
|
+
// Base styles
|
|
17
|
+
'p-0',
|
|
18
|
+
// Size styles
|
|
19
|
+
ButtonIcon_constants_1.BUTTON_ICON_SIZE_CLASS_MAP[size],
|
|
20
|
+
// Floating styles
|
|
21
|
+
isFloating && [
|
|
22
|
+
'rounded-full',
|
|
23
|
+
!isInverse && 'bg-icon-default text-background-default',
|
|
24
|
+
isInverse && 'bg-icon-default text-background-default',
|
|
25
|
+
],
|
|
26
|
+
// Non-floating styles
|
|
27
|
+
!isFloating && [
|
|
28
|
+
'rounded bg-transparent ',
|
|
29
|
+
// Only apply hover/active styles when interactive
|
|
30
|
+
isInteractive && 'hover:bg-hover active:bg-pressed',
|
|
31
|
+
!isInverse && 'text-icon-default',
|
|
32
|
+
isInverse && 'text-background-default',
|
|
33
|
+
], className);
|
|
34
|
+
return (react_1.default.createElement(button_base_1.ButtonBase, { ref: ref, className: mergedClassName, isDisabled: isDisabled, "aria-label": ariaLabel, ...props },
|
|
35
|
+
react_1.default.createElement(icon_1.Icon, { name: iconName, size: ButtonIcon_constants_1.BUTTON_ICON_SIZE_TO_ICON_SIZE_CLASS_MAP[size], className: (0, tw_merge_1.twMerge)('text-inherit', iconProps?.className), ...iconProps })));
|
|
36
|
+
});
|
|
37
|
+
exports.ButtonIcon.displayName = 'ButtonIcon';
|
|
38
|
+
//# sourceMappingURL=ButtonIcon.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ButtonIcon.cjs","sourceRoot":"","sources":["../../../src/components/button-icon/ButtonIcon.tsx"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAE1B,uDAA+C;AAC/C,0DAA4C;AAC5C,4CAA+B;AAC/B,qEAGgC;AAEhC,6DAAoD;AAEvC,QAAA,UAAU,GAAG,eAAK,CAAC,UAAU,CACxC,CACE,EACE,SAAS,EACT,QAAQ,EACR,SAAS,EACT,SAAS,EACT,UAAU,GAAG,KAAK,EAClB,SAAS,GAAG,KAAK,EACjB,UAAU,GAAG,KAAK,EAClB,IAAI,GAAG,iCAAc,CAAC,EAAE,EACxB,KAAK,EACL,GAAG,KAAK,EACT,EACD,GAAG,EACH,EAAE;IACF,MAAM,aAAa,GAAG,CAAC,UAAU,CAAC;IAElC,MAAM,eAAe,GAAG,IAAA,kBAAO;IAC7B,cAAc;IACd,KAAK;IACL,cAAc;IACd,iDAA0B,CAAC,IAAI,CAAC;IAChC,kBAAkB;IAClB,UAAU,IAAI;QACZ,cAAc;QACd,CAAC,SAAS,IAAI,yCAAyC;QACvD,SAAS,IAAI,yCAAyC;KACvD;IACD,sBAAsB;IACtB,CAAC,UAAU,IAAI;QACb,yBAAyB;QACzB,kDAAkD;QAClD,aAAa,IAAI,kCAAkC;QACnD,CAAC,SAAS,IAAI,mBAAmB;QACjC,SAAS,IAAI,yBAAyB;KACvC,EACD,SAAS,CACV,CAAC;IAEF,OAAO,CACL,8BAAC,wBAAU,IACT,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,eAAe,EAC1B,UAAU,EAAE,UAAU,gBACV,SAAS,KACjB,KAAK;QAET,8BAAC,WAAI,IACH,IAAI,EAAE,QAAQ,EACd,IAAI,EAAE,8DAAuC,CAAC,IAAI,CAAC,EACnD,SAAS,EAAE,IAAA,kBAAO,EAAC,cAAc,EAAE,SAAS,EAAE,SAAS,CAAC,KACpD,SAAS,GACb,CACS,CACd,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,kBAAU,CAAC,WAAW,GAAG,YAAY,CAAC","sourcesContent":["import React from 'react';\n\nimport { twMerge } from '../../utils/tw-merge';\nimport { ButtonBase } from '../button-base';\nimport { Icon } from '../icon';\nimport {\n BUTTON_ICON_SIZE_CLASS_MAP,\n BUTTON_ICON_SIZE_TO_ICON_SIZE_CLASS_MAP,\n} from './ButtonIcon.constants';\nimport type { ButtonIconProps } from './ButtonIcon.types';\nimport { ButtonIconSize } from './ButtonIcon.types';\n\nexport const ButtonIcon = React.forwardRef<HTMLButtonElement, ButtonIconProps>(\n (\n {\n className,\n iconName,\n iconProps,\n ariaLabel,\n isDisabled = false,\n isInverse = false,\n isFloating = false,\n size = ButtonIconSize.Md,\n style,\n ...props\n },\n ref,\n ) => {\n const isInteractive = !isDisabled;\n\n const mergedClassName = twMerge(\n // Base styles\n 'p-0',\n // Size styles\n BUTTON_ICON_SIZE_CLASS_MAP[size],\n // Floating styles\n isFloating && [\n 'rounded-full',\n !isInverse && 'bg-icon-default text-background-default',\n isInverse && 'bg-icon-default text-background-default',\n ],\n // Non-floating styles\n !isFloating && [\n 'rounded bg-transparent ',\n // Only apply hover/active styles when interactive\n isInteractive && 'hover:bg-hover active:bg-pressed',\n !isInverse && 'text-icon-default',\n isInverse && 'text-background-default',\n ],\n className,\n );\n\n return (\n <ButtonBase\n ref={ref}\n className={mergedClassName}\n isDisabled={isDisabled}\n aria-label={ariaLabel}\n {...props}\n >\n <Icon\n name={iconName}\n size={BUTTON_ICON_SIZE_TO_ICON_SIZE_CLASS_MAP[size]}\n className={twMerge('text-inherit', iconProps?.className)}\n {...iconProps}\n />\n </ButtonBase>\n );\n },\n);\n\nButtonIcon.displayName = 'ButtonIcon';\n"]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BUTTON_ICON_SIZE_TO_ICON_SIZE_CLASS_MAP = exports.BUTTON_ICON_SIZE_CLASS_MAP = void 0;
|
|
4
|
+
const icon_1 = require("../icon/index.cjs");
|
|
5
|
+
const ButtonIcon_types_1 = require("./ButtonIcon.types.cjs");
|
|
6
|
+
exports.BUTTON_ICON_SIZE_CLASS_MAP = {
|
|
7
|
+
[ButtonIcon_types_1.ButtonIconSize.Sm]: 'h-6 w-6',
|
|
8
|
+
[ButtonIcon_types_1.ButtonIconSize.Md]: 'h-8 w-8',
|
|
9
|
+
[ButtonIcon_types_1.ButtonIconSize.Lg]: 'h-10 w-10',
|
|
10
|
+
};
|
|
11
|
+
exports.BUTTON_ICON_SIZE_TO_ICON_SIZE_CLASS_MAP = {
|
|
12
|
+
[ButtonIcon_types_1.ButtonIconSize.Sm]: icon_1.IconSize.Sm,
|
|
13
|
+
[ButtonIcon_types_1.ButtonIconSize.Md]: icon_1.IconSize.Md,
|
|
14
|
+
[ButtonIcon_types_1.ButtonIconSize.Lg]: icon_1.IconSize.Lg,
|
|
15
|
+
};
|
|
16
|
+
//# sourceMappingURL=ButtonIcon.constants.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ButtonIcon.constants.cjs","sourceRoot":"","sources":["../../../src/components/button-icon/ButtonIcon.constants.ts"],"names":[],"mappings":";;;AAAA,4CAAmC;AACnC,6DAAoD;AAEvC,QAAA,0BAA0B,GAAG;IACxC,CAAC,iCAAc,CAAC,EAAE,CAAC,EAAE,SAAS;IAC9B,CAAC,iCAAc,CAAC,EAAE,CAAC,EAAE,SAAS;IAC9B,CAAC,iCAAc,CAAC,EAAE,CAAC,EAAE,WAAW;CACxB,CAAC;AAEE,QAAA,uCAAuC,GAAG;IACrD,CAAC,iCAAc,CAAC,EAAE,CAAC,EAAE,eAAQ,CAAC,EAAE;IAChC,CAAC,iCAAc,CAAC,EAAE,CAAC,EAAE,eAAQ,CAAC,EAAE;IAChC,CAAC,iCAAc,CAAC,EAAE,CAAC,EAAE,eAAQ,CAAC,EAAE;CACxB,CAAC","sourcesContent":["import { IconSize } from '../icon';\nimport { ButtonIconSize } from './ButtonIcon.types';\n\nexport const BUTTON_ICON_SIZE_CLASS_MAP = {\n [ButtonIconSize.Sm]: 'h-6 w-6',\n [ButtonIconSize.Md]: 'h-8 w-8',\n [ButtonIconSize.Lg]: 'h-10 w-10',\n} as const;\n\nexport const BUTTON_ICON_SIZE_TO_ICON_SIZE_CLASS_MAP = {\n [ButtonIconSize.Sm]: IconSize.Sm,\n [ButtonIconSize.Md]: IconSize.Md,\n [ButtonIconSize.Lg]: IconSize.Lg,\n} as const;\n"]}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { IconSize } from "../icon/index.cjs";
|
|
2
|
+
export declare const BUTTON_ICON_SIZE_CLASS_MAP: {
|
|
3
|
+
readonly sm: "h-6 w-6";
|
|
4
|
+
readonly md: "h-8 w-8";
|
|
5
|
+
readonly lg: "h-10 w-10";
|
|
6
|
+
};
|
|
7
|
+
export declare const BUTTON_ICON_SIZE_TO_ICON_SIZE_CLASS_MAP: {
|
|
8
|
+
readonly sm: IconSize.Sm;
|
|
9
|
+
readonly md: IconSize.Md;
|
|
10
|
+
readonly lg: IconSize.Lg;
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=ButtonIcon.constants.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ButtonIcon.constants.d.cts","sourceRoot":"","sources":["../../../src/components/button-icon/ButtonIcon.constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,0BAAgB;AAGnC,eAAO,MAAM,0BAA0B;;;;CAI7B,CAAC;AAEX,eAAO,MAAM,uCAAuC;;;;CAI1C,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { IconSize } from "../icon/index.mjs";
|
|
2
|
+
export declare const BUTTON_ICON_SIZE_CLASS_MAP: {
|
|
3
|
+
readonly sm: "h-6 w-6";
|
|
4
|
+
readonly md: "h-8 w-8";
|
|
5
|
+
readonly lg: "h-10 w-10";
|
|
6
|
+
};
|
|
7
|
+
export declare const BUTTON_ICON_SIZE_TO_ICON_SIZE_CLASS_MAP: {
|
|
8
|
+
readonly sm: IconSize.Sm;
|
|
9
|
+
readonly md: IconSize.Md;
|
|
10
|
+
readonly lg: IconSize.Lg;
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=ButtonIcon.constants.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ButtonIcon.constants.d.mts","sourceRoot":"","sources":["../../../src/components/button-icon/ButtonIcon.constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,0BAAgB;AAGnC,eAAO,MAAM,0BAA0B;;;;CAI7B,CAAC;AAEX,eAAO,MAAM,uCAAuC;;;;CAI1C,CAAC"}
|