@metamask/design-system-react-native 0.34.0 → 0.36.0
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/CHANGELOG.md +37 -1
- package/dist/components/ActionListItem/ActionListItem.cjs +1 -1
- package/dist/components/ActionListItem/ActionListItem.cjs.map +1 -1
- package/dist/components/ActionListItem/ActionListItem.mjs +1 -1
- package/dist/components/ActionListItem/ActionListItem.mjs.map +1 -1
- package/dist/components/BannerBase/BannerBase.cjs +8 -6
- package/dist/components/BannerBase/BannerBase.cjs.map +1 -1
- package/dist/components/BannerBase/BannerBase.d.cts.map +1 -1
- package/dist/components/BannerBase/BannerBase.d.mts.map +1 -1
- package/dist/components/BannerBase/BannerBase.mjs +9 -7
- package/dist/components/BannerBase/BannerBase.mjs.map +1 -1
- package/dist/components/BannerBase/index.cjs +3 -1
- package/dist/components/BannerBase/index.cjs.map +1 -1
- package/dist/components/BannerBase/index.d.cts +1 -0
- package/dist/components/BannerBase/index.d.cts.map +1 -1
- package/dist/components/BannerBase/index.d.mts +1 -0
- package/dist/components/BannerBase/index.d.mts.map +1 -1
- package/dist/components/BannerBase/index.mjs +1 -0
- package/dist/components/BannerBase/index.mjs.map +1 -1
- package/dist/components/ButtonBase/ButtonBase.cjs +1 -1
- package/dist/components/ButtonBase/ButtonBase.cjs.map +1 -1
- package/dist/components/ButtonBase/ButtonBase.d.cts.map +1 -1
- package/dist/components/ButtonBase/ButtonBase.d.mts.map +1 -1
- package/dist/components/ButtonBase/ButtonBase.mjs +1 -1
- package/dist/components/ButtonBase/ButtonBase.mjs.map +1 -1
- package/dist/components/Content/Content.cjs +27 -13
- package/dist/components/Content/Content.cjs.map +1 -1
- package/dist/components/Content/Content.d.cts.map +1 -1
- package/dist/components/Content/Content.d.mts.map +1 -1
- package/dist/components/Content/Content.mjs +28 -14
- package/dist/components/Content/Content.mjs.map +1 -1
- package/dist/components/Content/index.cjs +3 -3
- package/dist/components/Content/index.cjs.map +1 -1
- package/dist/components/Content/index.d.cts +1 -1
- package/dist/components/Content/index.d.cts.map +1 -1
- package/dist/components/Content/index.d.mts +1 -1
- package/dist/components/Content/index.d.mts.map +1 -1
- package/dist/components/Content/index.mjs +1 -1
- package/dist/components/Content/index.mjs.map +1 -1
- package/dist/components/FilterButton/FilterButton.cjs +24 -36
- package/dist/components/FilterButton/FilterButton.cjs.map +1 -1
- package/dist/components/FilterButton/FilterButton.d.cts.map +1 -1
- package/dist/components/FilterButton/FilterButton.d.mts.map +1 -1
- package/dist/components/FilterButton/FilterButton.mjs +25 -37
- package/dist/components/FilterButton/FilterButton.mjs.map +1 -1
- package/dist/components/ListItem/ListItem.cjs +19 -8
- package/dist/components/ListItem/ListItem.cjs.map +1 -1
- package/dist/components/ListItem/ListItem.d.cts.map +1 -1
- package/dist/components/ListItem/ListItem.d.mts.map +1 -1
- package/dist/components/ListItem/ListItem.mjs +20 -9
- package/dist/components/ListItem/ListItem.mjs.map +1 -1
- package/dist/components/ListItem/index.cjs +3 -3
- package/dist/components/ListItem/index.cjs.map +1 -1
- package/dist/components/ListItem/index.d.cts +1 -1
- package/dist/components/ListItem/index.d.cts.map +1 -1
- package/dist/components/ListItem/index.d.mts +1 -1
- package/dist/components/ListItem/index.d.mts.map +1 -1
- package/dist/components/ListItem/index.mjs +1 -1
- package/dist/components/ListItem/index.mjs.map +1 -1
- package/dist/components/Slider/Slider.cjs +152 -0
- package/dist/components/Slider/Slider.cjs.map +1 -0
- package/dist/components/Slider/Slider.constants.cjs +41 -0
- package/dist/components/Slider/Slider.constants.cjs.map +1 -0
- package/dist/components/Slider/Slider.constants.d.cts +33 -0
- package/dist/components/Slider/Slider.constants.d.cts.map +1 -0
- package/dist/components/Slider/Slider.constants.d.mts +33 -0
- package/dist/components/Slider/Slider.constants.d.mts.map +1 -0
- package/dist/components/Slider/Slider.constants.mjs +38 -0
- package/dist/components/Slider/Slider.constants.mjs.map +1 -0
- package/dist/components/Slider/Slider.d.cts +7 -0
- package/dist/components/Slider/Slider.d.cts.map +1 -0
- package/dist/components/Slider/Slider.d.mts +7 -0
- package/dist/components/Slider/Slider.d.mts.map +1 -0
- package/dist/components/Slider/Slider.mjs +129 -0
- package/dist/components/Slider/Slider.mjs.map +1 -0
- package/dist/components/Slider/Slider.types.cjs +3 -0
- package/dist/components/Slider/Slider.types.cjs.map +1 -0
- package/dist/components/Slider/Slider.types.d.cts +133 -0
- package/dist/components/Slider/Slider.types.d.cts.map +1 -0
- package/dist/components/Slider/Slider.types.d.mts +133 -0
- package/dist/components/Slider/Slider.types.d.mts.map +1 -0
- package/dist/components/Slider/Slider.types.mjs +2 -0
- package/dist/components/Slider/Slider.types.mjs.map +1 -0
- package/dist/components/Slider/Slider.utilities.cjs +287 -0
- package/dist/components/Slider/Slider.utilities.cjs.map +1 -0
- package/dist/components/Slider/Slider.utilities.d.cts +157 -0
- package/dist/components/Slider/Slider.utilities.d.cts.map +1 -0
- package/dist/components/Slider/Slider.utilities.d.mts +157 -0
- package/dist/components/Slider/Slider.utilities.d.mts.map +1 -0
- package/dist/components/Slider/Slider.utilities.mjs +266 -0
- package/dist/components/Slider/Slider.utilities.mjs.map +1 -0
- package/dist/components/Slider/index.cjs +10 -0
- package/dist/components/Slider/index.cjs.map +1 -0
- package/dist/components/Slider/index.d.cts +6 -0
- package/dist/components/Slider/index.d.cts.map +1 -0
- package/dist/components/Slider/index.d.mts +6 -0
- package/dist/components/Slider/index.d.mts.map +1 -0
- package/dist/components/Slider/index.mjs +4 -0
- package/dist/components/Slider/index.mjs.map +1 -0
- package/dist/components/Slider/useSliderGesture.cjs +252 -0
- package/dist/components/Slider/useSliderGesture.cjs.map +1 -0
- package/dist/components/Slider/useSliderGesture.d.cts +17 -0
- package/dist/components/Slider/useSliderGesture.d.cts.map +1 -0
- package/dist/components/Slider/useSliderGesture.d.mts +17 -0
- package/dist/components/Slider/useSliderGesture.d.mts.map +1 -0
- package/dist/components/Slider/useSliderGesture.mjs +248 -0
- package/dist/components/Slider/useSliderGesture.mjs.map +1 -0
- package/dist/components/index.cjs +10 -5
- package/dist/components/index.cjs.map +1 -1
- package/dist/components/index.d.cts +5 -3
- package/dist/components/index.d.cts.map +1 -1
- package/dist/components/index.d.mts +5 -3
- package/dist/components/index.d.mts.map +1 -1
- package/dist/components/index.mjs +4 -3
- package/dist/components/index.mjs.map +1 -1
- package/package.json +4 -4
- package/dist/components/Content/Content.constants.cjs +0 -9
- package/dist/components/Content/Content.constants.cjs.map +0 -1
- package/dist/components/Content/Content.constants.d.cts +0 -3
- package/dist/components/Content/Content.constants.d.cts.map +0 -1
- package/dist/components/Content/Content.constants.d.mts +0 -3
- package/dist/components/Content/Content.constants.d.mts.map +0 -1
- package/dist/components/Content/Content.constants.mjs +0 -6
- package/dist/components/Content/Content.constants.mjs.map +0 -1
|
@@ -10,20 +10,33 @@ const Box_1 = require("../Box/index.cjs");
|
|
|
10
10
|
const BoxColumn_1 = require("../BoxColumn/index.cjs");
|
|
11
11
|
const BoxRow_1 = require("../BoxRow/index.cjs");
|
|
12
12
|
const TextOrChildren_1 = require("../temp-components/TextOrChildren/index.cjs");
|
|
13
|
-
const
|
|
14
|
-
const
|
|
15
|
-
|
|
13
|
+
const Content = ({ variant = design_system_shared_1.ContentVariant.TwoLines, avatar, twClassName, title, titleProps, titleStartAccessory, titleEndAccessory, description, descriptionProps, descriptionStartAccessory, descriptionEndAccessory, value, valueProps, valueStartAccessory, valueEndAccessory, subvalue, subvalueProps, subvalueStartAccessory, subvalueEndAccessory, ...props }) => {
|
|
14
|
+
const isOneLine = variant === design_system_shared_1.ContentVariant.OneLine;
|
|
15
|
+
const isMultiLine = variant === design_system_shared_1.ContentVariant.MultiLine;
|
|
16
|
+
const showDescription = !isOneLine && description;
|
|
17
|
+
const showSubvalue = !isOneLine && subvalue;
|
|
18
|
+
const alignItems = isMultiLine ? design_system_shared_1.BoxAlignItems.Start : design_system_shared_1.BoxAlignItems.Center;
|
|
19
|
+
if (__DEV__) {
|
|
20
|
+
if (isOneLine && description) {
|
|
21
|
+
console.warn('Content: `description` is ignored when `variant` is `ContentVariant.OneLine`.');
|
|
22
|
+
}
|
|
23
|
+
if (isOneLine && subvalue) {
|
|
24
|
+
console.warn('Content: `subvalue` is ignored when `variant` is `ContentVariant.OneLine`.');
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
return (<Box_1.Box flexDirection={design_system_shared_1.BoxFlexDirection.Row} alignItems={alignItems} gap={4} twClassName={twClassName} {...props}>
|
|
16
28
|
{avatar}
|
|
17
|
-
{
|
|
18
|
-
|
|
19
|
-
|
|
29
|
+
<BoxColumn_1.BoxColumn twClassName="flex-1 min-w-0" bottomAccessory={showDescription ? (<BoxRow_1.BoxRow twClassName="w-full" alignItems={alignItems} startAccessory={descriptionStartAccessory} endAccessory={descriptionEndAccessory} gap={1}>
|
|
30
|
+
<BoxColumn_1.BoxColumn twClassName="flex-1 min-w-0">
|
|
31
|
+
<TextOrChildren_1.TextOrChildren textProps={{
|
|
20
32
|
variant: design_system_shared_1.TextVariant.BodySm,
|
|
21
33
|
fontWeight: design_system_shared_1.FontWeight.Medium,
|
|
22
34
|
color: design_system_shared_1.TextColor.TextAlternative,
|
|
23
35
|
...descriptionProps,
|
|
24
36
|
}}>
|
|
25
|
-
|
|
26
|
-
|
|
37
|
+
{description}
|
|
38
|
+
</TextOrChildren_1.TextOrChildren>
|
|
39
|
+
</BoxColumn_1.BoxColumn>
|
|
27
40
|
</BoxRow_1.BoxRow>) : null}>
|
|
28
41
|
{title ? (<BoxRow_1.BoxRow twClassName="w-full" startAccessory={titleStartAccessory} endAccessory={titleEndAccessory} gap={1}>
|
|
29
42
|
<TextOrChildren_1.TextOrChildren textProps={{
|
|
@@ -36,16 +49,17 @@ const Content = ({ verticalAlignment = design_system_shared_1.ContentVerticalAli
|
|
|
36
49
|
</TextOrChildren_1.TextOrChildren>
|
|
37
50
|
</BoxRow_1.BoxRow>) : null}
|
|
38
51
|
</BoxColumn_1.BoxColumn>
|
|
39
|
-
{
|
|
40
|
-
|
|
41
|
-
|
|
52
|
+
{value || showSubvalue ? (<BoxColumn_1.BoxColumn alignItems={design_system_shared_1.BoxAlignItems.End} twClassName="min-w-0" bottomAccessory={showSubvalue ? (<BoxRow_1.BoxRow alignItems={alignItems} startAccessory={subvalueStartAccessory} endAccessory={subvalueEndAccessory} gap={1}>
|
|
53
|
+
<BoxColumn_1.BoxColumn twClassName="min-w-0">
|
|
54
|
+
<TextOrChildren_1.TextOrChildren textProps={{
|
|
42
55
|
variant: design_system_shared_1.TextVariant.BodySm,
|
|
43
56
|
fontWeight: design_system_shared_1.FontWeight.Medium,
|
|
44
57
|
color: design_system_shared_1.TextColor.TextAlternative,
|
|
45
58
|
...subvalueProps,
|
|
46
59
|
}}>
|
|
47
|
-
|
|
48
|
-
|
|
60
|
+
{subvalue}
|
|
61
|
+
</TextOrChildren_1.TextOrChildren>
|
|
62
|
+
</BoxColumn_1.BoxColumn>
|
|
49
63
|
</BoxRow_1.BoxRow>) : null}>
|
|
50
64
|
{value ? (<BoxRow_1.BoxRow startAccessory={valueStartAccessory} endAccessory={valueEndAccessory} gap={1}>
|
|
51
65
|
<TextOrChildren_1.TextOrChildren textProps={{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Content.cjs","sourceRoot":"","sources":["../../../src/components/Content/Content.tsx"],"names":[],"mappings":";;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"Content.cjs","sourceRoot":"","sources":["../../../src/components/Content/Content.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n BoxAlignItems,\n BoxFlexDirection,\n ContentVariant,\n FontWeight,\n TextColor,\n TextVariant,\n} from '@metamask/design-system-shared';\nimport React from 'react';\n\nimport { Box } from '../Box';\nimport { BoxColumn } from '../BoxColumn';\nimport { BoxRow } from '../BoxRow';\nimport { TextOrChildren } from '../temp-components/TextOrChildren';\n\nimport type { ContentProps } from './Content.types';\n\nexport const Content: React.FC<ContentProps> = ({\n variant = ContentVariant.TwoLines,\n avatar,\n twClassName,\n title,\n titleProps,\n titleStartAccessory,\n titleEndAccessory,\n description,\n descriptionProps,\n descriptionStartAccessory,\n descriptionEndAccessory,\n value,\n valueProps,\n valueStartAccessory,\n valueEndAccessory,\n subvalue,\n subvalueProps,\n subvalueStartAccessory,\n subvalueEndAccessory,\n ...props\n}) => {\n const isOneLine = variant === ContentVariant.OneLine;\n const isMultiLine = variant === ContentVariant.MultiLine;\n const showDescription = !isOneLine && description;\n const showSubvalue = !isOneLine && subvalue;\n const alignItems = isMultiLine ? BoxAlignItems.Start : BoxAlignItems.Center;\n\n if (__DEV__) {\n if (isOneLine && description) {\n console.warn(\n 'Content: `description` is ignored when `variant` is `ContentVariant.OneLine`.',\n );\n }\n if (isOneLine && subvalue) {\n console.warn(\n 'Content: `subvalue` is ignored when `variant` is `ContentVariant.OneLine`.',\n );\n }\n }\n\n return (\n <Box\n flexDirection={BoxFlexDirection.Row}\n alignItems={alignItems}\n gap={4}\n twClassName={twClassName}\n {...props}\n >\n {avatar}\n <BoxColumn\n twClassName=\"flex-1 min-w-0\"\n bottomAccessory={\n showDescription ? (\n <BoxRow\n twClassName=\"w-full\"\n alignItems={alignItems}\n startAccessory={descriptionStartAccessory}\n endAccessory={descriptionEndAccessory}\n gap={1}\n >\n <BoxColumn twClassName=\"flex-1 min-w-0\">\n <TextOrChildren\n textProps={{\n variant: TextVariant.BodySm,\n fontWeight: FontWeight.Medium,\n color: TextColor.TextAlternative,\n ...descriptionProps,\n }}\n >\n {description}\n </TextOrChildren>\n </BoxColumn>\n </BoxRow>\n ) : null\n }\n >\n {title ? (\n <BoxRow\n twClassName=\"w-full\"\n startAccessory={titleStartAccessory}\n endAccessory={titleEndAccessory}\n gap={1}\n >\n <TextOrChildren\n textProps={{\n variant: TextVariant.BodyMd,\n fontWeight: FontWeight.Medium,\n color: TextColor.TextDefault,\n ...titleProps,\n }}\n >\n {title}\n </TextOrChildren>\n </BoxRow>\n ) : null}\n </BoxColumn>\n {value || showSubvalue ? (\n <BoxColumn\n alignItems={BoxAlignItems.End}\n twClassName=\"min-w-0\"\n bottomAccessory={\n showSubvalue ? (\n <BoxRow\n alignItems={alignItems}\n startAccessory={subvalueStartAccessory}\n endAccessory={subvalueEndAccessory}\n gap={1}\n >\n <BoxColumn twClassName=\"min-w-0\">\n <TextOrChildren\n textProps={{\n variant: TextVariant.BodySm,\n fontWeight: FontWeight.Medium,\n color: TextColor.TextAlternative,\n ...subvalueProps,\n }}\n >\n {subvalue}\n </TextOrChildren>\n </BoxColumn>\n </BoxRow>\n ) : null\n }\n >\n {value ? (\n <BoxRow\n startAccessory={valueStartAccessory}\n endAccessory={valueEndAccessory}\n gap={1}\n >\n <TextOrChildren\n textProps={{\n variant: TextVariant.BodyMd,\n fontWeight: FontWeight.Medium,\n color: TextColor.TextDefault,\n ...valueProps,\n }}\n >\n {value}\n </TextOrChildren>\n </BoxRow>\n ) : null}\n </BoxColumn>\n ) : null}\n </Box>\n );\n};\n\nContent.displayName = 'Content';\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Content.d.cts","sourceRoot":"","sources":["../../../src/components/Content/Content.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Content.d.cts","sourceRoot":"","sources":["../../../src/components/Content/Content.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAK,cAAc;AAO1B,OAAO,KAAK,EAAE,YAAY,EAAE,4BAAwB;AAEpD,eAAO,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CAmJ1C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Content.d.mts","sourceRoot":"","sources":["../../../src/components/Content/Content.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Content.d.mts","sourceRoot":"","sources":["../../../src/components/Content/Content.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAK,cAAc;AAO1B,OAAO,KAAK,EAAE,YAAY,EAAE,4BAAwB;AAEpD,eAAO,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CAmJ1C,CAAC"}
|
|
@@ -4,27 +4,40 @@ function $importDefault(module) {
|
|
|
4
4
|
}
|
|
5
5
|
return module;
|
|
6
6
|
}
|
|
7
|
-
import { BoxAlignItems, BoxFlexDirection,
|
|
7
|
+
import { BoxAlignItems, BoxFlexDirection, ContentVariant, FontWeight, TextColor, TextVariant } from "@metamask/design-system-shared";
|
|
8
8
|
import $React from "react";
|
|
9
9
|
const React = $importDefault($React);
|
|
10
10
|
import { Box } from "../Box/index.mjs";
|
|
11
11
|
import { BoxColumn } from "../BoxColumn/index.mjs";
|
|
12
12
|
import { BoxRow } from "../BoxRow/index.mjs";
|
|
13
13
|
import { TextOrChildren } from "../temp-components/TextOrChildren/index.mjs";
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
14
|
+
export const Content = ({ variant = ContentVariant.TwoLines, avatar, twClassName, title, titleProps, titleStartAccessory, titleEndAccessory, description, descriptionProps, descriptionStartAccessory, descriptionEndAccessory, value, valueProps, valueStartAccessory, valueEndAccessory, subvalue, subvalueProps, subvalueStartAccessory, subvalueEndAccessory, ...props }) => {
|
|
15
|
+
const isOneLine = variant === ContentVariant.OneLine;
|
|
16
|
+
const isMultiLine = variant === ContentVariant.MultiLine;
|
|
17
|
+
const showDescription = !isOneLine && description;
|
|
18
|
+
const showSubvalue = !isOneLine && subvalue;
|
|
19
|
+
const alignItems = isMultiLine ? BoxAlignItems.Start : BoxAlignItems.Center;
|
|
20
|
+
if (__DEV__) {
|
|
21
|
+
if (isOneLine && description) {
|
|
22
|
+
console.warn('Content: `description` is ignored when `variant` is `ContentVariant.OneLine`.');
|
|
23
|
+
}
|
|
24
|
+
if (isOneLine && subvalue) {
|
|
25
|
+
console.warn('Content: `subvalue` is ignored when `variant` is `ContentVariant.OneLine`.');
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
return (<Box flexDirection={BoxFlexDirection.Row} alignItems={alignItems} gap={4} twClassName={twClassName} {...props}>
|
|
17
29
|
{avatar}
|
|
18
|
-
{
|
|
19
|
-
|
|
20
|
-
|
|
30
|
+
<BoxColumn twClassName="flex-1 min-w-0" bottomAccessory={showDescription ? (<BoxRow twClassName="w-full" alignItems={alignItems} startAccessory={descriptionStartAccessory} endAccessory={descriptionEndAccessory} gap={1}>
|
|
31
|
+
<BoxColumn twClassName="flex-1 min-w-0">
|
|
32
|
+
<TextOrChildren textProps={{
|
|
21
33
|
variant: TextVariant.BodySm,
|
|
22
34
|
fontWeight: FontWeight.Medium,
|
|
23
35
|
color: TextColor.TextAlternative,
|
|
24
36
|
...descriptionProps,
|
|
25
37
|
}}>
|
|
26
|
-
|
|
27
|
-
|
|
38
|
+
{description}
|
|
39
|
+
</TextOrChildren>
|
|
40
|
+
</BoxColumn>
|
|
28
41
|
</BoxRow>) : null}>
|
|
29
42
|
{title ? (<BoxRow twClassName="w-full" startAccessory={titleStartAccessory} endAccessory={titleEndAccessory} gap={1}>
|
|
30
43
|
<TextOrChildren textProps={{
|
|
@@ -37,16 +50,17 @@ export const Content = ({ verticalAlignment = ContentVerticalAlignment.Center, a
|
|
|
37
50
|
</TextOrChildren>
|
|
38
51
|
</BoxRow>) : null}
|
|
39
52
|
</BoxColumn>
|
|
40
|
-
{
|
|
41
|
-
|
|
42
|
-
|
|
53
|
+
{value || showSubvalue ? (<BoxColumn alignItems={BoxAlignItems.End} twClassName="min-w-0" bottomAccessory={showSubvalue ? (<BoxRow alignItems={alignItems} startAccessory={subvalueStartAccessory} endAccessory={subvalueEndAccessory} gap={1}>
|
|
54
|
+
<BoxColumn twClassName="min-w-0">
|
|
55
|
+
<TextOrChildren textProps={{
|
|
43
56
|
variant: TextVariant.BodySm,
|
|
44
57
|
fontWeight: FontWeight.Medium,
|
|
45
58
|
color: TextColor.TextAlternative,
|
|
46
59
|
...subvalueProps,
|
|
47
60
|
}}>
|
|
48
|
-
|
|
49
|
-
|
|
61
|
+
{subvalue}
|
|
62
|
+
</TextOrChildren>
|
|
63
|
+
</BoxColumn>
|
|
50
64
|
</BoxRow>) : null}>
|
|
51
65
|
{value ? (<BoxRow startAccessory={valueStartAccessory} endAccessory={valueEndAccessory} gap={1}>
|
|
52
66
|
<TextOrChildren textProps={{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Content.mjs","sourceRoot":"","sources":["../../../src/components/Content/Content.tsx"],"names":[],"mappings":";;;;;;AAAA,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,
|
|
1
|
+
{"version":3,"file":"Content.mjs","sourceRoot":"","sources":["../../../src/components/Content/Content.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n BoxAlignItems,\n BoxFlexDirection,\n ContentVariant,\n FontWeight,\n TextColor,\n TextVariant,\n} from '@metamask/design-system-shared';\nimport React from 'react';\n\nimport { Box } from '../Box';\nimport { BoxColumn } from '../BoxColumn';\nimport { BoxRow } from '../BoxRow';\nimport { TextOrChildren } from '../temp-components/TextOrChildren';\n\nimport type { ContentProps } from './Content.types';\n\nexport const Content: React.FC<ContentProps> = ({\n variant = ContentVariant.TwoLines,\n avatar,\n twClassName,\n title,\n titleProps,\n titleStartAccessory,\n titleEndAccessory,\n description,\n descriptionProps,\n descriptionStartAccessory,\n descriptionEndAccessory,\n value,\n valueProps,\n valueStartAccessory,\n valueEndAccessory,\n subvalue,\n subvalueProps,\n subvalueStartAccessory,\n subvalueEndAccessory,\n ...props\n}) => {\n const isOneLine = variant === ContentVariant.OneLine;\n const isMultiLine = variant === ContentVariant.MultiLine;\n const showDescription = !isOneLine && description;\n const showSubvalue = !isOneLine && subvalue;\n const alignItems = isMultiLine ? BoxAlignItems.Start : BoxAlignItems.Center;\n\n if (__DEV__) {\n if (isOneLine && description) {\n console.warn(\n 'Content: `description` is ignored when `variant` is `ContentVariant.OneLine`.',\n );\n }\n if (isOneLine && subvalue) {\n console.warn(\n 'Content: `subvalue` is ignored when `variant` is `ContentVariant.OneLine`.',\n );\n }\n }\n\n return (\n <Box\n flexDirection={BoxFlexDirection.Row}\n alignItems={alignItems}\n gap={4}\n twClassName={twClassName}\n {...props}\n >\n {avatar}\n <BoxColumn\n twClassName=\"flex-1 min-w-0\"\n bottomAccessory={\n showDescription ? (\n <BoxRow\n twClassName=\"w-full\"\n alignItems={alignItems}\n startAccessory={descriptionStartAccessory}\n endAccessory={descriptionEndAccessory}\n gap={1}\n >\n <BoxColumn twClassName=\"flex-1 min-w-0\">\n <TextOrChildren\n textProps={{\n variant: TextVariant.BodySm,\n fontWeight: FontWeight.Medium,\n color: TextColor.TextAlternative,\n ...descriptionProps,\n }}\n >\n {description}\n </TextOrChildren>\n </BoxColumn>\n </BoxRow>\n ) : null\n }\n >\n {title ? (\n <BoxRow\n twClassName=\"w-full\"\n startAccessory={titleStartAccessory}\n endAccessory={titleEndAccessory}\n gap={1}\n >\n <TextOrChildren\n textProps={{\n variant: TextVariant.BodyMd,\n fontWeight: FontWeight.Medium,\n color: TextColor.TextDefault,\n ...titleProps,\n }}\n >\n {title}\n </TextOrChildren>\n </BoxRow>\n ) : null}\n </BoxColumn>\n {value || showSubvalue ? (\n <BoxColumn\n alignItems={BoxAlignItems.End}\n twClassName=\"min-w-0\"\n bottomAccessory={\n showSubvalue ? (\n <BoxRow\n alignItems={alignItems}\n startAccessory={subvalueStartAccessory}\n endAccessory={subvalueEndAccessory}\n gap={1}\n >\n <BoxColumn twClassName=\"min-w-0\">\n <TextOrChildren\n textProps={{\n variant: TextVariant.BodySm,\n fontWeight: FontWeight.Medium,\n color: TextColor.TextAlternative,\n ...subvalueProps,\n }}\n >\n {subvalue}\n </TextOrChildren>\n </BoxColumn>\n </BoxRow>\n ) : null\n }\n >\n {value ? (\n <BoxRow\n startAccessory={valueStartAccessory}\n endAccessory={valueEndAccessory}\n gap={1}\n >\n <TextOrChildren\n textProps={{\n variant: TextVariant.BodyMd,\n fontWeight: FontWeight.Medium,\n color: TextColor.TextDefault,\n ...valueProps,\n }}\n >\n {value}\n </TextOrChildren>\n </BoxRow>\n ) : null}\n </BoxColumn>\n ) : null}\n </Box>\n );\n};\n\nContent.displayName = 'Content';\n"]}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
var design_system_shared_1 = require("@metamask/design-system-shared");
|
|
5
|
-
Object.defineProperty(exports, "ContentVerticalAlignment", { enumerable: true, get: function () { return design_system_shared_1.ContentVerticalAlignment; } });
|
|
3
|
+
exports.ContentVariant = exports.Content = void 0;
|
|
6
4
|
var Content_1 = require("./Content.cjs");
|
|
7
5
|
Object.defineProperty(exports, "Content", { enumerable: true, get: function () { return Content_1.Content; } });
|
|
6
|
+
var design_system_shared_1 = require("@metamask/design-system-shared");
|
|
7
|
+
Object.defineProperty(exports, "ContentVariant", { enumerable: true, get: function () { return design_system_shared_1.ContentVariant; } });
|
|
8
8
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sourceRoot":"","sources":["../../../src/components/Content/index.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.cjs","sourceRoot":"","sources":["../../../src/components/Content/index.ts"],"names":[],"mappings":";;;AAAA,yCAAoC;AAA3B,kGAAA,OAAO,OAAA;AAChB,uEAAgE;AAAvD,sHAAA,cAAc,OAAA","sourcesContent":["export { Content } from './Content';\nexport { ContentVariant } from '@metamask/design-system-shared';\nexport type { ContentProps } from './Content.types';\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { ContentVerticalAlignment } from "@metamask/design-system-shared";
|
|
2
1
|
export { Content } from "./Content.cjs";
|
|
2
|
+
export { ContentVariant } from "@metamask/design-system-shared";
|
|
3
3
|
export type { ContentProps } from "./Content.types.cjs";
|
|
4
4
|
//# sourceMappingURL=index.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.cts","sourceRoot":"","sources":["../../../src/components/Content/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.cts","sourceRoot":"","sources":["../../../src/components/Content/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,sBAAkB;AACpC,OAAO,EAAE,cAAc,EAAE,uCAAuC;AAChE,YAAY,EAAE,YAAY,EAAE,4BAAwB"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { ContentVerticalAlignment } from "@metamask/design-system-shared";
|
|
2
1
|
export { Content } from "./Content.mjs";
|
|
2
|
+
export { ContentVariant } from "@metamask/design-system-shared";
|
|
3
3
|
export type { ContentProps } from "./Content.types.mjs";
|
|
4
4
|
//# sourceMappingURL=index.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../../../src/components/Content/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../../../src/components/Content/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,sBAAkB;AACpC,OAAO,EAAE,cAAc,EAAE,uCAAuC;AAChE,YAAY,EAAE,YAAY,EAAE,4BAAwB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../../src/components/Content/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../../src/components/Content/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,sBAAkB;AACpC,OAAO,EAAE,cAAc,EAAE,uCAAuC","sourcesContent":["export { Content } from './Content';\nexport { ContentVariant } from '@metamask/design-system-shared';\nexport type { ContentProps } from './Content.types';\n"]}
|
|
@@ -26,9 +26,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
26
26
|
exports.FilterButton = void 0;
|
|
27
27
|
const design_system_shared_1 = require("@metamask/design-system-shared");
|
|
28
28
|
const react_1 = __importStar(require("react"));
|
|
29
|
-
const
|
|
29
|
+
const Button_1 = require("../Button/index.cjs");
|
|
30
30
|
const Icon_1 = require("../Icon/index.cjs");
|
|
31
31
|
const Text_1 = require("../Text/index.cjs");
|
|
32
|
+
const SELECTED_BUTTON_VARIANT_BY_FILTER_VARIANT = {
|
|
33
|
+
[design_system_shared_1.FilterButtonVariant.Primary]: design_system_shared_1.ButtonVariant.Primary,
|
|
34
|
+
[design_system_shared_1.FilterButtonVariant.Secondary]: design_system_shared_1.ButtonVariant.Secondary,
|
|
35
|
+
};
|
|
32
36
|
const FilterButton = ({ children, textProps, startIconProps, endIconProps, value, isSelected = false, variant, isLoading = false, size, isFullWidth, twClassName = '', style, onPress, ...buttonBaseRest }) => {
|
|
33
37
|
const filterButtonGroup = (0, react_1.useContext)(design_system_shared_1.FilterButtonGroupContext);
|
|
34
38
|
const usesGroupSelection = filterButtonGroup !== null && value !== undefined;
|
|
@@ -38,17 +42,6 @@ const FilterButton = ({ children, textProps, startIconProps, endIconProps, value
|
|
|
38
42
|
const effectiveIsSelected = usesGroupSelection
|
|
39
43
|
? filterButtonGroup.value === value
|
|
40
44
|
: isSelected;
|
|
41
|
-
const getTextAndIconClassName = () => {
|
|
42
|
-
if (effectiveVariant === design_system_shared_1.FilterButtonVariant.Primary &&
|
|
43
|
-
effectiveIsSelected) {
|
|
44
|
-
return 'text-primary-inverse';
|
|
45
|
-
}
|
|
46
|
-
if (effectiveVariant === design_system_shared_1.FilterButtonVariant.Secondary &&
|
|
47
|
-
effectiveIsSelected) {
|
|
48
|
-
return 'text-default';
|
|
49
|
-
}
|
|
50
|
-
return '';
|
|
51
|
-
};
|
|
52
45
|
const handlePress = (event) => {
|
|
53
46
|
if (usesGroupSelection &&
|
|
54
47
|
filterButtonGroup !== null &&
|
|
@@ -58,30 +51,25 @@ const FilterButton = ({ children, textProps, startIconProps, endIconProps, value
|
|
|
58
51
|
}
|
|
59
52
|
onPress?.(event);
|
|
60
53
|
};
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
? twClassName(pressed)
|
|
81
|
-
: twClassName}`;
|
|
82
|
-
}
|
|
83
|
-
return `${pressed || isLoading ? 'bg-pressed' : 'bg-transparent'} border-0 ${typeof twClassName === 'function' ? twClassName(pressed) : twClassName}`;
|
|
84
|
-
}} textClassName={getTextAndIconClassName} iconClassName={getTextAndIconClassName} style={style}/>);
|
|
54
|
+
const buttonVariant = effectiveIsSelected
|
|
55
|
+
? SELECTED_BUTTON_VARIANT_BY_FILTER_VARIANT[effectiveVariant]
|
|
56
|
+
: design_system_shared_1.ButtonVariant.Tertiary;
|
|
57
|
+
return (<Button_1.Button {...buttonBaseRest} variant={buttonVariant} size={effectiveSize} isFullWidth={effectiveIsFullWidth} isLoading={isLoading} children={children} onPress={handlePress} style={style} twClassName={twClassName} textProps={effectiveIsSelected
|
|
58
|
+
? textProps
|
|
59
|
+
: {
|
|
60
|
+
...textProps,
|
|
61
|
+
twClassName: (0, design_system_shared_1.mergeTwClassName)(Text_1.TextColor.TextAlternative, textProps?.twClassName),
|
|
62
|
+
}} startIconProps={effectiveIsSelected
|
|
63
|
+
? startIconProps
|
|
64
|
+
: {
|
|
65
|
+
...startIconProps,
|
|
66
|
+
twClassName: (0, design_system_shared_1.mergeTwClassName)(Icon_1.IconColor.IconAlternative, startIconProps?.twClassName),
|
|
67
|
+
}} endIconProps={effectiveIsSelected
|
|
68
|
+
? endIconProps
|
|
69
|
+
: {
|
|
70
|
+
...endIconProps,
|
|
71
|
+
twClassName: (0, design_system_shared_1.mergeTwClassName)(Icon_1.IconColor.IconAlternative, endIconProps?.twClassName),
|
|
72
|
+
}}/>);
|
|
85
73
|
};
|
|
86
74
|
exports.FilterButton = FilterButton;
|
|
87
75
|
exports.FilterButton.displayName = 'FilterButton';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilterButton.cjs","sourceRoot":"","sources":["../../../src/components/FilterButton/FilterButton.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"FilterButton.cjs","sourceRoot":"","sources":["../../../src/components/FilterButton/FilterButton.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n ButtonVariant,\n FilterButtonSize,\n FilterButtonVariant,\n FilterButtonGroupContext,\n mergeTwClassName,\n} from '@metamask/design-system-shared';\nimport React, { useContext } from 'react';\nimport type { GestureResponderEvent } from 'react-native';\n\nimport { Button } from '../Button';\nimport { IconColor } from '../Icon';\nimport { TextColor } from '../Text';\n\nimport type { FilterButtonProps } from './FilterButton.types';\n\nconst SELECTED_BUTTON_VARIANT_BY_FILTER_VARIANT: Record<\n FilterButtonVariant,\n ButtonVariant\n> = {\n [FilterButtonVariant.Primary]: ButtonVariant.Primary,\n [FilterButtonVariant.Secondary]: ButtonVariant.Secondary,\n};\n\nexport const FilterButton = ({\n children,\n textProps,\n startIconProps,\n endIconProps,\n value,\n isSelected = false,\n variant,\n isLoading = false,\n size,\n isFullWidth,\n twClassName = '',\n style,\n onPress,\n ...buttonBaseRest\n}: FilterButtonProps) => {\n const filterButtonGroup = useContext(FilterButtonGroupContext);\n const usesGroupSelection = filterButtonGroup !== null && value !== undefined;\n\n const effectiveVariant =\n variant ?? filterButtonGroup?.variant ?? FilterButtonVariant.Primary;\n\n const effectiveSize = size ?? filterButtonGroup?.size ?? FilterButtonSize.Sm;\n\n const effectiveIsFullWidth =\n isFullWidth ?? filterButtonGroup?.isEqualWidth ?? false;\n\n const effectiveIsSelected = usesGroupSelection\n ? filterButtonGroup.value === value\n : isSelected;\n\n const handlePress = (event: GestureResponderEvent) => {\n if (\n usesGroupSelection &&\n filterButtonGroup !== null &&\n value !== undefined &&\n filterButtonGroup.value !== value\n ) {\n filterButtonGroup.onChange(value);\n }\n onPress?.(event);\n };\n\n const buttonVariant = effectiveIsSelected\n ? SELECTED_BUTTON_VARIANT_BY_FILTER_VARIANT[effectiveVariant]\n : ButtonVariant.Tertiary;\n\n return (\n <Button\n {...buttonBaseRest}\n variant={buttonVariant}\n size={effectiveSize}\n isFullWidth={effectiveIsFullWidth}\n isLoading={isLoading}\n children={children}\n onPress={handlePress}\n style={style}\n twClassName={twClassName}\n textProps={\n effectiveIsSelected\n ? textProps\n : {\n ...textProps,\n twClassName: mergeTwClassName(\n TextColor.TextAlternative,\n textProps?.twClassName,\n ),\n }\n }\n startIconProps={\n effectiveIsSelected\n ? startIconProps\n : {\n ...startIconProps,\n twClassName: mergeTwClassName(\n IconColor.IconAlternative,\n startIconProps?.twClassName,\n ),\n }\n }\n endIconProps={\n effectiveIsSelected\n ? endIconProps\n : {\n ...endIconProps,\n twClassName: mergeTwClassName(\n IconColor.IconAlternative,\n endIconProps?.twClassName,\n ),\n }\n }\n />\n );\n};\n\nFilterButton.displayName = 'FilterButton';\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilterButton.d.cts","sourceRoot":"","sources":["../../../src/components/FilterButton/FilterButton.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"FilterButton.d.cts","sourceRoot":"","sources":["../../../src/components/FilterButton/FilterButton.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAqB,cAAc;AAO1C,OAAO,KAAK,EAAE,iBAAiB,EAAE,iCAA6B;AAU9D,eAAO,MAAM,YAAY;sKAetB,iBAAiB;;CA8EnB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilterButton.d.mts","sourceRoot":"","sources":["../../../src/components/FilterButton/FilterButton.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"FilterButton.d.mts","sourceRoot":"","sources":["../../../src/components/FilterButton/FilterButton.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAqB,cAAc;AAO1C,OAAO,KAAK,EAAE,iBAAiB,EAAE,iCAA6B;AAU9D,eAAO,MAAM,YAAY;sKAetB,iBAAiB;;CA8EnB,CAAC"}
|
|
@@ -4,12 +4,16 @@ function $importDefault(module) {
|
|
|
4
4
|
}
|
|
5
5
|
return module;
|
|
6
6
|
}
|
|
7
|
-
import { FilterButtonSize, FilterButtonVariant, FilterButtonGroupContext } from "@metamask/design-system-shared";
|
|
7
|
+
import { ButtonVariant, FilterButtonSize, FilterButtonVariant, FilterButtonGroupContext, mergeTwClassName } from "@metamask/design-system-shared";
|
|
8
8
|
import $React, { useContext } from "react";
|
|
9
9
|
const React = $importDefault($React);
|
|
10
|
-
import {
|
|
10
|
+
import { Button } from "../Button/index.mjs";
|
|
11
11
|
import { IconColor } from "../Icon/index.mjs";
|
|
12
12
|
import { TextColor } from "../Text/index.mjs";
|
|
13
|
+
const SELECTED_BUTTON_VARIANT_BY_FILTER_VARIANT = {
|
|
14
|
+
[FilterButtonVariant.Primary]: ButtonVariant.Primary,
|
|
15
|
+
[FilterButtonVariant.Secondary]: ButtonVariant.Secondary,
|
|
16
|
+
};
|
|
13
17
|
export const FilterButton = ({ children, textProps, startIconProps, endIconProps, value, isSelected = false, variant, isLoading = false, size, isFullWidth, twClassName = '', style, onPress, ...buttonBaseRest }) => {
|
|
14
18
|
const filterButtonGroup = useContext(FilterButtonGroupContext);
|
|
15
19
|
const usesGroupSelection = filterButtonGroup !== null && value !== undefined;
|
|
@@ -19,17 +23,6 @@ export const FilterButton = ({ children, textProps, startIconProps, endIconProps
|
|
|
19
23
|
const effectiveIsSelected = usesGroupSelection
|
|
20
24
|
? filterButtonGroup.value === value
|
|
21
25
|
: isSelected;
|
|
22
|
-
const getTextAndIconClassName = () => {
|
|
23
|
-
if (effectiveVariant === FilterButtonVariant.Primary &&
|
|
24
|
-
effectiveIsSelected) {
|
|
25
|
-
return 'text-primary-inverse';
|
|
26
|
-
}
|
|
27
|
-
if (effectiveVariant === FilterButtonVariant.Secondary &&
|
|
28
|
-
effectiveIsSelected) {
|
|
29
|
-
return 'text-default';
|
|
30
|
-
}
|
|
31
|
-
return '';
|
|
32
|
-
};
|
|
33
26
|
const handlePress = (event) => {
|
|
34
27
|
if (usesGroupSelection &&
|
|
35
28
|
filterButtonGroup !== null &&
|
|
@@ -39,30 +32,25 @@ export const FilterButton = ({ children, textProps, startIconProps, endIconProps
|
|
|
39
32
|
}
|
|
40
33
|
onPress?.(event);
|
|
41
34
|
};
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
? twClassName(pressed)
|
|
62
|
-
: twClassName}`;
|
|
63
|
-
}
|
|
64
|
-
return `${pressed || isLoading ? 'bg-pressed' : 'bg-transparent'} border-0 ${typeof twClassName === 'function' ? twClassName(pressed) : twClassName}`;
|
|
65
|
-
}} textClassName={getTextAndIconClassName} iconClassName={getTextAndIconClassName} style={style}/>);
|
|
35
|
+
const buttonVariant = effectiveIsSelected
|
|
36
|
+
? SELECTED_BUTTON_VARIANT_BY_FILTER_VARIANT[effectiveVariant]
|
|
37
|
+
: ButtonVariant.Tertiary;
|
|
38
|
+
return (<Button {...buttonBaseRest} variant={buttonVariant} size={effectiveSize} isFullWidth={effectiveIsFullWidth} isLoading={isLoading} children={children} onPress={handlePress} style={style} twClassName={twClassName} textProps={effectiveIsSelected
|
|
39
|
+
? textProps
|
|
40
|
+
: {
|
|
41
|
+
...textProps,
|
|
42
|
+
twClassName: mergeTwClassName(TextColor.TextAlternative, textProps?.twClassName),
|
|
43
|
+
}} startIconProps={effectiveIsSelected
|
|
44
|
+
? startIconProps
|
|
45
|
+
: {
|
|
46
|
+
...startIconProps,
|
|
47
|
+
twClassName: mergeTwClassName(IconColor.IconAlternative, startIconProps?.twClassName),
|
|
48
|
+
}} endIconProps={effectiveIsSelected
|
|
49
|
+
? endIconProps
|
|
50
|
+
: {
|
|
51
|
+
...endIconProps,
|
|
52
|
+
twClassName: mergeTwClassName(IconColor.IconAlternative, endIconProps?.twClassName),
|
|
53
|
+
}}/>);
|
|
66
54
|
};
|
|
67
55
|
FilterButton.displayName = 'FilterButton';
|
|
68
56
|
//# sourceMappingURL=FilterButton.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilterButton.mjs","sourceRoot":"","sources":["../../../src/components/FilterButton/FilterButton.tsx"],"names":[],"mappings":";;;;;;AAAA,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,wBAAwB,
|
|
1
|
+
{"version":3,"file":"FilterButton.mjs","sourceRoot":"","sources":["../../../src/components/FilterButton/FilterButton.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n ButtonVariant,\n FilterButtonSize,\n FilterButtonVariant,\n FilterButtonGroupContext,\n mergeTwClassName,\n} from '@metamask/design-system-shared';\nimport React, { useContext } from 'react';\nimport type { GestureResponderEvent } from 'react-native';\n\nimport { Button } from '../Button';\nimport { IconColor } from '../Icon';\nimport { TextColor } from '../Text';\n\nimport type { FilterButtonProps } from './FilterButton.types';\n\nconst SELECTED_BUTTON_VARIANT_BY_FILTER_VARIANT: Record<\n FilterButtonVariant,\n ButtonVariant\n> = {\n [FilterButtonVariant.Primary]: ButtonVariant.Primary,\n [FilterButtonVariant.Secondary]: ButtonVariant.Secondary,\n};\n\nexport const FilterButton = ({\n children,\n textProps,\n startIconProps,\n endIconProps,\n value,\n isSelected = false,\n variant,\n isLoading = false,\n size,\n isFullWidth,\n twClassName = '',\n style,\n onPress,\n ...buttonBaseRest\n}: FilterButtonProps) => {\n const filterButtonGroup = useContext(FilterButtonGroupContext);\n const usesGroupSelection = filterButtonGroup !== null && value !== undefined;\n\n const effectiveVariant =\n variant ?? filterButtonGroup?.variant ?? FilterButtonVariant.Primary;\n\n const effectiveSize = size ?? filterButtonGroup?.size ?? FilterButtonSize.Sm;\n\n const effectiveIsFullWidth =\n isFullWidth ?? filterButtonGroup?.isEqualWidth ?? false;\n\n const effectiveIsSelected = usesGroupSelection\n ? filterButtonGroup.value === value\n : isSelected;\n\n const handlePress = (event: GestureResponderEvent) => {\n if (\n usesGroupSelection &&\n filterButtonGroup !== null &&\n value !== undefined &&\n filterButtonGroup.value !== value\n ) {\n filterButtonGroup.onChange(value);\n }\n onPress?.(event);\n };\n\n const buttonVariant = effectiveIsSelected\n ? SELECTED_BUTTON_VARIANT_BY_FILTER_VARIANT[effectiveVariant]\n : ButtonVariant.Tertiary;\n\n return (\n <Button\n {...buttonBaseRest}\n variant={buttonVariant}\n size={effectiveSize}\n isFullWidth={effectiveIsFullWidth}\n isLoading={isLoading}\n children={children}\n onPress={handlePress}\n style={style}\n twClassName={twClassName}\n textProps={\n effectiveIsSelected\n ? textProps\n : {\n ...textProps,\n twClassName: mergeTwClassName(\n TextColor.TextAlternative,\n textProps?.twClassName,\n ),\n }\n }\n startIconProps={\n effectiveIsSelected\n ? startIconProps\n : {\n ...startIconProps,\n twClassName: mergeTwClassName(\n IconColor.IconAlternative,\n startIconProps?.twClassName,\n ),\n }\n }\n endIconProps={\n effectiveIsSelected\n ? endIconProps\n : {\n ...endIconProps,\n twClassName: mergeTwClassName(\n IconColor.IconAlternative,\n endIconProps?.twClassName,\n ),\n }\n }\n />\n );\n};\n\nFilterButton.displayName = 'FilterButton';\n"]}
|