@react-navigation/elements 3.0.0-alpha.4 → 3.0.0-alpha.40

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 (212) 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/BlurEffectBackground.js +3 -3
  8. package/lib/module/BlurEffectBackground.js.map +1 -1
  9. package/lib/module/Button.js +96 -14
  10. package/lib/module/Button.js.map +1 -1
  11. package/lib/module/Color.js +565 -4
  12. package/lib/module/Color.js.map +1 -1
  13. package/lib/module/Container.js +11 -1
  14. package/lib/module/Container.js.map +1 -1
  15. package/lib/module/Header/Header.js +29 -17
  16. package/lib/module/Header/Header.js.map +1 -1
  17. package/lib/module/Header/HeaderBackButton.js +27 -13
  18. package/lib/module/Header/HeaderBackButton.js.map +1 -1
  19. package/lib/module/Header/HeaderButton.js +4 -5
  20. package/lib/module/Header/HeaderButton.js.map +1 -1
  21. package/lib/module/Header/HeaderButtonBackground.js +1 -2
  22. package/lib/module/Header/HeaderButtonBackground.js.map +1 -1
  23. package/lib/module/Header/HeaderIcon.js +14 -17
  24. package/lib/module/Header/HeaderIcon.js.map +1 -1
  25. package/lib/module/Header/HeaderSearchBar.js +35 -25
  26. package/lib/module/Header/HeaderSearchBar.js.map +1 -1
  27. package/lib/module/Header/getHeaderTitle.js.map +1 -1
  28. package/lib/module/Header/useHeaderHeight.js +1 -1
  29. package/lib/module/Header/useHeaderHeight.js.map +1 -1
  30. package/lib/module/Label/getLabel.js.map +1 -1
  31. package/lib/module/LiquidGlassView.ios.js +1 -2
  32. package/lib/module/LiquidGlassView.ios.js.map +1 -1
  33. package/lib/module/LiquidGlassView.js +0 -4
  34. package/lib/module/LiquidGlassView.js.map +1 -1
  35. package/lib/module/PlatformColor.js +1 -0
  36. package/lib/module/PlatformColor.js.map +1 -1
  37. package/lib/module/PlatformColor.native.js +1 -1
  38. package/lib/module/PlatformColor.native.js.map +1 -1
  39. package/lib/module/PlatformIcon.js +46 -0
  40. package/lib/module/PlatformIcon.js.map +1 -0
  41. package/lib/module/PlatformPressable.js +56 -14
  42. package/lib/module/PlatformPressable.js.map +1 -1
  43. package/lib/module/SafeAreaProviderCompat.js +1 -1
  44. package/lib/module/SafeAreaProviderCompat.js.map +1 -1
  45. package/lib/module/Screen.js +31 -18
  46. package/lib/module/Screen.js.map +1 -1
  47. package/lib/module/index.js +2 -7
  48. package/lib/module/index.js.map +1 -1
  49. package/lib/module/internal.js +1 -1
  50. package/lib/module/internal.js.map +1 -1
  51. package/lib/module/useFrameSize.js +6 -2
  52. package/lib/module/useFrameSize.js.map +1 -1
  53. package/lib/typescript/src/ActivityView.d.ts +31 -0
  54. package/lib/typescript/src/ActivityView.d.ts.map +1 -0
  55. package/lib/typescript/src/ActivityView.native.d.ts +3 -0
  56. package/lib/typescript/src/ActivityView.native.d.ts.map +1 -0
  57. package/lib/typescript/src/Badge.d.ts +6 -5
  58. package/lib/typescript/src/Badge.d.ts.map +1 -1
  59. package/lib/typescript/src/BlurEffectBackground.d.ts +2 -2
  60. package/lib/typescript/src/BlurEffectBackground.d.ts.map +1 -1
  61. package/lib/typescript/src/Button.d.ts +54 -6
  62. package/lib/typescript/src/Button.d.ts.map +1 -1
  63. package/lib/typescript/src/Color.d.ts +4 -4
  64. package/lib/typescript/src/Color.d.ts.map +1 -1
  65. package/lib/typescript/src/Container.d.ts +7 -4
  66. package/lib/typescript/src/Container.d.ts.map +1 -1
  67. package/lib/typescript/src/Header/Header.d.ts +5 -4
  68. package/lib/typescript/src/Header/Header.d.ts.map +1 -1
  69. package/lib/typescript/src/Header/HeaderBackButton.d.ts +3 -2
  70. package/lib/typescript/src/Header/HeaderBackButton.d.ts.map +1 -1
  71. package/lib/typescript/src/Header/HeaderBackground.d.ts +5 -5
  72. package/lib/typescript/src/Header/HeaderBackground.d.ts.map +1 -1
  73. package/lib/typescript/src/Header/HeaderButton.d.ts +7 -2
  74. package/lib/typescript/src/Header/HeaderButton.d.ts.map +1 -1
  75. package/lib/typescript/src/Header/HeaderButtonBackground.d.ts +1 -1
  76. package/lib/typescript/src/Header/HeaderButtonBackground.d.ts.map +1 -1
  77. package/lib/typescript/src/Header/HeaderIcon.d.ts +9 -4
  78. package/lib/typescript/src/Header/HeaderIcon.d.ts.map +1 -1
  79. package/lib/typescript/src/Header/HeaderSearchBar.d.ts +10 -7
  80. package/lib/typescript/src/Header/HeaderSearchBar.d.ts.map +1 -1
  81. package/lib/typescript/src/Header/HeaderTitle.d.ts +4 -4
  82. package/lib/typescript/src/Header/HeaderTitle.d.ts.map +1 -1
  83. package/lib/typescript/src/Header/getHeaderTitle.d.ts +2 -2
  84. package/lib/typescript/src/Header/getHeaderTitle.d.ts.map +1 -1
  85. package/lib/typescript/src/Label/Label.d.ts +1 -1
  86. package/lib/typescript/src/Label/Label.d.ts.map +1 -1
  87. package/lib/typescript/src/Label/getLabel.d.ts +2 -2
  88. package/lib/typescript/src/Label/getLabel.d.ts.map +1 -1
  89. package/lib/typescript/src/LiquidGlassView.d.ts +7 -5
  90. package/lib/typescript/src/LiquidGlassView.d.ts.map +1 -1
  91. package/lib/typescript/src/LiquidGlassView.ios.d.ts +4 -2
  92. package/lib/typescript/src/LiquidGlassView.ios.d.ts.map +1 -1
  93. package/lib/typescript/src/MissingIcon.d.ts +1 -1
  94. package/lib/typescript/src/MissingIcon.d.ts.map +1 -1
  95. package/lib/typescript/src/PlatformColor.d.ts +1 -0
  96. package/lib/typescript/src/PlatformColor.d.ts.map +1 -1
  97. package/lib/typescript/src/PlatformColor.native.d.ts +1 -1
  98. package/lib/typescript/src/PlatformColor.native.d.ts.map +1 -1
  99. package/lib/typescript/src/PlatformIcon.d.ts +10 -0
  100. package/lib/typescript/src/PlatformIcon.d.ts.map +1 -0
  101. package/lib/typescript/src/PlatformPressable.d.ts +12 -15
  102. package/lib/typescript/src/PlatformPressable.d.ts.map +1 -1
  103. package/lib/typescript/src/SafeAreaProviderCompat.d.ts +1 -1
  104. package/lib/typescript/src/SafeAreaProviderCompat.d.ts.map +1 -1
  105. package/lib/typescript/src/Screen.d.ts +7 -7
  106. package/lib/typescript/src/Screen.d.ts.map +1 -1
  107. package/lib/typescript/src/Text.d.ts +1 -1
  108. package/lib/typescript/src/Text.d.ts.map +1 -1
  109. package/lib/typescript/src/index.d.ts +21 -21
  110. package/lib/typescript/src/index.d.ts.map +1 -1
  111. package/lib/typescript/src/internal.d.ts +6 -6
  112. package/lib/typescript/src/internal.d.ts.map +1 -1
  113. package/lib/typescript/src/types.d.ts +120 -70
  114. package/lib/typescript/src/types.d.ts.map +1 -1
  115. package/lib/typescript/src/useFrameSize.d.ts +1 -1
  116. package/lib/typescript/src/useFrameSize.d.ts.map +1 -1
  117. package/package.json +23 -22
  118. package/src/ActivityView.native.tsx +90 -0
  119. package/src/ActivityView.tsx +129 -0
  120. package/src/Badge.tsx +10 -8
  121. package/src/BlurEffectBackground.tsx +3 -3
  122. package/src/Button.tsx +173 -28
  123. package/src/Color.tsx +755 -8
  124. package/src/Container.tsx +20 -4
  125. package/src/Header/Header.tsx +46 -26
  126. package/src/Header/HeaderBackButton.tsx +31 -17
  127. package/src/Header/HeaderBackground.tsx +3 -3
  128. package/src/Header/HeaderButton.tsx +16 -18
  129. package/src/Header/HeaderButtonBackground.tsx +1 -4
  130. package/src/Header/HeaderIcon.tsx +27 -13
  131. package/src/Header/HeaderSearchBar.tsx +52 -44
  132. package/src/Header/HeaderTitle.tsx +3 -3
  133. package/src/Header/getHeaderTitle.tsx +4 -1
  134. package/src/Header/useHeaderHeight.tsx +1 -1
  135. package/src/Label/getLabel.tsx +1 -1
  136. package/src/LiquidGlassView.ios.tsx +14 -9
  137. package/src/LiquidGlassView.tsx +15 -11
  138. package/src/PlatformColor.native.tsx +1 -1
  139. package/src/PlatformColor.tsx +4 -0
  140. package/src/PlatformIcon.tsx +66 -0
  141. package/src/PlatformPressable.tsx +99 -41
  142. package/src/SafeAreaProviderCompat.tsx +1 -1
  143. package/src/Screen.tsx +40 -27
  144. package/src/index.tsx +2 -16
  145. package/src/internal.tsx +1 -1
  146. package/src/types.tsx +153 -76
  147. package/src/useFrameSize.tsx +9 -2
  148. package/lib/module/Lazy.js +0 -42
  149. package/lib/module/Lazy.js.map +0 -1
  150. package/lib/module/assets/back-icon.ios.svg +0 -4
  151. package/lib/module/assets/back-icon@1x.android.png +0 -0
  152. package/lib/module/assets/back-icon@1x.ios.png +0 -0
  153. package/lib/module/assets/back-icon@2x.android.png +0 -0
  154. package/lib/module/assets/back-icon@2x.ios.png +0 -0
  155. package/lib/module/assets/back-icon@3x.android.png +0 -0
  156. package/lib/module/assets/back-icon@3x.ios.png +0 -0
  157. package/lib/module/assets/back-icon@4x.android.png +0 -0
  158. package/lib/module/assets/back-icon@4x.ios.png +0 -0
  159. package/lib/module/assets/clear-icon@1x.png +0 -0
  160. package/lib/module/assets/clear-icon@2x.png +0 -0
  161. package/lib/module/assets/clear-icon@3x.png +0 -0
  162. package/lib/module/assets/clear-icon@4x.png +0 -0
  163. package/lib/module/assets/close-icon@1x.png +0 -0
  164. package/lib/module/assets/close-icon@2x.png +0 -0
  165. package/lib/module/assets/close-icon@3x.png +0 -0
  166. package/lib/module/assets/close-icon@4x.png +0 -0
  167. package/lib/module/assets/search-icon-legacy@1x.ios.png +0 -0
  168. package/lib/module/assets/search-icon-legacy@2x.ios.png +0 -0
  169. package/lib/module/assets/search-icon-legacy@3x.ios.png +0 -0
  170. package/lib/module/assets/search-icon-legacy@4x.ios.png +0 -0
  171. package/lib/module/assets/search-icon.ios.svg +0 -4
  172. package/lib/module/assets/search-icon@1x.android.png +0 -0
  173. package/lib/module/assets/search-icon@1x.ios.png +0 -0
  174. package/lib/module/assets/search-icon@2x.android.png +0 -0
  175. package/lib/module/assets/search-icon@2x.ios.png +0 -0
  176. package/lib/module/assets/search-icon@3x.android.png +0 -0
  177. package/lib/module/assets/search-icon@3x.ios.png +0 -0
  178. package/lib/module/assets/search-icon@4x.android.png +0 -0
  179. package/lib/module/assets/search-icon@4x.ios.png +0 -0
  180. package/lib/typescript/src/Lazy.d.ts +0 -31
  181. package/lib/typescript/src/Lazy.d.ts.map +0 -1
  182. package/src/Lazy.tsx +0 -59
  183. package/src/assets/back-icon.ios.svg +0 -4
  184. package/src/assets/back-icon@1x.android.png +0 -0
  185. package/src/assets/back-icon@1x.ios.png +0 -0
  186. package/src/assets/back-icon@2x.android.png +0 -0
  187. package/src/assets/back-icon@2x.ios.png +0 -0
  188. package/src/assets/back-icon@3x.android.png +0 -0
  189. package/src/assets/back-icon@3x.ios.png +0 -0
  190. package/src/assets/back-icon@4x.android.png +0 -0
  191. package/src/assets/back-icon@4x.ios.png +0 -0
  192. package/src/assets/clear-icon@1x.png +0 -0
  193. package/src/assets/clear-icon@2x.png +0 -0
  194. package/src/assets/clear-icon@3x.png +0 -0
  195. package/src/assets/clear-icon@4x.png +0 -0
  196. package/src/assets/close-icon@1x.png +0 -0
  197. package/src/assets/close-icon@2x.png +0 -0
  198. package/src/assets/close-icon@3x.png +0 -0
  199. package/src/assets/close-icon@4x.png +0 -0
  200. package/src/assets/search-icon-legacy@1x.ios.png +0 -0
  201. package/src/assets/search-icon-legacy@2x.ios.png +0 -0
  202. package/src/assets/search-icon-legacy@3x.ios.png +0 -0
  203. package/src/assets/search-icon-legacy@4x.ios.png +0 -0
  204. package/src/assets/search-icon.ios.svg +0 -4
  205. package/src/assets/search-icon@1x.android.png +0 -0
  206. package/src/assets/search-icon@1x.ios.png +0 -0
  207. package/src/assets/search-icon@2x.android.png +0 -0
  208. package/src/assets/search-icon@2x.ios.png +0 -0
  209. package/src/assets/search-icon@3x.android.png +0 -0
  210. package/src/assets/search-icon@3x.ios.png +0 -0
  211. package/src/assets/search-icon@4x.android.png +0 -0
  212. 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":[]}
@@ -15,15 +15,15 @@ export function BlurEffectBackground({
15
15
  children,
16
16
  ...rest
17
17
  }) {
18
- let containerStyle, blurStyle, blurBackground, colorBackground;
18
+ let blurStyle;
19
+ let containerStyle, blurBackground, colorBackground;
19
20
  if (Platform.OS === 'web' && blurEffect && blurEffect !== 'none') {
20
21
  const blurBackgroundColor = getBlurBackgroundColor(blurEffect);
21
22
  if (blurBackgroundColor) {
22
23
  const backdropFilter = `saturate(180%) blur(30px)`;
23
24
  blurStyle = {
24
- // @ts-expect-error backdropFilter is web-only
25
25
  backdropFilter,
26
- webkitBackdropFilter: backdropFilter
26
+ WebkitBackdropFilter: backdropFilter
27
27
  };
28
28
  blurBackground = /*#__PURE__*/_jsx("div", {
29
29
  style: {
@@ -1 +1 @@
1
- {"version":3,"names":["React","Animated","Platform","StyleSheet","View","getBlurBackgroundColor","jsx","_jsx","jsxs","_jsxs","BlurEffectBackground","blurEffect","style","children","rest","containerStyle","blurStyle","blurBackground","colorBackground","OS","blurBackgroundColor","backdropFilter","webkitBackdropFilter","position","left","right","top","bottom","zIndex","backgroundColor","flattenedStyle","flatten","absoluteFill"],"sourceRoot":"../../src","sources":["BlurEffectBackground.tsx"],"mappings":";;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SACEC,QAAQ,EACRC,QAAQ,EAERC,UAAU,EACVC,IAAI,QAGC,cAAc;AAErB,SAEEC,sBAAsB,QACjB,6BAA0B;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAQlC;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,oBAAoBA,CAAC;EACnCC,UAAU;EACVC,KAAK;EACLC,QAAQ;EACR,GAAGC;AACE,CAAC,EAAE;EACR,IAAIC,cAAc,EAAEC,SAAS,EAAEC,cAAc,EAAEC,eAAe;EAE9D,IAAIhB,QAAQ,CAACiB,EAAE,KAAK,KAAK,IAAIR,UAAU,IAAIA,UAAU,KAAK,MAAM,EAAE;IAChE,MAAMS,mBAAmB,GAAGf,sBAAsB,CAACM,UAAU,CAAC;IAE9D,IAAIS,mBAAmB,EAAE;MACvB,MAAMC,cAAc,GAAG,2BAA2B;MAElDL,SAAS,GAAG;QACV;QACAK,cAAc;QACdC,oBAAoB,EAAED;MACxB,CAAC;MAEDJ,cAAc,gBACZV,IAAA;QACEK,KAAK,EAAE;UACLW,QAAQ,EAAE,UAAU;UACpBC,IAAI,EAAE,CAAC;UACPC,KAAK,EAAE,CAAC;UACRC,GAAG,EAAE,CAAC;UACNC,MAAM,EAAE,CAAC;UACTC,MAAM,EAAE,CAAC,CAAC;UACVC,eAAe,EAAET;QACnB;MAAE,CACH,CACF;MAED,MAAMU,cAAc,GAAG3B,UAAU,CAAC4B,OAAO,CAACnB,KAAK,CAAC,IAAI,CAAC,CAAC;MAEtDG,cAAc,GAAG,CAACe,cAAc,EAAE;QAAED,eAAe,EAAE;MAAc,CAAC,CAAC;MACrEX,eAAe,GACb,iBAAiB,IAAIY,cAAc,IACnCA,cAAc,CAACD,eAAe,KAAK,aAAa,gBAC9CtB,IAAA,CAACN,QAAQ,CAACG,IAAI;QACZQ,KAAK,EAAE,CACLT,UAAU,CAAC6B,YAAY,EACvB;UACEJ,MAAM,EAAE,CAAC,CAAC;UACVC,eAAe,EAAEC,cAAc,CAACD;QAClC,CAAC;MACD,CACH,CAAC,GACA,IAAI;IACZ;EACF,CAAC,MAAM;IACLd,cAAc,GAAGH,KAAK;EACxB;EAEA,oBACEH,KAAA,CAACL,IAAI;IAACQ,KAAK,EAAE,CAACI,SAAS,EAAED,cAAc,CAAE;IAAA,GAAKD,IAAI;IAAAD,QAAA,GAC/CI,cAAc,EACdC,eAAe,EACfL,QAAQ;EAAA,CACL,CAAC;AAEX","ignoreList":[]}
1
+ {"version":3,"names":["React","Animated","Platform","StyleSheet","View","getBlurBackgroundColor","jsx","_jsx","jsxs","_jsxs","BlurEffectBackground","blurEffect","style","children","rest","blurStyle","containerStyle","blurBackground","colorBackground","OS","blurBackgroundColor","backdropFilter","WebkitBackdropFilter","position","left","right","top","bottom","zIndex","backgroundColor","flattenedStyle","flatten","absoluteFill"],"sourceRoot":"../../src","sources":["BlurEffectBackground.tsx"],"mappings":";;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SACEC,QAAQ,EACRC,QAAQ,EAERC,UAAU,EACVC,IAAI,QAGC,cAAc;AAErB,SAEEC,sBAAsB,QACjB,6BAA0B;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAQlC;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,oBAAoBA,CAAC;EACnCC,UAAU;EACVC,KAAK;EACLC,QAAQ;EACR,GAAGC;AACE,CAAC,EAAE;EACR,IAAIC,SAAwD;EAC5D,IAAIC,cAAc,EAAEC,cAAc,EAAEC,eAAe;EAEnD,IAAIhB,QAAQ,CAACiB,EAAE,KAAK,KAAK,IAAIR,UAAU,IAAIA,UAAU,KAAK,MAAM,EAAE;IAChE,MAAMS,mBAAmB,GAAGf,sBAAsB,CAACM,UAAU,CAAC;IAE9D,IAAIS,mBAAmB,EAAE;MACvB,MAAMC,cAAc,GAAG,2BAA2B;MAElDN,SAAS,GAAG;QACVM,cAAc;QACdC,oBAAoB,EAAED;MACxB,CAAC;MAEDJ,cAAc,gBACZV,IAAA;QACEK,KAAK,EAAE;UACLW,QAAQ,EAAE,UAAU;UACpBC,IAAI,EAAE,CAAC;UACPC,KAAK,EAAE,CAAC;UACRC,GAAG,EAAE,CAAC;UACNC,MAAM,EAAE,CAAC;UACTC,MAAM,EAAE,CAAC,CAAC;UACVC,eAAe,EAAET;QACnB;MAAE,CACH,CACF;MAED,MAAMU,cAAc,GAAG3B,UAAU,CAAC4B,OAAO,CAACnB,KAAK,CAAC,IAAI,CAAC,CAAC;MAEtDI,cAAc,GAAG,CAACc,cAAc,EAAE;QAAED,eAAe,EAAE;MAAc,CAAC,CAAC;MACrEX,eAAe,GACb,iBAAiB,IAAIY,cAAc,IACnCA,cAAc,CAACD,eAAe,KAAK,aAAa,gBAC9CtB,IAAA,CAACN,QAAQ,CAACG,IAAI;QACZQ,KAAK,EAAE,CACLT,UAAU,CAAC6B,YAAY,EACvB;UACEJ,MAAM,EAAE,CAAC,CAAC;UACVC,eAAe,EAAEC,cAAc,CAACD;QAClC,CAAC;MACD,CACH,CAAC,GACA,IAAI;IACZ;EACF,CAAC,MAAM;IACLb,cAAc,GAAGJ,KAAK;EACxB;EAEA,oBACEH,KAAA,CAACL,IAAI;IAACQ,KAAK,EAAE,CAACG,SAAS,EAAEC,cAAc,CAAE;IAAA,GAAKF,IAAI;IAAAD,QAAA,GAC/CI,cAAc,EACdC,eAAe,EACfL,QAAQ;EAAA,CACL,CAAC;AAEX","ignoreList":[]}
@@ -2,15 +2,32 @@
2
2
 
3
3
  import { useLinkProps, useTheme } from '@react-navigation/native';
4
4
  import * as React from 'react';
5
- import { Platform, StyleSheet } from 'react-native';
5
+ import { ActivityIndicator, Platform, StyleSheet, View } from 'react-native';
6
6
  import { Color } from "./Color.js";
7
+ import { PlatformIcon } from "./PlatformIcon.js";
7
8
  import { PlatformPressable } from "./PlatformPressable.js";
8
9
  import { Text } from "./Text.js";
9
- import { jsx as _jsx } from "react/jsx-runtime";
10
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
10
11
  const BUTTON_RADIUS = 40;
12
+ const ICON_SIZE = 14;
13
+
14
+ /**
15
+ * Component to render a button that navigates to a screen using a path.
16
+ * Uses an anchor tag on the web.
17
+ *
18
+ * @param props.in Name of the current or parent screen whose navigator contains the target screen.
19
+ * @param props.screen Name of the screen to navigate to (e.g. `'Feeds'`).
20
+ * @param props.params Params to pass to the screen to navigate to (e.g. `{ sort: 'hot' }`).
21
+ * @param props.href Optional absolute path to use for the href (e.g. `/feeds/hot`).
22
+ * @param props.action Optional action to override the in-page navigation. The `href` is still derived from `screen`, so this can be used to render a link while dispatching a different action (e.g. a `replace`).
23
+ */
24
+
25
+ /**
26
+ * Component to render a button.
27
+ */
28
+
11
29
  export function Button(props) {
12
30
  if ('screen' in props || 'action' in props) {
13
- // @ts-expect-error: This is already type-checked by the prop types
14
31
  return /*#__PURE__*/_jsx(ButtonLink, {
15
32
  ...props
16
33
  });
@@ -21,28 +38,45 @@ export function Button(props) {
21
38
  }
22
39
  }
23
40
  function ButtonLink({
41
+ in: parent,
24
42
  screen,
25
43
  params,
26
44
  action,
27
45
  href,
46
+ onPress,
28
47
  ...rest
29
48
  }) {
30
- // @ts-expect-error: This is already type-checked by the prop types
49
+ // @ts-expect-error: destructuring loses the relationship between target props
31
50
  const props = useLinkProps({
51
+ in: parent,
32
52
  screen,
33
53
  params,
34
54
  action,
35
55
  href
36
56
  });
57
+ const [isPending, startTransition] = React.useTransition();
58
+
59
+ // Avoid flashing the loading indicator when the transition is fast
60
+ const isPendingDeferred = React.useDeferredValue(isPending);
37
61
  return /*#__PURE__*/_jsx(ButtonBase, {
38
62
  ...rest,
39
- ...props
63
+ ...props,
64
+ loading: typeof rest.loading === 'boolean' ? rest.loading : isPending && isPendingDeferred,
65
+ onPress: e => {
66
+ onPress?.(e);
67
+ startTransition(() => {
68
+ props.onPress(e);
69
+ });
70
+ }
40
71
  });
41
72
  }
42
73
  function ButtonBase({
43
74
  variant = 'tinted',
44
75
  color: customColor,
76
+ icon,
77
+ loading = false,
45
78
  android_ripple,
79
+ disabled,
46
80
  style,
47
81
  children,
48
82
  ...rest
@@ -66,14 +100,26 @@ function ButtonBase({
66
100
  break;
67
101
  case 'filled':
68
102
  backgroundColor = color;
69
- textColor = Color(color)?.isDark() ? 'white' : Color(color)?.darken(0.71).string() ?? '#fff';
103
+ textColor = Color.foreground(backgroundColor);
70
104
  break;
71
105
  }
106
+ if (disabled || loading) {
107
+ textColor = dark ? 'rgba(235, 235, 245, 0.3)' : 'rgba(60, 60, 67, 0.3)';
108
+ if (variant !== 'plain') {
109
+ backgroundColor = dark ? 'rgba(118, 118, 128, 0.24)' : 'rgba(118, 118, 128, 0.12)';
110
+ }
111
+ }
112
+ const rippleColor = Color(textColor)?.fade(0.88).string() ?? (variant === 'filled' || dark ? 'rgba(255, 255, 255, 0.12)' : 'rgba(0, 0, 0, 0.12)');
113
+ const iconNode = loading ? /*#__PURE__*/_jsx(ActivityIndicator, {
114
+ color: textColor,
115
+ size: ICON_SIZE
116
+ }) : renderIcon(icon, textColor, ICON_SIZE);
72
117
  return /*#__PURE__*/_jsx(PlatformPressable, {
73
118
  ...rest,
119
+ disabled: disabled || loading,
74
120
  android_ripple: {
75
- radius: BUTTON_RADIUS,
76
- color: Color(textColor)?.fade(0.85).string() ?? 'rgba(0, 0, 0, 0.1)',
121
+ foreground: true,
122
+ color: rippleColor,
77
123
  ...android_ripple
78
124
  },
79
125
  pressOpacity: Platform.OS === 'ios' ? undefined : 1,
@@ -83,20 +129,56 @@ function ButtonBase({
83
129
  style: [{
84
130
  backgroundColor
85
131
  }, styles.button, style],
86
- children: /*#__PURE__*/_jsx(Text, {
87
- style: [{
88
- color: textColor
89
- }, fonts.regular, styles.text],
90
- children: children
132
+ children: /*#__PURE__*/_jsxs(View, {
133
+ style: styles.content,
134
+ children: [iconNode && /*#__PURE__*/_jsx(View, {
135
+ style: styles.icon,
136
+ children: iconNode
137
+ }), /*#__PURE__*/_jsx(Text, {
138
+ style: [{
139
+ color: textColor
140
+ }, fonts.regular, styles.text],
141
+ children: children
142
+ })]
91
143
  })
92
144
  });
93
145
  }
146
+ function renderIcon(icon, color, size) {
147
+ if (!icon) {
148
+ return null;
149
+ }
150
+ const iconValue = typeof icon === 'function' ? icon({
151
+ color,
152
+ size
153
+ }) : icon;
154
+ if (/*#__PURE__*/React.isValidElement(iconValue)) {
155
+ return iconValue;
156
+ }
157
+ if (typeof iconValue === 'object' && iconValue != null && 'type' in iconValue) {
158
+ return /*#__PURE__*/_jsx(PlatformIcon, {
159
+ icon: iconValue,
160
+ size: size,
161
+ color: color
162
+ });
163
+ }
164
+ return null;
165
+ }
94
166
  const styles = StyleSheet.create({
95
167
  button: {
96
168
  paddingHorizontal: 24,
97
169
  paddingVertical: 10,
98
170
  borderRadius: BUTTON_RADIUS,
99
- borderCurve: 'continuous'
171
+ borderCurve: 'continuous',
172
+ overflow: 'hidden'
173
+ },
174
+ content: {
175
+ flexDirection: 'row',
176
+ alignItems: 'center',
177
+ justifyContent: 'center',
178
+ gap: 8
179
+ },
180
+ icon: {
181
+ marginLeft: -6
100
182
  },
101
183
  text: {
102
184
  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":["useLinkProps","useTheme","React","ActivityIndicator","Platform","StyleSheet","View","Color","PlatformIcon","PlatformPressable","Text","jsx","_jsx","jsxs","_jsxs","BUTTON_RADIUS","ICON_SIZE","Button","props","ButtonLink","ButtonBase","in","parent","screen","params","action","href","onPress","rest","isPending","startTransition","useTransition","isPendingDeferred","useDeferredValue","loading","e","variant","color","customColor","icon","android_ripple","disabled","style","children","dark","colors","fonts","primary","backgroundColor","textColor","fade","string","foreground","rippleColor","iconNode","size","renderIcon","pressOpacity","OS","undefined","hoverEffect","styles","button","content","regular","text","iconValue","isValidElement","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":[]}