@react-navigation/native 7.0.0-alpha.0 → 7.0.0-alpha.10

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 (238) hide show
  1. package/lib/commonjs/Link.js +16 -9
  2. package/lib/commonjs/Link.js.map +1 -1
  3. package/lib/commonjs/LinkingContext.js +8 -7
  4. package/lib/commonjs/LinkingContext.js.map +1 -1
  5. package/lib/commonjs/LocaleDirContext.js +12 -0
  6. package/lib/commonjs/LocaleDirContext.js.map +1 -0
  7. package/lib/commonjs/NavigationContainer.js +68 -32
  8. package/lib/commonjs/NavigationContainer.js.map +1 -1
  9. package/lib/commonjs/ServerContainer.js +6 -8
  10. package/lib/commonjs/ServerContainer.js.map +1 -1
  11. package/lib/commonjs/ServerContext.js +4 -6
  12. package/lib/commonjs/ServerContext.js.map +1 -1
  13. package/lib/commonjs/UnhandledLinkingContext.js +20 -0
  14. package/lib/commonjs/UnhandledLinkingContext.js.map +1 -0
  15. package/lib/commonjs/__stubs__/createStackNavigator.js +19 -0
  16. package/lib/commonjs/__stubs__/createStackNavigator.js.map +1 -0
  17. package/lib/commonjs/__stubs__/window.js +79 -0
  18. package/lib/commonjs/__stubs__/window.js.map +1 -0
  19. package/lib/commonjs/createMemoryHistory.js +5 -8
  20. package/lib/commonjs/createMemoryHistory.js.map +1 -1
  21. package/lib/commonjs/createStaticNavigation.js +8 -8
  22. package/lib/commonjs/createStaticNavigation.js.map +1 -1
  23. package/lib/commonjs/extractPathFromURL.js +4 -4
  24. package/lib/commonjs/extractPathFromURL.js.map +1 -1
  25. package/lib/commonjs/index.js +33 -34
  26. package/lib/commonjs/index.js.map +1 -1
  27. package/lib/commonjs/theming/DarkTheme.js +5 -5
  28. package/lib/commonjs/theming/DarkTheme.js.map +1 -1
  29. package/lib/commonjs/theming/DefaultTheme.js +5 -5
  30. package/lib/commonjs/theming/DefaultTheme.js.map +1 -1
  31. package/lib/commonjs/theming/fonts.js +65 -0
  32. package/lib/commonjs/theming/fonts.js.map +1 -0
  33. package/lib/commonjs/types.js.map +1 -1
  34. package/lib/commonjs/useBackButton.js +4 -20
  35. package/lib/commonjs/useBackButton.js.map +1 -1
  36. package/lib/commonjs/useBackButton.native.js +27 -0
  37. package/lib/commonjs/useBackButton.native.js.map +1 -0
  38. package/lib/commonjs/useDocumentTitle.js +6 -6
  39. package/lib/commonjs/useDocumentTitle.js.map +1 -1
  40. package/lib/commonjs/useDocumentTitle.native.js +1 -1
  41. package/lib/commonjs/useDocumentTitle.native.js.map +1 -1
  42. package/lib/commonjs/useLinkBuilder.js +80 -0
  43. package/lib/commonjs/useLinkBuilder.js.map +1 -0
  44. package/lib/commonjs/useLinkProps.js +23 -27
  45. package/lib/commonjs/useLinkProps.js.map +1 -1
  46. package/lib/commonjs/useLinkTo.js +30 -0
  47. package/lib/commonjs/useLinkTo.js.map +1 -0
  48. package/lib/commonjs/useLinking.js +39 -40
  49. package/lib/commonjs/useLinking.js.map +1 -1
  50. package/lib/commonjs/useLinking.native.js +33 -27
  51. package/lib/commonjs/useLinking.native.js.map +1 -1
  52. package/lib/commonjs/useLocale.js +23 -0
  53. package/lib/commonjs/useLocale.js.map +1 -0
  54. package/lib/commonjs/useScrollToTop.js +9 -7
  55. package/lib/commonjs/useScrollToTop.js.map +1 -1
  56. package/lib/commonjs/useThenable.js +4 -3
  57. package/lib/commonjs/useThenable.js.map +1 -1
  58. package/lib/commonjs/useUnhandledLinking.js +75 -0
  59. package/lib/commonjs/useUnhandledLinking.js.map +1 -0
  60. package/lib/module/Link.js +13 -5
  61. package/lib/module/Link.js.map +1 -1
  62. package/lib/module/LinkingContext.js +5 -3
  63. package/lib/module/LinkingContext.js.map +1 -1
  64. package/lib/module/LocaleDirContext.js +4 -0
  65. package/lib/module/LocaleDirContext.js.map +1 -0
  66. package/lib/module/NavigationContainer.js +60 -23
  67. package/lib/module/NavigationContainer.js.map +1 -1
  68. package/lib/module/ServerContainer.js +2 -2
  69. package/lib/module/ServerContainer.js.map +1 -1
  70. package/lib/module/ServerContext.js +1 -2
  71. package/lib/module/ServerContext.js.map +1 -1
  72. package/lib/module/UnhandledLinkingContext.js +12 -0
  73. package/lib/module/UnhandledLinkingContext.js.map +1 -0
  74. package/lib/module/__stubs__/createStackNavigator.js +11 -0
  75. package/lib/module/__stubs__/createStackNavigator.js.map +1 -0
  76. package/lib/module/__stubs__/window.js +73 -0
  77. package/lib/module/__stubs__/window.js.map +1 -0
  78. package/lib/module/createMemoryHistory.js +5 -8
  79. package/lib/module/createMemoryHistory.js.map +1 -1
  80. package/lib/module/createStaticNavigation.js +5 -4
  81. package/lib/module/createStaticNavigation.js.map +1 -1
  82. package/lib/module/extractPathFromURL.js +4 -4
  83. package/lib/module/extractPathFromURL.js.map +1 -1
  84. package/lib/module/index.js +12 -12
  85. package/lib/module/index.js.map +1 -1
  86. package/lib/module/theming/DarkTheme.js +4 -3
  87. package/lib/module/theming/DarkTheme.js.map +1 -1
  88. package/lib/module/theming/DefaultTheme.js +4 -3
  89. package/lib/module/theming/DefaultTheme.js.map +1 -1
  90. package/lib/module/theming/fonts.js +59 -0
  91. package/lib/module/theming/fonts.js.map +1 -0
  92. package/lib/module/types.js.map +1 -1
  93. package/lib/module/useBackButton.js +3 -17
  94. package/lib/module/useBackButton.js.map +1 -1
  95. package/lib/module/useBackButton.native.js +19 -0
  96. package/lib/module/useBackButton.native.js.map +1 -0
  97. package/lib/module/useDocumentTitle.js +4 -4
  98. package/lib/module/useDocumentTitle.js.map +1 -1
  99. package/lib/module/useDocumentTitle.native.js +1 -1
  100. package/lib/module/useDocumentTitle.native.js.map +1 -1
  101. package/lib/module/{useLinkTools.js → useLinkBuilder.js} +11 -11
  102. package/lib/module/useLinkBuilder.js.map +1 -0
  103. package/lib/module/useLinkProps.js +20 -23
  104. package/lib/module/useLinkProps.js.map +1 -1
  105. package/lib/module/useLinkTo.js +23 -0
  106. package/lib/module/useLinkTo.js.map +1 -0
  107. package/lib/module/useLinking.js +33 -36
  108. package/lib/module/useLinking.js.map +1 -1
  109. package/lib/module/useLinking.native.js +29 -22
  110. package/lib/module/useLinking.native.js.map +1 -1
  111. package/lib/module/useLocale.js +16 -0
  112. package/lib/module/useLocale.js.map +1 -0
  113. package/lib/module/useScrollToTop.js +8 -6
  114. package/lib/module/useScrollToTop.js.map +1 -1
  115. package/lib/module/useThenable.js +2 -1
  116. package/lib/module/useThenable.js.map +1 -1
  117. package/lib/module/useUnhandledLinking.js +69 -0
  118. package/lib/module/useUnhandledLinking.js.map +1 -0
  119. package/lib/typescript/src/Link.d.ts +3 -3
  120. package/lib/typescript/src/Link.d.ts.map +1 -1
  121. package/lib/typescript/src/LinkingContext.d.ts +2 -3
  122. package/lib/typescript/src/LinkingContext.d.ts.map +1 -1
  123. package/lib/typescript/src/LocaleDirContext.d.ts +4 -0
  124. package/lib/typescript/src/LocaleDirContext.d.ts.map +1 -0
  125. package/lib/typescript/src/NavigationContainer.d.ts +6 -6
  126. package/lib/typescript/src/NavigationContainer.d.ts.map +1 -1
  127. package/lib/typescript/src/ServerContainer.d.ts +2 -3
  128. package/lib/typescript/src/ServerContainer.d.ts.map +1 -1
  129. package/lib/typescript/src/ServerContext.d.ts +1 -2
  130. package/lib/typescript/src/ServerContext.d.ts.map +1 -1
  131. package/lib/typescript/src/UnhandledLinkingContext.d.ts +6 -0
  132. package/lib/typescript/src/UnhandledLinkingContext.d.ts.map +1 -0
  133. package/lib/typescript/src/__stubs__/createStackNavigator.d.ts +32 -0
  134. package/lib/typescript/src/__stubs__/createStackNavigator.d.ts.map +1 -0
  135. package/lib/typescript/src/{__mocks__ → __stubs__}/window.d.ts +2 -3
  136. package/lib/typescript/src/__stubs__/window.d.ts.map +1 -0
  137. package/lib/typescript/src/createMemoryHistory.d.ts +1 -1
  138. package/lib/typescript/src/createMemoryHistory.d.ts.map +1 -1
  139. package/lib/typescript/src/createStaticNavigation.d.ts +3 -3
  140. package/lib/typescript/src/createStaticNavigation.d.ts.map +1 -1
  141. package/lib/typescript/src/extractPathFromURL.d.ts +1 -1
  142. package/lib/typescript/src/extractPathFromURL.d.ts.map +1 -1
  143. package/lib/typescript/src/index.d.ts +12 -12
  144. package/lib/typescript/src/index.d.ts.map +1 -1
  145. package/lib/typescript/src/theming/DarkTheme.d.ts +1 -2
  146. package/lib/typescript/src/theming/DarkTheme.d.ts.map +1 -1
  147. package/lib/typescript/src/theming/DefaultTheme.d.ts +1 -2
  148. package/lib/typescript/src/theming/DefaultTheme.d.ts.map +1 -1
  149. package/lib/typescript/src/theming/fonts.d.ts +53 -0
  150. package/lib/typescript/src/theming/fonts.d.ts.map +1 -0
  151. package/lib/typescript/src/types.d.ts +41 -11
  152. package/lib/typescript/src/types.d.ts.map +1 -1
  153. package/lib/typescript/src/useBackButton.d.ts +2 -2
  154. package/lib/typescript/src/useBackButton.d.ts.map +1 -1
  155. package/lib/typescript/src/useBackButton.native.d.ts +4 -0
  156. package/lib/typescript/src/useBackButton.native.d.ts.map +1 -0
  157. package/lib/typescript/src/useDocumentTitle.d.ts +1 -1
  158. package/lib/typescript/src/useDocumentTitle.d.ts.map +1 -1
  159. package/lib/typescript/src/useDocumentTitle.native.d.ts +1 -1
  160. package/lib/typescript/src/useDocumentTitle.native.d.ts.map +1 -1
  161. package/lib/typescript/src/useLinkBuilder.d.ts +25 -0
  162. package/lib/typescript/src/useLinkBuilder.d.ts.map +1 -0
  163. package/lib/typescript/src/useLinkProps.d.ts +3 -3
  164. package/lib/typescript/src/useLinkProps.d.ts.map +1 -1
  165. package/lib/typescript/src/useLinkTo.d.ts +6 -0
  166. package/lib/typescript/src/useLinkTo.d.ts.map +1 -0
  167. package/lib/typescript/src/useLinking.d.ts +8 -20
  168. package/lib/typescript/src/useLinking.d.ts.map +1 -1
  169. package/lib/typescript/src/useLinking.native.d.ts +4 -20
  170. package/lib/typescript/src/useLinking.native.d.ts.map +1 -1
  171. package/lib/typescript/src/useLocale.d.ts +7 -0
  172. package/lib/typescript/src/useLocale.d.ts.map +1 -0
  173. package/lib/typescript/src/useScrollToTop.d.ts +1 -1
  174. package/lib/typescript/src/useScrollToTop.d.ts.map +1 -1
  175. package/lib/typescript/src/useThenable.d.ts +1 -1
  176. package/lib/typescript/src/useThenable.d.ts.map +1 -1
  177. package/lib/typescript/src/useUnhandledLinking.d.ts +7 -0
  178. package/lib/typescript/src/useUnhandledLinking.d.ts.map +1 -0
  179. package/package.json +15 -15
  180. package/src/Link.tsx +12 -3
  181. package/src/LinkingContext.tsx +9 -5
  182. package/src/LocaleDirContext.tsx +7 -0
  183. package/src/NavigationContainer.tsx +90 -36
  184. package/src/ServerContainer.tsx +2 -2
  185. package/src/ServerContext.tsx +1 -3
  186. package/src/UnhandledLinkingContext.tsx +18 -0
  187. package/src/{__mocks__ → __stubs__}/createStackNavigator.tsx +1 -3
  188. package/src/{__mocks__ → __stubs__}/window.tsx +8 -8
  189. package/src/createMemoryHistory.tsx +1 -1
  190. package/src/createStaticNavigation.tsx +8 -8
  191. package/src/extractPathFromURL.tsx +5 -2
  192. package/src/index.tsx +12 -12
  193. package/src/theming/DarkTheme.tsx +3 -3
  194. package/src/theming/DefaultTheme.tsx +3 -3
  195. package/src/theming/fonts.tsx +63 -0
  196. package/src/types.tsx +55 -11
  197. package/src/useBackButton.native.tsx +33 -0
  198. package/src/useBackButton.tsx +4 -26
  199. package/src/useDocumentTitle.native.tsx +1 -1
  200. package/src/useDocumentTitle.tsx +1 -1
  201. package/src/{useLinkTools.tsx → useLinkBuilder.tsx} +9 -9
  202. package/src/useLinkProps.tsx +27 -23
  203. package/src/useLinkTo.tsx +30 -0
  204. package/src/useLinking.native.tsx +28 -22
  205. package/src/useLinking.tsx +46 -44
  206. package/src/useLocale.tsx +18 -0
  207. package/src/useScrollToTop.tsx +14 -10
  208. package/src/useThenable.tsx +2 -1
  209. package/src/useUnhandledLinking.tsx +91 -0
  210. package/lib/commonjs/theming/ThemeContext.js +0 -16
  211. package/lib/commonjs/theming/ThemeContext.js.map +0 -1
  212. package/lib/commonjs/theming/ThemeProvider.js +0 -21
  213. package/lib/commonjs/theming/ThemeProvider.js.map +0 -1
  214. package/lib/commonjs/theming/useTheme.js +0 -16
  215. package/lib/commonjs/theming/useTheme.js.map +0 -1
  216. package/lib/commonjs/useLinkTools.js +0 -81
  217. package/lib/commonjs/useLinkTools.js.map +0 -1
  218. package/lib/module/theming/ThemeContext.js +0 -6
  219. package/lib/module/theming/ThemeContext.js.map +0 -1
  220. package/lib/module/theming/ThemeProvider.js +0 -12
  221. package/lib/module/theming/ThemeProvider.js.map +0 -1
  222. package/lib/module/theming/useTheme.js +0 -7
  223. package/lib/module/theming/useTheme.js.map +0 -1
  224. package/lib/module/useLinkTools.js.map +0 -1
  225. package/lib/typescript/src/__mocks__/createStackNavigator.d.ts +0 -57
  226. package/lib/typescript/src/__mocks__/createStackNavigator.d.ts.map +0 -1
  227. package/lib/typescript/src/__mocks__/window.d.ts.map +0 -1
  228. package/lib/typescript/src/theming/ThemeContext.d.ts +0 -5
  229. package/lib/typescript/src/theming/ThemeContext.d.ts.map +0 -1
  230. package/lib/typescript/src/theming/ThemeProvider.d.ts +0 -9
  231. package/lib/typescript/src/theming/ThemeProvider.d.ts.map +0 -1
  232. package/lib/typescript/src/theming/useTheme.d.ts +0 -2
  233. package/lib/typescript/src/theming/useTheme.d.ts.map +0 -1
  234. package/lib/typescript/src/useLinkTools.d.ts +0 -33
  235. package/lib/typescript/src/useLinkTools.d.ts.map +0 -1
  236. package/src/theming/ThemeContext.tsx +0 -10
  237. package/src/theming/ThemeProvider.tsx +0 -15
  238. package/src/theming/useTheme.tsx +0 -9
@@ -0,0 +1,73 @@
1
+ let location = new URL('', 'http://example.com');
2
+ let listeners = [];
3
+ let entries = [{
4
+ state: null,
5
+ href: location.href
6
+ }];
7
+ let index = 0;
8
+ let currentState = null;
9
+ const history = {
10
+ get state() {
11
+ return currentState;
12
+ },
13
+ pushState(state, _, path) {
14
+ location = new URL(path, location.origin);
15
+ currentState = state;
16
+ entries = entries.slice(0, index + 1);
17
+ entries.push({
18
+ state,
19
+ href: location.href
20
+ });
21
+ index = entries.length - 1;
22
+ },
23
+ replaceState(state, _, path) {
24
+ location = new URL(path, location.origin);
25
+ currentState = state;
26
+ entries[index] = {
27
+ state,
28
+ href: location.href
29
+ };
30
+ },
31
+ go(n) {
32
+ setTimeout(() => {
33
+ if (n > 0 && n < entries.length - index || n < 0 && Math.abs(n) <= index) {
34
+ index += n;
35
+ const entry = entries[index];
36
+ location = new URL(entry.href);
37
+ currentState = entry.state;
38
+ listeners.forEach(cb => cb());
39
+ }
40
+ }, 0);
41
+ },
42
+ back() {
43
+ this.go(-1);
44
+ },
45
+ forward() {
46
+ this.go(1);
47
+ }
48
+ };
49
+ const addEventListener = (type, listener) => {
50
+ if (type === 'popstate') {
51
+ listeners.push(listener);
52
+ }
53
+ };
54
+ const removeEventListener = (type, listener) => {
55
+ if (type === 'popstate') {
56
+ listeners = listeners.filter(cb => cb !== listener);
57
+ }
58
+ };
59
+ export const window = {
60
+ document: {
61
+ title: ''
62
+ },
63
+ get location() {
64
+ return location;
65
+ },
66
+ history,
67
+ addEventListener,
68
+ removeEventListener,
69
+ get window() {
70
+ return window;
71
+ }
72
+ };
73
+ //# sourceMappingURL=window.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["location","URL","listeners","entries","state","href","index","currentState","history","pushState","_","path","origin","slice","push","length","replaceState","go","n","setTimeout","Math","abs","entry","forEach","cb","back","forward","addEventListener","type","listener","removeEventListener","filter","window","document","title"],"sourceRoot":"../../../src","sources":["__stubs__/window.tsx"],"mappings":"AAAA,IAAIA,QAAQ,GAAG,IAAIC,GAAG,CAAC,EAAE,EAAE,oBAAoB,CAAC;AAEhD,IAAIC,SAAyB,GAAG,EAAE;AAClC,IAAIC,OAAO,GAAG,CAAC;EAAEC,KAAK,EAAE,IAAI;EAAEC,IAAI,EAAEL,QAAQ,CAACK;AAAK,CAAC,CAAC;AACpD,IAAIC,KAAK,GAAG,CAAC;AAEb,IAAIC,YAAiB,GAAG,IAAI;AAE5B,MAAMC,OAAO,GAAG;EACd,IAAIJ,KAAKA,CAAA,EAAG;IACV,OAAOG,YAAY;EACrB,CAAC;EAEDE,SAASA,CAACL,KAAU,EAAEM,CAAS,EAAEC,IAAY,EAAE;IAC7CX,QAAQ,GAAG,IAAIC,GAAG,CAACU,IAAI,EAAEX,QAAQ,CAACY,MAAM,CAAC;IAEzCL,YAAY,GAAGH,KAAK;IACpBD,OAAO,GAAGA,OAAO,CAACU,KAAK,CAAC,CAAC,EAAEP,KAAK,GAAG,CAAC,CAAC;IACrCH,OAAO,CAACW,IAAI,CAAC;MAAEV,KAAK;MAAEC,IAAI,EAAEL,QAAQ,CAACK;IAAK,CAAC,CAAC;IAC5CC,KAAK,GAAGH,OAAO,CAACY,MAAM,GAAG,CAAC;EAC5B,CAAC;EAEDC,YAAYA,CAACZ,KAAU,EAAEM,CAAS,EAAEC,IAAY,EAAE;IAChDX,QAAQ,GAAG,IAAIC,GAAG,CAACU,IAAI,EAAEX,QAAQ,CAACY,MAAM,CAAC;IAEzCL,YAAY,GAAGH,KAAK;IACpBD,OAAO,CAACG,KAAK,CAAC,GAAG;MAAEF,KAAK;MAAEC,IAAI,EAAEL,QAAQ,CAACK;IAAK,CAAC;EACjD,CAAC;EAEDY,EAAEA,CAACC,CAAS,EAAE;IACZC,UAAU,CAAC,MAAM;MACf,IACGD,CAAC,GAAG,CAAC,IAAIA,CAAC,GAAGf,OAAO,CAACY,MAAM,GAAGT,KAAK,IACnCY,CAAC,GAAG,CAAC,IAAIE,IAAI,CAACC,GAAG,CAACH,CAAC,CAAC,IAAIZ,KAAM,EAC/B;QACAA,KAAK,IAAIY,CAAC;QACV,MAAMI,KAAK,GAAGnB,OAAO,CAACG,KAAK,CAAC;QAC5BN,QAAQ,GAAG,IAAIC,GAAG,CAACqB,KAAK,CAACjB,IAAI,CAAC;QAC9BE,YAAY,GAAGe,KAAK,CAAClB,KAAK;QAC1BF,SAAS,CAACqB,OAAO,CAAEC,EAAE,IAAKA,EAAE,CAAC,CAAC,CAAC;MACjC;IACF,CAAC,EAAE,CAAC,CAAC;EACP,CAAC;EAEDC,IAAIA,CAAA,EAAG;IACL,IAAI,CAACR,EAAE,CAAC,CAAC,CAAC,CAAC;EACb,CAAC;EAEDS,OAAOA,CAAA,EAAG;IACR,IAAI,CAACT,EAAE,CAAC,CAAC,CAAC;EACZ;AACF,CAAC;AAED,MAAMU,gBAAgB,GAAGA,CAACC,IAAgB,EAAEC,QAAoB,KAAK;EACnE,IAAID,IAAI,KAAK,UAAU,EAAE;IACvB1B,SAAS,CAACY,IAAI,CAACe,QAAQ,CAAC;EAC1B;AACF,CAAC;AAED,MAAMC,mBAAmB,GAAGA,CAACF,IAAgB,EAAEC,QAAoB,KAAK;EACtE,IAAID,IAAI,KAAK,UAAU,EAAE;IACvB1B,SAAS,GAAGA,SAAS,CAAC6B,MAAM,CAAEP,EAAE,IAAKA,EAAE,KAAKK,QAAQ,CAAC;EACvD;AACF,CAAC;AAED,OAAO,MAAMG,MAAM,GAAG;EACpBC,QAAQ,EAAE;IAAEC,KAAK,EAAE;EAAG,CAAC;EACvB,IAAIlC,QAAQA,CAAA,EAAG;IACb,OAAOA,QAAQ;EACjB,CAAC;EACDQ,OAAO;EACPmB,gBAAgB;EAChBG,mBAAmB;EACnB,IAAIE,MAAMA,CAAA,EAAG;IACX,OAAOA,MAAM;EACf;AACF,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { nanoid } from 'nanoid/non-secure';
2
- export default function createMemoryHistory() {
2
+ export function createMemoryHistory() {
3
3
  let index = 0;
4
4
  let items = [];
5
5
 
@@ -17,10 +17,9 @@ export default function createMemoryHistory() {
17
17
  };
18
18
  const history = {
19
19
  get index() {
20
- var _window$history$state;
21
20
  // We store an id in the state instead of an index
22
21
  // Index could get out of sync with in-memory values if page reloads
23
- const id = (_window$history$state = window.history.state) === null || _window$history$state === void 0 ? void 0 : _window$history$state.id;
22
+ const id = window.history.state?.id;
24
23
  if (id) {
25
24
  const index = items.findIndex(item => item.id === id);
26
25
  return index > -1 ? index : 0;
@@ -70,13 +69,12 @@ export default function createMemoryHistory() {
70
69
  }, '', path);
71
70
  },
72
71
  replace(_ref3) {
73
- var _window$history$state2;
74
72
  let {
75
73
  path,
76
74
  state
77
75
  } = _ref3;
78
76
  interrupt();
79
- const id = ((_window$history$state2 = window.history.state) === null || _window$history$state2 === void 0 ? void 0 : _window$history$state2.id) ?? nanoid();
77
+ const id = window.history.state?.id ?? nanoid();
80
78
 
81
79
  // Need to keep the hash part of the path if there was no previous history entry
82
80
  // or the previous history entry had the same path
@@ -182,8 +180,7 @@ export default function createMemoryHistory() {
182
180
  }
183
181
  }, 100);
184
182
  const onPopState = () => {
185
- var _window$history$state3;
186
- const id = (_window$history$state3 = window.history.state) === null || _window$history$state3 === void 0 ? void 0 : _window$history$state3.id;
183
+ const id = window.history.state?.id;
187
184
  const currentIndex = items.findIndex(item => item.id === id);
188
185
 
189
186
  // Fix createMemoryHistory.index variable's value
@@ -191,7 +188,7 @@ export default function createMemoryHistory() {
191
188
  index = Math.max(currentIndex, 0);
192
189
  const last = pending.pop();
193
190
  window.removeEventListener('popstate', onPopState);
194
- last === null || last === void 0 ? void 0 : last.cb();
191
+ last?.cb();
195
192
  };
196
193
  window.addEventListener('popstate', onPopState);
197
194
  window.history.go(n);
@@ -1 +1 @@
1
- {"version":3,"names":["nanoid","createMemoryHistory","index","items","pending","interrupt","forEach","it","cb","history","id","window","state","findIndex","item","get","backIndex","path","i","push","slice","length","pushState","replace","pathWithHash","location","hash","replaceState","go","n","nextIndex","lastItemIndex","Promise","resolve","reject","done","interrupted","clearTimeout","timer","Error","title","document","ref","setTimeout","splice","onPopState","currentIndex","Math","max","last","pop","removeEventListener","addEventListener","listen","listener"],"sourceRoot":"../../src","sources":["createMemoryHistory.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["nanoid","createMemoryHistory","index","items","pending","interrupt","forEach","it","cb","history","id","window","state","findIndex","item","get","backIndex","_ref","path","i","push","_ref2","slice","length","pushState","replace","_ref3","pathWithHash","location","hash","replaceState","go","n","nextIndex","lastItemIndex","Promise","resolve","reject","done","interrupted","clearTimeout","timer","Error","title","document","ref","setTimeout","splice","onPopState","currentIndex","Math","max","last","pop","removeEventListener","addEventListener","listen","listener"],"sourceRoot":"../../src","sources":["createMemoryHistory.tsx"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
2
  import { createComponentForStaticNavigation, createPathConfigForStaticNavigation } from '@react-navigation/core';
3
3
  import * as React from 'react';
4
- import NavigationContainer from './NavigationContainer';
4
+ import { NavigationContainer } from './NavigationContainer';
5
5
  /**
6
6
  * Create a navigation component from a static navigation config.
7
7
  * The returned component is a wrapper around `NavigationContainer`.
@@ -9,12 +9,12 @@ import NavigationContainer from './NavigationContainer';
9
9
  * @param tree Static navigation config.
10
10
  * @returns Navigation component to use in your app.
11
11
  */
12
- export default function createStaticNavigation(tree) {
12
+ export function createStaticNavigation(tree) {
13
13
  const Component = createComponentForStaticNavigation(tree, 'RootNavigator');
14
14
  const linkingConfig = {
15
15
  screens: tree.config.screens ? createPathConfigForStaticNavigation(tree) : {}
16
16
  };
17
- return function Navigation(_ref) {
17
+ function Navigation(_ref) {
18
18
  let {
19
19
  linking,
20
20
  ...rest
@@ -25,6 +25,7 @@ export default function createStaticNavigation(tree) {
25
25
  config: linkingConfig
26
26
  } : undefined
27
27
  }), /*#__PURE__*/React.createElement(Component, null));
28
- };
28
+ }
29
+ return /*#__PURE__*/React.forwardRef(Navigation);
29
30
  }
30
31
  //# sourceMappingURL=createStaticNavigation.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createComponentForStaticNavigation","createPathConfigForStaticNavigation","React","NavigationContainer","createStaticNavigation","tree","Component","linkingConfig","screens","config","Navigation","linking","rest","undefined"],"sourceRoot":"../../src","sources":["createStaticNavigation.tsx"],"mappings":";AAAA,SACEA,kCAAkC,EAClCC,mCAAmC,QAG9B,wBAAwB;AAC/B,OAAO,KAAKC,KAAK,MAAM,OAAO;AAE9B,OAAOC,mBAAmB,MAAM,uBAAuB;AAavD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,SAASC,sBAAsB,CAC5CC,IAAqC,EACrC;EACA,MAAMC,SAAS,GAAGN,kCAAkC,CAACK,IAAI,EAAE,eAAe,CAAC;EAC3E,MAAME,aAAa,GAAG;IACpBC,OAAO,EAAEH,IAAI,CAACI,MAAM,CAACD,OAAO,GACxBP,mCAAmC,CAACI,IAAI,CAAC,GACzC,CAAC;EACP,CAAC;EAED,OAAO,SAASK,UAAU,OAA8B;IAAA,IAA7B;MAAEC,OAAO;MAAE,GAAGC;IAAY,CAAC;IACpD,oBACE,oBAAC,mBAAmB,eACdA,IAAI;MACR,OAAO,EAAED,OAAO,GAAG;QAAE,GAAGA,OAAO;QAAEF,MAAM,EAAEF;MAAc,CAAC,GAAGM;IAAU,iBAErE,oBAAC,SAAS,OAAG,CACO;EAE1B,CAAC;AACH"}
1
+ {"version":3,"names":["createComponentForStaticNavigation","createPathConfigForStaticNavigation","React","NavigationContainer","createStaticNavigation","tree","Component","linkingConfig","screens","config","Navigation","_ref","linking","rest","createElement","_extends","undefined","forwardRef"],"sourceRoot":"../../src","sources":["createStaticNavigation.tsx"],"mappings":";AAAA,SACEA,kCAAkC,EAClCC,mCAAmC,QAG9B,wBAAwB;AAC/B,OAAO,KAAKC,KAAK,MAAM,OAAO;AAE9B,SAASC,mBAAmB,QAAQ,uBAAuB;AAa3D;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,sBAAsBA,CAACC,IAAqC,EAAE;EAC5E,MAAMC,SAAS,GAAGN,kCAAkC,CAACK,IAAI,EAAE,eAAe,CAAC;EAC3E,MAAME,aAAa,GAAG;IACpBC,OAAO,EAAEH,IAAI,CAACI,MAAM,CAACD,OAAO,GACxBP,mCAAmC,CAACI,IAAI,CAAC,GACzC,CAAC;EACP,CAAC;EAED,SAASK,UAAUA,CAAAC,IAAA,EAA8B;IAAA,IAA7B;MAAEC,OAAO;MAAE,GAAGC;IAAY,CAAC,GAAAF,IAAA;IAC7C,oBACET,KAAA,CAAAY,aAAA,CAACX,mBAAmB,EAAAY,QAAA,KACdF,IAAI;MACRD,OAAO,EAAEA,OAAO,GAAG;QAAE,GAAGA,OAAO;QAAEH,MAAM,EAAEF;MAAc,CAAC,GAAGS;IAAU,iBAErEd,KAAA,CAAAY,aAAA,CAACR,SAAS,MAAE,CACO,CAAC;EAE1B;EAEA,oBAAOJ,KAAK,CAACe,UAAU,CAACP,UAAU,CAAC;AACrC"}
@@ -1,13 +1,13 @@
1
1
  import escapeStringRegexp from 'escape-string-regexp';
2
- export default function extractPathFromURL(prefixes, url) {
2
+ export function extractPathFromURL(prefixes, url) {
3
3
  for (const prefix of prefixes) {
4
- var _prefix$match;
5
- const protocol = ((_prefix$match = prefix.match(/^[^:]+:/)) === null || _prefix$match === void 0 ? void 0 : _prefix$match[0]) ?? '';
4
+ const protocol = prefix.match(/^[^:]+:/)?.[0] ?? '';
6
5
  const host = prefix.replace(new RegExp(`^${escapeStringRegexp(protocol)}`), '').replace(/\/+/g, '/') // Replace multiple slash (//) with single ones
7
6
  .replace(/^\//, ''); // Remove extra leading slash
8
7
 
9
8
  const prefixRegex = new RegExp(`^${escapeStringRegexp(protocol)}(/)*${host.split('.').map(it => it === '*' ? '[^/]+' : escapeStringRegexp(it)).join('\\.')}`);
10
- const normalizedURL = url.replace(/\/+/g, '/');
9
+ const [originAndPath, searchParams] = url.split('?');
10
+ const normalizedURL = originAndPath.replace(/\/+/g, '/').concat(searchParams ? `?${searchParams}` : '');
11
11
  if (prefixRegex.test(normalizedURL)) {
12
12
  return normalizedURL.replace(prefixRegex, '');
13
13
  }
@@ -1 +1 @@
1
- {"version":3,"names":["escapeStringRegexp","extractPathFromURL","prefixes","url","prefix","protocol","match","host","replace","RegExp","prefixRegex","split","map","it","join","normalizedURL","test","undefined"],"sourceRoot":"../../src","sources":["extractPathFromURL.tsx"],"mappings":"AAAA,OAAOA,kBAAkB,MAAM,sBAAsB;AAErD,eAAe,SAASC,kBAAkB,CAACC,QAAkB,EAAEC,GAAW,EAAE;EAC1E,KAAK,MAAMC,MAAM,IAAIF,QAAQ,EAAE;IAAA;IAC7B,MAAMG,QAAQ,GAAG,kBAAAD,MAAM,CAACE,KAAK,CAAC,SAAS,CAAC,kDAAvB,cAA0B,CAAC,CAAC,KAAI,EAAE;IACnD,MAAMC,IAAI,GAAGH,MAAM,CAChBI,OAAO,CAAC,IAAIC,MAAM,CAAE,IAAGT,kBAAkB,CAACK,QAAQ,CAAE,EAAC,CAAC,EAAE,EAAE,CAAC,CAC3DG,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAAA,CACrBA,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;;IAEvB,MAAME,WAAW,GAAG,IAAID,MAAM,CAC3B,IAAGT,kBAAkB,CAACK,QAAQ,CAAE,OAAME,IAAI,CACxCI,KAAK,CAAC,GAAG,CAAC,CACVC,GAAG,CAAEC,EAAE,IAAMA,EAAE,KAAK,GAAG,GAAG,OAAO,GAAGb,kBAAkB,CAACa,EAAE,CAAE,CAAC,CAC5DC,IAAI,CAAC,KAAK,CAAE,EAAC,CACjB;IAED,MAAMC,aAAa,GAAGZ,GAAG,CAACK,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;IAE9C,IAAIE,WAAW,CAACM,IAAI,CAACD,aAAa,CAAC,EAAE;MACnC,OAAOA,aAAa,CAACP,OAAO,CAACE,WAAW,EAAE,EAAE,CAAC;IAC/C;EACF;EAEA,OAAOO,SAAS;AAClB"}
1
+ {"version":3,"names":["escapeStringRegexp","extractPathFromURL","prefixes","url","prefix","protocol","match","host","replace","RegExp","prefixRegex","split","map","it","join","originAndPath","searchParams","normalizedURL","concat","test","undefined"],"sourceRoot":"../../src","sources":["extractPathFromURL.tsx"],"mappings":"AAAA,OAAOA,kBAAkB,MAAM,sBAAsB;AAErD,OAAO,SAASC,kBAAkBA,CAACC,QAAkB,EAAEC,GAAW,EAAE;EAClE,KAAK,MAAMC,MAAM,IAAIF,QAAQ,EAAE;IAC7B,MAAMG,QAAQ,GAAGD,MAAM,CAACE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE;IACnD,MAAMC,IAAI,GAAGH,MAAM,CAChBI,OAAO,CAAC,IAAIC,MAAM,CAAE,IAAGT,kBAAkB,CAACK,QAAQ,CAAE,EAAC,CAAC,EAAE,EAAE,CAAC,CAC3DG,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAAA,CACrBA,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;;IAEvB,MAAME,WAAW,GAAG,IAAID,MAAM,CAC3B,IAAGT,kBAAkB,CAACK,QAAQ,CAAE,OAAME,IAAI,CACxCI,KAAK,CAAC,GAAG,CAAC,CACVC,GAAG,CAAEC,EAAE,IAAMA,EAAE,KAAK,GAAG,GAAG,OAAO,GAAGb,kBAAkB,CAACa,EAAE,CAAE,CAAC,CAC5DC,IAAI,CAAC,KAAK,CAAE,EACjB,CAAC;IAED,MAAM,CAACC,aAAa,EAAEC,YAAY,CAAC,GAAGb,GAAG,CAACQ,KAAK,CAAC,GAAG,CAAC;IACpD,MAAMM,aAAa,GAAGF,aAAa,CAChCP,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CACpBU,MAAM,CAACF,YAAY,GAAI,IAAGA,YAAa,EAAC,GAAG,EAAE,CAAC;IAEjD,IAAIN,WAAW,CAACS,IAAI,CAACF,aAAa,CAAC,EAAE;MACnC,OAAOA,aAAa,CAACT,OAAO,CAACE,WAAW,EAAE,EAAE,CAAC;IAC/C;EACF;EAEA,OAAOU,SAAS;AAClB"}
@@ -1,15 +1,15 @@
1
- export { default as createStaticNavigation } from './createStaticNavigation';
2
- export { default as Link } from './Link';
3
- export { default as LinkingContext } from './LinkingContext';
4
- export { default as NavigationContainer } from './NavigationContainer';
5
- export { default as ServerContainer } from './ServerContainer';
6
- export { default as DarkTheme } from './theming/DarkTheme';
7
- export { default as DefaultTheme } from './theming/DefaultTheme';
8
- export { default as ThemeProvider } from './theming/ThemeProvider';
9
- export { default as useTheme } from './theming/useTheme';
1
+ export { createStaticNavigation } from './createStaticNavigation';
2
+ export { Link } from './Link';
3
+ export { LinkingContext } from './LinkingContext';
4
+ export { NavigationContainer } from './NavigationContainer';
5
+ export { ServerContainer } from './ServerContainer';
6
+ export { DarkTheme } from './theming/DarkTheme';
7
+ export { DefaultTheme } from './theming/DefaultTheme';
10
8
  export * from './types';
11
- export { default as useLinkProps } from './useLinkProps';
12
- export { default as useLinkTools } from './useLinkTools';
13
- export { default as useScrollToTop } from './useScrollToTop';
9
+ export { useLinkBuilder } from './useLinkBuilder';
10
+ export { useLinkProps } from './useLinkProps';
11
+ export { useLocale } from './useLocale';
12
+ export { useScrollToTop } from './useScrollToTop';
13
+ export { UNSTABLE_useUnhandledLinking } from './useUnhandledLinking';
14
14
  export * from '@react-navigation/core';
15
15
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["default","createStaticNavigation","Link","LinkingContext","NavigationContainer","ServerContainer","DarkTheme","DefaultTheme","ThemeProvider","useTheme","useLinkProps","useLinkTools","useScrollToTop"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"AAAA,SAASA,OAAO,IAAIC,sBAAsB,QAAQ,0BAA0B;AAC5E,SAASD,OAAO,IAAIE,IAAI,QAAQ,QAAQ;AACxC,SAASF,OAAO,IAAIG,cAAc,QAAQ,kBAAkB;AAC5D,SAASH,OAAO,IAAII,mBAAmB,QAAQ,uBAAuB;AACtE,SAASJ,OAAO,IAAIK,eAAe,QAAQ,mBAAmB;AAC9D,SAASL,OAAO,IAAIM,SAAS,QAAQ,qBAAqB;AAC1D,SAASN,OAAO,IAAIO,YAAY,QAAQ,wBAAwB;AAChE,SAASP,OAAO,IAAIQ,aAAa,QAAQ,yBAAyB;AAClE,SAASR,OAAO,IAAIS,QAAQ,QAAQ,oBAAoB;AACxD,cAAc,SAAS;AACvB,SAAST,OAAO,IAAIU,YAAY,QAAQ,gBAAgB;AACxD,SAASV,OAAO,IAAIW,YAAY,QAAQ,gBAAgB;AACxD,SAASX,OAAO,IAAIY,cAAc,QAAQ,kBAAkB;AAC5D,cAAc,wBAAwB"}
1
+ {"version":3,"names":["createStaticNavigation","Link","LinkingContext","NavigationContainer","ServerContainer","DarkTheme","DefaultTheme","useLinkBuilder","useLinkProps","useLocale","useScrollToTop","UNSTABLE_useUnhandledLinking"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"AAAA,SAASA,sBAAsB,QAAQ,0BAA0B;AACjE,SAASC,IAAI,QAAQ,QAAQ;AAC7B,SAASC,cAAc,QAAQ,kBAAkB;AACjD,SAASC,mBAAmB,QAAQ,uBAAuB;AAC3D,SAASC,eAAe,QAAQ,mBAAmB;AACnD,SAASC,SAAS,QAAQ,qBAAqB;AAC/C,SAASC,YAAY,QAAQ,wBAAwB;AACrD,cAAc,SAAS;AACvB,SAASC,cAAc,QAAQ,kBAAkB;AACjD,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,SAAS,QAAQ,aAAa;AACvC,SAASC,cAAc,QAAQ,kBAAkB;AACjD,SAASC,4BAA4B,QAAQ,uBAAuB;AACpE,cAAc,wBAAwB"}
@@ -1,4 +1,5 @@
1
- const DarkTheme = {
1
+ import { fonts } from './fonts';
2
+ export const DarkTheme = {
2
3
  dark: true,
3
4
  colors: {
4
5
  primary: 'rgb(10, 132, 255)',
@@ -7,7 +8,7 @@ const DarkTheme = {
7
8
  text: 'rgb(229, 229, 231)',
8
9
  border: 'rgb(39, 39, 41)',
9
10
  notification: 'rgb(255, 69, 58)'
10
- }
11
+ },
12
+ fonts
11
13
  };
12
- export default DarkTheme;
13
14
  //# sourceMappingURL=DarkTheme.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["DarkTheme","dark","colors","primary","background","card","text","border","notification"],"sourceRoot":"../../src","sources":["DarkTheme.tsx"],"mappings":"AAEA,MAAMA,SAAgB,GAAG;EACvBC,IAAI,EAAE,IAAI;EACVC,MAAM,EAAE;IACNC,OAAO,EAAE,mBAAmB;IAC5BC,UAAU,EAAE,cAAc;IAC1BC,IAAI,EAAE,iBAAiB;IACvBC,IAAI,EAAE,oBAAoB;IAC1BC,MAAM,EAAE,iBAAiB;IACzBC,YAAY,EAAE;EAChB;AACF,CAAC;AAED,eAAeR,SAAS"}
1
+ {"version":3,"names":["fonts","DarkTheme","dark","colors","primary","background","card","text","border","notification"],"sourceRoot":"../../../src","sources":["theming/DarkTheme.tsx"],"mappings":"AACA,SAASA,KAAK,QAAQ,SAAS;AAE/B,OAAO,MAAMC,SAAgB,GAAG;EAC9BC,IAAI,EAAE,IAAI;EACVC,MAAM,EAAE;IACNC,OAAO,EAAE,mBAAmB;IAC5BC,UAAU,EAAE,cAAc;IAC1BC,IAAI,EAAE,iBAAiB;IACvBC,IAAI,EAAE,oBAAoB;IAC1BC,MAAM,EAAE,iBAAiB;IACzBC,YAAY,EAAE;EAChB,CAAC;EACDT;AACF,CAAC"}
@@ -1,4 +1,5 @@
1
- const DefaultTheme = {
1
+ import { fonts } from './fonts';
2
+ export const DefaultTheme = {
2
3
  dark: false,
3
4
  colors: {
4
5
  primary: 'rgb(0, 122, 255)',
@@ -7,7 +8,7 @@ const DefaultTheme = {
7
8
  text: 'rgb(28, 28, 30)',
8
9
  border: 'rgb(216, 216, 216)',
9
10
  notification: 'rgb(255, 59, 48)'
10
- }
11
+ },
12
+ fonts
11
13
  };
12
- export default DefaultTheme;
13
14
  //# sourceMappingURL=DefaultTheme.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["DefaultTheme","dark","colors","primary","background","card","text","border","notification"],"sourceRoot":"../../src","sources":["DefaultTheme.tsx"],"mappings":"AAEA,MAAMA,YAAmB,GAAG;EAC1BC,IAAI,EAAE,KAAK;EACXC,MAAM,EAAE;IACNC,OAAO,EAAE,kBAAkB;IAC3BC,UAAU,EAAE,oBAAoB;IAChCC,IAAI,EAAE,oBAAoB;IAC1BC,IAAI,EAAE,iBAAiB;IACvBC,MAAM,EAAE,oBAAoB;IAC5BC,YAAY,EAAE;EAChB;AACF,CAAC;AAED,eAAeR,YAAY"}
1
+ {"version":3,"names":["fonts","DefaultTheme","dark","colors","primary","background","card","text","border","notification"],"sourceRoot":"../../../src","sources":["theming/DefaultTheme.tsx"],"mappings":"AACA,SAASA,KAAK,QAAQ,SAAS;AAE/B,OAAO,MAAMC,YAAmB,GAAG;EACjCC,IAAI,EAAE,KAAK;EACXC,MAAM,EAAE;IACNC,OAAO,EAAE,kBAAkB;IAC3BC,UAAU,EAAE,oBAAoB;IAChCC,IAAI,EAAE,oBAAoB;IAC1BC,IAAI,EAAE,iBAAiB;IACvBC,MAAM,EAAE,oBAAoB;IAC5BC,YAAY,EAAE;EAChB,CAAC;EACDT;AACF,CAAC"}
@@ -0,0 +1,59 @@
1
+ import { Platform } from 'react-native';
2
+ const WEB_FONT_STACK = 'system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"';
3
+ export const fonts = Platform.select({
4
+ web: {
5
+ regular: {
6
+ fontFamily: WEB_FONT_STACK,
7
+ fontWeight: '400'
8
+ },
9
+ medium: {
10
+ fontFamily: WEB_FONT_STACK,
11
+ fontWeight: '500'
12
+ },
13
+ bold: {
14
+ fontFamily: WEB_FONT_STACK,
15
+ fontWeight: '600'
16
+ },
17
+ heavy: {
18
+ fontFamily: WEB_FONT_STACK,
19
+ fontWeight: '700'
20
+ }
21
+ },
22
+ ios: {
23
+ regular: {
24
+ fontFamily: 'System',
25
+ fontWeight: '400'
26
+ },
27
+ medium: {
28
+ fontFamily: 'System',
29
+ fontWeight: '500'
30
+ },
31
+ bold: {
32
+ fontFamily: 'System',
33
+ fontWeight: '600'
34
+ },
35
+ heavy: {
36
+ fontFamily: 'System',
37
+ fontWeight: '700'
38
+ }
39
+ },
40
+ default: {
41
+ regular: {
42
+ fontFamily: 'sans-serif',
43
+ fontWeight: 'normal'
44
+ },
45
+ medium: {
46
+ fontFamily: 'sans-serif-medium',
47
+ fontWeight: 'normal'
48
+ },
49
+ bold: {
50
+ fontFamily: 'sans-serif',
51
+ fontWeight: '600'
52
+ },
53
+ heavy: {
54
+ fontFamily: 'sans-serif',
55
+ fontWeight: '700'
56
+ }
57
+ }
58
+ });
59
+ //# sourceMappingURL=fonts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Platform","WEB_FONT_STACK","fonts","select","web","regular","fontFamily","fontWeight","medium","bold","heavy","ios","default"],"sourceRoot":"../../../src","sources":["theming/fonts.tsx"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,cAAc;AAIvC,MAAMC,cAAc,GAClB,uHAAuH;AAEzH,OAAO,MAAMC,KAAK,GAAGF,QAAQ,CAACG,MAAM,CAAC;EACnCC,GAAG,EAAE;IACHC,OAAO,EAAE;MACPC,UAAU,EAAEL,cAAc;MAC1BM,UAAU,EAAE;IACd,CAAC;IACDC,MAAM,EAAE;MACNF,UAAU,EAAEL,cAAc;MAC1BM,UAAU,EAAE;IACd,CAAC;IACDE,IAAI,EAAE;MACJH,UAAU,EAAEL,cAAc;MAC1BM,UAAU,EAAE;IACd,CAAC;IACDG,KAAK,EAAE;MACLJ,UAAU,EAAEL,cAAc;MAC1BM,UAAU,EAAE;IACd;EACF,CAAC;EACDI,GAAG,EAAE;IACHN,OAAO,EAAE;MACPC,UAAU,EAAE,QAAQ;MACpBC,UAAU,EAAE;IACd,CAAC;IACDC,MAAM,EAAE;MACNF,UAAU,EAAE,QAAQ;MACpBC,UAAU,EAAE;IACd,CAAC;IACDE,IAAI,EAAE;MACJH,UAAU,EAAE,QAAQ;MACpBC,UAAU,EAAE;IACd,CAAC;IACDG,KAAK,EAAE;MACLJ,UAAU,EAAE,QAAQ;MACpBC,UAAU,EAAE;IACd;EACF,CAAC;EACDK,OAAO,EAAE;IACPP,OAAO,EAAE;MACPC,UAAU,EAAE,YAAY;MACxBC,UAAU,EAAE;IACd,CAAC;IACDC,MAAM,EAAE;MACNF,UAAU,EAAE,mBAAmB;MAC/BC,UAAU,EAAE;IACd,CAAC;IACDE,IAAI,EAAE;MACJH,UAAU,EAAE,YAAY;MACxBC,UAAU,EAAE;IACd,CAAC;IACDG,KAAK,EAAE;MACLJ,UAAU,EAAE,YAAY;MACxBC,UAAU,EAAE;IACd;EACF;AACF,CAAmD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sourceRoot":"../../src","sources":["types.tsx"],"mappings":""}
1
+ {"version":3,"names":[],"sourceRoot":"../../src","sources":["types.tsx"],"mappings":""}
@@ -1,19 +1,5 @@
1
- import * as React from 'react';
2
- import { BackHandler } from 'react-native';
3
- export default function useBackButton(ref) {
4
- React.useEffect(() => {
5
- const subscription = BackHandler.addEventListener('hardwareBackPress', () => {
6
- const navigation = ref.current;
7
- if (navigation == null) {
8
- return false;
9
- }
10
- if (navigation.canGoBack()) {
11
- navigation.goBack();
12
- return true;
13
- }
14
- return false;
15
- });
16
- return () => subscription.remove();
17
- }, [ref]);
1
+ export function useBackButton(_) {
2
+ // No-op
3
+ // BackHandler is not available on web
18
4
  }
19
5
  //# sourceMappingURL=useBackButton.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","BackHandler","useBackButton","ref","useEffect","subscription","addEventListener","navigation","current","canGoBack","goBack","remove"],"sourceRoot":"../../src","sources":["useBackButton.tsx"],"mappings":"AAIA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,WAAW,QAAQ,cAAc;AAE1C,eAAe,SAASC,aAAa,CACnCC,GAA2D,EAC3D;EACAH,KAAK,CAACI,SAAS,CAAC,MAAM;IACpB,MAAMC,YAAY,GAAGJ,WAAW,CAACK,gBAAgB,CAC/C,mBAAmB,EACnB,MAAM;MACJ,MAAMC,UAAU,GAAGJ,GAAG,CAACK,OAAO;MAE9B,IAAID,UAAU,IAAI,IAAI,EAAE;QACtB,OAAO,KAAK;MACd;MAEA,IAAIA,UAAU,CAACE,SAAS,EAAE,EAAE;QAC1BF,UAAU,CAACG,MAAM,EAAE;QAEnB,OAAO,IAAI;MACb;MAEA,OAAO,KAAK;IACd,CAAC,CACF;IAED,OAAO,MAAML,YAAY,CAACM,MAAM,EAAE;EACpC,CAAC,EAAE,CAACR,GAAG,CAAC,CAAC;AACX"}
1
+ {"version":3,"names":["useBackButton","_"],"sourceRoot":"../../src","sources":["useBackButton.tsx"],"mappings":"AAKA,OAAO,SAASA,aAAaA,CAC3BC,CAAyD,EACzD;EACA;EACA;AAAA"}
@@ -0,0 +1,19 @@
1
+ import * as React from 'react';
2
+ import { BackHandler } from 'react-native';
3
+ export function useBackButton(ref) {
4
+ React.useEffect(() => {
5
+ const subscription = BackHandler.addEventListener('hardwareBackPress', () => {
6
+ const navigation = ref.current;
7
+ if (navigation == null) {
8
+ return false;
9
+ }
10
+ if (navigation.canGoBack()) {
11
+ navigation.goBack();
12
+ return true;
13
+ }
14
+ return false;
15
+ });
16
+ return () => subscription.remove();
17
+ }, [ref]);
18
+ }
19
+ //# sourceMappingURL=useBackButton.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","BackHandler","useBackButton","ref","useEffect","subscription","addEventListener","navigation","current","canGoBack","goBack","remove"],"sourceRoot":"../../src","sources":["useBackButton.native.tsx"],"mappings":"AAIA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,WAAW,QAAQ,cAAc;AAE1C,OAAO,SAASC,aAAaA,CAC3BC,GAA2D,EAC3D;EACAH,KAAK,CAACI,SAAS,CAAC,MAAM;IACpB,MAAMC,YAAY,GAAGJ,WAAW,CAACK,gBAAgB,CAC/C,mBAAmB,EACnB,MAAM;MACJ,MAAMC,UAAU,GAAGJ,GAAG,CAACK,OAAO;MAE9B,IAAID,UAAU,IAAI,IAAI,EAAE;QACtB,OAAO,KAAK;MACd;MAEA,IAAIA,UAAU,CAACE,SAAS,CAAC,CAAC,EAAE;QAC1BF,UAAU,CAACG,MAAM,CAAC,CAAC;QAEnB,OAAO,IAAI;MACb;MAEA,OAAO,KAAK;IACd,CACF,CAAC;IAED,OAAO,MAAML,YAAY,CAACM,MAAM,CAAC,CAAC;EACpC,CAAC,EAAE,CAACR,GAAG,CAAC,CAAC;AACX"}
@@ -2,10 +2,10 @@ import * as React from 'react';
2
2
  /**
3
3
  * Set the document title for the active screen
4
4
  */
5
- export default function useDocumentTitle(ref) {
5
+ export function useDocumentTitle(ref) {
6
6
  let {
7
7
  enabled = true,
8
- formatter = (options, route) => (options === null || options === void 0 ? void 0 : options.title) ?? (route === null || route === void 0 ? void 0 : route.name)
8
+ formatter = (options, route) => options?.title ?? route?.name
9
9
  } = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
10
10
  React.useEffect(() => {
11
11
  if (!enabled) {
@@ -16,8 +16,8 @@ export default function useDocumentTitle(ref) {
16
16
  const title = formatter(navigation.getCurrentOptions(), navigation.getCurrentRoute());
17
17
  document.title = title;
18
18
  }
19
- return navigation === null || navigation === void 0 ? void 0 : navigation.addListener('options', e => {
20
- const title = formatter(e.data.options, navigation === null || navigation === void 0 ? void 0 : navigation.getCurrentRoute());
19
+ return navigation?.addListener('options', e => {
20
+ const title = formatter(e.data.options, navigation?.getCurrentRoute());
21
21
  document.title = title;
22
22
  });
23
23
  });
@@ -1 +1 @@
1
- {"version":3,"names":["React","useDocumentTitle","ref","enabled","formatter","options","route","title","name","useEffect","navigation","current","getCurrentOptions","getCurrentRoute","document","addListener","e","data"],"sourceRoot":"../../src","sources":["useDocumentTitle.tsx"],"mappings":"AAIA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAI9B;AACA;AACA;AACA,eAAe,SAASC,gBAAgB,CACtCC,GAA2D,EAK3D;EAAA,IAJA;IACEC,OAAO,GAAG,IAAI;IACdC,SAAS,GAAG,CAACC,OAAO,EAAEC,KAAK,KAAK,CAAAD,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEE,KAAK,MAAID,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEE,IAAI;EACzC,CAAC,uEAAG,CAAC,CAAC;EAE5BR,KAAK,CAACS,SAAS,CAAC,MAAM;IACpB,IAAI,CAACN,OAAO,EAAE;MACZ;IACF;IAEA,MAAMO,UAAU,GAAGR,GAAG,CAACS,OAAO;IAE9B,IAAID,UAAU,EAAE;MACd,MAAMH,KAAK,GAAGH,SAAS,CACrBM,UAAU,CAACE,iBAAiB,EAAE,EAC9BF,UAAU,CAACG,eAAe,EAAE,CAC7B;MAEDC,QAAQ,CAACP,KAAK,GAAGA,KAAK;IACxB;IAEA,OAAOG,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEK,WAAW,CAAC,SAAS,EAAGC,CAAC,IAAK;MAC/C,MAAMT,KAAK,GAAGH,SAAS,CAACY,CAAC,CAACC,IAAI,CAACZ,OAAO,EAAEK,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEG,eAAe,EAAE,CAAC;MAEtEC,QAAQ,CAACP,KAAK,GAAGA,KAAK;IACxB,CAAC,CAAC;EACJ,CAAC,CAAC;AACJ"}
1
+ {"version":3,"names":["React","useDocumentTitle","ref","enabled","formatter","options","route","title","name","arguments","length","undefined","useEffect","navigation","current","getCurrentOptions","getCurrentRoute","document","addListener","e","data"],"sourceRoot":"../../src","sources":["useDocumentTitle.tsx"],"mappings":"AAIA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAI9B;AACA;AACA;AACA,OAAO,SAASC,gBAAgBA,CAC9BC,GAA2D,EAK3D;EAAA,IAJA;IACEC,OAAO,GAAG,IAAI;IACdC,SAAS,GAAGA,CAACC,OAAO,EAAEC,KAAK,KAAKD,OAAO,EAAEE,KAAK,IAAID,KAAK,EAAEE;EACrC,CAAC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EAE5BT,KAAK,CAACY,SAAS,CAAC,MAAM;IACpB,IAAI,CAACT,OAAO,EAAE;MACZ;IACF;IAEA,MAAMU,UAAU,GAAGX,GAAG,CAACY,OAAO;IAE9B,IAAID,UAAU,EAAE;MACd,MAAMN,KAAK,GAAGH,SAAS,CACrBS,UAAU,CAACE,iBAAiB,CAAC,CAAC,EAC9BF,UAAU,CAACG,eAAe,CAAC,CAC7B,CAAC;MAEDC,QAAQ,CAACV,KAAK,GAAGA,KAAK;IACxB;IAEA,OAAOM,UAAU,EAAEK,WAAW,CAAC,SAAS,EAAGC,CAAC,IAAK;MAC/C,MAAMZ,KAAK,GAAGH,SAAS,CAACe,CAAC,CAACC,IAAI,CAACf,OAAO,EAAEQ,UAAU,EAAEG,eAAe,CAAC,CAAC,CAAC;MAEtEC,QAAQ,CAACV,KAAK,GAAGA,KAAK;IACxB,CAAC,CAAC;EACJ,CAAC,CAAC;AACJ"}
@@ -1,4 +1,4 @@
1
- export default function useDocumentTitle() {
1
+ export function useDocumentTitle() {
2
2
  // Noop for React Native
3
3
  }
4
4
  //# sourceMappingURL=useDocumentTitle.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useDocumentTitle"],"sourceRoot":"../../src","sources":["useDocumentTitle.native.tsx"],"mappings":"AAAA,eAAe,SAASA,gBAAgB,GAAG;EACzC;AAAA"}
1
+ {"version":3,"names":["useDocumentTitle"],"sourceRoot":"../../src","sources":["useDocumentTitle.native.tsx"],"mappings":"AAAA,OAAO,SAASA,gBAAgBA,CAAA,EAAG;EACjC;AAAA"}
@@ -1,6 +1,6 @@
1
1
  import { CommonActions, getActionFromState, getPathFromState, getStateFromPath, NavigationHelpersContext } from '@react-navigation/core';
2
2
  import * as React from 'react';
3
- import LinkingContext from './LinkingContext';
3
+ import { LinkingContext } from './LinkingContext';
4
4
  const getRootStateForNavigate = (navigation, state) => {
5
5
  const parent = navigation.getParent();
6
6
  if (parent) {
@@ -17,17 +17,17 @@ const getRootStateForNavigate = (navigation, state) => {
17
17
  };
18
18
 
19
19
  /**
20
- * Build destination link for a navigate action.
21
- * Useful for showing anchor tags on the web for buttons that perform navigation.
20
+ * Helpers to build href or action based on the linking options.
21
+ * @returns `buildHref` to build an `href` for screen and `buildAction` to build an action from an `href`.
22
22
  */
23
- export default function useLinkTools() {
23
+ export function useLinkBuilder() {
24
24
  const navigation = React.useContext(NavigationHelpersContext);
25
25
  const linking = React.useContext(LinkingContext);
26
26
  const buildHref = React.useCallback((name, params) => {
27
27
  const {
28
28
  options
29
29
  } = linking;
30
- if ((options === null || options === void 0 ? void 0 : options.enabled) === false) {
30
+ if (options?.enabled === false) {
31
31
  return undefined;
32
32
  }
33
33
  const state = navigation ? getRootStateForNavigate(navigation, {
@@ -46,22 +46,22 @@ export default function useLinkTools() {
46
46
  params
47
47
  }]
48
48
  };
49
- const path = options !== null && options !== void 0 && options.getPathFromState ? options.getPathFromState(state, options === null || options === void 0 ? void 0 : options.config) : getPathFromState(state, options === null || options === void 0 ? void 0 : options.config);
49
+ const path = options?.getPathFromState ? options.getPathFromState(state, options?.config) : getPathFromState(state, options?.config);
50
50
  return path;
51
51
  }, [linking, navigation]);
52
52
  const buildAction = React.useCallback(href => {
53
53
  if (!href.startsWith('/')) {
54
- throw new Error(`The path must start with '/' (${href}).`);
54
+ throw new Error(`The href must start with '/' (${href}).`);
55
55
  }
56
56
  const {
57
57
  options
58
58
  } = linking;
59
- const state = options !== null && options !== void 0 && options.getStateFromPath ? options.getStateFromPath(href, options.config) : getStateFromPath(href, options === null || options === void 0 ? void 0 : options.config);
59
+ const state = options?.getStateFromPath ? options.getStateFromPath(href, options.config) : getStateFromPath(href, options?.config);
60
60
  if (state) {
61
- const action = getActionFromState(state, options === null || options === void 0 ? void 0 : options.config);
61
+ const action = getActionFromState(state, options?.config);
62
62
  return action ?? CommonActions.reset(state);
63
63
  } else {
64
- throw new Error('Failed to parse the path to a navigation state.');
64
+ throw new Error('Failed to parse the href to a navigation state.');
65
65
  }
66
66
  }, [linking]);
67
67
  return {
@@ -69,4 +69,4 @@ export default function useLinkTools() {
69
69
  buildAction
70
70
  };
71
71
  }
72
- //# sourceMappingURL=useLinkTools.js.map
72
+ //# sourceMappingURL=useLinkBuilder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["CommonActions","getActionFromState","getPathFromState","getStateFromPath","NavigationHelpersContext","React","LinkingContext","getRootStateForNavigate","navigation","state","parent","getParent","parentState","getState","index","routes","useLinkBuilder","useContext","linking","buildHref","useCallback","name","params","options","enabled","undefined","path","config","buildAction","href","startsWith","Error","action","reset"],"sourceRoot":"../../src","sources":["useLinkBuilder.tsx"],"mappings":"AAAA,SACEA,aAAa,EACbC,kBAAkB,EAClBC,gBAAgB,EAChBC,gBAAgB,EAEhBC,wBAAwB,QAGnB,wBAAwB;AAC/B,OAAO,KAAKC,KAAK,MAAM,OAAO;AAE9B,SAASC,cAAc,QAAQ,kBAAkB;AAWjD,MAAMC,uBAAuB,GAAGA,CAC9BC,UAA4B,EAC5BC,KAAmB,KACF;EACjB,MAAMC,MAAM,GAAGF,UAAU,CAACG,SAAS,CAAC,CAAC;EAErC,IAAID,MAAM,EAAE;IACV,MAAME,WAAW,GAAGF,MAAM,CAACG,QAAQ,CAAC,CAAC;IAErC,OAAON,uBAAuB,CAACG,MAAM,EAAE;MACrCI,KAAK,EAAE,CAAC;MACRC,MAAM,EAAE,CACN;QACE,GAAGH,WAAW,CAACG,MAAM,CAACH,WAAW,CAACE,KAAK,CAAC;QACxCL,KAAK,EAAEA;MACT,CAAC;IAEL,CAAC,CAAC;EACJ;EAEA,OAAOA,KAAK;AACd,CAAC;;AAED;AACA;AACA;AACA;AACA,OAAO,SAASO,cAAcA,CAAA,EAAG;EAC/B,MAAMR,UAAU,GAAGH,KAAK,CAACY,UAAU,CAACb,wBAAwB,CAAC;EAC7D,MAAMc,OAAO,GAAGb,KAAK,CAACY,UAAU,CAACX,cAAc,CAAC;EAEhD,MAAMa,SAAS,GAAGd,KAAK,CAACe,WAAW,CACjC,CAACC,IAAY,EAAEC,MAAe,KAAK;IACjC,MAAM;MAAEC;IAAQ,CAAC,GAAGL,OAAO;IAE3B,IAAIK,OAAO,EAAEC,OAAO,KAAK,KAAK,EAAE;MAC9B,OAAOC,SAAS;IAClB;IAEA,MAAMhB,KAAK,GAAGD,UAAU,GACpBD,uBAAuB,CAACC,UAAU,EAAE;MAClCM,KAAK,EAAE,CAAC;MACRC,MAAM,EAAE,CAAC;QAAEM,IAAI;QAAEC;MAAO,CAAC;IAC3B,CAAC,CAAC;IACF;IACA;IACA;MACER,KAAK,EAAE,CAAC;MACRC,MAAM,EAAE,CAAC;QAAEM,IAAI;QAAEC;MAAO,CAAC;IAC3B,CAAC;IAEL,MAAMI,IAAI,GAAGH,OAAO,EAAErB,gBAAgB,GAClCqB,OAAO,CAACrB,gBAAgB,CAACO,KAAK,EAAEc,OAAO,EAAEI,MAAM,CAAC,GAChDzB,gBAAgB,CAACO,KAAK,EAAEc,OAAO,EAAEI,MAAM,CAAC;IAE5C,OAAOD,IAAI;EACb,CAAC,EACD,CAACR,OAAO,EAAEV,UAAU,CACtB,CAAC;EAED,MAAMoB,WAAW,GAAGvB,KAAK,CAACe,WAAW,CAClCS,IAAY,IAAK;IAChB,IAAI,CAACA,IAAI,CAACC,UAAU,CAAC,GAAG,CAAC,EAAE;MACzB,MAAM,IAAIC,KAAK,CAAE,iCAAgCF,IAAK,IAAG,CAAC;IAC5D;IAEA,MAAM;MAAEN;IAAQ,CAAC,GAAGL,OAAO;IAE3B,MAAMT,KAAK,GAAGc,OAAO,EAAEpB,gBAAgB,GACnCoB,OAAO,CAACpB,gBAAgB,CAAC0B,IAAI,EAAEN,OAAO,CAACI,MAAM,CAAC,GAC9CxB,gBAAgB,CAAC0B,IAAI,EAAEN,OAAO,EAAEI,MAAM,CAAC;IAE3C,IAAIlB,KAAK,EAAE;MACT,MAAMuB,MAAM,GAAG/B,kBAAkB,CAACQ,KAAK,EAAEc,OAAO,EAAEI,MAAM,CAAC;MAEzD,OAAOK,MAAM,IAAIhC,aAAa,CAACiC,KAAK,CAACxB,KAAK,CAAC;IAC7C,CAAC,MAAM;MACL,MAAM,IAAIsB,KAAK,CAAC,iDAAiD,CAAC;IACpE;EACF,CAAC,EACD,CAACb,OAAO,CACV,CAAC;EAED,OAAO;IACLC,SAAS;IACTS;EACF,CAAC;AACH"}