@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.
- package/lib/module/BaseNavigationContainer.js +128 -80
- package/lib/module/BaseNavigationContainer.js.map +1 -1
- package/lib/module/DataLoading.js +3 -1
- package/lib/module/DataLoading.js.map +1 -1
- package/lib/module/NavigationBuilderContext.js +2 -1
- package/lib/module/NavigationBuilderContext.js.map +1 -1
- package/lib/module/NavigationIndependentTree.js +13 -6
- package/lib/module/NavigationIndependentTree.js.map +1 -1
- package/lib/module/NavigationProvider.js +10 -1
- package/lib/module/NavigationProvider.js.map +1 -1
- package/lib/module/NavigationRootContext.js +8 -0
- package/lib/module/NavigationRootContext.js.map +1 -0
- package/lib/module/StaticNavigation.js +54 -19
- package/lib/module/StaticNavigation.js.map +1 -1
- package/lib/module/createNavigationContainerRef.js +1 -1
- package/lib/module/createNavigationContainerRef.js.map +1 -1
- package/lib/module/getStateFromPath.js +1 -1
- package/lib/module/index.js +1 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/internal.js +2 -0
- package/lib/module/internal.js.map +1 -0
- package/lib/module/types.js +0 -1
- package/lib/module/types.js.map +1 -1
- package/lib/module/useDescriptors.js +4 -4
- package/lib/module/useDescriptors.js.map +1 -1
- package/lib/module/useKeyedChildListeners.js +1 -0
- package/lib/module/useKeyedChildListeners.js.map +1 -1
- package/lib/module/useNavigation.js +2 -2
- package/lib/module/useNavigation.js.map +1 -1
- package/lib/module/useNavigationBuilder.js +11 -4
- package/lib/module/useNavigationBuilder.js.map +1 -1
- package/lib/module/useNavigationCache.js +23 -31
- package/lib/module/useNavigationCache.js.map +1 -1
- package/lib/module/useNavigationHelpers.js +18 -37
- package/lib/module/useNavigationHelpers.js.map +1 -1
- package/lib/module/useNavigationState.js +13 -6
- package/lib/module/useNavigationState.js.map +1 -1
- package/lib/module/useOnGetNavigation.js +26 -0
- package/lib/module/useOnGetNavigation.js.map +1 -0
- package/lib/typescript/src/BaseNavigationContainer.d.ts.map +1 -1
- package/lib/typescript/src/DataLoading.d.ts.map +1 -1
- package/lib/typescript/src/NavigationBuilderContext.d.ts +4 -1
- package/lib/typescript/src/NavigationBuilderContext.d.ts.map +1 -1
- package/lib/typescript/src/NavigationIndependentTree.d.ts.map +1 -1
- package/lib/typescript/src/NavigationProvider.d.ts +9 -5
- package/lib/typescript/src/NavigationProvider.d.ts.map +1 -1
- package/lib/typescript/src/NavigationRootContext.d.ts +8 -0
- package/lib/typescript/src/NavigationRootContext.d.ts.map +1 -0
- package/lib/typescript/src/StaticNavigation.d.ts.map +1 -1
- package/lib/typescript/src/createNavigationContainerRef.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +1 -1
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/internal.d.ts +3 -0
- package/lib/typescript/src/internal.d.ts.map +1 -0
- package/lib/typescript/src/types.d.ts +3 -6
- package/lib/typescript/src/types.d.ts.map +1 -1
- package/lib/typescript/src/useKeyedChildListeners.d.ts +1 -0
- package/lib/typescript/src/useKeyedChildListeners.d.ts.map +1 -1
- package/lib/typescript/src/useNavigationBuilder.d.ts.map +1 -1
- package/lib/typescript/src/useNavigationCache.d.ts.map +1 -1
- package/lib/typescript/src/useNavigationHelpers.d.ts +1 -2
- package/lib/typescript/src/useNavigationHelpers.d.ts.map +1 -1
- package/lib/typescript/src/useNavigationState.d.ts +2 -1
- package/lib/typescript/src/useNavigationState.d.ts.map +1 -1
- package/lib/typescript/src/useOnGetNavigation.d.ts +12 -0
- package/lib/typescript/src/useOnGetNavigation.d.ts.map +1 -0
- package/package.json +9 -3
- package/src/BaseNavigationContainer.tsx +181 -94
- package/src/DataLoading.tsx +4 -1
- package/src/NavigationBuilderContext.tsx +10 -1
- package/src/NavigationIndependentTree.tsx +13 -7
- package/src/NavigationProvider.tsx +13 -6
- package/src/NavigationRootContext.tsx +11 -0
- package/src/StaticNavigation.tsx +77 -19
- package/src/createNavigationContainerRef.tsx +0 -2
- package/src/getStateFromPath.tsx +1 -1
- package/src/index.tsx +1 -0
- package/src/internal.tsx +2 -0
- package/src/types.tsx +3 -7
- package/src/useDescriptors.tsx +3 -3
- package/src/useKeyedChildListeners.tsx +1 -0
- package/src/useNavigation.tsx +2 -2
- package/src/useNavigationBuilder.tsx +11 -4
- package/src/useNavigationCache.tsx +24 -33
- package/src/useNavigationHelpers.tsx +19 -38
- package/src/useNavigationState.tsx +16 -8
- package/src/useOnGetNavigation.tsx +29 -0
- package/lib/module/checkSerializable.js +0 -51
- package/lib/module/checkSerializable.js.map +0 -1
- package/lib/typescript/src/checkSerializable.d.ts +0 -14
- package/lib/typescript/src/checkSerializable.d.ts.map +0 -1
- 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
|
-
}
|