@react-navigation/core 7.2.2 → 7.3.1
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/commonjs/StaticNavigation.js +2 -2
- package/lib/commonjs/StaticNavigation.js.map +1 -1
- package/lib/commonjs/getPatternParts.js +1 -1
- package/lib/commonjs/getPatternParts.js.map +1 -1
- package/lib/commonjs/getStateFromPath.js +33 -10
- package/lib/commonjs/getStateFromPath.js.map +1 -1
- package/lib/commonjs/useScheduleUpdate.js +2 -1
- package/lib/commonjs/useScheduleUpdate.js.map +1 -1
- package/lib/commonjs/validatePathConfig.js +9 -2
- package/lib/commonjs/validatePathConfig.js.map +1 -1
- package/lib/module/StaticNavigation.js +2 -2
- package/lib/module/StaticNavigation.js.map +1 -1
- package/lib/module/getPatternParts.js +1 -1
- package/lib/module/getPatternParts.js.map +1 -1
- package/lib/module/getStateFromPath.js +33 -10
- package/lib/module/getStateFromPath.js.map +1 -1
- package/lib/module/useScheduleUpdate.js +3 -1
- package/lib/module/useScheduleUpdate.js.map +1 -1
- package/lib/module/validatePathConfig.js +9 -2
- package/lib/module/validatePathConfig.js.map +1 -1
- package/lib/typescript/commonjs/src/StaticNavigation.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/getStateFromPath.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/types.d.ts +8 -6
- package/lib/typescript/commonjs/src/types.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/useScheduleUpdate.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/validatePathConfig.d.ts.map +1 -1
- package/lib/typescript/module/src/StaticNavigation.d.ts.map +1 -1
- package/lib/typescript/module/src/getStateFromPath.d.ts.map +1 -1
- package/lib/typescript/module/src/types.d.ts +8 -6
- package/lib/typescript/module/src/types.d.ts.map +1 -1
- package/lib/typescript/module/src/useScheduleUpdate.d.ts.map +1 -1
- package/lib/typescript/module/src/validatePathConfig.d.ts.map +1 -1
- package/package.json +4 -4
- package/src/StaticNavigation.tsx +2 -4
- package/src/getPatternParts.tsx +1 -1
- package/src/getStateFromPath.tsx +55 -26
- package/src/types.tsx +9 -8
- package/src/useScheduleUpdate.tsx +3 -1
- package/src/validatePathConfig.tsx +9 -2
|
@@ -197,8 +197,8 @@ function createPathConfigForStaticNavigation(tree, options, auto) {
|
|
|
197
197
|
Object.assign(screenConfig, item.linking);
|
|
198
198
|
}
|
|
199
199
|
if (typeof screenConfig.path === 'string') {
|
|
200
|
-
|
|
201
|
-
|
|
200
|
+
screenConfig.path = screenConfig.path.replace(/^\//, '') // Remove extra leading slash
|
|
201
|
+
.replace(/\/$/, ''); // Remove extra trailing slash
|
|
202
202
|
}
|
|
203
203
|
}
|
|
204
204
|
let screens;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","React","_reactIs","_useRoute","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","MemoizedScreen","memo","component","route","useRoute","children","createElement","displayName","getItemsFromScreens","Screen","screens","entries","map","name","item","props","useIf","isNavigator","screen","if","_if","rest","isValidElementType","createComponentForStaticNavigation","Error","element","jsx","shouldRender","tree","Navigator","Group","config","groups","items","key","push","group","groupItems","navigationKey","NavigatorComponent","createPathConfigForStaticNavigation","options","auto","initialScreenConfig","createPathConfigForTree","o","skipInitialDetection","createPathConfigForScreens","initialRouteName","fromEntries","sort","b","screenConfig","linking","path","assign","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","React","_reactIs","_useRoute","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","MemoizedScreen","memo","component","route","useRoute","children","createElement","displayName","getItemsFromScreens","Screen","screens","entries","map","name","item","props","useIf","isNavigator","screen","if","_if","rest","isValidElementType","createComponentForStaticNavigation","Error","element","jsx","shouldRender","tree","Navigator","Group","config","groups","items","key","push","group","groupItems","navigationKey","NavigatorComponent","createPathConfigForStaticNavigation","options","auto","initialScreenConfig","createPathConfigForTree","o","skipInitialDetection","createPathConfigForScreens","initialRouteName","fromEntries","sort","b","screenConfig","linking","path","assign","replace","skipInitialDetectionInChild","undefined","toLowerCase","filter","keys","length","forEach"],"sourceRoot":"../../src","sources":["StaticNavigation.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -26,7 +26,7 @@ function getPatternParts(path) {
|
|
|
26
26
|
// The segment must start with a colon if it's a param
|
|
27
27
|
if (current.segment === ':') {
|
|
28
28
|
isParam = true;
|
|
29
|
-
} else {
|
|
29
|
+
} else if (!isRegex) {
|
|
30
30
|
throw new Error(`Encountered ':' in the middle of a segment in path: ${path}`);
|
|
31
31
|
}
|
|
32
32
|
} else if (char === '(') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["getPatternParts","path","parts","current","segment","isRegex","isParam","regexInnerParens","i","length","char","Error","regex","param","optional","replace","push","params","map","part","filter","Boolean","index","entries","indexOf"],"sourceRoot":"../../src","sources":["getPatternParts.tsx"],"mappings":";;;;;;AAOA;AACA;AACA;AACO,SAASA,eAAeA,CAACC,IAAY,EAAiB;EAC3D,MAAMC,KAAoB,GAAG,EAAE;EAE/B,IAAIC,OAAoB,GAAG;IAAEC,OAAO,EAAE;EAAG,CAAC;EAE1C,IAAIC,OAAO,GAAG,KAAK;EACnB,IAAIC,OAAO,GAAG,KAAK;EACnB,IAAIC,gBAAgB,GAAG,CAAC;;EAExB;EACA,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,IAAIP,IAAI,CAACQ,MAAM,EAAED,CAAC,EAAE,EAAE;IACrC,MAAME,IAAI,GAAGT,IAAI,CAACO,CAAC,CAAC;IAEpB,IAAIE,IAAI,IAAI,IAAI,EAAE;MAChBP,OAAO,CAACC,OAAO,IAAIM,IAAI;IACzB;IAEA,IAAIA,IAAI,KAAK,GAAG,EAAE;MAChB;MACA,IAAIP,OAAO,CAACC,OAAO,KAAK,GAAG,EAAE;QAC3BE,OAAO,GAAG,IAAI;MAChB,CAAC,MAAM;
|
|
1
|
+
{"version":3,"names":["getPatternParts","path","parts","current","segment","isRegex","isParam","regexInnerParens","i","length","char","Error","regex","param","optional","replace","push","params","map","part","filter","Boolean","index","entries","indexOf"],"sourceRoot":"../../src","sources":["getPatternParts.tsx"],"mappings":";;;;;;AAOA;AACA;AACA;AACO,SAASA,eAAeA,CAACC,IAAY,EAAiB;EAC3D,MAAMC,KAAoB,GAAG,EAAE;EAE/B,IAAIC,OAAoB,GAAG;IAAEC,OAAO,EAAE;EAAG,CAAC;EAE1C,IAAIC,OAAO,GAAG,KAAK;EACnB,IAAIC,OAAO,GAAG,KAAK;EACnB,IAAIC,gBAAgB,GAAG,CAAC;;EAExB;EACA,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,IAAIP,IAAI,CAACQ,MAAM,EAAED,CAAC,EAAE,EAAE;IACrC,MAAME,IAAI,GAAGT,IAAI,CAACO,CAAC,CAAC;IAEpB,IAAIE,IAAI,IAAI,IAAI,EAAE;MAChBP,OAAO,CAACC,OAAO,IAAIM,IAAI;IACzB;IAEA,IAAIA,IAAI,KAAK,GAAG,EAAE;MAChB;MACA,IAAIP,OAAO,CAACC,OAAO,KAAK,GAAG,EAAE;QAC3BE,OAAO,GAAG,IAAI;MAChB,CAAC,MAAM,IAAI,CAACD,OAAO,EAAE;QACnB,MAAM,IAAIM,KAAK,CACb,uDAAuDV,IAAI,EAC7D,CAAC;MACH;IACF,CAAC,MAAM,IAAIS,IAAI,KAAK,GAAG,EAAE;MACvB,IAAIJ,OAAO,EAAE;QACX,IAAID,OAAO,EAAE;UACX;UACAE,gBAAgB,EAAE;QACpB,CAAC,MAAM;UACLF,OAAO,GAAG,IAAI;QAChB;MACF,CAAC,MAAM;QACL,MAAM,IAAIM,KAAK,CACb,kDAAkDV,IAAI,EACxD,CAAC;MACH;IACF,CAAC,MAAM,IAAIS,IAAI,KAAK,GAAG,EAAE;MACvB,IAAIJ,OAAO,IAAID,OAAO,EAAE;QACtB,IAAIE,gBAAgB,EAAE;UACpB;UACAA,gBAAgB,EAAE;UAClBJ,OAAO,CAACS,KAAK,IAAIF,IAAI;QACvB,CAAC,MAAM;UACLL,OAAO,GAAG,KAAK;UACfC,OAAO,GAAG,KAAK;QACjB;MACF,CAAC,MAAM;QACL,MAAM,IAAIK,KAAK,CACb,kDAAkDV,IAAI,EACxD,CAAC;MACH;IACF,CAAC,MAAM,IAAIS,IAAI,KAAK,GAAG,EAAE;MACvB,IAAIP,OAAO,CAACU,KAAK,EAAE;QACjBP,OAAO,GAAG,KAAK;QAEfH,OAAO,CAACW,QAAQ,GAAG,IAAI;MACzB,CAAC,MAAM;QACL,MAAM,IAAIH,KAAK,CACb,kDAAkDV,IAAI,EACxD,CAAC;MACH;IACF,CAAC,MAAM,IAAIS,IAAI,IAAI,IAAI,IAAKA,IAAI,KAAK,GAAG,IAAI,CAACL,OAAQ,EAAE;MACrDC,OAAO,GAAG,KAAK;;MAEf;MACAH,OAAO,CAACC,OAAO,GAAGD,OAAO,CAACC,OAAO,CAACW,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;MAEpD,IAAIZ,OAAO,CAACC,OAAO,KAAK,EAAE,EAAE;QAC1B;MACF;MAEA,IAAID,OAAO,CAACU,KAAK,EAAE;QACjBV,OAAO,CAACU,KAAK,GAAGV,OAAO,CAACU,KAAK,CAACE,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;MACjD;MAEA,IAAIZ,OAAO,CAACS,KAAK,EAAE;QACjBT,OAAO,CAACS,KAAK,GAAGT,OAAO,CAACS,KAAK,CAACG,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAACA,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;MACrE;MAEAb,KAAK,CAACc,IAAI,CAACb,OAAO,CAAC;MAEnB,IAAIO,IAAI,IAAI,IAAI,EAAE;QAChB;MACF;MAEAP,OAAO,GAAG;QAAEC,OAAO,EAAE;MAAG,CAAC;IAC3B;IAEA,IAAIC,OAAO,EAAE;MACXF,OAAO,CAACS,KAAK,GAAGT,OAAO,CAACS,KAAK,IAAI,EAAE;MACnCT,OAAO,CAACS,KAAK,IAAIF,IAAI;IACvB;IAEA,IAAIJ,OAAO,IAAI,CAACD,OAAO,EAAE;MACvBF,OAAO,CAACU,KAAK,GAAGV,OAAO,CAACU,KAAK,IAAI,EAAE;MACnCV,OAAO,CAACU,KAAK,IAAIH,IAAI;IACvB;EACF;EAEA,IAAIL,OAAO,EAAE;IACX,MAAM,IAAIM,KAAK,CAAC,uCAAuCV,IAAI,EAAE,CAAC;EAChE;EAEA,MAAMgB,MAAM,GAAGf,KAAK,CAACgB,GAAG,CAAEC,IAAI,IAAKA,IAAI,CAACN,KAAK,CAAC,CAACO,MAAM,CAACC,OAAO,CAAC;EAE9D,KAAK,MAAM,CAACC,KAAK,EAAET,KAAK,CAAC,IAAII,MAAM,CAACM,OAAO,CAAC,CAAC,EAAE;IAC7C,IAAIN,MAAM,CAACO,OAAO,CAACX,KAAK,CAAC,KAAKS,KAAK,EAAE;MACnC,MAAM,IAAIX,KAAK,CAAC,yBAAyBE,KAAK,oBAAoBZ,IAAI,EAAE,CAAC;IAC3E;EACF;EAEA,OAAOC,KAAK;AACd","ignoreList":[]}
|
|
@@ -38,8 +38,7 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e
|
|
|
38
38
|
function getStateFromPath(path, options) {
|
|
39
39
|
const {
|
|
40
40
|
initialRoutes,
|
|
41
|
-
configs
|
|
42
|
-
configWithRegexes
|
|
41
|
+
configs
|
|
43
42
|
} = getConfigResources(options);
|
|
44
43
|
const screens = options?.screens;
|
|
45
44
|
let remaining = path.replace(/\/+/g, '/') // Replace multiple slash (//) with single ones
|
|
@@ -94,7 +93,7 @@ function getStateFromPath(path, options) {
|
|
|
94
93
|
const {
|
|
95
94
|
routes,
|
|
96
95
|
remainingPath
|
|
97
|
-
} = matchAgainstConfigs(remaining,
|
|
96
|
+
} = matchAgainstConfigs(remaining, configs);
|
|
98
97
|
if (routes !== undefined) {
|
|
99
98
|
// This will always be empty if full path matched
|
|
100
99
|
current = createNestedStateObject(path, routes, initialRoutes, configs);
|
|
@@ -124,7 +123,7 @@ function prepareConfigResources(options) {
|
|
|
124
123
|
(0, _validatePathConfig.validatePathConfig)(options);
|
|
125
124
|
}
|
|
126
125
|
const initialRoutes = getInitialRoutes(options);
|
|
127
|
-
const configs =
|
|
126
|
+
const configs = getSortedNormalizedConfigs(initialRoutes, options?.screens);
|
|
128
127
|
checkForDuplicatedConfigs(configs);
|
|
129
128
|
const configWithRegexes = getConfigsWithRegexes(configs);
|
|
130
129
|
return {
|
|
@@ -143,7 +142,7 @@ function getInitialRoutes(options) {
|
|
|
143
142
|
}
|
|
144
143
|
return initialRoutes;
|
|
145
144
|
}
|
|
146
|
-
function
|
|
145
|
+
function getSortedNormalizedConfigs(initialRoutes, screens = {}) {
|
|
147
146
|
// Create a normalized configs array which will be easier to use
|
|
148
147
|
return [].concat(...Object.keys(screens).map(key => createNormalizedConfigs(key, screens, initialRoutes, [], [], []))).sort((a, b) => {
|
|
149
148
|
// Sort config from most specific to least specific:
|
|
@@ -305,8 +304,6 @@ const createNormalizedConfigs = (screen, routeConfig, initials, paths, parentScr
|
|
|
305
304
|
const configs = [];
|
|
306
305
|
routeNames.push(screen);
|
|
307
306
|
parentScreens.push(screen);
|
|
308
|
-
|
|
309
|
-
// @ts-expect-error: we can't strongly typecheck this for now
|
|
310
307
|
const config = routeConfig[screen];
|
|
311
308
|
if (typeof config === 'string') {
|
|
312
309
|
paths.push({
|
|
@@ -319,8 +316,30 @@ const createNormalizedConfigs = (screen, routeConfig, initials, paths, parentScr
|
|
|
319
316
|
// it can have `path` property and
|
|
320
317
|
// it could have `screens` prop which has nested configs
|
|
321
318
|
if (typeof config.path === 'string') {
|
|
322
|
-
if (config.exact && config.path
|
|
323
|
-
throw new Error(
|
|
319
|
+
if (config.exact && config.path == null) {
|
|
320
|
+
throw new Error(`Screen '${screen}' doesn't specify a 'path'. A 'path' needs to be specified when specifying 'exact: true'. If you don't want this screen in the URL, specify it as empty string, e.g. \`path: ''\`.`);
|
|
321
|
+
}
|
|
322
|
+
|
|
323
|
+
// We should add alias configs after the main config
|
|
324
|
+
// So unless they are more specific, main config will be matched first
|
|
325
|
+
const aliasConfigs = [];
|
|
326
|
+
if (config.alias) {
|
|
327
|
+
for (const alias of config.alias) {
|
|
328
|
+
if (typeof alias === 'string') {
|
|
329
|
+
aliasConfigs.push(createConfigItem(screen, [...routeNames], [...paths, {
|
|
330
|
+
screen,
|
|
331
|
+
path: alias
|
|
332
|
+
}], config.parse));
|
|
333
|
+
} else if (typeof alias === 'object') {
|
|
334
|
+
aliasConfigs.push(createConfigItem(screen, [...routeNames], alias.exact ? [{
|
|
335
|
+
screen,
|
|
336
|
+
path: alias.path
|
|
337
|
+
}] : [...paths, {
|
|
338
|
+
screen,
|
|
339
|
+
path: alias.path
|
|
340
|
+
}], alias.parse));
|
|
341
|
+
}
|
|
342
|
+
}
|
|
324
343
|
}
|
|
325
344
|
if (config.exact) {
|
|
326
345
|
// If it's an exact path, we don't need to keep track of the parent screens
|
|
@@ -332,6 +351,10 @@ const createNormalizedConfigs = (screen, routeConfig, initials, paths, parentScr
|
|
|
332
351
|
path: config.path
|
|
333
352
|
});
|
|
334
353
|
configs.push(createConfigItem(screen, [...routeNames], [...paths], config.parse));
|
|
354
|
+
configs.push(...aliasConfigs);
|
|
355
|
+
}
|
|
356
|
+
if (typeof config !== 'string' && typeof config.path !== 'string' && config.alias?.length) {
|
|
357
|
+
throw new Error(`Screen '${screen}' doesn't specify a 'path'. A 'path' needs to be specified in order to use 'alias'.`);
|
|
335
358
|
}
|
|
336
359
|
if (config.screens) {
|
|
337
360
|
// property `initialRouteName` without `screens` has no purpose
|
|
@@ -369,7 +392,7 @@ const createConfigItem = (screen, routeNames, paths, parse) => {
|
|
|
369
392
|
return `(((?<param_${i}>${reg})\\/)${it.optional ? '?' : ''})`;
|
|
370
393
|
}
|
|
371
394
|
return `${it.segment === '*' ? '.*' : (0, _escapeStringRegexp.default)(it.segment)}\\/`;
|
|
372
|
-
}).join('')})
|
|
395
|
+
}).join('')})$`) : undefined;
|
|
373
396
|
const segments = parts.map(it => it.segment);
|
|
374
397
|
const params = parts.map((it, i) => it.param ? {
|
|
375
398
|
index: i,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_escapeStringRegexp","_interopRequireDefault","require","queryString","_interopRequireWildcard","_arrayStartsWith","_findFocusedRoute","_getPatternParts","_isArrayEqual","_validatePathConfig","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","getStateFromPath","path","options","initialRoutes","configs","configWithRegexes","getConfigResources","screens","remaining","replace","endsWith","prefix","normalizedPrefix","startsWith","undefined","routes","split","filter","Boolean","map","segment","name","decodeURIComponent","length","createNestedStateObject","match","find","config","segments","join","routeNames","result","current","remainingPath","matchAgainstConfigs","cachedConfigResources","prepareConfigResources","cached","resources","validatePathConfig","getInitialRoutes","getNormalizedConfigs","checkForDuplicatedConfigs","getConfigsWithRegexes","initialRouteName","push","parentScreens","concat","keys","key","createNormalizedConfigs","sort","b","isArrayEqual","localeCompare","arrayStartsWith","Math","max","aWildCard","bWildCard","aParam","bParam","aRegex","includes","bRegex","reduce","acc","pattern","intersects","every","it","Error","assign","c","regex","RegExp","source","routeName","routeConfig","screen","params","groups","fromEntries","entries","value","index","Number","param","decoded","parsed","parse","initials","paths","createConfigItem","exact","forEach","nestedConfig","pop","parts","getPatternParts","part","reg","optional","escape","findParseConfigForRoute","flatConfig","findInitialRoute","sameParents","createStateObject","initialRoute","route","isEmpty","state","shift","nestedState","nestedStateIndex","findFocusedRoute","parseQueryParams","parseConfig","query"],"sourceRoot":"../../src","sources":["getStateFromPath.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_escapeStringRegexp","_interopRequireDefault","require","queryString","_interopRequireWildcard","_arrayStartsWith","_findFocusedRoute","_getPatternParts","_isArrayEqual","_validatePathConfig","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","getStateFromPath","path","options","initialRoutes","configs","getConfigResources","screens","remaining","replace","endsWith","prefix","normalizedPrefix","startsWith","undefined","routes","split","filter","Boolean","map","segment","name","decodeURIComponent","length","createNestedStateObject","match","find","config","segments","join","routeNames","result","current","remainingPath","matchAgainstConfigs","cachedConfigResources","prepareConfigResources","cached","resources","validatePathConfig","getInitialRoutes","getSortedNormalizedConfigs","checkForDuplicatedConfigs","configWithRegexes","getConfigsWithRegexes","initialRouteName","push","parentScreens","concat","keys","key","createNormalizedConfigs","sort","b","isArrayEqual","localeCompare","arrayStartsWith","Math","max","aWildCard","bWildCard","aParam","bParam","aRegex","includes","bRegex","reduce","acc","pattern","intersects","every","it","Error","assign","c","regex","RegExp","source","routeName","routeConfig","screen","params","groups","fromEntries","entries","value","index","Number","param","decoded","parsed","parse","initials","paths","createConfigItem","exact","aliasConfigs","alias","forEach","nestedConfig","pop","parts","getPatternParts","part","reg","optional","escape","findParseConfigForRoute","flatConfig","findInitialRoute","sameParents","createStateObject","initialRoute","route","isEmpty","state","shift","nestedState","nestedStateIndex","findFocusedRoute","parseQueryParams","parseConfig","query"],"sourceRoot":"../../src","sources":["getStateFromPath.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.useScheduleUpdate = useScheduleUpdate;
|
|
7
7
|
var React = _interopRequireWildcard(require("react"));
|
|
8
8
|
var _NavigationBuilderContext = require("./NavigationBuilderContext.js");
|
|
9
|
+
var _useIsomorphicLayoutEffect = require("./useIsomorphicLayoutEffect");
|
|
9
10
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
10
11
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
11
12
|
/**
|
|
@@ -24,6 +25,6 @@ function useScheduleUpdate(callback) {
|
|
|
24
25
|
// FIXME: This is potentially unsafe
|
|
25
26
|
// However, since we are using sync store, it might be fine
|
|
26
27
|
scheduleUpdate(callback);
|
|
27
|
-
|
|
28
|
+
(0, _useIsomorphicLayoutEffect.useIsomorphicLayoutEffect)(flushUpdates);
|
|
28
29
|
}
|
|
29
30
|
//# sourceMappingURL=useScheduleUpdate.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","_interopRequireWildcard","require","_NavigationBuilderContext","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useScheduleUpdate","callback","scheduleUpdate","flushUpdates","useContext","NavigationBuilderContext","
|
|
1
|
+
{"version":3,"names":["React","_interopRequireWildcard","require","_NavigationBuilderContext","_useIsomorphicLayoutEffect","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useScheduleUpdate","callback","scheduleUpdate","flushUpdates","useContext","NavigationBuilderContext","useIsomorphicLayoutEffect"],"sourceRoot":"../../src","sources":["useScheduleUpdate.tsx"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,yBAAA,GAAAD,OAAA;AACA,IAAAE,0BAAA,GAAAF,OAAA;AAAwE,SAAAG,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAL,wBAAAK,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAExE;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASW,iBAAiBA,CAACC,QAAoB,EAAE;EACtD,MAAM;IAAEC,cAAc;IAAEC;EAAa,CAAC,GAAG5B,KAAK,CAAC6B,UAAU,CACvDC,kDACF,CAAC;;EAED;EACA;EACAH,cAAc,CAACD,QAAQ,CAAC;EAExB,IAAAK,oDAAyB,EAACH,YAAY,CAAC;AACzC","ignoreList":[]}
|
|
@@ -11,6 +11,7 @@ function validatePathConfig(config, root = true) {
|
|
|
11
11
|
initialRouteName: 'string',
|
|
12
12
|
screens: 'object',
|
|
13
13
|
...(root ? null : {
|
|
14
|
+
alias: 'array',
|
|
14
15
|
exact: 'boolean',
|
|
15
16
|
stringify: 'object',
|
|
16
17
|
parse: 'object'
|
|
@@ -24,8 +25,14 @@ function validatePathConfig(config, root = true) {
|
|
|
24
25
|
const type = validation[key];
|
|
25
26
|
// @ts-expect-error: we know the key exists
|
|
26
27
|
const value = config[key];
|
|
27
|
-
if (value !== undefined
|
|
28
|
-
|
|
28
|
+
if (value !== undefined) {
|
|
29
|
+
if (type === 'array') {
|
|
30
|
+
if (!Array.isArray(value)) {
|
|
31
|
+
return [key, `expected 'Array', got '${typeof value}'`];
|
|
32
|
+
}
|
|
33
|
+
} else if (typeof value !== type) {
|
|
34
|
+
return [key, `expected '${type}', got '${typeof value}'`];
|
|
35
|
+
}
|
|
29
36
|
}
|
|
30
37
|
} else {
|
|
31
38
|
return [key, 'extraneous'];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["formatToList","items","Object","entries","map","key","value","join","validatePathConfig","config","root","validation","path","initialRouteName","screens","exact","stringify","parse","Error","JSON","validationErrors","fromEntries","keys","type","undefined","filter","Boolean","length","includes","forEach","_"],"sourceRoot":"../../src","sources":["validatePathConfig.tsx"],"mappings":";;;;;;AAAA,MAAMA,YAAY,GAAIC,KAA6B,IACjDC,MAAM,CAACC,OAAO,CAACF,KAAK,CAAC,CAClBG,GAAG,CAAC,CAAC,CAACC,GAAG,EAAEC,KAAK,CAAC,KAAK,KAAKD,GAAG,KAAKC,KAAK,GAAG,CAAC,CAC5CC,IAAI,CAAC,IAAI,CAAC;AAER,SAASC,kBAAkBA,CAACC,MAAe,EAAEC,IAAI,GAAG,IAAI,EAAE;EAC/D,MAAMC,UAAU,GAAG;IACjBC,IAAI,EAAE,QAAQ;IACdC,gBAAgB,EAAE,QAAQ;IAC1BC,OAAO,EAAE,QAAQ;IACjB,IAAIJ,IAAI,GACJ,IAAI,GACJ;MACEK,KAAK,EAAE,SAAS;MAChBC,SAAS,EAAE,QAAQ;MACnBC,KAAK,EAAE;IACT,CAAC;EACP,CAAC;EAED,IAAI,
|
|
1
|
+
{"version":3,"names":["formatToList","items","Object","entries","map","key","value","join","validatePathConfig","config","root","validation","path","initialRouteName","screens","alias","exact","stringify","parse","Error","JSON","validationErrors","fromEntries","keys","type","undefined","Array","isArray","filter","Boolean","length","includes","forEach","_"],"sourceRoot":"../../src","sources":["validatePathConfig.tsx"],"mappings":";;;;;;AAAA,MAAMA,YAAY,GAAIC,KAA6B,IACjDC,MAAM,CAACC,OAAO,CAACF,KAAK,CAAC,CAClBG,GAAG,CAAC,CAAC,CAACC,GAAG,EAAEC,KAAK,CAAC,KAAK,KAAKD,GAAG,KAAKC,KAAK,GAAG,CAAC,CAC5CC,IAAI,CAAC,IAAI,CAAC;AAER,SAASC,kBAAkBA,CAACC,MAAe,EAAEC,IAAI,GAAG,IAAI,EAAE;EAC/D,MAAMC,UAAU,GAAG;IACjBC,IAAI,EAAE,QAAQ;IACdC,gBAAgB,EAAE,QAAQ;IAC1BC,OAAO,EAAE,QAAQ;IACjB,IAAIJ,IAAI,GACJ,IAAI,GACJ;MACEK,KAAK,EAAE,OAAO;MACdC,KAAK,EAAE,SAAS;MAChBC,SAAS,EAAE,QAAQ;MACnBC,KAAK,EAAE;IACT,CAAC;EACP,CAAC;EAED,IAAI,OAAOT,MAAM,KAAK,QAAQ,IAAIA,MAAM,KAAK,IAAI,EAAE;IACjD,MAAM,IAAIU,KAAK,CACb,uDAAuDC,IAAI,CAACH,SAAS,CACnER,MACF,CAAC,GACH,CAAC;EACH;EAEA,MAAMY,gBAAgB,GAAGnB,MAAM,CAACoB,WAAW,CACzCpB,MAAM,CAACqB,IAAI,CAACd,MAAM,CAAC,CAChBL,GAAG,CAAEC,GAAG,IAAK;IACZ,IAAIA,GAAG,IAAIM,UAAU,EAAE;MACrB,MAAMa,IAAI,GAAGb,UAAU,CAACN,GAAG,CAA4B;MACvD;MACA,MAAMC,KAAK,GAAGG,MAAM,CAACJ,GAAG,CAAC;MAEzB,IAAIC,KAAK,KAAKmB,SAAS,EAAE;QACvB,IAAID,IAAI,KAAK,OAAO,EAAE;UACpB,IAAI,CAACE,KAAK,CAACC,OAAO,CAACrB,KAAK,CAAC,EAAE;YACzB,OAAO,CAACD,GAAG,EAAE,0BAA0B,OAAOC,KAAK,GAAG,CAAC;UACzD;QACF,CAAC,MAAM,IAAI,OAAOA,KAAK,KAAKkB,IAAI,EAAE;UAChC,OAAO,CAACnB,GAAG,EAAE,aAAamB,IAAI,WAAW,OAAOlB,KAAK,GAAG,CAAC;QAC3D;MACF;IACF,CAAC,MAAM;MACL,OAAO,CAACD,GAAG,EAAE,YAAY,CAAC;IAC5B;IAEA,OAAO,IAAI;EACb,CAAC,CAAC,CACDuB,MAAM,CAACC,OAAO,CACnB,CAAC;EAED,IAAI3B,MAAM,CAACqB,IAAI,CAACF,gBAAgB,CAAC,CAACS,MAAM,EAAE;IACxC,MAAM,IAAIX,KAAK,CACb,mDAAmDnB,YAAY,CAC7DqB,gBACF,CAAC,uDAAuDrB,YAAY,CAClEW,UACF,CAAC,kOACH,CAAC;EACH;EAEA,IACED,IAAI,IACJ,MAAM,IAAID,MAAM,IAChB,OAAOA,MAAM,CAACG,IAAI,KAAK,QAAQ,IAC/BH,MAAM,CAACG,IAAI,CAACmB,QAAQ,CAAC,GAAG,CAAC,EACzB;IACA,MAAM,IAAIZ,KAAK,CACb,uBAAuBV,MAAM,CAACG,IAAI,kFACpC,CAAC;EACH;EAEA,IAAI,SAAS,IAAIH,MAAM,IAAIA,MAAM,CAACK,OAAO,EAAE;IACzCZ,MAAM,CAACC,OAAO,CAACM,MAAM,CAACK,OAAO,CAAC,CAACkB,OAAO,CAAC,CAAC,CAACC,CAAC,EAAE3B,KAAK,CAAC,KAAK;MACrD,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;QAC7BE,kBAAkB,CAACF,KAAK,EAAE,KAAK,CAAC;MAClC;IACF,CAAC,CAAC;EACJ;AACF","ignoreList":[]}
|
|
@@ -190,8 +190,8 @@ export function createPathConfigForStaticNavigation(tree, options, auto) {
|
|
|
190
190
|
Object.assign(screenConfig, item.linking);
|
|
191
191
|
}
|
|
192
192
|
if (typeof screenConfig.path === 'string') {
|
|
193
|
-
|
|
194
|
-
|
|
193
|
+
screenConfig.path = screenConfig.path.replace(/^\//, '') // Remove extra leading slash
|
|
194
|
+
.replace(/\/$/, ''); // Remove extra trailing slash
|
|
195
195
|
}
|
|
196
196
|
}
|
|
197
197
|
let screens;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","isValidElementType","useRoute","jsx","_jsx","createElement","_createElement","MemoizedScreen","memo","component","route","children","displayName","getItemsFromScreens","Screen","screens","Object","entries","map","name","item","props","useIf","isNavigator","screen","if","_if","rest","createComponentForStaticNavigation","Error","element","shouldRender","tree","Navigator","Group","config","groups","items","key","push","group","groupItems","navigationKey","NavigatorComponent","createPathConfigForStaticNavigation","options","auto","initialScreenConfig","createPathConfigForTree","t","o","skipInitialDetection","createPathConfigForScreens","initialRouteName","fromEntries","sort","a","b","screenConfig","linking","path","assign","
|
|
1
|
+
{"version":3,"names":["React","isValidElementType","useRoute","jsx","_jsx","createElement","_createElement","MemoizedScreen","memo","component","route","children","displayName","getItemsFromScreens","Screen","screens","Object","entries","map","name","item","props","useIf","isNavigator","screen","if","_if","rest","createComponentForStaticNavigation","Error","element","shouldRender","tree","Navigator","Group","config","groups","items","key","push","group","groupItems","navigationKey","NavigatorComponent","createPathConfigForStaticNavigation","options","auto","initialScreenConfig","createPathConfigForTree","t","o","skipInitialDetection","createPathConfigForScreens","initialRouteName","fromEntries","sort","a","b","screenConfig","linking","path","assign","replace","skipInitialDetectionInChild","undefined","toLowerCase","filter","keys","length","forEach"],"sourceRoot":"../../src","sources":["StaticNavigation.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -22,7 +22,7 @@ export function getPatternParts(path) {
|
|
|
22
22
|
// The segment must start with a colon if it's a param
|
|
23
23
|
if (current.segment === ':') {
|
|
24
24
|
isParam = true;
|
|
25
|
-
} else {
|
|
25
|
+
} else if (!isRegex) {
|
|
26
26
|
throw new Error(`Encountered ':' in the middle of a segment in path: ${path}`);
|
|
27
27
|
}
|
|
28
28
|
} else if (char === '(') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["getPatternParts","path","parts","current","segment","isRegex","isParam","regexInnerParens","i","length","char","Error","regex","param","optional","replace","push","params","map","part","filter","Boolean","index","entries","indexOf"],"sourceRoot":"../../src","sources":["getPatternParts.tsx"],"mappings":";;AAOA;AACA;AACA;AACA,OAAO,SAASA,eAAeA,CAACC,IAAY,EAAiB;EAC3D,MAAMC,KAAoB,GAAG,EAAE;EAE/B,IAAIC,OAAoB,GAAG;IAAEC,OAAO,EAAE;EAAG,CAAC;EAE1C,IAAIC,OAAO,GAAG,KAAK;EACnB,IAAIC,OAAO,GAAG,KAAK;EACnB,IAAIC,gBAAgB,GAAG,CAAC;;EAExB;EACA,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,IAAIP,IAAI,CAACQ,MAAM,EAAED,CAAC,EAAE,EAAE;IACrC,MAAME,IAAI,GAAGT,IAAI,CAACO,CAAC,CAAC;IAEpB,IAAIE,IAAI,IAAI,IAAI,EAAE;MAChBP,OAAO,CAACC,OAAO,IAAIM,IAAI;IACzB;IAEA,IAAIA,IAAI,KAAK,GAAG,EAAE;MAChB;MACA,IAAIP,OAAO,CAACC,OAAO,KAAK,GAAG,EAAE;QAC3BE,OAAO,GAAG,IAAI;MAChB,CAAC,MAAM;
|
|
1
|
+
{"version":3,"names":["getPatternParts","path","parts","current","segment","isRegex","isParam","regexInnerParens","i","length","char","Error","regex","param","optional","replace","push","params","map","part","filter","Boolean","index","entries","indexOf"],"sourceRoot":"../../src","sources":["getPatternParts.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -31,8 +31,7 @@ import { validatePathConfig } from "./validatePathConfig.js";
|
|
|
31
31
|
export function getStateFromPath(path, options) {
|
|
32
32
|
const {
|
|
33
33
|
initialRoutes,
|
|
34
|
-
configs
|
|
35
|
-
configWithRegexes
|
|
34
|
+
configs
|
|
36
35
|
} = getConfigResources(options);
|
|
37
36
|
const screens = options?.screens;
|
|
38
37
|
let remaining = path.replace(/\/+/g, '/') // Replace multiple slash (//) with single ones
|
|
@@ -87,7 +86,7 @@ export function getStateFromPath(path, options) {
|
|
|
87
86
|
const {
|
|
88
87
|
routes,
|
|
89
88
|
remainingPath
|
|
90
|
-
} = matchAgainstConfigs(remaining,
|
|
89
|
+
} = matchAgainstConfigs(remaining, configs);
|
|
91
90
|
if (routes !== undefined) {
|
|
92
91
|
// This will always be empty if full path matched
|
|
93
92
|
current = createNestedStateObject(path, routes, initialRoutes, configs);
|
|
@@ -117,7 +116,7 @@ function prepareConfigResources(options) {
|
|
|
117
116
|
validatePathConfig(options);
|
|
118
117
|
}
|
|
119
118
|
const initialRoutes = getInitialRoutes(options);
|
|
120
|
-
const configs =
|
|
119
|
+
const configs = getSortedNormalizedConfigs(initialRoutes, options?.screens);
|
|
121
120
|
checkForDuplicatedConfigs(configs);
|
|
122
121
|
const configWithRegexes = getConfigsWithRegexes(configs);
|
|
123
122
|
return {
|
|
@@ -136,7 +135,7 @@ function getInitialRoutes(options) {
|
|
|
136
135
|
}
|
|
137
136
|
return initialRoutes;
|
|
138
137
|
}
|
|
139
|
-
function
|
|
138
|
+
function getSortedNormalizedConfigs(initialRoutes, screens = {}) {
|
|
140
139
|
// Create a normalized configs array which will be easier to use
|
|
141
140
|
return [].concat(...Object.keys(screens).map(key => createNormalizedConfigs(key, screens, initialRoutes, [], [], []))).sort((a, b) => {
|
|
142
141
|
// Sort config from most specific to least specific:
|
|
@@ -298,8 +297,6 @@ const createNormalizedConfigs = (screen, routeConfig, initials, paths, parentScr
|
|
|
298
297
|
const configs = [];
|
|
299
298
|
routeNames.push(screen);
|
|
300
299
|
parentScreens.push(screen);
|
|
301
|
-
|
|
302
|
-
// @ts-expect-error: we can't strongly typecheck this for now
|
|
303
300
|
const config = routeConfig[screen];
|
|
304
301
|
if (typeof config === 'string') {
|
|
305
302
|
paths.push({
|
|
@@ -312,8 +309,30 @@ const createNormalizedConfigs = (screen, routeConfig, initials, paths, parentScr
|
|
|
312
309
|
// it can have `path` property and
|
|
313
310
|
// it could have `screens` prop which has nested configs
|
|
314
311
|
if (typeof config.path === 'string') {
|
|
315
|
-
if (config.exact && config.path
|
|
316
|
-
throw new Error(
|
|
312
|
+
if (config.exact && config.path == null) {
|
|
313
|
+
throw new Error(`Screen '${screen}' doesn't specify a 'path'. A 'path' needs to be specified when specifying 'exact: true'. If you don't want this screen in the URL, specify it as empty string, e.g. \`path: ''\`.`);
|
|
314
|
+
}
|
|
315
|
+
|
|
316
|
+
// We should add alias configs after the main config
|
|
317
|
+
// So unless they are more specific, main config will be matched first
|
|
318
|
+
const aliasConfigs = [];
|
|
319
|
+
if (config.alias) {
|
|
320
|
+
for (const alias of config.alias) {
|
|
321
|
+
if (typeof alias === 'string') {
|
|
322
|
+
aliasConfigs.push(createConfigItem(screen, [...routeNames], [...paths, {
|
|
323
|
+
screen,
|
|
324
|
+
path: alias
|
|
325
|
+
}], config.parse));
|
|
326
|
+
} else if (typeof alias === 'object') {
|
|
327
|
+
aliasConfigs.push(createConfigItem(screen, [...routeNames], alias.exact ? [{
|
|
328
|
+
screen,
|
|
329
|
+
path: alias.path
|
|
330
|
+
}] : [...paths, {
|
|
331
|
+
screen,
|
|
332
|
+
path: alias.path
|
|
333
|
+
}], alias.parse));
|
|
334
|
+
}
|
|
335
|
+
}
|
|
317
336
|
}
|
|
318
337
|
if (config.exact) {
|
|
319
338
|
// If it's an exact path, we don't need to keep track of the parent screens
|
|
@@ -325,6 +344,10 @@ const createNormalizedConfigs = (screen, routeConfig, initials, paths, parentScr
|
|
|
325
344
|
path: config.path
|
|
326
345
|
});
|
|
327
346
|
configs.push(createConfigItem(screen, [...routeNames], [...paths], config.parse));
|
|
347
|
+
configs.push(...aliasConfigs);
|
|
348
|
+
}
|
|
349
|
+
if (typeof config !== 'string' && typeof config.path !== 'string' && config.alias?.length) {
|
|
350
|
+
throw new Error(`Screen '${screen}' doesn't specify a 'path'. A 'path' needs to be specified in order to use 'alias'.`);
|
|
328
351
|
}
|
|
329
352
|
if (config.screens) {
|
|
330
353
|
// property `initialRouteName` without `screens` has no purpose
|
|
@@ -362,7 +385,7 @@ const createConfigItem = (screen, routeNames, paths, parse) => {
|
|
|
362
385
|
return `(((?<param_${i}>${reg})\\/)${it.optional ? '?' : ''})`;
|
|
363
386
|
}
|
|
364
387
|
return `${it.segment === '*' ? '.*' : escape(it.segment)}\\/`;
|
|
365
|
-
}).join('')})
|
|
388
|
+
}).join('')})$`) : undefined;
|
|
366
389
|
const segments = parts.map(it => it.segment);
|
|
367
390
|
const params = parts.map((it, i) => it.param ? {
|
|
368
391
|
index: i,
|