@ornikar/kitt-universal 3.8.1 → 4.1.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 (93) hide show
  1. package/dist/definitions/BaseMessage/BaseMessage.d.ts +16 -0
  2. package/dist/definitions/BaseMessage/BaseMessage.d.ts.map +1 -0
  3. package/dist/definitions/BaseMessage/IconContent.d.ts +10 -0
  4. package/dist/definitions/BaseMessage/IconContent.d.ts.map +1 -0
  5. package/dist/definitions/BaseMessage/helper.d.ts +6 -0
  6. package/dist/definitions/BaseMessage/helper.d.ts.map +1 -0
  7. package/dist/definitions/Button/AnimatedButtonPressable.web.d.ts +1 -1
  8. package/dist/definitions/IconButton/IconButton.d.ts +5 -1
  9. package/dist/definitions/IconButton/IconButton.d.ts.map +1 -1
  10. package/dist/definitions/IconButton/PressableAnimatedContainer.d.ts +4 -1
  11. package/dist/definitions/IconButton/PressableAnimatedContainer.d.ts.map +1 -1
  12. package/dist/definitions/Message/Message.d.ts +4 -12
  13. package/dist/definitions/Message/Message.d.ts.map +1 -1
  14. package/dist/definitions/Notification/Notification.d.ts +8 -8
  15. package/dist/definitions/Notification/Notification.d.ts.map +1 -1
  16. package/dist/definitions/Skeleton/Skeleton.d.ts.map +1 -1
  17. package/dist/definitions/TimePicker/TimePicker.d.ts +1 -1
  18. package/dist/definitions/TimePicker/TimePicker.d.ts.map +1 -1
  19. package/dist/definitions/TimePicker/useTimePicker.d.ts +2 -4
  20. package/dist/definitions/TimePicker/useTimePicker.d.ts.map +1 -1
  21. package/dist/definitions/Tooltip/TooltipView.d.ts.map +1 -1
  22. package/dist/definitions/forms/InputFeedback/InputFeedback.d.ts +1 -1
  23. package/dist/definitions/forms/InputFeedback/InputFeedback.d.ts.map +1 -1
  24. package/dist/definitions/forms/InputIcon/InputIcon.d.ts +9 -0
  25. package/dist/definitions/forms/InputIcon/InputIcon.d.ts.map +1 -0
  26. package/dist/definitions/forms/InputPassword/InputPassword.d.ts +7 -0
  27. package/dist/definitions/forms/InputPassword/InputPassword.d.ts.map +1 -0
  28. package/dist/definitions/forms/InputPressable/InputPressable.d.ts +6 -0
  29. package/dist/definitions/forms/InputPressable/InputPressable.d.ts.map +1 -0
  30. package/dist/definitions/forms/InputText/InputText.d.ts +4 -12
  31. package/dist/definitions/forms/InputText/InputText.d.ts.map +1 -1
  32. package/dist/definitions/forms/TextArea/TextArea.d.ts +1 -1
  33. package/dist/definitions/forms/TextArea/TextArea.d.ts.map +1 -1
  34. package/dist/definitions/forms/styledTextInputMixin.d.ts +7 -0
  35. package/dist/definitions/forms/styledTextInputMixin.d.ts.map +1 -0
  36. package/dist/definitions/forms/utils.d.ts +10 -0
  37. package/dist/definitions/forms/utils.d.ts.map +1 -0
  38. package/dist/definitions/index.d.ts +10 -2
  39. package/dist/definitions/index.d.ts.map +1 -1
  40. package/dist/definitions/themes/default.d.ts +6 -22
  41. package/dist/definitions/themes/default.d.ts.map +1 -1
  42. package/dist/definitions/themes/late-ocean/{buttonLateOceanTheme.d.ts → button.d.ts} +2 -2
  43. package/dist/definitions/themes/late-ocean/button.d.ts.map +1 -0
  44. package/dist/definitions/themes/late-ocean/colorsLateOceanTheme.d.ts +2 -0
  45. package/dist/definitions/themes/late-ocean/colorsLateOceanTheme.d.ts.map +1 -1
  46. package/dist/definitions/themes/late-ocean/feedbackMessage.d.ts +11 -0
  47. package/dist/definitions/themes/late-ocean/feedbackMessage.d.ts.map +1 -0
  48. package/dist/definitions/themes/late-ocean/forms.d.ts +26 -0
  49. package/dist/definitions/themes/late-ocean/forms.d.ts.map +1 -0
  50. package/dist/definitions/themes/late-ocean/input.d.ts +26 -0
  51. package/dist/definitions/themes/late-ocean/input.d.ts.map +1 -0
  52. package/dist/definitions/themes/late-ocean/textArea.d.ts +5 -0
  53. package/dist/definitions/themes/late-ocean/textArea.d.ts.map +1 -0
  54. package/dist/index-browser-all.es.android.js +500 -435
  55. package/dist/index-browser-all.es.android.js.map +1 -1
  56. package/dist/index-browser-all.es.ios.js +500 -435
  57. package/dist/index-browser-all.es.ios.js.map +1 -1
  58. package/dist/index-browser-all.es.js +500 -435
  59. package/dist/index-browser-all.es.js.map +1 -1
  60. package/dist/index-browser-all.es.web.js +508 -447
  61. package/dist/index-browser-all.es.web.js.map +1 -1
  62. package/dist/index-node-14.17.cjs.js +430 -346
  63. package/dist/index-node-14.17.cjs.js.map +1 -1
  64. package/dist/index-node-14.17.cjs.web.js +421 -342
  65. package/dist/index-node-14.17.cjs.web.js.map +1 -1
  66. package/dist/linaria-themes-browser-all.es.android.js +140 -119
  67. package/dist/linaria-themes-browser-all.es.android.js.map +1 -1
  68. package/dist/linaria-themes-browser-all.es.ios.js +140 -119
  69. package/dist/linaria-themes-browser-all.es.ios.js.map +1 -1
  70. package/dist/linaria-themes-browser-all.es.js +140 -119
  71. package/dist/linaria-themes-browser-all.es.js.map +1 -1
  72. package/dist/linaria-themes-browser-all.es.web.js +140 -119
  73. package/dist/linaria-themes-browser-all.es.web.js.map +1 -1
  74. package/dist/linaria-themes-node-14.17.cjs.js +136 -115
  75. package/dist/linaria-themes-node-14.17.cjs.js.map +1 -1
  76. package/dist/linaria-themes-node-14.17.cjs.web.js +136 -115
  77. package/dist/linaria-themes-node-14.17.cjs.web.js.map +1 -1
  78. package/dist/tsbuildinfo +1 -1
  79. package/linaria-themes.js +1 -1
  80. package/package.json +6 -3
  81. package/typings/react-native-web.d.ts +67 -0
  82. package/dist/definitions/forms/InputFormState.d.ts +0 -2
  83. package/dist/definitions/forms/InputFormState.d.ts.map +0 -1
  84. package/dist/definitions/forms/InputText/useInputText.d.ts +0 -8
  85. package/dist/definitions/forms/InputText/useInputText.d.ts.map +0 -1
  86. package/dist/definitions/themes/late-ocean/buttonLateOceanTheme.d.ts.map +0 -1
  87. package/dist/definitions/themes/late-ocean/feedbackMessageLateOceanTheme.d.ts +0 -9
  88. package/dist/definitions/themes/late-ocean/feedbackMessageLateOceanTheme.d.ts.map +0 -1
  89. package/dist/definitions/themes/late-ocean/formLateOceanTheme.d.ts +0 -37
  90. package/dist/definitions/themes/late-ocean/formLateOceanTheme.d.ts.map +0 -1
  91. package/dist/definitions/themes/late-ocean/inputLateOceanTheme.d.ts +0 -23
  92. package/dist/definitions/themes/late-ocean/inputLateOceanTheme.d.ts.map +0 -1
  93. package/linaria-themes.web.js +0 -3
@@ -51,7 +51,7 @@ function SpinningIcon({
51
51
  });
52
52
  }
53
53
 
54
- const IconContainer$1 = /*#__PURE__*/styled__default(BabelPluginStyledComponentsReactNative.View).withConfig({
54
+ const IconContainer = /*#__PURE__*/styled__default(BabelPluginStyledComponentsReactNative.View).withConfig({
55
55
  displayName: "Icon__IconContainer",
56
56
  componentId: "kitt-universal__sc-usm0ol-0"
57
57
  })(["color:", ";width:", "px;height:", "px;align-self:", ";"], ({
@@ -73,7 +73,7 @@ function Icon({
73
73
  const clonedIcon = /*#__PURE__*/react.cloneElement(icon, {
74
74
  color
75
75
  });
76
- return /*#__PURE__*/jsxRuntime.jsx(IconContainer$1, {
76
+ return /*#__PURE__*/jsxRuntime.jsx(IconContainer, {
77
77
  align: align,
78
78
  size: size,
79
79
  color: color,
@@ -606,7 +606,7 @@ const StyledButtonText = /*#__PURE__*/styled__default(Typography.Text).withConfi
606
606
  if ($isDisabled || !isSubtle($type)) return undefined;
607
607
  return 'color: inherit';
608
608
  });
609
- const StyledIconContainer = /*#__PURE__*/styled__default(BabelPluginStyledComponentsReactNative.View).withConfig({
609
+ const StyledIconContainer$1 = /*#__PURE__*/styled__default(BabelPluginStyledComponentsReactNative.View).withConfig({
610
610
  displayName: "ButtonContent__StyledIconContainer",
611
611
  componentId: "kitt-universal__sc-dnyw3n-1"
612
612
  })(["", ""], ({
@@ -629,7 +629,7 @@ function ButtonIcon({
629
629
  iconPosition,
630
630
  testID
631
631
  }) {
632
- return /*#__PURE__*/jsxRuntime.jsx(StyledIconContainer, {
632
+ return /*#__PURE__*/jsxRuntime.jsx(StyledIconContainer$1, {
633
633
  $iconPosition: iconPosition,
634
634
  children: /*#__PURE__*/jsxRuntime.jsx(TypographyIcon, {
635
635
  icon: icon,
@@ -777,7 +777,7 @@ const Button = /*#__PURE__*/react.forwardRef(({
777
777
  });
778
778
  });
779
779
 
780
- const Container$5 = /*#__PURE__*/styled__default(BabelPluginStyledComponentsReactNative.View).withConfig({
780
+ const Container$3 = /*#__PURE__*/styled__default(BabelPluginStyledComponentsReactNative.View).withConfig({
781
781
  displayName: "Card__Container",
782
782
  componentId: "kitt-universal__sc-1n9psug-0"
783
783
  })(["background-color:", ";padding:", ";border-radius:", ";border-width:", ";border-color:", ";"], ({
@@ -797,7 +797,7 @@ function Card({
797
797
  children,
798
798
  type
799
799
  }) {
800
- return /*#__PURE__*/jsxRuntime.jsx(Container$5, {
800
+ return /*#__PURE__*/jsxRuntime.jsx(Container$3, {
801
801
  type: type,
802
802
  children: children
803
803
  });
@@ -858,6 +858,7 @@ const getColorFromState = state => {
858
858
  case 'invalid':
859
859
  return 'danger';
860
860
 
861
+ case 'valid':
861
862
  default:
862
863
  return 'black-light';
863
864
  }
@@ -917,46 +918,87 @@ function InputField({
917
918
  });
918
919
  }
919
920
 
920
- const useInputText = () => {
921
- const [isFocused, setIsFocused] = react.useState(false);
922
- const [isPasswordVisible, setIsPasswordVisible] = react.useState(false);
923
- return {
924
- isFocused,
925
- handleInputFocus: () => setIsFocused(true),
926
- handleInputBlur: () => setIsFocused(false),
927
- togglePasswordVisibility: () => setIsPasswordVisible(isVisible => !isVisible),
928
- isPasswordVisible
929
- };
930
- };
921
+ function getIconColor(state, disabled) {
922
+ if (disabled) return 'black-light';
923
+
924
+ switch (state) {
925
+ case 'invalid':
926
+ return 'danger';
927
+
928
+ case 'valid':
929
+ return 'success';
930
+
931
+ default:
932
+ return undefined;
933
+ }
934
+ }
935
+
936
+ function InputIcon({
937
+ icon,
938
+ state,
939
+ disabled
940
+ }) {
941
+ const theme = /*#__PURE__*/styled.useTheme();
942
+ const color = getIconColor(state, disabled);
943
+ return /*#__PURE__*/jsxRuntime.jsx(TypographyIcon, {
944
+ color: color,
945
+ icon: icon,
946
+ size: theme.kitt.forms.input.icon.size
947
+ });
948
+ }
949
+
950
+ function InputPressable({ ...props
951
+ }) {
952
+ return /*#__PURE__*/jsxRuntime.jsx(BabelPluginStyledComponentsReactNative.Pressable, { ...props
953
+ });
954
+ }
931
955
 
932
956
  const styledTextInputMixin = /*#__PURE__*/styled.css(["background-color:", ";border-width:", ";border-radius:", ";border-color:", ";font-size:", ";color:", ";font-family:", ";"], ({
933
957
  theme,
934
- state
935
- }) => state === 'disabled' ? theme.kitt.forms.input.states.disabled.backgroundColor : theme.kitt.forms.input.states.default.backgroundColor, ({
958
+ $state
959
+ }) => $state === 'disabled' ? theme.kitt.forms.input.states.disabled.backgroundColor : theme.kitt.forms.input.states.default.backgroundColor, ({
936
960
  theme
937
961
  }) => theme.kitt.forms.input.borderWidth, ({
938
962
  theme
939
963
  }) => theme.kitt.forms.input.borderRadius, ({
940
964
  theme,
941
- state
942
- }) => theme.kitt.forms.input.states[state].borderColor, ({
965
+ $state
966
+ }) => theme.kitt.forms.input.states[$state].borderColor, ({
943
967
  theme
944
968
  }) => {
945
969
  const typeConfigKey = getTypographyTypeConfigKey(theme);
946
970
  return theme.kitt.typography.types.bodies.configs.body[typeConfigKey].fontSize;
947
971
  }, ({
948
972
  theme,
949
- state
950
- }) => theme.kitt.typography.colors[theme.kitt.forms.input.states[state].color], ({
973
+ $state
974
+ }) => theme.kitt.typography.colors[theme.kitt.forms.input.states[$state].color], ({
951
975
  theme
952
976
  }) => theme.kitt.typography.types.bodies.fontFamily.regular);
953
- const Input = /*#__PURE__*/styled__default(BabelPluginStyledComponentsReactNative.TextInput).withConfig({
954
- displayName: "InputText__Input",
977
+
978
+ function getInputUIState({
979
+ isFocused,
980
+ isDisabled,
981
+ formState
982
+ }) {
983
+ if (isDisabled) return 'disabled';
984
+ if (isFocused) return 'focus';
985
+ if (formState === 'invalid') return 'invalid';
986
+ return 'default';
987
+ }
988
+
989
+ const StyledTextInput = /*#__PURE__*/styled__default(BabelPluginStyledComponentsReactNative.TextInput).withConfig({
990
+ displayName: "InputText__StyledTextInput",
955
991
  componentId: "kitt-universal__sc-uke279-0"
956
992
  })(["", " padding:", ";line-height:", ";min-height:", "px;"], styledTextInputMixin, ({
957
993
  theme,
958
994
  multiline
959
- }) => !multiline && "web" === 'ios' ? theme.kitt.forms.input.paddingSingleLineIOS : theme.kitt.forms.input.padding, ({
995
+ }) => {
996
+ if (!multiline && "web" === 'ios') {
997
+ return theme.kitt.forms.input.padding.iOSSingleLine;
998
+ }
999
+
1000
+ return theme.kitt.forms.input.padding.default;
1001
+ }, ({
960
1002
  theme,
961
1003
  multiline
962
1004
  }) => {
@@ -964,116 +1006,86 @@ const Input = /*#__PURE__*/styled__default(BabelPluginStyledComponentsReactNativ
964
1006
  const typeConfigKey = getTypographyTypeConfigKey(theme);
965
1007
  return theme.kitt.typography.types.bodies.configs.body[typeConfigKey].lineHeight;
966
1008
  }, ({
967
- minHeight
968
- }) => minHeight);
969
- const Container$4 = /*#__PURE__*/styled__default(BabelPluginStyledComponentsReactNative.View).withConfig({
970
- displayName: "InputText__Container",
1009
+ $minHeight
1010
+ }) => $minHeight);
1011
+ const InputTextContainer = /*#__PURE__*/styled__default(BabelPluginStyledComponentsReactNative.View).withConfig({
1012
+ displayName: "InputText__InputTextContainer",
971
1013
  componentId: "kitt-universal__sc-uke279-1"
972
- })(["margin-top:", ";margin-bottom:", ";"], ({
973
- theme
974
- }) => theme.kitt.forms.input.marginTop, ({
975
- theme
976
- }) => theme.kitt.forms.input.marginBottom);
977
- const PasswordButtonContainer = /*#__PURE__*/styled__default(BabelPluginStyledComponentsReactNative.Pressable).withConfig({
978
- displayName: "InputText__PasswordButtonContainer",
1014
+ })(["position:relative;"]);
1015
+ const RightInputContainer = /*#__PURE__*/styled__default(BabelPluginStyledComponentsReactNative.View).withConfig({
1016
+ displayName: "InputText__RightInputContainer",
979
1017
  componentId: "kitt-universal__sc-uke279-2"
980
- })(["position:absolute;right:0;top:0;bottom:0;justify-content:center;padding:", "px;"], ({
981
- theme
982
- }) => theme.kitt.forms.input.passwordButtonIconSize / 2);
983
-
984
- const getInputState = ({
985
- isDisabled,
986
- isFocused,
987
- formState
988
- }) => {
989
- if (isDisabled) return 'disabled';
990
- if (isFocused) return 'focus';
991
- if (formState === 'invalid') return 'invalid';
992
- return 'default';
993
- };
994
-
995
- const keyboardTypeByTextInputType = {
996
- text: 'default',
997
- email: 'email-address',
998
- password: 'default',
999
- username: 'default'
1000
- };
1001
- const autoCompleteTypeByType = {
1002
- text: 'off',
1003
- email: 'email',
1004
- password: 'password',
1005
- username: 'name'
1006
- };
1007
- const autoCorrectByType = {
1008
- text: true,
1009
- email: false,
1010
- password: false,
1011
- username: false
1012
- };
1013
- const textContentTypeByType = {
1014
- text: 'none',
1015
- email: 'emailAddress',
1016
- password: 'password',
1017
- username: 'username'
1018
- };
1018
+ })(["position:absolute;right:0;top:0;bottom:0;justify-content:center;padding:10px;"]);
1019
1019
  const InputText = /*#__PURE__*/react.forwardRef(({
1020
1020
  id,
1021
+ right,
1021
1022
  minHeight = 0,
1022
- type,
1023
1023
  state: formState,
1024
1024
  internalForceState,
1025
1025
  disabled = false,
1026
+ autoCorrect = true,
1027
+ textContentType = 'none',
1028
+ autoCompleteType = 'off',
1029
+ keyboardType = 'default',
1026
1030
  onFocus,
1027
1031
  onBlur,
1028
1032
  ...props
1029
1033
  }, ref) => {
1030
- const {
1031
- isFocused,
1032
- handleInputBlur,
1033
- handleInputFocus,
1034
- isPasswordVisible,
1035
- togglePasswordVisibility
1036
- } = useInputText();
1037
1034
  const theme = /*#__PURE__*/styled.useTheme();
1038
- const state = internalForceState || getInputState({
1035
+ const [isFocused, setIsFocused] = react.useState(false);
1036
+ const state = internalForceState || getInputUIState({
1039
1037
  isFocused,
1040
1038
  isDisabled: disabled,
1041
1039
  formState
1042
1040
  });
1043
- return /*#__PURE__*/jsxRuntime.jsxs(Container$4, {
1044
- children: [/*#__PURE__*/jsxRuntime.jsx(Input, {
1041
+ return /*#__PURE__*/jsxRuntime.jsxs(InputTextContainer, {
1042
+ children: [/*#__PURE__*/jsxRuntime.jsx(StyledTextInput, {
1045
1043
  ref: ref,
1046
1044
  nativeID: id,
1047
1045
  editable: !disabled,
1048
- keyboardType: keyboardTypeByTextInputType[type],
1049
- autoCompleteType: autoCompleteTypeByType[type],
1050
- autoCorrect: autoCorrectByType[type],
1051
- minHeight: minHeight,
1052
- textContentType: textContentTypeByType[type],
1053
- placeholderTextColor: theme.kitt.typography.colors[theme.kitt.forms.input.placeholderColor],
1054
- selectionColor: theme.kitt.forms.input.selectionColor,
1055
- secureTextEntry: type === 'password' && !isPasswordVisible,
1046
+ keyboardType: keyboardType,
1047
+ autoCompleteType: autoCompleteType,
1048
+ autoCorrect: autoCorrect,
1049
+ $minHeight: minHeight,
1050
+ textContentType: textContentType,
1051
+ placeholderTextColor: theme.kitt.forms.input.color.placeholder,
1052
+ selectionColor: theme.kitt.forms.input.color.selection,
1056
1053
  ...props,
1057
- state: state,
1054
+ $state: state,
1058
1055
  onFocus: e => {
1059
- handleInputFocus();
1056
+ setIsFocused(true);
1060
1057
  if (onFocus) onFocus(e);
1061
1058
  },
1062
1059
  onBlur: e => {
1063
- handleInputBlur();
1060
+ setIsFocused(false);
1064
1061
  if (onBlur) onBlur(e);
1065
1062
  }
1066
- }), type === 'password' && !disabled && /*#__PURE__*/jsxRuntime.jsx(PasswordButtonContainer, {
1063
+ }), right ? /*#__PURE__*/jsxRuntime.jsx(RightInputContainer, {
1064
+ children: right
1065
+ }) : null]
1066
+ });
1067
+ });
1068
+
1069
+ function InputPassword({
1070
+ isPasswordDefaultVisible,
1071
+ right,
1072
+ ...props
1073
+ }) {
1074
+ const [isVisible, setIsVisible] = react.useState(Boolean(isPasswordDefaultVisible));
1075
+ return /*#__PURE__*/jsxRuntime.jsx(InputText, { ...props,
1076
+ textContentType: "password",
1077
+ autoCompleteType: "password",
1078
+ autoCorrect: false,
1079
+ secureTextEntry: !isVisible,
1080
+ right: right || /*#__PURE__*/jsxRuntime.jsx(InputPressable, {
1067
1081
  accessibilityRole: "button",
1068
- onPress: togglePasswordVisibility,
1069
- children: /*#__PURE__*/jsxRuntime.jsx(TypographyIcon, {
1070
- icon: isPasswordVisible ? /*#__PURE__*/jsxRuntime.jsx(kittIcons.EyeIcon, {}) : /*#__PURE__*/jsxRuntime.jsx(kittIcons.EyeOffIcon, {}),
1071
- size: theme.kitt.forms.input.passwordButtonIconSize,
1072
- color: theme.kitt.forms.input.states[state].passwordButtonIconColor
1082
+ onPress: () => setIsVisible(prev => !prev),
1083
+ children: /*#__PURE__*/jsxRuntime.jsx(InputIcon, {
1084
+ icon: isVisible ? /*#__PURE__*/jsxRuntime.jsx(kittIcons.EyeOffIcon, {}) : /*#__PURE__*/jsxRuntime.jsx(kittIcons.EyeIcon, {})
1073
1085
  })
1074
- })]
1086
+ })
1075
1087
  });
1076
- });
1088
+ }
1077
1089
 
1078
1090
  function Label({
1079
1091
  htmlFor,
@@ -1130,7 +1142,7 @@ const SelectedInnerRadio = /*#__PURE__*/styled__default(BabelPluginStyledCompone
1130
1142
  }) => theme.kitt.forms.radio.checked.innerSize, ({
1131
1143
  theme
1132
1144
  }) => theme.kitt.forms.radio.checked.innerSize / 2);
1133
- const Container$3 = /*#__PURE__*/styled__default(BabelPluginStyledComponentsReactNative.Pressable).withConfig({
1145
+ const Container$2 = /*#__PURE__*/styled__default(BabelPluginStyledComponentsReactNative.Pressable).withConfig({
1134
1146
  displayName: "Radio__Container",
1135
1147
  componentId: "kitt-universal__sc-1mdgr2o-3"
1136
1148
  })(["flex-direction:row;align-items:center;"]);
@@ -1148,7 +1160,7 @@ function Radio({
1148
1160
  disabled = false,
1149
1161
  children
1150
1162
  }) {
1151
- return /*#__PURE__*/jsxRuntime.jsxs(Container$3, {
1163
+ return /*#__PURE__*/jsxRuntime.jsxs(Container$2, {
1152
1164
  nativeID: id,
1153
1165
  disabled: disabled,
1154
1166
  accessibilityRole: "radio",
@@ -1175,9 +1187,8 @@ function TextArea({ ...props
1175
1187
  return /*#__PURE__*/jsxRuntime.jsx(InputText, {
1176
1188
  multiline: true,
1177
1189
  textAlignVertical: "top",
1178
- ...props,
1179
- type: "text",
1180
- minHeight: theme.kitt.forms.input.textAreaMinHeight
1190
+ minHeight: theme.kitt.forms.textArea.minHeight,
1191
+ ...props
1181
1192
  });
1182
1193
  }
1183
1194
 
@@ -1316,7 +1327,7 @@ function FullScreenModalHeader({
1316
1327
  });
1317
1328
  }
1318
1329
 
1319
- const Container$2 = /*#__PURE__*/styled__default(BabelPluginStyledComponentsReactNative.View).withConfig({
1330
+ const Container$1 = /*#__PURE__*/styled__default(BabelPluginStyledComponentsReactNative.View).withConfig({
1320
1331
  displayName: "FullScreenModal__Container",
1321
1332
  componentId: "kitt-universal__sc-11qpbe3-0"
1322
1333
  })(["flex:1;background-color:", ";"], ({
@@ -1325,7 +1336,7 @@ const Container$2 = /*#__PURE__*/styled__default(BabelPluginStyledComponentsReac
1325
1336
  function FullScreenModal({
1326
1337
  children
1327
1338
  }) {
1328
- return /*#__PURE__*/jsxRuntime.jsx(Container$2, {
1339
+ return /*#__PURE__*/jsxRuntime.jsx(Container$1, {
1329
1340
  children: children
1330
1341
  });
1331
1342
  }
@@ -1468,11 +1479,17 @@ function IconButton({
1468
1479
  icon,
1469
1480
  color,
1470
1481
  disabled,
1482
+ testID,
1483
+ accessibilityLabel,
1484
+ accessibilityRole,
1471
1485
  onPress
1472
1486
  }) {
1473
1487
  return /*#__PURE__*/jsxRuntime.jsx(PressableAnimatedContainer, {
1474
1488
  color: color,
1475
1489
  disabled: disabled,
1490
+ testID: testID,
1491
+ accessibilityLabel: accessibilityLabel,
1492
+ accessibilityRole: accessibilityRole,
1476
1493
  onPress: onPress,
1477
1494
  children: /*#__PURE__*/jsxRuntime.jsx(IconButtonContent, {
1478
1495
  disabled: disabled,
@@ -1654,47 +1671,32 @@ function Loader({
1654
1671
  });
1655
1672
  }
1656
1673
 
1657
- const xIconSize = 14;
1658
- const mainIconSize = 20;
1659
- const Container$1 = /*#__PURE__*/styled__default(BabelPluginStyledComponentsReactNative.View).withConfig({
1660
- displayName: "Message__Container",
1661
- componentId: "kitt-universal__sc-c6400e-0"
1662
- })(["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;"], ({
1663
- theme,
1664
- noRadius
1665
- }) => noRadius ? 0 : theme.kitt.spacing * 5, ({
1666
- theme,
1667
- type
1668
- }) => theme.kitt.feedbackMessage.backgroundColors[type], ({
1669
- theme
1670
- }) => theme.kitt.spacing * 4, ({
1671
- theme
1672
- }) => theme.kitt.spacing * 4, ({
1673
- theme
1674
- }) => theme.kitt.spacing * 4, ({
1675
- theme,
1676
- insets
1677
- }) => (insets?.top ?? 0) + theme.kitt.spacing * 4);
1678
- const CloseContainer = /*#__PURE__*/styled__default(BabelPluginStyledComponentsReactNative.TouchableOpacity).withConfig({
1679
- displayName: "Message__CloseContainer",
1680
- componentId: "kitt-universal__sc-c6400e-1"
1681
- })(["margin-left:", "px;padding:", "px;"], ({
1682
- theme
1683
- }) => theme.kitt.spacing * 4, ({
1684
- theme
1685
- }) => theme.kitt.spacing);
1686
- const IconContainer = /*#__PURE__*/styled__default(BabelPluginStyledComponentsReactNative.View).withConfig({
1687
- displayName: "Message__IconContainer",
1688
- componentId: "kitt-universal__sc-c6400e-2"
1689
- })(["margin-right:", "px;"], ({
1690
- theme
1691
- }) => theme.kitt.spacing * 4);
1692
- const Content = /*#__PURE__*/styled__default(BabelPluginStyledComponentsReactNative.Text).withConfig({
1693
- displayName: "Message__Content",
1694
- componentId: "kitt-universal__sc-c6400e-3"
1695
- })(["text-align:", ";flex:1;"], ({
1696
- centeredText
1697
- }) => centeredText ? 'center' : 'left');
1674
+ function IconContent({
1675
+ type,
1676
+ color
1677
+ }) {
1678
+ switch (type) {
1679
+ case 'warning':
1680
+ return /*#__PURE__*/jsxRuntime.jsx(kittIcons.AlertCircleIcon, {
1681
+ color: color
1682
+ });
1683
+
1684
+ case 'success':
1685
+ return /*#__PURE__*/jsxRuntime.jsx(kittIcons.CheckIcon, {
1686
+ color: color
1687
+ });
1688
+
1689
+ case 'danger':
1690
+ return /*#__PURE__*/jsxRuntime.jsx(kittIcons.AlertTriangleIcon, {
1691
+ color: color
1692
+ });
1693
+
1694
+ default:
1695
+ return /*#__PURE__*/jsxRuntime.jsx(kittIcons.InfoIcon, {
1696
+ color: color
1697
+ });
1698
+ }
1699
+ }
1698
1700
 
1699
1701
  const getColorByType = type => {
1700
1702
  switch (type) {
@@ -1709,61 +1711,125 @@ const getColorByType = type => {
1709
1711
  return 'black';
1710
1712
  }
1711
1713
  };
1712
-
1713
- function getIconContent(type) {
1714
- switch (type) {
1715
- case 'warning':
1716
- return /*#__PURE__*/jsxRuntime.jsx(kittIcons.AlertCircleIcon, {});
1717
-
1714
+ const getIconButtonColor = messageType => {
1715
+ switch (messageType) {
1718
1716
  case 'success':
1719
- return /*#__PURE__*/jsxRuntime.jsx(kittIcons.CheckIcon, {});
1720
-
1721
1717
  case 'danger':
1722
- return /*#__PURE__*/jsxRuntime.jsx(kittIcons.AlertTriangleIcon, {});
1718
+ return 'white';
1723
1719
 
1720
+ case 'warning':
1724
1721
  default:
1725
- return /*#__PURE__*/jsxRuntime.jsx(kittIcons.InfoIcon, {});
1722
+ return 'black';
1726
1723
  }
1727
- }
1724
+ };
1728
1725
 
1729
- function Message({
1726
+ const StyledMessageContainer = /*#__PURE__*/styled__default(BabelPluginStyledComponentsReactNative.View).withConfig({
1727
+ displayName: "BaseMessage__StyledMessageContainer",
1728
+ componentId: "kitt-universal__sc-eepeiz-0"
1729
+ })(["flex-direction:row;align-items:flex-start;justify-content:space-between;min-height:60px;padding-top:", "px;border-radius:", "px;background-color:", ";"], ({
1730
+ $insets
1731
+ }) => $insets?.top ?? 0, ({
1732
+ theme,
1733
+ $hasNoRadius
1734
+ }) => $hasNoRadius ? 0 : theme.kitt.spacing * 5, ({
1735
+ theme,
1736
+ $type
1737
+ }) => theme.kitt.feedbackMessage[$type].backgroundColor);
1738
+ const StyledDismissWrapper = /*#__PURE__*/styled__default(BabelPluginStyledComponentsReactNative.View).withConfig({
1739
+ displayName: "BaseMessage__StyledDismissWrapper",
1740
+ componentId: "kitt-universal__sc-eepeiz-1"
1741
+ })(["align-items:center;align-items:flex-start;margin:", ";"], ({
1742
+ theme
1743
+ }) => {
1744
+ const {
1745
+ spacing
1746
+ } = theme.kitt;
1747
+ return `${spacing * 2.5}px ${spacing * 2}px 0 ${spacing * 5}px`;
1748
+ });
1749
+ const StyledIconContainer = /*#__PURE__*/styled__default(BabelPluginStyledComponentsReactNative.View).withConfig({
1750
+ displayName: "BaseMessage__StyledIconContainer",
1751
+ componentId: "kitt-universal__sc-eepeiz-2"
1752
+ })(["margin:", ";"], ({
1753
+ theme
1754
+ }) => {
1755
+ const {
1756
+ spacing
1757
+ } = theme.kitt;
1758
+ return `${spacing}px ${spacing * 5}px 0 0`;
1759
+ });
1760
+ const StyledTextContent = /*#__PURE__*/styled__default(Typography.Text).withConfig({
1761
+ displayName: "BaseMessage__StyledTextContent",
1762
+ componentId: "kitt-universal__sc-eepeiz-3"
1763
+ })(["flex:1;text-align:", ";"], ({
1764
+ $isCenteredText
1765
+ }) => $isCenteredText ? 'center' : 'left');
1766
+ const StyledMessageContent = /*#__PURE__*/styled__default(BabelPluginStyledComponentsReactNative.View).withConfig({
1767
+ displayName: "BaseMessage__StyledMessageContent",
1768
+ componentId: "kitt-universal__sc-eepeiz-4"
1769
+ })(["display:flex;flex-direction:row;flex-grow:1;align-self:center;align-items:flex-start;flex-shrink:1;padding:", ";"], ({
1770
+ theme
1771
+ }) => {
1772
+ const {
1773
+ spacing
1774
+ } = theme.kitt;
1775
+ return `${spacing * 4}px ${spacing * 5}px`;
1776
+ });
1777
+ function BaseMessage({
1730
1778
  type = 'info',
1731
1779
  children,
1732
- noRadius = false,
1733
- centeredText = false,
1734
- onDismiss,
1735
- insets
1780
+ hasNoRadius,
1781
+ centeredText,
1782
+ insets,
1783
+ onDismiss
1736
1784
  }) {
1737
1785
  const color = getColorByType(type);
1738
- return /*#__PURE__*/jsxRuntime.jsxs(Container$1, {
1739
- type: type,
1740
- noRadius: noRadius,
1741
- insets: insets,
1742
- children: [!centeredText ? /*#__PURE__*/jsxRuntime.jsx(IconContainer, {
1743
- children: /*#__PURE__*/jsxRuntime.jsx(Icon, {
1744
- size: mainIconSize,
1745
- color: color,
1746
- icon: getIconContent(type)
1747
- })
1748
- }) : null, /*#__PURE__*/jsxRuntime.jsx(Content, {
1749
- type: type,
1750
- centeredText: centeredText,
1751
- children: /*#__PURE__*/jsxRuntime.jsx(Typography.Text, {
1752
- base: "body-small",
1786
+ return /*#__PURE__*/jsxRuntime.jsxs(StyledMessageContainer, {
1787
+ $type: type,
1788
+ $hasNoRadius: hasNoRadius,
1789
+ $insets: insets,
1790
+ children: [/*#__PURE__*/jsxRuntime.jsxs(StyledMessageContent, {
1791
+ children: [centeredText ? null : /*#__PURE__*/jsxRuntime.jsx(StyledIconContainer, {
1792
+ children: /*#__PURE__*/jsxRuntime.jsx(Icon, {
1793
+ color: color,
1794
+ icon: /*#__PURE__*/jsxRuntime.jsx(IconContent, {
1795
+ type: type,
1796
+ color: color
1797
+ })
1798
+ })
1799
+ }), /*#__PURE__*/jsxRuntime.jsx(StyledTextContent, {
1800
+ $isCenteredText: centeredText,
1801
+ base: "body",
1753
1802
  color: color,
1754
1803
  children: children
1755
- })
1756
- }), onDismiss ? /*#__PURE__*/jsxRuntime.jsx(CloseContainer, {
1757
- onPress: onDismiss,
1758
- children: /*#__PURE__*/jsxRuntime.jsx(Icon, {
1804
+ })]
1805
+ }), onDismiss ? /*#__PURE__*/jsxRuntime.jsx(StyledDismissWrapper, {
1806
+ children: /*#__PURE__*/jsxRuntime.jsx(IconButton, {
1807
+ color: getIconButtonColor(type),
1759
1808
  icon: /*#__PURE__*/jsxRuntime.jsx(kittIcons.XIcon, {}),
1760
- size: xIconSize,
1761
- color: color
1809
+ onPress: onDismiss
1762
1810
  })
1763
1811
  }) : null]
1764
1812
  });
1765
1813
  }
1766
1814
 
1815
+ function Message({
1816
+ type = 'info',
1817
+ children,
1818
+ hasNoRadius,
1819
+ centeredText,
1820
+ insets,
1821
+ onDismiss
1822
+ }) {
1823
+ return /*#__PURE__*/jsxRuntime.jsx(BaseMessage, {
1824
+ insets: insets,
1825
+ hasNoRadius: hasNoRadius,
1826
+ type: type,
1827
+ centeredText: centeredText,
1828
+ onDismiss: onDismiss,
1829
+ children: children
1830
+ });
1831
+ }
1832
+
1767
1833
  // Don't use styled.Pressable here - babel-plugin-styled-components-react-native-web only supports tagged templates
1768
1834
  const OverlayPressable = /*#__PURE__*/styled__default(BabelPluginStyledComponentsReactNative.Pressable).withConfig({
1769
1835
  displayName: "Overlay__OverlayPressable",
@@ -1919,19 +1985,22 @@ function Notification({
1919
1985
  type,
1920
1986
  children,
1921
1987
  centeredText,
1922
- onDelete
1988
+ insets,
1989
+ onDelete,
1990
+ onDismiss
1923
1991
  }) {
1924
- const {
1925
- top
1926
- } = reactNativeSafeAreaContext.useSafeAreaInsets();
1927
- return /*#__PURE__*/jsxRuntime.jsx(Message, {
1928
- noRadius: true,
1992
+ if ((process.env.NODE_ENV !== "production")) {
1993
+ if (onDelete) {
1994
+ throw new Error('onDelete is deprecated us onDismiss instead');
1995
+ }
1996
+ }
1997
+
1998
+ return /*#__PURE__*/jsxRuntime.jsx(BaseMessage, {
1999
+ hasNoRadius: true,
1929
2000
  type: type,
1930
2001
  centeredText: centeredText,
1931
- insets: {
1932
- top
1933
- },
1934
- onDismiss: onDelete,
2002
+ insets: insets,
2003
+ onDismiss: onDismiss,
1935
2004
  children: children
1936
2005
  });
1937
2006
  }
@@ -1965,12 +2034,16 @@ function SkeletonContent({
1965
2034
  });
1966
2035
  }
1967
2036
 
2037
+ const SkeletonContainer = /*#__PURE__*/styled__default(BabelPluginStyledComponentsReactNative.View).withConfig({
2038
+ displayName: "Skeleton__SkeletonContainer",
2039
+ componentId: "kitt-universal__sc-1w5cm3i-0"
2040
+ })(["overflow:hidden;"]);
1968
2041
  function Skeleton({
1969
2042
  isLoading,
1970
2043
  style
1971
2044
  }) {
1972
2045
  const [width, setWidth] = react.useState(0);
1973
- return /*#__PURE__*/jsxRuntime.jsx(BabelPluginStyledComponentsReactNative.View, {
2046
+ return /*#__PURE__*/jsxRuntime.jsx(SkeletonContainer, {
1974
2047
  style: style,
1975
2048
  onLayout: ({
1976
2049
  nativeEvent
@@ -1983,16 +2056,16 @@ function Skeleton({
1983
2056
  }
1984
2057
  const Bar = /*#__PURE__*/styled__default(Skeleton).withConfig({
1985
2058
  displayName: "Skeleton__Bar",
1986
- componentId: "kitt-universal__sc-1w5cm3i-0"
1987
- })(["width:100%;height:", "px;border-radius:", "px;overflow:hidden;"], ({
2059
+ componentId: "kitt-universal__sc-1w5cm3i-1"
2060
+ })(["width:100%;height:", "px;border-radius:", "px;"], ({
1988
2061
  theme
1989
2062
  }) => theme.kitt.spacing * 2, ({
1990
2063
  theme
1991
2064
  }) => theme.kitt.spacing * 2);
1992
2065
  const Circle = /*#__PURE__*/styled__default(Skeleton).withConfig({
1993
2066
  displayName: "Skeleton__Circle",
1994
- componentId: "kitt-universal__sc-1w5cm3i-1"
1995
- })(["width:", "px;height:", "px;border-radius:", "px;overflow:hidden;"], ({
2067
+ componentId: "kitt-universal__sc-1w5cm3i-2"
2068
+ })(["width:", "px;height:", "px;border-radius:", "px;"], ({
1996
2069
  theme
1997
2070
  }) => theme.kitt.spacing * 12, ({
1998
2071
  theme
@@ -2001,8 +2074,8 @@ const Circle = /*#__PURE__*/styled__default(Skeleton).withConfig({
2001
2074
  }) => theme.kitt.spacing * 6);
2002
2075
  const Square = /*#__PURE__*/styled__default(Skeleton).withConfig({
2003
2076
  displayName: "Skeleton__Square",
2004
- componentId: "kitt-universal__sc-1w5cm3i-2"
2005
- })(["width:", "px;height:", "px;border-radius:", "px;overflow:hidden;"], ({
2077
+ componentId: "kitt-universal__sc-1w5cm3i-3"
2078
+ })(["width:", "px;height:", "px;border-radius:", "px;"], ({
2006
2079
  theme
2007
2080
  }) => theme.kitt.spacing * 12, ({
2008
2081
  theme
@@ -2443,6 +2516,8 @@ const colorsLateOceanTheme = {
2443
2516
  success: lateOceanColorPalette.viride,
2444
2517
  correct: lateOceanColorPalette.viride,
2445
2518
  danger: lateOceanColorPalette.englishVermillon,
2519
+ info: lateOceanColorPalette.aero,
2520
+ warning: lateOceanColorPalette.goldCrayola,
2446
2521
  separator: lateOceanColorPalette.black100,
2447
2522
  hover: lateOceanColorPalette.black100,
2448
2523
  black: lateOceanColorPalette.black1000,
@@ -2467,7 +2542,7 @@ const avatar = {
2467
2542
  }
2468
2543
  };
2469
2544
 
2470
- const buttonLateOceanTheme = {
2545
+ const button = {
2471
2546
  borderRadius: '30px',
2472
2547
  borderWidth: {
2473
2548
  disabled: '2px',
@@ -2558,63 +2633,148 @@ const cardLateOceanTheme = {
2558
2633
  }
2559
2634
  };
2560
2635
 
2561
- const feedbackMessageLateOceanTheme = {
2562
- backgroundColors: {
2563
- success: lateOceanColorPalette.viride,
2564
- danger: lateOceanColorPalette.englishVermillon,
2565
- warning: lateOceanColorPalette.goldCrayola,
2566
- info: lateOceanColorPalette.aero
2636
+ const feedbackMessage = {
2637
+ danger: {
2638
+ backgroundColor: colorsLateOceanTheme.danger
2639
+ },
2640
+ success: {
2641
+ backgroundColor: colorsLateOceanTheme.success
2642
+ },
2643
+ info: {
2644
+ backgroundColor: colorsLateOceanTheme.info
2645
+ },
2646
+ warning: {
2647
+ backgroundColor: colorsLateOceanTheme.warning
2567
2648
  }
2568
2649
  };
2569
2650
 
2570
- const inputFieldLateOceanTheme = {
2571
- labelContainerPaddingBottom: 5,
2572
- iconMarginLeft: 6
2651
+ const calcLineHeight = (fontSize, lineHeightMultiplier) => Math.round(fontSize * lineHeightMultiplier);
2652
+ const createTypographyTypeConfig = (lineHeightMultiplier, baseAndSmallFontSize, mediumAndWideFontSize) => ({
2653
+ baseAndSmall: {
2654
+ fontSize: `${baseAndSmallFontSize}px`,
2655
+ lineHeight: `${calcLineHeight(baseAndSmallFontSize, lineHeightMultiplier)}px`
2656
+ },
2657
+ mediumAndWide: {
2658
+ fontSize: `${mediumAndWideFontSize}px`,
2659
+ lineHeight: `${calcLineHeight(mediumAndWideFontSize, lineHeightMultiplier)}px`
2660
+ }
2661
+ });
2662
+ const typographyLateOceanTheme = {
2663
+ colors: {
2664
+ black: lateOceanColorPalette.black1000,
2665
+ 'black-light': lateOceanColorPalette.black555,
2666
+ white: lateOceanColorPalette.white,
2667
+ 'white-light': lateOceanColorPalette.white,
2668
+ primary: lateOceanColorPalette.lateOcean,
2669
+ 'primary-light': lateOceanColorPalette.lateOceanLight1,
2670
+ accent: lateOceanColorPalette.warmEmbrace,
2671
+ success: lateOceanColorPalette.viride,
2672
+ danger: lateOceanColorPalette.englishVermillon
2673
+ },
2674
+ types: {
2675
+ headers: {
2676
+ fontFamily: {
2677
+ regular: 'Moderat',
2678
+ bold: 'Moderat'
2679
+ },
2680
+ fontWeight: 400,
2681
+ fontStyle: 'normal',
2682
+ configs: {
2683
+ // also known as xxlarge
2684
+ header1: createTypographyTypeConfig(1.3, 38, 62),
2685
+ // also known as xlarge
2686
+ header2: createTypographyTypeConfig(1.3, 32, 48),
2687
+ // also known as medium
2688
+ header3: createTypographyTypeConfig(1.3, 24, 36),
2689
+ // also known as xsmall
2690
+ header4: createTypographyTypeConfig(1.3, 18, 24),
2691
+ // also known as xxsmall
2692
+ header5: createTypographyTypeConfig(1.3, 18, 18)
2693
+ }
2694
+ },
2695
+ bodies: {
2696
+ fontFamily: {
2697
+ regular: 'Noto Sans',
2698
+ bold: 'Noto Sans'
2699
+ },
2700
+ fontWeight: {
2701
+ regular: 400,
2702
+ bold: 700
2703
+ },
2704
+ fontStyle: {
2705
+ regular: 'normal',
2706
+ bold: 'normal'
2707
+ },
2708
+ configs: {
2709
+ 'body-large': createTypographyTypeConfig(1.6, 18, 24),
2710
+ 'body-medium': createTypographyTypeConfig(1.6, 18, 18),
2711
+ body: createTypographyTypeConfig(1.6, 16, 16),
2712
+ 'body-small': createTypographyTypeConfig(1.6, 14, 14),
2713
+ 'body-xsmall': createTypographyTypeConfig(1.6, 12, 12)
2714
+ }
2715
+ }
2716
+ },
2717
+ link: {
2718
+ disabledColor: lateOceanColorPalette.black200
2719
+ }
2573
2720
  };
2574
2721
 
2575
2722
  const inputStatesStyle = {
2576
2723
  default: {
2577
- backgroundColor: lateOceanColorPalette.white,
2724
+ backgroundColor: colorsLateOceanTheme.uiBackgroundLight,
2725
+ borderColor: colorsLateOceanTheme.separator,
2726
+ color: 'black'
2727
+ },
2728
+ pending: {
2729
+ backgroundColor: colorsLateOceanTheme.uiBackgroundLight,
2730
+ borderColor: colorsLateOceanTheme.separator,
2731
+ color: 'black'
2732
+ },
2733
+ valid: {
2734
+ backgroundColor: colorsLateOceanTheme.uiBackgroundLight,
2578
2735
  borderColor: lateOceanColorPalette.black100,
2579
- color: 'black',
2580
- passwordButtonIconColor: 'black'
2736
+ color: 'black'
2581
2737
  },
2582
2738
  hover: {
2583
2739
  borderColor: lateOceanColorPalette.black200,
2584
- color: 'black',
2585
- passwordButtonIconColor: 'black'
2740
+ color: 'black'
2586
2741
  },
2587
2742
  focus: {
2588
- borderColor: lateOceanColorPalette.lateOcean,
2589
- color: 'black',
2590
- passwordButtonIconColor: 'black'
2743
+ borderColor: colorsLateOceanTheme.primary,
2744
+ color: 'black'
2591
2745
  },
2592
2746
  disabled: {
2593
- backgroundColor: lateOceanColorPalette.black50,
2594
- borderColor: lateOceanColorPalette.black100,
2595
- color: 'black-light',
2596
- passwordButtonIconColor: 'black-light'
2747
+ backgroundColor: colorsLateOceanTheme.disabled,
2748
+ borderColor: colorsLateOceanTheme.separator,
2749
+ color: 'black-light'
2597
2750
  },
2598
2751
  invalid: {
2599
- borderColor: lateOceanColorPalette.englishVermillon,
2600
- color: 'black',
2601
- passwordButtonIconColor: 'black'
2752
+ borderColor: colorsLateOceanTheme.danger,
2753
+ color: 'black'
2602
2754
  }
2603
2755
  };
2604
- const inputLateOceanTheme = {
2605
- marginTop: '2px',
2606
- marginBottom: '4px',
2756
+ const input = {
2757
+ color: {
2758
+ selection: colorsLateOceanTheme.primary,
2759
+ placeholder: typographyLateOceanTheme.colors['black-light']
2760
+ },
2607
2761
  borderWidth: '2px',
2608
2762
  borderRadius: '10px',
2609
- passwordButtonIconSize: 20,
2610
- padding: '7px 16px',
2611
- paddingSingleLineIOS: '12px 16px',
2612
- selectionColor: lateOceanColorPalette.lateOcean,
2613
- placeholderColor: 'black-light',
2614
- textAreaMinHeight: 120,
2763
+ icon: {
2764
+ size: 20
2765
+ },
2766
+ padding: {
2767
+ default: '7px 16px',
2768
+ iOSSingleLine: '12px 16px'
2769
+ },
2615
2770
  states: inputStatesStyle
2616
2771
  };
2617
2772
 
2773
+ const inputFieldLateOceanTheme = {
2774
+ labelContainerPaddingBottom: 5,
2775
+ iconMarginLeft: 6
2776
+ };
2777
+
2618
2778
  const radioLateOceanTheme = {
2619
2779
  size: 18,
2620
2780
  unchecked: {
@@ -2633,10 +2793,15 @@ const radioLateOceanTheme = {
2633
2793
  }
2634
2794
  };
2635
2795
 
2636
- const formsLateOceanTheme = {
2637
- input: inputLateOceanTheme,
2796
+ const textArea = {
2797
+ minHeight: 120
2798
+ };
2799
+
2800
+ const forms = {
2801
+ input,
2638
2802
  radio: radioLateOceanTheme,
2639
- inputField: inputFieldLateOceanTheme
2803
+ inputField: inputFieldLateOceanTheme,
2804
+ textArea
2640
2805
  };
2641
2806
 
2642
2807
  const fullScreenModalLateOceanTheme = {
@@ -2671,14 +2836,14 @@ const iconButton = {
2671
2836
  },
2672
2837
  disabled: {
2673
2838
  scale: 1,
2674
- backgroundColor: buttonLateOceanTheme.disabled.backgroundColor,
2675
- borderColor: buttonLateOceanTheme.disabled.borderColor
2839
+ backgroundColor: button.disabled.backgroundColor,
2840
+ borderColor: button.disabled.borderColor
2676
2841
  },
2677
2842
  default: {
2678
- pressedBackgroundColor: buttonLateOceanTheme.default.pressedBackgroundColor
2843
+ pressedBackgroundColor: button.default.pressedBackgroundColor
2679
2844
  },
2680
2845
  white: {
2681
- pressedBackgroundColor: buttonLateOceanTheme.white.hoverBackgroundColor
2846
+ pressedBackgroundColor: button.white.hoverBackgroundColor
2682
2847
  }
2683
2848
  };
2684
2849
 
@@ -2749,77 +2914,6 @@ const tooltip = {
2749
2914
  floatingPadding: 8
2750
2915
  };
2751
2916
 
2752
- const calcLineHeight = (fontSize, lineHeightMultiplier) => Math.round(fontSize * lineHeightMultiplier);
2753
- const createTypographyTypeConfig = (lineHeightMultiplier, baseAndSmallFontSize, mediumAndWideFontSize) => ({
2754
- baseAndSmall: {
2755
- fontSize: `${baseAndSmallFontSize}px`,
2756
- lineHeight: `${calcLineHeight(baseAndSmallFontSize, lineHeightMultiplier)}px`
2757
- },
2758
- mediumAndWide: {
2759
- fontSize: `${mediumAndWideFontSize}px`,
2760
- lineHeight: `${calcLineHeight(mediumAndWideFontSize, lineHeightMultiplier)}px`
2761
- }
2762
- });
2763
- const typographyLateOceanTheme = {
2764
- colors: {
2765
- black: lateOceanColorPalette.black1000,
2766
- 'black-light': lateOceanColorPalette.black555,
2767
- white: lateOceanColorPalette.white,
2768
- 'white-light': lateOceanColorPalette.white,
2769
- primary: lateOceanColorPalette.lateOcean,
2770
- 'primary-light': lateOceanColorPalette.lateOceanLight1,
2771
- accent: lateOceanColorPalette.warmEmbrace,
2772
- success: lateOceanColorPalette.viride,
2773
- danger: lateOceanColorPalette.englishVermillon
2774
- },
2775
- types: {
2776
- headers: {
2777
- fontFamily: {
2778
- regular: 'Moderat',
2779
- bold: 'Moderat'
2780
- },
2781
- fontWeight: 400,
2782
- fontStyle: 'normal',
2783
- configs: {
2784
- // also known as xxlarge
2785
- header1: createTypographyTypeConfig(1.3, 38, 62),
2786
- // also known as xlarge
2787
- header2: createTypographyTypeConfig(1.3, 32, 48),
2788
- // also known as medium
2789
- header3: createTypographyTypeConfig(1.3, 24, 36),
2790
- // also known as xsmall
2791
- header4: createTypographyTypeConfig(1.3, 18, 24),
2792
- // also known as xxsmall
2793
- header5: createTypographyTypeConfig(1.3, 18, 18)
2794
- }
2795
- },
2796
- bodies: {
2797
- fontFamily: {
2798
- regular: 'Noto Sans',
2799
- bold: 'Noto Sans'
2800
- },
2801
- fontWeight: {
2802
- regular: 400,
2803
- bold: 700
2804
- },
2805
- fontStyle: {
2806
- regular: 'normal',
2807
- bold: 'normal'
2808
- },
2809
- configs: {
2810
- 'body-large': createTypographyTypeConfig(1.6, 18, 24),
2811
- 'body-medium': createTypographyTypeConfig(1.6, 18, 18),
2812
- body: createTypographyTypeConfig(1.6, 16, 16),
2813
- 'body-small': createTypographyTypeConfig(1.6, 14, 14),
2814
- 'body-xsmall': createTypographyTypeConfig(1.6, 12, 12)
2815
- }
2816
- }
2817
- },
2818
- link: {
2819
- disabledColor: lateOceanColorPalette.black200
2820
- }
2821
- };
2822
-
2823
2917
  const breakpoints = {
2824
2918
  values: {
2825
2919
  base: 0,
@@ -2850,10 +2944,10 @@ const theme = {
2850
2944
  lateOcean: lateOceanColorPalette
2851
2945
  },
2852
2946
  avatar,
2853
- button: buttonLateOceanTheme,
2947
+ button,
2854
2948
  card: cardLateOceanTheme,
2855
- feedbackMessage: feedbackMessageLateOceanTheme,
2856
- forms: formsLateOceanTheme,
2949
+ feedbackMessage,
2950
+ forms,
2857
2951
  typography: typographyLateOceanTheme,
2858
2952
  tag: tagLateOceanTheme,
2859
2953
  shadows: shadowsLateOceanTheme,
@@ -2872,24 +2966,6 @@ function TimePicker() {
2872
2966
  });
2873
2967
  }
2874
2968
 
2875
- var Arrow = function (props) {
2876
- return /*#__PURE__*/jsxRuntime.jsx("svg", { ...props,
2877
- children: /*#__PURE__*/jsxRuntime.jsx("path", {
2878
- fillRule: "evenodd",
2879
- clipRule: "evenodd",
2880
- 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",
2881
- fill: "currentColor"
2882
- })
2883
- });
2884
- };
2885
-
2886
- Arrow.defaultProps = {
2887
- width: "36",
2888
- height: "8",
2889
- viewBox: "0 0 36 9",
2890
- fill: "none",
2891
- xmlns: "http://www.w3.org/2000/svg"
2892
- };
2893
2969
  const StyledTooltipView = /*#__PURE__*/styled__default(BabelPluginStyledComponentsReactNative.View).withConfig({
2894
2970
  displayName: "TooltipView__StyledTooltipView",
2895
2971
  componentId: "kitt-universal__sc-156zm6m-0"
@@ -2910,7 +2986,7 @@ const StyledTooltipContent = /*#__PURE__*/styled__default(BabelPluginStyledCompo
2910
2986
  function ArrowView(props) {
2911
2987
  const theme = /*#__PURE__*/styled.useTheme();
2912
2988
  return /*#__PURE__*/jsxRuntime.jsx(BabelPluginStyledComponentsReactNative.View, { ...props,
2913
- children: /*#__PURE__*/jsxRuntime.jsx(Arrow, {
2989
+ children: /*#__PURE__*/jsxRuntime.jsx(kittIcons.TooltipArrowIcon, {
2914
2990
  color: theme.kitt.tooltip.backgroundColor
2915
2991
  })
2916
2992
  });
@@ -3275,6 +3351,9 @@ exports.Icon = Icon;
3275
3351
  exports.IconButton = IconButton;
3276
3352
  exports.InputFeedback = InputFeedback;
3277
3353
  exports.InputField = InputField;
3354
+ exports.InputIcon = InputIcon;
3355
+ exports.InputPassword = InputPassword;
3356
+ exports.InputPressable = InputPressable;
3278
3357
  exports.InputText = InputText;
3279
3358
  exports.KittBreakpoints = KittBreakpoints;
3280
3359
  exports.KittBreakpointsMax = KittBreakpointsMax;