@react-navigation/core 8.0.0-alpha.31 → 8.0.0-alpha.33

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 (92) hide show
  1. package/lib/module/BaseNavigationContainer.js +128 -80
  2. package/lib/module/BaseNavigationContainer.js.map +1 -1
  3. package/lib/module/DataLoading.js +3 -1
  4. package/lib/module/DataLoading.js.map +1 -1
  5. package/lib/module/NavigationBuilderContext.js +2 -1
  6. package/lib/module/NavigationBuilderContext.js.map +1 -1
  7. package/lib/module/NavigationIndependentTree.js +13 -6
  8. package/lib/module/NavigationIndependentTree.js.map +1 -1
  9. package/lib/module/NavigationProvider.js +10 -1
  10. package/lib/module/NavigationProvider.js.map +1 -1
  11. package/lib/module/NavigationRootContext.js +8 -0
  12. package/lib/module/NavigationRootContext.js.map +1 -0
  13. package/lib/module/StaticNavigation.js +54 -19
  14. package/lib/module/StaticNavigation.js.map +1 -1
  15. package/lib/module/createNavigationContainerRef.js +1 -1
  16. package/lib/module/createNavigationContainerRef.js.map +1 -1
  17. package/lib/module/getStateFromPath.js +1 -1
  18. package/lib/module/index.js +1 -1
  19. package/lib/module/index.js.map +1 -1
  20. package/lib/module/internal.js +2 -0
  21. package/lib/module/internal.js.map +1 -0
  22. package/lib/module/types.js +0 -1
  23. package/lib/module/types.js.map +1 -1
  24. package/lib/module/useDescriptors.js +4 -4
  25. package/lib/module/useDescriptors.js.map +1 -1
  26. package/lib/module/useKeyedChildListeners.js +1 -0
  27. package/lib/module/useKeyedChildListeners.js.map +1 -1
  28. package/lib/module/useNavigation.js +2 -2
  29. package/lib/module/useNavigation.js.map +1 -1
  30. package/lib/module/useNavigationBuilder.js +11 -4
  31. package/lib/module/useNavigationBuilder.js.map +1 -1
  32. package/lib/module/useNavigationCache.js +23 -31
  33. package/lib/module/useNavigationCache.js.map +1 -1
  34. package/lib/module/useNavigationHelpers.js +18 -37
  35. package/lib/module/useNavigationHelpers.js.map +1 -1
  36. package/lib/module/useNavigationState.js +13 -6
  37. package/lib/module/useNavigationState.js.map +1 -1
  38. package/lib/module/useOnGetNavigation.js +26 -0
  39. package/lib/module/useOnGetNavigation.js.map +1 -0
  40. package/lib/typescript/src/BaseNavigationContainer.d.ts.map +1 -1
  41. package/lib/typescript/src/DataLoading.d.ts.map +1 -1
  42. package/lib/typescript/src/NavigationBuilderContext.d.ts +4 -1
  43. package/lib/typescript/src/NavigationBuilderContext.d.ts.map +1 -1
  44. package/lib/typescript/src/NavigationIndependentTree.d.ts.map +1 -1
  45. package/lib/typescript/src/NavigationProvider.d.ts +9 -5
  46. package/lib/typescript/src/NavigationProvider.d.ts.map +1 -1
  47. package/lib/typescript/src/NavigationRootContext.d.ts +8 -0
  48. package/lib/typescript/src/NavigationRootContext.d.ts.map +1 -0
  49. package/lib/typescript/src/StaticNavigation.d.ts.map +1 -1
  50. package/lib/typescript/src/createNavigationContainerRef.d.ts.map +1 -1
  51. package/lib/typescript/src/index.d.ts +1 -1
  52. package/lib/typescript/src/index.d.ts.map +1 -1
  53. package/lib/typescript/src/internal.d.ts +3 -0
  54. package/lib/typescript/src/internal.d.ts.map +1 -0
  55. package/lib/typescript/src/types.d.ts +3 -6
  56. package/lib/typescript/src/types.d.ts.map +1 -1
  57. package/lib/typescript/src/useKeyedChildListeners.d.ts +1 -0
  58. package/lib/typescript/src/useKeyedChildListeners.d.ts.map +1 -1
  59. package/lib/typescript/src/useNavigationBuilder.d.ts.map +1 -1
  60. package/lib/typescript/src/useNavigationCache.d.ts.map +1 -1
  61. package/lib/typescript/src/useNavigationHelpers.d.ts +1 -2
  62. package/lib/typescript/src/useNavigationHelpers.d.ts.map +1 -1
  63. package/lib/typescript/src/useNavigationState.d.ts +2 -1
  64. package/lib/typescript/src/useNavigationState.d.ts.map +1 -1
  65. package/lib/typescript/src/useOnGetNavigation.d.ts +12 -0
  66. package/lib/typescript/src/useOnGetNavigation.d.ts.map +1 -0
  67. package/package.json +9 -3
  68. package/src/BaseNavigationContainer.tsx +181 -94
  69. package/src/DataLoading.tsx +4 -1
  70. package/src/NavigationBuilderContext.tsx +10 -1
  71. package/src/NavigationIndependentTree.tsx +13 -7
  72. package/src/NavigationProvider.tsx +13 -6
  73. package/src/NavigationRootContext.tsx +11 -0
  74. package/src/StaticNavigation.tsx +77 -19
  75. package/src/createNavigationContainerRef.tsx +0 -2
  76. package/src/getStateFromPath.tsx +1 -1
  77. package/src/index.tsx +1 -0
  78. package/src/internal.tsx +2 -0
  79. package/src/types.tsx +3 -7
  80. package/src/useDescriptors.tsx +3 -3
  81. package/src/useKeyedChildListeners.tsx +1 -0
  82. package/src/useNavigation.tsx +2 -2
  83. package/src/useNavigationBuilder.tsx +11 -4
  84. package/src/useNavigationCache.tsx +24 -33
  85. package/src/useNavigationHelpers.tsx +19 -38
  86. package/src/useNavigationState.tsx +16 -8
  87. package/src/useOnGetNavigation.tsx +29 -0
  88. package/lib/module/checkSerializable.js +0 -51
  89. package/lib/module/checkSerializable.js.map +0 -1
  90. package/lib/typescript/src/checkSerializable.d.ts +0 -14
  91. package/lib/typescript/src/checkSerializable.d.ts.map +0 -1
  92. package/src/checkSerializable.tsx +0 -90
@@ -1,51 +0,0 @@
1
- "use strict";
2
-
3
- const checkSerializableWithoutCircularReference = (o, seen, location) => {
4
- if (o === undefined || o === null || typeof o === 'boolean' || typeof o === 'number' || typeof o === 'string') {
5
- return undefined;
6
- }
7
- if (Object.prototype.toString.call(o) !== '[object Object]' && !Array.isArray(o)) {
8
- return {
9
- serializable: false,
10
- location: location.slice(),
11
- reason: typeof o === 'function' ? 'Function' : String(o)
12
- };
13
- }
14
- if (seen.has(o)) {
15
- return {
16
- serializable: false,
17
- reason: 'Circular reference',
18
- location: location.slice()
19
- };
20
- }
21
- seen.add(o);
22
- if (Array.isArray(o)) {
23
- for (let i = 0; i < o.length; i++) {
24
- location.push(i);
25
- const childResult = checkSerializableWithoutCircularReference(o[i], seen, location);
26
- location.pop();
27
- if (childResult) {
28
- seen.delete(o);
29
- return childResult;
30
- }
31
- }
32
- } else {
33
- for (const key in o) {
34
- location.push(key);
35
- const childResult = checkSerializableWithoutCircularReference(o[key], seen, location);
36
- location.pop();
37
- if (childResult) {
38
- seen.delete(o);
39
- return childResult;
40
- }
41
- }
42
- }
43
- seen.delete(o);
44
- return undefined;
45
- };
46
- export function checkSerializable(o) {
47
- return checkSerializableWithoutCircularReference(o, new Set(), []) ?? {
48
- serializable: true
49
- };
50
- }
51
- //# sourceMappingURL=checkSerializable.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["checkSerializableWithoutCircularReference","o","seen","location","undefined","Object","prototype","toString","call","Array","isArray","serializable","slice","reason","String","has","add","i","length","push","childResult","pop","delete","key","checkSerializable","Set"],"sourceRoot":"../../src","sources":["checkSerializable.tsx"],"mappings":";;AAUA,MAAMA,yCAAyC,GAAGA,CAChDC,CAAyB,EACzBC,IAAc,EACdC,QAA6B,KACL;EACxB,IACEF,CAAC,KAAKG,SAAS,IACfH,CAAC,KAAK,IAAI,IACV,OAAOA,CAAC,KAAK,SAAS,IACtB,OAAOA,CAAC,KAAK,QAAQ,IACrB,OAAOA,CAAC,KAAK,QAAQ,EACrB;IACA,OAAOG,SAAS;EAClB;EAEA,IACEC,MAAM,CAACC,SAAS,CAACC,QAAQ,CAACC,IAAI,CAACP,CAAC,CAAC,KAAK,iBAAiB,IACvD,CAACQ,KAAK,CAACC,OAAO,CAACT,CAAC,CAAC,EACjB;IACA,OAAO;MACLU,YAAY,EAAE,KAAK;MACnBR,QAAQ,EAAEA,QAAQ,CAACS,KAAK,CAAC,CAAC;MAC1BC,MAAM,EAAE,OAAOZ,CAAC,KAAK,UAAU,GAAG,UAAU,GAAGa,MAAM,CAACb,CAAC;IACzD,CAAC;EACH;EAEA,IAAIC,IAAI,CAACa,GAAG,CAACd,CAAC,CAAC,EAAE;IACf,OAAO;MACLU,YAAY,EAAE,KAAK;MACnBE,MAAM,EAAE,oBAAoB;MAC5BV,QAAQ,EAAEA,QAAQ,CAACS,KAAK,CAAC;IAC3B,CAAC;EACH;EAEAV,IAAI,CAACc,GAAG,CAACf,CAAC,CAAC;EAEX,IAAIQ,KAAK,CAACC,OAAO,CAACT,CAAC,CAAC,EAAE;IACpB,KAAK,IAAIgB,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGhB,CAAC,CAACiB,MAAM,EAAED,CAAC,EAAE,EAAE;MACjCd,QAAQ,CAACgB,IAAI,CAACF,CAAC,CAAC;MAChB,MAAMG,WAAW,GAAGpB,yCAAyC,CAC3DC,CAAC,CAACgB,CAAC,CAAC,EACJf,IAAI,EACJC,QACF,CAAC;MACDA,QAAQ,CAACkB,GAAG,CAAC,CAAC;MAEd,IAAID,WAAW,EAAE;QACflB,IAAI,CAACoB,MAAM,CAACrB,CAAC,CAAC;QACd,OAAOmB,WAAW;MACpB;IACF;EACF,CAAC,MAAM;IACL,KAAK,MAAMG,GAAG,IAAItB,CAAC,EAAE;MACnBE,QAAQ,CAACgB,IAAI,CAACI,GAAG,CAAC;MAClB,MAAMH,WAAW,GAAGpB,yCAAyC,CAC3DC,CAAC,CAACsB,GAAG,CAAC,EACNrB,IAAI,EACJC,QACF,CAAC;MACDA,QAAQ,CAACkB,GAAG,CAAC,CAAC;MAEd,IAAID,WAAW,EAAE;QACflB,IAAI,CAACoB,MAAM,CAACrB,CAAC,CAAC;QACd,OAAOmB,WAAW;MACpB;IACF;EACF;EAEAlB,IAAI,CAACoB,MAAM,CAACrB,CAAC,CAAC;EAEd,OAAOG,SAAS;AAClB,CAAC;AAED,OAAO,SAASoB,iBAAiBA,CAACvB,CAAyB,EAAU;EACnE,OACED,yCAAyC,CAACC,CAAC,EAAE,IAAIwB,GAAG,CAAM,CAAC,EAAE,EAAE,CAAC,IAAI;IAClEd,YAAY,EAAE;EAChB,CAAC;AAEL","ignoreList":[]}
@@ -1,14 +0,0 @@
1
- type Success = {
2
- serializable: true;
3
- };
4
- type Failure = {
5
- serializable: false;
6
- location: (string | number)[];
7
- reason: string;
8
- };
9
- type Result = Success | Failure;
10
- export declare function checkSerializable(o: {
11
- [key: string]: any;
12
- }): Result;
13
- export {};
14
- //# sourceMappingURL=checkSerializable.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"checkSerializable.d.ts","sourceRoot":"","sources":["../../../src/checkSerializable.tsx"],"names":[],"mappings":"AAAA,KAAK,OAAO,GAAG;IAAE,YAAY,EAAE,IAAI,CAAA;CAAE,CAAC;AAEtC,KAAK,OAAO,GAAG;IACb,YAAY,EAAE,KAAK,CAAC;IACpB,QAAQ,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IAC9B,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,KAAK,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;AA2EhC,wBAAgB,iBAAiB,CAAC,CAAC,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,GAAG,MAAM,CAMnE"}
@@ -1,90 +0,0 @@
1
- type Success = { serializable: true };
2
-
3
- type Failure = {
4
- serializable: false;
5
- location: (string | number)[];
6
- reason: string;
7
- };
8
-
9
- type Result = Success | Failure;
10
-
11
- const checkSerializableWithoutCircularReference = (
12
- o: { [key: string]: any },
13
- seen: Set<any>,
14
- location: (string | number)[]
15
- ): Failure | undefined => {
16
- if (
17
- o === undefined ||
18
- o === null ||
19
- typeof o === 'boolean' ||
20
- typeof o === 'number' ||
21
- typeof o === 'string'
22
- ) {
23
- return undefined;
24
- }
25
-
26
- if (
27
- Object.prototype.toString.call(o) !== '[object Object]' &&
28
- !Array.isArray(o)
29
- ) {
30
- return {
31
- serializable: false,
32
- location: location.slice(),
33
- reason: typeof o === 'function' ? 'Function' : String(o),
34
- };
35
- }
36
-
37
- if (seen.has(o)) {
38
- return {
39
- serializable: false,
40
- reason: 'Circular reference',
41
- location: location.slice(),
42
- };
43
- }
44
-
45
- seen.add(o);
46
-
47
- if (Array.isArray(o)) {
48
- for (let i = 0; i < o.length; i++) {
49
- location.push(i);
50
- const childResult = checkSerializableWithoutCircularReference(
51
- o[i],
52
- seen,
53
- location
54
- );
55
- location.pop();
56
-
57
- if (childResult) {
58
- seen.delete(o);
59
- return childResult;
60
- }
61
- }
62
- } else {
63
- for (const key in o) {
64
- location.push(key);
65
- const childResult = checkSerializableWithoutCircularReference(
66
- o[key],
67
- seen,
68
- location
69
- );
70
- location.pop();
71
-
72
- if (childResult) {
73
- seen.delete(o);
74
- return childResult;
75
- }
76
- }
77
- }
78
-
79
- seen.delete(o);
80
-
81
- return undefined;
82
- };
83
-
84
- export function checkSerializable(o: { [key: string]: any }): Result {
85
- return (
86
- checkSerializableWithoutCircularReference(o, new Set<any>(), []) ?? {
87
- serializable: true,
88
- }
89
- );
90
- }