@ornikar/kitt-universal 2.2.0 → 3.0.0-beta.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 (163) hide show
  1. package/CHANGELOG.md +131 -0
  2. package/dist/definitions/Avatar/Avatar.d.ts.map +1 -1
  3. package/dist/definitions/Button/Button.d.ts +5 -2
  4. package/dist/definitions/Button/Button.d.ts.map +1 -1
  5. package/dist/definitions/Button/ButtonContent.d.ts.map +1 -1
  6. package/dist/definitions/Button/ButtonPressable.d.ts +13 -0
  7. package/dist/definitions/Button/ButtonPressable.d.ts.map +1 -0
  8. package/dist/definitions/Card/Card.d.ts.map +1 -1
  9. package/dist/definitions/Emoji/Emoji.d.ts +8 -0
  10. package/dist/definitions/Emoji/Emoji.d.ts.map +1 -0
  11. package/dist/definitions/ExternalLink/ExternalLink.d.ts +18 -0
  12. package/dist/definitions/ExternalLink/ExternalLink.d.ts.map +1 -0
  13. package/dist/definitions/ExternalLink/ExternalLink.web.d.ts +4 -0
  14. package/dist/definitions/ExternalLink/ExternalLink.web.d.ts.map +1 -0
  15. package/dist/definitions/ExternalLink/ExternalLinkOpenLinkBehavior.d.ts +24 -0
  16. package/dist/definitions/ExternalLink/ExternalLinkOpenLinkBehavior.d.ts.map +1 -0
  17. package/dist/definitions/FullScreenModal/Body.d.ts.map +1 -1
  18. package/dist/definitions/FullScreenModal/FullScreenModal.d.ts.map +1 -1
  19. package/dist/definitions/FullScreenModal/Header.d.ts.map +1 -1
  20. package/dist/definitions/Icon/Icon.d.ts.map +1 -1
  21. package/dist/definitions/Icon/SpinningIcon.web.d.ts +3 -2
  22. package/dist/definitions/Icon/SpinningIcon.web.d.ts.map +1 -1
  23. package/dist/definitions/IconButton/IconButton.d.ts.map +1 -1
  24. package/dist/definitions/IconButton/PressableAnimatedContainer.d.ts.map +1 -1
  25. package/dist/definitions/IconButton/PressableAnimatedContainer.web.d.ts.map +1 -1
  26. package/dist/definitions/IconButton/PressableIconButton.d.ts +4 -4
  27. package/dist/definitions/IconButton/PressableIconButton.d.ts.map +1 -1
  28. package/dist/definitions/ListItem/ListItem.d.ts +3 -4
  29. package/dist/definitions/ListItem/ListItem.d.ts.map +1 -1
  30. package/dist/definitions/ListItem/ListItemContent.d.ts +2 -2
  31. package/dist/definitions/ListItem/ListItemContent.d.ts.map +1 -1
  32. package/dist/definitions/ListItem/ListItemSideContent.d.ts +3 -4
  33. package/dist/definitions/ListItem/ListItemSideContent.d.ts.map +1 -1
  34. package/dist/definitions/Loader/LargeLoader.d.ts.map +1 -1
  35. package/dist/definitions/Loader/LargeLoader.web.d.ts.map +1 -1
  36. package/dist/definitions/Loader/Loader.d.ts.map +1 -1
  37. package/dist/definitions/Loader/Loader.web.d.ts.map +1 -1
  38. package/dist/definitions/Message/Message.d.ts.map +1 -1
  39. package/dist/definitions/Modal/Body.d.ts.map +1 -1
  40. package/dist/definitions/Modal/Footer.d.ts.map +1 -1
  41. package/dist/definitions/Modal/Header.d.ts.map +1 -1
  42. package/dist/definitions/Modal/Modal.d.ts.map +1 -1
  43. package/dist/definitions/Notification/Notification.d.ts.map +1 -1
  44. package/dist/definitions/Overlay/Overlay.d.ts +2 -2
  45. package/dist/definitions/Overlay/Overlay.d.ts.map +1 -1
  46. package/dist/definitions/Tag/Tag.d.ts.map +1 -1
  47. package/dist/definitions/TimePicker/ModalDateTimePicker.d.ts +12 -0
  48. package/dist/definitions/TimePicker/ModalDateTimePicker.d.ts.map +1 -0
  49. package/dist/definitions/TimePicker/TimePicker.d.ts +15 -0
  50. package/dist/definitions/TimePicker/TimePicker.d.ts.map +1 -0
  51. package/dist/definitions/TimePicker/TimePicker.web.d.ts +3 -0
  52. package/dist/definitions/TimePicker/TimePicker.web.d.ts.map +1 -0
  53. package/dist/definitions/TimePicker/useTimePicker.d.ts +14 -0
  54. package/dist/definitions/TimePicker/useTimePicker.d.ts.map +1 -0
  55. package/dist/definitions/Tooltip/Tooltip.d.ts +23 -3
  56. package/dist/definitions/Tooltip/Tooltip.d.ts.map +1 -1
  57. package/dist/definitions/Tooltip/Tooltip.web.d.ts +8 -0
  58. package/dist/definitions/Tooltip/Tooltip.web.d.ts.map +1 -0
  59. package/dist/definitions/Tooltip/TooltipView.d.ts +8 -0
  60. package/dist/definitions/Tooltip/TooltipView.d.ts.map +1 -0
  61. package/dist/definitions/Tooltip/tooltipUtils.d.ts +5 -0
  62. package/dist/definitions/Tooltip/tooltipUtils.d.ts.map +1 -0
  63. package/dist/definitions/forms/InputFeedback/InputFeedback.d.ts.map +1 -1
  64. package/dist/definitions/forms/InputField/InputField.d.ts.map +1 -1
  65. package/dist/definitions/forms/InputText/InputText.d.ts +3 -2
  66. package/dist/definitions/forms/InputText/InputText.d.ts.map +1 -1
  67. package/dist/definitions/forms/Label/Label.d.ts.map +1 -1
  68. package/dist/definitions/forms/Radio/Radio.d.ts.map +1 -1
  69. package/dist/definitions/forms/TextArea/TextArea.d.ts.map +1 -1
  70. package/dist/definitions/index.d.ts +9 -13
  71. package/dist/definitions/index.d.ts.map +1 -1
  72. package/dist/definitions/story-components/Flex.d.ts +2 -2
  73. package/dist/definitions/story-components/Flex.d.ts.map +1 -1
  74. package/dist/definitions/story-components/Story.d.ts.map +1 -1
  75. package/dist/definitions/story-components/StoryBlock.d.ts +1 -2
  76. package/dist/definitions/story-components/StoryBlock.d.ts.map +1 -1
  77. package/dist/definitions/story-components/StoryContainer.d.ts.map +1 -1
  78. package/dist/definitions/story-components/StoryContainer.web.d.ts.map +1 -1
  79. package/dist/definitions/story-components/StoryDecorator.d.ts +3 -3
  80. package/dist/definitions/story-components/StoryDecorator.d.ts.map +1 -1
  81. package/dist/definitions/story-components/StoryGrid.d.ts.map +1 -1
  82. package/dist/definitions/story-components/StorySection.d.ts +7 -9
  83. package/dist/definitions/story-components/StorySection.d.ts.map +1 -1
  84. package/dist/definitions/story-components/StoryTitle.d.ts.map +1 -1
  85. package/dist/definitions/themes/default.d.ts +3 -6
  86. package/dist/definitions/themes/default.d.ts.map +1 -1
  87. package/dist/definitions/themes/late-ocean/colorsLateOceanTheme.d.ts +1 -0
  88. package/dist/definitions/themes/late-ocean/colorsLateOceanTheme.d.ts.map +1 -1
  89. package/dist/definitions/themes/late-ocean/tooltip.d.ts +10 -0
  90. package/dist/definitions/themes/late-ocean/tooltip.d.ts.map +1 -0
  91. package/dist/definitions/themes/late-ocean/typographyLateOceanTheme.d.ts +6 -8
  92. package/dist/definitions/themes/late-ocean/typographyLateOceanTheme.d.ts.map +1 -1
  93. package/dist/definitions/typography/Typography.d.ts +19 -7
  94. package/dist/definitions/typography/Typography.d.ts.map +1 -1
  95. package/dist/definitions/typography/TypographyEmoji.d.ts +7 -0
  96. package/dist/definitions/typography/TypographyEmoji.d.ts.map +1 -0
  97. package/dist/definitions/typography/TypographyIcon.d.ts.map +1 -1
  98. package/dist/definitions/typography/TypographyLink.d.ts +9 -9
  99. package/dist/definitions/typography/TypographyLink.d.ts.map +1 -1
  100. package/dist/definitions/useKittTheme.d.ts +8 -1
  101. package/dist/definitions/useKittTheme.d.ts.map +1 -1
  102. package/dist/definitions/utils/StyleWebWrapper.d.ts +7 -0
  103. package/dist/definitions/utils/StyleWebWrapper.d.ts.map +1 -0
  104. package/dist/definitions/utils/storybook/{decorators/KittThemeDecorator.d.ts → KittThemeDecorator.d.ts} +1 -1
  105. package/dist/definitions/utils/storybook/KittThemeDecorator.d.ts.map +1 -0
  106. package/dist/definitions/utils/tests/renderWithProvidersUtils.d.ts +2 -2
  107. package/dist/definitions/utils/tests/renderWithProvidersUtils.d.ts.map +1 -1
  108. package/dist/definitions/utils/tests/styled-component-typing-test.d.ts +1 -0
  109. package/dist/definitions/utils/tests/styled-component-typing-test.d.ts.map +1 -1
  110. package/dist/definitions/utils/windowSize/MatchWindowSize.d.ts.map +1 -1
  111. package/dist/definitions/utils/windowSize/createWindowSizeHelper.d.ts +2 -2
  112. package/dist/definitions/utils/withTheme.d.ts +7 -0
  113. package/dist/definitions/utils/withTheme.d.ts.map +1 -0
  114. package/dist/index-browser-all.es.android.js +1437 -652
  115. package/dist/index-browser-all.es.android.js.map +1 -1
  116. package/dist/index-browser-all.es.css +2 -0
  117. package/dist/index-browser-all.es.ios.js +1437 -652
  118. package/dist/index-browser-all.es.ios.js.map +1 -1
  119. package/dist/index-browser-all.es.js +1403 -724
  120. package/dist/index-browser-all.es.js.map +1 -1
  121. package/dist/index-browser-all.es.web.js +1249 -837
  122. package/dist/index-browser-all.es.web.js.map +1 -1
  123. package/dist/index-node-14.17.cjs.css +2 -0
  124. package/dist/index-node-14.17.cjs.js +1244 -634
  125. package/dist/index-node-14.17.cjs.js.map +1 -1
  126. package/dist/styles.css +4 -0
  127. package/dist/tsbuildinfo +1 -1
  128. package/package.json +19 -7
  129. package/translations/es-ES.json +3 -0
  130. package/translations/fr-FR.json +3 -0
  131. package/dist/definitions/Button/ButtonContainer.d.ts +0 -12
  132. package/dist/definitions/Button/ButtonContainer.d.ts.map +0 -1
  133. package/dist/definitions/Button/useButton.d.ts +0 -6
  134. package/dist/definitions/Button/useButton.d.ts.map +0 -1
  135. package/dist/definitions/primitives/PrimitiveLink.d.ts +0 -11
  136. package/dist/definitions/primitives/PrimitiveLink.d.ts.map +0 -1
  137. package/dist/definitions/primitives/PrimitiveLink.web.d.ts +0 -4
  138. package/dist/definitions/primitives/PrimitiveLink.web.d.ts.map +0 -1
  139. package/dist/definitions/primitives/PrimitivePressable.d.ts +0 -16
  140. package/dist/definitions/primitives/PrimitivePressable.d.ts.map +0 -1
  141. package/dist/definitions/primitives/PrimitivePressable.web.d.ts +0 -4
  142. package/dist/definitions/primitives/PrimitivePressable.web.d.ts.map +0 -1
  143. package/dist/definitions/primitives/PrimitiveScrollView.d.ts +0 -8
  144. package/dist/definitions/primitives/PrimitiveScrollView.d.ts.map +0 -1
  145. package/dist/definitions/primitives/PrimitiveScrollView.web.d.ts +0 -4
  146. package/dist/definitions/primitives/PrimitiveScrollView.web.d.ts.map +0 -1
  147. package/dist/definitions/primitives/PrimitiveText.d.ts +0 -14
  148. package/dist/definitions/primitives/PrimitiveText.d.ts.map +0 -1
  149. package/dist/definitions/primitives/PrimitiveText.web.d.ts +0 -6
  150. package/dist/definitions/primitives/PrimitiveText.web.d.ts.map +0 -1
  151. package/dist/definitions/primitives/PrimitiveView.d.ts +0 -21
  152. package/dist/definitions/primitives/PrimitiveView.d.ts.map +0 -1
  153. package/dist/definitions/primitives/PrimitiveView.web.d.ts +0 -23
  154. package/dist/definitions/primitives/PrimitiveView.web.d.ts.map +0 -1
  155. package/dist/definitions/primitives/helpers.d.ts +0 -7
  156. package/dist/definitions/primitives/helpers.d.ts.map +0 -1
  157. package/dist/definitions/primitives/reset.d.ts +0 -2
  158. package/dist/definitions/primitives/reset.d.ts.map +0 -1
  159. package/dist/definitions/utils/storybook/decorators/KittThemeDecorator.d.ts.map +0 -1
  160. package/dist/definitions/utils/storybook/decorators/SafeAreaProviderDecorator.d.ts +0 -2
  161. package/dist/definitions/utils/storybook/decorators/SafeAreaProviderDecorator.d.ts.map +0 -1
  162. package/dist/definitions/utils/storybook/setup-global-decorators.d.ts +0 -2
  163. package/dist/definitions/utils/storybook/setup-global-decorators.d.ts.map +0 -1
@@ -2,33 +2,36 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const _extends = require('@babel/runtime/helpers/extends');
6
5
  const kittIcons = require('@ornikar/kitt-icons');
7
- const React = require('react');
8
6
  const reactNative = require('react-native');
9
- const styled = require('styled-components');
7
+ const styled = require('styled-components/native');
8
+ const react = require('react');
9
+ const jsxRuntime = require('react/jsx-runtime');
10
+ const twemojiParser = require('twemoji-parser');
11
+ const WebBrowser = require('expo-web-browser');
10
12
  const reactNativeSafeAreaContext = require('react-native-safe-area-context');
11
13
  const Animated = require('react-native-reanimated');
14
+ const react$1 = require('@linaria/react');
15
+ const DateTimePicker = require('@react-native-community/datetimepicker');
16
+ const reactIntl = require('react-intl');
17
+ const reactNative$1 = require('@floating-ui/react-native');
12
18
  const addons = require('@storybook/addons');
13
19
 
14
20
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e['default'] : e; }
15
21
 
16
- const _extends__default = /*#__PURE__*/_interopDefaultLegacy(_extends);
17
- const React__default = /*#__PURE__*/_interopDefaultLegacy(React);
18
22
  const styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
19
23
  const Animated__default = /*#__PURE__*/_interopDefaultLegacy(Animated);
20
-
21
- const PrimitiveView = reactNative.View;
24
+ const DateTimePicker__default = /*#__PURE__*/_interopDefaultLegacy(DateTimePicker);
22
25
 
23
26
  function SpinningIcon({
24
27
  children
25
28
  }) {
26
- const animationRef = React.useRef(new reactNative.Animated.Value(0));
29
+ const animationRef = react.useRef(new reactNative.Animated.Value(0));
27
30
  const rotation = animationRef.current.interpolate({
28
31
  inputRange: [0, 1],
29
32
  outputRange: ['0deg', '360deg']
30
33
  });
31
- React.useEffect(() => {
34
+ react.useEffect(() => {
32
35
  if (process.env.TESTS) return undefined;
33
36
  const animation = reactNative.Animated.loop(reactNative.Animated.timing(animationRef.current, {
34
37
  toValue: 1,
@@ -43,16 +46,17 @@ function SpinningIcon({
43
46
  return undefined;
44
47
  };
45
48
  }, []);
46
- return /*#__PURE__*/React__default.createElement(reactNative.Animated.View, {
49
+ return /*#__PURE__*/jsxRuntime.jsx(reactNative.Animated.View, {
47
50
  style: {
48
51
  transform: [{
49
52
  rotate: rotation
50
53
  }]
51
- }
52
- }, children);
54
+ },
55
+ children: children
56
+ });
53
57
  }
54
58
 
55
- const IconContainer$2 = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
59
+ const IconContainer$2 = /*#__PURE__*/styled__default.View.withConfig({
56
60
  displayName: "Icon__IconContainer",
57
61
  componentId: "kitt-universal__sc-usm0ol-0"
58
62
  })(["color:", ";width:", "px;height:", "px;align-self:", ";"], ({
@@ -71,118 +75,198 @@ function Icon({
71
75
  align,
72
76
  color
73
77
  }) {
74
- const clonedIcon = /*#__PURE__*/React__default.cloneElement(icon, {
78
+ const clonedIcon = /*#__PURE__*/react.cloneElement(icon, {
75
79
  color
76
80
  });
77
- return /*#__PURE__*/React__default.createElement(IconContainer$2, {
81
+ return /*#__PURE__*/jsxRuntime.jsx(IconContainer$2, {
78
82
  align: align,
79
83
  size: size,
80
- color: color
81
- }, spin ? /*#__PURE__*/React__default.createElement(SpinningIcon, null, clonedIcon) : clonedIcon);
84
+ color: color,
85
+ children: spin ? /*#__PURE__*/jsxRuntime.jsx(SpinningIcon, {
86
+ children: clonedIcon
87
+ }) : clonedIcon
88
+ });
82
89
  }
83
90
 
84
- const PrimitiveText = reactNative.Text;
91
+ const KittBreakpoints = {
92
+ /**
93
+ * min-width: 0
94
+ */
95
+ BASE: 0,
96
+
97
+ /**
98
+ * min-width: 480px
99
+ */
100
+ SMALL: 480,
101
+
102
+ /**
103
+ * min-width: 768px
104
+ */
105
+ MEDIUM: 768,
106
+
107
+ /**
108
+ * min-width: 1024px
109
+ */
110
+ LARGE: 1024,
111
+
112
+ /**
113
+ * min-width: 1280px
114
+ */
115
+ WIDE: 1280
116
+ };
117
+ const KittBreakpointsMax = {
118
+ /**
119
+ * max-width: 479px
120
+ */
121
+ BASE: KittBreakpoints.SMALL - 1,
122
+
123
+ /**
124
+ * max-width: 767px
125
+ */
126
+ SMALL: KittBreakpoints.MEDIUM - 1,
127
+
128
+ /**
129
+ * max-width: 1023px
130
+ */
131
+ MEDIUM: KittBreakpoints.LARGE - 1,
85
132
 
86
- const TypographyTypeContext = /*#__PURE__*/React.createContext(undefined);
87
- const TypographyColorContext = /*#__PURE__*/React.createContext('black');
133
+ /**
134
+ * max-width: 1279px
135
+ */
136
+ LARGE: KittBreakpoints.WIDE - 1
137
+ };
138
+
139
+ const IsHeaderTypographyContext = /*#__PURE__*/react.createContext(undefined);
140
+ const TypographyColorContext = /*#__PURE__*/react.createContext('black');
88
141
  function useTypographyColor() {
89
- return React.useContext(TypographyColorContext);
142
+ return react.useContext(TypographyColorContext);
90
143
  }
91
- const StyledTypography = /*#__PURE__*/styled__default(PrimitiveText).withConfig({
144
+ const getTypographyTypeConfigKey = theme => {
145
+ const isMediumOrAbove = theme.responsive.matchWindowSize({
146
+ minWidth: KittBreakpoints.MEDIUM
147
+ });
148
+ return isMediumOrAbove ? 'mediumAndWide' : 'baseAndSmall';
149
+ };
150
+
151
+ const isTypeHeader = type => type.startsWith('header');
152
+
153
+ const isTypographyHeader = (type, typographyIsHeaderInContext) => {
154
+ if (type) return isTypeHeader(type);
155
+ if (typographyIsHeaderInContext != null) return typographyIsHeaderInContext;
156
+ throw new Error('You must set a "base" prop or wrap this Typography in one that does.');
157
+ };
158
+ function getTypographyTypeConfig(type, theme) {
159
+ if (isTypographyHeader(type, undefined)) {
160
+ return theme.kitt.typography.types.headers.configs[type];
161
+ }
162
+
163
+ return theme.kitt.typography.types.bodies.configs[type];
164
+ }
165
+ const StyledTypography = /*#__PURE__*/styled__default.Text.withConfig({
92
166
  displayName: "Typography__StyledTypography",
93
167
  componentId: "kitt-universal__sc-1dz700q-0"
94
168
  })(["", " ", ""], ({
95
169
  theme,
96
- isHeader,
97
- type,
98
- variant
170
+ $isHeader,
171
+ $typeForCurrentWindowSize,
172
+ $variant
99
173
  }) => {
100
174
  const {
101
175
  headers,
102
176
  bodies
103
177
  } = theme.kitt.typography.types;
178
+ const typeConfigKey = getTypographyTypeConfigKey(theme);
104
179
  return `
105
180
  /* type */
106
- ${!type ? '' : `
107
- font-family: ${isHeader ? headers.fontFamily[variant] : bodies.fontFamily[variant]};
108
- font-size: ${isHeader ? headers.configs[type].baseAndSmall.fontSize : bodies.configs[type].baseAndSmall.fontSize};
109
- line-height: ${isHeader ? headers.configs[type].baseAndSmall.lineHeight : bodies.configs[type].baseAndSmall.lineHeight};
181
+ ${!$typeForCurrentWindowSize ? '' : `
182
+ font-family: ${$isHeader ? headers.fontFamily[$variant] : bodies.fontFamily[$variant]};
183
+ font-size: ${$isHeader ? headers.configs[$typeForCurrentWindowSize][typeConfigKey].fontSize : bodies.configs[$typeForCurrentWindowSize][typeConfigKey].fontSize};
184
+ line-height: ${$isHeader ? headers.configs[$typeForCurrentWindowSize][typeConfigKey].lineHeight : bodies.configs[$typeForCurrentWindowSize][typeConfigKey].lineHeight};
110
185
  `}
111
186
 
112
187
  /* variant */
113
- font-weight: ${isHeader ? headers.fontWeight : bodies.fontWeight[variant]};
114
- font-style: ${isHeader ? headers.fontStyle : bodies.fontStyle[variant]};
188
+ font-weight: ${$isHeader ? headers.fontWeight : bodies.fontWeight[$variant]};
189
+ font-style: ${$isHeader ? headers.fontStyle : bodies.fontStyle[$variant]};
115
190
  `;
116
191
  }, ({
117
192
  theme,
118
- color
119
- }) => !color ? '' : `
120
- color: ${theme.kitt.typography.colors[color]};
121
- text-decoration-color: ${theme.kitt.typography.colors[color]};
193
+ $color
194
+ }) => !$color ? '' : `
195
+ color: ${theme.kitt.typography.colors[$color]};
196
+ text-decoration-color: ${theme.kitt.typography.colors[$color]};
122
197
  `);
123
-
124
- const isTypeHeader = type => type.startsWith('header');
125
-
126
- const isTypographyHeader = (base, typeInContext) => {
127
- if (base) return isTypeHeader(base);
128
- if (typeInContext) return isTypeHeader(typeInContext);
129
- throw new Error('You must set a "base" prop or wrap this Typography in one that does.');
130
- };
131
-
198
+ function useTypographyTypeForCurrentWindowSize(base, small, medium, large) {
199
+ const {
200
+ width
201
+ } = reactNative.useWindowDimensions();
202
+ if (large && width >= KittBreakpoints.LARGE) return large;
203
+ if (medium && width >= KittBreakpoints.MEDIUM) return medium;
204
+ if (small && width >= KittBreakpoints.SMALL) return small;
205
+ return base;
206
+ }
132
207
  function Typography({
133
208
  accessibilityRole,
134
209
  base,
210
+ small,
211
+ medium,
212
+ large,
135
213
  variant,
136
214
  color,
137
215
  ...otherProps
138
216
  }) {
139
- const typeInContext = React.useContext(TypographyTypeContext);
140
- const isHeader = isTypographyHeader(base, typeInContext);
141
- const nonNullableVariant = variant ?? (isHeader ? 'bold' : 'regular');
142
- const colorWithDefaultToBlack = color ?? (typeInContext ? undefined : 'black');
143
- const content = base ?
144
- /*#__PURE__*/
145
- // use the type and pass the type to the context for children
146
- React__default.createElement(TypographyTypeContext.Provider, {
147
- value: base
148
- }, /*#__PURE__*/React__default.createElement(StyledTypography, _extends__default({
149
- color: colorWithDefaultToBlack,
150
- isHeader: isHeader,
151
- type: base,
152
- variant: nonNullableVariant,
153
- accessibilityRole: accessibilityRole || undefined
154
- }, otherProps))) : /*#__PURE__*/React__default.createElement(StyledTypography, _extends__default({
155
- color: colorWithDefaultToBlack,
156
- isHeader: isHeader,
157
- variant: nonNullableVariant,
158
- accessibilityRole: accessibilityRole || undefined
159
- }, otherProps));
160
- return color ? /*#__PURE__*/React__default.createElement(TypographyColorContext.Provider, {
161
- value: color
162
- }, content) : content;
217
+ const isHeaderTypographyInContext = react.useContext(IsHeaderTypographyContext);
218
+ const typeForCurrentWindowSize = useTypographyTypeForCurrentWindowSize(base, small, medium, large);
219
+ const isHeader = isTypographyHeader(typeForCurrentWindowSize, isHeaderTypographyInContext);
220
+ const nonNullableVariant = variant ?? (isHeader ? 'bold' : 'regular'); // if isHeaderTypographyInContext exists, it means we are inside another typography so we don't want to
221
+ // redefine the color, just inherit from it
222
+
223
+ const colorWithDefaultToBlack = color ?? (isHeaderTypographyInContext !== undefined ? undefined : 'black');
224
+ const content = base ? /*#__PURE__*/jsxRuntime.jsx(IsHeaderTypographyContext.Provider, {
225
+ value: isHeader,
226
+ children: /*#__PURE__*/jsxRuntime.jsx(StyledTypography, {
227
+ $color: colorWithDefaultToBlack,
228
+ $isHeader: isHeader,
229
+ $typeForCurrentWindowSize: typeForCurrentWindowSize,
230
+ $variant: nonNullableVariant,
231
+ accessibilityRole: accessibilityRole || undefined,
232
+ ...otherProps
233
+ })
234
+ }) : /*#__PURE__*/jsxRuntime.jsx(StyledTypography, {
235
+ $color: colorWithDefaultToBlack,
236
+ $isHeader: isHeader,
237
+ $variant: nonNullableVariant,
238
+ accessibilityRole: accessibilityRole || undefined,
239
+ ...otherProps
240
+ });
241
+ return color ? /*#__PURE__*/jsxRuntime.jsx(TypographyColorContext.Provider, {
242
+ value: color,
243
+ children: content
244
+ }) : content;
163
245
  }
164
246
 
165
247
  function TypographyText(props) {
166
- return /*#__PURE__*/React__default.createElement(Typography, _extends__default({
167
- accessibilityRole: null
168
- }, props));
248
+ return /*#__PURE__*/jsxRuntime.jsx(Typography, {
249
+ accessibilityRole: null,
250
+ ...props
251
+ });
169
252
  }
170
253
 
171
254
  function TypographyParagraph(props) {
172
- return /*#__PURE__*/React__default.createElement(Typography, _extends__default({
173
- accessibilityRole: "paragraph"
174
- }, props));
255
+ return /*#__PURE__*/jsxRuntime.jsx(Typography, {
256
+ accessibilityRole: "paragraph",
257
+ ...props
258
+ });
175
259
  }
176
260
 
177
261
  const createHeading = (level, defaultBase) => {
178
262
  // https://github.com/necolas/react-native-web/issues/401
179
263
  function TypographyHeading(props) {
180
- return /*#__PURE__*/React__default.createElement(Typography, _extends__default({
264
+ return /*#__PURE__*/jsxRuntime.jsx(Typography, {
181
265
  accessibilityRole: "header",
182
- base: defaultBase
183
- }, props, {
266
+ base: defaultBase,
267
+ ...props,
184
268
  accessibilityLevel: level
185
- }));
269
+ });
186
270
  }
187
271
 
188
272
  TypographyHeading.displayName = `TypographyHeading${level}`;
@@ -217,7 +301,7 @@ const getFirstCharacter = string => string ? string[0] : '';
217
301
 
218
302
  const getInitials = (firstname, lastname) => (getFirstCharacter(firstname) + getFirstCharacter(lastname)).toUpperCase();
219
303
 
220
- const StyledAvatarView = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
304
+ const StyledAvatarView = /*#__PURE__*/styled__default.View.withConfig({
221
305
  displayName: "Avatar__StyledAvatarView",
222
306
  componentId: "kitt-universal__sc-9miubv-0"
223
307
  })(["border-radius:", "px;background-color:", ";height:", "px;width:", "px;overflow:hidden;align-items:center;justify-content:center;"], ({
@@ -240,7 +324,7 @@ function AvatarContent({
240
324
  light
241
325
  }) {
242
326
  if (src) {
243
- return /*#__PURE__*/React__default.createElement(reactNative.Image, {
327
+ return /*#__PURE__*/jsxRuntime.jsx(reactNative.Image, {
244
328
  source: {
245
329
  uri: src
246
330
  },
@@ -252,15 +336,16 @@ function AvatarContent({
252
336
  }
253
337
 
254
338
  if (firstname && lastname) {
255
- return /*#__PURE__*/React__default.createElement(Typography.Text, {
339
+ return /*#__PURE__*/jsxRuntime.jsx(Typography.Text, {
256
340
  base: "body-small",
257
341
  variant: "bold",
258
- color: light ? 'black' : 'white'
259
- }, getInitials(firstname, lastname));
342
+ color: light ? 'black' : 'white',
343
+ children: getInitials(firstname, lastname)
344
+ });
260
345
  }
261
346
 
262
- return /*#__PURE__*/React__default.createElement(Icon, {
263
- icon: /*#__PURE__*/React__default.createElement(kittIcons.UserIcon, null),
347
+ return /*#__PURE__*/jsxRuntime.jsx(Icon, {
348
+ icon: /*#__PURE__*/jsxRuntime.jsx(kittIcons.UserIcon, {}),
264
349
  color: light ? 'black' : 'white',
265
350
  size: size / 2
266
351
  });
@@ -270,56 +355,20 @@ function Avatar({
270
355
  size = 40,
271
356
  ...rest
272
357
  }) {
273
- return /*#__PURE__*/React__default.createElement(StyledAvatarView, _extends__default({}, rest, {
274
- size: size
275
- }), /*#__PURE__*/React__default.createElement(AvatarContent, _extends__default({}, rest, {
276
- size: size
277
- })));
358
+ return /*#__PURE__*/jsxRuntime.jsx(StyledAvatarView, { ...rest,
359
+ size: size,
360
+ children: /*#__PURE__*/jsxRuntime.jsx(AvatarContent, { ...rest,
361
+ size: size
362
+ })
363
+ });
278
364
  }
279
365
 
280
- const PrimitivePressable = reactNative.Pressable;
281
-
282
- const ButtonContainer = /*#__PURE__*/styled__default(PrimitivePressable).withConfig({
283
- displayName: "ButtonContainer",
284
- componentId: "kitt-universal__sc-ofbpwm-0"
285
- })(["min-width:", ";max-width:", ";width:", ";min-height:", ";background-color:", ";padding:", ";flex-direction:row;align-self:flex-start;border-radius:", ";border-color:", ";border-width:", ";"], ({
286
- theme
287
- }) => theme.kitt.button.minWidth, ({
288
- theme,
289
- stretch
290
- }) => stretch ? 'auto' : theme.kitt.button.maxWidth, ({
291
- stretch
292
- }) => stretch ? '100%' : 'auto', ({
293
- theme
294
- }) => theme.kitt.button.minHeight, ({
295
- theme,
296
- isPressed,
297
- disabled,
298
- type
299
- }) => {
300
- if (disabled) {
301
- return theme.kitt.button[type].disabledBackgroundColor;
302
- }
303
-
304
- return isPressed ? theme.kitt.button[type].pressedBackgroundColor : theme.kitt.button[type].backgroundColor;
305
- }, ({
306
- theme
307
- }) => theme.kitt.button.contentPadding.default, ({
308
- theme
309
- }) => theme.kitt.button.borderRadius, ({
310
- theme,
311
- disabled,
312
- type
313
- }) => disabled ? theme.kitt.button[type].disabledBorderColor : 'transparent', ({
314
- theme
315
- }) => theme.kitt.button.borderWidth);
316
-
317
366
  function TypographyIconInheritColor(props) {
318
367
  const color = useTypographyColor();
319
368
  const theme = /*#__PURE__*/styled.useTheme();
320
- return /*#__PURE__*/React__default.createElement(Icon, _extends__default({}, props, {
369
+ return /*#__PURE__*/jsxRuntime.jsx(Icon, { ...props,
321
370
  color: theme.kitt.typography.colors[color]
322
- }));
371
+ });
323
372
  }
324
373
 
325
374
  function TypographyIconSpecifiedColor({
@@ -327,9 +376,9 @@ function TypographyIconSpecifiedColor({
327
376
  ...otherProps
328
377
  }) {
329
378
  const theme = /*#__PURE__*/styled.useTheme();
330
- return /*#__PURE__*/React__default.createElement(Icon, _extends__default({}, otherProps, {
379
+ return /*#__PURE__*/jsxRuntime.jsx(Icon, { ...otherProps,
331
380
  color: theme.kitt.typography.colors[color]
332
- }));
381
+ });
333
382
  }
334
383
 
335
384
  function TypographyIcon({
@@ -337,12 +386,14 @@ function TypographyIcon({
337
386
  ...otherProps
338
387
  }) {
339
388
  if (color) {
340
- return /*#__PURE__*/React__default.createElement(TypographyIconSpecifiedColor, _extends__default({
341
- color: color
342
- }, otherProps));
389
+ return /*#__PURE__*/jsxRuntime.jsx(TypographyIconSpecifiedColor, {
390
+ color: color,
391
+ ...otherProps
392
+ });
343
393
  }
344
394
 
345
- return /*#__PURE__*/React__default.createElement(TypographyIconInheritColor, otherProps);
395
+ return /*#__PURE__*/jsxRuntime.jsx(TypographyIconInheritColor, { ...otherProps
396
+ });
346
397
  }
347
398
 
348
399
  const getTextColorByType = (type, isPressed, disabled) => {
@@ -368,14 +419,14 @@ const ButtonText = /*#__PURE__*/styled__default(Typography.Text).withConfig({
368
419
  displayName: "ButtonContent__ButtonText",
369
420
  componentId: "kitt-universal__sc-dnyw3n-0"
370
421
  })(["text-align:center;"]);
371
- const Content$1 = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
422
+ const Content$1 = /*#__PURE__*/styled__default.View.withConfig({
372
423
  displayName: "ButtonContent__Content",
373
424
  componentId: "kitt-universal__sc-dnyw3n-1"
374
425
  })(["flex-direction:row;align-items:center;justify-content:center;flex:", ";"], ({
375
426
  stretch,
376
427
  iconOnly
377
428
  }) => `${stretch || iconOnly ? 1 : 0} 1 auto`);
378
- const IconContainer$1 = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
429
+ const IconContainer$1 = /*#__PURE__*/styled__default.View.withConfig({
379
430
  displayName: "ButtonContent__IconContainer",
380
431
  componentId: "kitt-universal__sc-dnyw3n-2"
381
432
  })(["", ""], ({
@@ -399,15 +450,16 @@ function ButtonIcon({
399
450
  iconPosition,
400
451
  testID
401
452
  }) {
402
- return /*#__PURE__*/React__default.createElement(IconContainer$1, {
403
- iconPosition: iconPosition
404
- }, /*#__PURE__*/React__default.createElement(TypographyIcon, {
405
- icon: icon,
406
- spin: spin,
407
- color: color,
408
- size: size,
409
- testID: testID
410
- }));
453
+ return /*#__PURE__*/jsxRuntime.jsx(IconContainer$1, {
454
+ iconPosition: iconPosition,
455
+ children: /*#__PURE__*/jsxRuntime.jsx(TypographyIcon, {
456
+ icon: icon,
457
+ spin: spin,
458
+ color: color,
459
+ size: size,
460
+ testID: testID
461
+ })
462
+ });
411
463
  }
412
464
 
413
465
  function ButtonContent({
@@ -435,38 +487,67 @@ function ButtonContent({
435
487
  }
436
488
 
437
489
  if (!children) {
438
- return /*#__PURE__*/React__default.createElement(Content$1, {
490
+ return /*#__PURE__*/jsxRuntime.jsx(Content$1, {
439
491
  iconOnly: true,
440
- stretch: stretch
441
- }, /*#__PURE__*/React__default.createElement(TypographyIcon, _extends__default({}, sharedIconProps, {
442
- icon: icon
443
- })));
492
+ stretch: stretch,
493
+ children: /*#__PURE__*/jsxRuntime.jsx(TypographyIcon, { ...sharedIconProps,
494
+ icon: icon
495
+ })
496
+ });
444
497
  }
445
498
 
446
- return /*#__PURE__*/React__default.createElement(Content$1, {
447
- stretch: stretch
448
- }, icon && iconPosition === 'left' ? /*#__PURE__*/React__default.createElement(ButtonIcon, _extends__default({}, sharedIconProps, {
449
- icon: icon,
450
- iconPosition: iconPosition,
451
- testID: "button-left-icon"
452
- })) : null, /*#__PURE__*/React__default.createElement(ButtonText, {
453
- base: "body",
454
- color: color,
455
- variant: "bold"
456
- }, children), icon && iconPosition === 'right' ? /*#__PURE__*/React__default.createElement(ButtonIcon, _extends__default({}, sharedIconProps, {
457
- icon: icon,
458
- iconPosition: iconPosition
459
- })) : null);
499
+ return /*#__PURE__*/jsxRuntime.jsxs(Content$1, {
500
+ stretch: stretch,
501
+ children: [icon && iconPosition === 'left' ? /*#__PURE__*/jsxRuntime.jsx(ButtonIcon, { ...sharedIconProps,
502
+ icon: icon,
503
+ iconPosition: iconPosition,
504
+ testID: "button-left-icon"
505
+ }) : null, /*#__PURE__*/jsxRuntime.jsx(ButtonText, {
506
+ base: "body",
507
+ color: color,
508
+ variant: "bold",
509
+ children: children
510
+ }), icon && iconPosition === 'right' ? /*#__PURE__*/jsxRuntime.jsx(ButtonIcon, { ...sharedIconProps,
511
+ icon: icon,
512
+ iconPosition: iconPosition
513
+ }) : null]
514
+ });
460
515
  }
461
516
 
462
- const useButton = () => {
463
- const [isPressed, setIsPressed] = React.useState(false);
464
- return {
465
- isPressed,
466
- handleButtonPressIn: () => setIsPressed(true),
467
- handleButtonPressOut: () => setIsPressed(false)
468
- };
469
- };
517
+ const ButtonPressable = /*#__PURE__*/styled__default.Pressable.withConfig({
518
+ displayName: "ButtonPressable",
519
+ componentId: "kitt-universal__sc-7ckel6-0"
520
+ })(["min-width:", ";max-width:", ";width:", ";min-height:", ";background-color:", ";padding:", ";flex-direction:row;align-self:flex-start;border-radius:", ";border-color:", ";border-width:", ";"], ({
521
+ theme
522
+ }) => theme.kitt.button.minWidth, ({
523
+ theme,
524
+ stretch
525
+ }) => stretch ? 'auto' : theme.kitt.button.maxWidth, ({
526
+ stretch
527
+ }) => stretch ? '100%' : 'auto', ({
528
+ theme
529
+ }) => theme.kitt.button.minHeight, ({
530
+ theme,
531
+ isPressed,
532
+ disabled,
533
+ type
534
+ }) => {
535
+ if (disabled) {
536
+ return theme.kitt.button[type].disabledBackgroundColor;
537
+ }
538
+
539
+ return isPressed ? theme.kitt.button[type].pressedBackgroundColor : theme.kitt.button[type].backgroundColor;
540
+ }, ({
541
+ theme
542
+ }) => theme.kitt.button.contentPadding.default, ({
543
+ theme
544
+ }) => theme.kitt.button.borderRadius, ({
545
+ theme,
546
+ disabled,
547
+ type
548
+ }) => disabled ? theme.kitt.button[type].disabledBorderColor : 'transparent', ({
549
+ theme
550
+ }) => theme.kitt.button.borderWidth);
470
551
 
471
552
  function Button({
472
553
  children,
@@ -476,37 +557,39 @@ function Button({
476
557
  iconSpin,
477
558
  stretch,
478
559
  disabled,
479
- onPress,
480
- testID
560
+ testID,
561
+ href,
562
+ hrefAttrs,
563
+ onPress
481
564
  }) {
482
- const {
483
- isPressed,
484
- handleButtonPressIn,
485
- handleButtonPressOut
486
- } = useButton();
565
+ const [isPressed, setIsPressed] = react.useState(false);
487
566
  const sharedProps = {
488
567
  type,
489
568
  stretch,
490
569
  disabled
491
570
  };
492
- return /*#__PURE__*/React__default.createElement(ButtonContainer // eslint-disable-next-line unicorn/expiring-todo-comments
571
+ return /*#__PURE__*/jsxRuntime.jsx(ButtonPressable // eslint-disable-next-line unicorn/expiring-todo-comments
493
572
  // TODO: When designs are defined, update with the proper onPress styles to mimic TouchableHighlight
494
573
  // underlayColor={globalTheme.button[type].pressedBackgroundColor}
495
- , _extends__default({}, sharedProps, {
574
+ , { ...sharedProps,
496
575
  isPressed: isPressed,
497
576
  accessibilityRole: "button",
498
577
  testID: testID,
578
+ href: href,
579
+ hrefAttrs: hrefAttrs,
499
580
  onPress: onPress,
500
- onPressIn: handleButtonPressIn,
501
- onPressOut: handleButtonPressOut
502
- }), /*#__PURE__*/React__default.createElement(ButtonContent, _extends__default({}, sharedProps, {
503
- icon: icon,
504
- iconPosition: iconPosition,
505
- iconSpin: iconSpin
506
- }), children));
581
+ onPressIn: () => setIsPressed(true),
582
+ onPressOut: () => setIsPressed(false),
583
+ children: /*#__PURE__*/jsxRuntime.jsx(ButtonContent, { ...sharedProps,
584
+ icon: icon,
585
+ iconPosition: iconPosition,
586
+ iconSpin: iconSpin,
587
+ children: children
588
+ })
589
+ });
507
590
  }
508
591
 
509
- const Container$5 = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
592
+ const Container$6 = /*#__PURE__*/styled__default.View.withConfig({
510
593
  displayName: "Card__Container",
511
594
  componentId: "kitt-universal__sc-1n9psug-0"
512
595
  })(["background-color:", ";padding:", ";border-radius:", ";border-width:", ";border-color:", ";"], ({
@@ -526,9 +609,79 @@ function Card({
526
609
  children,
527
610
  type
528
611
  }) {
529
- return /*#__PURE__*/React__default.createElement(Container$5, {
530
- type: type
531
- }, children);
612
+ return /*#__PURE__*/jsxRuntime.jsx(Container$6, {
613
+ type: type,
614
+ children: children
615
+ });
616
+ }
617
+
618
+ const StyledEmoji = /*#__PURE__*/styled__default.Image.withConfig({
619
+ displayName: "Emoji__StyledEmoji",
620
+ componentId: "kitt-universal__sc-ggl6wj-0"
621
+ })(["width:", "px;height:", "px;"], ({
622
+ size
623
+ }) => size, ({
624
+ size
625
+ }) => size);
626
+ function Emoji({
627
+ emoji,
628
+ size,
629
+ style
630
+ }) {
631
+ const [emojiData] = react.useMemo(() => twemojiParser.parse(emoji, {
632
+ // on native plaforms, you can't display svg as Image
633
+ assetType: 'svg'
634
+ }), [emoji]);
635
+ if (!emojiData) return null;
636
+ return /*#__PURE__*/jsxRuntime.jsx(StyledEmoji, {
637
+ size: size,
638
+ accessibilityLabel: emojiData.text,
639
+ source: {
640
+ uri: emojiData.url
641
+ },
642
+ style: style
643
+ });
644
+ }
645
+
646
+ const defaultOpenLinkBehavior = {
647
+ native: 'openInModal',
648
+ web: 'targetBlank'
649
+ };
650
+
651
+ function ExternalLink({
652
+ as: Component,
653
+ href,
654
+ openLinkBehavior = defaultOpenLinkBehavior,
655
+ onPress,
656
+ ...rest
657
+ }) {
658
+ return /*#__PURE__*/jsxRuntime.jsx(Component, { ...rest,
659
+ onPress: () => {
660
+ if (onPress) onPress();
661
+ if (!href) return;
662
+
663
+ switch (openLinkBehavior.native) {
664
+ case 'openInModal':
665
+ case undefined:
666
+ WebBrowser.openBrowserAsync(href).catch(err => {
667
+ console.error(`An error occurred while opening ${href}`, err);
668
+ });
669
+ break;
670
+
671
+ case 'openBrowserApp':
672
+ reactNative.Linking.openURL(href).catch(err => {
673
+ console.error(`An error occurred while opening ${href}`, err);
674
+ });
675
+ break;
676
+
677
+ default:
678
+ if ((process.env.NODE_ENV !== "production")) {
679
+ throw new Error(`Invalid ExternalLink native behavior: ${openLinkBehavior.native}`);
680
+ }
681
+
682
+ }
683
+ }
684
+ });
532
685
  }
533
686
 
534
687
  const getColorFromState = state => {
@@ -546,66 +699,19 @@ function InputFeedback({
546
699
  testID,
547
700
  children
548
701
  }) {
549
- return /*#__PURE__*/React__default.createElement(Typography.Text, {
702
+ return /*#__PURE__*/jsxRuntime.jsx(Typography.Text, {
550
703
  base: "body-small",
551
704
  color: getColorFromState(state),
552
- testID: testID
553
- }, children);
705
+ testID: testID,
706
+ children: children
707
+ });
554
708
  }
555
709
 
556
- const KittBreakpoints = {
557
- /**
558
- * min-width: 0
559
- */
560
- BASE: 0,
561
-
562
- /**
563
- * min-width: 480px
564
- */
565
- SMALL: 480,
566
-
567
- /**
568
- * min-width: 768px
569
- */
570
- MEDIUM: 768,
571
-
572
- /**
573
- * min-width: 1024px
574
- */
575
- LARGE: 1024,
576
-
577
- /**
578
- * min-width: 1280px
579
- */
580
- WIDE: 1280
581
- };
582
- const KittBreakpointsMax = {
583
- /**
584
- * max-width: 479px
585
- */
586
- BASE: KittBreakpoints.SMALL - 1,
587
-
588
- /**
589
- * max-width: 767px
590
- */
591
- SMALL: KittBreakpoints.MEDIUM - 1,
592
-
593
- /**
594
- * max-width: 1023px
595
- */
596
- MEDIUM: KittBreakpoints.LARGE - 1,
597
-
598
- /**
599
- * max-width: 1279px
600
- */
601
- LARGE: KittBreakpoints.WIDE - 1
602
- };
603
-
604
- const FieldContainer = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
710
+ const FieldContainer = /*#__PURE__*/styled__default.View.withConfig({
605
711
  displayName: "InputField__FieldContainer",
606
712
  componentId: "kitt-universal__sc-13fkixs-0"
607
713
  })(["padding:5px 0 10px;"]);
608
- const FeedbackContainer = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
714
+ const FeedbackContainer = /*#__PURE__*/styled__default.View.withConfig({
609
715
  displayName: "InputField__FeedbackContainer",
610
716
  componentId: "kitt-universal__sc-13fkixs-1"
611
717
  })(["", ";"], ({
@@ -613,13 +719,13 @@ const FeedbackContainer = /*#__PURE__*/styled__default(PrimitiveView).withConfig
613
719
  }) => theme.responsive.ifWindowSizeMatches({
614
720
  minWidth: KittBreakpoints.SMALL
615
721
  }, 'padding-top: 10px', 'padding-top: 5px'));
616
- const FieldLabelContainer = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
722
+ const FieldLabelContainer = /*#__PURE__*/styled__default.View.withConfig({
617
723
  displayName: "InputField__FieldLabelContainer",
618
724
  componentId: "kitt-universal__sc-13fkixs-2"
619
725
  })(["flex-direction:row;align-items:center;padding-bottom:", "px;"], ({
620
726
  theme
621
727
  }) => theme.kitt.forms.inputField.labelContainerPaddingBottom);
622
- const LabelContainer = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
728
+ const LabelContainer = /*#__PURE__*/styled__default.View.withConfig({
623
729
  displayName: "InputField__LabelContainer",
624
730
  componentId: "kitt-universal__sc-13fkixs-3"
625
731
  })(["margin-right:", "px;"], ({
@@ -631,12 +737,20 @@ function InputField({
631
737
  input,
632
738
  feedback
633
739
  }) {
634
- return /*#__PURE__*/React__default.createElement(FieldContainer, null, label ? /*#__PURE__*/React__default.createElement(FieldLabelContainer, null, /*#__PURE__*/React__default.createElement(LabelContainer, null, label), labelFeedback) : null, input, feedback ? /*#__PURE__*/React__default.createElement(FeedbackContainer, null, feedback) : null);
740
+ return /*#__PURE__*/jsxRuntime.jsxs(FieldContainer, {
741
+ children: [label ? /*#__PURE__*/jsxRuntime.jsxs(FieldLabelContainer, {
742
+ children: [/*#__PURE__*/jsxRuntime.jsx(LabelContainer, {
743
+ children: label
744
+ }), labelFeedback]
745
+ }) : null, input, feedback ? /*#__PURE__*/jsxRuntime.jsx(FeedbackContainer, {
746
+ children: feedback
747
+ }) : null]
748
+ });
635
749
  }
636
750
 
637
751
  const useInputText = () => {
638
- const [isFocused, setIsFocused] = React.useState(false);
639
- const [isPasswordVisible, setIsPasswordVisible] = React.useState(false);
752
+ const [isFocused, setIsFocused] = react.useState(false);
753
+ const [isPasswordVisible, setIsPasswordVisible] = react.useState(false);
640
754
  return {
641
755
  isFocused,
642
756
  handleInputFocus: () => setIsFocused(true),
@@ -658,7 +772,10 @@ const styledTextInputMixin = /*#__PURE__*/styled.css(["background-color:", ";bor
658
772
  state
659
773
  }) => theme.kitt.forms.input.states[state].borderColor, ({
660
774
  theme
661
- }) => theme.kitt.typography.types.bodies.configs.body.baseAndSmall.fontSize, ({
775
+ }) => {
776
+ const typeConfigKey = getTypographyTypeConfigKey(theme);
777
+ return theme.kitt.typography.types.bodies.configs.body[typeConfigKey].fontSize;
778
+ }, ({
662
779
  theme,
663
780
  state
664
781
  }) => theme.kitt.typography.colors[theme.kitt.forms.input.states[state].color], ({
@@ -670,13 +787,17 @@ const Input = /*#__PURE__*/styled__default(reactNative.TextInput).withConfig({
670
787
  })(["", " padding:", ";line-height:", ";min-height:", "px;"], styledTextInputMixin, ({
671
788
  theme,
672
789
  multiline
673
- }) => !multiline && reactNative.Platform.OS === 'ios' ? theme.kitt.forms.input.paddingSingleLineIOS : theme.kitt.forms.input.padding, ({
790
+ }) => !multiline && "web" === 'ios' ? theme.kitt.forms.input.paddingSingleLineIOS : theme.kitt.forms.input.padding, ({
674
791
  theme,
675
792
  multiline
676
- }) => !multiline && reactNative.Platform.OS === 'ios' ? 0 : theme.kitt.typography.types.bodies.configs.body.baseAndSmall.lineHeight, ({
793
+ }) => {
794
+ if (!multiline && "web" === 'ios') return 0;
795
+ const typeConfigKey = getTypographyTypeConfigKey(theme);
796
+ return theme.kitt.typography.types.bodies.configs.body[typeConfigKey].lineHeight;
797
+ }, ({
677
798
  minHeight
678
799
  }) => minHeight);
679
- const Container$4 = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
800
+ const Container$5 = /*#__PURE__*/styled__default.View.withConfig({
680
801
  displayName: "InputText__Container",
681
802
  componentId: "kitt-universal__sc-uke279-1"
682
803
  })(["margin-top:", ";margin-bottom:", ";"], ({
@@ -684,7 +805,7 @@ const Container$4 = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
684
805
  }) => theme.kitt.forms.input.marginTop, ({
685
806
  theme
686
807
  }) => theme.kitt.forms.input.marginBottom);
687
- const PasswordButtonContainer = /*#__PURE__*/styled__default(PrimitivePressable).withConfig({
808
+ const PasswordButtonContainer = /*#__PURE__*/styled__default.Pressable.withConfig({
688
809
  displayName: "InputText__PasswordButtonContainer",
689
810
  componentId: "kitt-universal__sc-uke279-2"
690
811
  })(["position:absolute;right:0;top:0;bottom:0;justify-content:center;padding:", "px;"], ({
@@ -726,7 +847,7 @@ const textContentTypeByType = {
726
847
  password: 'password',
727
848
  username: 'username'
728
849
  };
729
- const InputText = /*#__PURE__*/React.forwardRef(({
850
+ const InputText = /*#__PURE__*/react.forwardRef(({
730
851
  id,
731
852
  minHeight = 0,
732
853
  type,
@@ -750,50 +871,55 @@ const InputText = /*#__PURE__*/React.forwardRef(({
750
871
  isDisabled: disabled,
751
872
  formState
752
873
  });
753
- return /*#__PURE__*/React__default.createElement(Container$4, null, /*#__PURE__*/React__default.createElement(Input, _extends__default({
754
- ref: ref,
755
- nativeID: id,
756
- editable: !disabled,
757
- keyboardType: keyboardTypeByTextInputType[type],
758
- autoCompleteType: autoCompleteTypeByType[type],
759
- autoCorrect: autoCorrectByType[type],
760
- minHeight: minHeight,
761
- textContentType: textContentTypeByType[type],
762
- placeholderTextColor: theme.kitt.typography.colors[theme.kitt.forms.input.placeholderColor],
763
- selectionColor: theme.kitt.forms.input.selectionColor,
764
- secureTextEntry: type === 'password' && !isPasswordVisible
765
- }, props, {
766
- state: state,
767
- onFocus: e => {
768
- handleInputFocus();
769
- if (onFocus) onFocus(e);
770
- },
771
- onBlur: e => {
772
- handleInputBlur();
773
- if (onBlur) onBlur(e);
774
- }
775
- })), type === 'password' && !disabled && /*#__PURE__*/React__default.createElement(PasswordButtonContainer, {
776
- accessibilityRole: "button",
777
- onPress: togglePasswordVisibility
778
- }, /*#__PURE__*/React__default.createElement(TypographyIcon, {
779
- icon: isPasswordVisible ? /*#__PURE__*/React__default.createElement(kittIcons.EyeIcon, null) : /*#__PURE__*/React__default.createElement(kittIcons.EyeOffIcon, null),
780
- size: theme.kitt.forms.input.passwordButtonIconSize,
781
- color: theme.kitt.forms.input.states[state].passwordButtonIconColor
782
- })));
874
+ return /*#__PURE__*/jsxRuntime.jsxs(Container$5, {
875
+ children: [/*#__PURE__*/jsxRuntime.jsx(Input, {
876
+ ref: ref,
877
+ nativeID: id,
878
+ editable: !disabled,
879
+ keyboardType: keyboardTypeByTextInputType[type],
880
+ autoCompleteType: autoCompleteTypeByType[type],
881
+ autoCorrect: autoCorrectByType[type],
882
+ minHeight: minHeight,
883
+ textContentType: textContentTypeByType[type],
884
+ placeholderTextColor: theme.kitt.typography.colors[theme.kitt.forms.input.placeholderColor],
885
+ selectionColor: theme.kitt.forms.input.selectionColor,
886
+ secureTextEntry: type === 'password' && !isPasswordVisible,
887
+ ...props,
888
+ state: state,
889
+ onFocus: e => {
890
+ handleInputFocus();
891
+ if (onFocus) onFocus(e);
892
+ },
893
+ onBlur: e => {
894
+ handleInputBlur();
895
+ if (onBlur) onBlur(e);
896
+ }
897
+ }), type === 'password' && !disabled && /*#__PURE__*/jsxRuntime.jsx(PasswordButtonContainer, {
898
+ accessibilityRole: "button",
899
+ onPress: togglePasswordVisibility,
900
+ children: /*#__PURE__*/jsxRuntime.jsx(TypographyIcon, {
901
+ icon: isPasswordVisible ? /*#__PURE__*/jsxRuntime.jsx(kittIcons.EyeIcon, {}) : /*#__PURE__*/jsxRuntime.jsx(kittIcons.EyeOffIcon, {}),
902
+ size: theme.kitt.forms.input.passwordButtonIconSize,
903
+ color: theme.kitt.forms.input.states[state].passwordButtonIconColor
904
+ })
905
+ })]
906
+ });
783
907
  });
784
908
 
785
909
  function Label({
786
910
  htmlFor,
787
911
  children
788
912
  }) {
789
- return /*#__PURE__*/React__default.createElement(Typography.Text, {
790
- base: "body"
791
- }, reactNative.Platform.OS === 'web' ? /*#__PURE__*/React__default.createElement("label", {
792
- htmlFor: htmlFor
793
- }, children) : children);
913
+ return /*#__PURE__*/jsxRuntime.jsx(Typography.Text, {
914
+ base: "body",
915
+ children: /*#__PURE__*/jsxRuntime.jsx("label", {
916
+ htmlFor: htmlFor,
917
+ children: children
918
+ })
919
+ });
794
920
  }
795
921
 
796
- const OuterRadio = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
922
+ const OuterRadio = /*#__PURE__*/styled__default.View.withConfig({
797
923
  displayName: "Radio__OuterRadio",
798
924
  componentId: "kitt-universal__sc-1mdgr2o-0"
799
925
  })(["background-color:", ";width:", "px;height:", "px;border-radius:", "px;border-width:", ";border-color:", ";"], ({
@@ -811,7 +937,7 @@ const OuterRadio = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
811
937
  theme,
812
938
  disabled
813
939
  }) => theme.kitt.forms.radio[disabled ? 'disabled' : 'unchecked'].borderColor);
814
- const SelectedOuterRadio = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
940
+ const SelectedOuterRadio = /*#__PURE__*/styled__default.View.withConfig({
815
941
  displayName: "Radio__SelectedOuterRadio",
816
942
  componentId: "kitt-universal__sc-1mdgr2o-1"
817
943
  })(["background-color:", ";width:", "px;height:", "px;border-radius:", "px;justify-content:center;align-items:center;"], ({
@@ -823,7 +949,7 @@ const SelectedOuterRadio = /*#__PURE__*/styled__default(PrimitiveView).withConfi
823
949
  }) => theme.kitt.forms.radio.size, ({
824
950
  theme
825
951
  }) => theme.kitt.forms.radio.size / 2);
826
- const SelectedInnerRadio = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
952
+ const SelectedInnerRadio = /*#__PURE__*/styled__default.View.withConfig({
827
953
  displayName: "Radio__SelectedInnerRadio",
828
954
  componentId: "kitt-universal__sc-1mdgr2o-2"
829
955
  })(["background-color:", ";width:", "px;height:", "px;border-radius:", "px;"], ({
@@ -835,7 +961,7 @@ const SelectedInnerRadio = /*#__PURE__*/styled__default(PrimitiveView).withConfi
835
961
  }) => theme.kitt.forms.radio.checked.innerSize, ({
836
962
  theme
837
963
  }) => theme.kitt.forms.radio.checked.innerSize / 2);
838
- const Container$3 = /*#__PURE__*/styled__default(PrimitivePressable).withConfig({
964
+ const Container$4 = /*#__PURE__*/styled__default.Pressable.withConfig({
839
965
  displayName: "Radio__Container",
840
966
  componentId: "kitt-universal__sc-1mdgr2o-3"
841
967
  })(["flex-direction:row;align-items:center;"]);
@@ -853,7 +979,7 @@ function Radio({
853
979
  disabled = false,
854
980
  children
855
981
  }) {
856
- return /*#__PURE__*/React__default.createElement(Container$3, {
982
+ return /*#__PURE__*/jsxRuntime.jsxs(Container$4, {
857
983
  nativeID: id,
858
984
  disabled: disabled,
859
985
  accessibilityRole: "radio",
@@ -861,27 +987,31 @@ function Radio({
861
987
  focusable: checked && !disabled,
862
988
  onPress: () => {
863
989
  onChange(value);
864
- }
865
- }, checked && !disabled ? /*#__PURE__*/React__default.createElement(SelectedOuterRadio, null, /*#__PURE__*/React__default.createElement(SelectedInnerRadio, null)) : /*#__PURE__*/React__default.createElement(OuterRadio, {
866
- disabled: disabled
867
- }), /*#__PURE__*/React__default.createElement(Text, {
868
- base: "body",
869
- color: disabled ? 'black-light' : 'black'
870
- }, children));
990
+ },
991
+ children: [checked && !disabled ? /*#__PURE__*/jsxRuntime.jsx(SelectedOuterRadio, {
992
+ children: /*#__PURE__*/jsxRuntime.jsx(SelectedInnerRadio, {})
993
+ }) : /*#__PURE__*/jsxRuntime.jsx(OuterRadio, {
994
+ disabled: disabled
995
+ }), /*#__PURE__*/jsxRuntime.jsx(Text, {
996
+ base: "body",
997
+ color: disabled ? 'black-light' : 'black',
998
+ children: children
999
+ })]
1000
+ });
871
1001
  }
872
1002
 
873
1003
  function TextArea({ ...props
874
1004
  }) {
875
1005
  const theme = /*#__PURE__*/styled.useTheme();
876
- return /*#__PURE__*/React__default.createElement(InputText, _extends__default({
877
- multiline: true
878
- }, props, {
1006
+ return /*#__PURE__*/jsxRuntime.jsx(InputText, {
1007
+ multiline: true,
1008
+ ...props,
879
1009
  type: "text",
880
1010
  minHeight: theme.kitt.forms.input.textAreaMinHeight
881
- }));
1011
+ });
882
1012
  }
883
1013
 
884
- const Body = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1014
+ const Body = /*#__PURE__*/styled__default.View.withConfig({
885
1015
  displayName: "Body",
886
1016
  componentId: "kitt-universal__sc-1ofncfn-0"
887
1017
  })(["", " background-color:", ";flex:1;"], ({
@@ -896,10 +1026,12 @@ const Body = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
896
1026
  function FullScreenModalBody({
897
1027
  children
898
1028
  }) {
899
- return /*#__PURE__*/React__default.createElement(Body, null, children);
1029
+ return /*#__PURE__*/jsxRuntime.jsx(Body, {
1030
+ children: children
1031
+ });
900
1032
  }
901
1033
 
902
- const SideContainer = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1034
+ const SideContainer = /*#__PURE__*/styled__default.View.withConfig({
903
1035
  displayName: "Header__SideContainer",
904
1036
  componentId: "kitt-universal__sc-dfmxi1-0"
905
1037
  })(["", ""], ({
@@ -919,7 +1051,7 @@ function getHeaderHorizontalMediumPadding(spacing) {
919
1051
  return spacing * 6;
920
1052
  }
921
1053
 
922
- const Header = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1054
+ const Header = /*#__PURE__*/styled__default.View.withConfig({
923
1055
  displayName: "Header",
924
1056
  componentId: "kitt-universal__sc-dfmxi1-1"
925
1057
  })(["", ";border-bottom-color:", ";border-bottom-width:1px;flex-direction:row;align-items:center;"], ({
@@ -937,7 +1069,7 @@ const Header = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
937
1069
  }, ({
938
1070
  theme
939
1071
  }) => theme.kitt.fullScreenModal.header.borderColor);
940
- const HeaderContent = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1072
+ const HeaderContent = /*#__PURE__*/styled__default.View.withConfig({
941
1073
  displayName: "Header__HeaderContent",
942
1074
  componentId: "kitt-universal__sc-dfmxi1-2"
943
1075
  })(["", ";", ";justify-content:center;align-items:center;"], ({
@@ -981,8 +1113,8 @@ function FullScreenModalHeader({
981
1113
  top
982
1114
  } = reactNativeSafeAreaContext.useSafeAreaInsets();
983
1115
  const dimensions = reactNative.useWindowDimensions();
984
- const [leftWidth, setLeftWidth] = React.useState(0);
985
- const [rightWidth, setRightWidth] = React.useState(0);
1116
+ const [leftWidth, setLeftWidth] = react.useState(0);
1117
+ const [rightWidth, setRightWidth] = react.useState(0);
986
1118
 
987
1119
  const handleLayoutChange = (event, side) => {
988
1120
  // Prevents react to nullify event on rerenders
@@ -996,21 +1128,25 @@ function FullScreenModalHeader({
996
1128
  setRightWidth(event.nativeEvent.layout.width);
997
1129
  };
998
1130
 
999
- return /*#__PURE__*/React__default.createElement(Header, {
1000
- insetTop: reactNative.Platform.OS === 'ios' ? undefined : top
1001
- }, left ? /*#__PURE__*/React__default.createElement(SideContainer, {
1002
- onLayout: e => handleLayoutChange(e, 'left')
1003
- }, left) : null, /*#__PURE__*/React__default.createElement(HeaderContent, {
1004
- windowWidth: dimensions.width,
1005
- leftWidth: leftWidth,
1006
- rightWidth: rightWidth
1007
- }, children), right ? /*#__PURE__*/React__default.createElement(SideContainer, {
1008
- side: "right",
1009
- onLayout: e => handleLayoutChange(e, 'right')
1010
- }, right) : null);
1011
- }
1012
-
1013
- const Container$2 = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1131
+ return /*#__PURE__*/jsxRuntime.jsxs(Header, {
1132
+ insetTop: top,
1133
+ children: [left ? /*#__PURE__*/jsxRuntime.jsx(SideContainer, {
1134
+ onLayout: e => handleLayoutChange(e, 'left'),
1135
+ children: left
1136
+ }) : null, /*#__PURE__*/jsxRuntime.jsx(HeaderContent, {
1137
+ windowWidth: dimensions.width,
1138
+ leftWidth: leftWidth,
1139
+ rightWidth: rightWidth,
1140
+ children: children
1141
+ }), right ? /*#__PURE__*/jsxRuntime.jsx(SideContainer, {
1142
+ side: "right",
1143
+ onLayout: e => handleLayoutChange(e, 'right'),
1144
+ children: right
1145
+ }) : null]
1146
+ });
1147
+ }
1148
+
1149
+ const Container$3 = /*#__PURE__*/styled__default.View.withConfig({
1014
1150
  displayName: "FullScreenModal__Container",
1015
1151
  componentId: "kitt-universal__sc-11qpbe3-0"
1016
1152
  })(["flex:1;background-color:", ";"], ({
@@ -1019,13 +1155,70 @@ const Container$2 = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1019
1155
  function FullScreenModal({
1020
1156
  children
1021
1157
  }) {
1022
- return /*#__PURE__*/React__default.createElement(Container$2, null, children);
1158
+ return /*#__PURE__*/jsxRuntime.jsx(Container$3, {
1159
+ children: children
1160
+ });
1023
1161
  }
1024
1162
  FullScreenModal.Header = FullScreenModalHeader;
1025
1163
  FullScreenModal.Body = FullScreenModalBody;
1026
1164
 
1027
- const PressableIconButton = /*#__PURE__*/styled__default(PrimitivePressable).withConfig({
1028
- displayName: "PressableIconButton",
1165
+ function StyleWebWrapper({
1166
+ as,
1167
+ children,
1168
+ ...props
1169
+ }) {
1170
+ return /*#__PURE__*/jsxRuntime.jsx(as || 'div', { ...props,
1171
+ children: children
1172
+ });
1173
+ }
1174
+
1175
+ // type $Without<T, K extends keyof any> = T extends any ? Pick<T, Exclude<keyof T, K>> : never;
1176
+ // type $DeepPartial<T> = { [P in keyof T]?: $DeepPartial<T[P]> };
1177
+ // export function withTheme<Props extends { theme: DefaultTheme }, C>(
1178
+ // WrappedComponent: ComponentType<Props> & C,
1179
+ // ): ComponentType<SetOptional<Props, 'theme'>> & hoistNonReactStatics.NonReactStatics<typeof WrappedComponent> {
1180
+ // return function ThemedComponent(props) {
1181
+ // const theme = useTheme();
1182
+ // return (<WrappedComponent theme={theme} {...(props as any)} />) as any;
1183
+ // };
1184
+ // }
1185
+ function withTheme( // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
1186
+ WrappedComponent) {
1187
+ return function (props) {
1188
+ const theme = /*#__PURE__*/styled.useTheme();
1189
+ return /*#__PURE__*/jsxRuntime.jsx(WrappedComponent, {
1190
+ theme: theme,
1191
+ ...props
1192
+ });
1193
+ };
1194
+ }
1195
+
1196
+ const PressableIconButtonWebWrapper = withTheme( /*#__PURE__*/react$1.styled("div")({
1197
+ name: "PressableIconButtonWebWrapper",
1198
+ class: "p1nlccvg",
1199
+ vars: {
1200
+ "p1nlccvg-0": [({
1201
+ theme
1202
+ }) => theme.kitt.iconButton.scale.base.hover],
1203
+ "p1nlccvg-1": [({
1204
+ theme
1205
+ }) => theme.breakpoints.min.mediumBreakpoint],
1206
+ "p1nlccvg-2": [({
1207
+ theme
1208
+ }) => theme.kitt.iconButton.scale.medium.hover],
1209
+ "p1nlccvg-3": [({
1210
+ theme
1211
+ }) => theme.kitt.iconButton.scale.base.active],
1212
+ "p1nlccvg-4": [({
1213
+ theme
1214
+ }) => theme.kitt.iconButton.default.pressedBackgroundColor],
1215
+ "p1nlccvg-5": [({
1216
+ theme
1217
+ }) => theme.kitt.iconButton.white.pressedBackgroundColor]
1218
+ }
1219
+ }));
1220
+ const StyledPressableIconButton = /*#__PURE__*/styled__default.Pressable.withConfig({
1221
+ displayName: "PressableIconButton__StyledPressableIconButton",
1029
1222
  componentId: "kitt-universal__sc-1m6jo3s-0"
1030
1223
  })(["border-radius:", "px;width:", "px;height:", "px;align-items:center;justify-content:center;position:relative;background-color:transparent;", ";"], ({
1031
1224
  theme
@@ -1035,20 +1228,13 @@ const PressableIconButton = /*#__PURE__*/styled__default(PrimitivePressable).wit
1035
1228
  theme
1036
1229
  }) => theme.kitt.iconButton.height, ({
1037
1230
  theme,
1038
- color,
1039
1231
  disabled
1040
1232
  }) => {
1041
1233
  const {
1042
1234
  iconButton
1043
1235
  } = theme.kitt;
1044
-
1045
- if (reactNative.Platform.OS !== 'web') {
1046
- return undefined;
1047
- }
1048
-
1049
1236
  const {
1050
- transition,
1051
- scale
1237
+ transition
1052
1238
  } = iconButton;
1053
1239
 
1054
1240
  if (disabled) {
@@ -1059,33 +1245,19 @@ const PressableIconButton = /*#__PURE__*/styled__default(PrimitivePressable).wit
1059
1245
 
1060
1246
  return `
1061
1247
  transition: ${transition.property} ${transition.duration} ${transition.timingFunction};
1062
-
1063
- &:hover,
1064
- .kitt-hover & {
1065
- @media (hover: none) and (pointer: coarse) {
1066
- transform: scale(${scale.base.hover});
1067
- }
1068
-
1069
- @media(${theme.breakpoints.min.mediumBreakpoint}) {
1070
- transform: scale(${scale.medium.hover});
1071
- }
1072
- }
1073
-
1074
- &:active,
1075
- .kitt-active & {
1076
- transform: scale(${scale.base.active});
1077
- }
1078
-
1079
- &:hover,
1080
- .kitt-hover &,
1081
- &:focus,
1082
- .kitt-focus &,
1083
- &:active,
1084
- .kitt-active & {
1085
- background-color: ${color === 'white' ? iconButton.white.pressedBackgroundColor : iconButton.default.pressedBackgroundColor};
1086
- }
1087
1248
  `;
1088
1249
  });
1250
+ function PressableIconButton({
1251
+ color,
1252
+ ...props
1253
+ }) {
1254
+ return /*#__PURE__*/jsxRuntime.jsx(StyleWebWrapper, {
1255
+ as: PressableIconButtonWebWrapper,
1256
+ "data-color-white": color === 'white',
1257
+ children: /*#__PURE__*/jsxRuntime.jsx(StyledPressableIconButton, { ...props
1258
+ })
1259
+ });
1260
+ }
1089
1261
 
1090
1262
  const AnimatedIconButtonBackground = /*#__PURE__*/styled__default(Animated__default.View).withConfig({
1091
1263
  displayName: "PressableAnimatedContainer__AnimatedIconButtonBackground",
@@ -1133,7 +1305,7 @@ function PressableAnimatedContainer({
1133
1305
  };
1134
1306
  _f.asString = "function _f(){const{withSpring,pressed}=jsThis._closure;{return{opacity:withSpring(pressed.value?1:0)};}}";
1135
1307
  _f.__workletHash = 10645190329247;
1136
- _f.__location = "/home/circleci/repo/@ornikar/kitt-universal/src/IconButton/PressableAnimatedContainer.tsx (55:41)";
1308
+ _f.__location = "/home/chris/ornikar/kitt/@ornikar/kitt-universal/src/IconButton/PressableAnimatedContainer.tsx (54:41)";
1137
1309
  _f.__optimalization = 2;
1138
1310
 
1139
1311
  global.__reanimatedWorkletInit(_f);
@@ -1167,14 +1339,14 @@ function PressableAnimatedContainer({
1167
1339
  };
1168
1340
  _f.asString = "function _f(){const{withSpring,pressed,theme}=jsThis._closure;{return{transform:[{scale:withSpring(pressed.value?theme.kitt.iconButton.scale.base.active:theme.kitt.iconButton.scale.base.default)}]};}}";
1169
1341
  _f.__workletHash = 13861998831411;
1170
- _f.__location = "/home/circleci/repo/@ornikar/kitt-universal/src/IconButton/PressableAnimatedContainer.tsx (61:39)";
1342
+ _f.__location = "/home/chris/ornikar/kitt/@ornikar/kitt-universal/src/IconButton/PressableAnimatedContainer.tsx (60:39)";
1171
1343
  _f.__optimalization = 2;
1172
1344
 
1173
1345
  global.__reanimatedWorkletInit(_f);
1174
1346
 
1175
1347
  return _f;
1176
1348
  }());
1177
- return /*#__PURE__*/React__default.createElement(PressableIconButton, {
1349
+ return /*#__PURE__*/jsxRuntime.jsx(PressableIconButton, {
1178
1350
  accessibilityRole: "button",
1179
1351
  disabled: disabled,
1180
1352
  color: color,
@@ -1184,23 +1356,25 @@ function PressableAnimatedContainer({
1184
1356
  },
1185
1357
  onPressOut: () => {
1186
1358
  pressed.value = false;
1187
- }
1188
- }, /*#__PURE__*/React__default.createElement(AnimatedViewContainer, {
1189
- style: disabled ? [{
1190
- transform: [{
1191
- scale: 1
1192
- }]
1193
- }] : [scaleStyles]
1194
- }, /*#__PURE__*/React__default.createElement(AnimatedIconButtonBackground, {
1195
- disabled: disabled,
1196
- color: color,
1197
- style: disabled ? [{
1198
- opacity: 1
1199
- }] : [opacityStyles]
1200
- }), children));
1359
+ },
1360
+ children: /*#__PURE__*/jsxRuntime.jsxs(AnimatedViewContainer, {
1361
+ style: disabled ? [{
1362
+ transform: [{
1363
+ scale: 1
1364
+ }]
1365
+ }] : [scaleStyles],
1366
+ children: [/*#__PURE__*/jsxRuntime.jsx(AnimatedIconButtonBackground, {
1367
+ disabled: disabled,
1368
+ color: color,
1369
+ style: disabled ? [{
1370
+ opacity: 1
1371
+ }] : [opacityStyles]
1372
+ }), children]
1373
+ })
1374
+ });
1201
1375
  }
1202
1376
 
1203
- const IconButtonContentBorder = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1377
+ const IconButtonContentBorder = /*#__PURE__*/styled__default.View.withConfig({
1204
1378
  displayName: "IconButton__IconButtonContentBorder",
1205
1379
  componentId: "kitt-universal__sc-swelbf-0"
1206
1380
  })(["border:", ";border-color:", ";width:", "px;height:", "px;align-items:center;justify-content:center;border-radius:", "px;"], ({
@@ -1221,12 +1395,13 @@ function IconButtonContent({
1221
1395
  color,
1222
1396
  icon
1223
1397
  }) {
1224
- return /*#__PURE__*/React__default.createElement(IconButtonContentBorder, {
1225
- disabled: disabled
1226
- }, /*#__PURE__*/React__default.createElement(TypographyIcon, {
1227
- color: disabled ? 'black-light' : color,
1228
- icon: icon
1229
- }));
1398
+ return /*#__PURE__*/jsxRuntime.jsx(IconButtonContentBorder, {
1399
+ disabled: disabled,
1400
+ children: /*#__PURE__*/jsxRuntime.jsx(TypographyIcon, {
1401
+ color: disabled ? 'black-light' : color,
1402
+ icon: icon
1403
+ })
1404
+ });
1230
1405
  }
1231
1406
 
1232
1407
  function IconButton({
@@ -1235,18 +1410,19 @@ function IconButton({
1235
1410
  disabled,
1236
1411
  onPress
1237
1412
  }) {
1238
- return /*#__PURE__*/React__default.createElement(PressableAnimatedContainer, {
1413
+ return /*#__PURE__*/jsxRuntime.jsx(PressableAnimatedContainer, {
1239
1414
  color: color,
1240
1415
  disabled: disabled,
1241
- onPress: onPress
1242
- }, /*#__PURE__*/React__default.createElement(IconButtonContent, {
1243
- disabled: disabled,
1244
- color: color,
1245
- icon: icon
1246
- }));
1416
+ onPress: onPress,
1417
+ children: /*#__PURE__*/jsxRuntime.jsx(IconButtonContent, {
1418
+ disabled: disabled,
1419
+ color: color,
1420
+ icon: icon
1421
+ })
1422
+ });
1247
1423
  }
1248
1424
 
1249
- const ContentView$1 = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1425
+ const ContentView$1 = /*#__PURE__*/styled__default.View.withConfig({
1250
1426
  displayName: "ListItemContent__ContentView",
1251
1427
  componentId: "kitt-universal__sc-57q0u9-0"
1252
1428
  })(["flex:1 0 0%;align-self:center;"]);
@@ -1254,10 +1430,12 @@ function ListItemContent({
1254
1430
  children,
1255
1431
  ...rest
1256
1432
  }) {
1257
- return /*#__PURE__*/React__default.createElement(ContentView$1, rest, children);
1433
+ return /*#__PURE__*/jsxRuntime.jsx(ContentView$1, { ...rest,
1434
+ children: children
1435
+ });
1258
1436
  }
1259
1437
 
1260
- const SideContainerView = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1438
+ const SideContainerView = /*#__PURE__*/styled__default.View.withConfig({
1261
1439
  displayName: "ListItemSideContent__SideContainerView",
1262
1440
  componentId: "kitt-universal__sc-1vajiw-0"
1263
1441
  })(["flex-direction:row;margin-left:", ";margin-right:", ";"], ({
@@ -1273,11 +1451,13 @@ function ListItemSideContainer({
1273
1451
  side = 'left',
1274
1452
  ...rest
1275
1453
  }) {
1276
- return /*#__PURE__*/React__default.createElement(SideContainerView, _extends__default({
1277
- side: side
1278
- }, rest), children);
1454
+ return /*#__PURE__*/jsxRuntime.jsx(SideContainerView, {
1455
+ side: side,
1456
+ ...rest,
1457
+ children: children
1458
+ });
1279
1459
  }
1280
- const SideContentView = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1460
+ const SideContentView = /*#__PURE__*/styled__default.View.withConfig({
1281
1461
  displayName: "ListItemSideContent__SideContentView",
1282
1462
  componentId: "kitt-universal__sc-1vajiw-1"
1283
1463
  })(["align-self:", ";"], ({
@@ -1288,12 +1468,14 @@ function ListItemSideContent({
1288
1468
  align = 'auto',
1289
1469
  ...rest
1290
1470
  }) {
1291
- return /*#__PURE__*/React__default.createElement(SideContentView, _extends__default({
1292
- align: align
1293
- }, rest), children);
1471
+ return /*#__PURE__*/jsxRuntime.jsx(SideContentView, {
1472
+ align: align,
1473
+ ...rest,
1474
+ children: children
1475
+ });
1294
1476
  }
1295
1477
 
1296
- const ContainerView = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1478
+ const ContainerView = /*#__PURE__*/styled__default.View.withConfig({
1297
1479
  displayName: "ListItem__ContainerView",
1298
1480
  componentId: "kitt-universal__sc-2afp9s-0"
1299
1481
  })(["flex-direction:row;padding:", ";", ";border-color:", ";background-color:", ";"], ({
@@ -1334,28 +1516,35 @@ function ListItem({
1334
1516
  onPress,
1335
1517
  ...rest
1336
1518
  }) {
1337
- const Wrapper = onPress ? PrimitivePressable : React.Fragment;
1519
+ const Wrapper = onPress ? reactNative.Pressable : react.Fragment;
1338
1520
  const wrapperProps = onPress ? {
1339
1521
  accessibilityRole: 'button',
1340
1522
  onPress,
1341
1523
  ...rest
1342
1524
  } : undefined;
1343
1525
  const containerProps = onPress ? undefined : rest;
1344
- return /*#__PURE__*/React__default.createElement(Wrapper, wrapperProps, /*#__PURE__*/React__default.createElement(ContainerView, _extends__default({
1345
- withPadding: withPadding,
1346
- borders: borders
1347
- }, containerProps), left ? /*#__PURE__*/React__default.createElement(ListItemSideContainer, {
1348
- side: "left"
1349
- }, left) : null, /*#__PURE__*/React__default.createElement(ListItemContent, null, children), right ? /*#__PURE__*/React__default.createElement(ListItemSideContainer, {
1350
- side: "right"
1351
- }, right) : null));
1526
+ return /*#__PURE__*/jsxRuntime.jsx(Wrapper, { ...wrapperProps,
1527
+ children: /*#__PURE__*/jsxRuntime.jsxs(ContainerView, {
1528
+ withPadding: withPadding,
1529
+ borders: borders,
1530
+ ...containerProps,
1531
+ children: [left ? /*#__PURE__*/jsxRuntime.jsx(ListItemSideContainer, {
1532
+ side: "left",
1533
+ children: left
1534
+ }) : null, /*#__PURE__*/jsxRuntime.jsx(ListItemContent, {
1535
+ children: children
1536
+ }), right ? /*#__PURE__*/jsxRuntime.jsx(ListItemSideContainer, {
1537
+ side: "right",
1538
+ children: right
1539
+ }) : null]
1540
+ })
1541
+ });
1352
1542
  }
1353
1543
  ListItem.Content = ListItemContent;
1354
1544
  ListItem.SideContent = ListItemSideContent;
1355
1545
  ListItem.SideContainer = ListItemSideContainer;
1356
1546
 
1357
1547
  function getActivityIndicatorSize(size) {
1358
- if (reactNative.Platform.OS === 'android') return size;
1359
1548
  return size < 36 ? 'small' : 'large';
1360
1549
  }
1361
1550
 
@@ -1365,7 +1554,7 @@ function Loader({
1365
1554
  }) {
1366
1555
  const theme = /*#__PURE__*/styled.useTheme();
1367
1556
  const colorHex = theme.kitt.typography.colors[color];
1368
- return /*#__PURE__*/React__default.createElement(reactNative.ActivityIndicator, {
1557
+ return /*#__PURE__*/jsxRuntime.jsx(reactNative.ActivityIndicator, {
1369
1558
  testID: "ActivityIndicator",
1370
1559
  color: colorHex,
1371
1560
  size: getActivityIndicatorSize(size)
@@ -1375,7 +1564,7 @@ function Loader({
1375
1564
  function LargeLoader({
1376
1565
  color = 'primary'
1377
1566
  }) {
1378
- return /*#__PURE__*/React__default.createElement(Loader, {
1567
+ return /*#__PURE__*/jsxRuntime.jsx(Loader, {
1379
1568
  color: color,
1380
1569
  size: 60
1381
1570
  });
@@ -1383,7 +1572,7 @@ function LargeLoader({
1383
1572
 
1384
1573
  const xIconSize = 14;
1385
1574
  const mainIconSize = 20;
1386
- const Container$1 = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1575
+ const Container$2 = /*#__PURE__*/styled__default.View.withConfig({
1387
1576
  displayName: "Message__Container",
1388
1577
  componentId: "kitt-universal__sc-c6400e-0"
1389
1578
  })(["border-radius:", "px;background-color:", ";padding-bottom:", "px;padding-left:", "px;padding-right:", "px;padding-top:", "px;flex-direction:row;align-items:flex-start;justify-content:space-between;"], ({
@@ -1410,13 +1599,13 @@ const CloseContainer = /*#__PURE__*/styled__default(reactNative.TouchableOpacity
1410
1599
  }) => theme.kitt.spacing * 4, ({
1411
1600
  theme
1412
1601
  }) => theme.kitt.spacing);
1413
- const IconContainer = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1602
+ const IconContainer = /*#__PURE__*/styled__default.View.withConfig({
1414
1603
  displayName: "Message__IconContainer",
1415
1604
  componentId: "kitt-universal__sc-c6400e-2"
1416
1605
  })(["margin-right:", "px;"], ({
1417
1606
  theme
1418
1607
  }) => theme.kitt.spacing * 4);
1419
- const Content = /*#__PURE__*/styled__default(PrimitiveText).withConfig({
1608
+ const Content = /*#__PURE__*/styled__default.Text.withConfig({
1420
1609
  displayName: "Message__Content",
1421
1610
  componentId: "kitt-universal__sc-c6400e-3"
1422
1611
  })(["text-align:", ";flex:1;"], ({
@@ -1440,16 +1629,16 @@ const getColorByType = type => {
1440
1629
  function getIconContent(type) {
1441
1630
  switch (type) {
1442
1631
  case 'warning':
1443
- return /*#__PURE__*/React__default.createElement(kittIcons.AlertCircleIcon, null);
1632
+ return /*#__PURE__*/jsxRuntime.jsx(kittIcons.AlertCircleIcon, {});
1444
1633
 
1445
1634
  case 'success':
1446
- return /*#__PURE__*/React__default.createElement(kittIcons.CheckIcon, null);
1635
+ return /*#__PURE__*/jsxRuntime.jsx(kittIcons.CheckIcon, {});
1447
1636
 
1448
1637
  case 'danger':
1449
- return /*#__PURE__*/React__default.createElement(kittIcons.AlertTriangleIcon, null);
1638
+ return /*#__PURE__*/jsxRuntime.jsx(kittIcons.AlertTriangleIcon, {});
1450
1639
 
1451
1640
  default:
1452
- return /*#__PURE__*/React__default.createElement(kittIcons.InfoIcon, null);
1641
+ return /*#__PURE__*/jsxRuntime.jsx(kittIcons.InfoIcon, {});
1453
1642
  }
1454
1643
  }
1455
1644
 
@@ -1462,30 +1651,36 @@ function Message({
1462
1651
  insets
1463
1652
  }) {
1464
1653
  const color = getColorByType(type);
1465
- return /*#__PURE__*/React__default.createElement(Container$1, {
1654
+ return /*#__PURE__*/jsxRuntime.jsxs(Container$2, {
1466
1655
  type: type,
1467
1656
  noRadius: noRadius,
1468
- insets: insets
1469
- }, !centeredText ? /*#__PURE__*/React__default.createElement(IconContainer, null, /*#__PURE__*/React__default.createElement(Icon, {
1470
- size: mainIconSize,
1471
- color: color,
1472
- icon: getIconContent(type)
1473
- })) : null, /*#__PURE__*/React__default.createElement(Content, {
1474
- type: type,
1475
- centeredText: centeredText
1476
- }, /*#__PURE__*/React__default.createElement(Typography.Text, {
1477
- base: "body-small",
1478
- color: color
1479
- }, children)), onDismiss ? /*#__PURE__*/React__default.createElement(CloseContainer, {
1480
- onPress: onDismiss
1481
- }, /*#__PURE__*/React__default.createElement(Icon, {
1482
- icon: /*#__PURE__*/React__default.createElement(kittIcons.XIcon, null),
1483
- size: xIconSize,
1484
- color: color
1485
- })) : null);
1657
+ insets: insets,
1658
+ children: [!centeredText ? /*#__PURE__*/jsxRuntime.jsx(IconContainer, {
1659
+ children: /*#__PURE__*/jsxRuntime.jsx(Icon, {
1660
+ size: mainIconSize,
1661
+ color: color,
1662
+ icon: getIconContent(type)
1663
+ })
1664
+ }) : null, /*#__PURE__*/jsxRuntime.jsx(Content, {
1665
+ type: type,
1666
+ centeredText: centeredText,
1667
+ children: /*#__PURE__*/jsxRuntime.jsx(Typography.Text, {
1668
+ base: "body-small",
1669
+ color: color,
1670
+ children: children
1671
+ })
1672
+ }), onDismiss ? /*#__PURE__*/jsxRuntime.jsx(CloseContainer, {
1673
+ onPress: onDismiss,
1674
+ children: /*#__PURE__*/jsxRuntime.jsx(Icon, {
1675
+ icon: /*#__PURE__*/jsxRuntime.jsx(kittIcons.XIcon, {}),
1676
+ size: xIconSize,
1677
+ color: color
1678
+ })
1679
+ }) : null]
1680
+ });
1486
1681
  }
1487
1682
 
1488
- const OverlayPressable = /*#__PURE__*/styled__default(PrimitivePressable).withConfig({
1683
+ const OverlayPressable = /*#__PURE__*/styled__default.Pressable.withConfig({
1489
1684
  displayName: "Overlay__OverlayPressable",
1490
1685
  componentId: "kitt-universal__sc-1cz1gbr-0"
1491
1686
  })(({
@@ -1496,15 +1691,14 @@ const OverlayPressable = /*#__PURE__*/styled__default(PrimitivePressable).withCo
1496
1691
  function Overlay({
1497
1692
  onPress
1498
1693
  }) {
1499
- return /*#__PURE__*/React__default.createElement(OverlayPressable, {
1694
+ return /*#__PURE__*/jsxRuntime.jsx(OverlayPressable, {
1500
1695
  accessibilityRole: "none",
1501
- onPress: onPress
1502
- }, /*#__PURE__*/React__default.createElement(PrimitiveView, null));
1696
+ onPress: onPress,
1697
+ children: /*#__PURE__*/jsxRuntime.jsx(reactNative.View, {})
1698
+ });
1503
1699
  }
1504
1700
 
1505
- const PrimitiveScrollView = reactNative.ScrollView;
1506
-
1507
- const BodyView = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1701
+ const BodyView = /*#__PURE__*/styled__default.View.withConfig({
1508
1702
  displayName: "Body__BodyView",
1509
1703
  componentId: "kitt-universal__sc-17fwpo4-0"
1510
1704
  })(["padding:", "px ", "px;"], ({
@@ -1515,10 +1709,14 @@ const BodyView = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1515
1709
  function ModalBody({
1516
1710
  children
1517
1711
  }) {
1518
- return /*#__PURE__*/React__default.createElement(PrimitiveScrollView, null, /*#__PURE__*/React__default.createElement(BodyView, null, children));
1712
+ return /*#__PURE__*/jsxRuntime.jsx(reactNative.ScrollView, {
1713
+ children: /*#__PURE__*/jsxRuntime.jsx(BodyView, {
1714
+ children: children
1715
+ })
1716
+ });
1519
1717
  }
1520
1718
 
1521
- const FooterView = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1719
+ const FooterView = /*#__PURE__*/styled__default.View.withConfig({
1522
1720
  displayName: "Footer__FooterView",
1523
1721
  componentId: "kitt-universal__sc-1ujq2dc-0"
1524
1722
  })(["flex:0 0 auto;padding:", "px;border-top-width:1px;border-top-color:", ";"], ({
@@ -1529,12 +1727,14 @@ const FooterView = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1529
1727
  function ModalFooter({
1530
1728
  children
1531
1729
  }) {
1532
- return /*#__PURE__*/React__default.createElement(FooterView, null, children);
1730
+ return /*#__PURE__*/jsxRuntime.jsx(FooterView, {
1731
+ children: children
1732
+ });
1533
1733
  }
1534
1734
 
1535
- const OnCloseContext = /*#__PURE__*/React.createContext(() => {});
1735
+ const OnCloseContext = /*#__PURE__*/react.createContext(() => {});
1536
1736
 
1537
- const HeaderView = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1737
+ const HeaderView = /*#__PURE__*/styled__default.View.withConfig({
1538
1738
  displayName: "Header__HeaderView",
1539
1739
  componentId: "kitt-universal__sc-1iwabch-0"
1540
1740
  })(["position:relative;padding:", "px;display:flex;flex:0 0 auto;flex-direction:row;justify-content:space-between;align-items:center;border-bottom-width:1px;border-bottom-color:", ";min-height:57px;"], ({
@@ -1542,19 +1742,19 @@ const HeaderView = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1542
1742
  }) => theme.kitt.spacing * 2, ({
1543
1743
  theme
1544
1744
  }) => theme.kitt.colors.separator);
1545
- const LeftIconView = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1745
+ const LeftIconView = /*#__PURE__*/styled__default.View.withConfig({
1546
1746
  displayName: "Header__LeftIconView",
1547
1747
  componentId: "kitt-universal__sc-1iwabch-1"
1548
1748
  })(["align-self:flex-start;margin-right:", "px;"], ({
1549
1749
  theme
1550
1750
  }) => theme.kitt.spacing * 2);
1551
- const RightIconView = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1751
+ const RightIconView = /*#__PURE__*/styled__default.View.withConfig({
1552
1752
  displayName: "Header__RightIconView",
1553
1753
  componentId: "kitt-universal__sc-1iwabch-2"
1554
1754
  })(["align-self:flex-start;margin-left:", "px;"], ({
1555
1755
  theme
1556
1756
  }) => theme.kitt.spacing * 2);
1557
- const TitleView = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1757
+ const TitleView = /*#__PURE__*/styled__default.View.withConfig({
1558
1758
  displayName: "Header__TitleView",
1559
1759
  componentId: "kitt-universal__sc-1iwabch-3"
1560
1760
  })(["padding-left:", "px;flex-shrink:1;"], ({
@@ -1566,18 +1766,25 @@ function ModalHeader({
1566
1766
  right,
1567
1767
  children
1568
1768
  }) {
1569
- const onClose = React.useContext(OnCloseContext);
1769
+ const onClose = react.useContext(OnCloseContext);
1570
1770
  const isIconLeft = !!left;
1571
- return /*#__PURE__*/React__default.createElement(HeaderView, null, isIconLeft && /*#__PURE__*/React__default.createElement(LeftIconView, null, left), /*#__PURE__*/React__default.createElement(TitleView, {
1572
- isIconLeft: isIconLeft
1573
- }, children), right !== undefined ? right : /*#__PURE__*/React__default.createElement(RightIconView, null, /*#__PURE__*/React__default.createElement(Button, {
1574
- type: "subtle-dark",
1575
- icon: /*#__PURE__*/React__default.createElement(kittIcons.XIcon, null),
1576
- onPress: onClose
1577
- })));
1771
+ return /*#__PURE__*/jsxRuntime.jsxs(HeaderView, {
1772
+ children: [isIconLeft && /*#__PURE__*/jsxRuntime.jsx(LeftIconView, {
1773
+ children: left
1774
+ }), /*#__PURE__*/jsxRuntime.jsx(TitleView, {
1775
+ isIconLeft: isIconLeft,
1776
+ children: children
1777
+ }), right !== undefined ? right : /*#__PURE__*/jsxRuntime.jsx(RightIconView, {
1778
+ children: /*#__PURE__*/jsxRuntime.jsx(Button, {
1779
+ type: "subtle-dark",
1780
+ icon: /*#__PURE__*/jsxRuntime.jsx(kittIcons.XIcon, {}),
1781
+ onPress: onClose
1782
+ })
1783
+ })]
1784
+ });
1578
1785
  }
1579
1786
 
1580
- const ModalView = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1787
+ const ModalView = /*#__PURE__*/styled__default.View.withConfig({
1581
1788
  displayName: "Modal__ModalView",
1582
1789
  componentId: "kitt-universal__sc-1xy2w5u-0"
1583
1790
  })(["top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:", "px ", "px;"], ({
@@ -1585,7 +1792,7 @@ const ModalView = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1585
1792
  }) => theme.kitt.spacing * 20, ({
1586
1793
  theme
1587
1794
  }) => theme.kitt.spacing * 4);
1588
- const ContentView = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1795
+ const ContentView = /*#__PURE__*/styled__default.View.withConfig({
1589
1796
  displayName: "Modal__ContentView",
1590
1797
  componentId: "kitt-universal__sc-1xy2w5u-1"
1591
1798
  })(["position:relative;display:flex;flex-direction:column;max-height:100%;max-width:540px;height:auto;width:100%;border-radius:", ";background-color:", ";"], ({
@@ -1600,18 +1807,24 @@ function Modal({
1600
1807
  onEntered,
1601
1808
  onExited
1602
1809
  }) {
1603
- return /*#__PURE__*/React__default.createElement(OnCloseContext.Provider, {
1604
- value: onClose
1605
- }, /*#__PURE__*/React__default.createElement(reactNative.Modal, {
1606
- transparent: true,
1607
- animationType: "fade",
1608
- visible: visible,
1609
- onShow: onEntered,
1610
- onDismiss: onExited,
1611
- onRequestClose: onClose
1612
- }, /*#__PURE__*/React__default.createElement(ModalView, null, /*#__PURE__*/React__default.createElement(Overlay, {
1613
- onPress: onClose
1614
- }), /*#__PURE__*/React__default.createElement(ContentView, null, children))));
1810
+ return /*#__PURE__*/jsxRuntime.jsx(OnCloseContext.Provider, {
1811
+ value: onClose,
1812
+ children: /*#__PURE__*/jsxRuntime.jsx(reactNative.Modal, {
1813
+ transparent: true,
1814
+ animationType: "fade",
1815
+ visible: visible,
1816
+ onShow: onEntered,
1817
+ onDismiss: onExited,
1818
+ onRequestClose: onClose,
1819
+ children: /*#__PURE__*/jsxRuntime.jsxs(ModalView, {
1820
+ children: [/*#__PURE__*/jsxRuntime.jsx(Overlay, {
1821
+ onPress: onClose
1822
+ }), /*#__PURE__*/jsxRuntime.jsx(ContentView, {
1823
+ children: children
1824
+ })]
1825
+ })
1826
+ })
1827
+ });
1615
1828
  }
1616
1829
  Modal.Header = ModalHeader;
1617
1830
  Modal.Body = ModalBody;
@@ -1626,20 +1839,19 @@ function Notification({
1626
1839
  const {
1627
1840
  top
1628
1841
  } = reactNativeSafeAreaContext.useSafeAreaInsets();
1629
- return /*#__PURE__*/React__default.createElement(Message, {
1842
+ return /*#__PURE__*/jsxRuntime.jsx(Message, {
1630
1843
  noRadius: true,
1631
1844
  type: type,
1632
1845
  centeredText: centeredText,
1633
1846
  insets: {
1634
1847
  top
1635
1848
  },
1636
- onDismiss: onDelete
1637
- }, children);
1849
+ onDismiss: onDelete,
1850
+ children: children
1851
+ });
1638
1852
  }
1639
1853
 
1640
- const PrimitiveLink = reactNative.Text;
1641
-
1642
- const Flex = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1854
+ const Flex = /*#__PURE__*/styled__default.View.withConfig({
1643
1855
  shouldForwardProp: (prop, defaultValidatorFn) => !['direction', 'padding'].includes(prop) && defaultValidatorFn(prop)
1644
1856
  }).withConfig({
1645
1857
  displayName: "Flex",
@@ -1681,13 +1893,13 @@ const getTypographyColorFromBlockColor = (color = 'transparent') => {
1681
1893
  }
1682
1894
  };
1683
1895
 
1684
- const StoryBlockBackgroundContext = /*#__PURE__*/React.createContext('transparent');
1685
- const StoryBlockColorContext = /*#__PURE__*/React.createContext('black');
1896
+ const StoryBlockBackgroundContext = /*#__PURE__*/react.createContext('transparent');
1897
+ const StoryBlockColorContext = /*#__PURE__*/react.createContext('black');
1686
1898
  const useStoryBlockColor = color => {
1687
- const storyBlockColor = React.useContext(StoryBlockColorContext);
1899
+ const storyBlockColor = react.useContext(StoryBlockColorContext);
1688
1900
  return color || storyBlockColor;
1689
1901
  };
1690
- const StyledStoryBlockView = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1902
+ const StyledStoryBlockView = /*#__PURE__*/styled__default.View.withConfig({
1691
1903
  displayName: "StoryBlock__StyledStoryBlockView",
1692
1904
  componentId: "kitt-universal__sc-3w4hdm-0"
1693
1905
  })(["padding:16px ", "px 0;margin:0 -", "px;background:", ";"], storyPadding, storyPadding, ({
@@ -1698,20 +1910,23 @@ function StoryBlock({
1698
1910
  children,
1699
1911
  background
1700
1912
  }) {
1701
- return /*#__PURE__*/React__default.createElement(StyledStoryBlockView, {
1702
- background: background
1703
- }, /*#__PURE__*/React__default.createElement(StoryBlockColorContext.Provider, {
1704
- value: getTypographyColorFromBlockColor(background)
1705
- }, /*#__PURE__*/React__default.createElement(StoryBlockBackgroundContext.Provider, {
1706
- value: background
1707
- }, children)));
1913
+ return /*#__PURE__*/jsxRuntime.jsx(StyledStoryBlockView, {
1914
+ background: background,
1915
+ children: /*#__PURE__*/jsxRuntime.jsx(StoryBlockColorContext.Provider, {
1916
+ value: getTypographyColorFromBlockColor(background),
1917
+ children: /*#__PURE__*/jsxRuntime.jsx(StoryBlockBackgroundContext.Provider, {
1918
+ value: background,
1919
+ children: children
1920
+ })
1921
+ })
1922
+ });
1708
1923
  }
1709
1924
 
1710
- const StoryTitleContainer = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1925
+ const StoryTitleContainer = /*#__PURE__*/styled__default.View.withConfig({
1711
1926
  displayName: "StoryTitle__StoryTitleContainer",
1712
1927
  componentId: "kitt-universal__sc-sic7hb-0"
1713
1928
  })(["margin-bottom:30px;"]);
1714
- const StorySubTitleContainer = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1929
+ const StorySubTitleContainer = /*#__PURE__*/styled__default.View.withConfig({
1715
1930
  displayName: "StoryTitle__StorySubTitleContainer",
1716
1931
  componentId: "kitt-universal__sc-sic7hb-1"
1717
1932
  })(["margin-bottom:10px;"]);
@@ -1720,12 +1935,15 @@ function StoryTitle({
1720
1935
  children,
1721
1936
  numberOfLines
1722
1937
  }) {
1723
- return /*#__PURE__*/React__default.createElement(StoryTitleContainer, null, /*#__PURE__*/React__default.createElement(Typography.Header1, {
1724
- variant: "bold",
1725
- base: "header1",
1726
- color: useStoryBlockColor(color),
1727
- numberOfLines: numberOfLines
1728
- }, children));
1938
+ return /*#__PURE__*/jsxRuntime.jsx(StoryTitleContainer, {
1939
+ children: /*#__PURE__*/jsxRuntime.jsx(Typography.Header1, {
1940
+ variant: "bold",
1941
+ base: "header1",
1942
+ color: useStoryBlockColor(color),
1943
+ numberOfLines: numberOfLines,
1944
+ children: children
1945
+ })
1946
+ });
1729
1947
  }
1730
1948
 
1731
1949
  function StoryTitleLevel2({
@@ -1733,12 +1951,15 @@ function StoryTitleLevel2({
1733
1951
  children,
1734
1952
  numberOfLines
1735
1953
  }) {
1736
- return /*#__PURE__*/React__default.createElement(StoryTitleContainer, null, /*#__PURE__*/React__default.createElement(Typography.Header2, {
1737
- variant: "bold",
1738
- base: "header2",
1739
- color: useStoryBlockColor(color),
1740
- numberOfLines: numberOfLines
1741
- }, children));
1954
+ return /*#__PURE__*/jsxRuntime.jsx(StoryTitleContainer, {
1955
+ children: /*#__PURE__*/jsxRuntime.jsx(Typography.Header2, {
1956
+ variant: "bold",
1957
+ base: "header2",
1958
+ color: useStoryBlockColor(color),
1959
+ numberOfLines: numberOfLines,
1960
+ children: children
1961
+ })
1962
+ });
1742
1963
  }
1743
1964
 
1744
1965
  StoryTitleLevel2.displayName = 'StoryTitle.Level2';
@@ -1748,13 +1969,16 @@ function StoryTitleLevel3({
1748
1969
  children,
1749
1970
  numberOfLines
1750
1971
  }) {
1751
- return /*#__PURE__*/React__default.createElement(StorySubTitleContainer, null, /*#__PURE__*/React__default.createElement(Typography.Header3, {
1752
- variant: "bold",
1753
- base: "header3",
1754
- medium: "header4",
1755
- color: useStoryBlockColor(color),
1756
- numberOfLines: numberOfLines
1757
- }, children));
1972
+ return /*#__PURE__*/jsxRuntime.jsx(StorySubTitleContainer, {
1973
+ children: /*#__PURE__*/jsxRuntime.jsx(Typography.Header3, {
1974
+ variant: "bold",
1975
+ base: "header3",
1976
+ medium: "header4",
1977
+ color: useStoryBlockColor(color),
1978
+ numberOfLines: numberOfLines,
1979
+ children: children
1980
+ })
1981
+ });
1758
1982
  }
1759
1983
 
1760
1984
  StoryTitleLevel3.displayName = 'StoryTitle.Level3';
@@ -1764,13 +1988,16 @@ function StoryTitleLevel4({
1764
1988
  children,
1765
1989
  numberOfLines
1766
1990
  }) {
1767
- return /*#__PURE__*/React__default.createElement(StorySubTitleContainer, null, /*#__PURE__*/React__default.createElement(Typography.Header4, {
1768
- variant: "bold",
1769
- base: "header4",
1770
- medium: "header5",
1771
- color: useStoryBlockColor(color),
1772
- numberOfLines: numberOfLines
1773
- }, children));
1991
+ return /*#__PURE__*/jsxRuntime.jsx(StorySubTitleContainer, {
1992
+ children: /*#__PURE__*/jsxRuntime.jsx(Typography.Header4, {
1993
+ variant: "bold",
1994
+ base: "header4",
1995
+ medium: "header5",
1996
+ color: useStoryBlockColor(color),
1997
+ numberOfLines: numberOfLines,
1998
+ children: children
1999
+ })
2000
+ });
1774
2001
  }
1775
2002
 
1776
2003
  StoryTitleLevel4.displayName = 'StoryTitle.Level3';
@@ -1778,7 +2005,7 @@ StoryTitle.Level2 = StoryTitleLevel2;
1778
2005
  StoryTitle.Level3 = StoryTitleLevel3;
1779
2006
  StoryTitle.Level4 = StoryTitleLevel4;
1780
2007
 
1781
- const StoryContainer$1 = /*#__PURE__*/styled__default(PrimitiveScrollView).withConfig({
2008
+ const StoryContainer$1 = /*#__PURE__*/styled__default.ScrollView.withConfig({
1782
2009
  displayName: "Story__StoryContainer",
1783
2010
  componentId: "kitt-universal__sc-1kwdg2p-0"
1784
2011
  })(["padding:", "px;"], storyPadding);
@@ -1787,54 +2014,66 @@ function Story({
1787
2014
  contentContainerStyle,
1788
2015
  children
1789
2016
  }) {
1790
- return /*#__PURE__*/React__default.createElement(StoryContainer$1, {
1791
- contentContainerStyle: contentContainerStyle
1792
- }, /*#__PURE__*/React__default.createElement(StoryTitle, null, title), children);
2017
+ return /*#__PURE__*/jsxRuntime.jsxs(StoryContainer$1, {
2018
+ contentContainerStyle: contentContainerStyle,
2019
+ children: [/*#__PURE__*/jsxRuntime.jsx(StoryTitle, {
2020
+ children: title
2021
+ }), children]
2022
+ });
1793
2023
  }
1794
2024
 
1795
- const StyledSection = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
2025
+ const StyledSection = /*#__PURE__*/styled__default.View.withConfig({
1796
2026
  displayName: "StorySection__StyledSection",
1797
2027
  componentId: "kitt-universal__sc-1b3liv5-0"
1798
2028
  })(["margin-bottom:32px;"]);
1799
2029
  function StorySection({
1800
2030
  title,
1801
- className,
1802
2031
  children,
1803
2032
  internalIsDemoSection,
1804
2033
  ...props
1805
2034
  }) {
1806
2035
  if (title === 'Demo' && !internalIsDemoSection) throw new Error('Use StorySection.Demo instead');
1807
- return /*#__PURE__*/React__default.createElement(StyledSection, props, /*#__PURE__*/React__default.createElement(StoryTitle.Level2, null, title), children);
2036
+ return /*#__PURE__*/jsxRuntime.jsxs(StyledSection, { ...props,
2037
+ children: [/*#__PURE__*/jsxRuntime.jsx(StoryTitle.Level2, {
2038
+ children: title
2039
+ }), children]
2040
+ });
1808
2041
  }
1809
- const StyledSubSection = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
2042
+ const StyledSubSection = /*#__PURE__*/styled__default.View.withConfig({
1810
2043
  displayName: "StorySection__StyledSubSection",
1811
2044
  componentId: "kitt-universal__sc-1b3liv5-1"
1812
2045
  })(["margin-bottom:16px;"]);
1813
2046
 
1814
2047
  function SubSection({
1815
2048
  title,
1816
- className,
1817
2049
  children,
1818
2050
  ...props
1819
2051
  }) {
1820
- return /*#__PURE__*/React__default.createElement(StyledSubSection, props, /*#__PURE__*/React__default.createElement(StoryTitle.Level3, null, title), children);
2052
+ return /*#__PURE__*/jsxRuntime.jsxs(StyledSubSection, { ...props,
2053
+ children: [/*#__PURE__*/jsxRuntime.jsx(StoryTitle.Level3, {
2054
+ children: title
2055
+ }), children]
2056
+ });
1821
2057
  }
1822
2058
 
1823
- const StyledBlockSection = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
2059
+ const StyledBlockSection = /*#__PURE__*/styled__default.View.withConfig({
1824
2060
  displayName: "StorySection__StyledBlockSection",
1825
2061
  componentId: "kitt-universal__sc-1b3liv5-2"
1826
2062
  })(["margin-bottom:16px;"]);
1827
2063
 
1828
2064
  function BlockSection({
1829
2065
  title,
1830
- className,
1831
2066
  children,
1832
2067
  ...props
1833
2068
  }) {
1834
- return /*#__PURE__*/React__default.createElement(StyledBlockSection, props, /*#__PURE__*/React__default.createElement(StoryTitle.Level4, null, title), children);
2069
+ return /*#__PURE__*/jsxRuntime.jsxs(StyledBlockSection, { ...props,
2070
+ children: [/*#__PURE__*/jsxRuntime.jsx(StoryTitle.Level4, {
2071
+ children: title
2072
+ }), children]
2073
+ });
1835
2074
  }
1836
2075
 
1837
- const StyledDemoSection = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
2076
+ const StyledDemoSection = /*#__PURE__*/styled__default.View.withConfig({
1838
2077
  displayName: "StorySection__StyledDemoSection",
1839
2078
  componentId: "kitt-universal__sc-1b3liv5-3"
1840
2079
  })(["margin-bottom:64px;"]);
@@ -1842,10 +2081,13 @@ const StyledDemoSection = /*#__PURE__*/styled__default(PrimitiveView).withConfig
1842
2081
  function DemoSection({
1843
2082
  children
1844
2083
  }) {
1845
- return /*#__PURE__*/React__default.createElement(StyledDemoSection, null, /*#__PURE__*/React__default.createElement(StorySection, {
1846
- internalIsDemoSection: true,
1847
- title: "Demo"
1848
- }, children));
2084
+ return /*#__PURE__*/jsxRuntime.jsx(StyledDemoSection, {
2085
+ children: /*#__PURE__*/jsxRuntime.jsx(StorySection, {
2086
+ internalIsDemoSection: true,
2087
+ title: "Demo",
2088
+ children: children
2089
+ })
2090
+ });
1849
2091
  }
1850
2092
 
1851
2093
  StorySection.SubSection = SubSection;
@@ -1865,31 +2107,33 @@ function StoryContainer({
1865
2107
  platform = 'all'
1866
2108
  }) {
1867
2109
  if (platform === 'web') return null;
1868
- return /*#__PURE__*/React__default.createElement(StorySection.BlockSection, {
2110
+ return /*#__PURE__*/jsxRuntime.jsx(StorySection.BlockSection, {
1869
2111
  testID: state,
1870
- title: title
1871
- }, children);
2112
+ title: title,
2113
+ children: children
2114
+ });
1872
2115
  }
1873
2116
 
1874
2117
  function StoryDecorator(storyFn, context) {
1875
- return /*#__PURE__*/React__default.createElement(Story, {
1876
- title: context.name
1877
- }, storyFn());
2118
+ return /*#__PURE__*/jsxRuntime.jsx(Story, {
2119
+ title: context.name,
2120
+ children: storyFn()
2121
+ });
1878
2122
  }
1879
2123
 
1880
- const SmallScreenRow = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
2124
+ const SmallScreenRow = /*#__PURE__*/styled__default.View.withConfig({
1881
2125
  displayName: "StoryGrid__SmallScreenRow",
1882
2126
  componentId: "kitt-universal__sc-4z5new-0"
1883
2127
  })(["flex-direction:column;margin:0;"]);
1884
- const SmallScreenCol = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
2128
+ const SmallScreenCol = /*#__PURE__*/styled__default.View.withConfig({
1885
2129
  displayName: "StoryGrid__SmallScreenCol",
1886
2130
  componentId: "kitt-universal__sc-4z5new-1"
1887
2131
  })(["padding:8px 0 16px;"]);
1888
- const FlexRow = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
2132
+ const FlexRow = /*#__PURE__*/styled__default.View.withConfig({
1889
2133
  displayName: "StoryGrid__FlexRow",
1890
2134
  componentId: "kitt-universal__sc-4z5new-2"
1891
2135
  })(["flex-direction:row;margin:0 -4px 16px;"]);
1892
- const FlexCol = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
2136
+ const FlexCol = /*#__PURE__*/styled__default.View.withConfig({
1893
2137
  displayName: "StoryGrid__FlexCol",
1894
2138
  componentId: "kitt-universal__sc-4z5new-3"
1895
2139
  })(["flex-grow:1;flex-basis:0;margin:0 8px;"]);
@@ -1906,10 +2150,18 @@ function StoryGridRow({
1906
2150
  const breakpointValue = breakpoint === 'small' ? 480 : 768;
1907
2151
 
1908
2152
  if (width < breakpointValue) {
1909
- return /*#__PURE__*/React__default.createElement(SmallScreenRow, null, React__default.Children.map(children, child => /*#__PURE__*/React__default.createElement(SmallScreenCol, null, child)));
2153
+ return /*#__PURE__*/jsxRuntime.jsx(SmallScreenRow, {
2154
+ children: react.Children.map(children, child => /*#__PURE__*/jsxRuntime.jsx(SmallScreenCol, {
2155
+ children: child
2156
+ }))
2157
+ });
1910
2158
  }
1911
2159
 
1912
- return /*#__PURE__*/React__default.createElement(FlexRow, null, React__default.Children.map(children, child => /*#__PURE__*/React__default.createElement(FlexCol, null, child)));
2160
+ return /*#__PURE__*/jsxRuntime.jsx(FlexRow, {
2161
+ children: react.Children.map(children, child => /*#__PURE__*/jsxRuntime.jsx(FlexCol, {
2162
+ children: child
2163
+ }))
2164
+ });
1913
2165
  }
1914
2166
 
1915
2167
  function StoryGridCol({
@@ -1918,20 +2170,17 @@ function StoryGridCol({
1918
2170
  children,
1919
2171
  platform = 'all'
1920
2172
  }) {
1921
- const isNative = reactNative.Platform.OS === 'ios' || reactNative.Platform.OS === 'android';
1922
-
1923
- if (reactNative.Platform.OS === 'web' && platform === 'native') {
1924
- return null;
1925
- }
1926
-
1927
- if (isNative && platform === 'web') {
2173
+ if (platform === 'native') {
1928
2174
  return null;
1929
2175
  }
1930
2176
 
1931
- return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, title ? /*#__PURE__*/React__default.createElement(StoryTitle.Level4, {
1932
- numberOfLines: 1,
1933
- color: titleColor
1934
- }, title) : null, children);
2177
+ return /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
2178
+ children: [title ? /*#__PURE__*/jsxRuntime.jsx(StoryTitle.Level4, {
2179
+ numberOfLines: 1,
2180
+ color: titleColor,
2181
+ children: title
2182
+ }) : null, children]
2183
+ });
1935
2184
  }
1936
2185
 
1937
2186
  const StoryGrid = {
@@ -1939,7 +2188,7 @@ const StoryGrid = {
1939
2188
  Col: StoryGridCol
1940
2189
  };
1941
2190
 
1942
- const Container = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
2191
+ const Container$1 = /*#__PURE__*/styled__default.View.withConfig({
1943
2192
  displayName: "Tag__Container",
1944
2193
  componentId: "kitt-universal__sc-19jmowi-0"
1945
2194
  })(["background-color:", ";border-width:", ";border-color:", ";padding:", ";border-radius:", ";align-self:flex-start;"], ({
@@ -1987,13 +2236,15 @@ function Tag({
1987
2236
  type = 'default',
1988
2237
  variant = 'fill'
1989
2238
  }) {
1990
- return /*#__PURE__*/React__default.createElement(Container, {
2239
+ return /*#__PURE__*/jsxRuntime.jsx(Container$1, {
1991
2240
  type: type,
1992
- variant: variant
1993
- }, /*#__PURE__*/React__default.createElement(Typography.Text, {
1994
- base: "body-xsmall",
1995
- color: getLabelColor(type, variant)
1996
- }, label));
2241
+ variant: variant,
2242
+ children: /*#__PURE__*/jsxRuntime.jsx(Typography.Text, {
2243
+ base: "body-xsmall",
2244
+ color: getLabelColor(type, variant),
2245
+ children: label
2246
+ })
2247
+ });
1997
2248
  }
1998
2249
 
1999
2250
  const lateOceanColorPalette = {
@@ -2102,6 +2353,7 @@ const colorsLateOceanTheme = {
2102
2353
  danger: lateOceanColorPalette.englishVermillon,
2103
2354
  separator: lateOceanColorPalette.black100,
2104
2355
  hover: lateOceanColorPalette.black100,
2356
+ black: lateOceanColorPalette.black1000,
2105
2357
  uiBackground: lateOceanColorPalette.black25,
2106
2358
  uiBackgroundLight: lateOceanColorPalette.white,
2107
2359
  overlay: {
@@ -2287,6 +2539,15 @@ const tagLateOceanTheme = {
2287
2539
  }
2288
2540
  };
2289
2541
 
2542
+ const tooltip = {
2543
+ backgroundColor: colorsLateOceanTheme.black,
2544
+ borderRadius: 10,
2545
+ opacity: 0.95,
2546
+ horizontalPadding: 16,
2547
+ verticalPadding: 4,
2548
+ floatingPadding: 8
2549
+ };
2550
+
2290
2551
  const calcLineHeight = (fontSize, lineHeightMultiplier) => Math.round(fontSize * lineHeightMultiplier);
2291
2552
 
2292
2553
  const createTypographyTypeConfig = (lineHeightMultiplier, baseAndSmallFontSize, mediumAndWideFontSize) => ({
@@ -2315,8 +2576,8 @@ const typographyLateOceanTheme = {
2315
2576
  types: {
2316
2577
  headers: {
2317
2578
  fontFamily: {
2318
- regular: reactNative.Platform.OS === 'web' ? 'Moderat' : 'Moderat-Extended-Bold',
2319
- bold: reactNative.Platform.OS === 'web' ? 'Moderat' : 'Moderat-Extended-Bold'
2579
+ regular: 'Moderat',
2580
+ bold: 'Moderat'
2320
2581
  },
2321
2582
  fontWeight: 400,
2322
2583
  fontStyle: 'normal',
@@ -2335,8 +2596,8 @@ const typographyLateOceanTheme = {
2335
2596
  },
2336
2597
  bodies: {
2337
2598
  fontFamily: {
2338
- regular: reactNative.Platform.OS === 'web' ? 'Noto Sans' : 'NotoSans',
2339
- bold: reactNative.Platform.OS === 'web' ? 'Noto Sans' : 'NotoSans-Bold'
2599
+ regular: 'Noto Sans',
2600
+ bold: 'Noto Sans'
2340
2601
  },
2341
2602
  fontWeight: {
2342
2603
  regular: 400,
@@ -2399,53 +2660,409 @@ const theme = {
2399
2660
  shadows: shadowsLateOceanTheme,
2400
2661
  fullScreenModal: fullScreenModalLateOceanTheme,
2401
2662
  iconButton,
2402
- listItem: listItemLateOceanTheme
2663
+ listItem: listItemLateOceanTheme,
2664
+ tooltip
2403
2665
  };
2404
2666
 
2405
- function Tooltip({
2667
+ function Title({
2406
2668
  children
2407
2669
  }) {
2408
- return /*#__PURE__*/React__default.createElement(PrimitiveView, null, children);
2670
+ return /*#__PURE__*/jsxRuntime.jsx(Modal.Header, {
2671
+ children: /*#__PURE__*/jsxRuntime.jsx(Typography.Text, {
2672
+ base: "body",
2673
+ variant: "bold",
2674
+ children: children
2675
+ })
2676
+ });
2409
2677
  }
2410
2678
 
2411
- const StyledLink = /*#__PURE__*/styled__default(PrimitiveLink).withConfig({
2412
- shouldForwardProp: prop => !['disabled', 'noUnderline'].includes(prop)
2413
- }).withConfig({
2414
- displayName: "TypographyLink__StyledLink",
2415
- componentId: "kitt-universal__sc-1o1zy30-0"
2416
- })(["text-decoration:", ";", ""], ({
2417
- noUnderline
2418
- }) => noUnderline ? 'none' : 'underline', ({
2419
- disabled,
2420
- theme,
2421
- noUnderline
2422
- }) => `
2423
- ${disabled ? `color: ${theme.kitt.typography.link.disabledColor};` : ''}
2424
- ${reactNative.Platform.OS === 'web' ? `
2425
- text-decoration-color: inherit;
2426
- transition: color 0.2s ease-in-out;
2427
- cursor: ${disabled ? 'not-allowed' : 'pointer'};
2679
+ function ModalDateTimePicker({
2680
+ title,
2681
+ visible,
2682
+ value,
2683
+ validateButtonLabel,
2684
+ onChange,
2685
+ onClose
2686
+ }) {
2687
+ const [currentValue, setCurrentValue] = react.useState(value); // Prevent unsynced value between the modal and its parent state
2688
+
2689
+ return /*#__PURE__*/jsxRuntime.jsx(Modal, {
2690
+ visible: Boolean(visible),
2691
+ onClose: () => {
2692
+ setCurrentValue(value);
2693
+ onClose();
2694
+ },
2695
+ children: visible ? /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
2696
+ children: [title ? /*#__PURE__*/jsxRuntime.jsx(Title, {
2697
+ children: title
2698
+ }) : null, /*#__PURE__*/jsxRuntime.jsx(Modal.Body, {
2699
+ children: /*#__PURE__*/jsxRuntime.jsx(DateTimePicker__default, {
2700
+ is24Hour: true,
2701
+ testID: "date-picker-native-element",
2702
+ value: currentValue,
2703
+ mode: "time",
2704
+ display: 'default',
2705
+ onChange: (_event, date) => setCurrentValue(prev => {
2706
+ return date || prev;
2707
+ })
2708
+ })
2709
+ }), /*#__PURE__*/jsxRuntime.jsx(Modal.Footer, {
2710
+ children: /*#__PURE__*/jsxRuntime.jsx(Button, {
2711
+ stretch: true,
2712
+ type: "primary",
2713
+ onPress: () => {
2714
+ onChange(currentValue);
2715
+ },
2716
+ children: validateButtonLabel ? /*#__PURE__*/jsxRuntime.jsx(reactNative.Text, {
2717
+ children: validateButtonLabel
2718
+ }) : /*#__PURE__*/jsxRuntime.jsx(reactIntl.FormattedMessage, {
2719
+ id: "kitt-universal.ModalDateTimePicker.confirm"
2720
+ })
2721
+ })
2722
+ })]
2723
+ }) : null
2724
+ });
2725
+ }
2726
+
2727
+ const timePickerPlaceholder = '--:--';
2728
+ const useTimePicker = (value, onChange, onBlur, disabled, defaultValue) => {
2729
+ const [isTimePickerModalVisible, setIsTimePickerModalVisible] = react.useState(false);
2730
+ const todayAtNoon = react.useMemo(() => {
2731
+ const now = new Date(2000, 0, 1, 12);
2732
+ return new Date(now.getFullYear(), now.getMonth(), now.getDay(), 12);
2733
+ }, []);
2734
+ const defaultDate = defaultValue || todayAtNoon;
2735
+ const dateTimePickerValue = value || defaultDate;
2736
+ const displayedValue = value === null ? timePickerPlaceholder : Intl.DateTimeFormat('fr-FR', {
2737
+ minute: 'numeric',
2738
+ hour: 'numeric'
2739
+ }).format(dateTimePickerValue);
2740
+ const timePickerState = isTimePickerModalVisible ? 'focus' : 'default';
2741
+ return {
2742
+ dateTimePickerValue,
2743
+ displayedValue,
2744
+ timePickerState,
2745
+ isTimePickerModalVisible,
2746
+ handleInputPress: () => {
2747
+ if (disabled) {
2748
+ return;
2749
+ }
2750
+
2751
+ setIsTimePickerModalVisible(true);
2752
+ },
2753
+ handleTimeChange: date => {
2754
+ setIsTimePickerModalVisible(false);
2755
+ onChange(date || defaultDate);
2756
+ onBlur();
2757
+ },
2758
+ handleModalClose: () => setIsTimePickerModalVisible(false)
2759
+ };
2760
+ };
2761
+
2762
+ const Container = /*#__PURE__*/styled__default.Pressable.withConfig({
2763
+ displayName: "TimePicker__Container",
2764
+ componentId: "kitt-universal__sc-18zhpwp-0"
2765
+ })(["", " width:100px;height:40px;justify-content:center;align-items:center;"], styledTextInputMixin);
2766
+ function TimePicker({
2767
+ title,
2768
+ state = 'default',
2769
+ disabled = false,
2770
+ forceDefaultValue,
2771
+ value,
2772
+ validateButtonLabel,
2773
+ onChange,
2774
+ onBlur
2775
+ }) {
2776
+ const {
2777
+ dateTimePickerValue,
2778
+ displayedValue,
2779
+ timePickerState,
2780
+ handleInputPress,
2781
+ handleModalClose,
2782
+ handleTimeChange,
2783
+ isTimePickerModalVisible
2784
+ } = useTimePicker(value || null, onChange, onBlur, disabled, forceDefaultValue);
2785
+ return /*#__PURE__*/jsxRuntime.jsxs(Container, {
2786
+ state: timePickerState === 'default' ? state : timePickerState,
2787
+ accessibilityRole: "button",
2788
+ onPress: handleInputPress,
2789
+ children: [/*#__PURE__*/jsxRuntime.jsx(Typography.Text, {
2790
+ base: "body",
2791
+ color: displayedValue === timePickerPlaceholder ? 'black-light' : 'black',
2792
+ children: displayedValue
2793
+ }), null, /*#__PURE__*/jsxRuntime.jsx(ModalDateTimePicker, {
2794
+ title: title,
2795
+ visible: isTimePickerModalVisible,
2796
+ value: dateTimePickerValue,
2797
+ validateButtonLabel: validateButtonLabel,
2798
+ onChange: handleTimeChange,
2799
+ onClose: handleModalClose
2800
+ })]
2801
+ });
2802
+ }
2803
+
2804
+ var Arrow = function (props) {
2805
+ return /*#__PURE__*/jsxRuntime.jsx("svg", { ...props,
2806
+ children: /*#__PURE__*/jsxRuntime.jsx("path", {
2807
+ fillRule: "evenodd",
2808
+ clipRule: "evenodd",
2809
+ d: "M22.399 6.128C20.939 7.722 19.767 9 18 9s-2.938-1.278-4.399-2.872C11.187 3.494 7.984 0 0 0h36c-7.984 0-11.187 3.494-13.601 6.128z",
2810
+ fill: "currentColor"
2811
+ })
2812
+ });
2813
+ };
2814
+
2815
+ Arrow.defaultProps = {
2816
+ width: "36",
2817
+ height: "8",
2818
+ viewBox: "0 0 36 9",
2819
+ fill: "none",
2820
+ xmlns: "http://www.w3.org/2000/svg"
2821
+ };
2822
+ const StyledTooltipView = /*#__PURE__*/styled__default.View.withConfig({
2823
+ displayName: "TooltipView__StyledTooltipView",
2824
+ componentId: "kitt-universal__sc-156zm6m-0"
2825
+ })(["align-items:center;"]);
2826
+ const StyledTooltipContent = /*#__PURE__*/styled__default.View.withConfig({
2827
+ displayName: "TooltipView__StyledTooltipContent",
2828
+ componentId: "kitt-universal__sc-156zm6m-1"
2829
+ })(["background-color:", ";border-radius:", "px;opacity:", ";padding:", ";"], ({
2830
+ theme
2831
+ }) => theme.kitt.tooltip.backgroundColor, ({
2832
+ theme
2833
+ }) => theme.kitt.tooltip.borderRadius, ({
2834
+ theme
2835
+ }) => theme.kitt.tooltip.opacity, ({
2836
+ theme
2837
+ }) => `${theme.kitt.tooltip.verticalPadding}px ${theme.kitt.tooltip.horizontalPadding}px`);
2838
+
2839
+ function ArrowView(props) {
2840
+ const theme = /*#__PURE__*/styled.useTheme();
2841
+ return /*#__PURE__*/jsxRuntime.jsx(reactNative.View, { ...props,
2842
+ children: /*#__PURE__*/jsxRuntime.jsx(Arrow, {
2843
+ color: theme.kitt.tooltip.backgroundColor
2844
+ })
2845
+ });
2846
+ }
2847
+
2848
+ const StyledArrow = /*#__PURE__*/styled__default(ArrowView).withConfig({
2849
+ displayName: "TooltipView__StyledArrow",
2850
+ componentId: "kitt-universal__sc-156zm6m-2"
2851
+ })(["color:", ";transform:", ";"], ({
2852
+ theme
2853
+ }) => theme.kitt.tooltip.backgroundColor, ({
2854
+ $position
2855
+ }) => `rotate(${$position === 'bottom' ? 180 : 0}deg)`);
2856
+ function TooltipView({
2857
+ children,
2858
+ position
2859
+ }) {
2860
+ return /*#__PURE__*/jsxRuntime.jsxs(StyledTooltipView, {
2861
+ children: [position === 'bottom' ? /*#__PURE__*/jsxRuntime.jsx(StyledArrow, {
2862
+ $position: position
2863
+ }) : null, /*#__PURE__*/jsxRuntime.jsx(StyledTooltipContent, {
2864
+ children: /*#__PURE__*/jsxRuntime.jsx(Typography.Text, {
2865
+ base: "body",
2866
+ color: "white",
2867
+ children: children
2868
+ })
2869
+ }), position === 'top' ? /*#__PURE__*/jsxRuntime.jsx(StyledArrow, {
2870
+ $position: position
2871
+ }) : null]
2872
+ });
2873
+ }
2874
+
2875
+ const tooltipDefaultPosition = 'top';
2876
+
2877
+ // Since the tooltip use absolute positionning, we need a parent to provide the relative root
2878
+ const TooltipContainer = /*#__PURE__*/styled__default.View.withConfig({
2879
+ displayName: "Tooltip__TooltipContainer",
2880
+ componentId: "kitt-universal__sc-7ja8gx-0"
2881
+ })(["position:relative;align-self:baseline;"]);
2882
+ // eslint-disable-next-line unicorn/expiring-todo-comments
2883
+ // TODO : update position on scroll in future iteration
2884
+ function Tooltip({
2885
+ children,
2886
+ defaultVisible,
2887
+ position = tooltipDefaultPosition,
2888
+ content,
2889
+ floatingPadding,
2890
+ onUpdate
2891
+ }) {
2892
+ const theme = /*#__PURE__*/styled.useTheme();
2893
+ const padding = floatingPadding || theme.kitt.tooltip.floatingPadding;
2894
+ const pressed = Animated.useSharedValue(defaultVisible);
2895
+ const opacityStyles = Animated.useAnimatedStyle(function () {
2896
+ const _f = function () {
2897
+ return {
2898
+ opacity: Animated.withSpring(pressed.value ? theme.kitt.tooltip.opacity : 0)
2899
+ };
2900
+ };
2901
+
2902
+ _f._closure = {
2903
+ withSpring: Animated.withSpring,
2904
+ pressed,
2905
+ theme: {
2906
+ kitt: {
2907
+ tooltip: {
2908
+ opacity: theme.kitt.tooltip.opacity
2909
+ }
2910
+ }
2911
+ }
2912
+ };
2913
+ _f.asString = "function _f(){const{withSpring,pressed,theme}=jsThis._closure;{return{opacity:withSpring(pressed.value?theme.kitt.tooltip.opacity:0)};}}";
2914
+ _f.__workletHash = 15953928507970;
2915
+ _f.__location = "/home/chris/ornikar/kitt/@ornikar/kitt-universal/src/Tooltip/Tooltip.tsx (57:41)";
2916
+ _f.__optimalization = 2;
2428
2917
 
2918
+ global.__reanimatedWorkletInit(_f);
2429
2919
 
2430
- &:hover, &:active, .kitt-hover & {
2431
- text-decoration: ${noUnderline ? 'underline' : 'none'};
2920
+ return _f;
2921
+ }());
2922
+ const {
2923
+ x,
2924
+ y,
2925
+ reference,
2926
+ floating,
2927
+ update,
2928
+ refs,
2929
+ middlewareData
2930
+ } = reactNative$1.useFloating({
2931
+ placement: position,
2932
+ middleware: [reactNative$1.offset(padding), reactNative$1.shift(), reactNative$1.flip({
2933
+ padding
2934
+ })]
2935
+ });
2936
+ react.useEffect(() => {
2937
+ if (!onUpdate) return;
2938
+ onUpdate({
2939
+ x,
2940
+ y,
2941
+ reference,
2942
+ floating,
2943
+ strategy: 'absolute',
2944
+ update,
2945
+ refs,
2946
+ middlewareData
2947
+ });
2948
+ }, [x, y, reference, floating, update, refs, middlewareData, onUpdate]);
2949
+ return /*#__PURE__*/jsxRuntime.jsxs(TooltipContainer, {
2950
+ children: [/*#__PURE__*/jsxRuntime.jsx(reactNative.View, {
2951
+ ref: reference,
2952
+ children: /*#__PURE__*/jsxRuntime.jsx(reactNative.Pressable, {
2953
+ accessibilityRole: "button",
2954
+ onPress: () => {
2955
+ pressed.value = !pressed.value;
2956
+ },
2957
+ children: children
2958
+ })
2959
+ }), /*#__PURE__*/jsxRuntime.jsx(reactNative.View, {
2960
+ ref: floating,
2961
+ accessibilityElementsHidden: !pressed.value,
2962
+ importantForAccessibility: pressed.value === true ? 'auto' : 'no-hide-descendants',
2963
+ style: { ...reactNative.StyleSheet.absoluteFillObject,
2964
+ top: y && position === 'bottom' ? y : undefined,
2965
+ bottom: y && position === 'top' ? y : undefined,
2966
+ left: x ?? 0
2967
+ },
2968
+ children: /*#__PURE__*/jsxRuntime.jsx(Animated__default.View, {
2969
+ style: [opacityStyles],
2970
+ children: /*#__PURE__*/jsxRuntime.jsx(TooltipView, {
2971
+ position: position,
2972
+ children: content
2973
+ })
2974
+ })
2975
+ })]
2976
+ });
2977
+ }
2978
+ Tooltip.View = TooltipView;
2979
+
2980
+ const StyledTypographyEmoji = /*#__PURE__*/styled__default(Emoji).withConfig({
2981
+ displayName: "TypographyEmoji__StyledTypographyEmoji",
2982
+ componentId: "kitt-universal__sc-1if5guu-0"
2983
+ })(["align-self:center;", ""], ({
2984
+ size
2985
+ }) => {
2986
+ /* Style Twemoji: https://github.com/twitter/twemoji#inline-styles */
2987
+ return `
2988
+ margin: 0 ${size / 20}px 0 ${size / 10}px;
2989
+ transform: translateY(${size / 10 * 2}px);
2990
+ `;
2991
+ });
2992
+ function TypographyEmoji({
2993
+ emoji,
2994
+ base,
2995
+ small,
2996
+ medium,
2997
+ large
2998
+ }) {
2999
+ const theme = /*#__PURE__*/styled.useTheme();
3000
+ const typeForCurrentWindowSize = useTypographyTypeForCurrentWindowSize(base, small, medium, large);
3001
+ const typeConfig = getTypographyTypeConfig(typeForCurrentWindowSize || 'body', theme);
3002
+ const typeConfigKey = getTypographyTypeConfigKey(theme);
3003
+ const {
3004
+ fontSize
3005
+ } = typeConfig[typeConfigKey];
3006
+
3007
+ if ((process.env.NODE_ENV !== "production")) {
3008
+ if (!fontSize.endsWith('px')) throw new Error(`Unexpected font-size value: ${fontSize}`);
2432
3009
  }
2433
- ` : ''}`);
3010
+
3011
+ return /*#__PURE__*/jsxRuntime.jsx(StyledTypographyEmoji, {
3012
+ size: parseInt(fontSize.slice(0, -2), 10),
3013
+ emoji: emoji
3014
+ });
3015
+ }
3016
+
3017
+ const TypographyLinkWebWrapper = withTheme( /*#__PURE__*/react$1.styled("span")({
3018
+ name: "TypographyLinkWebWrapper",
3019
+ class: "tcwz3nt"
3020
+ }));
3021
+ const StyledLink = /*#__PURE__*/styled__default.Text.withConfig({
3022
+ displayName: "TypographyLink__StyledLink",
3023
+ componentId: "kitt-universal__sc-1o1zy30-0"
3024
+ })(["text-decoration:", ";", ";", ";"], ({
3025
+ $noUnderline
3026
+ }) => $noUnderline ? 'none' : 'underline', ({
3027
+ $disabled
3028
+ }) => {
3029
+ return `
3030
+ text-decoration-color: inherit;
3031
+ transition: color 0.2s ease-in-out;
3032
+ cursor: ${$disabled ? 'not-allowed' : 'pointer'};
3033
+ `;
3034
+ }, ({
3035
+ $disabled,
3036
+ theme
3037
+ }) => {
3038
+ if (!$disabled) return undefined;
3039
+ return `color: ${theme.kitt.typography.link.disabledColor};`;
3040
+ });
2434
3041
  function TypographyLink({
2435
3042
  children,
2436
3043
  disabled,
2437
3044
  noUnderline,
3045
+ href,
3046
+ hrefAttrs,
2438
3047
  onPress,
2439
3048
  ...otherProps
2440
3049
  }) {
2441
- return /*#__PURE__*/React__default.createElement(Typography, _extends__default({}, otherProps, {
2442
- accessibilityRole: "none"
2443
- }), /*#__PURE__*/React__default.createElement(StyledLink, {
2444
- disabled: disabled,
2445
- noUnderline: noUnderline,
2446
- accessibilityRole: "link",
2447
- onPress: disabled ? undefined : onPress
2448
- }, children));
3050
+ return /*#__PURE__*/jsxRuntime.jsx(Typography, { ...otherProps,
3051
+ accessibilityRole: "none",
3052
+ children: /*#__PURE__*/jsxRuntime.jsx(StyleWebWrapper, {
3053
+ as: TypographyLinkWebWrapper,
3054
+ "data-nounderline": noUnderline,
3055
+ children: /*#__PURE__*/jsxRuntime.jsx(StyledLink, {
3056
+ $disabled: disabled,
3057
+ $noUnderline: noUnderline,
3058
+ href: href,
3059
+ hrefAttrs: hrefAttrs,
3060
+ accessibilityRole: "link",
3061
+ onPress: disabled ? undefined : onPress,
3062
+ children: children
3063
+ })
3064
+ })
3065
+ });
2449
3066
  }
2450
3067
 
2451
3068
  function matchWindowSize(currentWidth, {
@@ -2489,7 +3106,7 @@ function useKittTheme() {
2489
3106
  const {
2490
3107
  width
2491
3108
  } = reactNative.useWindowDimensions();
2492
- return React.useMemo(() => {
3109
+ return react.useMemo(() => {
2493
3110
  return {
2494
3111
  kitt: theme,
2495
3112
  responsive: createWindowSizeHelper(width),
@@ -2502,9 +3119,10 @@ function KittThemeProvider({
2502
3119
  children
2503
3120
  }) {
2504
3121
  const theme = useKittTheme();
2505
- return /*#__PURE__*/React__default.createElement(styled.ThemeProvider, {
2506
- theme: theme
2507
- }, children);
3122
+ return /*#__PURE__*/jsxRuntime.jsx(styled.ThemeProvider, {
3123
+ theme: theme,
3124
+ children: children
3125
+ });
2508
3126
  }
2509
3127
  const KittThemeDecorator = addons.makeDecorator({
2510
3128
  name: 'ThemeDecorator',
@@ -2513,18 +3131,9 @@ const KittThemeDecorator = addons.makeDecorator({
2513
3131
  options = {},
2514
3132
  parameters = {}
2515
3133
  }) => {
2516
- return /*#__PURE__*/React__default.createElement(KittThemeProvider, null, storyFn(context));
2517
- }
2518
- });
2519
-
2520
- const SafeAreaProviderDecorator = addons.makeDecorator({
2521
- name: 'SafeAreaProviderDecorator',
2522
- parameterName: 'safeAreaProvider',
2523
- wrapper: (storyFn, context, {
2524
- options = {},
2525
- parameters = {}
2526
- }) => {
2527
- return /*#__PURE__*/React__default.createElement(reactNativeSafeAreaContext.SafeAreaProvider, null, storyFn(context));
3134
+ return /*#__PURE__*/jsxRuntime.jsx(KittThemeProvider, {
3135
+ children: storyFn(context)
3136
+ });
2528
3137
  }
2529
3138
  });
2530
3139
 
@@ -2534,13 +3143,17 @@ function MatchWindowSize({
2534
3143
  }) {
2535
3144
  const match = useMatchWindowSize(matchWindowSizeOptions);
2536
3145
  if (!match) return null;
2537
- return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, children);
3146
+ return /*#__PURE__*/jsxRuntime.jsx(jsxRuntime.Fragment, {
3147
+ children: children
3148
+ });
2538
3149
  }
2539
3150
 
2540
3151
  exports.useWindowSize = reactNative.useWindowDimensions;
2541
3152
  exports.Avatar = Avatar;
2542
3153
  exports.Button = Button;
2543
3154
  exports.Card = Card;
3155
+ exports.Emoji = Emoji;
3156
+ exports.ExternalLink = ExternalLink;
2544
3157
  exports.Flex = Flex;
2545
3158
  exports.FullScreenModal = FullScreenModal;
2546
3159
  exports.Icon = Icon;
@@ -2551,6 +3164,7 @@ exports.InputText = InputText;
2551
3164
  exports.KittBreakpoints = KittBreakpoints;
2552
3165
  exports.KittBreakpointsMax = KittBreakpointsMax;
2553
3166
  exports.KittThemeDecorator = KittThemeDecorator;
3167
+ exports.KittThemeProvider = KittThemeProvider;
2554
3168
  exports.Label = Label;
2555
3169
  exports.LargeLoader = LargeLoader;
2556
3170
  exports.ListItem = ListItem;
@@ -2559,13 +3173,7 @@ exports.MatchWindowSize = MatchWindowSize;
2559
3173
  exports.Message = Message;
2560
3174
  exports.Modal = Modal;
2561
3175
  exports.Notification = Notification;
2562
- exports.PrimitiveLink = PrimitiveLink;
2563
- exports.PrimitivePressable = PrimitivePressable;
2564
- exports.PrimitiveScrollView = PrimitiveScrollView;
2565
- exports.PrimitiveText = PrimitiveText;
2566
- exports.PrimitiveView = PrimitiveView;
2567
3176
  exports.Radio = Radio;
2568
- exports.SafeAreaProviderDecorator = SafeAreaProviderDecorator;
2569
3177
  exports.Section = DeprecatedSection;
2570
3178
  exports.Story = Story;
2571
3179
  exports.StoryBlock = StoryBlock;
@@ -2576,8 +3184,10 @@ exports.StorySection = StorySection;
2576
3184
  exports.StoryTitle = StoryTitle;
2577
3185
  exports.Tag = Tag;
2578
3186
  exports.TextArea = TextArea;
3187
+ exports.TimePicker = TimePicker;
2579
3188
  exports.Tooltip = Tooltip;
2580
3189
  exports.Typography = Typography;
3190
+ exports.TypographyEmoji = TypographyEmoji;
2581
3191
  exports.TypographyIcon = TypographyIcon;
2582
3192
  exports.TypographyLink = TypographyLink;
2583
3193
  exports.createWindowSizeHelper = createWindowSizeHelper;