one 1.21.13 → 1.22.0

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 (110) hide show
  1. package/dist/cjs/Root.native.js.map +1 -1
  2. package/dist/cjs/cli/build.cjs +9 -17
  3. package/dist/cjs/cli/build.native.js +8 -16
  4. package/dist/cjs/cli/build.native.js.map +1 -1
  5. package/dist/cjs/cli.native.js.map +1 -1
  6. package/dist/cjs/clientLoaderResolver.native.js.map +1 -1
  7. package/dist/cjs/config.native.js.map +1 -1
  8. package/dist/cjs/constants.native.js.map +1 -1
  9. package/dist/cjs/constants.test.native.js.map +1 -1
  10. package/dist/cjs/createAPIRoute.native.js.map +1 -1
  11. package/dist/cjs/fork/NavigationContainer.cjs +2 -25
  12. package/dist/cjs/fork/NavigationContainer.native.js +1 -24
  13. package/dist/cjs/fork/NavigationContainer.native.js.map +1 -1
  14. package/dist/cjs/metro-config/withOne.test.cjs +2 -2
  15. package/dist/cjs/metro-config/withOne.test.native.js +2 -2
  16. package/dist/cjs/metro-config/withOne.test.native.js.map +1 -1
  17. package/dist/cjs/useLoader.native.js +0 -18
  18. package/dist/cjs/useLoader.native.js.map +1 -1
  19. package/dist/cjs/vite/one.cjs +2 -1
  20. package/dist/cjs/vite/one.native.js +6 -5
  21. package/dist/cjs/vite/one.native.js.map +1 -1
  22. package/dist/cjs/vite/plugins/bundledDevPlugin.cjs +130 -0
  23. package/dist/cjs/vite/plugins/bundledDevPlugin.native.js +154 -0
  24. package/dist/cjs/vite/plugins/bundledDevPlugin.native.js.map +1 -0
  25. package/dist/cjs/vite/plugins/devtoolsPlugin.cjs +4 -0
  26. package/dist/cjs/vite/plugins/devtoolsPlugin.native.js +5 -0
  27. package/dist/cjs/vite/plugins/devtoolsPlugin.native.js.map +1 -1
  28. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.cjs +5 -1
  29. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.native.js +5 -0
  30. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.native.js.map +1 -1
  31. package/dist/cjs/vite/plugins/virtualEntryPlugin.cjs +9 -0
  32. package/dist/cjs/vite/plugins/virtualEntryPlugin.native.js +10 -1
  33. package/dist/cjs/vite/plugins/virtualEntryPlugin.native.js.map +1 -1
  34. package/dist/esm/cli/build.mjs +9 -17
  35. package/dist/esm/cli/build.mjs.map +1 -1
  36. package/dist/esm/cli/build.native.js +8 -16
  37. package/dist/esm/cli/build.native.js.map +1 -1
  38. package/dist/esm/fork/NavigationContainer.mjs +2 -25
  39. package/dist/esm/fork/NavigationContainer.mjs.map +1 -1
  40. package/dist/esm/fork/NavigationContainer.native.js +1 -24
  41. package/dist/esm/fork/NavigationContainer.native.js.map +1 -1
  42. package/dist/esm/metro-config/withOne.test.mjs +2 -2
  43. package/dist/esm/metro-config/withOne.test.mjs.map +1 -1
  44. package/dist/esm/metro-config/withOne.test.native.js +2 -2
  45. package/dist/esm/metro-config/withOne.test.native.js.map +1 -1
  46. package/dist/esm/router/useScreens.test.mjs +1 -1
  47. package/dist/esm/router/useScreens.test.mjs.map +1 -1
  48. package/dist/esm/useLoader.native.js +0 -18
  49. package/dist/esm/useLoader.native.js.map +1 -1
  50. package/dist/esm/vite/one.mjs +2 -1
  51. package/dist/esm/vite/one.mjs.map +1 -1
  52. package/dist/esm/vite/one.native.js +6 -5
  53. package/dist/esm/vite/one.native.js.map +1 -1
  54. package/dist/esm/vite/plugins/bundledDevPlugin.mjs +94 -0
  55. package/dist/esm/vite/plugins/bundledDevPlugin.mjs.map +1 -0
  56. package/dist/esm/vite/plugins/bundledDevPlugin.native.js +115 -0
  57. package/dist/esm/vite/plugins/bundledDevPlugin.native.js.map +1 -0
  58. package/dist/esm/vite/plugins/devtoolsPlugin.mjs +4 -0
  59. package/dist/esm/vite/plugins/devtoolsPlugin.mjs.map +1 -1
  60. package/dist/esm/vite/plugins/devtoolsPlugin.native.js +5 -0
  61. package/dist/esm/vite/plugins/devtoolsPlugin.native.js.map +1 -1
  62. package/dist/esm/vite/plugins/fileSystemRouterPlugin.mjs +5 -1
  63. package/dist/esm/vite/plugins/fileSystemRouterPlugin.mjs.map +1 -1
  64. package/dist/esm/vite/plugins/fileSystemRouterPlugin.native.js +5 -0
  65. package/dist/esm/vite/plugins/fileSystemRouterPlugin.native.js.map +1 -1
  66. package/dist/esm/vite/plugins/virtualEntryPlugin.mjs +9 -0
  67. package/dist/esm/vite/plugins/virtualEntryPlugin.mjs.map +1 -1
  68. package/dist/esm/vite/plugins/virtualEntryPlugin.native.js +10 -1
  69. package/dist/esm/vite/plugins/virtualEntryPlugin.native.js.map +1 -1
  70. package/package.json +27 -27
  71. package/src/cli/build.ts +25 -37
  72. package/src/fork/NavigationContainer.tsx +10 -37
  73. package/src/metro-config/withOne.test.ts +6 -3
  74. package/src/useLoader.ts +6 -2
  75. package/src/vite/one.ts +3 -0
  76. package/src/vite/plugins/bundledDevPlugin.ts +116 -0
  77. package/src/vite/plugins/devtoolsPlugin.ts +19 -0
  78. package/src/vite/plugins/fileSystemRouterPlugin.tsx +14 -1
  79. package/src/vite/plugins/virtualEntryPlugin.ts +27 -0
  80. package/src/vite/types.ts +11 -0
  81. package/types/cli/build.d.ts.map +1 -1
  82. package/types/fork/NavigationContainer.d.ts.map +1 -1
  83. package/types/fork/useLinking.native.d.ts +4 -4
  84. package/types/layouts/Drawer.d.ts +4 -4
  85. package/types/layouts/Stack.d.ts +4 -4
  86. package/types/layouts/Tabs.d.ts +4 -4
  87. package/types/ui/TabContext.d.ts +7 -7
  88. package/types/ui/TabRouter.d.ts +5 -5
  89. package/types/ui/TabRouter.d.ts.map +1 -1
  90. package/types/ui/Tabs.d.ts +9 -9
  91. package/types/useLoader.d.ts.map +1 -1
  92. package/types/vite/one.d.ts.map +1 -1
  93. package/types/vite/plugins/bundledDevPlugin.d.ts +3 -0
  94. package/types/vite/plugins/bundledDevPlugin.d.ts.map +1 -0
  95. package/types/vite/plugins/devtoolsPlugin.d.ts.map +1 -1
  96. package/types/vite/plugins/fileSystemRouterPlugin.d.ts.map +1 -1
  97. package/types/vite/plugins/virtualEntryPlugin.d.ts.map +1 -1
  98. package/types/vite/types.d.ts +10 -0
  99. package/types/vite/types.d.ts.map +1 -1
  100. package/vendor/react-dom/package.json +1 -1
  101. package/dist/cjs/fork/SSRNavigationContainer.cjs +0 -149
  102. package/dist/cjs/fork/SSRNavigationContainer.native.js +0 -199
  103. package/dist/cjs/fork/SSRNavigationContainer.native.js.map +0 -1
  104. package/dist/esm/fork/SSRNavigationContainer.mjs +0 -124
  105. package/dist/esm/fork/SSRNavigationContainer.mjs.map +0 -1
  106. package/dist/esm/fork/SSRNavigationContainer.native.js +0 -160
  107. package/dist/esm/fork/SSRNavigationContainer.native.js.map +0 -1
  108. package/src/fork/SSRNavigationContainer.tsx +0 -148
  109. package/types/fork/SSRNavigationContainer.d.ts +0 -16
  110. package/types/fork/SSRNavigationContainer.d.ts.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"names":["NavigationBuilderContext","NavigationStateContext","SingleNavigatorContext","NavigationContainerRefContext","ThemeProvider","LinkingContext","jsx","noop","SSR_LINKING_CTX","options","SSR_BUILDER_CTX","onDispatchAction","onOptionsChange","scheduleUpdate","cb","flushUpdates","stackRef","current","SSR_SINGLE_NAV_CTX","register","unregister","SSR_NAV_REF","dispatch","navigate","reset","goBack","isFocused","canGoBack","getParent","getState","getRootState","getCurrentRoute","getCurrentOptions","isReady","addListener","removeListener","resetRoot","setOptions","setParams","popTo","pop","popToTop","push","replace","jumpTo","preload","getPartialState","state","key","routeNames","partial","stale","routes","map","route","stateCtxCache","WeakMap","getStateContext","initialState","getKey","setKey","setState","getIsInitial","cached","get","ctx","set","SSRNavigationContainer","theme","linking","children","linkingCtx","Provider","value"],"sources":["../../../src/fork/SSRNavigationContainer.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,160 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { NavigationBuilderContext } from "@react-navigation/core/lib/module/NavigationBuilderContext";
3
- import { NavigationStateContext } from "@react-navigation/core/lib/module/NavigationStateContext";
4
- import { SingleNavigatorContext } from "@react-navigation/core/lib/module/EnsureSingleNavigator";
5
- import { NavigationContainerRefContext, ThemeProvider } from "@react-navigation/core";
6
- import { LinkingContext } from "@react-navigation/native";
7
- import * as React from "react";
8
- var noop = function () {};
9
- var SSR_LINKING_CTX = {
10
- options: void 0
11
- };
12
- var SSR_BUILDER_CTX = {
13
- onDispatchAction: noop,
14
- onOptionsChange: noop,
15
- // must execute callback immediately — useNavigationBuilder calls this during render
16
- scheduleUpdate: function (cb) {
17
- return cb();
18
- },
19
- flushUpdates: noop,
20
- stackRef: {
21
- current: void 0
22
- }
23
- };
24
- var SSR_SINGLE_NAV_CTX = {
25
- register: noop,
26
- unregister: noop
27
- };
28
- var SSR_NAV_REF = {
29
- dispatch: noop,
30
- navigate: noop,
31
- reset: noop,
32
- goBack: noop,
33
- isFocused: function () {
34
- return false;
35
- },
36
- canGoBack: function () {
37
- return false;
38
- },
39
- getParent: function () {
40
- return void 0;
41
- },
42
- getState: function () {
43
- return void 0;
44
- },
45
- getRootState: function () {
46
- return void 0;
47
- },
48
- getCurrentRoute: function () {
49
- return void 0;
50
- },
51
- getCurrentOptions: function () {
52
- return void 0;
53
- },
54
- isReady: function () {
55
- return false;
56
- },
57
- addListener: function () {
58
- return noop;
59
- },
60
- removeListener: noop,
61
- resetRoot: noop,
62
- setOptions: noop,
63
- // CommonActions methods
64
- setParams: noop,
65
- popTo: noop,
66
- pop: noop,
67
- popToTop: noop,
68
- push: noop,
69
- replace: noop,
70
- jumpTo: noop,
71
- preload: noop
72
- };
73
- var getPartialState = function (state) {
74
- if (!state) return void 0;
75
- var {
76
- key,
77
- routeNames,
78
- ...partial
79
- } = state;
80
- return {
81
- ...partial,
82
- stale: true,
83
- routes: state.routes.map(function (route) {
84
- return route.state ? {
85
- ...route,
86
- state: getPartialState(route.state)
87
- } : route;
88
- })
89
- };
90
- };
91
- var stateCtxCache = /* @__PURE__ */new WeakMap();
92
- function getStateContext(initialState) {
93
- if (!initialState) {
94
- return {
95
- state: void 0,
96
- getKey: function () {
97
- return void 0;
98
- },
99
- setKey: noop,
100
- getState: function () {
101
- return void 0;
102
- },
103
- setState: noop,
104
- getIsInitial: function () {
105
- return true;
106
- }
107
- };
108
- }
109
- var cached = stateCtxCache.get(initialState);
110
- if (cached) return cached;
111
- var partial = getPartialState(initialState);
112
- var ctx = {
113
- state: partial,
114
- getKey: function () {
115
- return void 0;
116
- },
117
- setKey: noop,
118
- getState: function () {
119
- return partial;
120
- },
121
- setState: noop,
122
- getIsInitial: function () {
123
- return true;
124
- }
125
- };
126
- stateCtxCache.set(initialState, ctx);
127
- return ctx;
128
- }
129
- function SSRNavigationContainer(param) {
130
- var {
131
- initialState,
132
- theme,
133
- linking,
134
- children
135
- } = param;
136
- var linkingCtx = linking ? {
137
- options: linking
138
- } : SSR_LINKING_CTX;
139
- return /* @__PURE__ */_jsx(LinkingContext.Provider, {
140
- value: linkingCtx,
141
- children: /* @__PURE__ */_jsx(NavigationContainerRefContext.Provider, {
142
- value: SSR_NAV_REF,
143
- children: /* @__PURE__ */_jsx(NavigationBuilderContext.Provider, {
144
- value: SSR_BUILDER_CTX,
145
- children: /* @__PURE__ */_jsx(NavigationStateContext.Provider, {
146
- value: getStateContext(initialState),
147
- children: /* @__PURE__ */_jsx(SingleNavigatorContext.Provider, {
148
- value: SSR_SINGLE_NAV_CTX,
149
- children: /* @__PURE__ */_jsx(ThemeProvider, {
150
- value: theme,
151
- children
152
- })
153
- })
154
- })
155
- })
156
- })
157
- });
158
- }
159
- export { SSRNavigationContainer };
160
- //# sourceMappingURL=SSRNavigationContainer.native.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["jsx","_jsx","NavigationBuilderContext","NavigationStateContext","SingleNavigatorContext","NavigationContainerRefContext","ThemeProvider","LinkingContext","React","noop","SSR_LINKING_CTX","options","SSR_BUILDER_CTX","onDispatchAction","onOptionsChange","scheduleUpdate","cb","flushUpdates","stackRef","current","SSR_SINGLE_NAV_CTX","register","unregister","SSR_NAV_REF","dispatch","navigate","reset","goBack","isFocused","canGoBack","getParent","getState","getRootState","getCurrentRoute","getCurrentOptions","isReady","addListener","removeListener","resetRoot","setOptions","setParams","popTo","pop","popToTop","push","replace","jumpTo","preload","getPartialState","state","key","routeNames","partial","stale","routes","map","route","stateCtxCache","WeakMap","getStateContext","initialState","getKey"],"sources":["../../../src/fork/SSRNavigationContainer.tsx"],"sourcesContent":[null],"mappings":"AAUA,SAASA,GAAA,IAAAC,IAAA,2BAAgC;AAEzC,SAASC,wBAAA,QAA8B;AAEvC,SAASC,sBAAA,QAA8B;AACvC,SAASC,sBAAA,iEAAoD;AAC7D,SAASC,6BAAsB,EAAAC,aAAA;AA4HjB,SAAAC,cAAA;AAzHd,OAAM,KAAAC,KAAO,MAAM;AAAC,IAAAC,IAAA,YAAAA,CAAA,GAGpB;AAGA,IAAAC,eAAM;EACJC,OAAA;AAAkB;AACD,IAAAC,eAAA;EAEjBC,gBAAgB,EAACJ,IAAA;EACjBK,eAAc,EAAAL,IAAA;EACd;EACFM,cAAA,WAAAA,CAAAC,EAAA;IAEA,OAAMA,EAAA;EACJ;EACAC,YAAY,EAAAR,IAAA;EACdS,QAAA;IAGAC,OAAM;EACJ;AAAU;AACA,IACVC,kBAAO;EACPC,QAAQ,EAAAZ,IAAA;EACRa,UAAA,EAAWb;AAAM;AACA,IACjBc,WAAW;EACXC,QAAA,EAAUf,IAAA;EACVgB,QAAA,EAAAhB,IAAc;EACdiB,KAAA,EAAAjB,IAAA;EACAkB,MAAA,EAAAlB,IAAA;EACAmB,SAAS,WAAAA,CAAA,EAAM;IACf,YAAa;EACb;EACAC,SAAA,EAAW,SAAAA,CAAA;IACX,YAAY;EAAA;EAEZC,SAAA,EAAW,SAAAA,CAAA;IACX,OAAO;EACP;EACAC,QAAA,EAAU,SAAAA,CAAA;IACV,OAAM;EACN;EACAC,YAAQ,WAAAA,CAAA;IACR,OAAS;EACX;EAEAC,eAAM,WAAAA,CAAA,EAAmB;IACvB,OAAK,KAAO;EACZ;EACAC,iBAAO,WAAAA,CAAA;IACL,OAAG;EAAA;EACIC,OACP,WAAAA,CAAA,EAAc;IAAO,OAAK;EAC0C;EAEtEC,WAAA,WAAAA,CAAA;IACF,OAAA3B,IAAA;EAIA;EAYA4B,cAAS,EAAA5B,IAAA;EACP6B,SAAK,EAAA7B,IAAA;EACH8B,UAAO,EAAA9B,IAAA;EAAA;EACE+B,SACP,EAAA/B,IAAQ;EAAMgC,KACd,EAAAhC,IAAA;EAAQiC,GAAA,EACRjC,IAAA;EAAgBkC,QAChB,EAAAlC,IAAU;EAAAmC,IACV,EAAAnC,IAAA;EAAoBoC,OACtB,EAAApC,IAAA;EACFqC,MAAA,EAAArC,IAAA;EAEAsC,OAAM,EAAAtC;AACN;AAEA,IAAAuC,eAAgB,YAAAA,CAAAC,KAAgB;EAChC,KAAAA,KAAM,EAAM;EAAA,IACV;IAAAC,GAAO;IAAAC,UAAA;IAAA,GAAAC;EAAA,IAAAH,KAAA;EAAA,OACP;IACA,GAAAG,OAAQ;IACRC,KAAA,MAAU;IACVC,MAAA,EAAAL,KAAU,CAAAK,MAAA,CAAAC,GAAA,WAAAC,KAAA;MACV,OAAAA,KAAc,CAAAP,KAAM;QACtB,GAAAO,KAAA;QACAP,KAAA,EAAAD,eAAkB,CAAAQ,KAAc,CAAGP,KAAA;MACnC,IAAOO,KAAA;IACT;EAEO;AAAgC;AACrC,IACAC,aAAA,sBAAAC,OAAA;AAAA,SACAC,gBAAAC,YAAA;EACA,KAAAA,YAAA;IAMC;MACDX,KAAM;MACNY,MACE,WAAAA,CAAA;QAYJ","ignoreList":[]}
@@ -1,148 +0,0 @@
1
- /**
2
- * SSR-optimized replacement for BaseNavigationContainer.
3
- * Provides only the 5 contexts that child navigators need during SSR render,
4
- * with static/no-op values. Eliminates 32+ hooks and reduces 8 providers to 5.
5
- *
6
- * Requires @react-navigation/core package.json exports to include internal context paths.
7
- * See postinstall patch in the repo.
8
- */
9
-
10
- // @ts-ignore internal module (exports patched at install time)
11
- import { NavigationBuilderContext } from '@react-navigation/core/lib/module/NavigationBuilderContext'
12
- // @ts-ignore internal module
13
- import { NavigationStateContext } from '@react-navigation/core/lib/module/NavigationStateContext'
14
- // @ts-ignore internal module
15
- import { SingleNavigatorContext } from '@react-navigation/core/lib/module/EnsureSingleNavigator'
16
- import { NavigationContainerRefContext, ThemeProvider } from '@react-navigation/core'
17
- import { LinkingContext } from '@react-navigation/native'
18
- import * as React from 'react'
19
-
20
- const noop = () => {}
21
-
22
- // minimal linking context for SSR — tabs needs .options to resolve triggers
23
- const SSR_LINKING_CTX = { options: undefined as any }
24
-
25
- // static context values — never change, zero allocations per render
26
- const SSR_BUILDER_CTX = {
27
- onDispatchAction: noop,
28
- onOptionsChange: noop,
29
- // must execute callback immediately — useNavigationBuilder calls this during render
30
- scheduleUpdate: (cb: () => void) => cb(),
31
- flushUpdates: noop,
32
- stackRef: { current: undefined },
33
- }
34
-
35
- const SSR_SINGLE_NAV_CTX = {
36
- register: noop,
37
- unregister: noop,
38
- }
39
-
40
- // no-op navigation ref so useNavigation() doesn't throw during SSR
41
- const SSR_NAV_REF = {
42
- dispatch: noop,
43
- navigate: noop,
44
- reset: noop,
45
- goBack: noop,
46
- isFocused: () => false,
47
- canGoBack: () => false,
48
- getParent: () => undefined,
49
- getState: () => undefined,
50
- getRootState: () => undefined,
51
- getCurrentRoute: () => undefined,
52
- getCurrentOptions: () => undefined,
53
- isReady: () => false,
54
- addListener: () => noop,
55
- removeListener: noop,
56
- resetRoot: noop,
57
- setOptions: noop,
58
- // CommonActions methods
59
- setParams: noop,
60
- popTo: noop,
61
- pop: noop,
62
- popToTop: noop,
63
- push: noop,
64
- replace: noop,
65
- jumpTo: noop,
66
- preload: noop,
67
- } as any
68
-
69
- const getPartialState = (state: any): any => {
70
- if (!state) return undefined
71
- const { key, routeNames, ...partial } = state
72
- return {
73
- ...partial,
74
- stale: true as const,
75
- routes: state.routes.map((route: any) =>
76
- route.state ? { ...route, state: getPartialState(route.state) } : route
77
- ),
78
- }
79
- }
80
-
81
- // cache state contexts by navigation state identity to avoid deep clone thrashing
82
- // under concurrent SSR requests with different URLs
83
- const stateCtxCache = new WeakMap<
84
- object,
85
- {
86
- state: any
87
- getKey: () => string | undefined
88
- setKey: () => void
89
- getState: () => any
90
- setState: () => void
91
- getIsInitial: () => boolean
92
- }
93
- >()
94
-
95
- function getStateContext(initialState: any) {
96
- if (!initialState) {
97
- return {
98
- state: undefined,
99
- getKey: () => undefined as string | undefined,
100
- setKey: noop,
101
- getState: () => undefined,
102
- setState: noop,
103
- getIsInitial: () => true,
104
- }
105
- }
106
-
107
- const cached = stateCtxCache.get(initialState)
108
- if (cached) return cached
109
-
110
- const partial = getPartialState(initialState)
111
- const ctx = {
112
- state: partial,
113
- getKey: () => undefined as string | undefined,
114
- setKey: noop,
115
- getState: () => partial,
116
- setState: noop,
117
- getIsInitial: () => true,
118
- }
119
- stateCtxCache.set(initialState, ctx)
120
- return ctx
121
- }
122
-
123
- export function SSRNavigationContainer({
124
- initialState,
125
- theme,
126
- linking,
127
- children,
128
- }: {
129
- initialState: any
130
- theme: any
131
- linking?: any
132
- children: React.ReactNode
133
- }) {
134
- const linkingCtx = linking ? { options: linking } : SSR_LINKING_CTX
135
- return (
136
- <LinkingContext.Provider value={linkingCtx}>
137
- <NavigationContainerRefContext.Provider value={SSR_NAV_REF}>
138
- <NavigationBuilderContext.Provider value={SSR_BUILDER_CTX}>
139
- <NavigationStateContext.Provider value={getStateContext(initialState)}>
140
- <SingleNavigatorContext.Provider value={SSR_SINGLE_NAV_CTX}>
141
- <ThemeProvider value={theme}>{children}</ThemeProvider>
142
- </SingleNavigatorContext.Provider>
143
- </NavigationStateContext.Provider>
144
- </NavigationBuilderContext.Provider>
145
- </NavigationContainerRefContext.Provider>
146
- </LinkingContext.Provider>
147
- )
148
- }
@@ -1,16 +0,0 @@
1
- /**
2
- * SSR-optimized replacement for BaseNavigationContainer.
3
- * Provides only the 5 contexts that child navigators need during SSR render,
4
- * with static/no-op values. Eliminates 32+ hooks and reduces 8 providers to 5.
5
- *
6
- * Requires @react-navigation/core package.json exports to include internal context paths.
7
- * See postinstall patch in the repo.
8
- */
9
- import * as React from 'react';
10
- export declare function SSRNavigationContainer({ initialState, theme, linking, children, }: {
11
- initialState: any;
12
- theme: any;
13
- linking?: any;
14
- children: React.ReactNode;
15
- }): import("react/jsx-runtime").JSX.Element;
16
- //# sourceMappingURL=SSRNavigationContainer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SSRNavigationContainer.d.ts","sourceRoot":"","sources":["../../src/fork/SSRNavigationContainer.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAUH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAyG9B,wBAAgB,sBAAsB,CAAC,EACrC,YAAY,EACZ,KAAK,EACL,OAAO,EACP,QAAQ,GACT,EAAE;IACD,YAAY,EAAE,GAAG,CAAA;IACjB,KAAK,EAAE,GAAG,CAAA;IACV,OAAO,CAAC,EAAE,GAAG,CAAA;IACb,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAC1B,2CAeA"}