@ornikar/kitt-universal 1.0.2 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (120) hide show
  1. package/dist/definitions/Avatar/Avatar.d.ts.map +1 -1
  2. package/dist/definitions/Button/Button.d.ts +1 -1
  3. package/dist/definitions/Button/Button.d.ts.map +1 -1
  4. package/dist/definitions/Button/ButtonContainer.d.ts +3 -3
  5. package/dist/definitions/Button/ButtonContainer.d.ts.map +1 -1
  6. package/dist/definitions/Button/ButtonContent.d.ts +2 -1
  7. package/dist/definitions/Button/ButtonContent.d.ts.map +1 -1
  8. package/dist/definitions/Card/Card.d.ts.map +1 -1
  9. package/dist/definitions/FullScreenModal/Body.d.ts.map +1 -1
  10. package/dist/definitions/FullScreenModal/FullScreenModal.d.ts.map +1 -1
  11. package/dist/definitions/FullScreenModal/Header.d.ts.map +1 -1
  12. package/dist/definitions/Icon/Icon.d.ts.map +1 -1
  13. package/dist/definitions/Icon/SpinningIcon.web.d.ts +2 -5
  14. package/dist/definitions/Icon/SpinningIcon.web.d.ts.map +1 -1
  15. package/dist/definitions/IconButton/IconButton.d.ts +11 -0
  16. package/dist/definitions/IconButton/IconButton.d.ts.map +1 -0
  17. package/dist/definitions/IconButton/PressableAnimatedContainer.d.ts +13 -0
  18. package/dist/definitions/IconButton/PressableAnimatedContainer.d.ts.map +1 -0
  19. package/dist/definitions/IconButton/PressableIconButton.d.ts +8 -0
  20. package/dist/definitions/IconButton/PressableIconButton.d.ts.map +1 -0
  21. package/dist/definitions/ListItem/ListItem.d.ts +5 -3
  22. package/dist/definitions/ListItem/ListItem.d.ts.map +1 -1
  23. package/dist/definitions/ListItem/ListItemContent.d.ts +2 -2
  24. package/dist/definitions/ListItem/ListItemContent.d.ts.map +1 -1
  25. package/dist/definitions/ListItem/ListItemSideContent.d.ts +4 -3
  26. package/dist/definitions/ListItem/ListItemSideContent.d.ts.map +1 -1
  27. package/dist/definitions/Loader/LargeLoader.web.d.ts.map +1 -1
  28. package/dist/definitions/Message/Message.d.ts.map +1 -1
  29. package/dist/definitions/Modal/Body.d.ts +2 -4
  30. package/dist/definitions/Modal/Body.d.ts.map +1 -1
  31. package/dist/definitions/Modal/Footer.d.ts.map +1 -1
  32. package/dist/definitions/Modal/Header.d.ts.map +1 -1
  33. package/dist/definitions/Modal/Modal.d.ts +2 -2
  34. package/dist/definitions/Modal/Modal.d.ts.map +1 -1
  35. package/dist/definitions/Overlay/Overlay.d.ts +2 -2
  36. package/dist/definitions/Overlay/Overlay.d.ts.map +1 -1
  37. package/dist/definitions/Tag/Tag.d.ts.map +1 -1
  38. package/dist/definitions/forms/InputField/InputField.d.ts.map +1 -1
  39. package/dist/definitions/forms/InputText/InputText.d.ts +0 -1
  40. package/dist/definitions/forms/InputText/InputText.d.ts.map +1 -1
  41. package/dist/definitions/forms/Radio/Radio.d.ts.map +1 -1
  42. package/dist/definitions/index.d.ts +15 -1
  43. package/dist/definitions/index.d.ts.map +1 -1
  44. package/dist/definitions/primitives/PrimitiveLink.d.ts +11 -0
  45. package/dist/definitions/primitives/PrimitiveLink.d.ts.map +1 -0
  46. package/dist/definitions/primitives/PrimitiveLink.web.d.ts +4 -0
  47. package/dist/definitions/primitives/PrimitiveLink.web.d.ts.map +1 -0
  48. package/dist/definitions/primitives/PrimitivePressable.d.ts +16 -0
  49. package/dist/definitions/primitives/PrimitivePressable.d.ts.map +1 -0
  50. package/dist/definitions/primitives/PrimitivePressable.web.d.ts +4 -0
  51. package/dist/definitions/primitives/PrimitivePressable.web.d.ts.map +1 -0
  52. package/dist/definitions/primitives/PrimitiveScrollView.d.ts +8 -0
  53. package/dist/definitions/primitives/PrimitiveScrollView.d.ts.map +1 -0
  54. package/dist/definitions/primitives/PrimitiveScrollView.web.d.ts +4 -0
  55. package/dist/definitions/primitives/PrimitiveScrollView.web.d.ts.map +1 -0
  56. package/dist/definitions/primitives/PrimitiveText.d.ts +14 -0
  57. package/dist/definitions/primitives/PrimitiveText.d.ts.map +1 -0
  58. package/dist/definitions/primitives/PrimitiveText.web.d.ts +6 -0
  59. package/dist/definitions/primitives/PrimitiveText.web.d.ts.map +1 -0
  60. package/dist/definitions/primitives/PrimitiveView.d.ts +21 -0
  61. package/dist/definitions/primitives/PrimitiveView.d.ts.map +1 -0
  62. package/dist/definitions/primitives/PrimitiveView.web.d.ts +23 -0
  63. package/dist/definitions/primitives/PrimitiveView.web.d.ts.map +1 -0
  64. package/dist/definitions/primitives/helpers.d.ts +7 -0
  65. package/dist/definitions/primitives/helpers.d.ts.map +1 -0
  66. package/dist/definitions/primitives/reset.d.ts +2 -0
  67. package/dist/definitions/primitives/reset.d.ts.map +1 -0
  68. package/dist/definitions/story-components/Flex.d.ts +9 -0
  69. package/dist/definitions/story-components/Flex.d.ts.map +1 -0
  70. package/dist/definitions/story-components/Story.d.ts.map +1 -1
  71. package/dist/definitions/story-components/StoryBlock.d.ts +11 -0
  72. package/dist/definitions/story-components/StoryBlock.d.ts.map +1 -0
  73. package/dist/definitions/story-components/StoryContainer.d.ts +9 -0
  74. package/dist/definitions/story-components/StoryContainer.d.ts.map +1 -0
  75. package/dist/definitions/story-components/StoryContainer.web.d.ts +4 -0
  76. package/dist/definitions/story-components/StoryContainer.web.d.ts.map +1 -0
  77. package/dist/definitions/story-components/StoryGrid.d.ts +2 -1
  78. package/dist/definitions/story-components/StoryGrid.d.ts.map +1 -1
  79. package/dist/definitions/story-components/StorySection.d.ts +23 -0
  80. package/dist/definitions/story-components/StorySection.d.ts.map +1 -0
  81. package/dist/definitions/story-components/StoryTitle.d.ts.map +1 -1
  82. package/dist/definitions/story-components/index.d.ts +10 -1
  83. package/dist/definitions/story-components/index.d.ts.map +1 -1
  84. package/dist/definitions/story-components/theme.d.ts +2 -0
  85. package/dist/definitions/story-components/theme.d.ts.map +1 -0
  86. package/dist/definitions/themes/default.d.ts +37 -6
  87. package/dist/definitions/themes/default.d.ts.map +1 -1
  88. package/dist/definitions/themes/late-ocean/buttonLateOceanTheme.d.ts +8 -0
  89. package/dist/definitions/themes/late-ocean/buttonLateOceanTheme.d.ts.map +1 -1
  90. package/dist/definitions/themes/late-ocean/colorsLateOceanTheme.d.ts +1 -0
  91. package/dist/definitions/themes/late-ocean/colorsLateOceanTheme.d.ts.map +1 -1
  92. package/dist/definitions/themes/late-ocean/iconButton.d.ts +36 -0
  93. package/dist/definitions/themes/late-ocean/iconButton.d.ts.map +1 -0
  94. package/dist/definitions/themes/late-ocean/tagLateOceanTheme.d.ts.map +1 -1
  95. package/dist/definitions/themes/late-ocean/typographyLateOceanTheme.d.ts +3 -6
  96. package/dist/definitions/themes/late-ocean/typographyLateOceanTheme.d.ts.map +1 -1
  97. package/dist/definitions/themes/palettes/lateOceanColorPalette.d.ts +2 -0
  98. package/dist/definitions/themes/palettes/lateOceanColorPalette.d.ts.map +1 -1
  99. package/dist/definitions/typography/Typography.d.ts +11 -5
  100. package/dist/definitions/typography/Typography.d.ts.map +1 -1
  101. package/dist/definitions/typography/TypographyLink.d.ts +6 -4
  102. package/dist/definitions/typography/TypographyLink.d.ts.map +1 -1
  103. package/dist/definitions/utils/tests/styled-component-typing-test.d.ts +18 -0
  104. package/dist/definitions/utils/tests/styled-component-typing-test.d.ts.map +1 -0
  105. package/dist/definitions/utils/windowSize/createWindowSizeHelper.d.ts +2 -2
  106. package/dist/index-browser-all.es.android.js +590 -158
  107. package/dist/index-browser-all.es.android.js.map +1 -1
  108. package/dist/index-browser-all.es.ios.js +590 -158
  109. package/dist/index-browser-all.es.ios.js.map +1 -1
  110. package/dist/index-browser-all.es.js +625 -149
  111. package/dist/index-browser-all.es.js.map +1 -1
  112. package/dist/index-browser-all.es.web.js +735 -178
  113. package/dist/index-browser-all.es.web.js.map +1 -1
  114. package/dist/index-node-14.17.cjs.js +652 -137
  115. package/dist/index-node-14.17.cjs.js.map +1 -1
  116. package/dist/tsbuildinfo +1 -1
  117. package/package.json +12 -6
  118. package/dist/definitions/story-components/Section.d.ts +0 -18
  119. package/dist/definitions/story-components/Section.d.ts.map +0 -1
  120. package/dist/styles.css +0 -117
@@ -6,14 +6,19 @@ const _extends = require('@babel/runtime/helpers/extends');
6
6
  const kittIcons = require('@ornikar/kitt-icons');
7
7
  const React = require('react');
8
8
  const reactNative = require('react-native');
9
- const styled = require('styled-components/native');
9
+ const styled = require('styled-components');
10
10
  const reactNativeSafeAreaContext = require('react-native-safe-area-context');
11
+ const Animated = require('react-native-reanimated');
12
+ const addons = require('@storybook/addons');
11
13
 
12
14
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e['default'] : e; }
13
15
 
14
16
  const _extends__default = /*#__PURE__*/_interopDefaultLegacy(_extends);
15
17
  const React__default = /*#__PURE__*/_interopDefaultLegacy(React);
16
18
  const styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
19
+ const Animated__default = /*#__PURE__*/_interopDefaultLegacy(Animated);
20
+
21
+ const PrimitiveView = reactNative.View;
17
22
 
18
23
  function SpinningIcon({
19
24
  children
@@ -47,7 +52,7 @@ function SpinningIcon({
47
52
  }, children);
48
53
  }
49
54
 
50
- const IconContainer$2 = /*#__PURE__*/styled__default.View.withConfig({
55
+ const IconContainer$2 = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
51
56
  displayName: "Icon__IconContainer",
52
57
  componentId: "kitt-universal__sc-usm0ol-0"
53
58
  })(["color:", ";width:", "px;height:", "px;align-self:", ";"], ({
@@ -76,12 +81,14 @@ function Icon({
76
81
  }, spin ? /*#__PURE__*/React__default.createElement(SpinningIcon, null, clonedIcon) : clonedIcon);
77
82
  }
78
83
 
84
+ const PrimitiveText = reactNative.Text;
85
+
79
86
  const TypographyTypeContext = /*#__PURE__*/React.createContext(undefined);
80
87
  const TypographyColorContext = /*#__PURE__*/React.createContext('black');
81
88
  function useTypographyColor() {
82
89
  return React.useContext(TypographyColorContext);
83
90
  }
84
- const StyledTypography = /*#__PURE__*/styled__default.Text.withConfig({
91
+ const StyledTypography = /*#__PURE__*/styled__default(PrimitiveText).withConfig({
85
92
  displayName: "Typography__StyledTypography",
86
93
  componentId: "kitt-universal__sc-1dz700q-0"
87
94
  })(["", " ", ""], ({
@@ -142,11 +149,13 @@ function Typography({
142
149
  color: colorWithDefaultToBlack,
143
150
  isHeader: isHeader,
144
151
  type: base,
145
- variant: nonNullableVariant
152
+ variant: nonNullableVariant,
153
+ accessibilityRole: accessibilityRole || undefined
146
154
  }, otherProps))) : /*#__PURE__*/React__default.createElement(StyledTypography, _extends__default({
147
155
  color: colorWithDefaultToBlack,
148
156
  isHeader: isHeader,
149
- variant: nonNullableVariant
157
+ variant: nonNullableVariant,
158
+ accessibilityRole: accessibilityRole || undefined
150
159
  }, otherProps));
151
160
  return color ? /*#__PURE__*/React__default.createElement(TypographyColorContext.Provider, {
152
161
  value: color
@@ -160,19 +169,19 @@ function TypographyText(props) {
160
169
  }
161
170
 
162
171
  function TypographyParagraph(props) {
163
- // @ts-expect-error paragraph is not allowed in react-native but exists in react-native-web
164
172
  return /*#__PURE__*/React__default.createElement(Typography, _extends__default({
165
173
  accessibilityRole: "paragraph"
166
174
  }, props));
167
175
  }
168
176
 
169
- const createHeading = level => {
177
+ const createHeading = (level, defaultBase) => {
170
178
  // https://github.com/necolas/react-native-web/issues/401
171
179
  function TypographyHeading(props) {
172
180
  return /*#__PURE__*/React__default.createElement(Typography, _extends__default({
173
- accessibilityRole: "header"
181
+ accessibilityRole: "header",
182
+ base: defaultBase
174
183
  }, props, {
175
- "aria-level": level
184
+ accessibilityLevel: level
176
185
  }));
177
186
  }
178
187
 
@@ -182,17 +191,33 @@ const createHeading = level => {
182
191
 
183
192
  Typography.Text = TypographyText;
184
193
  Typography.Paragraph = TypographyParagraph;
185
- Typography.h1 = createHeading('1');
186
- Typography.h2 = createHeading('2');
187
- Typography.h3 = createHeading('3');
188
- Typography.h4 = createHeading('4');
189
- Typography.h5 = createHeading('5');
194
+ Typography.Header1 = createHeading(1);
195
+ Typography.Header2 = createHeading(2);
196
+ Typography.Header3 = createHeading(3);
197
+ Typography.Header4 = createHeading(4);
198
+ Typography.Header5 = createHeading(5);
199
+ Typography.Header6 = createHeading(6);
200
+ /** @deprecated use Typography.Header1 */
201
+
202
+ Typography.h1 = createHeading(1, 'header1');
203
+ /** @deprecated use Typography.Header2 */
204
+
205
+ Typography.h2 = createHeading(2, 'header2');
206
+ /** @deprecated use Typography.Header3 */
207
+
208
+ Typography.h3 = createHeading(3, 'header3');
209
+ /** @deprecated use Typography.Header4 */
210
+
211
+ Typography.h4 = createHeading(4, 'header4');
212
+ /** @deprecated use Typography.Header6 */
213
+
214
+ Typography.h5 = createHeading(5, 'header5');
190
215
 
191
216
  const getFirstCharacter = string => string ? string[0] : '';
192
217
 
193
218
  const getInitials = (firstname, lastname) => (getFirstCharacter(firstname) + getFirstCharacter(lastname)).toUpperCase();
194
219
 
195
- const StyledAvatarView = /*#__PURE__*/styled__default.View.withConfig({
220
+ const StyledAvatarView = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
196
221
  displayName: "Avatar__StyledAvatarView",
197
222
  componentId: "kitt-universal__sc-9miubv-0"
198
223
  })(["border-radius:", "px;background-color:", ";height:", "px;width:", "px;overflow:hidden;align-items:center;justify-content:center;"], ({
@@ -252,7 +277,9 @@ function Avatar({
252
277
  })));
253
278
  }
254
279
 
255
- const ButtonContainer = /*#__PURE__*/styled__default.Pressable.withConfig({
280
+ const PrimitivePressable = reactNative.Pressable;
281
+
282
+ const ButtonContainer = /*#__PURE__*/styled__default(PrimitivePressable).withConfig({
256
283
  displayName: "ButtonContainer",
257
284
  componentId: "kitt-universal__sc-ofbpwm-0"
258
285
  })(["min-width:", ";max-width:", ";width:", ";min-height:", ";background-color:", ";padding:", ";flex-direction:row;align-self:flex-start;border-radius:", ";border-color:", ";border-width:", ";"], ({
@@ -341,14 +368,14 @@ const ButtonText = /*#__PURE__*/styled__default(Typography.Text).withConfig({
341
368
  displayName: "ButtonContent__ButtonText",
342
369
  componentId: "kitt-universal__sc-dnyw3n-0"
343
370
  })(["text-align:center;"]);
344
- const Content$1 = /*#__PURE__*/styled__default.View.withConfig({
371
+ const Content$1 = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
345
372
  displayName: "ButtonContent__Content",
346
373
  componentId: "kitt-universal__sc-dnyw3n-1"
347
374
  })(["flex-direction:row;align-items:center;justify-content:center;flex:", ";"], ({
348
375
  stretch,
349
376
  iconOnly
350
377
  }) => `${stretch || iconOnly ? 1 : 0} 1 auto`);
351
- const IconContainer$1 = /*#__PURE__*/styled__default.View.withConfig({
378
+ const IconContainer$1 = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
352
379
  displayName: "ButtonContent__IconContainer",
353
380
  componentId: "kitt-universal__sc-dnyw3n-2"
354
381
  })(["", ""], ({
@@ -401,7 +428,7 @@ function ButtonContent({
401
428
  size: theme.kitt.button.iconSize
402
429
  };
403
430
 
404
- if (process.env.NODE_ENV !== "production") {
431
+ if ((process.env.NODE_ENV !== "production")) {
405
432
  if (!(children || icon)) {
406
433
  throw new Error('kitt(Button): You should provide at least a children or a icon');
407
434
  }
@@ -479,7 +506,7 @@ function Button({
479
506
  }), children));
480
507
  }
481
508
 
482
- const Container$5 = /*#__PURE__*/styled__default.View.withConfig({
509
+ const Container$5 = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
483
510
  displayName: "Card__Container",
484
511
  componentId: "kitt-universal__sc-1n9psug-0"
485
512
  })(["background-color:", ";padding:", ";border-radius:", ";border-width:", ";border-color:", ";"], ({
@@ -510,7 +537,7 @@ const getColorFromState = state => {
510
537
  return 'danger';
511
538
 
512
539
  default:
513
- return 'grey';
540
+ return 'black-light';
514
541
  }
515
542
  };
516
543
 
@@ -574,11 +601,11 @@ const KittBreakpointsMax = {
574
601
  LARGE: KittBreakpoints.WIDE - 1
575
602
  };
576
603
 
577
- const FieldContainer = /*#__PURE__*/styled__default.View.withConfig({
604
+ const FieldContainer = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
578
605
  displayName: "InputField__FieldContainer",
579
606
  componentId: "kitt-universal__sc-13fkixs-0"
580
607
  })(["padding:5px 0 10px;"]);
581
- const FeedbackContainer = /*#__PURE__*/styled__default.View.withConfig({
608
+ const FeedbackContainer = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
582
609
  displayName: "InputField__FeedbackContainer",
583
610
  componentId: "kitt-universal__sc-13fkixs-1"
584
611
  })(["", ";"], ({
@@ -586,13 +613,13 @@ const FeedbackContainer = /*#__PURE__*/styled__default.View.withConfig({
586
613
  }) => theme.responsive.ifWindowSizeMatches({
587
614
  minWidth: KittBreakpoints.SMALL
588
615
  }, 'padding-top: 10px', 'padding-top: 5px'));
589
- const FieldLabelContainer = /*#__PURE__*/styled__default.View.withConfig({
616
+ const FieldLabelContainer = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
590
617
  displayName: "InputField__FieldLabelContainer",
591
618
  componentId: "kitt-universal__sc-13fkixs-2"
592
619
  })(["flex-direction:row;align-items:center;padding-bottom:", "px;"], ({
593
620
  theme
594
621
  }) => theme.kitt.forms.inputField.labelContainerPaddingBottom);
595
- const LabelContainer = /*#__PURE__*/styled__default.View.withConfig({
622
+ const LabelContainer = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
596
623
  displayName: "InputField__LabelContainer",
597
624
  componentId: "kitt-universal__sc-13fkixs-3"
598
625
  })(["margin-right:", "px;"], ({
@@ -637,7 +664,7 @@ const styledTextInputMixin = /*#__PURE__*/styled.css(["background-color:", ";bor
637
664
  }) => theme.kitt.typography.colors[theme.kitt.forms.input.states[state].color], ({
638
665
  theme
639
666
  }) => theme.kitt.typography.types.bodies.fontFamily.regular);
640
- const Input = /*#__PURE__*/styled__default.TextInput.withConfig({
667
+ const Input = /*#__PURE__*/styled__default(reactNative.TextInput).withConfig({
641
668
  displayName: "InputText__Input",
642
669
  componentId: "kitt-universal__sc-uke279-0"
643
670
  })(["", " padding:", ";line-height:", ";min-height:", "px;"], styledTextInputMixin, ({
@@ -649,7 +676,7 @@ const Input = /*#__PURE__*/styled__default.TextInput.withConfig({
649
676
  }) => !multiline && reactNative.Platform.OS === 'ios' ? 0 : theme.kitt.typography.types.bodies.configs.body.baseAndSmall.lineHeight, ({
650
677
  minHeight
651
678
  }) => minHeight);
652
- const Container$4 = /*#__PURE__*/styled__default.View.withConfig({
679
+ const Container$4 = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
653
680
  displayName: "InputText__Container",
654
681
  componentId: "kitt-universal__sc-uke279-1"
655
682
  })(["margin-top:", ";margin-bottom:", ";"], ({
@@ -657,7 +684,7 @@ const Container$4 = /*#__PURE__*/styled__default.View.withConfig({
657
684
  }) => theme.kitt.forms.input.marginTop, ({
658
685
  theme
659
686
  }) => theme.kitt.forms.input.marginBottom);
660
- const PasswordButtonContainer = /*#__PURE__*/styled__default.Pressable.withConfig({
687
+ const PasswordButtonContainer = /*#__PURE__*/styled__default(PrimitivePressable).withConfig({
661
688
  displayName: "InputText__PasswordButtonContainer",
662
689
  componentId: "kitt-universal__sc-uke279-2"
663
690
  })(["position:absolute;right:0;top:0;bottom:0;justify-content:center;padding:", "px;"], ({
@@ -746,6 +773,7 @@ const InputText = /*#__PURE__*/React.forwardRef(({
746
773
  if (onBlur) onBlur(e);
747
774
  }
748
775
  })), type === 'password' && !disabled && /*#__PURE__*/React__default.createElement(PasswordButtonContainer, {
776
+ accessibilityRole: "button",
749
777
  onPress: togglePasswordVisibility
750
778
  }, /*#__PURE__*/React__default.createElement(TypographyIcon, {
751
779
  icon: isPasswordVisible ? /*#__PURE__*/React__default.createElement(kittIcons.EyeIcon, null) : /*#__PURE__*/React__default.createElement(kittIcons.EyeOffIcon, null),
@@ -765,7 +793,7 @@ function Label({
765
793
  }, children) : children);
766
794
  }
767
795
 
768
- const OuterRadio = /*#__PURE__*/styled__default.View.withConfig({
796
+ const OuterRadio = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
769
797
  displayName: "Radio__OuterRadio",
770
798
  componentId: "kitt-universal__sc-1mdgr2o-0"
771
799
  })(["background-color:", ";width:", "px;height:", "px;border-radius:", "px;border-width:", ";border-color:", ";"], ({
@@ -783,7 +811,7 @@ const OuterRadio = /*#__PURE__*/styled__default.View.withConfig({
783
811
  theme,
784
812
  disabled
785
813
  }) => theme.kitt.forms.radio[disabled ? 'disabled' : 'unchecked'].borderColor);
786
- const SelectedOuterRadio = /*#__PURE__*/styled__default.View.withConfig({
814
+ const SelectedOuterRadio = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
787
815
  displayName: "Radio__SelectedOuterRadio",
788
816
  componentId: "kitt-universal__sc-1mdgr2o-1"
789
817
  })(["background-color:", ";width:", "px;height:", "px;border-radius:", "px;justify-content:center;align-items:center;"], ({
@@ -795,7 +823,7 @@ const SelectedOuterRadio = /*#__PURE__*/styled__default.View.withConfig({
795
823
  }) => theme.kitt.forms.radio.size, ({
796
824
  theme
797
825
  }) => theme.kitt.forms.radio.size / 2);
798
- const SelectedInnerRadio = /*#__PURE__*/styled__default.View.withConfig({
826
+ const SelectedInnerRadio = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
799
827
  displayName: "Radio__SelectedInnerRadio",
800
828
  componentId: "kitt-universal__sc-1mdgr2o-2"
801
829
  })(["background-color:", ";width:", "px;height:", "px;border-radius:", "px;"], ({
@@ -807,7 +835,7 @@ const SelectedInnerRadio = /*#__PURE__*/styled__default.View.withConfig({
807
835
  }) => theme.kitt.forms.radio.checked.innerSize, ({
808
836
  theme
809
837
  }) => theme.kitt.forms.radio.checked.innerSize / 2);
810
- const Container$3 = /*#__PURE__*/styled__default.Pressable.withConfig({
838
+ const Container$3 = /*#__PURE__*/styled__default(PrimitivePressable).withConfig({
811
839
  displayName: "Radio__Container",
812
840
  componentId: "kitt-universal__sc-1mdgr2o-3"
813
841
  })(["flex-direction:row;align-items:center;"]);
@@ -830,7 +858,7 @@ function Radio({
830
858
  disabled: disabled,
831
859
  accessibilityRole: "radio",
832
860
  "aria-checked": checked,
833
- accessible: checked && !disabled,
861
+ focusable: checked && !disabled,
834
862
  onPress: () => {
835
863
  onChange(value);
836
864
  }
@@ -853,7 +881,7 @@ function TextArea({ ...props
853
881
  }));
854
882
  }
855
883
 
856
- const Body = /*#__PURE__*/styled__default.View.withConfig({
884
+ const Body = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
857
885
  displayName: "Body",
858
886
  componentId: "kitt-universal__sc-1ofncfn-0"
859
887
  })(["", " background-color:", ";flex:1;"], ({
@@ -871,7 +899,7 @@ function FullScreenModalBody({
871
899
  return /*#__PURE__*/React__default.createElement(Body, null, children);
872
900
  }
873
901
 
874
- const SideContainer = /*#__PURE__*/styled__default.View.withConfig({
902
+ const SideContainer = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
875
903
  displayName: "Header__SideContainer",
876
904
  componentId: "kitt-universal__sc-dfmxi1-0"
877
905
  })(["", ""], ({
@@ -891,7 +919,7 @@ function getHeaderHorizontalMediumPadding(spacing) {
891
919
  return spacing * 6;
892
920
  }
893
921
 
894
- const Header = /*#__PURE__*/styled__default.View.withConfig({
922
+ const Header = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
895
923
  displayName: "Header",
896
924
  componentId: "kitt-universal__sc-dfmxi1-1"
897
925
  })(["", ";border-bottom-color:", ";border-bottom-width:1px;flex-direction:row;align-items:center;"], ({
@@ -909,7 +937,7 @@ const Header = /*#__PURE__*/styled__default.View.withConfig({
909
937
  }, ({
910
938
  theme
911
939
  }) => theme.kitt.fullScreenModal.header.borderColor);
912
- const HeaderContent = /*#__PURE__*/styled__default.View.withConfig({
940
+ const HeaderContent = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
913
941
  displayName: "Header__HeaderContent",
914
942
  componentId: "kitt-universal__sc-dfmxi1-2"
915
943
  })(["", ";", ";justify-content:center;align-items:center;"], ({
@@ -982,7 +1010,7 @@ function FullScreenModalHeader({
982
1010
  }, right) : null);
983
1011
  }
984
1012
 
985
- const Container$2 = /*#__PURE__*/styled__default.View.withConfig({
1013
+ const Container$2 = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
986
1014
  displayName: "FullScreenModal__Container",
987
1015
  componentId: "kitt-universal__sc-11qpbe3-0"
988
1016
  })(["flex:1;background-color:", ";"], ({
@@ -996,7 +1024,246 @@ function FullScreenModal({
996
1024
  FullScreenModal.Header = FullScreenModalHeader;
997
1025
  FullScreenModal.Body = FullScreenModalBody;
998
1026
 
999
- const ContentView$1 = /*#__PURE__*/styled__default.View.withConfig({
1027
+ const PressableIconButton = /*#__PURE__*/styled__default(PrimitivePressable).withConfig({
1028
+ displayName: "PressableIconButton",
1029
+ componentId: "kitt-universal__sc-1m6jo3s-0"
1030
+ })(["border-radius:", "px;width:", "px;height:", "px;align-items:center;justify-content:center;position:relative;background-color:transparent;", ";"], ({
1031
+ theme
1032
+ }) => theme.kitt.iconButton.borderRadius, ({
1033
+ theme
1034
+ }) => theme.kitt.iconButton.width, ({
1035
+ theme
1036
+ }) => theme.kitt.iconButton.height, ({
1037
+ theme,
1038
+ color,
1039
+ disabled
1040
+ }) => {
1041
+ const {
1042
+ iconButton
1043
+ } = theme.kitt;
1044
+
1045
+ if (reactNative.Platform.OS !== 'web') {
1046
+ return undefined;
1047
+ }
1048
+
1049
+ const {
1050
+ transition,
1051
+ scale
1052
+ } = iconButton;
1053
+
1054
+ if (disabled) {
1055
+ return `
1056
+ background-color: ${iconButton.disabled.backgroundColor};
1057
+ `;
1058
+ }
1059
+
1060
+ return `
1061
+ 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
+ `;
1088
+ });
1089
+
1090
+ function WebAnimatedContainer({
1091
+ children,
1092
+ color,
1093
+ disabled,
1094
+ onPress
1095
+ }) {
1096
+ return /*#__PURE__*/React__default.createElement(PressableIconButton, {
1097
+ accessibilityRole: "button",
1098
+ color: color,
1099
+ disabled: disabled,
1100
+ onPress: onPress
1101
+ }, children);
1102
+ }
1103
+
1104
+ const AnimatedIconButtonBackground = /*#__PURE__*/styled__default(Animated__default.View).withConfig({
1105
+ displayName: "PressableAnimatedContainer__AnimatedIconButtonBackground",
1106
+ componentId: "kitt-universal__sc-xl9ll5-0"
1107
+ })(["background-color:", ";border-radius:", "px;width:", "px;height:", "px;position:absolute;bottom:0;left:0;"], ({
1108
+ theme,
1109
+ color,
1110
+ disabled
1111
+ }) => {
1112
+ const {
1113
+ iconButton
1114
+ } = theme.kitt;
1115
+ if (disabled) return iconButton.disabled.backgroundColor;
1116
+ if (color === 'white') return iconButton.white.pressedBackgroundColor;
1117
+ return iconButton.default.pressedBackgroundColor;
1118
+ }, ({
1119
+ theme
1120
+ }) => theme.kitt.iconButton.borderRadius, ({
1121
+ theme
1122
+ }) => theme.kitt.iconButton.width, ({
1123
+ theme
1124
+ }) => theme.kitt.iconButton.height);
1125
+ const AnimatedViewContainer = /*#__PURE__*/styled__default(Animated__default.View).withConfig({
1126
+ displayName: "PressableAnimatedContainer__AnimatedViewContainer",
1127
+ componentId: "kitt-universal__sc-xl9ll5-1"
1128
+ })(["position:relative;align-items:center;justify-content:center;width:100%;height:100%;"]);
1129
+
1130
+ function NativeAnimatedContainer({
1131
+ disabled,
1132
+ color = 'black',
1133
+ children,
1134
+ onPress
1135
+ }) {
1136
+ const theme = /*#__PURE__*/styled.useTheme();
1137
+ const pressed = Animated.useSharedValue(false);
1138
+ const opacityStyles = Animated.useAnimatedStyle(function () {
1139
+ const _f = function () {
1140
+ return {
1141
+ opacity: Animated.withSpring(pressed.value ? 1 : 0)
1142
+ };
1143
+ };
1144
+
1145
+ _f._closure = {
1146
+ withSpring: Animated.withSpring,
1147
+ pressed
1148
+ };
1149
+ _f.asString = "function _f(){const{withSpring,pressed}=jsThis._closure;{return{opacity:withSpring(pressed.value?1:0)};}}";
1150
+ _f.__workletHash = 10645190329247;
1151
+ _f.__location = "/home/circleci/repo/@ornikar/kitt-universal/src/IconButton/PressableAnimatedContainer.tsx (64:41)";
1152
+ _f.__optimalization = 2;
1153
+
1154
+ global.__reanimatedWorkletInit(_f);
1155
+
1156
+ return _f;
1157
+ }());
1158
+ const scaleStyles = Animated.useAnimatedStyle(function () {
1159
+ const _f = function () {
1160
+ return {
1161
+ transform: [{
1162
+ scale: Animated.withSpring(pressed.value ? theme.kitt.iconButton.scale.base.active : theme.kitt.iconButton.scale.base.default)
1163
+ }]
1164
+ };
1165
+ };
1166
+
1167
+ _f._closure = {
1168
+ withSpring: Animated.withSpring,
1169
+ pressed,
1170
+ theme: {
1171
+ kitt: {
1172
+ iconButton: {
1173
+ scale: {
1174
+ base: {
1175
+ active: theme.kitt.iconButton.scale.base.active,
1176
+ default: theme.kitt.iconButton.scale.base.default
1177
+ }
1178
+ }
1179
+ }
1180
+ }
1181
+ }
1182
+ };
1183
+ _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)}]};}}";
1184
+ _f.__workletHash = 13861998831411;
1185
+ _f.__location = "/home/circleci/repo/@ornikar/kitt-universal/src/IconButton/PressableAnimatedContainer.tsx (70:39)";
1186
+ _f.__optimalization = 2;
1187
+
1188
+ global.__reanimatedWorkletInit(_f);
1189
+
1190
+ return _f;
1191
+ }());
1192
+ return /*#__PURE__*/React__default.createElement(PressableIconButton, {
1193
+ accessibilityRole: "button",
1194
+ disabled: disabled,
1195
+ color: color,
1196
+ onPress: onPress,
1197
+ onPressIn: () => {
1198
+ pressed.value = true;
1199
+ },
1200
+ onPressOut: () => {
1201
+ pressed.value = false;
1202
+ }
1203
+ }, /*#__PURE__*/React__default.createElement(AnimatedViewContainer, {
1204
+ style: disabled ? [{
1205
+ transform: [{
1206
+ scale: 1
1207
+ }]
1208
+ }] : [scaleStyles]
1209
+ }, /*#__PURE__*/React__default.createElement(AnimatedIconButtonBackground, {
1210
+ disabled: disabled,
1211
+ color: color,
1212
+ style: disabled ? [{
1213
+ opacity: 1
1214
+ }] : [opacityStyles]
1215
+ }), children));
1216
+ }
1217
+
1218
+ const PressableAnimatedContainer = reactNative.Platform.OS === 'web' ? WebAnimatedContainer : NativeAnimatedContainer;
1219
+
1220
+ const IconButtonContentBorder = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1221
+ displayName: "IconButton__IconButtonContentBorder",
1222
+ componentId: "kitt-universal__sc-swelbf-0"
1223
+ })(["border:", ";border-color:", ";width:", "px;height:", "px;align-items:center;justify-content:center;border-radius:", "px;"], ({
1224
+ theme
1225
+ }) => `${theme.kitt.iconButton.borderWidth}px solid`, ({
1226
+ theme,
1227
+ disabled
1228
+ }) => disabled ? theme.kitt.iconButton.disabled.borderColor : theme.kitt.iconButton.borderColor, ({
1229
+ theme
1230
+ }) => theme.kitt.iconButton.width - theme.kitt.iconButton.borderWidth, ({
1231
+ theme
1232
+ }) => theme.kitt.iconButton.height - theme.kitt.iconButton.borderWidth, ({
1233
+ theme
1234
+ }) => theme.kitt.iconButton.borderRadius);
1235
+
1236
+ function IconButtonContent({
1237
+ disabled,
1238
+ color,
1239
+ icon
1240
+ }) {
1241
+ return /*#__PURE__*/React__default.createElement(IconButtonContentBorder, {
1242
+ disabled: disabled
1243
+ }, /*#__PURE__*/React__default.createElement(TypographyIcon, {
1244
+ color: disabled ? 'black-light' : color,
1245
+ icon: icon
1246
+ }));
1247
+ }
1248
+
1249
+ function IconButton({
1250
+ icon,
1251
+ color,
1252
+ disabled,
1253
+ onPress
1254
+ }) {
1255
+ return /*#__PURE__*/React__default.createElement(PressableAnimatedContainer, {
1256
+ color: color,
1257
+ disabled: disabled,
1258
+ onPress: onPress
1259
+ }, /*#__PURE__*/React__default.createElement(IconButtonContent, {
1260
+ disabled: disabled,
1261
+ color: color,
1262
+ icon: icon
1263
+ }));
1264
+ }
1265
+
1266
+ const ContentView$1 = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1000
1267
  displayName: "ListItemContent__ContentView",
1001
1268
  componentId: "kitt-universal__sc-57q0u9-0"
1002
1269
  })(["flex:1 0 0%;align-self:center;"]);
@@ -1007,7 +1274,7 @@ function ListItemContent({
1007
1274
  return /*#__PURE__*/React__default.createElement(ContentView$1, rest, children);
1008
1275
  }
1009
1276
 
1010
- const SideContainerView = /*#__PURE__*/styled__default.View.withConfig({
1277
+ const SideContainerView = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1011
1278
  displayName: "ListItemSideContent__SideContainerView",
1012
1279
  componentId: "kitt-universal__sc-1vajiw-0"
1013
1280
  })(["flex-direction:row;margin-left:", ";margin-right:", ";"], ({
@@ -1027,7 +1294,7 @@ function ListItemSideContainer({
1027
1294
  side: side
1028
1295
  }, rest), children);
1029
1296
  }
1030
- const SideContentView = /*#__PURE__*/styled__default.View.withConfig({
1297
+ const SideContentView = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1031
1298
  displayName: "ListItemSideContent__SideContentView",
1032
1299
  componentId: "kitt-universal__sc-1vajiw-1"
1033
1300
  })(["align-self:", ";"], ({
@@ -1043,7 +1310,7 @@ function ListItemSideContent({
1043
1310
  }, rest), children);
1044
1311
  }
1045
1312
 
1046
- const ContainerView = /*#__PURE__*/styled__default.View.withConfig({
1313
+ const ContainerView = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1047
1314
  displayName: "ListItem__ContainerView",
1048
1315
  componentId: "kitt-universal__sc-2afp9s-0"
1049
1316
  })(["flex-direction:row;padding:", ";", ";border-color:", ";background-color:", ";"], ({
@@ -1081,12 +1348,20 @@ function ListItem({
1081
1348
  borders,
1082
1349
  left,
1083
1350
  right,
1351
+ onPress,
1084
1352
  ...rest
1085
1353
  }) {
1086
- return /*#__PURE__*/React__default.createElement(reactNative.Pressable, rest, /*#__PURE__*/React__default.createElement(ContainerView, {
1354
+ const Wrapper = onPress ? PrimitivePressable : React.Fragment;
1355
+ const wrapperProps = onPress ? {
1356
+ accessibilityRole: 'button',
1357
+ onPress,
1358
+ ...rest
1359
+ } : undefined;
1360
+ const containerProps = onPress ? undefined : rest;
1361
+ return /*#__PURE__*/React__default.createElement(Wrapper, wrapperProps, /*#__PURE__*/React__default.createElement(ContainerView, _extends__default({
1087
1362
  withPadding: withPadding,
1088
1363
  borders: borders
1089
- }, left ? /*#__PURE__*/React__default.createElement(ListItemSideContainer, {
1364
+ }, containerProps), left ? /*#__PURE__*/React__default.createElement(ListItemSideContainer, {
1090
1365
  side: "left"
1091
1366
  }, left) : null, /*#__PURE__*/React__default.createElement(ListItemContent, null, children), right ? /*#__PURE__*/React__default.createElement(ListItemSideContainer, {
1092
1367
  side: "right"
@@ -1125,7 +1400,7 @@ function LargeLoader({
1125
1400
 
1126
1401
  const xIconSize = 14;
1127
1402
  const mainIconSize = 20;
1128
- const Container$1 = /*#__PURE__*/styled__default.View.withConfig({
1403
+ const Container$1 = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1129
1404
  displayName: "Message__Container",
1130
1405
  componentId: "kitt-universal__sc-c6400e-0"
1131
1406
  })(["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;"], ({
@@ -1144,7 +1419,7 @@ const Container$1 = /*#__PURE__*/styled__default.View.withConfig({
1144
1419
  theme,
1145
1420
  insets
1146
1421
  }) => (insets?.top ?? 0) + theme.kitt.spacing * 4);
1147
- const CloseContainer = /*#__PURE__*/styled__default.TouchableOpacity.withConfig({
1422
+ const CloseContainer = /*#__PURE__*/styled__default(reactNative.TouchableOpacity).withConfig({
1148
1423
  displayName: "Message__CloseContainer",
1149
1424
  componentId: "kitt-universal__sc-c6400e-1"
1150
1425
  })(["margin-left:", "px;padding:", "px;"], ({
@@ -1152,13 +1427,13 @@ const CloseContainer = /*#__PURE__*/styled__default.TouchableOpacity.withConfig(
1152
1427
  }) => theme.kitt.spacing * 4, ({
1153
1428
  theme
1154
1429
  }) => theme.kitt.spacing);
1155
- const IconContainer = /*#__PURE__*/styled__default.View.withConfig({
1430
+ const IconContainer = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1156
1431
  displayName: "Message__IconContainer",
1157
1432
  componentId: "kitt-universal__sc-c6400e-2"
1158
1433
  })(["margin-right:", "px;"], ({
1159
1434
  theme
1160
1435
  }) => theme.kitt.spacing * 4);
1161
- const Content = /*#__PURE__*/styled__default.Text.withConfig({
1436
+ const Content = /*#__PURE__*/styled__default(PrimitiveText).withConfig({
1162
1437
  displayName: "Message__Content",
1163
1438
  componentId: "kitt-universal__sc-c6400e-3"
1164
1439
  })(["text-align:", ";flex:1;"], ({
@@ -1227,7 +1502,7 @@ function Message({
1227
1502
  })) : null);
1228
1503
  }
1229
1504
 
1230
- const OverlayPressable = /*#__PURE__*/styled__default.Pressable.withConfig({
1505
+ const OverlayPressable = /*#__PURE__*/styled__default(PrimitivePressable).withConfig({
1231
1506
  displayName: "Overlay__OverlayPressable",
1232
1507
  componentId: "kitt-universal__sc-1cz1gbr-0"
1233
1508
  })(({
@@ -1239,11 +1514,14 @@ function Overlay({
1239
1514
  onPress
1240
1515
  }) {
1241
1516
  return /*#__PURE__*/React__default.createElement(OverlayPressable, {
1517
+ accessibilityRole: "none",
1242
1518
  onPress: onPress
1243
- }, /*#__PURE__*/React__default.createElement(reactNative.View, null));
1519
+ }, /*#__PURE__*/React__default.createElement(PrimitiveView, null));
1244
1520
  }
1245
1521
 
1246
- const BodyView = /*#__PURE__*/styled__default.View.withConfig({
1522
+ const PrimitiveScrollView = reactNative.ScrollView;
1523
+
1524
+ const BodyView = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1247
1525
  displayName: "Body__BodyView",
1248
1526
  componentId: "kitt-universal__sc-17fwpo4-0"
1249
1527
  })(["padding:", "px ", "px;"], ({
@@ -1251,15 +1529,13 @@ const BodyView = /*#__PURE__*/styled__default.View.withConfig({
1251
1529
  }) => theme.kitt.spacing * 6, ({
1252
1530
  theme
1253
1531
  }) => theme.kitt.spacing * 4);
1254
- const ModalBody = /*#__PURE__*/React.forwardRef(({
1532
+ function ModalBody({
1255
1533
  children
1256
- }, ref) => {
1257
- return /*#__PURE__*/React__default.createElement(reactNative.ScrollView, {
1258
- ref: ref
1259
- }, /*#__PURE__*/React__default.createElement(BodyView, null, children));
1260
- });
1534
+ }) {
1535
+ return /*#__PURE__*/React__default.createElement(PrimitiveScrollView, null, /*#__PURE__*/React__default.createElement(BodyView, null, children));
1536
+ }
1261
1537
 
1262
- const FooterView = /*#__PURE__*/styled__default.View.withConfig({
1538
+ const FooterView = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1263
1539
  displayName: "Footer__FooterView",
1264
1540
  componentId: "kitt-universal__sc-1ujq2dc-0"
1265
1541
  })(["flex:0 0 auto;padding:", "px;border-top-width:1px;border-top-color:", ";"], ({
@@ -1275,7 +1551,7 @@ function ModalFooter({
1275
1551
 
1276
1552
  const OnCloseContext = /*#__PURE__*/React.createContext(() => {});
1277
1553
 
1278
- const HeaderView = /*#__PURE__*/styled__default.View.withConfig({
1554
+ const HeaderView = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1279
1555
  displayName: "Header__HeaderView",
1280
1556
  componentId: "kitt-universal__sc-1iwabch-0"
1281
1557
  })(["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;"], ({
@@ -1283,19 +1559,19 @@ const HeaderView = /*#__PURE__*/styled__default.View.withConfig({
1283
1559
  }) => theme.kitt.spacing * 2, ({
1284
1560
  theme
1285
1561
  }) => theme.kitt.colors.separator);
1286
- const LeftIconView = /*#__PURE__*/styled__default.View.withConfig({
1562
+ const LeftIconView = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1287
1563
  displayName: "Header__LeftIconView",
1288
1564
  componentId: "kitt-universal__sc-1iwabch-1"
1289
1565
  })(["align-self:flex-start;margin-right:", "px;"], ({
1290
1566
  theme
1291
1567
  }) => theme.kitt.spacing * 2);
1292
- const RightIconView = /*#__PURE__*/styled__default.View.withConfig({
1568
+ const RightIconView = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1293
1569
  displayName: "Header__RightIconView",
1294
1570
  componentId: "kitt-universal__sc-1iwabch-2"
1295
1571
  })(["align-self:flex-start;margin-left:", "px;"], ({
1296
1572
  theme
1297
1573
  }) => theme.kitt.spacing * 2);
1298
- const TitleView = /*#__PURE__*/styled__default.View.withConfig({
1574
+ const TitleView = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1299
1575
  displayName: "Header__TitleView",
1300
1576
  componentId: "kitt-universal__sc-1iwabch-3"
1301
1577
  })(["padding-left:", "px;flex-shrink:1;"], ({
@@ -1318,7 +1594,7 @@ function ModalHeader({
1318
1594
  })));
1319
1595
  }
1320
1596
 
1321
- const ModalView = /*#__PURE__*/styled__default.View.withConfig({
1597
+ const ModalView = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1322
1598
  displayName: "Modal__ModalView",
1323
1599
  componentId: "kitt-universal__sc-1xy2w5u-0"
1324
1600
  })(["top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:", "px ", "px;"], ({
@@ -1326,7 +1602,7 @@ const ModalView = /*#__PURE__*/styled__default.View.withConfig({
1326
1602
  }) => theme.kitt.spacing * 20, ({
1327
1603
  theme
1328
1604
  }) => theme.kitt.spacing * 4);
1329
- const ContentView = /*#__PURE__*/styled__default.View.withConfig({
1605
+ const ContentView = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1330
1606
  displayName: "Modal__ContentView",
1331
1607
  componentId: "kitt-universal__sc-1xy2w5u-1"
1332
1608
  })(["position:relative;display:flex;flex-direction:column;max-height:100%;max-width:540px;height:auto;width:100%;border-radius:", ";background-color:", ";"], ({
@@ -1378,11 +1654,81 @@ function Notification({
1378
1654
  }, children);
1379
1655
  }
1380
1656
 
1381
- const StoryTitleContainer = /*#__PURE__*/styled__default.View.withConfig({
1657
+ const PrimitiveLink = reactNative.Text;
1658
+
1659
+ const Flex = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1660
+ shouldForwardProp: (prop, defaultValidatorFn) => !['direction', 'padding'].includes(prop) && defaultValidatorFn(prop)
1661
+ }).withConfig({
1662
+ displayName: "Flex",
1663
+ componentId: "kitt-universal__sc-15q3v3h-0"
1664
+ })(["display:flex;flex-direction:", ";flex-wrap:wrap;padding:", "px;"], ({
1665
+ direction
1666
+ }) => direction, ({
1667
+ theme,
1668
+ padding = 0
1669
+ }) => padding * theme.kitt.spacing);
1670
+
1671
+ const storyPadding = 16;
1672
+
1673
+ const getBackgroundColorFromBlockColor = (theme, color = 'transparent') => {
1674
+ switch (color) {
1675
+ case 'dark':
1676
+ return '#293033';
1677
+
1678
+ case 'light':
1679
+ return '#ffffff';
1680
+
1681
+ case 'primary':
1682
+ return theme.kitt.palettes.lateOcean.lateOcean;
1683
+
1684
+ default:
1685
+ return 'transparent';
1686
+ }
1687
+ };
1688
+
1689
+ const getTypographyColorFromBlockColor = (color = 'transparent') => {
1690
+ switch (color) {
1691
+ case 'dark':
1692
+ case 'primary':
1693
+ return 'white';
1694
+
1695
+ case 'light':
1696
+ default:
1697
+ return 'black';
1698
+ }
1699
+ };
1700
+
1701
+ const StoryBlockBackgroundContext = /*#__PURE__*/React.createContext('transparent');
1702
+ const StoryBlockColorContext = /*#__PURE__*/React.createContext('black');
1703
+ const useStoryBlockColor = color => {
1704
+ const storyBlockColor = React.useContext(StoryBlockColorContext);
1705
+ return color || storyBlockColor;
1706
+ };
1707
+ const StyledStoryBlockView = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1708
+ displayName: "StoryBlock__StyledStoryBlockView",
1709
+ componentId: "kitt-universal__sc-3w4hdm-0"
1710
+ })(["padding:16px ", "px 0;margin:0 -", "px;background:", ";"], storyPadding, storyPadding, ({
1711
+ theme,
1712
+ background
1713
+ }) => getBackgroundColorFromBlockColor(theme, background));
1714
+ function StoryBlock({
1715
+ children,
1716
+ background
1717
+ }) {
1718
+ return /*#__PURE__*/React__default.createElement(StyledStoryBlockView, {
1719
+ background: background
1720
+ }, /*#__PURE__*/React__default.createElement(StoryBlockColorContext.Provider, {
1721
+ value: getTypographyColorFromBlockColor(background)
1722
+ }, /*#__PURE__*/React__default.createElement(StoryBlockBackgroundContext.Provider, {
1723
+ value: background
1724
+ }, children)));
1725
+ }
1726
+
1727
+ const StoryTitleContainer = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1382
1728
  displayName: "StoryTitle__StoryTitleContainer",
1383
1729
  componentId: "kitt-universal__sc-sic7hb-0"
1384
1730
  })(["margin-bottom:30px;"]);
1385
- const StorySubTitleContainer = /*#__PURE__*/styled__default.View.withConfig({
1731
+ const StorySubTitleContainer = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1386
1732
  displayName: "StoryTitle__StorySubTitleContainer",
1387
1733
  componentId: "kitt-universal__sc-sic7hb-1"
1388
1734
  })(["margin-bottom:10px;"]);
@@ -1391,10 +1737,10 @@ function StoryTitle({
1391
1737
  children,
1392
1738
  numberOfLines
1393
1739
  }) {
1394
- return /*#__PURE__*/React__default.createElement(StoryTitleContainer, null, /*#__PURE__*/React__default.createElement(Typography.h1, {
1740
+ return /*#__PURE__*/React__default.createElement(StoryTitleContainer, null, /*#__PURE__*/React__default.createElement(Typography.Header1, {
1395
1741
  variant: "bold",
1396
1742
  base: "header1",
1397
- color: color,
1743
+ color: useStoryBlockColor(color),
1398
1744
  numberOfLines: numberOfLines
1399
1745
  }, children));
1400
1746
  }
@@ -1404,10 +1750,10 @@ function StoryTitleLevel2({
1404
1750
  children,
1405
1751
  numberOfLines
1406
1752
  }) {
1407
- return /*#__PURE__*/React__default.createElement(StoryTitleContainer, null, /*#__PURE__*/React__default.createElement(Typography.h2, {
1753
+ return /*#__PURE__*/React__default.createElement(StoryTitleContainer, null, /*#__PURE__*/React__default.createElement(Typography.Header2, {
1408
1754
  variant: "bold",
1409
1755
  base: "header2",
1410
- color: color,
1756
+ color: useStoryBlockColor(color),
1411
1757
  numberOfLines: numberOfLines
1412
1758
  }, children));
1413
1759
  }
@@ -1419,11 +1765,11 @@ function StoryTitleLevel3({
1419
1765
  children,
1420
1766
  numberOfLines
1421
1767
  }) {
1422
- return /*#__PURE__*/React__default.createElement(StorySubTitleContainer, null, /*#__PURE__*/React__default.createElement(Typography.h3, {
1768
+ return /*#__PURE__*/React__default.createElement(StorySubTitleContainer, null, /*#__PURE__*/React__default.createElement(Typography.Header3, {
1423
1769
  variant: "bold",
1424
1770
  base: "header3",
1425
1771
  medium: "header4",
1426
- color: color,
1772
+ color: useStoryBlockColor(color),
1427
1773
  numberOfLines: numberOfLines
1428
1774
  }, children));
1429
1775
  }
@@ -1435,11 +1781,11 @@ function StoryTitleLevel4({
1435
1781
  children,
1436
1782
  numberOfLines
1437
1783
  }) {
1438
- return /*#__PURE__*/React__default.createElement(StorySubTitleContainer, null, /*#__PURE__*/React__default.createElement(Typography.h4, {
1784
+ return /*#__PURE__*/React__default.createElement(StorySubTitleContainer, null, /*#__PURE__*/React__default.createElement(Typography.Header4, {
1439
1785
  variant: "bold",
1440
1786
  base: "header4",
1441
1787
  medium: "header5",
1442
- color: color,
1788
+ color: useStoryBlockColor(color),
1443
1789
  numberOfLines: numberOfLines
1444
1790
  }, children));
1445
1791
  }
@@ -1449,22 +1795,38 @@ StoryTitle.Level2 = StoryTitleLevel2;
1449
1795
  StoryTitle.Level3 = StoryTitleLevel3;
1450
1796
  StoryTitle.Level4 = StoryTitleLevel4;
1451
1797
 
1452
- const StyledSection = /*#__PURE__*/styled__default.View.withConfig({
1453
- displayName: "Section__StyledSection",
1454
- componentId: "kitt-universal__sc-x4z1s-0"
1455
- })(["margin-bottom:30px;"]);
1456
- function Section({
1798
+ const StoryContainer$1 = /*#__PURE__*/styled__default(PrimitiveScrollView).withConfig({
1799
+ displayName: "Story__StoryContainer",
1800
+ componentId: "kitt-universal__sc-1kwdg2p-0"
1801
+ })(["padding:", "px;"], storyPadding);
1802
+ function Story({
1803
+ title,
1804
+ contentContainerStyle,
1805
+ children
1806
+ }) {
1807
+ return /*#__PURE__*/React__default.createElement(StoryContainer$1, {
1808
+ contentContainerStyle: contentContainerStyle
1809
+ }, /*#__PURE__*/React__default.createElement(StoryTitle, null, title), children);
1810
+ }
1811
+
1812
+ const StyledSection = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1813
+ displayName: "StorySection__StyledSection",
1814
+ componentId: "kitt-universal__sc-1b3liv5-0"
1815
+ })(["margin-bottom:32px;"]);
1816
+ function StorySection({
1457
1817
  title,
1458
1818
  className,
1459
1819
  children,
1820
+ internalIsDemoSection,
1460
1821
  ...props
1461
1822
  }) {
1823
+ if (title === 'Demo' && !internalIsDemoSection) throw new Error('Use StorySection.Demo instead');
1462
1824
  return /*#__PURE__*/React__default.createElement(StyledSection, props, /*#__PURE__*/React__default.createElement(StoryTitle.Level2, null, title), children);
1463
1825
  }
1464
- const StyledSubSection = /*#__PURE__*/styled__default.View.withConfig({
1465
- displayName: "Section__StyledSubSection",
1466
- componentId: "kitt-universal__sc-x4z1s-1"
1467
- })(["margin-bottom:20px;"]);
1826
+ const StyledSubSection = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1827
+ displayName: "StorySection__StyledSubSection",
1828
+ componentId: "kitt-universal__sc-1b3liv5-1"
1829
+ })(["margin-bottom:16px;"]);
1468
1830
 
1469
1831
  function SubSection({
1470
1832
  title,
@@ -1475,34 +1837,55 @@ function SubSection({
1475
1837
  return /*#__PURE__*/React__default.createElement(StyledSubSection, props, /*#__PURE__*/React__default.createElement(StoryTitle.Level3, null, title), children);
1476
1838
  }
1477
1839
 
1478
- const StyledDemoSection = /*#__PURE__*/styled__default.View.withConfig({
1479
- displayName: "Section__StyledDemoSection",
1480
- componentId: "kitt-universal__sc-x4z1s-2"
1481
- })(["margin-bottom:90px;"]);
1840
+ const StyledBlockSection = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1841
+ displayName: "StorySection__StyledBlockSection",
1842
+ componentId: "kitt-universal__sc-1b3liv5-2"
1843
+ })(["margin-bottom:16px;"]);
1844
+
1845
+ function BlockSection({
1846
+ title,
1847
+ className,
1848
+ children,
1849
+ ...props
1850
+ }) {
1851
+ return /*#__PURE__*/React__default.createElement(StyledBlockSection, props, /*#__PURE__*/React__default.createElement(StoryTitle.Level4, null, title), children);
1852
+ }
1853
+
1854
+ const StyledDemoSection = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1855
+ displayName: "StorySection__StyledDemoSection",
1856
+ componentId: "kitt-universal__sc-1b3liv5-3"
1857
+ })(["margin-bottom:64px;"]);
1482
1858
 
1483
1859
  function DemoSection({
1484
1860
  children
1485
1861
  }) {
1486
- return /*#__PURE__*/React__default.createElement(StyledDemoSection, null, /*#__PURE__*/React__default.createElement(Section, {
1862
+ return /*#__PURE__*/React__default.createElement(StyledDemoSection, null, /*#__PURE__*/React__default.createElement(StorySection, {
1863
+ internalIsDemoSection: true,
1487
1864
  title: "Demo"
1488
1865
  }, children));
1489
1866
  }
1490
1867
 
1491
- Section.SubSection = SubSection;
1492
- Section.DemoSection = DemoSection;
1868
+ StorySection.SubSection = SubSection;
1869
+ StorySection.BlockSection = BlockSection;
1870
+ /** @deprecated use StorySection.Demo instead */
1493
1871
 
1494
- const StoryContainer = /*#__PURE__*/styled__default.ScrollView.withConfig({
1495
- displayName: "Story__StoryContainer",
1496
- componentId: "kitt-universal__sc-1kwdg2p-0"
1497
- })(["padding:10px;"]);
1498
- function Story({
1872
+ StorySection.DemoSection = DemoSection;
1873
+ StorySection.Demo = DemoSection;
1874
+ /** @deprecated use StorySection instead */
1875
+
1876
+ const DeprecatedSection = StorySection;
1877
+
1878
+ function StoryContainer({
1879
+ children,
1499
1880
  title,
1500
- contentContainerStyle,
1501
- children
1881
+ state = 'none',
1882
+ platform = 'all'
1502
1883
  }) {
1503
- return /*#__PURE__*/React__default.createElement(StoryContainer, {
1504
- contentContainerStyle: contentContainerStyle
1505
- }, /*#__PURE__*/React__default.createElement(StoryTitle, null, title), children);
1884
+ if (platform === 'web') return null;
1885
+ return /*#__PURE__*/React__default.createElement(StorySection.BlockSection, {
1886
+ testID: state,
1887
+ title: title
1888
+ }, children);
1506
1889
  }
1507
1890
 
1508
1891
  function StoryDecorator(storyFn, context) {
@@ -1511,22 +1894,22 @@ function StoryDecorator(storyFn, context) {
1511
1894
  }, storyFn());
1512
1895
  }
1513
1896
 
1514
- const SmallScreenRow = /*#__PURE__*/styled__default.View.withConfig({
1897
+ const SmallScreenRow = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1515
1898
  displayName: "StoryGrid__SmallScreenRow",
1516
1899
  componentId: "kitt-universal__sc-4z5new-0"
1517
1900
  })(["flex-direction:column;margin:0;"]);
1518
- const SmallScreenCol = /*#__PURE__*/styled__default.View.withConfig({
1901
+ const SmallScreenCol = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1519
1902
  displayName: "StoryGrid__SmallScreenCol",
1520
1903
  componentId: "kitt-universal__sc-4z5new-1"
1521
- })(["padding:10px 0 20px;"]);
1522
- const FlexRow = /*#__PURE__*/styled__default.View.withConfig({
1904
+ })(["padding:8px 0 16px;"]);
1905
+ const FlexRow = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1523
1906
  displayName: "StoryGrid__FlexRow",
1524
1907
  componentId: "kitt-universal__sc-4z5new-2"
1525
- })(["flex-direction:row;margin:0 -5px 20px;"]);
1526
- const FlexCol = /*#__PURE__*/styled__default.View.withConfig({
1908
+ })(["flex-direction:row;margin:0 -4px 16px;"]);
1909
+ const FlexCol = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1527
1910
  displayName: "StoryGrid__FlexCol",
1528
1911
  componentId: "kitt-universal__sc-4z5new-3"
1529
- })(["flex-grow:1;flex-basis:0;margin:0 5px 10px;"]);
1912
+ })(["flex-grow:1;flex-basis:0;margin:0 8px;"]);
1530
1913
 
1531
1914
  function StoryGridRow({
1532
1915
  children,
@@ -1549,8 +1932,19 @@ function StoryGridRow({
1549
1932
  function StoryGridCol({
1550
1933
  title,
1551
1934
  titleColor,
1552
- children
1935
+ children,
1936
+ platform = 'all'
1553
1937
  }) {
1938
+ const isNative = reactNative.Platform.OS === 'ios' || reactNative.Platform.OS === 'android';
1939
+
1940
+ if (reactNative.Platform.OS === 'web' && platform === 'native') {
1941
+ return null;
1942
+ }
1943
+
1944
+ if (isNative && platform === 'web') {
1945
+ return null;
1946
+ }
1947
+
1554
1948
  return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, title ? /*#__PURE__*/React__default.createElement(StoryTitle.Level4, {
1555
1949
  numberOfLines: 1,
1556
1950
  color: titleColor
@@ -1562,7 +1956,7 @@ const StoryGrid = {
1562
1956
  Col: StoryGridCol
1563
1957
  };
1564
1958
 
1565
- const Container = /*#__PURE__*/styled__default.View.withConfig({
1959
+ const Container = /*#__PURE__*/styled__default(PrimitiveView).withConfig({
1566
1960
  displayName: "Tag__Container",
1567
1961
  componentId: "kitt-universal__sc-19jmowi-0"
1568
1962
  })(["background-color:", ";padding:", ";border-radius:", ";align-self:flex-start;"], ({
@@ -1603,7 +1997,9 @@ const lateOceanColorPalette = {
1603
1997
  englishVermillon: '#D44148',
1604
1998
  goldCrayola: '#F8C583',
1605
1999
  aero: '#89BDDD',
1606
- transparent: 'transparent'
2000
+ transparent: 'transparent',
2001
+ moonPurple: '#DBD6F9',
2002
+ moonPurpleLight1: '#EDEBFC'
1607
2003
  };
1608
2004
 
1609
2005
  const avatarLateOceanTheme = {
@@ -1650,6 +2046,14 @@ const buttonLateOceanTheme = {
1650
2046
  disabledBackgroundColor: lateOceanColorPalette.transparent,
1651
2047
  pressedBackgroundColor: lateOceanColorPalette.transparent,
1652
2048
  disabledBorderColor: lateOceanColorPalette.transparent
2049
+ },
2050
+ white: {
2051
+ backgroundColor: 'rgba(255, 255, 255, 0.05)',
2052
+ disabledBackgroundColor: lateOceanColorPalette.transparent,
2053
+ hoverBackgroundColor: 'rgba(255, 255, 255, 0.1)',
2054
+ pressedBackgroundColor: 'rgba(255, 255, 255, 0.1)',
2055
+ focusBorderColor: 'rgba(255, 255, 255, 0.1)',
2056
+ disabledBorderColor: lateOceanColorPalette.transparent
1653
2057
  }
1654
2058
  };
1655
2059
 
@@ -1673,6 +2077,7 @@ const cardLateOceanTheme = {
1673
2077
 
1674
2078
  const colorsLateOceanTheme = {
1675
2079
  primary: lateOceanColorPalette.lateOcean,
2080
+ primaryLight: lateOceanColorPalette.lateOceanLight1,
1676
2081
  accent: lateOceanColorPalette.warmEmbrace,
1677
2082
  accentLight: lateOceanColorPalette.warmEmbraceLight1,
1678
2083
  success: lateOceanColorPalette.viride,
@@ -1778,6 +2183,41 @@ const fullScreenModalLateOceanTheme = {
1778
2183
  }
1779
2184
  };
1780
2185
 
2186
+ const iconButton = {
2187
+ backgroundColor: 'transparent',
2188
+ width: 40,
2189
+ height: 40,
2190
+ borderRadius: 20,
2191
+ borderWidth: 2,
2192
+ borderColor: 'transparent',
2193
+ transition: {
2194
+ property: 'all',
2195
+ duration: '200ms',
2196
+ timingFunction: 'cubic-bezier(0.645, 0.045, 0.355, 1);'
2197
+ },
2198
+ scale: {
2199
+ base: {
2200
+ default: 1,
2201
+ hover: 0.95,
2202
+ active: 0.95
2203
+ },
2204
+ medium: {
2205
+ hover: 1.05
2206
+ }
2207
+ },
2208
+ disabled: {
2209
+ scale: 1,
2210
+ backgroundColor: buttonLateOceanTheme.secondary.disabledBackgroundColor,
2211
+ borderColor: buttonLateOceanTheme.secondary.disabledBorderColor
2212
+ },
2213
+ default: {
2214
+ pressedBackgroundColor: buttonLateOceanTheme.secondary.pressedBackgroundColor
2215
+ },
2216
+ white: {
2217
+ pressedBackgroundColor: buttonLateOceanTheme.white.hoverBackgroundColor
2218
+ }
2219
+ };
2220
+
1781
2221
  const listItemLateOceanTheme = {
1782
2222
  padding: '12px 16px',
1783
2223
  borderColor: colorsLateOceanTheme.separator,
@@ -1793,9 +2233,7 @@ const tagLateOceanTheme = {
1793
2233
  borderRadius: '10px',
1794
2234
  padding: '2px 12px',
1795
2235
  primary: {
1796
- // eslint-disable-next-line unicorn/expiring-todo-comments
1797
- // TODO: validate Moon shadow color with design team
1798
- backgroundColor: '#EDEBFC'
2236
+ backgroundColor: lateOceanColorPalette.moonPurpleLight1
1799
2237
  },
1800
2238
  default: {
1801
2239
  backgroundColor: lateOceanColorPalette.black50
@@ -1822,8 +2260,6 @@ const typographyLateOceanTheme = {
1822
2260
  colors: {
1823
2261
  black: lateOceanColorPalette.black1000,
1824
2262
  'black-light': lateOceanColorPalette.black555,
1825
- grey: lateOceanColorPalette.black555,
1826
- 'grey-light': lateOceanColorPalette.black200,
1827
2263
  white: lateOceanColorPalette.white,
1828
2264
  'white-light': lateOceanColorPalette.white,
1829
2265
  primary: lateOceanColorPalette.lateOcean,
@@ -1836,8 +2272,7 @@ const typographyLateOceanTheme = {
1836
2272
  headers: {
1837
2273
  fontFamily: {
1838
2274
  regular: reactNative.Platform.OS === 'web' ? 'Moderat' : 'Moderat-Extended-Bold',
1839
- bold: reactNative.Platform.OS === 'web' ? 'Moderat' : 'Moderat-Extended-Bold',
1840
- italic: reactNative.Platform.OS === 'web' ? 'Moderat' : 'Moderat-Extended-Bold'
2275
+ bold: reactNative.Platform.OS === 'web' ? 'Moderat' : 'Moderat-Extended-Bold'
1841
2276
  },
1842
2277
  fontWeight: 400,
1843
2278
  fontStyle: 'normal',
@@ -1857,18 +2292,15 @@ const typographyLateOceanTheme = {
1857
2292
  bodies: {
1858
2293
  fontFamily: {
1859
2294
  regular: reactNative.Platform.OS === 'web' ? 'Noto Sans' : 'NotoSans',
1860
- bold: reactNative.Platform.OS === 'web' ? 'Noto Sans' : 'NotoSans-Bold',
1861
- italic: reactNative.Platform.OS === 'web' ? 'Noto Sans' : 'NotoSans-Italic'
2295
+ bold: reactNative.Platform.OS === 'web' ? 'Noto Sans' : 'NotoSans-Bold'
1862
2296
  },
1863
2297
  fontWeight: {
1864
2298
  regular: 400,
1865
- bold: 700,
1866
- italic: 400
2299
+ bold: 700
1867
2300
  },
1868
2301
  fontStyle: {
1869
2302
  regular: 'normal',
1870
- bold: 'normal',
1871
- italic: 'italic'
2303
+ bold: 'normal'
1872
2304
  },
1873
2305
  configs: {
1874
2306
  'body-large': createTypographyTypeConfig(1.6, 18, 24),
@@ -1878,9 +2310,35 @@ const typographyLateOceanTheme = {
1878
2310
  'body-xsmall': createTypographyTypeConfig(1.6, 12, 12)
1879
2311
  }
1880
2312
  }
2313
+ },
2314
+ link: {
2315
+ disabledColor: lateOceanColorPalette.black200
1881
2316
  }
1882
2317
  };
1883
2318
 
2319
+ const breakpoints = {
2320
+ values: {
2321
+ base: 0,
2322
+ small: 480,
2323
+ medium: 768,
2324
+ large: 1024,
2325
+ wide: 1280
2326
+ },
2327
+ min: {
2328
+ smallBreakpoint: 'min-width: 480px',
2329
+ mediumBreakpoint: 'min-width: 768px',
2330
+ largeBreakpoint: 'min-width: 1024px',
2331
+ wideBreakpoint: 'min-width: 1280px'
2332
+ },
2333
+ max: {
2334
+ smallBreakpoint: 'max-width: 479px',
2335
+ mediumBreakpoint: 'max-width: 767px',
2336
+ largeBreakpoint: 'max-width: 1023px',
2337
+ wideBreakpoint: 'max-width: 1279px'
2338
+ }
2339
+ }; // eslint-disable-next-line unicorn/expiring-todo-comments
2340
+ // TODO : seperate brand color usage definition from proper theme definition and add typings - https://ornikar.atlassian.net/browse/CME-156
2341
+
1884
2342
  const theme = {
1885
2343
  spacing: 4,
1886
2344
  colors: colorsLateOceanTheme,
@@ -1896,41 +2354,54 @@ const theme = {
1896
2354
  tag: tagLateOceanTheme,
1897
2355
  shadows: shadowsLateOceanTheme,
1898
2356
  fullScreenModal: fullScreenModalLateOceanTheme,
2357
+ iconButton,
1899
2358
  listItem: listItemLateOceanTheme
1900
2359
  };
1901
2360
 
1902
2361
  function Tooltip({
1903
2362
  children
1904
2363
  }) {
1905
- return /*#__PURE__*/React__default.createElement(reactNative.View, null, children);
2364
+ return /*#__PURE__*/React__default.createElement(PrimitiveView, null, children);
1906
2365
  }
1907
2366
 
1908
- const StyledLink = /*#__PURE__*/styled__default(Typography).withConfig({
2367
+ const StyledLink = /*#__PURE__*/styled__default(PrimitiveLink).withConfig({
1909
2368
  shouldForwardProp: prop => !['disabled', 'noUnderline'].includes(prop)
1910
2369
  }).withConfig({
1911
2370
  displayName: "TypographyLink__StyledLink",
1912
2371
  componentId: "kitt-universal__sc-1o1zy30-0"
1913
- })(["text-decoration:", ";", ";margin:0;"], ({
2372
+ })(["text-decoration:", ";", ""], ({
1914
2373
  noUnderline
1915
2374
  }) => noUnderline ? 'none' : 'underline', ({
1916
- disabled
1917
- }) => reactNative.Platform.OS === 'web' ? `
2375
+ disabled,
2376
+ theme,
2377
+ noUnderline
2378
+ }) => `
2379
+ ${disabled ? `color: ${theme.kitt.typography.link.disabledColor};` : ''}
2380
+ ${reactNative.Platform.OS === 'web' ? `
1918
2381
  text-decoration-color: inherit;
1919
2382
  transition: color 0.2s ease-in-out;
1920
2383
  cursor: ${disabled ? 'not-allowed' : 'pointer'};
1921
- ` : null);
2384
+
2385
+
2386
+ &:hover, &:active, .kitt-hover & {
2387
+ text-decoration: ${noUnderline ? 'underline' : 'none'};
2388
+ }
2389
+ ` : ''}`);
1922
2390
  function TypographyLink({
2391
+ children,
1923
2392
  disabled,
1924
2393
  noUnderline,
1925
- variant = 'bold',
2394
+ onPress,
1926
2395
  ...otherProps
1927
2396
  }) {
1928
- return /*#__PURE__*/React__default.createElement(StyledLink, _extends__default({
2397
+ return /*#__PURE__*/React__default.createElement(Typography, _extends__default({}, otherProps, {
2398
+ accessibilityRole: "none"
2399
+ }), /*#__PURE__*/React__default.createElement(StyledLink, {
1929
2400
  disabled: disabled,
1930
2401
  noUnderline: noUnderline,
1931
- variant: variant,
1932
- accessibilityRole: "link"
1933
- }, otherProps));
2402
+ accessibilityRole: "link",
2403
+ onPress: disabled ? undefined : onPress
2404
+ }, children));
1934
2405
  }
1935
2406
 
1936
2407
  function matchWindowSize(currentWidth, {
@@ -1951,7 +2422,7 @@ function createWindowSizeHelper(currentWidth) {
1951
2422
  matchWindowSize: options => matchWindowSize(currentWidth, options),
1952
2423
  ifWindowSizeMatches: (options, valueIfTrue, valueIfFalse) => matchWindowSize(currentWidth, options) ? valueIfTrue : valueIfFalse,
1953
2424
  mapWindowWidth: (...widthList) => {
1954
- if (process.env.NODE_ENV !== "production") {
2425
+ if ((process.env.NODE_ENV !== "production")) {
1955
2426
  widthList.slice(1).forEach(([minWidth], index) => {
1956
2427
  const previousMinWidth = widthList[index][0];
1957
2428
 
@@ -1977,11 +2448,42 @@ function useKittTheme() {
1977
2448
  return React.useMemo(() => {
1978
2449
  return {
1979
2450
  kitt: theme,
1980
- responsive: createWindowSizeHelper(width)
2451
+ responsive: createWindowSizeHelper(width),
2452
+ breakpoints
1981
2453
  };
1982
2454
  }, [width]);
1983
2455
  }
1984
2456
 
2457
+ function KittThemeProvider({
2458
+ children
2459
+ }) {
2460
+ const theme = useKittTheme();
2461
+ return /*#__PURE__*/React__default.createElement(styled.ThemeProvider, {
2462
+ theme: theme
2463
+ }, children);
2464
+ }
2465
+ const KittThemeDecorator = addons.makeDecorator({
2466
+ name: 'ThemeDecorator',
2467
+ parameterName: 'theme',
2468
+ wrapper: (storyFn, context, {
2469
+ options = {},
2470
+ parameters = {}
2471
+ }) => {
2472
+ return /*#__PURE__*/React__default.createElement(KittThemeProvider, null, storyFn(context));
2473
+ }
2474
+ });
2475
+
2476
+ const SafeAreaProviderDecorator = addons.makeDecorator({
2477
+ name: 'SafeAreaProviderDecorator',
2478
+ parameterName: 'safeAreaProvider',
2479
+ wrapper: (storyFn, context, {
2480
+ options = {},
2481
+ parameters = {}
2482
+ }) => {
2483
+ return /*#__PURE__*/React__default.createElement(reactNativeSafeAreaContext.SafeAreaProvider, null, storyFn(context));
2484
+ }
2485
+ });
2486
+
1985
2487
  function MatchWindowSize({
1986
2488
  children,
1987
2489
  ...matchWindowSizeOptions
@@ -1995,13 +2497,16 @@ exports.useWindowSize = reactNative.useWindowDimensions;
1995
2497
  exports.Avatar = Avatar;
1996
2498
  exports.Button = Button;
1997
2499
  exports.Card = Card;
2500
+ exports.Flex = Flex;
1998
2501
  exports.FullScreenModal = FullScreenModal;
1999
2502
  exports.Icon = Icon;
2503
+ exports.IconButton = IconButton;
2000
2504
  exports.InputFeedback = InputFeedback;
2001
2505
  exports.InputField = InputField;
2002
2506
  exports.InputText = InputText;
2003
2507
  exports.KittBreakpoints = KittBreakpoints;
2004
2508
  exports.KittBreakpointsMax = KittBreakpointsMax;
2509
+ exports.KittThemeDecorator = KittThemeDecorator;
2005
2510
  exports.Label = Label;
2006
2511
  exports.LargeLoader = LargeLoader;
2007
2512
  exports.ListItem = ListItem;
@@ -2010,11 +2515,20 @@ exports.MatchWindowSize = MatchWindowSize;
2010
2515
  exports.Message = Message;
2011
2516
  exports.Modal = Modal;
2012
2517
  exports.Notification = Notification;
2518
+ exports.PrimitiveLink = PrimitiveLink;
2519
+ exports.PrimitivePressable = PrimitivePressable;
2520
+ exports.PrimitiveScrollView = PrimitiveScrollView;
2521
+ exports.PrimitiveText = PrimitiveText;
2522
+ exports.PrimitiveView = PrimitiveView;
2013
2523
  exports.Radio = Radio;
2014
- exports.Section = Section;
2524
+ exports.SafeAreaProviderDecorator = SafeAreaProviderDecorator;
2525
+ exports.Section = DeprecatedSection;
2015
2526
  exports.Story = Story;
2527
+ exports.StoryBlock = StoryBlock;
2528
+ exports.StoryContainer = StoryContainer;
2016
2529
  exports.StoryDecorator = StoryDecorator;
2017
2530
  exports.StoryGrid = StoryGrid;
2531
+ exports.StorySection = StorySection;
2018
2532
  exports.StoryTitle = StoryTitle;
2019
2533
  exports.Tag = Tag;
2020
2534
  exports.TextArea = TextArea;
@@ -2028,6 +2542,7 @@ exports.styledTextInputMixin = styledTextInputMixin;
2028
2542
  exports.theme = theme;
2029
2543
  exports.useKittTheme = useKittTheme;
2030
2544
  exports.useMatchWindowSize = useMatchWindowSize;
2545
+ exports.useStoryBlockColor = useStoryBlockColor;
2031
2546
  Object.keys(kittIcons).forEach(function (k) {
2032
2547
  if (k !== 'default' && !exports.hasOwnProperty(k)) exports[k] = kittIcons[k];
2033
2548
  });