@artsy/palette-mobile 23.14.0 → 24.0.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.
Files changed (220) hide show
  1. package/dist/Theme.js +16 -11
  2. package/dist/animation/CssTransition.js +71 -26
  3. package/dist/animation/index.js +17 -1
  4. package/dist/constants.js +12 -8
  5. package/dist/elements/ArtsyKeyboardAvoidingView/ArtsyKeyboardAvoidingView.js +116 -69
  6. package/dist/elements/ArtsyKeyboardAvoidingView/index.js +17 -1
  7. package/dist/elements/Autocomplete/Autocomplete.js +32 -23
  8. package/dist/elements/Autocomplete/Autocomplete.tests.js +128 -56
  9. package/dist/elements/Autocomplete/index.js +17 -1
  10. package/dist/elements/Avatar/Avatar.js +20 -15
  11. package/dist/elements/Avatar/Avatar.stories.js +29 -15
  12. package/dist/elements/Avatar/Avatar.tests.js +12 -10
  13. package/dist/elements/Avatar/index.js +17 -1
  14. package/dist/elements/BackButton/BackButton.js +16 -9
  15. package/dist/elements/BackButton/BackButton.stories.js +12 -8
  16. package/dist/elements/BackButton/index.js +17 -1
  17. package/dist/elements/Banner/Banner.js +45 -18
  18. package/dist/elements/Banner/Banner.stories.js +12 -8
  19. package/dist/elements/Banner/index.js +17 -1
  20. package/dist/elements/BorderBox/BorderBox.js +16 -11
  21. package/dist/elements/BorderBox/index.js +17 -1
  22. package/dist/elements/Box/Box.js +16 -14
  23. package/dist/elements/Box/Box.stories.js +21 -15
  24. package/dist/elements/Box/index.js +17 -1
  25. package/dist/elements/Button/Button.js +85 -64
  26. package/dist/elements/Button/Button.stories.js +48 -23
  27. package/dist/elements/Button/CTAButton.js +18 -3
  28. package/dist/elements/Button/FollowButton.js +38 -11
  29. package/dist/elements/Button/LinkButton.js +19 -4
  30. package/dist/elements/Button/colors.js +7 -3
  31. package/dist/elements/Button/index.js +20 -4
  32. package/dist/elements/ButtonNew/Button.js +114 -49
  33. package/dist/elements/ButtonNew/Button.stories.js +64 -38
  34. package/dist/elements/ButtonNew/Button.tests.js +23 -21
  35. package/dist/elements/ButtonNew/CTAButton.js +18 -3
  36. package/dist/elements/ButtonNew/FollowButton.js +36 -9
  37. package/dist/elements/ButtonNew/LinkButton.js +19 -4
  38. package/dist/elements/ButtonNew/colors.js +7 -3
  39. package/dist/elements/ButtonNew/index.js +20 -4
  40. package/dist/elements/Checkbox/Check.js +83 -46
  41. package/dist/elements/Checkbox/Checkbox.js +83 -47
  42. package/dist/elements/Checkbox/Checkbox.stories.js +10 -9
  43. package/dist/elements/Checkbox/index.js +18 -2
  44. package/dist/elements/Chip/Chip.js +23 -18
  45. package/dist/elements/Chip/Chip.stories.js +12 -8
  46. package/dist/elements/Chip/index.js +17 -1
  47. package/dist/elements/ClassTheme/ClassTheme.js +10 -5
  48. package/dist/elements/ClassTheme/index.js +17 -1
  49. package/dist/elements/Collapse/Collapse.js +9 -4
  50. package/dist/elements/Collapse/Collapse.stories.js +13 -9
  51. package/dist/elements/Collapse/index.js +17 -1
  52. package/dist/elements/CollapsibleMenuItem/CollapsibleMenuItem.js +32 -27
  53. package/dist/elements/CollapsibleMenuItem/CollapsibleMenuItem.stories.js +62 -37
  54. package/dist/elements/CollapsibleMenuItem/index.js +17 -1
  55. package/dist/elements/Dialog/Dialog.js +52 -26
  56. package/dist/elements/Dialog/Dialog.stories.js +41 -22
  57. package/dist/elements/Dialog/Dialog.tests.js +33 -31
  58. package/dist/elements/Dialog/index.js +17 -1
  59. package/dist/elements/EntityHeader/EntityHeader.js +42 -15
  60. package/dist/elements/EntityHeader/EntityHeader.stories.js +26 -18
  61. package/dist/elements/EntityHeader/index.js +17 -1
  62. package/dist/elements/Flex/Flex.js +32 -4
  63. package/dist/elements/Flex/index.js +17 -1
  64. package/dist/elements/Header/ArtsyLogoHeader.js +15 -8
  65. package/dist/elements/Header/index.js +17 -1
  66. package/dist/elements/Histogram/Histogram.js +19 -14
  67. package/dist/elements/Histogram/index.js +17 -1
  68. package/dist/elements/Image/Image.js +60 -28
  69. package/dist/elements/Image/Image.stories.js +35 -23
  70. package/dist/elements/Image/__tests__/getImageURL.tests.js +10 -8
  71. package/dist/elements/Image/helpers/getImageURL.js +13 -8
  72. package/dist/elements/Image/index.js +17 -1
  73. package/dist/elements/Input/Input.js +216 -168
  74. package/dist/elements/Input/Input.stories.js +15 -11
  75. package/dist/elements/Input/Input.tests.js +85 -39
  76. package/dist/elements/Input/InputTitle.js +9 -4
  77. package/dist/elements/Input/helpers.js +35 -27
  78. package/dist/elements/Input/index.js +19 -3
  79. package/dist/elements/Input/maskValue.js +25 -9
  80. package/dist/elements/Input/maskValue.tests.js +19 -17
  81. package/dist/elements/Join/Join.js +14 -9
  82. package/dist/elements/Join/index.js +17 -1
  83. package/dist/elements/LazyFlatlist/LazyFlatlist.js +11 -8
  84. package/dist/elements/LazyFlatlist/index.js +18 -2
  85. package/dist/elements/LazyFlatlist/useHasSeenItem.js +19 -12
  86. package/dist/elements/LegacyScreen/LegacyScreen.js +124 -83
  87. package/dist/elements/LegacyScreen/index.js +17 -1
  88. package/dist/elements/LegacyTabs/ContentTabs.js +18 -12
  89. package/dist/elements/LegacyTabs/NavigationalTabs.js +21 -15
  90. package/dist/elements/LegacyTabs/StepTabs.js +25 -19
  91. package/dist/elements/LegacyTabs/Tab.js +31 -19
  92. package/dist/elements/LegacyTabs/TabBarContainer.js +48 -39
  93. package/dist/elements/LegacyTabs/index.js +38 -9
  94. package/dist/elements/List/BulletedItem.js +34 -7
  95. package/dist/elements/List/List.stories.js +12 -8
  96. package/dist/elements/List/index.js +17 -1
  97. package/dist/elements/MeasuredView/MeasuredView.js +18 -12
  98. package/dist/elements/MeasuredView/index.js +17 -1
  99. package/dist/elements/MenuItem/MenuItem.js +14 -9
  100. package/dist/elements/MenuItem/MenuItem.stories.js +9 -5
  101. package/dist/elements/MenuItem/index.js +17 -1
  102. package/dist/elements/Message/Message.js +35 -19
  103. package/dist/elements/Message/Message.stories.d.ts +1 -1
  104. package/dist/elements/Message/Message.stories.js +23 -17
  105. package/dist/elements/Message/Message.tests.js +38 -36
  106. package/dist/elements/Message/index.js +17 -1
  107. package/dist/elements/Pill/Pill.js +116 -138
  108. package/dist/elements/Pill/Pill.stories.js +28 -20
  109. package/dist/elements/Pill/Pill.tests.js +15 -13
  110. package/dist/elements/Pill/index.js +17 -1
  111. package/dist/elements/PopIn/PopIn.js +13 -8
  112. package/dist/elements/PopIn/index.js +17 -1
  113. package/dist/elements/Popover/Popover.js +45 -15
  114. package/dist/elements/Popover/Popover.stories.js +25 -19
  115. package/dist/elements/Popover/index.js +17 -1
  116. package/dist/elements/ProgressBar/ProgressBar.js +68 -23
  117. package/dist/elements/ProgressBar/ProgressBar.stories.js +11 -7
  118. package/dist/elements/ProgressBar/ProgressBar.tests.js +48 -23
  119. package/dist/elements/ProgressBar/index.js +17 -1
  120. package/dist/elements/Radio/RadioButton.js +80 -44
  121. package/dist/elements/Radio/RadioButton.stories.js +17 -13
  122. package/dist/elements/Radio/RadioDot.js +31 -15
  123. package/dist/elements/Radio/index.js +7 -2
  124. package/dist/elements/Screen/Background.js +10 -3
  125. package/dist/elements/Screen/Body.js +37 -10
  126. package/dist/elements/Screen/BottomView.js +17 -9
  127. package/dist/elements/Screen/FloatingHeader.js +36 -9
  128. package/dist/elements/Screen/FullWidthDivider.js +20 -5
  129. package/dist/elements/Screen/FullWidthItem.js +20 -5
  130. package/dist/elements/Screen/Header.js +79 -26
  131. package/dist/elements/Screen/Screen.stories.js +46 -30
  132. package/dist/elements/Screen/ScreenBase.js +39 -11
  133. package/dist/elements/Screen/ScreenFlatList.js +26 -9
  134. package/dist/elements/Screen/ScreenScrollContext.js +21 -15
  135. package/dist/elements/Screen/ScreenScrollView.js +27 -9
  136. package/dist/elements/Screen/StickySubHeader.js +62 -23
  137. package/dist/elements/Screen/constants.js +8 -5
  138. package/dist/elements/Screen/hooks/useListenForScreenScroll.js +13 -9
  139. package/dist/elements/Screen/hooks/useShowLargeTitle.js +19 -14
  140. package/dist/elements/Screen/hooks/useTitleStyles.js +14 -10
  141. package/dist/elements/Screen/index.js +48 -31
  142. package/dist/elements/SearchInput/RoundSearchInput.js +79 -46
  143. package/dist/elements/SearchInput/SearchInput.js +43 -14
  144. package/dist/elements/SearchInput/index.js +18 -2
  145. package/dist/elements/Separator/Separator.js +20 -12
  146. package/dist/elements/Separator/Separator.stories.js +10 -6
  147. package/dist/elements/Separator/ShadowSeparator.js +14 -7
  148. package/dist/elements/Separator/index.js +18 -2
  149. package/dist/elements/SimpleMessage/SimpleMessage.js +47 -11
  150. package/dist/elements/SimpleMessage/index.js +17 -1
  151. package/dist/elements/Skeleton/Skeleton.js +50 -19
  152. package/dist/elements/Skeleton/Skeleton.stories.js +14 -10
  153. package/dist/elements/Skeleton/index.js +17 -1
  154. package/dist/elements/Spacer/Spacer.js +32 -3
  155. package/dist/elements/Spacer/Spacer.stories.js +35 -19
  156. package/dist/elements/Spacer/index.js +17 -1
  157. package/dist/elements/Spinner/Spinner.js +62 -33
  158. package/dist/elements/Spinner/index.js +17 -1
  159. package/dist/elements/Switch/Switch.js +50 -17
  160. package/dist/elements/Switch/Switch.stories.js +31 -14
  161. package/dist/elements/Switch/index.js +17 -1
  162. package/dist/elements/Tabs/SubTabBar.js +29 -20
  163. package/dist/elements/Tabs/TabFlashList.js +24 -12
  164. package/dist/elements/Tabs/TabFlatList.js +24 -12
  165. package/dist/elements/Tabs/TabMasonry.js +24 -12
  166. package/dist/elements/Tabs/TabScrollView.js +27 -14
  167. package/dist/elements/Tabs/Tabs.js +27 -24
  168. package/dist/elements/Tabs/Tabs.stories.js +93 -46
  169. package/dist/elements/Tabs/TabsContainer.js +62 -38
  170. package/dist/elements/Tabs/TabsWithHeader.js +41 -13
  171. package/dist/elements/Tabs/hooks/useListenForTabContentScroll.js +13 -9
  172. package/dist/elements/Tabs/index.js +17 -1
  173. package/dist/elements/Text/LinkText.js +32 -3
  174. package/dist/elements/Text/Text.js +61 -23
  175. package/dist/elements/Text/Text.stories.js +37 -28
  176. package/dist/elements/Text/Text.tests.js +7 -5
  177. package/dist/elements/Text/helpers.js +13 -7
  178. package/dist/elements/Text/index.js +19 -3
  179. package/dist/elements/ToolTip/ToolTip.js +67 -53
  180. package/dist/elements/ToolTip/ToolTip.stories.js +21 -14
  181. package/dist/elements/ToolTip/ToolTip.tests.js +15 -13
  182. package/dist/elements/ToolTip/ToolTipFlyout.js +68 -28
  183. package/dist/elements/ToolTip/index.js +17 -1
  184. package/dist/elements/Touchable/Touchable.js +41 -13
  185. package/dist/elements/Touchable/Touchable.stories.js +13 -9
  186. package/dist/elements/Touchable/TouchableHighlightColor.js +38 -12
  187. package/dist/elements/Touchable/TouchableWithScale.js +38 -11
  188. package/dist/elements/Touchable/index.js +19 -3
  189. package/dist/elements/VisualClue/VisualClue.stories.js +11 -7
  190. package/dist/elements/VisualClue/VisualClueDot.js +24 -14
  191. package/dist/elements/VisualClue/VisualClueText.js +26 -15
  192. package/dist/elements/VisualClue/index.js +18 -2
  193. package/dist/elements/index.js +62 -46
  194. package/dist/index.js +24 -8
  195. package/dist/setupJest.js +11 -6
  196. package/dist/storybook/decorators.js +36 -27
  197. package/dist/storybook/helpers.js +40 -22
  198. package/dist/tokens.js +28 -67
  199. package/dist/types.js +10 -5
  200. package/dist/utils/Wrap.js +16 -8
  201. package/dist/utils/colors.stories.js +31 -25
  202. package/dist/utils/createGeminiUrl.js +28 -22
  203. package/dist/utils/flattenChildren.js +20 -7
  204. package/dist/utils/formatLargeNumber.js +8 -4
  205. package/dist/utils/formatLargeNumbers.tests.js +15 -13
  206. package/dist/utils/hooks/index.js +20 -4
  207. package/dist/utils/hooks/useColor.js +6 -2
  208. package/dist/utils/hooks/useMeasure.js +40 -14
  209. package/dist/utils/hooks/useScreenDimensions.js +31 -20
  210. package/dist/utils/hooks/useSpace.js +6 -2
  211. package/dist/utils/hooks/useTheme.js +31 -23
  212. package/dist/utils/normalizeText.js +11 -6
  213. package/dist/utils/space.stories.js +15 -10
  214. package/dist/utils/tests/flattenChildren.tests.js +8 -6
  215. package/dist/utils/tests/isTestEnvironment.js +5 -1
  216. package/dist/utils/tests/renderWithWrappers.js +15 -7
  217. package/dist/utils/text.js +13 -9
  218. package/dist/utils/types.js +2 -0
  219. package/dist/utils/webTokensToMobile.js +16 -10
  220. package/package.json +30 -36
@@ -1,15 +1,20 @@
1
- import { themeGet } from "@styled-system/theme-get";
2
- import styled from "styled-components/native";
3
- import { border, space as styledSpace } from "styled-system";
4
- import { Flex } from "../Flex";
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __importDefault = (this && this.__importDefault) || function (mod) {
7
+ return (mod && mod.__esModule) ? mod : { "default": mod };
8
+ };
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.BorderBox = void 0;
11
+ var theme_get_1 = require("@styled-system/theme-get");
12
+ var native_1 = __importDefault(require("styled-components/native"));
13
+ var styled_system_1 = require("styled-system");
14
+ var Flex_1 = require("../Flex");
5
15
  /**
6
16
  * A `View` or `div` (depending on the platform) that has a common border
7
17
  * and padding set by default
8
18
  */
9
- export const BorderBox = styled(Flex) `
10
- border: 1px solid ${themeGet("colors.mono10")};
11
- border-radius: 2px;
12
- padding: ${themeGet("space.2")};
13
- ${border}
14
- ${styledSpace}
15
- `;
19
+ exports.BorderBox = (0, native_1.default)(Flex_1.Flex)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n border: 1px solid ", ";\n border-radius: 2px;\n padding: ", ";\n ", "\n ", "\n"], ["\n border: 1px solid ", ";\n border-radius: 2px;\n padding: ", ";\n ", "\n ", "\n"])), (0, theme_get_1.themeGet)("colors.mono10"), (0, theme_get_1.themeGet)("space.2"), styled_system_1.border, styled_system_1.space);
20
+ var templateObject_1;
@@ -1 +1,17 @@
1
- export * from "./BorderBox";
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./BorderBox"), exports);
@@ -1,7 +1,17 @@
1
- import { View } from "react-native";
2
- import styled from "styled-components/native";
3
- import { border, color, flexbox, layout, position, space, system, textAlign, } from "styled-system";
4
- const gap = system({
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __importDefault = (this && this.__importDefault) || function (mod) {
7
+ return (mod && mod.__esModule) ? mod : { "default": mod };
8
+ };
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.Box = void 0;
11
+ var react_native_1 = require("react-native");
12
+ var native_1 = __importDefault(require("styled-components/native"));
13
+ var styled_system_1 = require("styled-system");
14
+ var gap = (0, styled_system_1.system)({
5
15
  gap: {
6
16
  property: "gap",
7
17
  scale: "space",
@@ -18,13 +28,5 @@ const gap = system({
18
28
  /**
19
29
  * Box is just a `View` with common styled-system props.
20
30
  */
21
- export const Box = styled(View) `
22
- ${space}
23
- ${color}
24
- ${flexbox}
25
- ${layout}
26
- ${position}
27
- ${border}
28
- ${textAlign}
29
- ${gap}
30
- `;
31
+ exports.Box = (0, native_1.default)(react_native_1.View)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n"], ["\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n"])), styled_system_1.space, styled_system_1.color, styled_system_1.flexbox, styled_system_1.layout, styled_system_1.position, styled_system_1.border, styled_system_1.textAlign, gap);
32
+ var templateObject_1;
@@ -1,18 +1,24 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useRef } from "react";
3
- import { List } from "../../storybook/helpers";
4
- import { Box } from "../Box";
5
- import { Flex } from "../Flex";
6
- import { Spacer } from "../Spacer";
7
- import { Text } from "../Text";
8
- export default {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GapProps = exports.RegularViewProps = exports.Styled = void 0;
4
+ var jsx_runtime_1 = require("react/jsx-runtime");
5
+ var react_1 = require("react");
6
+ var helpers_1 = require("../../storybook/helpers");
7
+ var Box_1 = require("../Box");
8
+ var Flex_1 = require("../Flex");
9
+ var Spacer_1 = require("../Spacer");
10
+ var Text_1 = require("../Text");
11
+ exports.default = {
9
12
  title: "Box",
10
- component: Box,
13
+ component: Box_1.Box,
11
14
  };
12
- export const Styled = () => (_jsx(List, { style: { marginLeft: 50 }, contentContainerStyle: { alignItems: "flex-start" }, children: _jsx(Box, { px: 1, backgroundColor: "blue100", flexDirection: "row", height: 300, width: 200, top: 2, borderBottomWidth: 1, textAlign: "center" }) }));
13
- export const RegularViewProps = () => {
14
- const r = useRef(null);
15
- return (_jsx(Flex, { flex: 1, children: _jsx(Box, { px: 1, height: 200, width: 200, backgroundColor: "red100", onLayout: (e) => console.log(e.nativeEvent.layout), ref: r }) }));
15
+ var Styled = function () { return ((0, jsx_runtime_1.jsx)(helpers_1.List, { style: { marginLeft: 50 }, contentContainerStyle: { alignItems: "flex-start" }, children: (0, jsx_runtime_1.jsx)(Box_1.Box, { px: 1, backgroundColor: "blue100", flexDirection: "row", height: 300, width: 200, top: 2, borderBottomWidth: 1, textAlign: "center" }) })); };
16
+ exports.Styled = Styled;
17
+ var RegularViewProps = function () {
18
+ var r = (0, react_1.useRef)(null);
19
+ return ((0, jsx_runtime_1.jsx)(Flex_1.Flex, { flex: 1, children: (0, jsx_runtime_1.jsx)(Box_1.Box, { px: 1, height: 200, width: 200, backgroundColor: "red100", onLayout: function (e) { return console.log(e.nativeEvent.layout); }, ref: r }) }));
16
20
  };
17
- const colors = ["red10", "green10", "yellow10", "devpurple", "red100", "mono10"];
18
- export const GapProps = () => (_jsxs(List, { style: { marginHorizontal: 20 }, children: [_jsx(Text, { children: "Gap \uD83D\uDC47" }), _jsx(Box, { borderWidth: 1, borderColor: "mono100", gap: 1, flexWrap: "wrap", flexDirection: "row", children: colors.map((color) => (_jsx(Box, { backgroundColor: color, width: 100, height: 100, children: _jsx(Text, { children: color }) }, `${color}-1`))) }), _jsx(Text, { children: "Row gap \uD83D\uDC47" }), _jsx(Box, { borderWidth: 1, borderColor: "mono100", rowGap: 1, flexWrap: "wrap", flexDirection: "row", children: colors.map((color) => (_jsx(Box, { backgroundColor: color, width: 100, height: 100, children: _jsx(Text, { children: color }) }, `${color}-2`))) }), _jsx(Text, { children: "Column gap \uD83D\uDC47" }), _jsx(Box, { borderWidth: 1, borderColor: "mono100", columnGap: 1, flexWrap: "wrap", flexDirection: "row", children: colors.map((color) => (_jsx(Box, { backgroundColor: color, width: 100, height: 100, children: _jsx(Text, { children: color }) }, `${color}-3`))) }), _jsx(Spacer, { y: 6 })] }));
21
+ exports.RegularViewProps = RegularViewProps;
22
+ var colors = ["red10", "green10", "yellow10", "devpurple", "red100", "mono10"];
23
+ var GapProps = function () { return ((0, jsx_runtime_1.jsxs)(helpers_1.List, { style: { marginHorizontal: 20 }, children: [(0, jsx_runtime_1.jsx)(Text_1.Text, { children: "Gap \uD83D\uDC47" }), (0, jsx_runtime_1.jsx)(Box_1.Box, { borderWidth: 1, borderColor: "mono100", gap: 1, flexWrap: "wrap", flexDirection: "row", children: colors.map(function (color) { return ((0, jsx_runtime_1.jsx)(Box_1.Box, { backgroundColor: color, width: 100, height: 100, children: (0, jsx_runtime_1.jsx)(Text_1.Text, { children: color }) }, "".concat(color, "-1"))); }) }), (0, jsx_runtime_1.jsx)(Text_1.Text, { children: "Row gap \uD83D\uDC47" }), (0, jsx_runtime_1.jsx)(Box_1.Box, { borderWidth: 1, borderColor: "mono100", rowGap: 1, flexWrap: "wrap", flexDirection: "row", children: colors.map(function (color) { return ((0, jsx_runtime_1.jsx)(Box_1.Box, { backgroundColor: color, width: 100, height: 100, children: (0, jsx_runtime_1.jsx)(Text_1.Text, { children: color }) }, "".concat(color, "-2"))); }) }), (0, jsx_runtime_1.jsx)(Text_1.Text, { children: "Column gap \uD83D\uDC47" }), (0, jsx_runtime_1.jsx)(Box_1.Box, { borderWidth: 1, borderColor: "mono100", columnGap: 1, flexWrap: "wrap", flexDirection: "row", children: colors.map(function (color) { return ((0, jsx_runtime_1.jsx)(Box_1.Box, { backgroundColor: color, width: 100, height: 100, children: (0, jsx_runtime_1.jsx)(Text_1.Text, { children: color }) }, "".concat(color, "-3"))); }) }), (0, jsx_runtime_1.jsx)(Spacer_1.Spacer, { y: 6 })] })); };
24
+ exports.GapProps = GapProps;
@@ -1 +1,17 @@
1
- export * from "./Box";
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./Box"), exports);
@@ -1,48 +1,80 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { animated, config, Spring } from "@react-spring/native";
3
- import { useState } from "react";
4
- import { PixelRatio, Pressable, } from "react-native";
5
- import Haptic from "react-native-haptic-feedback";
6
- import styled from "styled-components/native";
7
- import { useColor } from "../../utils/hooks";
8
- import { isTestEnvironment } from "../../utils/tests/isTestEnvironment";
9
- import { Box } from "../Box";
10
- import { Flex } from "../Flex/Flex";
11
- import { MeasuredView } from "../MeasuredView";
12
- import { Spacer } from "../Spacer";
13
- import { Spinner } from "../Spinner";
14
- import { Text } from "../Text/Text";
15
- import { useTextStyleForPalette } from "../Text/helpers";
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __assign = (this && this.__assign) || function () {
7
+ __assign = Object.assign || function(t) {
8
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
9
+ s = arguments[i];
10
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
11
+ t[p] = s[p];
12
+ }
13
+ return t;
14
+ };
15
+ return __assign.apply(this, arguments);
16
+ };
17
+ var __rest = (this && this.__rest) || function (s, e) {
18
+ var t = {};
19
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
20
+ t[p] = s[p];
21
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
22
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
23
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
24
+ t[p[i]] = s[p[i]];
25
+ }
26
+ return t;
27
+ };
28
+ var __importDefault = (this && this.__importDefault) || function (mod) {
29
+ return (mod && mod.__esModule) ? mod : { "default": mod };
30
+ };
31
+ Object.defineProperty(exports, "__esModule", { value: true });
32
+ exports._test_DisplayState = exports.Button = void 0;
33
+ var jsx_runtime_1 = require("react/jsx-runtime");
34
+ var native_1 = require("@react-spring/native");
35
+ var react_1 = require("react");
36
+ var react_native_1 = require("react-native");
37
+ var react_native_haptic_feedback_1 = __importDefault(require("react-native-haptic-feedback"));
38
+ var native_2 = __importDefault(require("styled-components/native"));
39
+ var hooks_1 = require("../../utils/hooks");
40
+ var isTestEnvironment_1 = require("../../utils/tests/isTestEnvironment");
41
+ var Box_1 = require("../Box");
42
+ var Flex_1 = require("../Flex/Flex");
43
+ var MeasuredView_1 = require("../MeasuredView");
44
+ var Spacer_1 = require("../Spacer");
45
+ var Spinner_1 = require("../Spinner");
46
+ var Text_1 = require("../Text/Text");
47
+ var helpers_1 = require("../Text/helpers");
16
48
  var DisplayState;
17
49
  (function (DisplayState) {
18
50
  DisplayState["Enabled"] = "enabled";
19
51
  DisplayState["Disabled"] = "disabled";
20
52
  DisplayState["Loading"] = "loading";
21
53
  DisplayState["Pressed"] = "pressed";
22
- })(DisplayState || (DisplayState = {}));
23
- export const Button = ({ children, disabled, haptic, icon, iconPosition = "left", loading, longestText, onPress, size = "large", variant = "fillDark", testOnly_state, testID, textVariant, hitSlop, ...rest }) => {
24
- const textVariantBySize = size === "small" ? "xs" : "sm";
25
- const textStyle = { fontSize: useTextStyleForPalette(textVariant ?? textVariantBySize).fontSize };
26
- const [innerDisplayState, setInnerDisplayState] = useState(DisplayState.Enabled);
27
- const [longestTextMeasurements, setLongestTextMeasurements] = useState({
54
+ })(DisplayState || (exports._test_DisplayState = DisplayState = {}));
55
+ var Button = function (_a) {
56
+ var children = _a.children, disabled = _a.disabled, haptic = _a.haptic, icon = _a.icon, _b = _a.iconPosition, iconPosition = _b === void 0 ? "left" : _b, loading = _a.loading, longestText = _a.longestText, onPress = _a.onPress, _c = _a.size, size = _c === void 0 ? "large" : _c, _d = _a.variant, variant = _d === void 0 ? "fillDark" : _d, testOnly_state = _a.testOnly_state, testID = _a.testID, textVariant = _a.textVariant, hitSlop = _a.hitSlop, rest = __rest(_a, ["children", "disabled", "haptic", "icon", "iconPosition", "loading", "longestText", "onPress", "size", "variant", "testOnly_state", "testID", "textVariant", "hitSlop"]);
57
+ var textVariantBySize = size === "small" ? "xs" : "sm";
58
+ var textStyle = { fontSize: (0, helpers_1.useTextStyleForPalette)(textVariant !== null && textVariant !== void 0 ? textVariant : textVariantBySize).fontSize };
59
+ var _e = (0, react_1.useState)(DisplayState.Enabled), innerDisplayState = _e[0], setInnerDisplayState = _e[1];
60
+ var _f = (0, react_1.useState)({
28
61
  width: 0,
29
62
  height: 0,
30
- });
31
- const displayState = testOnly_state ?? // if we use the test prop, use that
32
- (loading // if we have loading or disabled in props, they are used
33
- ? DisplayState.Loading
34
- : disabled
35
- ? DisplayState.Disabled
36
- : innerDisplayState); // otherwise use the inner state for pressed or enabled
37
- const getSize = () => {
63
+ }), longestTextMeasurements = _f[0], setLongestTextMeasurements = _f[1];
64
+ var displayState = testOnly_state !== null && testOnly_state !== void 0 ? testOnly_state : (loading // if we have loading or disabled in props, they are used
65
+ ? DisplayState.Loading
66
+ : disabled
67
+ ? DisplayState.Disabled
68
+ : innerDisplayState); // otherwise use the inner state for pressed or enabled
69
+ var getSize = function () {
38
70
  switch (size) {
39
71
  case "small":
40
- return { height: 30 * PixelRatio.getFontScale(), mx: "15px" };
72
+ return { height: 30 * react_native_1.PixelRatio.getFontScale(), mx: "15px" };
41
73
  case "large":
42
- return { height: 50 * PixelRatio.getFontScale(), mx: "30px" };
74
+ return { height: 50 * react_native_1.PixelRatio.getFontScale(), mx: "30px" };
43
75
  }
44
76
  };
45
- const handlePress = (event) => {
77
+ var handlePress = function (event) {
46
78
  if (onPress === undefined || onPress === null) {
47
79
  return;
48
80
  }
@@ -52,7 +84,7 @@ export const Button = ({ children, disabled, haptic, icon, iconPosition = "left"
52
84
  // Did someone tap really fast? Flick the highlighted state
53
85
  if (displayState === DisplayState.Enabled) {
54
86
  setInnerDisplayState(DisplayState.Pressed);
55
- setTimeout(() => {
87
+ setTimeout(function () {
56
88
  setInnerDisplayState(DisplayState.Enabled);
57
89
  }, 0.3);
58
90
  }
@@ -61,42 +93,43 @@ export const Button = ({ children, disabled, haptic, icon, iconPosition = "left"
61
93
  setInnerDisplayState(DisplayState.Enabled);
62
94
  }
63
95
  if (haptic !== undefined) {
64
- Haptic.trigger(haptic === true ? "impactLight" : haptic);
96
+ react_native_haptic_feedback_1.default.trigger(haptic === true ? "impactLight" : haptic);
65
97
  }
66
98
  onPress(event);
67
99
  };
68
- const containerSize = getSize();
69
- const to = useStyleForVariantAndState(variant, testOnly_state ?? displayState);
70
- return (_jsx(Spring, { to: to, config: config.stiff, children: (springProps) => (_jsx(Pressable, { accessibilityLabel: rest.accessibilityLabel, accessibilityRole: "button", accessibilityState: {
71
- disabled,
72
- }, hitSlop: hitSlop, testOnly_pressed: testOnly_state === DisplayState.Pressed, disabled: testOnly_state === DisplayState.Disabled || disabled, onPressIn: () => {
100
+ var containerSize = getSize();
101
+ var to = useStyleForVariantAndState(variant, testOnly_state !== null && testOnly_state !== void 0 ? testOnly_state : displayState);
102
+ return ((0, jsx_runtime_1.jsx)(native_1.Spring, { to: to, config: native_1.config.stiff, children: function (springProps) { return ((0, jsx_runtime_1.jsx)(react_native_1.Pressable, { accessibilityLabel: rest.accessibilityLabel, accessibilityRole: "button", accessibilityState: {
103
+ disabled: disabled,
104
+ }, hitSlop: hitSlop, testOnly_pressed: testOnly_state === DisplayState.Pressed, disabled: testOnly_state === DisplayState.Disabled || disabled, onPressIn: function () {
73
105
  if (displayState === DisplayState.Loading) {
74
106
  return;
75
107
  }
76
108
  setInnerDisplayState(DisplayState.Pressed);
77
- }, onPressOut: () => {
109
+ }, onPressOut: function () {
78
110
  if (displayState === DisplayState.Loading) {
79
111
  return;
80
112
  }
81
113
  setInnerDisplayState(DisplayState.Enabled);
82
- }, onPress: handlePress, testID: testID, children: _jsx(Flex, { flexDirection: "row", children: _jsx(AnimatedContainer, { ...rest, style: {
114
+ }, onPress: handlePress, testID: testID, children: (0, jsx_runtime_1.jsx)(Flex_1.Flex, { flexDirection: "row", children: (0, jsx_runtime_1.jsx)(AnimatedContainer, __assign({}, rest, { style: {
83
115
  backgroundColor: springProps.backgroundColor,
84
116
  borderColor: springProps.borderColor,
85
117
  height: containerSize.height,
86
- }, children: _jsxs(Flex, { mx: containerSize.mx, children: [_jsxs(Flex, { height: "100%", flexDirection: "row", alignItems: "center", justifyContent: "center",
118
+ }, children: (0, jsx_runtime_1.jsxs)(Flex_1.Flex, { mx: containerSize.mx, children: [(0, jsx_runtime_1.jsxs)(Flex_1.Flex, { height: "100%", flexDirection: "row", alignItems: "center", justifyContent: "center",
87
119
  // Do not show the content when the button is loading
88
- style: { opacity: displayState === DisplayState.Loading ? 0 : 1 }, children: [iconPosition === "left-start" && !!icon ? (_jsxs(Box, { position: "absolute", left: 0, children: [icon, _jsx(Spacer, { x: 0.5 })] })) : null, iconPosition === "left" && !!icon ? (_jsxs(_Fragment, { children: [icon, _jsx(Spacer, { x: 0.5 })] })) : null, !isTestEnvironment() && longestText && longestTextMeasurements.width === 0 && (_jsx(MeasuredView, { setMeasuredState: setLongestTextMeasurements, children: _jsx(Text, { color: "red", style: textStyle, children: longestText ? longestText : children }) })), _jsx(AnimatedText, { style: [
120
+ style: { opacity: displayState === DisplayState.Loading ? 0 : 1 }, children: [iconPosition === "left-start" && !!icon ? ((0, jsx_runtime_1.jsxs)(Box_1.Box, { position: "absolute", left: 0, children: [icon, (0, jsx_runtime_1.jsx)(Spacer_1.Spacer, { x: 0.5 })] })) : null, iconPosition === "left" && !!icon ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [icon, (0, jsx_runtime_1.jsx)(Spacer_1.Spacer, { x: 0.5 })] })) : null, !(0, isTestEnvironment_1.isTestEnvironment)() && longestText && longestTextMeasurements.width === 0 && ((0, jsx_runtime_1.jsx)(MeasuredView_1.MeasuredView, { setMeasuredState: setLongestTextMeasurements, children: (0, jsx_runtime_1.jsx)(Text_1.Text, { color: "red", style: textStyle, children: longestText ? longestText : children }) })), (0, jsx_runtime_1.jsx)(AnimatedText, { style: [
89
121
  {
90
122
  width: "auto",
91
123
  color: springProps.textColor,
92
124
  textDecorationLine: springProps.textDecorationLine,
93
125
  },
94
126
  textStyle,
95
- ], textAlign: "center", selectable: false, children: children }), iconPosition === "right" && !!icon && (_jsxs(_Fragment, { children: [_jsx(Spacer, { x: 0.5 }), icon] }))] }), displayState === DisplayState.Loading && (_jsx(SpinnerContainer, { children: _jsx(Spinner, { size: size, color: to.loaderColor }) }))] }) }) }) })) }));
127
+ ], textAlign: "center", selectable: false, children: children }), iconPosition === "right" && !!icon && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(Spacer_1.Spacer, { x: 0.5 }), icon] }))] }), displayState === DisplayState.Loading && ((0, jsx_runtime_1.jsx)(SpinnerContainer, { children: (0, jsx_runtime_1.jsx)(Spinner_1.Spinner, { size: size, color: to.loaderColor }) }))] }) })) }) })); } }));
96
128
  };
97
- const useStyleForVariantAndState = (variant, state) => {
98
- const color = useColor();
99
- const retval = {
129
+ exports.Button = Button;
130
+ var useStyleForVariantAndState = function (variant, state) {
131
+ var color = (0, hooks_1.useColor)();
132
+ var retval = {
100
133
  textDecorationLine: "none",
101
134
  };
102
135
  switch (variant) {
@@ -322,20 +355,8 @@ const useStyleForVariantAndState = (variant, state) => {
322
355
  }
323
356
  return retval;
324
357
  };
325
- const Container = styled(Box) `
326
- position: relative;
327
- border-width: 1px;
328
- border-radius: 50px;
329
- width: ${(p) => (p.block ? "100%" : "auto")};
330
- overflow: hidden;
331
- `;
332
- const SpinnerContainer = styled(Box) `
333
- position: absolute;
334
- width: 100%;
335
- height: 100%;
336
- align-items: center;
337
- justify-content: center;
338
- `;
339
- const AnimatedContainer = animated(Container);
340
- const AnimatedText = animated(Text);
341
- export { DisplayState as _test_DisplayState };
358
+ var Container = (0, native_2.default)(Box_1.Box)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n position: relative;\n border-width: 1px;\n border-radius: 50px;\n width: ", ";\n overflow: hidden;\n"], ["\n position: relative;\n border-width: 1px;\n border-radius: 50px;\n width: ", ";\n overflow: hidden;\n"])), function (p) { return (p.block ? "100%" : "auto"); });
359
+ var SpinnerContainer = (0, native_2.default)(Box_1.Box)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n position: absolute;\n width: 100%;\n height: 100%;\n align-items: center;\n justify-content: center;\n"], ["\n position: absolute;\n width: 100%;\n height: 100%;\n align-items: center;\n justify-content: center;\n"])));
360
+ var AnimatedContainer = (0, native_1.animated)(Container);
361
+ var AnimatedText = (0, native_1.animated)(Text_1.Text);
362
+ var templateObject_1, templateObject_2;
@@ -1,13 +1,27 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { capitalize } from "lodash";
3
- import { useState } from "react";
4
- import { Button } from "./Button";
5
- import { DataList, List } from "../../storybook/helpers";
6
- import { Wrap } from "../../utils/Wrap";
7
- import { Flex } from "../Flex";
8
- import { LinkText } from "../Text";
9
- const sizes = ["small", "large"];
10
- const variants = [
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ exports.VariantsLoading = exports.Variants = exports.States = exports.Sizes = exports.Default = void 0;
15
+ var jsx_runtime_1 = require("react/jsx-runtime");
16
+ var lodash_1 = require("lodash");
17
+ var react_1 = require("react");
18
+ var Button_1 = require("./Button");
19
+ var helpers_1 = require("../../storybook/helpers");
20
+ var Wrap_1 = require("../../utils/Wrap");
21
+ var Flex_1 = require("../Flex");
22
+ var Text_1 = require("../Text");
23
+ var sizes = ["small", "large"];
24
+ var variants = [
11
25
  "fillDark",
12
26
  "fillLight",
13
27
  "fillGray",
@@ -17,9 +31,9 @@ const variants = [
17
31
  "outlineLight",
18
32
  "text",
19
33
  ];
20
- export default {
34
+ exports.default = {
21
35
  title: "Button",
22
- component: Button,
36
+ component: Button_1.Button,
23
37
  argTypes: {
24
38
  variant: {
25
39
  control: "select",
@@ -31,23 +45,34 @@ export default {
31
45
  },
32
46
  },
33
47
  };
34
- export const Default = {
48
+ exports.Default = {
35
49
  args: {
36
50
  variant: "fillDark",
37
51
  size: "large",
38
52
  children: "Press me",
39
53
  },
40
- render: (args) => _jsx(Button, { ...args }),
54
+ render: function (args) { return (0, jsx_runtime_1.jsx)(Button_1.Button, __assign({}, args)); },
41
55
  };
42
- export const Sizes = () => (_jsx(DataList, { data: sizes, renderItem: ({ item: size }) => (_jsx(Button, { size: size, onPress: () => console.log(`tapped ${size}`), children: capitalize(size) })) }));
43
- export const States = () => {
44
- const [variant, setVariant] = useState("fillDark");
45
- return (_jsxs(List, { children: [_jsx(Flex, { flexDirection: "row", flexWrap: "wrap", px: 2, children: variants.map((v) => (_jsx(LinkText, { color: "orange", onPress: () => setVariant(v), mr: "2", children: v }))) }), _jsx(Button, { variant: variant, onPress: () => console.log(`tapped`), longestText: "Regular YEA", children: "Regular" }), _jsx(Button, { variant: variant, onPress: () => console.log(`tapped`), disabled: true, children: "Disabled" }), _jsx(Button, { variant: variant, onPress: () => console.log(`tapped`), loading: true, children: "Loading" })] }));
56
+ var Sizes = function () { return ((0, jsx_runtime_1.jsx)(helpers_1.DataList, { data: sizes, renderItem: function (_a) {
57
+ var size = _a.item;
58
+ return ((0, jsx_runtime_1.jsx)(Button_1.Button, { size: size, onPress: function () { return console.log("tapped ".concat(size)); }, children: (0, lodash_1.capitalize)(size) }));
59
+ } })); };
60
+ exports.Sizes = Sizes;
61
+ var States = function () {
62
+ var _a = (0, react_1.useState)("fillDark"), variant = _a[0], setVariant = _a[1];
63
+ return ((0, jsx_runtime_1.jsxs)(helpers_1.List, { children: [(0, jsx_runtime_1.jsx)(Flex_1.Flex, { flexDirection: "row", flexWrap: "wrap", px: 2, children: variants.map(function (v) { return ((0, jsx_runtime_1.jsx)(Text_1.LinkText, { color: "orange", onPress: function () { return setVariant(v); }, mr: "2", children: v })); }) }), (0, jsx_runtime_1.jsx)(Button_1.Button, { variant: variant, onPress: function () { return console.log("tapped"); }, longestText: "Regular YEA", children: "Regular" }), (0, jsx_runtime_1.jsx)(Button_1.Button, { variant: variant, onPress: function () { return console.log("tapped"); }, disabled: true, children: "Disabled" }), (0, jsx_runtime_1.jsx)(Button_1.Button, { variant: variant, onPress: function () { return console.log("tapped"); }, loading: true, children: "Loading" })] }));
46
64
  };
47
- export const Variants = () => (_jsx(DataList, { data: variants, renderItem: ({ item: variant }) => (_jsx(Wrap, { if: variant === "outlineLight" || variant === "fillLight", children: _jsx(Flex, { backgroundColor: "pink", p: 1, children: _jsx(Wrap.Content, { children: _jsx(Button, { variant: variant, onPress: () => console.log(`tapped ${variant}`), children: variant }) }) }) })) }));
48
- export const VariantsLoading = () => (_jsx(DataList, { data: variants, renderItem: ({ item: variant }) => {
65
+ exports.States = States;
66
+ var Variants = function () { return ((0, jsx_runtime_1.jsx)(helpers_1.DataList, { data: variants, renderItem: function (_a) {
67
+ var variant = _a.item;
68
+ return ((0, jsx_runtime_1.jsx)(Wrap_1.Wrap, { if: variant === "outlineLight" || variant === "fillLight", children: (0, jsx_runtime_1.jsx)(Flex_1.Flex, { backgroundColor: "pink", p: 1, children: (0, jsx_runtime_1.jsx)(Wrap_1.Wrap.Content, { children: (0, jsx_runtime_1.jsx)(Button_1.Button, { variant: variant, onPress: function () { return console.log("tapped ".concat(variant)); }, children: variant }) }) }) }));
69
+ } })); };
70
+ exports.Variants = Variants;
71
+ var VariantsLoading = function () { return ((0, jsx_runtime_1.jsx)(helpers_1.DataList, { data: variants, renderItem: function (_a) {
72
+ var variant = _a.item;
49
73
  if (variant !== "outlineLight") {
50
- return (_jsx(Button, { variant: variant, loading: true, onPress: () => console.log(`tapped ${variant}`), children: variant }));
74
+ return ((0, jsx_runtime_1.jsx)(Button_1.Button, { variant: variant, loading: true, onPress: function () { return console.log("tapped ".concat(variant)); }, children: variant }));
51
75
  }
52
- return (_jsx(Flex, { backgroundColor: "pink", py: 0.5, children: _jsx(Button, { variant: variant, loading: true, onPress: () => console.log(`tapped ${variant}`), children: variant }) }));
53
- } }));
76
+ return ((0, jsx_runtime_1.jsx)(Flex_1.Flex, { backgroundColor: "pink", py: 0.5, children: (0, jsx_runtime_1.jsx)(Button_1.Button, { variant: variant, loading: true, onPress: function () { return console.log("tapped ".concat(variant)); }, children: variant }) }));
77
+ } })); };
78
+ exports.VariantsLoading = VariantsLoading;
@@ -1,3 +1,18 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { Button } from "./Button";
3
- export const CTAButton = (props) => _jsx(Button, { block: true, haptic: true, ...props });
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ exports.CTAButton = void 0;
15
+ var jsx_runtime_1 = require("react/jsx-runtime");
16
+ var Button_1 = require("./Button");
17
+ var CTAButton = function (props) { return (0, jsx_runtime_1.jsx)(Button_1.Button, __assign({ block: true, haptic: true }, props)); };
18
+ exports.CTAButton = CTAButton;
@@ -1,12 +1,39 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { CheckmarkIcon } from "@artsy/icons/native";
3
- import { DEFAULT_ICON_SIZE_SMALL } from "../../constants";
4
- import { formatLargeNumber } from "../../utils/formatLargeNumber";
5
- import { Button } from "../Button";
6
- export const FollowButton = ({ isFollowed, followCount, longestText, loading, ...restProps }) => {
7
- const followText = isFollowed ? "Following" : "Follow";
8
- const followCountText = !!followCount && followCount > 1 ? " " + formatLargeNumber(followCount, 1) : "";
9
- const text = followText + followCountText;
10
- return (_jsx(Button, { variant: isFollowed ? "outline" : "outlineGray", size: "small", longestText: longestText ? longestText : "Following", icon: isFollowed &&
11
- !loading && (_jsx(CheckmarkIcon, { fill: "mono60", width: DEFAULT_ICON_SIZE_SMALL, height: DEFAULT_ICON_SIZE_SMALL })), loading: loading, ...restProps, children: !loading && text }));
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
12
  };
13
+ var __rest = (this && this.__rest) || function (s, e) {
14
+ var t = {};
15
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
16
+ t[p] = s[p];
17
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
18
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
19
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
20
+ t[p[i]] = s[p[i]];
21
+ }
22
+ return t;
23
+ };
24
+ Object.defineProperty(exports, "__esModule", { value: true });
25
+ exports.FollowButton = void 0;
26
+ var jsx_runtime_1 = require("react/jsx-runtime");
27
+ var native_1 = require("@artsy/icons/native");
28
+ var constants_1 = require("../../constants");
29
+ var formatLargeNumber_1 = require("../../utils/formatLargeNumber");
30
+ var Button_1 = require("../Button");
31
+ var FollowButton = function (_a) {
32
+ var isFollowed = _a.isFollowed, followCount = _a.followCount, longestText = _a.longestText, loading = _a.loading, restProps = __rest(_a, ["isFollowed", "followCount", "longestText", "loading"]);
33
+ var followText = isFollowed ? "Following" : "Follow";
34
+ var followCountText = !!followCount && followCount > 1 ? " " + (0, formatLargeNumber_1.formatLargeNumber)(followCount, 1) : "";
35
+ var text = followText + followCountText;
36
+ return ((0, jsx_runtime_1.jsx)(Button_1.Button, __assign({ variant: isFollowed ? "outline" : "outlineGray", size: "small", longestText: longestText ? longestText : "Following", icon: isFollowed &&
37
+ !loading && ((0, jsx_runtime_1.jsx)(native_1.CheckmarkIcon, { fill: "mono60", width: constants_1.DEFAULT_ICON_SIZE_SMALL, height: constants_1.DEFAULT_ICON_SIZE_SMALL })), loading: loading }, restProps, { children: !loading && text })));
38
+ };
39
+ exports.FollowButton = FollowButton;
@@ -1,4 +1,19 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { Text } from "../Text";
3
- import { Touchable } from "../Touchable";
4
- export const LinkButton = (props) => (_jsx(Touchable, { accessibilityRole: "link", onPress: props.onPress, children: _jsx(Text, { underline: true, ...props }) }));
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ exports.LinkButton = void 0;
15
+ var jsx_runtime_1 = require("react/jsx-runtime");
16
+ var Text_1 = require("../Text");
17
+ var Touchable_1 = require("../Touchable");
18
+ var LinkButton = function (props) { return ((0, jsx_runtime_1.jsx)(Touchable_1.Touchable, { accessibilityRole: "link", onPress: props.onPress, children: (0, jsx_runtime_1.jsx)(Text_1.Text, __assign({ underline: true }, props)) })); };
19
+ exports.LinkButton = LinkButton;
@@ -1,6 +1,9 @@
1
- import { useColor } from "../../utils/hooks/useColor";
2
- export const useColorsForVariantAndState = () => {
3
- const color = useColor();
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useColorsForVariantAndState = void 0;
4
+ var useColor_1 = require("../../utils/hooks/useColor");
5
+ var useColorsForVariantAndState = function () {
6
+ var color = (0, useColor_1.useColor)();
4
7
  return {
5
8
  fillDark: {
6
9
  disabled: { bg: color("mono30"), border: color("mono30"), text: color("onPrimaryHigh") },
@@ -72,3 +75,4 @@ export const useColorsForVariantAndState = () => {
72
75
  },
73
76
  };
74
77
  };
78
+ exports.useColorsForVariantAndState = useColorsForVariantAndState;
@@ -1,4 +1,20 @@
1
- export * from "./Button";
2
- export * from "./CTAButton";
3
- export * from "./LinkButton";
4
- export * from "./FollowButton";
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./Button"), exports);
18
+ __exportStar(require("./CTAButton"), exports);
19
+ __exportStar(require("./LinkButton"), exports);
20
+ __exportStar(require("./FollowButton"), exports);