@react-navigation/elements 3.0.0-alpha.3 → 3.0.0-alpha.31

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 (177) hide show
  1. package/lib/module/ActivityView.js +90 -0
  2. package/lib/module/ActivityView.js.map +1 -0
  3. package/lib/module/ActivityView.native.js +67 -0
  4. package/lib/module/ActivityView.native.js.map +1 -0
  5. package/lib/module/Badge.js +5 -4
  6. package/lib/module/Badge.js.map +1 -1
  7. package/lib/module/Button.js +91 -13
  8. package/lib/module/Button.js.map +1 -1
  9. package/lib/module/Color.js +552 -4
  10. package/lib/module/Color.js.map +1 -1
  11. package/lib/module/Container.js +11 -1
  12. package/lib/module/Container.js.map +1 -1
  13. package/lib/module/Header/Header.js +26 -11
  14. package/lib/module/Header/Header.js.map +1 -1
  15. package/lib/module/Header/HeaderBackButton.js +27 -13
  16. package/lib/module/Header/HeaderBackButton.js.map +1 -1
  17. package/lib/module/Header/HeaderButton.js +4 -5
  18. package/lib/module/Header/HeaderButton.js.map +1 -1
  19. package/lib/module/Header/HeaderIcon.js +29 -10
  20. package/lib/module/Header/HeaderIcon.js.map +1 -1
  21. package/lib/module/Header/HeaderSearchBar.js +31 -24
  22. package/lib/module/Header/HeaderSearchBar.js.map +1 -1
  23. package/lib/module/Header/getHeaderTitle.js.map +1 -1
  24. package/lib/module/Header/useHeaderHeight.js +1 -1
  25. package/lib/module/Header/useHeaderHeight.js.map +1 -1
  26. package/lib/module/Label/getLabel.js.map +1 -1
  27. package/lib/module/PlatformColor.js +1 -0
  28. package/lib/module/PlatformColor.js.map +1 -1
  29. package/lib/module/PlatformColor.native.js +1 -1
  30. package/lib/module/PlatformColor.native.js.map +1 -1
  31. package/lib/module/PlatformPressable.js +14 -5
  32. package/lib/module/PlatformPressable.js.map +1 -1
  33. package/lib/module/SafeAreaProviderCompat.js +1 -1
  34. package/lib/module/SafeAreaProviderCompat.js.map +1 -1
  35. package/lib/module/Screen.js +31 -18
  36. package/lib/module/Screen.js.map +1 -1
  37. package/lib/module/index.js +1 -7
  38. package/lib/module/index.js.map +1 -1
  39. package/lib/module/internal.js +1 -1
  40. package/lib/module/internal.js.map +1 -1
  41. package/lib/module/useFrameSize.js +1 -1
  42. package/lib/module/useFrameSize.js.map +1 -1
  43. package/lib/typescript/src/ActivityView.d.ts +31 -0
  44. package/lib/typescript/src/ActivityView.d.ts.map +1 -0
  45. package/lib/typescript/src/ActivityView.native.d.ts +3 -0
  46. package/lib/typescript/src/ActivityView.native.d.ts.map +1 -0
  47. package/lib/typescript/src/Badge.d.ts +3 -3
  48. package/lib/typescript/src/Badge.d.ts.map +1 -1
  49. package/lib/typescript/src/Button.d.ts +35 -4
  50. package/lib/typescript/src/Button.d.ts.map +1 -1
  51. package/lib/typescript/src/Color.d.ts +4 -4
  52. package/lib/typescript/src/Color.d.ts.map +1 -1
  53. package/lib/typescript/src/Container.d.ts +7 -4
  54. package/lib/typescript/src/Container.d.ts.map +1 -1
  55. package/lib/typescript/src/Header/Header.d.ts +2 -2
  56. package/lib/typescript/src/Header/Header.d.ts.map +1 -1
  57. package/lib/typescript/src/Header/HeaderBackButton.d.ts +1 -1
  58. package/lib/typescript/src/Header/HeaderBackButton.d.ts.map +1 -1
  59. package/lib/typescript/src/Header/HeaderBackground.d.ts +3 -3
  60. package/lib/typescript/src/Header/HeaderBackground.d.ts.map +1 -1
  61. package/lib/typescript/src/Header/HeaderButton.d.ts +6 -1
  62. package/lib/typescript/src/Header/HeaderButton.d.ts.map +1 -1
  63. package/lib/typescript/src/Header/HeaderIcon.d.ts +8 -4
  64. package/lib/typescript/src/Header/HeaderIcon.d.ts.map +1 -1
  65. package/lib/typescript/src/Header/HeaderSearchBar.d.ts +9 -6
  66. package/lib/typescript/src/Header/HeaderSearchBar.d.ts.map +1 -1
  67. package/lib/typescript/src/Header/HeaderTitle.d.ts +3 -3
  68. package/lib/typescript/src/Header/HeaderTitle.d.ts.map +1 -1
  69. package/lib/typescript/src/Header/getHeaderTitle.d.ts +1 -1
  70. package/lib/typescript/src/Header/getHeaderTitle.d.ts.map +1 -1
  71. package/lib/typescript/src/Label/getLabel.d.ts +2 -2
  72. package/lib/typescript/src/Label/getLabel.d.ts.map +1 -1
  73. package/lib/typescript/src/PlatformColor.d.ts +1 -0
  74. package/lib/typescript/src/PlatformColor.d.ts.map +1 -1
  75. package/lib/typescript/src/PlatformColor.native.d.ts +1 -1
  76. package/lib/typescript/src/PlatformColor.native.d.ts.map +1 -1
  77. package/lib/typescript/src/PlatformPressable.d.ts +12 -15
  78. package/lib/typescript/src/PlatformPressable.d.ts.map +1 -1
  79. package/lib/typescript/src/Screen.d.ts +6 -6
  80. package/lib/typescript/src/Screen.d.ts.map +1 -1
  81. package/lib/typescript/src/index.d.ts +1 -2
  82. package/lib/typescript/src/index.d.ts.map +1 -1
  83. package/lib/typescript/src/internal.d.ts +1 -1
  84. package/lib/typescript/src/internal.d.ts.map +1 -1
  85. package/lib/typescript/src/types.d.ts +119 -69
  86. package/lib/typescript/src/types.d.ts.map +1 -1
  87. package/package.json +20 -20
  88. package/src/ActivityView.native.tsx +90 -0
  89. package/src/ActivityView.tsx +129 -0
  90. package/src/Badge.tsx +9 -7
  91. package/src/Button.tsx +151 -14
  92. package/src/Color.tsx +726 -8
  93. package/src/Container.tsx +20 -4
  94. package/src/Header/Header.tsx +43 -20
  95. package/src/Header/HeaderBackButton.tsx +31 -17
  96. package/src/Header/HeaderBackground.tsx +3 -3
  97. package/src/Header/HeaderButton.tsx +16 -18
  98. package/src/Header/HeaderIcon.tsx +49 -9
  99. package/src/Header/HeaderSearchBar.tsx +50 -44
  100. package/src/Header/HeaderTitle.tsx +3 -3
  101. package/src/Header/getHeaderTitle.tsx +4 -1
  102. package/src/Header/useHeaderHeight.tsx +1 -1
  103. package/src/Label/getLabel.tsx +1 -1
  104. package/src/PlatformColor.native.tsx +1 -1
  105. package/src/PlatformColor.tsx +4 -0
  106. package/src/PlatformPressable.tsx +40 -29
  107. package/src/SafeAreaProviderCompat.tsx +1 -1
  108. package/src/Screen.tsx +40 -27
  109. package/src/index.tsx +1 -16
  110. package/src/internal.tsx +1 -1
  111. package/src/types.tsx +153 -76
  112. package/src/useFrameSize.tsx +1 -1
  113. package/lib/module/Lazy.js +0 -42
  114. package/lib/module/Lazy.js.map +0 -1
  115. package/lib/module/assets/back-icon.ios.svg +0 -4
  116. package/lib/module/assets/back-icon@1x.android.png +0 -0
  117. package/lib/module/assets/back-icon@1x.ios.png +0 -0
  118. package/lib/module/assets/back-icon@2x.android.png +0 -0
  119. package/lib/module/assets/back-icon@2x.ios.png +0 -0
  120. package/lib/module/assets/back-icon@3x.android.png +0 -0
  121. package/lib/module/assets/back-icon@3x.ios.png +0 -0
  122. package/lib/module/assets/back-icon@4x.android.png +0 -0
  123. package/lib/module/assets/back-icon@4x.ios.png +0 -0
  124. package/lib/module/assets/clear-icon@1x.png +0 -0
  125. package/lib/module/assets/clear-icon@2x.png +0 -0
  126. package/lib/module/assets/clear-icon@3x.png +0 -0
  127. package/lib/module/assets/clear-icon@4x.png +0 -0
  128. package/lib/module/assets/close-icon@1x.png +0 -0
  129. package/lib/module/assets/close-icon@2x.png +0 -0
  130. package/lib/module/assets/close-icon@3x.png +0 -0
  131. package/lib/module/assets/close-icon@4x.png +0 -0
  132. package/lib/module/assets/search-icon-legacy@1x.ios.png +0 -0
  133. package/lib/module/assets/search-icon-legacy@2x.ios.png +0 -0
  134. package/lib/module/assets/search-icon-legacy@3x.ios.png +0 -0
  135. package/lib/module/assets/search-icon-legacy@4x.ios.png +0 -0
  136. package/lib/module/assets/search-icon.ios.svg +0 -4
  137. package/lib/module/assets/search-icon@1x.android.png +0 -0
  138. package/lib/module/assets/search-icon@1x.ios.png +0 -0
  139. package/lib/module/assets/search-icon@2x.android.png +0 -0
  140. package/lib/module/assets/search-icon@2x.ios.png +0 -0
  141. package/lib/module/assets/search-icon@3x.android.png +0 -0
  142. package/lib/module/assets/search-icon@3x.ios.png +0 -0
  143. package/lib/module/assets/search-icon@4x.android.png +0 -0
  144. package/lib/module/assets/search-icon@4x.ios.png +0 -0
  145. package/lib/typescript/src/Lazy.d.ts +0 -31
  146. package/lib/typescript/src/Lazy.d.ts.map +0 -1
  147. package/src/Lazy.tsx +0 -59
  148. package/src/assets/back-icon.ios.svg +0 -4
  149. package/src/assets/back-icon@1x.android.png +0 -0
  150. package/src/assets/back-icon@1x.ios.png +0 -0
  151. package/src/assets/back-icon@2x.android.png +0 -0
  152. package/src/assets/back-icon@2x.ios.png +0 -0
  153. package/src/assets/back-icon@3x.android.png +0 -0
  154. package/src/assets/back-icon@3x.ios.png +0 -0
  155. package/src/assets/back-icon@4x.android.png +0 -0
  156. package/src/assets/back-icon@4x.ios.png +0 -0
  157. package/src/assets/clear-icon@1x.png +0 -0
  158. package/src/assets/clear-icon@2x.png +0 -0
  159. package/src/assets/clear-icon@3x.png +0 -0
  160. package/src/assets/clear-icon@4x.png +0 -0
  161. package/src/assets/close-icon@1x.png +0 -0
  162. package/src/assets/close-icon@2x.png +0 -0
  163. package/src/assets/close-icon@3x.png +0 -0
  164. package/src/assets/close-icon@4x.png +0 -0
  165. package/src/assets/search-icon-legacy@1x.ios.png +0 -0
  166. package/src/assets/search-icon-legacy@2x.ios.png +0 -0
  167. package/src/assets/search-icon-legacy@3x.ios.png +0 -0
  168. package/src/assets/search-icon-legacy@4x.ios.png +0 -0
  169. package/src/assets/search-icon.ios.svg +0 -4
  170. package/src/assets/search-icon@1x.android.png +0 -0
  171. package/src/assets/search-icon@1x.ios.png +0 -0
  172. package/src/assets/search-icon@2x.android.png +0 -0
  173. package/src/assets/search-icon@2x.ios.png +0 -0
  174. package/src/assets/search-icon@3x.android.png +0 -0
  175. package/src/assets/search-icon@3x.ios.png +0 -0
  176. package/src/assets/search-icon@4x.android.png +0 -0
  177. package/src/assets/search-icon@4x.ios.png +0 -0
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+
3
+ import { Activity, useCallback, useEffect, useState } from 'react';
4
+ import { Platform } from 'react-native';
5
+ import { Container } from "./Container.js";
6
+ import { jsx as _jsx } from "react/jsx-runtime";
7
+ export function ActivityView({
8
+ mode,
9
+ visible,
10
+ delay = 500,
11
+ style,
12
+ children
13
+ }) {
14
+ const [delayedMode, setDelayedMode] = useState(mode);
15
+ useEffect(() => {
16
+ if (!delay) {
17
+ return;
18
+ }
19
+ const timer = setTimeout(() => {
20
+ setDelayedMode(mode);
21
+ }, delay);
22
+ return () => clearTimeout(timer);
23
+ }, [delay, mode]);
24
+ const display = visible ? 'flex' : 'none';
25
+ const activityMode = mode !== 'paused' || delay && delayedMode !== 'paused' ? 'visible' : 'hidden';
26
+
27
+ /**
28
+ * Activity has 2 modes, visible and hidden - hidden unmounts effects
29
+ * But what we want is to unmount effects, without hiding content
30
+ * So we use hidden mode, but unset display: none to make content visible
31
+ */
32
+ const onRef = useCallback(node => {
33
+ if (Platform.OS !== 'web' || !(node && node instanceof HTMLElement)) {
34
+ return;
35
+ }
36
+ const observers = [];
37
+ const observe = () => {
38
+ // Remove previous observers
39
+ observers.forEach(o => o.disconnect());
40
+ observers.length = 0;
41
+ const children = node.childNodes;
42
+
43
+ // When the style attribute for children is updated by React
44
+ // We observe it and update display to make content visible
45
+ children.forEach(child => {
46
+ if (child instanceof HTMLElement) {
47
+ child.style.display = display;
48
+ const o = new MutationObserver(() => {
49
+ child.style.display = display;
50
+ });
51
+ o.observe(child, {
52
+ attributes: true,
53
+ attributeFilter: ['style']
54
+ });
55
+ observers.push(o);
56
+ }
57
+ });
58
+ };
59
+ observe();
60
+
61
+ // React removes refs when `Activity` is hidden
62
+ // So we render outside of the `Activity` and observer child list
63
+ const observer = new MutationObserver(observe);
64
+ observer.observe(node, {
65
+ childList: true
66
+ });
67
+ return () => {
68
+ observer.disconnect();
69
+ observers.forEach(o => o.disconnect());
70
+ };
71
+ }, [display]);
72
+ return /*#__PURE__*/_jsx(Container, {
73
+ ref: onRef,
74
+ style: {
75
+ display: 'contents'
76
+ },
77
+ children: /*#__PURE__*/_jsx(Activity, {
78
+ mode: activityMode,
79
+ children: /*#__PURE__*/_jsx(Container, {
80
+ inert: mode !== 'normal',
81
+ style: {
82
+ ...style,
83
+ display
84
+ },
85
+ children: children
86
+ })
87
+ })
88
+ });
89
+ }
90
+ //# sourceMappingURL=ActivityView.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Activity","useCallback","useEffect","useState","Platform","Container","jsx","_jsx","ActivityView","mode","visible","delay","style","children","delayedMode","setDelayedMode","timer","setTimeout","clearTimeout","display","activityMode","onRef","node","OS","HTMLElement","observers","observe","forEach","o","disconnect","length","childNodes","child","MutationObserver","attributes","attributeFilter","push","observer","childList","ref","inert"],"sourceRoot":"../../src","sources":["ActivityView.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+
3
+ import { Activity, useEffect, useState } from 'react';
4
+ import { NativeComponentRegistry } from 'react-native';
5
+
6
+ // eslint-disable-next-line import-x/extensions
7
+
8
+ import { Container } from "./Container.js";
9
+ import { jsx as _jsx } from "react/jsx-runtime";
10
+ export function ActivityView({
11
+ mode,
12
+ visible,
13
+ delay = 500,
14
+ style,
15
+ children
16
+ }) {
17
+ const [delayedMode, setDelayedMode] = useState(mode);
18
+ useEffect(() => {
19
+ if (!delay) {
20
+ return;
21
+ }
22
+ const timer = setTimeout(() => {
23
+ setDelayedMode(mode);
24
+ }, delay);
25
+ return () => clearTimeout(timer);
26
+ }, [delay, mode]);
27
+ const display = visible ? 'flex' : 'none';
28
+ const activityMode = mode !== 'paused' || delay && delayedMode !== 'paused' ? 'visible' : 'hidden';
29
+ return /*#__PURE__*/_jsx(Activity, {
30
+ mode: activityMode,
31
+ children: /*#__PURE__*/_jsx(ActivityContentView, {
32
+ style: {
33
+ display: 'contents'
34
+ },
35
+ children: /*#__PURE__*/_jsx(Container, {
36
+ inert: mode !== 'normal',
37
+ style: {
38
+ ...style,
39
+ /**
40
+ * The visibility of the nested view is controlled by `Activity`
41
+ * It'll be overridden to `display: 'none'` when `mode="hidden"` regardless of what we set
42
+ * So we set the visibility on another view instead
43
+ */
44
+ display
45
+ },
46
+ children: children
47
+ })
48
+ })
49
+ });
50
+ }
51
+ const STYLE = {
52
+ display: {
53
+ /**
54
+ * React `Activity` sets `display: 'none'` when `mode="hidden"` to unmount effects
55
+ * But we want to keep the content visible, so we switch it to `display: 'contents'`
56
+ */
57
+ process: () => 'contents'
58
+ }
59
+ };
60
+ const VIEW_CONFIG = {
61
+ uiViewClassName: 'RCTView',
62
+ validAttributes: {
63
+ style: STYLE
64
+ }
65
+ };
66
+ const ActivityContentView = NativeComponentRegistry.get('ReactNavigationActivityContentView', () => VIEW_CONFIG);
67
+ //# sourceMappingURL=ActivityView.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Activity","useEffect","useState","NativeComponentRegistry","Container","jsx","_jsx","ActivityView","mode","visible","delay","style","children","delayedMode","setDelayedMode","timer","setTimeout","clearTimeout","display","activityMode","ActivityContentView","inert","STYLE","process","VIEW_CONFIG","uiViewClassName","validAttributes","get"],"sourceRoot":"../../src","sources":["ActivityView.native.tsx"],"mappings":";;AAAA,SAASA,QAAQ,EAAEC,SAAS,EAAEC,QAAQ,QAAQ,OAAO;AACrD,SAEEC,uBAAuB,QAElB,cAAc;;AAErB;;AAEA,SAASC,SAAS,QAAQ,gBAAa;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAExC,OAAO,SAASC,YAAYA,CAAC;EAC3BC,IAAI;EACJC,OAAO;EACPC,KAAK,GAAG,GAAG;EACXC,KAAK;EACLC;AACK,CAAC,EAAE;EACR,MAAM,CAACC,WAAW,EAAEC,cAAc,CAAC,GAAGZ,QAAQ,CAACM,IAAI,CAAC;EAEpDP,SAAS,CAAC,MAAM;IACd,IAAI,CAACS,KAAK,EAAE;MACV;IACF;IAEA,MAAMK,KAAK,GAAGC,UAAU,CAAC,MAAM;MAC7BF,cAAc,CAACN,IAAI,CAAC;IACtB,CAAC,EAAEE,KAAK,CAAC;IAET,OAAO,MAAMO,YAAY,CAACF,KAAK,CAAC;EAClC,CAAC,EAAE,CAACL,KAAK,EAAEF,IAAI,CAAC,CAAC;EAEjB,MAAMU,OAAO,GAAGT,OAAO,GAAG,MAAM,GAAG,MAAM;EACzC,MAAMU,YAAY,GAChBX,IAAI,KAAK,QAAQ,IAAKE,KAAK,IAAIG,WAAW,KAAK,QAAS,GACpD,SAAS,GACT,QAAQ;EAEd,oBACEP,IAAA,CAACN,QAAQ;IAACQ,IAAI,EAAEW,YAAa;IAAAP,QAAA,eAC3BN,IAAA,CAACc,mBAAmB;MAACT,KAAK,EAAE;QAAEO,OAAO,EAAE;MAAW,CAAE;MAAAN,QAAA,eAClDN,IAAA,CAACF,SAAS;QACRiB,KAAK,EAAEb,IAAI,KAAK,QAAS;QACzBG,KAAK,EAAE;UACL,GAAGA,KAAK;UACR;AACZ;AACA;AACA;AACA;UACYO;QACF,CAAE;QAAAN,QAAA,EAEDA;MAAQ,CACA;IAAC,CACO;EAAC,CACd,CAAC;AAEf;AAEA,MAAMU,KAA8D,GAAG;EACrEJ,OAAO,EAAE;IACP;AACJ;AACA;AACA;IACIK,OAAO,EAAEA,CAAA,KAAM;EACjB;AACF,CAAC;AAED,MAAMC,WAAW,GAAG;EAClBC,eAAe,EAAE,SAAS;EAC1BC,eAAe,EAAE;IACff,KAAK,EAAEW;EACT;AACF,CAAC;AAUD,MAAMF,mBAA4D,GAChEjB,uBAAuB,CAACwB,GAAG,CACzB,oCAAoC,EACpC,MAAMH,WACR,CAAC","ignoreList":[]}
@@ -23,18 +23,19 @@ export function Badge({
23
23
  if (!rendered) {
24
24
  return;
25
25
  }
26
- Animated.timing(opacity, {
26
+ const animation = Animated.timing(opacity, {
27
27
  toValue: visible ? 1 : 0,
28
28
  duration: 150,
29
29
  useNativeDriver
30
- }).start(({
30
+ });
31
+ animation.start(({
31
32
  finished
32
33
  }) => {
33
34
  if (finished && !visible) {
34
35
  setRendered(false);
35
36
  }
36
37
  });
37
- return () => opacity.stopAnimation();
38
+ return () => animation.stop();
38
39
  }, [opacity, rendered, visible]);
39
40
  if (!rendered) {
40
41
  if (visible) {
@@ -49,7 +50,7 @@ export function Badge({
49
50
  backgroundColor = colors.notification,
50
51
  ...restStyle
51
52
  } = StyleSheet.flatten(style) || {};
52
- const textColor = Color(backgroundColor)?.isLight() ? 'black' : 'white';
53
+ const textColor = Color.foreground(backgroundColor);
53
54
  const borderRadius = size / 2;
54
55
  const fontSize = Math.floor(size * 3 / 4);
55
56
  return /*#__PURE__*/_jsx(Animated.Text, {
@@ -1 +1 @@
1
- {"version":3,"names":["useTheme","React","Animated","Platform","StyleSheet","Color","jsx","_jsx","useNativeDriver","OS","Badge","children","style","visible","size","rest","opacity","useState","Value","rendered","setRendered","colors","fonts","useEffect","timing","toValue","duration","start","finished","stopAnimation","backgroundColor","notification","restStyle","flatten","textColor","isLight","borderRadius","fontSize","Math","floor","Text","numberOfLines","transform","scale","interpolate","inputRange","outputRange","color","lineHeight","height","minWidth","borderCurve","regular","styles","container","create","alignSelf","textAlign","paddingHorizontal","overflow"],"sourceRoot":"../../src","sources":["Badge.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useTheme","React","Animated","Platform","StyleSheet","Color","jsx","_jsx","useNativeDriver","OS","Badge","children","style","visible","size","rest","opacity","useState","Value","rendered","setRendered","colors","fonts","useEffect","animation","timing","toValue","duration","start","finished","stop","backgroundColor","notification","restStyle","flatten","textColor","foreground","borderRadius","fontSize","Math","floor","Text","numberOfLines","transform","scale","interpolate","inputRange","outputRange","color","lineHeight","height","minWidth","borderCurve","regular","styles","container","create","alignSelf","textAlign","paddingHorizontal","overflow"],"sourceRoot":"../../src","sources":["Badge.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,13 +1,14 @@
1
1
  "use strict";
2
2
 
3
- import { useLinkProps, useTheme } from '@react-navigation/native';
3
+ import { MaterialSymbol, SFSymbol, useLinkProps, useTheme } from '@react-navigation/native';
4
4
  import * as React from 'react';
5
- import { Platform, StyleSheet } from 'react-native';
5
+ import { Image, Platform, StyleSheet, View } from 'react-native';
6
6
  import { Color } from "./Color.js";
7
7
  import { PlatformPressable } from "./PlatformPressable.js";
8
8
  import { Text } from "./Text.js";
9
- import { jsx as _jsx } from "react/jsx-runtime";
9
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
10
10
  const BUTTON_RADIUS = 40;
11
+ const ICON_SIZE = 14;
11
12
  export function Button(props) {
12
13
  if ('screen' in props || 'action' in props) {
13
14
  // @ts-expect-error: This is already type-checked by the prop types
@@ -25,6 +26,7 @@ function ButtonLink({
25
26
  params,
26
27
  action,
27
28
  href,
29
+ onPress,
28
30
  ...rest
29
31
  }) {
30
32
  // @ts-expect-error: This is already type-checked by the prop types
@@ -36,13 +38,19 @@ function ButtonLink({
36
38
  });
37
39
  return /*#__PURE__*/_jsx(ButtonBase, {
38
40
  ...rest,
39
- ...props
41
+ ...props,
42
+ onPress: e => {
43
+ onPress?.(e);
44
+ props.onPress?.(e);
45
+ }
40
46
  });
41
47
  }
42
48
  function ButtonBase({
43
49
  variant = 'tinted',
44
50
  color: customColor,
51
+ icon,
45
52
  android_ripple,
53
+ disabled,
46
54
  style,
47
55
  children,
48
56
  ...rest
@@ -66,14 +74,23 @@ function ButtonBase({
66
74
  break;
67
75
  case 'filled':
68
76
  backgroundColor = color;
69
- textColor = Color(color)?.isDark() ? 'white' : Color(color)?.darken(0.71).string() ?? '#fff';
77
+ textColor = Color.foreground(backgroundColor);
70
78
  break;
71
79
  }
80
+ if (disabled) {
81
+ textColor = dark ? 'rgba(235, 235, 245, 0.3)' : 'rgba(60, 60, 67, 0.3)';
82
+ if (variant !== 'plain') {
83
+ backgroundColor = dark ? 'rgba(118, 118, 128, 0.24)' : 'rgba(118, 118, 128, 0.12)';
84
+ }
85
+ }
86
+ const rippleColor = Color(textColor)?.fade(0.88).string() ?? (variant === 'filled' || dark ? 'rgba(255, 255, 255, 0.12)' : 'rgba(0, 0, 0, 0.12)');
87
+ const iconNode = renderIcon(icon, textColor, ICON_SIZE);
72
88
  return /*#__PURE__*/_jsx(PlatformPressable, {
73
89
  ...rest,
90
+ disabled: disabled,
74
91
  android_ripple: {
75
- radius: BUTTON_RADIUS,
76
- color: Color(textColor)?.fade(0.85).string() ?? 'rgba(0, 0, 0, 0.1)',
92
+ foreground: true,
93
+ color: rippleColor,
77
94
  ...android_ripple
78
95
  },
79
96
  pressOpacity: Platform.OS === 'ios' ? undefined : 1,
@@ -83,20 +100,81 @@ function ButtonBase({
83
100
  style: [{
84
101
  backgroundColor
85
102
  }, styles.button, style],
86
- children: /*#__PURE__*/_jsx(Text, {
87
- style: [{
88
- color: textColor
89
- }, fonts.regular, styles.text],
90
- children: children
103
+ children: /*#__PURE__*/_jsxs(View, {
104
+ style: styles.content,
105
+ children: [iconNode && /*#__PURE__*/_jsx(View, {
106
+ style: styles.icon,
107
+ children: iconNode
108
+ }), /*#__PURE__*/_jsx(Text, {
109
+ style: [{
110
+ color: textColor
111
+ }, fonts.regular, styles.text],
112
+ children: children
113
+ })]
91
114
  })
92
115
  });
93
116
  }
117
+ function renderIcon(icon, color, size) {
118
+ if (!icon) {
119
+ return null;
120
+ }
121
+ const iconValue = typeof icon === 'function' ? icon({
122
+ color,
123
+ size
124
+ }) : icon;
125
+ if (/*#__PURE__*/React.isValidElement(iconValue)) {
126
+ return iconValue;
127
+ }
128
+ if (typeof iconValue === 'object' && iconValue != null && 'type' in iconValue) {
129
+ switch (iconValue.type) {
130
+ case 'image':
131
+ return /*#__PURE__*/_jsx(Image, {
132
+ source: iconValue.source,
133
+ style: {
134
+ width: size,
135
+ height: size,
136
+ tintColor: iconValue.tinted === false ? undefined : color
137
+ }
138
+ });
139
+ case 'sfSymbol':
140
+ return /*#__PURE__*/_jsx(SFSymbol, {
141
+ name: iconValue.name,
142
+ size: size,
143
+ color: color
144
+ });
145
+ case 'materialSymbol':
146
+ return /*#__PURE__*/_jsx(MaterialSymbol, {
147
+ name: iconValue.name,
148
+ variant: iconValue.variant,
149
+ weight: iconValue.weight,
150
+ size: size,
151
+ color: color
152
+ });
153
+ default:
154
+ {
155
+ const _exhaustiveCheck = iconValue;
156
+ return _exhaustiveCheck;
157
+ }
158
+ }
159
+ }
160
+ return null;
161
+ }
94
162
  const styles = StyleSheet.create({
95
163
  button: {
96
164
  paddingHorizontal: 24,
97
165
  paddingVertical: 10,
98
166
  borderRadius: BUTTON_RADIUS,
99
- borderCurve: 'continuous'
167
+ borderCurve: 'continuous',
168
+ overflow: 'hidden'
169
+ },
170
+ content: {
171
+ flexDirection: 'row',
172
+ alignItems: 'center',
173
+ justifyContent: 'center',
174
+ gap: 8
175
+ },
176
+ icon: {
177
+ marginLeft: -6
100
178
  },
101
179
  text: {
102
180
  fontSize: 14,
@@ -1 +1 @@
1
- {"version":3,"names":["useLinkProps","useTheme","React","Platform","StyleSheet","Color","PlatformPressable","Text","jsx","_jsx","BUTTON_RADIUS","Button","props","ButtonLink","ButtonBase","screen","params","action","href","rest","variant","color","customColor","android_ripple","style","children","dark","colors","fonts","primary","backgroundColor","textColor","fade","string","isDark","darken","radius","pressOpacity","OS","undefined","hoverEffect","styles","button","regular","text","create","paddingHorizontal","paddingVertical","borderRadius","borderCurve","fontSize","lineHeight","letterSpacing","textAlign"],"sourceRoot":"../../src","sources":["Button.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["MaterialSymbol","SFSymbol","useLinkProps","useTheme","React","Image","Platform","StyleSheet","View","Color","PlatformPressable","Text","jsx","_jsx","jsxs","_jsxs","BUTTON_RADIUS","ICON_SIZE","Button","props","ButtonLink","ButtonBase","screen","params","action","href","onPress","rest","e","variant","color","customColor","icon","android_ripple","disabled","style","children","dark","colors","fonts","primary","backgroundColor","textColor","fade","string","foreground","rippleColor","iconNode","renderIcon","pressOpacity","OS","undefined","hoverEffect","styles","button","content","regular","text","size","iconValue","isValidElement","type","source","width","height","tintColor","tinted","name","weight","_exhaustiveCheck","create","paddingHorizontal","paddingVertical","borderRadius","borderCurve","overflow","flexDirection","alignItems","justifyContent","gap","marginLeft","fontSize","lineHeight","letterSpacing","textAlign"],"sourceRoot":"../../src","sources":["Button.tsx"],"mappings":"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","ignoreList":[]}