@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,8 +1,22 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { Flex } from "../Flex";
3
- const INACTIVE_BORDER_WIDTH = 2;
4
- const ACTIVE_BORDER_WIDTH = 4;
5
- export const RADIO_DOT_MODES = {
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.RadioDot = exports.RADIO_DOT_MODES = void 0;
15
+ var jsx_runtime_1 = require("react/jsx-runtime");
16
+ var Flex_1 = require("../Flex");
17
+ var INACTIVE_BORDER_WIDTH = 2;
18
+ var ACTIVE_BORDER_WIDTH = 4;
19
+ exports.RADIO_DOT_MODES = {
6
20
  default: {
7
21
  resting: {
8
22
  borderWidth: INACTIVE_BORDER_WIDTH,
@@ -44,21 +58,23 @@ export const RADIO_DOT_MODES = {
44
58
  },
45
59
  },
46
60
  };
47
- export const RadioDot = (props) => (_jsx(Container, { ...props, children: _jsx(Dot, {}) }));
48
- const Container = ({ selected = false, hover = false, error = false, disabled = false, }) => {
49
- const mode = (() => {
61
+ var RadioDot = function (props) { return ((0, jsx_runtime_1.jsx)(Container, __assign({}, props, { children: (0, jsx_runtime_1.jsx)(Dot, {}) }))); };
62
+ exports.RadioDot = RadioDot;
63
+ var Container = function (_a) {
64
+ var _b = _a.selected, selected = _b === void 0 ? false : _b, _c = _a.hover, hover = _c === void 0 ? false : _c, _d = _a.error, error = _d === void 0 ? false : _d, _e = _a.disabled, disabled = _e === void 0 ? false : _e;
65
+ var mode = (function () {
50
66
  switch (true) {
51
67
  case disabled:
52
- return RADIO_DOT_MODES.disabled;
68
+ return exports.RADIO_DOT_MODES.disabled;
53
69
  case hover:
54
- return RADIO_DOT_MODES.hover;
70
+ return exports.RADIO_DOT_MODES.hover;
55
71
  case error:
56
- return RADIO_DOT_MODES.error;
72
+ return exports.RADIO_DOT_MODES.error;
57
73
  default:
58
- return RADIO_DOT_MODES.default;
74
+ return exports.RADIO_DOT_MODES.default;
59
75
  }
60
76
  })();
61
- const moreProps = selected ? mode.selected : mode.resting;
62
- return (_jsx(Flex, { width: 20, height: 20, borderRadius: 50, alignItems: "center", justifyContent: "center", flexShrink: 0, ...moreProps }));
77
+ var moreProps = selected ? mode.selected : mode.resting;
78
+ return ((0, jsx_runtime_1.jsx)(Flex_1.Flex, __assign({ width: 20, height: 20, borderRadius: 50, alignItems: "center", justifyContent: "center", flexShrink: 0 }, moreProps)));
63
79
  };
64
- const Dot = () => (_jsx(Flex, { width: 12, height: 12, borderRadius: 50, alignItems: "center", justifyContent: "center", flexShrink: 0 }));
80
+ var Dot = function () { return ((0, jsx_runtime_1.jsx)(Flex_1.Flex, { width: 12, height: 12, borderRadius: 50, alignItems: "center", justifyContent: "center", flexShrink: 0 })); };
@@ -1,2 +1,7 @@
1
- export { RadioButton } from "./RadioButton";
2
- export { RadioDot } from "./RadioDot";
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RadioDot = exports.RadioButton = void 0;
4
+ var RadioButton_1 = require("./RadioButton");
5
+ Object.defineProperty(exports, "RadioButton", { enumerable: true, get: function () { return RadioButton_1.RadioButton; } });
6
+ var RadioDot_1 = require("./RadioDot");
7
+ Object.defineProperty(exports, "RadioDot", { enumerable: true, get: function () { return RadioDot_1.RadioDot; } });
@@ -1,3 +1,10 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { Flex } from "../Flex";
3
- export const Background = ({ children }) => (_jsx(Flex, { position: "absolute", top: 0, bottom: 0, left: 0, right: 0, children: children }));
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Background = void 0;
4
+ var jsx_runtime_1 = require("react/jsx-runtime");
5
+ var Flex_1 = require("../Flex");
6
+ var Background = function (_a) {
7
+ var children = _a.children;
8
+ return ((0, jsx_runtime_1.jsx)(Flex_1.Flex, { position: "absolute", top: 0, bottom: 0, left: 0, right: 0, children: children }));
9
+ };
10
+ exports.Background = Background;
@@ -1,11 +1,38 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { Fragment } from "react";
3
- import { KeyboardAvoidingView, Platform, ScrollView } from "react-native";
4
- import { SCREEN_HORIZONTAL_PADDING } from "./constants";
5
- import { Flex } from "../Flex";
6
- export const Body = ({ children, fullwidth, scroll, disableKeyboardAvoidance = false, scrollViewProps, ...flexProps }) => {
7
- const Wrapper = disableKeyboardAvoidance ? Fragment : KeyboardAvoidingView;
8
- return (_jsx(Wrapper, { ...(disableKeyboardAvoidance
9
- ? {}
10
- : { style: { flex: 1 }, behavior: Platform.OS === "ios" ? "padding" : "height" }), children: _jsx(Flex, { flex: 1, ...flexProps, children: _jsx(Flex, { flex: 1, px: fullwidth ? undefined : SCREEN_HORIZONTAL_PADDING, children: scroll ? _jsx(ScrollView, { ...scrollViewProps, children: children }) : children }) }) }));
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);
11
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.Body = void 0;
26
+ var jsx_runtime_1 = require("react/jsx-runtime");
27
+ var react_1 = require("react");
28
+ var react_native_1 = require("react-native");
29
+ var constants_1 = require("./constants");
30
+ var Flex_1 = require("../Flex");
31
+ var Body = function (_a) {
32
+ var children = _a.children, fullwidth = _a.fullwidth, scroll = _a.scroll, _b = _a.disableKeyboardAvoidance, disableKeyboardAvoidance = _b === void 0 ? false : _b, scrollViewProps = _a.scrollViewProps, flexProps = __rest(_a, ["children", "fullwidth", "scroll", "disableKeyboardAvoidance", "scrollViewProps"]);
33
+ var Wrapper = disableKeyboardAvoidance ? react_1.Fragment : react_native_1.KeyboardAvoidingView;
34
+ return ((0, jsx_runtime_1.jsx)(Wrapper, __assign({}, (disableKeyboardAvoidance
35
+ ? {}
36
+ : { style: { flex: 1 }, behavior: react_native_1.Platform.OS === "ios" ? "padding" : "height" }), { children: (0, jsx_runtime_1.jsx)(Flex_1.Flex, __assign({ flex: 1 }, flexProps, { children: (0, jsx_runtime_1.jsx)(Flex_1.Flex, { flex: 1, px: fullwidth ? undefined : constants_1.SCREEN_HORIZONTAL_PADDING, children: scroll ? (0, jsx_runtime_1.jsx)(react_native_1.ScrollView, __assign({}, scrollViewProps, { children: children })) : children }) })) })));
37
+ };
38
+ exports.Body = Body;
@@ -1,12 +1,20 @@
1
- import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
- import LinearGradient from "react-native-linear-gradient";
3
- import { SCREEN_HORIZONTAL_PADDING } from "./constants";
4
- import { useColor } from "../../utils/hooks/useColor";
5
- import { Flex } from "../Flex";
6
- export const BottomView = ({ children, darkMode }) => {
7
- const color = useColor();
8
- return (_jsxs(_Fragment, { children: [_jsx(LinearGradient, { colors: [darkMode ? "rgba(0,0,0,0)" : "rgba(255,255,255,0)", color("background")], start: { x: 0, y: 0 }, end: { x: 0, y: 1 }, style: {
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.BottomView = void 0;
7
+ var jsx_runtime_1 = require("react/jsx-runtime");
8
+ var react_native_linear_gradient_1 = __importDefault(require("react-native-linear-gradient"));
9
+ var constants_1 = require("./constants");
10
+ var useColor_1 = require("../../utils/hooks/useColor");
11
+ var Flex_1 = require("../Flex");
12
+ var BottomView = function (_a) {
13
+ var children = _a.children, darkMode = _a.darkMode;
14
+ var color = (0, useColor_1.useColor)();
15
+ return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(react_native_linear_gradient_1.default, { colors: [darkMode ? "rgba(0,0,0,0)" : "rgba(255,255,255,0)", color("background")], start: { x: 0, y: 0 }, end: { x: 0, y: 1 }, style: {
9
16
  width: "100%",
10
17
  height: 20,
11
- }, pointerEvents: "none" }), _jsx(Flex, { px: SCREEN_HORIZONTAL_PADDING, pt: 1, pb: 4, backgroundColor: "background", children: children })] }));
18
+ }, pointerEvents: "none" }), (0, jsx_runtime_1.jsx)(Flex_1.Flex, { px: constants_1.SCREEN_HORIZONTAL_PADDING, pt: 1, pb: 4, backgroundColor: "background", children: children })] }));
12
19
  };
20
+ exports.BottomView = BottomView;
@@ -1,10 +1,37 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useSafeAreaInsets } from "react-native-safe-area-context";
3
- import { ZINDEX } from "./constants";
4
- import { BackButtonWithBackground } from "../BackButton";
5
- import { Flex } from "../Flex";
6
- import { Spacer } from "../Spacer";
7
- export const FloatingHeader = ({ onBack, rightElements, ...flexProps }) => {
8
- const insets = useSafeAreaInsets();
9
- return (_jsxs(Flex, { position: "absolute", pointerEvents: "box-none", top: insets.top, left: 0, right: 0, zIndex: ZINDEX.floatingHeader, px: 1, py: 1, flexDirection: "row", alignItems: "center", backgroundColor: "background", ...flexProps, children: [_jsx(BackButtonWithBackground, { onPress: onBack }), _jsx(Flex, { flex: 1 }), rightElements && (_jsxs(Flex, { flexDirection: "row", alignItems: "center", children: [_jsx(Spacer, { x: 1 }), rightElements] }))] }));
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);
10
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.FloatingHeader = void 0;
26
+ var jsx_runtime_1 = require("react/jsx-runtime");
27
+ var react_native_safe_area_context_1 = require("react-native-safe-area-context");
28
+ var constants_1 = require("./constants");
29
+ var BackButton_1 = require("../BackButton");
30
+ var Flex_1 = require("../Flex");
31
+ var Spacer_1 = require("../Spacer");
32
+ var FloatingHeader = function (_a) {
33
+ var onBack = _a.onBack, rightElements = _a.rightElements, flexProps = __rest(_a, ["onBack", "rightElements"]);
34
+ var insets = (0, react_native_safe_area_context_1.useSafeAreaInsets)();
35
+ return ((0, jsx_runtime_1.jsxs)(Flex_1.Flex, __assign({ position: "absolute", pointerEvents: "box-none", top: insets.top, left: 0, right: 0, zIndex: constants_1.ZINDEX.floatingHeader, px: 1, py: 1, flexDirection: "row", alignItems: "center", backgroundColor: "background" }, flexProps, { children: [(0, jsx_runtime_1.jsx)(BackButton_1.BackButtonWithBackground, { onPress: onBack }), (0, jsx_runtime_1.jsx)(Flex_1.Flex, { flex: 1 }), rightElements && ((0, jsx_runtime_1.jsxs)(Flex_1.Flex, { flexDirection: "row", alignItems: "center", children: [(0, jsx_runtime_1.jsx)(Spacer_1.Spacer, { x: 1 }), rightElements] }))] })));
36
+ };
37
+ exports.FloatingHeader = FloatingHeader;
@@ -1,6 +1,21 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { Screen } from "../Screen";
3
- import { Separator } from "../Separator";
4
- export const FullWidthDivider = (flexProps) => {
5
- return (_jsx(Screen.FullWidthItem, { children: _jsx(Separator, { my: 2, ...flexProps }) }));
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);
6
12
  };
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ exports.FullWidthDivider = void 0;
15
+ var jsx_runtime_1 = require("react/jsx-runtime");
16
+ var Screen_1 = require("../Screen");
17
+ var Separator_1 = require("../Separator");
18
+ var FullWidthDivider = function (flexProps) {
19
+ return ((0, jsx_runtime_1.jsx)(Screen_1.Screen.FullWidthItem, { children: (0, jsx_runtime_1.jsx)(Separator_1.Separator, __assign({ my: 2 }, flexProps)) }));
20
+ };
21
+ exports.FullWidthDivider = FullWidthDivider;
@@ -1,6 +1,21 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { SCREEN_HORIZONTAL_PADDING } from "./constants";
3
- import { Flex } from "../Flex";
4
- export const FullWidthItem = (props) => {
5
- return _jsx(Flex, { ...props, mx: -SCREEN_HORIZONTAL_PADDING });
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);
6
12
  };
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ exports.FullWidthItem = void 0;
15
+ var jsx_runtime_1 = require("react/jsx-runtime");
16
+ var constants_1 = require("./constants");
17
+ var Flex_1 = require("../Flex");
18
+ var FullWidthItem = function (props) {
19
+ return (0, jsx_runtime_1.jsx)(Flex_1.Flex, __assign({}, props, { mx: -constants_1.SCREEN_HORIZONTAL_PADDING }));
20
+ };
21
+ exports.FullWidthItem = FullWidthItem;
@@ -1,30 +1,82 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { ChevronLeftIcon } from "@artsy/icons/native";
3
- import Animated, { useAnimatedStyle } from "react-native-reanimated";
4
- import { NAVBAR_HEIGHT, ZINDEX } from "./constants";
5
- import { useTitleStyles } from "./hooks/useTitleStyles";
6
- import { DEFAULT_HIT_SLOP, DEFAULT_ICON_SIZE } from "../../constants";
7
- import { useScreenDimensions, useSpace } from "../../utils/hooks";
8
- import { Flex } from "../Flex";
9
- import { Text } from "../Text";
10
- import { Touchable } from "../Touchable";
11
- export const AnimatedHeader = (props) => {
12
- return _jsx(Header, { animated: 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);
13
12
  };
14
- export const Header = ({ animated = false, hideLeftElements, hideRightElements, hideTitle, leftElements, onBack, rightElements, title, titleProps = {}, zIndex = ZINDEX.header, }) => {
15
- const { width } = useScreenDimensions();
16
- const space = useSpace();
13
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
14
+ if (k2 === undefined) k2 = k;
15
+ var desc = Object.getOwnPropertyDescriptor(m, k);
16
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
17
+ desc = { enumerable: true, get: function() { return m[k]; } };
18
+ }
19
+ Object.defineProperty(o, k2, desc);
20
+ }) : (function(o, m, k, k2) {
21
+ if (k2 === undefined) k2 = k;
22
+ o[k2] = m[k];
23
+ }));
24
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
25
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
26
+ }) : function(o, v) {
27
+ o["default"] = v;
28
+ });
29
+ var __importStar = (this && this.__importStar) || (function () {
30
+ var ownKeys = function(o) {
31
+ ownKeys = Object.getOwnPropertyNames || function (o) {
32
+ var ar = [];
33
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
34
+ return ar;
35
+ };
36
+ return ownKeys(o);
37
+ };
38
+ return function (mod) {
39
+ if (mod && mod.__esModule) return mod;
40
+ var result = {};
41
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
42
+ __setModuleDefault(result, mod);
43
+ return result;
44
+ };
45
+ })();
46
+ Object.defineProperty(exports, "__esModule", { value: true });
47
+ exports.Header = exports.AnimatedHeader = void 0;
48
+ var jsx_runtime_1 = require("react/jsx-runtime");
49
+ var native_1 = require("@artsy/icons/native");
50
+ var react_native_reanimated_1 = __importStar(require("react-native-reanimated"));
51
+ var constants_1 = require("./constants");
52
+ var useTitleStyles_1 = require("./hooks/useTitleStyles");
53
+ var constants_2 = require("../../constants");
54
+ var hooks_1 = require("../../utils/hooks");
55
+ var Flex_1 = require("../Flex");
56
+ var Text_1 = require("../Text");
57
+ var Touchable_1 = require("../Touchable");
58
+ var AnimatedHeader = function (props) {
59
+ return (0, jsx_runtime_1.jsx)(exports.Header, __assign({ animated: true }, props));
60
+ };
61
+ exports.AnimatedHeader = AnimatedHeader;
62
+ var Header = function (_a) {
63
+ var _b = _a.animated, animated = _b === void 0 ? false : _b, hideLeftElements = _a.hideLeftElements, hideRightElements = _a.hideRightElements, hideTitle = _a.hideTitle, leftElements = _a.leftElements, onBack = _a.onBack, rightElements = _a.rightElements, title = _a.title, _c = _a.titleProps, titleProps = _c === void 0 ? {} : _c, _d = _a.zIndex, zIndex = _d === void 0 ? constants_1.ZINDEX.header : _d;
64
+ var width = (0, hooks_1.useScreenDimensions)().width;
65
+ var space = (0, hooks_1.useSpace)();
17
66
  // Assumes small left and right elements, it protects from overflowing
18
67
  // but doesn't cover edge cases where right or left are bigger
19
- const centerMaxWidth = width - space(4) - DEFAULT_ICON_SIZE * 2;
20
- return (_jsxs(Flex, { height: NAVBAR_HEIGHT, flexDirection: "row", px: 2, zIndex: zIndex, backgroundColor: "background", alignItems: "center", children: [_jsx(Flex, { flex: 1, children: _jsx(Left, { leftElements: leftElements, onBack: onBack, hideLeftElements: hideLeftElements }) }), _jsx(Flex, { maxWidth: centerMaxWidth, ...titleProps, children: _jsx(Center, { animated: animated, title: title, hideTitle: hideTitle }) }), _jsx(Flex, { flex: 1, alignItems: "flex-end", children: _jsx(Right, { rightElements: rightElements, hideRightElements: hideRightElements }) })] }));
68
+ var centerMaxWidth = width - space(4) - constants_2.DEFAULT_ICON_SIZE * 2;
69
+ return ((0, jsx_runtime_1.jsxs)(Flex_1.Flex, { height: constants_1.NAVBAR_HEIGHT, flexDirection: "row", px: 2, zIndex: zIndex, backgroundColor: "background", alignItems: "center", children: [(0, jsx_runtime_1.jsx)(Flex_1.Flex, { flex: 1, children: (0, jsx_runtime_1.jsx)(Left, { leftElements: leftElements, onBack: onBack, hideLeftElements: hideLeftElements }) }), (0, jsx_runtime_1.jsx)(Flex_1.Flex, __assign({ maxWidth: centerMaxWidth }, titleProps, { children: (0, jsx_runtime_1.jsx)(Center, { animated: animated, title: title, hideTitle: hideTitle }) })), (0, jsx_runtime_1.jsx)(Flex_1.Flex, { flex: 1, alignItems: "flex-end", children: (0, jsx_runtime_1.jsx)(Right, { rightElements: rightElements, hideRightElements: hideRightElements }) })] }));
21
70
  };
22
- const Right = ({ hideRightElements, rightElements }) => {
23
- return _jsx(_Fragment, { children: !hideRightElements && rightElements });
71
+ exports.Header = Header;
72
+ var Right = function (_a) {
73
+ var hideRightElements = _a.hideRightElements, rightElements = _a.rightElements;
74
+ return (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: !hideRightElements && rightElements });
24
75
  };
25
- const Center = ({ animated, hideTitle, title }) => {
26
- const { display, opacity } = useTitleStyles();
27
- const style = useAnimatedStyle(() => {
76
+ var Center = function (_a) {
77
+ var animated = _a.animated, hideTitle = _a.hideTitle, title = _a.title;
78
+ var _b = (0, useTitleStyles_1.useTitleStyles)(), display = _b.display, opacity = _b.opacity;
79
+ var style = (0, react_native_reanimated_1.useAnimatedStyle)(function () {
28
80
  return {
29
81
  display: display.value,
30
82
  opacity: opacity.value,
@@ -33,14 +85,15 @@ const Center = ({ animated, hideTitle, title }) => {
33
85
  if (hideTitle) {
34
86
  return null;
35
87
  }
36
- const titleTextElement = (_jsx(Text, { variant: "sm-display", numberOfLines: 1, children: title }));
88
+ var titleTextElement = ((0, jsx_runtime_1.jsx)(Text_1.Text, { variant: "sm-display", numberOfLines: 1, children: title }));
37
89
  if (!animated) {
38
90
  return titleTextElement;
39
91
  }
40
- return _jsx(Animated.View, { style: style, children: titleTextElement });
92
+ return (0, jsx_runtime_1.jsx)(react_native_reanimated_1.default.View, { style: style, children: titleTextElement });
41
93
  };
42
- const Left = ({ hideLeftElements, leftElements, onBack }) => {
94
+ var Left = function (_a) {
95
+ var hideLeftElements = _a.hideLeftElements, leftElements = _a.leftElements, onBack = _a.onBack;
43
96
  if (hideLeftElements)
44
97
  return null;
45
- return (_jsx(_Fragment, { children: leftElements || (_jsx(Touchable, { accessibilityRole: "button", accessibilityLabel: "Back", accessibilityHint: "Navigates to the previous screen", onPress: onBack, underlayColor: "transparent", hitSlop: DEFAULT_HIT_SLOP, children: _jsx(ChevronLeftIcon, { fill: "onBackgroundHigh" }) })) }));
98
+ return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: leftElements || ((0, jsx_runtime_1.jsx)(Touchable_1.Touchable, { accessibilityRole: "button", accessibilityLabel: "Back", accessibilityHint: "Navigates to the previous screen", onPress: onBack, underlayColor: "transparent", hitSlop: constants_2.DEFAULT_HIT_SLOP, children: (0, jsx_runtime_1.jsx)(native_1.ChevronLeftIcon, { fill: "onBackgroundHigh" }) })) }));
46
99
  };
@@ -1,50 +1,66 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { Flex } from "../Flex";
3
- import { Screen } from "../Screen";
4
- import { Text } from "../Text";
5
- export default {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Fullwidth = exports.FlatListWithAnimatedHeaderAndLargeStickySubHeader = exports.FlatListWithAnimatedHeaderAndStickySubHeader = exports.FlatListWithAnimatedHeader = exports.ScrollViewWithAnimatedHeaderAndRightElement = exports.ScrollViewWithAnimatedHeader = exports.WithRightElementCustomLeftElement = exports.WithHeaderWithoutLeftElementAndRightElement = exports.WithHeaderAndRightElement = exports.WithHeaderAndBottomView = void 0;
4
+ var jsx_runtime_1 = require("react/jsx-runtime");
5
+ var Flex_1 = require("../Flex");
6
+ var Screen_1 = require("../Screen");
7
+ var Text_1 = require("../Text");
8
+ exports.default = {
6
9
  title: "Screen",
7
10
  };
8
- export const WithHeaderAndBottomView = () => (_jsxs(Screen, { children: [_jsx(Screen.Header, { title: "Title" }), _jsx(Screen.Body, { scroll: true, children: Array.from({ length: 5 }).map((_, i) => (_jsx(Text, { my: 1, children: "\"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\"" }, i))) }), _jsx(Screen.BottomView, { children: _jsx(Flex, { backgroundColor: "mono30", height: 100, width: "100%", children: _jsx(Text, { children: "Footer" }) }) })] }));
9
- WithHeaderAndBottomView.story = {
11
+ var WithHeaderAndBottomView = function () { return ((0, jsx_runtime_1.jsxs)(Screen_1.Screen, { children: [(0, jsx_runtime_1.jsx)(Screen_1.Screen.Header, { title: "Title" }), (0, jsx_runtime_1.jsx)(Screen_1.Screen.Body, { scroll: true, children: Array.from({ length: 5 }).map(function (_, i) { return ((0, jsx_runtime_1.jsx)(Text_1.Text, { my: 1, children: "\"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\"" }, i)); }) }), (0, jsx_runtime_1.jsx)(Screen_1.Screen.BottomView, { children: (0, jsx_runtime_1.jsx)(Flex_1.Flex, { backgroundColor: "mono30", height: 100, width: "100%", children: (0, jsx_runtime_1.jsx)(Text_1.Text, { children: "Footer" }) }) })] })); };
12
+ exports.WithHeaderAndBottomView = WithHeaderAndBottomView;
13
+ exports.WithHeaderAndBottomView.story = {
10
14
  name: "With Header and BottomView",
11
15
  };
12
- export const WithHeaderAndRightElement = () => (_jsxs(Screen, { children: [_jsx(Screen.Header, { title: "Title", rightElements: _jsx(Text, { variant: "xs", children: "Very long right element" }) }), _jsx(Screen.Body, { scroll: true, children: Array.from({ length: 5 }).map((_, i) => (_jsx(Text, { my: 1, children: "\"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\"" }, i))) })] }));
13
- WithHeaderAndRightElement.story = {
16
+ var WithHeaderAndRightElement = function () { return ((0, jsx_runtime_1.jsxs)(Screen_1.Screen, { children: [(0, jsx_runtime_1.jsx)(Screen_1.Screen.Header, { title: "Title", rightElements: (0, jsx_runtime_1.jsx)(Text_1.Text, { variant: "xs", children: "Very long right element" }) }), (0, jsx_runtime_1.jsx)(Screen_1.Screen.Body, { scroll: true, children: Array.from({ length: 5 }).map(function (_, i) { return ((0, jsx_runtime_1.jsx)(Text_1.Text, { my: 1, children: "\"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\"" }, i)); }) })] })); };
17
+ exports.WithHeaderAndRightElement = WithHeaderAndRightElement;
18
+ exports.WithHeaderAndRightElement.story = {
14
19
  name: "With Header and Right Element",
15
20
  };
16
- export const WithHeaderWithoutLeftElementAndRightElement = () => (_jsxs(Screen, { children: [_jsx(Screen.Header, { title: "Title", hideLeftElements: true, rightElements: _jsx(Text, { variant: "xs", children: "Very long right element" }) }), _jsx(Screen.Body, { scroll: true, children: Array.from({ length: 5 }).map((_, i) => (_jsx(Text, { my: 1, children: "\"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\"" }, i))) })] }));
17
- WithHeaderWithoutLeftElementAndRightElement.story = {
21
+ var WithHeaderWithoutLeftElementAndRightElement = function () { return ((0, jsx_runtime_1.jsxs)(Screen_1.Screen, { children: [(0, jsx_runtime_1.jsx)(Screen_1.Screen.Header, { title: "Title", hideLeftElements: true, rightElements: (0, jsx_runtime_1.jsx)(Text_1.Text, { variant: "xs", children: "Very long right element" }) }), (0, jsx_runtime_1.jsx)(Screen_1.Screen.Body, { scroll: true, children: Array.from({ length: 5 }).map(function (_, i) { return ((0, jsx_runtime_1.jsx)(Text_1.Text, { my: 1, children: "\"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\"" }, i)); }) })] })); };
22
+ exports.WithHeaderWithoutLeftElementAndRightElement = WithHeaderWithoutLeftElementAndRightElement;
23
+ exports.WithHeaderWithoutLeftElementAndRightElement.story = {
18
24
  name: "With Header, Without Left Element and Right Element",
19
25
  };
20
- export const WithRightElementCustomLeftElement = () => (_jsxs(Screen, { children: [_jsx(Screen.Header, { title: "Title", leftElements: _jsx(Text, { variant: "xs", children: "Very long left element" }), rightElements: _jsx(Text, { variant: "xs", children: "right element" }) }), _jsx(Screen.Body, { scroll: true, children: Array.from({ length: 5 }).map((_, i) => (_jsx(Text, { my: 1, children: "\"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\"" }, i))) }), _jsx(Screen.BottomView, { children: _jsx(Flex, { backgroundColor: "mono30", height: 100, width: "100%", children: _jsx(Text, { children: "Footer" }) }) })] }));
21
- WithRightElementCustomLeftElement.story = {
26
+ var WithRightElementCustomLeftElement = function () { return ((0, jsx_runtime_1.jsxs)(Screen_1.Screen, { children: [(0, jsx_runtime_1.jsx)(Screen_1.Screen.Header, { title: "Title", leftElements: (0, jsx_runtime_1.jsx)(Text_1.Text, { variant: "xs", children: "Very long left element" }), rightElements: (0, jsx_runtime_1.jsx)(Text_1.Text, { variant: "xs", children: "right element" }) }), (0, jsx_runtime_1.jsx)(Screen_1.Screen.Body, { scroll: true, children: Array.from({ length: 5 }).map(function (_, i) { return ((0, jsx_runtime_1.jsx)(Text_1.Text, { my: 1, children: "\"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\"" }, i)); }) }), (0, jsx_runtime_1.jsx)(Screen_1.Screen.BottomView, { children: (0, jsx_runtime_1.jsx)(Flex_1.Flex, { backgroundColor: "mono30", height: 100, width: "100%", children: (0, jsx_runtime_1.jsx)(Text_1.Text, { children: "Footer" }) }) })] })); };
27
+ exports.WithRightElementCustomLeftElement = WithRightElementCustomLeftElement;
28
+ exports.WithRightElementCustomLeftElement.story = {
22
29
  name: "With Right Element & Custom Left Element",
23
30
  };
24
- export const ScrollViewWithAnimatedHeader = () => (_jsxs(Screen, { children: [_jsx(Screen.AnimatedHeader, { title: "Title" }), _jsx(Screen.Body, { children: _jsxs(Screen.ScrollView, { children: [_jsx(Text, { variant: "lg-display", children: "Title" }), Array.from({ length: 5 }).map((_, i) => (_jsx(Text, { my: 1, children: "\"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\"" }, i)))] }) }), _jsx(Screen.BottomView, { children: _jsx(Flex, { backgroundColor: "mono30", height: 100, width: "100%", children: _jsx(Text, { children: "Footer" }) }) })] }));
25
- ScrollViewWithAnimatedHeader.story = {
31
+ var ScrollViewWithAnimatedHeader = function () { return ((0, jsx_runtime_1.jsxs)(Screen_1.Screen, { children: [(0, jsx_runtime_1.jsx)(Screen_1.Screen.AnimatedHeader, { title: "Title" }), (0, jsx_runtime_1.jsx)(Screen_1.Screen.Body, { children: (0, jsx_runtime_1.jsxs)(Screen_1.Screen.ScrollView, { children: [(0, jsx_runtime_1.jsx)(Text_1.Text, { variant: "lg-display", children: "Title" }), Array.from({ length: 5 }).map(function (_, i) { return ((0, jsx_runtime_1.jsx)(Text_1.Text, { my: 1, children: "\"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\"" }, i)); })] }) }), (0, jsx_runtime_1.jsx)(Screen_1.Screen.BottomView, { children: (0, jsx_runtime_1.jsx)(Flex_1.Flex, { backgroundColor: "mono30", height: 100, width: "100%", children: (0, jsx_runtime_1.jsx)(Text_1.Text, { children: "Footer" }) }) })] })); };
32
+ exports.ScrollViewWithAnimatedHeader = ScrollViewWithAnimatedHeader;
33
+ exports.ScrollViewWithAnimatedHeader.story = {
26
34
  name: "ScrollView With AnimatedHeader",
27
35
  };
28
- export const ScrollViewWithAnimatedHeaderAndRightElement = () => (_jsxs(Screen, { children: [_jsx(Screen.AnimatedHeader, { title: "Title", rightElements: _jsx(Text, { children: "Right" }) }), _jsx(Screen.Body, { children: _jsxs(Screen.ScrollView, { children: [_jsx(Text, { variant: "lg-display", children: "Title" }), Array.from({ length: 5 }).map((_, i) => (_jsx(Text, { my: 1, children: "\"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\"" }, i)))] }) }), _jsx(Screen.BottomView, { children: _jsx(Flex, { backgroundColor: "mono30", height: 100, width: "100%", children: _jsx(Text, { children: "Footer" }) }) })] }));
29
- ScrollViewWithAnimatedHeaderAndRightElement.story = {
36
+ var ScrollViewWithAnimatedHeaderAndRightElement = function () { return ((0, jsx_runtime_1.jsxs)(Screen_1.Screen, { children: [(0, jsx_runtime_1.jsx)(Screen_1.Screen.AnimatedHeader, { title: "Title", rightElements: (0, jsx_runtime_1.jsx)(Text_1.Text, { children: "Right" }) }), (0, jsx_runtime_1.jsx)(Screen_1.Screen.Body, { children: (0, jsx_runtime_1.jsxs)(Screen_1.Screen.ScrollView, { children: [(0, jsx_runtime_1.jsx)(Text_1.Text, { variant: "lg-display", children: "Title" }), Array.from({ length: 5 }).map(function (_, i) { return ((0, jsx_runtime_1.jsx)(Text_1.Text, { my: 1, children: "\"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\"" }, i)); })] }) }), (0, jsx_runtime_1.jsx)(Screen_1.Screen.BottomView, { children: (0, jsx_runtime_1.jsx)(Flex_1.Flex, { backgroundColor: "mono30", height: 100, width: "100%", children: (0, jsx_runtime_1.jsx)(Text_1.Text, { children: "Footer" }) }) })] })); };
37
+ exports.ScrollViewWithAnimatedHeaderAndRightElement = ScrollViewWithAnimatedHeaderAndRightElement;
38
+ exports.ScrollViewWithAnimatedHeaderAndRightElement.story = {
30
39
  name: "ScrollView With AnimatedHeader and Right Element",
31
40
  };
32
- export const FlatListWithAnimatedHeader = () => (_jsxs(Screen, { children: [_jsx(Screen.AnimatedHeader, { title: "Title" }), _jsx(Screen.Body, { children: _jsx(Screen.FlatList, { ListHeaderComponent: () => _jsx(Text, { variant: "lg-display", children: "Title" }), data: Array.from({ length: 50 }).map((_, i) => "Item " + i), renderItem: ({ item, index }) => {
33
- return (_jsx(Text, { my: 1, children: item }, index));
34
- } }) }), _jsx(Screen.BottomView, { children: _jsx(Flex, { backgroundColor: "mono30", height: 100, width: "100%", children: _jsx(Text, { children: "Footer" }) }) })] }));
35
- FlatListWithAnimatedHeader.story = {
41
+ var FlatListWithAnimatedHeader = function () { return ((0, jsx_runtime_1.jsxs)(Screen_1.Screen, { children: [(0, jsx_runtime_1.jsx)(Screen_1.Screen.AnimatedHeader, { title: "Title" }), (0, jsx_runtime_1.jsx)(Screen_1.Screen.Body, { children: (0, jsx_runtime_1.jsx)(Screen_1.Screen.FlatList, { ListHeaderComponent: function () { return (0, jsx_runtime_1.jsx)(Text_1.Text, { variant: "lg-display", children: "Title" }); }, data: Array.from({ length: 50 }).map(function (_, i) { return "Item " + i; }), renderItem: function (_a) {
42
+ var item = _a.item, index = _a.index;
43
+ return ((0, jsx_runtime_1.jsx)(Text_1.Text, { my: 1, children: item }, index));
44
+ } }) }), (0, jsx_runtime_1.jsx)(Screen_1.Screen.BottomView, { children: (0, jsx_runtime_1.jsx)(Flex_1.Flex, { backgroundColor: "mono30", height: 100, width: "100%", children: (0, jsx_runtime_1.jsx)(Text_1.Text, { children: "Footer" }) }) })] })); };
45
+ exports.FlatListWithAnimatedHeader = FlatListWithAnimatedHeader;
46
+ exports.FlatListWithAnimatedHeader.story = {
36
47
  name: "FlatList With AnimatedHeader",
37
48
  };
38
- export const FlatListWithAnimatedHeaderAndStickySubHeader = () => (_jsxs(Screen, { children: [_jsx(Screen.AnimatedHeader, { title: "Title" }), _jsx(Screen.StickySubHeader, { title: "Title", children: _jsx(Flex, { width: "100%", height: 60, backgroundColor: "red10" }) }), _jsx(Screen.Body, { children: _jsx(Screen.FlatList, { data: Array.from({ length: 50 }).map((_, i) => "Item " + i), renderItem: ({ item, index }) => {
39
- return (_jsx(Text, { my: 1, children: item }, index));
40
- } }) })] }));
41
- FlatListWithAnimatedHeaderAndStickySubHeader.story = {
49
+ var FlatListWithAnimatedHeaderAndStickySubHeader = function () { return ((0, jsx_runtime_1.jsxs)(Screen_1.Screen, { children: [(0, jsx_runtime_1.jsx)(Screen_1.Screen.AnimatedHeader, { title: "Title" }), (0, jsx_runtime_1.jsx)(Screen_1.Screen.StickySubHeader, { title: "Title", children: (0, jsx_runtime_1.jsx)(Flex_1.Flex, { width: "100%", height: 60, backgroundColor: "red10" }) }), (0, jsx_runtime_1.jsx)(Screen_1.Screen.Body, { children: (0, jsx_runtime_1.jsx)(Screen_1.Screen.FlatList, { data: Array.from({ length: 50 }).map(function (_, i) { return "Item " + i; }), renderItem: function (_a) {
50
+ var item = _a.item, index = _a.index;
51
+ return ((0, jsx_runtime_1.jsx)(Text_1.Text, { my: 1, children: item }, index));
52
+ } }) })] })); };
53
+ exports.FlatListWithAnimatedHeaderAndStickySubHeader = FlatListWithAnimatedHeaderAndStickySubHeader;
54
+ exports.FlatListWithAnimatedHeaderAndStickySubHeader.story = {
42
55
  name: "FlatList With AnimatedHeader and StickySubHeader",
43
56
  };
44
- export const FlatListWithAnimatedHeaderAndLargeStickySubHeader = () => (_jsxs(Screen, { children: [_jsx(Screen.AnimatedHeader, { title: "Title" }), _jsx(Screen.StickySubHeader, { title: "Title", largeTitle: true, children: _jsx(Flex, { width: "100%", height: 60, backgroundColor: "red10" }) }), _jsx(Screen.Body, { children: _jsx(Screen.FlatList, { data: Array.from({ length: 50 }).map((_, i) => "Item " + i), renderItem: ({ item, index }) => {
45
- return (_jsx(Text, { my: 1, children: item }, index));
46
- } }) })] }));
47
- FlatListWithAnimatedHeaderAndLargeStickySubHeader.story = {
57
+ var FlatListWithAnimatedHeaderAndLargeStickySubHeader = function () { return ((0, jsx_runtime_1.jsxs)(Screen_1.Screen, { children: [(0, jsx_runtime_1.jsx)(Screen_1.Screen.AnimatedHeader, { title: "Title" }), (0, jsx_runtime_1.jsx)(Screen_1.Screen.StickySubHeader, { title: "Title", largeTitle: true, children: (0, jsx_runtime_1.jsx)(Flex_1.Flex, { width: "100%", height: 60, backgroundColor: "red10" }) }), (0, jsx_runtime_1.jsx)(Screen_1.Screen.Body, { children: (0, jsx_runtime_1.jsx)(Screen_1.Screen.FlatList, { data: Array.from({ length: 50 }).map(function (_, i) { return "Item " + i; }), renderItem: function (_a) {
58
+ var item = _a.item, index = _a.index;
59
+ return ((0, jsx_runtime_1.jsx)(Text_1.Text, { my: 1, children: item }, index));
60
+ } }) })] })); };
61
+ exports.FlatListWithAnimatedHeaderAndLargeStickySubHeader = FlatListWithAnimatedHeaderAndLargeStickySubHeader;
62
+ exports.FlatListWithAnimatedHeaderAndLargeStickySubHeader.story = {
48
63
  name: "FlatList With AnimatedHeader and large StickySubHeader",
49
64
  };
50
- export const Fullwidth = () => (_jsxs(Screen, { children: [_jsx(Screen.Header, { title: "Title" }), _jsx(Screen.Body, { fullwidth: true, children: _jsx(Text, { children: "\"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\"" }) })] }));
65
+ var Fullwidth = function () { return ((0, jsx_runtime_1.jsxs)(Screen_1.Screen, { children: [(0, jsx_runtime_1.jsx)(Screen_1.Screen.Header, { title: "Title" }), (0, jsx_runtime_1.jsx)(Screen_1.Screen.Body, { fullwidth: true, children: (0, jsx_runtime_1.jsx)(Text_1.Text, { children: "\"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\"" }) })] })); };
66
+ exports.Fullwidth = Fullwidth;
@@ -1,12 +1,40 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useSafeAreaInsets } from "react-native-safe-area-context";
3
- import { ScreenScrollContextProvider } from "./ScreenScrollContext";
4
- import { Flex } from "../Flex";
5
- export const ScreenBase = ({ children, safeArea = true, ...flexProps }) => {
6
- const insets = useSafeAreaInsets();
7
- return (_jsx(ScreenScrollContextProvider, { children: _jsxs(Flex, { flex: 1, backgroundColor: "background", mt: safeArea ? insets.top : 0, ...flexProps, children: [children, _jsx(SafeAreaCover, { safeArea: true })] }) }));
8
- };
9
- const SafeAreaCover = ({ safeArea }) => {
10
- const insets = useSafeAreaInsets();
11
- return (_jsx(Flex, { position: "absolute", left: 0, right: 0, top: safeArea ? -insets.top : 0, height: insets.top, backgroundColor: "background" }));
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
+ 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.ScreenBase = void 0;
26
+ var jsx_runtime_1 = require("react/jsx-runtime");
27
+ var react_native_safe_area_context_1 = require("react-native-safe-area-context");
28
+ var ScreenScrollContext_1 = require("./ScreenScrollContext");
29
+ var Flex_1 = require("../Flex");
30
+ var ScreenBase = function (_a) {
31
+ var children = _a.children, _b = _a.safeArea, safeArea = _b === void 0 ? true : _b, flexProps = __rest(_a, ["children", "safeArea"]);
32
+ var insets = (0, react_native_safe_area_context_1.useSafeAreaInsets)();
33
+ return ((0, jsx_runtime_1.jsx)(ScreenScrollContext_1.ScreenScrollContextProvider, { children: (0, jsx_runtime_1.jsxs)(Flex_1.Flex, __assign({ flex: 1, backgroundColor: "background", mt: safeArea ? insets.top : 0 }, flexProps, { children: [children, (0, jsx_runtime_1.jsx)(SafeAreaCover, { safeArea: true })] })) }));
34
+ };
35
+ exports.ScreenBase = ScreenBase;
36
+ var SafeAreaCover = function (_a) {
37
+ var safeArea = _a.safeArea;
38
+ var insets = (0, react_native_safe_area_context_1.useSafeAreaInsets)();
39
+ return ((0, jsx_runtime_1.jsx)(Flex_1.Flex, { position: "absolute", left: 0, right: 0, top: safeArea ? -insets.top : 0, height: insets.top, backgroundColor: "background" }));
12
40
  };