@ornikar/kitt-universal 27.4.0 → 27.5.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 (61) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/dist/definitions/CardModal/CardModalAnimation/CardModalAnimation.web.d.ts.map +1 -1
  3. package/dist/definitions/DialogModal/DialogModalAnimation/DialogModalAnimation.web.d.ts.map +1 -1
  4. package/dist/definitions/FullscreenModal/FullscreenModalAnimation.web.d.ts.map +1 -1
  5. package/dist/definitions/GoogleMapsAutocompleteProvider/GoogleMapsAutocompleteProvider.d.ts.map +1 -1
  6. package/dist/definitions/MapMarker/MapMarker.d.ts +2 -5
  7. package/dist/definitions/MapMarker/MapMarker.d.ts.map +1 -1
  8. package/dist/definitions/MapMarker/constants.d.ts +6 -0
  9. package/dist/definitions/MapMarker/constants.d.ts.map +1 -0
  10. package/dist/definitions/MapMarker/utils/getBackgroundColor.d.ts +2 -1
  11. package/dist/definitions/MapMarker/utils/getBackgroundColor.d.ts.map +1 -1
  12. package/dist/definitions/Picker/Picker.web.d.ts.map +1 -1
  13. package/dist/definitions/TabBar/TabBar.d.ts.map +1 -1
  14. package/dist/definitions/TimePicker/TimePicker.web.d.ts.map +1 -1
  15. package/dist/definitions/themes/late-ocean/cardModal.d.ts +21 -4
  16. package/dist/definitions/themes/late-ocean/cardModal.d.ts.map +1 -1
  17. package/dist/definitions/themes/late-ocean/dialogModal.d.ts +21 -4
  18. package/dist/definitions/themes/late-ocean/dialogModal.d.ts.map +1 -1
  19. package/dist/definitions/themes/late-ocean/fullscreenModal.d.ts +21 -4
  20. package/dist/definitions/themes/late-ocean/fullscreenModal.d.ts.map +1 -1
  21. package/dist/definitions/themes/late-ocean/shadows.d.ts +4 -2
  22. package/dist/definitions/themes/late-ocean/shadows.d.ts.map +1 -1
  23. package/dist/definitions/themes/late-ocean/skeleton.d.ts +2 -1
  24. package/dist/definitions/themes/late-ocean/skeleton.d.ts.map +1 -1
  25. package/dist/index-metro.es.android.js +100 -39
  26. package/dist/index-metro.es.android.js.map +1 -1
  27. package/dist/index-metro.es.ios.js +100 -39
  28. package/dist/index-metro.es.ios.js.map +1 -1
  29. package/dist/index-node-22.17.cjs.js +99 -38
  30. package/dist/index-node-22.17.cjs.js.map +1 -1
  31. package/dist/index-node-22.17.cjs.web.css +2 -2
  32. package/dist/index-node-22.17.cjs.web.js +66 -32
  33. package/dist/index-node-22.17.cjs.web.js.map +1 -1
  34. package/dist/index-node-22.17.es.mjs +99 -38
  35. package/dist/index-node-22.17.es.mjs.map +1 -1
  36. package/dist/index-node-22.17.es.web.css +2 -2
  37. package/dist/index-node-22.17.es.web.mjs +66 -32
  38. package/dist/index-node-22.17.es.web.mjs.map +1 -1
  39. package/dist/index.es.js +97 -74
  40. package/dist/index.es.js.map +1 -1
  41. package/dist/index.es.web.js +76 -44
  42. package/dist/index.es.web.js.map +1 -1
  43. package/dist/linaria-themes-metro.es.android.js +40 -10
  44. package/dist/linaria-themes-metro.es.android.js.map +1 -1
  45. package/dist/linaria-themes-metro.es.ios.js +40 -10
  46. package/dist/linaria-themes-metro.es.ios.js.map +1 -1
  47. package/dist/linaria-themes-node-22.17.cjs.js +40 -10
  48. package/dist/linaria-themes-node-22.17.cjs.js.map +1 -1
  49. package/dist/linaria-themes-node-22.17.cjs.web.js +40 -10
  50. package/dist/linaria-themes-node-22.17.cjs.web.js.map +1 -1
  51. package/dist/linaria-themes-node-22.17.es.mjs +40 -10
  52. package/dist/linaria-themes-node-22.17.es.mjs.map +1 -1
  53. package/dist/linaria-themes-node-22.17.es.web.mjs +40 -10
  54. package/dist/linaria-themes-node-22.17.es.web.mjs.map +1 -1
  55. package/dist/linaria-themes.es.js +40 -10
  56. package/dist/linaria-themes.es.js.map +1 -1
  57. package/dist/linaria-themes.es.web.js +40 -10
  58. package/dist/linaria-themes.es.web.js.map +1 -1
  59. package/dist/styles.css +2 -2
  60. package/dist/tsbuildinfo +1 -1
  61. package/package.json +1 -1
@@ -22,9 +22,9 @@
22
22
  .kitt-u_slideInFromBottomExit_sl0lsxt{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0);}
23
23
  .kitt-u_slideInFromBottomExitActive_srlzzmu{-webkit-transform:translateY(100%);-ms-transform:translateY(100%);transform:translateY(100%);-webkit-transition:-webkit-transform 600ms cubic-bezier(0.77,0,0.175,1);-webkit-transition:transform 600ms cubic-bezier(0.77,0,0.175,1);transition:transform 600ms cubic-bezier(0.77,0,0.175,1);}
24
24
  .kitt-u_opacityEnter_okm44hr{opacity:0;}
25
- .kitt-u_opacityEnterActive_o2w8t0i{opacity:1;-webkit-transition:opacity 250ms cubic-bezier(0.42,0,1,1);transition:opacity 250ms cubic-bezier(0.42,0,1,1);}
25
+ .kitt-u_opacityEnterActive_o2w8t0i{opacity:1;-webkit-transition:opacity 250ms cubic-bezier(0.42,1,0,1);transition:opacity 250ms cubic-bezier(0.42,1,0,1);}
26
26
  .kitt-u_opacityExit_o14r8iix{opacity:1;}
27
- .kitt-u_opacityExitActive_oim72y2{opacity:0;-webkit-transition:opacity 250ms cubic-bezier(0.42,0,1,1);transition:opacity 250ms cubic-bezier(0.42,0,1,1);}
27
+ .kitt-u_opacityExitActive_oim72y2{opacity:0;-webkit-transition:opacity 250ms cubic-bezier(0.42,1,0,1);transition:opacity 250ms cubic-bezier(0.42,1,0,1);}
28
28
  .kitt-u_pageLoaderContainer_ptkwz2j{width:60px;height:60px;-webkit-transform:scale(-1) rotate(90deg);-ms-transform:scale(-1) rotate(90deg);transform:scale(-1) rotate(90deg);}@-webkit-keyframes PageLoaderInit-kitt-u_pageLoaderContainer_ptkwz2j{0%{stroke-dashoffset:169.64600329384882px;}100%{stroke-dashoffset:0;}}@keyframes PageLoaderInit-kitt-u_pageLoaderContainer_ptkwz2j{0%{stroke-dashoffset:169.64600329384882px;}100%{stroke-dashoffset:0;}}@-webkit-keyframes PageLoaderOffset-kitt-u_pageLoaderContainer_ptkwz2j{0%{stroke-dashoffset:169.64600329384882px;}100%{stroke-dashoffset:33.929200658769766px;}}@keyframes PageLoaderOffset-kitt-u_pageLoaderContainer_ptkwz2j{0%{stroke-dashoffset:169.64600329384882px;}100%{stroke-dashoffset:33.929200658769766px;}}@-webkit-keyframes PageLoaderRotation-kitt-u_pageLoaderContainer_ptkwz2j{0%{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg);}100%{-webkit-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg);}}@keyframes PageLoaderRotation-kitt-u_pageLoaderContainer_ptkwz2j{0%{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg);}100%{-webkit-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg);}}.kitt-u_pageLoaderContainer_ptkwz2j circle,.kitt-u_pageLoaderContainer_ptkwz2j g{-webkit-transform-origin:center center;-ms-transform-origin:center center;transform-origin:center center;}.kitt-u_pageLoaderContainer_ptkwz2j g[data-large-loader='base'] circle{-webkit-animation:1000ms cubic-bezier(0.39,0.575,0.565,1) 500ms forwards;animation:1000ms cubic-bezier(0.39,0.575,0.565,1) 500ms forwards;-webkit-animation-name:PageLoaderInit-kitt-u_pageLoaderContainer_ptkwz2j;animation-name:PageLoaderInit-kitt-u_pageLoaderContainer_ptkwz2j;}.kitt-u_pageLoaderContainer_ptkwz2j g[data-large-loader='fill']{-webkit-animation:1800ms linear 500ms infinite;animation:1800ms linear 500ms infinite;-webkit-animation-name:PageLoaderRotation-kitt-u_pageLoaderContainer_ptkwz2j;animation-name:PageLoaderRotation-kitt-u_pageLoaderContainer_ptkwz2j;}.kitt-u_pageLoaderContainer_ptkwz2j g[data-large-loader='fill'] circle{-webkit-animation:1800ms cubic-bezier(0.39,0.575,0.565,1) 500ms infinite alternate,2160ms linear 500ms infinite;animation:1800ms cubic-bezier(0.39,0.575,0.565,1) 500ms infinite alternate,2160ms linear 500ms infinite;-webkit-animation-name:PageLoaderOffset-kitt-u_pageLoaderContainer_ptkwz2j,PageLoaderRotation-kitt-u_pageLoaderContainer_ptkwz2j;animation-name:PageLoaderOffset-kitt-u_pageLoaderContainer_ptkwz2j,PageLoaderRotation-kitt-u_pageLoaderContainer_ptkwz2j;}
29
29
  .kitt-u_enter_ereraf{-webkit-transform:translateY(8px);-ms-transform:translateY(8px);transform:translateY(8px);opacity:0;}
30
30
  .kitt-u_enterActive_e1jmsjrm{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0);opacity:1;-webkit-transition:all 300ms ease-in-out;transition:all 300ms ease-in-out;}
@@ -733,9 +733,19 @@ const card = {
733
733
  };
734
734
 
735
735
  const webAnimationContentDuration$2 = 400;
736
- const webAnimationContentEasing$2 = [0.77, 0, 0.175, 1];
736
+ const webAnimationContentEasing$2 = {
737
+ x1: 0.77,
738
+ y1: 0,
739
+ x2: 0.175,
740
+ y2: 1
741
+ };
737
742
  const webAnimationOverlayDuration$2 = 250;
738
- const webAnimationOverlayEasing$2 = [0.42, 0, 1, 1];
743
+ const webAnimationOverlayEasing$2 = {
744
+ x1: 0.42,
745
+ y1: 0,
746
+ x2: 1,
747
+ y2: 1
748
+ };
739
749
  const maxWidth = 540;
740
750
  const overlayHorizontalPadding = 24;
741
751
  const cardModal = {
@@ -827,9 +837,19 @@ const choices = {
827
837
  };
828
838
 
829
839
  const webAnimationContentDuration$1 = 400;
830
- const webAnimationContentEasing$1 = [0.77, 0, 0.175, 1];
840
+ const webAnimationContentEasing$1 = {
841
+ x1: 0.77,
842
+ y1: 0,
843
+ x2: 0.175,
844
+ y2: 1
845
+ };
831
846
  const webAnimationOverlayDuration$1 = 250;
832
- const webAnimationOverlayEasing$1 = [0.42, 0, 1, 1];
847
+ const webAnimationOverlayEasing$1 = {
848
+ x1: 0.42,
849
+ y1: 0,
850
+ x2: 1,
851
+ y2: 1
852
+ };
833
853
  const dialogModal = {
834
854
  borderRadius: spacing * 2,
835
855
  maxWidth: 540,
@@ -1761,9 +1781,19 @@ const forms = {
1761
1781
  };
1762
1782
 
1763
1783
  const webAnimationContentDuration = 600;
1764
- const webAnimationContentEasing = [0.77, 0, 0.175, 1];
1784
+ const webAnimationContentEasing = {
1785
+ x1: 0.77,
1786
+ y1: 0,
1787
+ x2: 0.175,
1788
+ y2: 1
1789
+ };
1765
1790
  const webAnimationOverlayDuration = 250;
1766
- const webAnimationOverlayEasing = [0.42, 0, 1, 1];
1791
+ const webAnimationOverlayEasing = {
1792
+ x1: 0.42,
1793
+ y1: 0,
1794
+ x2: 1,
1795
+ y2: 1
1796
+ };
1767
1797
  const fullscreenModal = {
1768
1798
  header: {
1769
1799
  height: 56
@@ -1911,8 +1941,8 @@ const listItem = {
1911
1941
 
1912
1942
  const mapMarker = {
1913
1943
  home: {
1914
- default: colors.primaryLight,
1915
- selected: colors.primary,
1944
+ default: deepPurpleColorPalette['grey.9'],
1945
+ selected: deepPurpleColorPalette['grey.7'],
1916
1946
  svg: {
1917
1947
  height: 36
1918
1948
  },
@@ -1922,8 +1952,8 @@ const mapMarker = {
1922
1952
  }
1923
1953
  },
1924
1954
  meetingPoint: {
1925
- default: colors.black,
1926
- selected: colors.blackAnthracite,
1955
+ default: deepPurpleColorPalette['deepPurple.8'],
1956
+ selected: deepPurpleColorPalette['deepPurple.6'],
1927
1957
  svg: {
1928
1958
  width: 40,
1929
1959
  height: 43
@@ -5699,7 +5729,7 @@ function DocumentPicker({
5699
5729
  ...documentPickerOptions,
5700
5730
  multiple: false
5701
5731
  });
5702
- if (!result.canceled && result.assets[0].file) {
5732
+ if (!result.canceled && result.assets[0]?.file) {
5703
5733
  onDocumentUpload(result.assets[0].file);
5704
5734
  }
5705
5735
  },
@@ -5730,7 +5760,7 @@ function ImagePicker({
5730
5760
  ...imagePickerOptions,
5731
5761
  allowsMultipleSelection: false
5732
5762
  });
5733
- if (!result.canceled) {
5763
+ if (!result.canceled && result.assets[0]) {
5734
5764
  onImageSelected(result.assets[0]);
5735
5765
  }
5736
5766
  },
@@ -5988,17 +6018,17 @@ function GoogleMapsAutocompleteProvider({
5988
6018
  dispatch({
5989
6019
  type: 'search-error'
5990
6020
  });
5991
- return;
5992
6021
  }
5993
-
5994
- // We cache the results to avoid calling the API again if the user types the same value
5995
- searchResultsCache.current[value] = results;
5996
- dispatch({
5997
- type: 'search-success',
5998
- payload: {
5999
- results
6000
- }
6001
- });
6022
+ if (results) {
6023
+ // We cache the results to avoid calling the API again if the user types the same value
6024
+ searchResultsCache.current[value] = results;
6025
+ dispatch({
6026
+ type: 'search-success',
6027
+ payload: {
6028
+ results
6029
+ }
6030
+ });
6031
+ }
6002
6032
  } catch (error) {
6003
6033
  dispatch({
6004
6034
  type: 'search-error'
@@ -7759,12 +7789,11 @@ const SvgPinMarkerinline = props => /*#__PURE__*/jsxs("svg", {
7759
7789
  width: 34,
7760
7790
  height: 36,
7761
7791
  viewBox: "0 0 34 36",
7762
- fill: "none",
7792
+ fill: "currentColor",
7763
7793
  xmlns: "http://www.w3.org/2000/svg",
7764
7794
  ...props,
7765
7795
  children: [/*#__PURE__*/jsx("path", {
7766
7796
  d: "M17 .5C26.113.5 33.5 7.887 33.5 17c0 8.272-6.087 15.121-14.025 16.315-.05.008-.157.054-.337.211-.173.151-.351.345-.56.57a5.972 5.972 0 0 1-.662.637c-.232.181-.545.367-.916.367-.37 0-.684-.186-.916-.367a5.972 5.972 0 0 1-.662-.637c-.209-.224-.387-.419-.56-.57-.18-.157-.287-.203-.337-.21C6.586 32.12.5 25.271.5 17 .5 7.887 7.887.5 17 .5Z",
7767
- fill: "#7B66FF",
7768
7797
  stroke: "#fff"
7769
7798
  }), /*#__PURE__*/jsx("path", {
7770
7799
  d: "M17 10a5.506 5.506 0 0 0-5.5 5.5c0 4.706 5 8.26 5.213 8.41a.5.5 0 0 0 .574 0c.213-.15 5.213-3.704 5.213-8.41A5.506 5.506 0 0 0 17 10Zm0 3.5a2 2 0 1 1 0 4 2 2 0 0 1 0-4Z",
@@ -7789,6 +7818,13 @@ const SvgShadowinline = props => /*#__PURE__*/jsx("svg", {
7789
7818
  })
7790
7819
  });
7791
7820
 
7821
+ let MapMarkerVariantEnum = /*#__PURE__*/function (MapMarkerVariantEnum) {
7822
+ MapMarkerVariantEnum["HOME"] = "home";
7823
+ MapMarkerVariantEnum["MEETING_POINT"] = "meetingPoint";
7824
+ MapMarkerVariantEnum["CLOSE_MEETING_POINT"] = "closeMeetingPoint";
7825
+ return MapMarkerVariantEnum;
7826
+ }({});
7827
+
7792
7828
  const SCALE_DURATION = 300;
7793
7829
  const TRANSLATE_Y_DURATION = 150;
7794
7830
  const useNativeAnimation = ({
@@ -7845,18 +7881,12 @@ const getBackgroundColor$1 = ({
7845
7881
  isSelected,
7846
7882
  variant
7847
7883
  }) => {
7848
- if (variant === 'home') {
7884
+ if (variant === MapMarkerVariantEnum.HOME || variant === MapMarkerVariantEnum.CLOSE_MEETING_POINT) {
7849
7885
  return isSelected || isHovered ? theme.mapMarker.home.selected : theme.mapMarker.home.default;
7850
7886
  }
7851
7887
  return isSelected || isHovered ? theme.mapMarker.meetingPoint.selected : theme.mapMarker.meetingPoint.default;
7852
7888
  };
7853
7889
 
7854
- let MapMarkerVariantEnum = /*#__PURE__*/function (MapMarkerVariantEnum) {
7855
- MapMarkerVariantEnum["HOME"] = "home";
7856
- MapMarkerVariantEnum["MEETING_POINT"] = "meetingPoint";
7857
- MapMarkerVariantEnum["CLOSE_MEETING_POINT"] = "closeMeetingPoint";
7858
- return MapMarkerVariantEnum;
7859
- }({});
7860
7890
  function StaticMapMarker$1({
7861
7891
  variant,
7862
7892
  isHovered,
@@ -10891,6 +10921,7 @@ function Picker({
10891
10921
  paddingY: "kitt.2",
10892
10922
  children: childrenArray.map((child, index) => {
10893
10923
  const currentValue = items[index];
10924
+ if (!currentValue) throw new Error(`Picker: No value found for item at index ${index}`);
10894
10925
  const {
10895
10926
  onClick,
10896
10927
  'aria-selected': ariaSelected,
@@ -11700,12 +11731,13 @@ function TabBar({
11700
11731
  ...props,
11701
11732
  children: Children.map(tabItems, (child, index) => {
11702
11733
  const tab = tabs[index];
11734
+ if (!tab) throw new Error(`TabBar: tab is undefined at index ${index}`);
11703
11735
  return /*#__PURE__*/jsx(View, {
11704
11736
  children: /*#__PURE__*/cloneElement(child, {
11705
11737
  color,
11706
11738
  onPress: event => {
11707
11739
  onChangeTab({
11708
- tab: tabs[index],
11740
+ tab,
11709
11741
  index
11710
11742
  });
11711
11743
  child.props.onPress?.(event);
@@ -11853,6 +11885,7 @@ const TimePicker = /*#__PURE__*/forwardRef(({
11853
11885
  // Format is hh:mm hence 5 characters
11854
11886
  if (currentInputValue.length < 5 || !currentInputValue.includes(':')) return;
11855
11887
  const [hours, minutes] = currentInputValue.split(':');
11888
+ if (!hours || !minutes) return;
11856
11889
 
11857
11890
  // Prepare the next date. It clones the date value passed as prop if available
11858
11891
  const nextDate = value ? new Date(value) : new Date();
@@ -11893,6 +11926,7 @@ const TimePicker = /*#__PURE__*/forwardRef(({
11893
11926
  // When input has a value which is more than ':'
11894
11927
  if (hasSeparator && sanitizedValue.length > 1) {
11895
11928
  const [hours, minutes] = sanitizedValue.split(':');
11929
+ if (!hours || !minutes) return;
11896
11930
  const currentHours = getDisplayedHours(hours);
11897
11931
  const currentMinutes = getDisplayedMinutes(minutes);
11898
11932
  const nextValue = `${currentHours}:${currentMinutes}`;