@ankhorage/navigator 1.5.0 → 1.5.2

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/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # @ankhorage/navigator
2
2
 
3
+ ## 1.5.2
4
+
5
+ ### Patch Changes
6
+
7
+ - cda4fdb: Emit generated Expo Router modules in the managed source format so fresh Studio applications pass lint and formatting without rewriting Navigator-owned files.
8
+
9
+ ## 1.5.1
10
+
11
+ ### Patch Changes
12
+
13
+ - 8fe4bf0: Hide JavaScript tab routes from primary navigation while preserving direct route access.
14
+
3
15
  ## 1.5.0
4
16
 
5
17
  ### Minor Changes
package/README.md CHANGED
@@ -3,7 +3,7 @@
3
3
 
4
4
  # NAVIGATOR
5
5
 
6
- ![license: MIT](././paradox/badges/license.svg) ![npm: v1.4.0](././paradox/badges/npm.svg) ![runtime: bun](././paradox/badges/runtime.svg) ![typescript: strict](././paradox/badges/typescript.svg) ![eslint: checked](././paradox/badges/eslint.svg) ![prettier: checked](././paradox/badges/prettier.svg) ![build: checked](././paradox/badges/build.svg) ![tests: checked](././paradox/badges/tests.svg) ![docs: paradox](././paradox/badges/docs.svg)
6
+ ![license: MIT](././paradox/badges/license.svg) ![npm: v1.5.1](././paradox/badges/npm.svg) ![runtime: bun](././paradox/badges/runtime.svg) ![typescript: strict](././paradox/badges/typescript.svg) ![eslint: checked](././paradox/badges/eslint.svg) ![prettier: checked](././paradox/badges/prettier.svg) ![build: checked](././paradox/badges/build.svg) ![tests: checked](././paradox/badges/tests.svg) ![docs: paradox](././paradox/badges/docs.svg)
7
7
 
8
8
  Standalone Navigator capability with topology configured independently from platform implementation and visual presentation. Adaptive tabs provide native and responsive web adapters; experimental Stack and Split View stay testing-only with validated upstream fallbacks.
9
9
 
@@ -1 +1 @@
1
- {"version":3,"file":"generateNavigatorFiles.d.ts","sourceRoot":"","sources":["../../src/generation/generateNavigatorFiles.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,2BAA2B,EAC3B,0BAA0B,EAE1B,aAAa,EAGd,MAAM,8BAA8B,CAAC;AA0OtC,sGAAsG;AACtG,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,aAAa,EACnB,QAAQ,EAAE,2BAA2B,EACrC,OAAO,GAAE,0BAA+B,GACvC,SAAS,sBAAsB,EAAE,CAsBnC"}
1
+ {"version":3,"file":"generateNavigatorFiles.d.ts","sourceRoot":"","sources":["../../src/generation/generateNavigatorFiles.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,2BAA2B,EAC3B,0BAA0B,EAE1B,aAAa,EAGd,MAAM,8BAA8B,CAAC;AAgRtC,sGAAsG;AACtG,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,aAAa,EACnB,QAAQ,EAAE,2BAA2B,EACrC,OAAO,GAAE,0BAA+B,GACvC,SAAS,sBAAsB,EAAE,CAsBnC"}
@@ -1,6 +1,6 @@
1
1
  import { generateSplitViewLayoutFile } from './generateSplitViewLayoutFile';
2
2
  import { generateTabsLayoutFile } from './generateTabsLayoutFile';
3
- import { assertModuleBinding, quote } from './generationSafety';
3
+ import { assertModuleBinding, quote, quoteJsxAttribute, sourceLiteral } from './generationSafety';
4
4
  const APP_DIRECTORY = 'src/app';
5
5
  const SAFE_ROUTE_NAME = /^[A-Za-z0-9_.()[\]-]+$/u;
6
6
  /** Resolve a safe directory below the Expo Router app root without filesystem normalization. */
@@ -35,13 +35,37 @@ function routeOptions(node, route) {
35
35
  options.drawerItemStyle = { display: 'none' };
36
36
  }
37
37
  }
38
- return Object.keys(options).length === 0 ? undefined : JSON.stringify(options);
38
+ if (node.type === 'tabs' &&
39
+ node.tabs?.implementation === 'javascript' &&
40
+ route.showInPrimaryNavigation === false) {
41
+ if (node.tabs.presentation === 'top')
42
+ options.tabBarItemStyle = { display: 'none' };
43
+ else
44
+ options.href = null;
45
+ }
46
+ return Object.keys(options).length === 0 ? undefined : options;
47
+ }
48
+ /*** Render one generated Screen with a stable multiline options object when route options exist. */
49
+ function renderScreenElement(componentName, routeName, options, indentation) {
50
+ if (options === undefined) {
51
+ return `${indentation}<${componentName}.Screen name=${quoteJsxAttribute(routeName)} />`;
52
+ }
53
+ const optionLines = Object.entries(options)
54
+ .filter(([, value]) => value !== undefined)
55
+ .map(([key, value]) => `${indentation} ${key}: ${sourceLiteral(value)},`)
56
+ .join('\n');
57
+ return `${indentation}<${componentName}.Screen
58
+ ${indentation} name=${quoteJsxAttribute(routeName)}
59
+ ${indentation} options={{
60
+ ${optionLines}
61
+ ${indentation} }}
62
+ ${indentation}/>`;
39
63
  }
40
64
  function renderScreen(componentName, node, route, guardAliases) {
41
65
  const options = routeOptions(node, route);
42
- const screen = `<${componentName}.Screen name=${quote(route.name)}${options === undefined ? '' : ` options={${options}}`} />`;
66
+ const screen = renderScreenElement(componentName, route.name, options, route.guards.length === 0 ? ' ' : ' ');
43
67
  if (route.guards.length === 0)
44
- return ` ${screen}`;
68
+ return screen;
45
69
  const guardExpression = route.guards
46
70
  .map((guard) => {
47
71
  const alias = guardAliases.get(guard);
@@ -51,7 +75,7 @@ function renderScreen(componentName, node, route, guardAliases) {
51
75
  })
52
76
  .join(' && ');
53
77
  return ` <${componentName}.Protected guard={${guardExpression}}>
54
- ${screen}
78
+ ${screen}
55
79
  </${componentName}.Protected>`;
56
80
  }
57
81
  function createGuardImports(node, bindings, guardAliases) {
@@ -75,12 +99,12 @@ function createNavigatorContents(node, componentName, imports, guardAliases) {
75
99
  const props = [
76
100
  node.initialRouteName === undefined
77
101
  ? undefined
78
- : `initialRouteName=${quote(node.initialRouteName)}`,
102
+ : `initialRouteName=${quoteJsxAttribute(node.initialRouteName)}`,
79
103
  navigatorOptions === undefined
80
104
  ? undefined
81
- : `screenOptions={${JSON.stringify(navigatorOptions)}}`,
105
+ : `screenOptions={${sourceLiteral(navigatorOptions)}}`,
82
106
  node.type === 'custom' && node.custom?.config !== undefined
83
- ? `{...${JSON.stringify(node.custom.config)}}`
107
+ ? `{...${sourceLiteral(node.custom.config)}}`
84
108
  : undefined,
85
109
  ].filter((value) => value !== undefined);
86
110
  const openingTag = `<${componentName}${props.length === 0 ? '' : ` ${props.join(' ')}`}>`;
@@ -1 +1 @@
1
- {"version":3,"file":"generateNavigatorFiles.js","sourceRoot":"","sources":["../../src/generation/generateNavigatorFiles.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generateNavigatorFiles.js","sourceRoot":"","sources":["../../src/generation/generateNavigatorFiles.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { assertModuleBinding, quote } from './generationSafety';
1
+ import { assertModuleBinding, quote, quoteJsxAttribute } from './generationSafety';
2
2
  /*** Resolve one Split View screen reference through the narrow generated-screen binding port. */
3
3
  function resolveSplitViewBinding(bindings, screenId, role, element) {
4
4
  const module = Reflect.get(bindings.screens, screenId);
@@ -41,12 +41,12 @@ export function generateSplitViewLayoutFile(node, directory, bindings) {
41
41
  const props = [
42
42
  node.splitView.topColumnForCollapsing === undefined
43
43
  ? undefined
44
- : `topColumnForCollapsing=${quote(node.splitView.topColumnForCollapsing)}`,
44
+ : `topColumnForCollapsing=${quoteJsxAttribute(node.splitView.topColumnForCollapsing)}`,
45
45
  node.splitView.inspector === undefined ? undefined : 'showInspector',
46
46
  ].filter((value) => value !== undefined);
47
47
  const openingTag = `<SplitView${props.length === 0 ? '' : ` ${props.join(' ')}`}>`;
48
48
  const imports = [
49
- 'import { SplitView } from "expo-router/unstable-split-view";',
49
+ "import { SplitView } from 'expo-router/unstable-split-view';",
50
50
  renderSplitViewImports(referencedScreens),
51
51
  ].join('\n');
52
52
  const children = referencedScreens.map(renderSplitViewChild).join('\n');
@@ -1 +1 @@
1
- {"version":3,"file":"generateSplitViewLayoutFile.js","sourceRoot":"","sources":["../../src/generation/generateSplitViewLayoutFile.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generateSplitViewLayoutFile.js","sourceRoot":"","sources":["../../src/generation/generateSplitViewLayoutFile.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,mBAAmB,EAAE,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAUnF,iGAAiG;AACjG,SAAS,uBAAuB,CAC9B,QAAqC,EACrC,QAAgB,EAChB,IAAmB,EACnB,OAAoC;IAEpC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAsC,CAAC;IAC5F,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,sBAAsB,IAAI,uBAAuB,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IAChG,CAAC;IACD,mBAAmB,CAAC,MAAM,EAAE,cAAc,IAAI,WAAW,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACrF,MAAM,KAAK,GAAG,YAAY,IAAI,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC;IACzE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;AACpC,CAAC;AAED,4FAA4F;AAC5F,SAAS,sBAAsB,CAAC,QAAqC;IACnE,OAAO,QAAQ;SACZ,GAAG,CACF,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,CACpB,YAAY,MAAM,CAAC,UAAU,OAAO,KAAK,WAAW,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAC9E;SACA,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAED,qEAAqE;AACrE,SAAS,oBAAoB,CAAC,OAAyB;IACrD,OAAO,oBAAoB,OAAO,CAAC,OAAO,eAAe,OAAO,CAAC,KAAK,0BAA0B,OAAO,CAAC,OAAO,GAAG,CAAC;AACrH,CAAC;AAED,8FAA8F;AAC9F,SAAS,wBAAwB,CAC/B,SAAsD,EACtD,QAAqC;IAErC,OAAO;QACL,uBAAuB,CAAC,QAAQ,EAAE,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,CAAC;QACjF,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa,KAAK,SAAS;YAC/C,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC;gBACE,uBAAuB,CACrB,QAAQ,EACR,SAAS,CAAC,OAAO,CAAC,aAAa,EAC/B,eAAe,EACf,QAAQ,CACT;aACF,CAAC;QACN,GAAG,CAAC,SAAS,CAAC,SAAS,KAAK,SAAS;YACnC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,CAAC,uBAAuB,CAAC,QAAQ,EAAE,SAAS,CAAC,SAAS,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC;KACxF,CAAC;AACJ,CAAC;AAED,gGAAgG;AAChG,MAAM,UAAU,2BAA2B,CACzC,IAAuB,EACvB,SAAiB,EACjB,QAAqC;IAErC,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACjF,MAAM,iBAAiB,GAAG,wBAAwB,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC7E,MAAM,KAAK,GAAG;QACZ,IAAI,CAAC,SAAS,CAAC,sBAAsB,KAAK,SAAS;YACjD,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,0BAA0B,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,sBAAsB,CAAC,EAAE;QACxF,IAAI,CAAC,SAAS,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe;KACrE,CAAC,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC;IAC1D,MAAM,UAAU,GAAG,aAAa,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC;IACnF,MAAM,OAAO,GAAG;QACd,8DAA8D;QAC9D,sBAAsB,CAAC,iBAAiB,CAAC;KAC1C,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACb,MAAM,QAAQ,GAAG,iBAAiB,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxE,OAAO;QACL,IAAI,EAAE,GAAG,SAAS,cAAc;QAChC,QAAQ,EAAE,GAAG,OAAO,oEAAoE,UAAU,KAAK,QAAQ,+BAA+B;KAC/I,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"generateTabsLayoutFile.d.ts","sourceRoot":"","sources":["../../src/generation/generateTabsLayoutFile.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,2BAA2B,EAC3B,iBAAiB,EAGlB,MAAM,8BAA8B,CAAC;AAoKtC,iFAAiF;AACjF,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,iBAAiB,EACvB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,2BAA2B,GACpC,sBAAsB,GAAG,SAAS,CASpC"}
1
+ {"version":3,"file":"generateTabsLayoutFile.d.ts","sourceRoot":"","sources":["../../src/generation/generateTabsLayoutFile.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,2BAA2B,EAC3B,iBAAiB,EAGlB,MAAM,8BAA8B,CAAC;AAuLtC,iFAAiF;AACjF,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,iBAAiB,EACvB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,2BAA2B,GACpC,sBAAsB,GAAG,SAAS,CASpC"}
@@ -1,4 +1,4 @@
1
- import { assertModuleBinding, quote } from './generationSafety';
1
+ import { assertModuleBinding, quote, quoteJsxAttribute, sourceLiteral } from './generationSafety';
2
2
  /*** Resolve and validate the native vector-icon provider for one planned route icon. */
3
3
  function nativeIconProvider(icon) {
4
4
  if (icon === undefined || 'source' in icon) {
@@ -45,14 +45,14 @@ function createNativeTabsContents(node, componentName, imports, accessoryName) {
45
45
  : `\n\nexport const unstable_settings = { initialRouteName: ${quote(node.initialRouteName)} };`;
46
46
  const minimize = node.tabs?.minimizeBehavior === undefined
47
47
  ? ''
48
- : ` minimizeBehavior=${quote(node.tabs.minimizeBehavior)}`;
48
+ : ` minimizeBehavior=${quoteJsxAttribute(node.tabs.minimizeBehavior)}`;
49
49
  const triggers = node.routes
50
50
  .map((route) => {
51
51
  const label = route.label ?? route.name;
52
52
  const icon = route.icon === undefined
53
53
  ? ''
54
- : `\n <${componentName}.Trigger.Icon src={<${componentName}.Trigger.VectorIcon family={${nativeIconFamily(nativeIconProvider(route.icon))}} name=${quote(nativeIconName(route.icon))} />} />`;
55
- return ` <${componentName}.Trigger name=${quote(route.name)}>\n <${componentName}.Trigger.Label>{${quote(label)}}</${componentName}.Trigger.Label>${icon}\n </${componentName}.Trigger>`;
54
+ : `\n <${componentName}.Trigger.Icon src={<${componentName}.Trigger.VectorIcon family={${nativeIconFamily(nativeIconProvider(route.icon))}} name=${quoteJsxAttribute(nativeIconName(route.icon))} />} />`;
55
+ return ` <${componentName}.Trigger name=${quoteJsxAttribute(route.name)}>\n <${componentName}.Trigger.Label>{${quote(label)}}</${componentName}.Trigger.Label>${icon}\n </${componentName}.Trigger>`;
56
56
  })
57
57
  .join('\n');
58
58
  const accessory = accessoryName === undefined
@@ -68,7 +68,7 @@ function createNativeTabsFile(node, directory, bindings) {
68
68
  ...new Set(node.routes.flatMap((route) => route.icon === undefined ? [] : [nativeIconFamily(nativeIconProvider(route.icon))])),
69
69
  ].sort();
70
70
  if (iconFamilies.length > 0) {
71
- imports.push(`import { ${iconFamilies.join(', ')} } from "@ankhorage/navigator/tabs/native-icons";`);
71
+ imports.push(`import { ${iconFamilies.join(', ')} } from '@ankhorage/navigator/tabs/native-icons';`);
72
72
  }
73
73
  let accessoryName;
74
74
  if (node.tabs?.bottomAccessoryScreenId !== undefined) {
@@ -84,13 +84,26 @@ function createNativeTabsFile(node, directory, bindings) {
84
84
  contents: createNativeTabsContents(node, componentName, imports.join('\n'), accessoryName),
85
85
  };
86
86
  }
87
+ /*** Render custom-tab route records as stable multiline source objects. */
88
+ function renderCustomTabRoutes(routes) {
89
+ return `[
90
+ ${routes
91
+ .map((route) => ` {
92
+ ${Object.entries(route)
93
+ .filter(([, value]) => value !== undefined)
94
+ .map(([key, value]) => ` ${key}: ${sourceLiteral(value)},`)
95
+ .join('\n')}
96
+ },`)
97
+ .join('\n')}
98
+ ]`;
99
+ }
87
100
  /*** Create the generated Web custom-tabs layout file and registered integration imports. */
88
101
  function createCustomTabsFile(node, directory, bindings) {
89
102
  const { tabs } = node;
90
103
  if (tabs?.presentations === undefined) {
91
104
  throw new Error('Custom Tabs planning did not preserve responsive presentations.');
92
105
  }
93
- const imports = ['import { CustomTabsLayout } from "@ankhorage/navigator/tabs";'];
106
+ const imports = ["import { CustomTabsLayout } from '@ankhorage/navigator/tabs';"];
94
107
  let customPresentation = '';
95
108
  let iconSourceResolver = '';
96
109
  if (tabs.customPresentationId !== undefined) {
@@ -116,10 +129,13 @@ function createCustomTabsFile(node, directory, bindings) {
116
129
  ...(route.icon === undefined ? {} : { icon: route.icon }),
117
130
  visible: route.showInPrimaryNavigation !== false,
118
131
  }));
119
- const initialRoute = node.initialRouteName === undefined ? '' : ` initialRouteName=${quote(node.initialRouteName)}`;
132
+ const initialRoute = node.initialRouteName === undefined
133
+ ? ''
134
+ : ` initialRouteName=${quoteJsxAttribute(node.initialRouteName)}`;
135
+ const routeSource = renderCustomTabRoutes(routes);
120
136
  return {
121
137
  path: `${directory}/_layout.tsx`,
122
- contents: `${imports.join('\n')}\n\nconst routes = ${JSON.stringify(routes)} as const;\nconst presentations = ${JSON.stringify(tabs.presentations)} as const;\n\nexport default function NavigatorLayout() {\n return <CustomTabsLayout${customPresentation}${initialRoute} presentations={presentations}${iconSourceResolver} routes={routes} />;\n}\n`,
138
+ contents: `${imports.join('\n')}\n\nconst routes = ${routeSource} as const;\nconst presentations = ${sourceLiteral(tabs.presentations)} as const;\n\nexport default function NavigatorLayout() {\n return <CustomTabsLayout${customPresentation}${initialRoute} presentations={presentations}${iconSourceResolver} routes={routes} />;\n}\n`,
123
139
  };
124
140
  }
125
141
  /*** Generate the specialized layout file for a supported tabs implementation. */
@@ -1 +1 @@
1
- {"version":3,"file":"generateTabsLayoutFile.js","sourceRoot":"","sources":["../../src/generation/generateTabsLayoutFile.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generateTabsLayoutFile.js","sourceRoot":"","sources":["../../src/generation/generateTabsLayoutFile.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,10 @@
1
1
  import type { NavigatorScreenModule } from '../definitions/NavigatorPlan';
2
2
  /*** Reject module and export bindings that cannot be emitted as safe static imports. */
3
3
  export declare function assertModuleBinding(binding: NavigatorScreenModule, description: string): void;
4
- /*** Serialize a generated string literal with JSON escaping. */
4
+ /*** Serialize a generated JavaScript string literal with safe single-quote escaping. */
5
5
  export declare function quote(value: string): string;
6
+ /*** Serialize a generated JSX string attribute with JSON-compatible double-quote escaping. */
7
+ export declare function quoteJsxAttribute(value: string): string;
8
+ /*** Serialize JSON-compatible data as a deterministic JavaScript source literal. */
9
+ export declare function sourceLiteral(value: unknown): string;
6
10
  //# sourceMappingURL=generationSafety.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"generationSafety.d.ts","sourceRoot":"","sources":["../../src/generation/generationSafety.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAM1E,wFAAwF;AACxF,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,qBAAqB,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,CAW7F;AAED,gEAAgE;AAChE,wBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE3C"}
1
+ {"version":3,"file":"generationSafety.d.ts","sourceRoot":"","sources":["../../src/generation/generationSafety.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAM1E,wFAAwF;AACxF,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,qBAAqB,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,CAW7F;AAED,wFAAwF;AACxF,wBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAW3C;AAED,8FAA8F;AAC9F,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEvD;AAED,oFAAoF;AACpF,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAgBpD"}
@@ -11,8 +11,44 @@ export function assertModuleBinding(binding, description) {
11
11
  throw new Error(`${description} has an invalid exported symbol.`);
12
12
  }
13
13
  }
14
- /*** Serialize a generated string literal with JSON escaping. */
14
+ /*** Serialize a generated JavaScript string literal with safe single-quote escaping. */
15
15
  export function quote(value) {
16
+ const content = [...value]
17
+ .map((character) => {
18
+ if (character === "'")
19
+ return "\\'";
20
+ if (character === '"')
21
+ return '"';
22
+ if (character === '\u2028')
23
+ return '\\u2028';
24
+ if (character === '\u2029')
25
+ return '\\u2029';
26
+ return JSON.stringify(character).slice(1, -1);
27
+ })
28
+ .join('');
29
+ return `'${content}'`;
30
+ }
31
+ /*** Serialize a generated JSX string attribute with JSON-compatible double-quote escaping. */
32
+ export function quoteJsxAttribute(value) {
16
33
  return JSON.stringify(value);
17
34
  }
35
+ /*** Serialize JSON-compatible data as a deterministic JavaScript source literal. */
36
+ export function sourceLiteral(value) {
37
+ if (value === null)
38
+ return 'null';
39
+ if (typeof value === 'string')
40
+ return quote(value);
41
+ if (typeof value === 'boolean')
42
+ return String(value);
43
+ if (typeof value === 'number' && Number.isFinite(value))
44
+ return String(value);
45
+ if (Array.isArray(value))
46
+ return `[${value.map((entry) => (entry === undefined ? 'null' : sourceLiteral(entry))).join(', ')}]`;
47
+ if (typeof value !== 'object')
48
+ throw new Error('Unsupported generated source literal value.');
49
+ const entries = Object.entries(value).filter(([, entry]) => entry !== undefined);
50
+ return `{ ${entries
51
+ .map(([key, entry]) => `${/^[A-Za-z_$][A-Za-z0-9_$]*$/u.test(key) ? key : quote(key)}: ${sourceLiteral(entry)}`)
52
+ .join(', ')} }`;
53
+ }
18
54
  //# sourceMappingURL=generationSafety.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"generationSafety.js","sourceRoot":"","sources":["../../src/generation/generationSafety.ts"],"names":[],"mappings":"AAEA,MAAM,gBAAgB,GAAG,6BAA6B,CAAC;AACvD,MAAM,WAAW,GACf,yGAAyG,CAAC;AAE5G,wFAAwF;AACxF,MAAM,UAAU,mBAAmB,CAAC,OAA8B,EAAE,WAAmB;IACrF,IACE,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QACjC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;QAC7B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EACjD,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,GAAG,WAAW,kCAAkC,CAAC,CAAC;IACpE,CAAC;IACD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/C,MAAM,IAAI,KAAK,CAAC,GAAG,WAAW,kCAAkC,CAAC,CAAC;IACpE,CAAC;AACH,CAAC;AAED,gEAAgE;AAChE,MAAM,UAAU,KAAK,CAAC,KAAa;IACjC,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AAC/B,CAAC"}
1
+ {"version":3,"file":"generationSafety.js","sourceRoot":"","sources":["../../src/generation/generationSafety.ts"],"names":[],"mappings":"AAEA,MAAM,gBAAgB,GAAG,6BAA6B,CAAC;AACvD,MAAM,WAAW,GACf,yGAAyG,CAAC;AAE5G,wFAAwF;AACxF,MAAM,UAAU,mBAAmB,CAAC,OAA8B,EAAE,WAAmB;IACrF,IACE,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QACjC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;QAC7B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EACjD,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,GAAG,WAAW,kCAAkC,CAAC,CAAC;IACpE,CAAC;IACD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/C,MAAM,IAAI,KAAK,CAAC,GAAG,WAAW,kCAAkC,CAAC,CAAC;IACpE,CAAC;AACH,CAAC;AAED,wFAAwF;AACxF,MAAM,UAAU,KAAK,CAAC,KAAa;IACjC,MAAM,OAAO,GAAG,CAAC,GAAG,KAAK,CAAC;SACvB,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE;QACjB,IAAI,SAAS,KAAK,GAAG;YAAE,OAAO,KAAK,CAAC;QACpC,IAAI,SAAS,KAAK,GAAG;YAAE,OAAO,GAAG,CAAC;QAClC,IAAI,SAAS,KAAK,QAAQ;YAAE,OAAO,SAAS,CAAC;QAC7C,IAAI,SAAS,KAAK,QAAQ;YAAE,OAAO,SAAS,CAAC;QAC7C,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAChD,CAAC,CAAC;SACD,IAAI,CAAC,EAAE,CAAC,CAAC;IACZ,OAAO,IAAI,OAAO,GAAG,CAAC;AACxB,CAAC;AAED,8FAA8F;AAC9F,MAAM,UAAU,iBAAiB,CAAC,KAAa;IAC7C,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AAC/B,CAAC;AAED,oFAAoF;AACpF,MAAM,UAAU,aAAa,CAAC,KAAc;IAC1C,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,MAAM,CAAC;IAClC,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC;IACnD,IAAI,OAAO,KAAK,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACrD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IAC9E,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QACtB,OAAO,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;IACvG,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IAE9F,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC;IACjF,OAAO,KAAK,OAAO;SAChB,GAAG,CACF,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CACf,GAAG,6BAA6B,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,aAAa,CAAC,KAAK,CAAC,EAAE,CAC3F;SACA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;AACpB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ankhorage/navigator",
3
- "version": "1.5.0",
3
+ "version": "1.5.2",
4
4
  "description": "Standalone manifest-driven navigator capability for Expo Router across React Native and React Native Web.",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -88,7 +88,7 @@
88
88
  },
89
89
  "devDependencies": {
90
90
  "@ankhorage/surface": "^3.4.1",
91
- "@ankhorage/devtools": "^1.11.0",
91
+ "@ankhorage/devtools": "^1.11.5",
92
92
  "@ankhorage/paradox": "^0.1.24",
93
93
  "@react-native-vector-icons/fontawesome": "^13.1.3",
94
94
  "@react-native-vector-icons/fontawesome5": "^13.1.3",
@@ -105,5 +105,5 @@
105
105
  "react-native-web": "~0.21.0",
106
106
  "typescript": "~6.0.3"
107
107
  },
108
- "packageManager": "bun@1.4.1"
108
+ "packageManager": "bun@1.4.2"
109
109
  }