vxrn 1.12.8 → 1.13.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.
- package/dist/config/getAdditionalViteConfig.mjs +1 -4
- package/dist/config/getAdditionalViteConfig.mjs.map +1 -1
- package/dist/config/getAdditionalViteConfig.native.js +1 -4
- package/dist/config/getAdditionalViteConfig.native.js.map +1 -1
- package/dist/config/getReactNativePlugins.mjs +1 -5
- package/dist/config/getReactNativePlugins.mjs.map +1 -1
- package/dist/config/getReactNativePlugins.native.js +1 -5
- package/dist/config/getReactNativePlugins.native.js.map +1 -1
- package/dist/exports/build.mjs +5 -0
- package/dist/exports/build.mjs.map +1 -1
- package/dist/exports/build.native.js +5 -0
- package/dist/exports/build.native.js.map +1 -1
- package/dist/exports/createServer.mjs +30 -25
- package/dist/exports/createServer.mjs.map +1 -1
- package/dist/exports/createServer.native.js +6 -3
- package/dist/exports/createServer.native.js.map +1 -1
- package/dist/exports/prebuild.mjs +25 -1
- package/dist/exports/prebuild.mjs.map +1 -1
- package/dist/exports/prebuild.native.js +30 -1
- package/dist/exports/prebuild.native.js.map +1 -1
- package/dist/exports/serve.mjs +2 -2
- package/dist/exports/serve.mjs.map +1 -1
- package/dist/exports/serve.native.js +2 -2
- package/dist/exports/serve.native.js.map +1 -1
- package/dist/exports/serveStaticAssets.mjs +43 -11
- package/dist/exports/serveStaticAssets.mjs.map +1 -1
- package/dist/exports/serveStaticAssets.native.js +69 -6
- package/dist/exports/serveStaticAssets.native.js.map +1 -1
- package/dist/index.js +1 -2
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1 -2
- package/dist/index.mjs.map +1 -1
- package/dist/index.native.js +1 -2
- package/dist/index.native.js.map +1 -1
- package/dist/patches/builtInDepPatches.mjs +14 -0
- package/dist/patches/builtInDepPatches.mjs.map +1 -1
- package/dist/patches/builtInDepPatches.native.js +14 -0
- package/dist/patches/builtInDepPatches.native.js.map +1 -1
- package/dist/plugins/clientInjectPlugin.mjs +2 -62
- package/dist/plugins/clientInjectPlugin.mjs.map +1 -1
- package/dist/plugins/clientInjectPlugin.native.js +2 -75
- package/dist/plugins/clientInjectPlugin.native.js.map +1 -1
- package/dist/plugins/reactNativeDevAssetPlugin.mjs +1 -3
- package/dist/plugins/reactNativeDevAssetPlugin.mjs.map +1 -1
- package/dist/plugins/reactNativeDevAssetPlugin.native.js +1 -3
- package/dist/plugins/reactNativeDevAssetPlugin.native.js.map +1 -1
- package/dist/plugins/reactNativeDevServer.mjs +55 -77
- package/dist/plugins/reactNativeDevServer.mjs.map +1 -1
- package/dist/plugins/reactNativeDevServer.native.js +73 -84
- package/dist/plugins/reactNativeDevServer.native.js.map +1 -1
- package/dist/plugins/serverExtensions.test.mjs +12 -6
- package/dist/plugins/serverExtensions.test.mjs.map +1 -1
- package/dist/plugins/serverExtensions.test.native.js +12 -6
- package/dist/plugins/serverExtensions.test.native.js.map +1 -1
- package/dist/rn-commands/bundle/buildBundle.mjs +11 -35
- package/dist/rn-commands/bundle/buildBundle.mjs.map +1 -1
- package/dist/rn-commands/bundle/buildBundle.native.js +9 -36
- package/dist/rn-commands/bundle/buildBundle.native.js.map +1 -1
- package/dist/runtime/hmr-client.mjs +125 -0
- package/dist/runtime/hmr-client.mjs.map +1 -0
- package/dist/runtime/hmr-client.native.js +197 -0
- package/dist/runtime/hmr-client.native.js.map +1 -0
- package/dist/runtime/hmr-runtime.mjs +162 -0
- package/dist/runtime/hmr-runtime.mjs.map +1 -0
- package/dist/runtime/hmr-runtime.native.js +348 -0
- package/dist/runtime/hmr-runtime.native.js.map +1 -0
- package/dist/runtime/hmr-types.mjs +2 -0
- package/dist/runtime/hmr-types.mjs.map +1 -0
- package/dist/runtime/hmr-types.native.js +2 -0
- package/dist/runtime/hmr-types.native.js.map +1 -0
- package/dist/runtime/native-prelude.mjs +97 -0
- package/dist/runtime/native-prelude.mjs.map +1 -0
- package/dist/runtime/native-prelude.native.js +97 -0
- package/dist/runtime/native-prelude.native.js.map +1 -0
- package/dist/runtime/react-refresh-utils.mjs +19 -0
- package/dist/runtime/react-refresh-utils.mjs.map +1 -0
- package/dist/runtime/react-refresh-utils.native.js +24 -0
- package/dist/runtime/react-refresh-utils.native.js.map +1 -0
- package/dist/utils/createNativeDevEngine.mjs +661 -0
- package/dist/utils/createNativeDevEngine.mjs.map +1 -0
- package/dist/utils/createNativeDevEngine.native.js +702 -0
- package/dist/utils/createNativeDevEngine.native.js.map +1 -0
- package/dist/utils/patches.mjs +6 -2
- package/dist/utils/patches.mjs.map +1 -1
- package/dist/utils/patches.native.js +6 -2
- package/dist/utils/patches.native.js.map +1 -1
- package/dist/utils/scanDepsToOptimize.mjs +4 -3
- package/dist/utils/scanDepsToOptimize.mjs.map +1 -1
- package/dist/utils/scanDepsToOptimize.native.js +4 -3
- package/dist/utils/scanDepsToOptimize.native.js.map +1 -1
- package/expo-plugin.cjs +122 -0
- package/package.json +15 -19
- package/src/config/getAdditionalViteConfig.ts +1 -3
- package/src/config/getReactNativePlugins.ts +0 -6
- package/src/exports/build.ts +5 -0
- package/src/exports/createServer.ts +7 -2
- package/src/exports/prebuild.ts +45 -0
- package/src/exports/serve.ts +2 -1
- package/src/exports/serveStaticAssets.ts +67 -4
- package/src/index.ts +0 -2
- package/src/patches/builtInDepPatches.ts +29 -0
- package/src/plugins/clientInjectPlugin.ts +2 -109
- package/src/plugins/reactNativeDevAssetPlugin.ts +0 -21
- package/src/plugins/reactNativeDevServer.ts +57 -84
- package/src/plugins/serverExtensions.test.ts +6 -8
- package/src/rn-commands/bundle/buildBundle.ts +9 -62
- package/src/runtime/hmr-client.ts +215 -0
- package/src/runtime/hmr-runtime.ts +276 -0
- package/src/runtime/hmr-types.ts +84 -0
- package/src/runtime/native-prelude.ts +110 -0
- package/src/runtime/react-refresh-utils.ts +36 -0
- package/src/types.ts +22 -4
- package/src/utils/createNativeDevEngine.ts +942 -0
- package/src/utils/patches.ts +36 -18
- package/src/utils/scanDepsToOptimize.ts +2 -3
- package/types/config/getAdditionalViteConfig.d.ts.map +1 -1
- package/types/config/getOptionsFilled.d.ts +2 -18
- package/types/config/getOptionsFilled.d.ts.map +1 -1
- package/types/config/getReactNativePlugins.d.ts.map +1 -1
- package/types/exports/build.d.ts +1 -9
- package/types/exports/build.d.ts.map +1 -1
- package/types/exports/createServer.d.ts.map +1 -1
- package/types/exports/prebuild.d.ts.map +1 -1
- package/types/exports/serve.d.ts +2 -1
- package/types/exports/serve.d.ts.map +1 -1
- package/types/exports/serveStaticAssets.d.ts +12 -1
- package/types/exports/serveStaticAssets.d.ts.map +1 -1
- package/types/index.d.ts +0 -1
- package/types/index.d.ts.map +1 -1
- package/types/patches/builtInDepPatches.d.ts.map +1 -1
- package/types/plugins/clientInjectPlugin.d.ts +1 -7
- package/types/plugins/clientInjectPlugin.d.ts.map +1 -1
- package/types/plugins/reactNativeDevAssetPlugin.d.ts.map +1 -1
- package/types/plugins/reactNativeDevServer.d.ts.map +1 -1
- package/types/rn-commands/bundle/buildBundle.d.ts.map +1 -1
- package/types/runtime/hmr-client.d.ts +40 -0
- package/types/runtime/hmr-client.d.ts.map +1 -0
- package/types/runtime/hmr-runtime.d.ts +69 -0
- package/types/runtime/hmr-runtime.d.ts.map +1 -0
- package/types/runtime/hmr-types.d.ts +76 -0
- package/types/runtime/hmr-types.d.ts.map +1 -0
- package/types/runtime/native-prelude.d.ts +11 -0
- package/types/runtime/native-prelude.d.ts.map +1 -0
- package/types/runtime/react-refresh-utils.d.ts +3 -0
- package/types/runtime/react-refresh-utils.d.ts.map +1 -0
- package/types/types.d.ts +15 -1
- package/types/types.d.ts.map +1 -1
- package/types/utils/createNativeDevEngine.d.ts +42 -0
- package/types/utils/createNativeDevEngine.d.ts.map +1 -0
- package/types/utils/patches.d.ts.map +1 -1
- package/types/utils/scanDepsToOptimize.d.ts.map +1 -1
- package/dist/config/getReactNativeBuildConfig.mjs +0 -200
- package/dist/config/getReactNativeBuildConfig.mjs.map +0 -1
- package/dist/config/getReactNativeBuildConfig.native.js +0 -204
- package/dist/config/getReactNativeBuildConfig.native.js.map +0 -1
- package/dist/plugins/reactNativeHMRPlugin.mjs +0 -120
- package/dist/plugins/reactNativeHMRPlugin.mjs.map +0 -1
- package/dist/plugins/reactNativeHMRPlugin.native.js +0 -151
- package/dist/plugins/reactNativeHMRPlugin.native.js.map +0 -1
- package/dist/utils/filterPluginsForNative.mjs +0 -27
- package/dist/utils/filterPluginsForNative.mjs.map +0 -1
- package/dist/utils/filterPluginsForNative.native.js +0 -33
- package/dist/utils/filterPluginsForNative.native.js.map +0 -1
- package/dist/utils/getReactNativeBundle.mjs +0 -104
- package/dist/utils/getReactNativeBundle.mjs.map +0 -1
- package/dist/utils/getReactNativeBundle.native.js +0 -135
- package/dist/utils/getReactNativeBundle.native.js.map +0 -1
- package/dist/utils/hotUpdateCache.mjs +0 -3
- package/dist/utils/hotUpdateCache.mjs.map +0 -1
- package/dist/utils/hotUpdateCache.native.js +0 -3
- package/dist/utils/hotUpdateCache.native.js.map +0 -1
- package/dist/utils/isBuildingNativeBundle.mjs +0 -6
- package/dist/utils/isBuildingNativeBundle.mjs.map +0 -1
- package/dist/utils/isBuildingNativeBundle.native.js +0 -7
- package/dist/utils/isBuildingNativeBundle.native.js.map +0 -1
- package/dist/utils/swapPrebuiltReactModules.mjs +0 -168
- package/dist/utils/swapPrebuiltReactModules.mjs.map +0 -1
- package/dist/utils/swapPrebuiltReactModules.native.js +0 -181
- package/dist/utils/swapPrebuiltReactModules.native.js.map +0 -1
- package/dist/worker.mjs +0 -55
- package/dist/worker.mjs.map +0 -1
- package/dist/worker.native.js +0 -55
- package/dist/worker.native.js.map +0 -1
- package/react-native-template.js +0 -375
- package/src/config/getReactNativeBuildConfig.ts +0 -349
- package/src/plugins/reactNativeHMRPlugin.ts +0 -237
- package/src/utils/filterPluginsForNative.ts +0 -55
- package/src/utils/getReactNativeBundle.ts +0 -243
- package/src/utils/hotUpdateCache.ts +0 -1
- package/src/utils/isBuildingNativeBundle.ts +0 -7
- package/src/utils/swapPrebuiltReactModules.ts +0 -341
- package/src/worker.ts +0 -90
- package/types/config/getReactNativeBuildConfig.d.ts +0 -72
- package/types/config/getReactNativeBuildConfig.d.ts.map +0 -1
- package/types/plugins/reactNativeHMRPlugin.d.ts +0 -10
- package/types/plugins/reactNativeHMRPlugin.d.ts.map +0 -1
- package/types/utils/filterPluginsForNative.d.ts +0 -8
- package/types/utils/filterPluginsForNative.d.ts.map +0 -1
- package/types/utils/getReactNativeBundle.d.ts +0 -12
- package/types/utils/getReactNativeBundle.d.ts.map +0 -1
- package/types/utils/hotUpdateCache.d.ts +0 -2
- package/types/utils/hotUpdateCache.d.ts.map +0 -1
- package/types/utils/isBuildingNativeBundle.d.ts +0 -3
- package/types/utils/isBuildingNativeBundle.d.ts.map +0 -1
- package/types/utils/swapPrebuiltReactModules.d.ts +0 -9
- package/types/utils/swapPrebuiltReactModules.d.ts.map +0 -1
- package/types/worker.d.ts +0 -13
- package/types/worker.d.ts.map +0 -1
package/src/utils/patches.ts
CHANGED
|
@@ -103,6 +103,8 @@ export async function applyDependencyPatches(
|
|
|
103
103
|
|
|
104
104
|
// track results per module
|
|
105
105
|
const results = new Map<string, PatchResult>()
|
|
106
|
+
// track modules that already warned about transform failures (to avoid spam)
|
|
107
|
+
const transformWarnedModules = new Set<string>()
|
|
106
108
|
|
|
107
109
|
await Promise.all(
|
|
108
110
|
nodeModulesDirs.map(async (nodeModulesDir) => {
|
|
@@ -202,26 +204,42 @@ export async function applyDependencyPatches(
|
|
|
202
204
|
if (typeof patchDef === 'string') {
|
|
203
205
|
patchedContent = patchDef
|
|
204
206
|
} else if (Array.isArray(patchDef)) {
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
207
|
+
// strategy-array patches (flow/jsx/swc transforms) are non-critical
|
|
208
|
+
// if they fail (e.g. babel + lru-cache incompatibility on Node 24+),
|
|
209
|
+
// warn and skip rather than crashing the whole patch process
|
|
210
|
+
try {
|
|
211
|
+
let contents = sourceContent
|
|
212
|
+
for (const strategy of patchDef) {
|
|
213
|
+
if (strategy === 'flow') {
|
|
214
|
+
contents = await transformFlowBabel(contents)
|
|
215
|
+
}
|
|
216
|
+
if (strategy === 'swc' || strategy === 'jsx') {
|
|
217
|
+
contents =
|
|
218
|
+
(
|
|
219
|
+
await transformSWC(fullPath, contents, {
|
|
220
|
+
mode: 'build',
|
|
221
|
+
environment: 'ios',
|
|
222
|
+
forceJSX: strategy === 'jsx',
|
|
223
|
+
noHMR: true,
|
|
224
|
+
fixNonTypeSpecificImports: true,
|
|
225
|
+
})
|
|
226
|
+
)?.code || contents
|
|
227
|
+
}
|
|
209
228
|
}
|
|
210
|
-
if (
|
|
211
|
-
|
|
212
|
-
(
|
|
213
|
-
await transformSWC(fullPath, contents, {
|
|
214
|
-
mode: 'build',
|
|
215
|
-
environment: 'ios',
|
|
216
|
-
forceJSX: strategy === 'jsx',
|
|
217
|
-
noHMR: true,
|
|
218
|
-
fixNonTypeSpecificImports: true,
|
|
219
|
-
})
|
|
220
|
-
)?.code || contents
|
|
229
|
+
if (contents !== sourceContent) {
|
|
230
|
+
patchedContent = contents
|
|
221
231
|
}
|
|
222
|
-
}
|
|
223
|
-
|
|
224
|
-
|
|
232
|
+
} catch (transformErr) {
|
|
233
|
+
if (!transformWarnedModules.has(patch.module)) {
|
|
234
|
+
transformWarnedModules.add(patch.module)
|
|
235
|
+
console.warn(
|
|
236
|
+
` ⚠ Patch transform failed for ${patch.module} (likely Node version compat), skipping non-critical patch`
|
|
237
|
+
)
|
|
238
|
+
if (process.env.DEBUG) {
|
|
239
|
+
console.warn(transformErr)
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
return
|
|
225
243
|
}
|
|
226
244
|
} else {
|
|
227
245
|
const out = await patchDef(sourceContent)
|
|
@@ -2,7 +2,7 @@ import { createDebugger } from '@vxrn/debug'
|
|
|
2
2
|
import FSExtra from 'fs-extra'
|
|
3
3
|
import path, { dirname, extname, join, sep } from 'node:path'
|
|
4
4
|
|
|
5
|
-
const { debug } = createDebugger(`vxrn:scanDepsToOptimize`)
|
|
5
|
+
const { debug, debugDetails } = createDebugger(`vxrn:scanDepsToOptimize`)
|
|
6
6
|
|
|
7
7
|
export type ScanDepsResult = {
|
|
8
8
|
prebundleDeps: string[]
|
|
@@ -52,7 +52,6 @@ export const EXCLUDE_LIST = [
|
|
|
52
52
|
|
|
53
53
|
// Native only, we don't expect SSR to use these packages.
|
|
54
54
|
// Also, some of these packages might attempt to import from react-native internals, which will break in SSR while react-native is aliased to react-native-web.
|
|
55
|
-
'@vxrn/react-native-prebuilt',
|
|
56
55
|
'@vxrn/vite-native-hmr',
|
|
57
56
|
'@vxrn/compiler',
|
|
58
57
|
'@vxrn/vite-native-client',
|
|
@@ -294,7 +293,7 @@ export async function scanDepsToOptimize(
|
|
|
294
293
|
|
|
295
294
|
const result = [...depsToPreBundle, ...subDeps.prebundleDeps]
|
|
296
295
|
|
|
297
|
-
|
|
296
|
+
debugDetails?.(`final result ${JSON.stringify(result, null, 2)}`)
|
|
298
297
|
|
|
299
298
|
proceededDeps.set(dep, result)
|
|
300
299
|
return result
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getAdditionalViteConfig.d.ts","sourceRoot":"","sources":["../../src/config/getAdditionalViteConfig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAc,MAAM,MAAM,CAAA;AAMpD;;GAEG;AACH,wBAAgB,uBAAuB,IAAI,IAAI,CAAC,YAAY,EAAE,SAAS,CAAC,
|
|
1
|
+
{"version":3,"file":"getAdditionalViteConfig.d.ts","sourceRoot":"","sources":["../../src/config/getAdditionalViteConfig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAc,MAAM,MAAM,CAAA;AAMpD;;GAEG;AACH,wBAAgB,uBAAuB,IAAI,IAAI,CAAC,YAAY,EAAE,SAAS,CAAC,CAwCvE"}
|
|
@@ -38,15 +38,7 @@ export declare function fillOptions(options: VXRNOptions, { mode }?: {
|
|
|
38
38
|
readonly mode: "development" | "production";
|
|
39
39
|
readonly clean: false | "vite";
|
|
40
40
|
readonly root: string;
|
|
41
|
-
readonly server:
|
|
42
|
-
host?: string;
|
|
43
|
-
port?: number;
|
|
44
|
-
compress?: boolean;
|
|
45
|
-
loadEnv?: boolean;
|
|
46
|
-
}> & {
|
|
47
|
-
url: string;
|
|
48
|
-
protocol: string;
|
|
49
|
-
};
|
|
41
|
+
readonly server: import("..").VXRNServeOptionsFilled;
|
|
50
42
|
readonly entries: {
|
|
51
43
|
native: string;
|
|
52
44
|
readonly web?: string;
|
|
@@ -78,15 +70,7 @@ export declare function getOptionsFilled(): {
|
|
|
78
70
|
readonly mode: "development" | "production";
|
|
79
71
|
readonly clean: false | "vite";
|
|
80
72
|
readonly root: string;
|
|
81
|
-
readonly server:
|
|
82
|
-
host?: string;
|
|
83
|
-
port?: number;
|
|
84
|
-
compress?: boolean;
|
|
85
|
-
loadEnv?: boolean;
|
|
86
|
-
}> & {
|
|
87
|
-
url: string;
|
|
88
|
-
protocol: string;
|
|
89
|
-
};
|
|
73
|
+
readonly server: import("..").VXRNServeOptionsFilled;
|
|
90
74
|
readonly entries: {
|
|
91
75
|
native: string;
|
|
92
76
|
readonly web?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getOptionsFilled.d.ts","sourceRoot":"","sources":["../../src/config/getOptionsFilled.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAOjD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,MAAM,iBAAiB,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC,CAAA;AAIvE,wBAAsB,WAAW,CAC/B,OAAO,EAAE,WAAW,EACpB,EAAE,IAAY,EAAE,GAAE;IAAE,IAAI,CAAC,EAAE,IAAI,CAAA;CAAO
|
|
1
|
+
{"version":3,"file":"getOptionsFilled.d.ts","sourceRoot":"","sources":["../../src/config/getOptionsFilled.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAOjD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,MAAM,iBAAiB,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC,CAAA;AAIvE,wBAAsB,WAAW,CAC/B,OAAO,EAAE,WAAW,EACpB,EAAE,IAAY,EAAE,GAAE;IAAE,IAAI,CAAC,EAAE,IAAI,CAAA;CAAO;;;;;;;;;;;;;;;;;;;;;;;;;;cAJP,CAAC;eAMF,CAAA;;;;GAiE/B;AAED,wBAAgB,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;cAzEC,CAAC;eAMF,CAAA;;;;SAqE/B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getReactNativePlugins.d.ts","sourceRoot":"","sources":["../../src/config/getReactNativePlugins.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,6CAA6C,EAG7C,KAAK,kBAAkB,EACxB,MAAM,yBAAyB,CAAA;AAEhC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"getReactNativePlugins.d.ts","sourceRoot":"","sources":["../../src/config/getReactNativePlugins.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,6CAA6C,EAG7C,KAAK,kBAAkB,EACxB,MAAM,yBAAyB,CAAA;AAEhC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AAQ3D,wBAAgB,qBAAqB,CACnC,MAAM,CAAC,EAAE,OAAO,CACd,IAAI,CAAC,iBAAiB,EAAE,UAAU,GAAG,aAAa,GAAG,kBAAkB,GAAG,SAAS,CAAC,CACrF,EACD,EACE,KAAK,GACN,GAAE;IACD,sDAAsD;IACtD,KAAK,CAAC,EAAE,CAAC,kBAAkB,GAAG,6CAA6C,CAAC,GAAG,IAAI,CAAA;CAC/E,iCAyBP"}
|
package/types/exports/build.d.ts
CHANGED
|
@@ -13,15 +13,7 @@ export declare const build: (optionsIn: VXRNOptions, buildArgs?: BuildArgs) => P
|
|
|
13
13
|
readonly mode: "development" | "production";
|
|
14
14
|
readonly clean: false | "vite";
|
|
15
15
|
readonly root: string;
|
|
16
|
-
readonly server:
|
|
17
|
-
host?: string;
|
|
18
|
-
port?: number;
|
|
19
|
-
compress?: boolean;
|
|
20
|
-
loadEnv?: boolean;
|
|
21
|
-
}> & {
|
|
22
|
-
url: string;
|
|
23
|
-
protocol: string;
|
|
24
|
-
};
|
|
16
|
+
readonly server: import("..").VXRNServeOptionsFilled;
|
|
25
17
|
readonly entries: {
|
|
26
18
|
native: string;
|
|
27
19
|
readonly web?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../src/exports/build.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAkB,MAAM,UAAU,CAAA;AAaxE,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAuBtD,eAAO,MAAM,KAAK,GAAU,WAAW,WAAW,EAAE,YAAW,SAAc
|
|
1
|
+
{"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../src/exports/build.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAkB,MAAM,UAAU,CAAA;AAaxE,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAuBtD,eAAO,MAAM,KAAK,GAAU,WAAW,WAAW,EAAE,YAAW,SAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA+BpC,CAAC;mBAGhC,CAAC;;;;;;;;;;;;EA8SV,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createServer.d.ts","sourceRoot":"","sources":["../../src/exports/createServer.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAChD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAMhC,eAAO,MAAM,gBAAgB,GAAI,KAAK,IAAI,EAAE,SAAS,gBAAgB,SAIpE,CAAA;AAED,eAAO,MAAM,gBAAgB,GAC3B,KAAK,IAAI,EACT,SAAS,gBAAgB,EACzB,+BAGG;IAAE,eAAe,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAO,
|
|
1
|
+
{"version":3,"file":"createServer.d.ts","sourceRoot":"","sources":["../../src/exports/createServer.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAChD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAMhC,eAAO,MAAM,gBAAgB,GAAI,KAAK,IAAI,EAAE,SAAS,gBAAgB,SAIpE,CAAA;AAED,eAAO,MAAM,gBAAgB,GAC3B,KAAK,IAAI,EACT,SAAS,gBAAgB,EACzB,+BAGG;IAAE,eAAe,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAO,wFA8CvD,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prebuild.d.ts","sourceRoot":"","sources":["../../src/exports/prebuild.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,QAAQ,GAAU,oDAK5B;IACD,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,KAAK,GAAG,SAAS,GAAG,MAAM,CAAA;IACrC,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,IAAI,EAAE,OAAO,CAAA;CACd,
|
|
1
|
+
{"version":3,"file":"prebuild.d.ts","sourceRoot":"","sources":["../../src/exports/prebuild.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,QAAQ,GAAU,oDAK5B;IACD,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,KAAK,GAAG,SAAS,GAAG,MAAM,CAAA;IACrC,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,IAAI,EAAE,OAAO,CAAA;CACd,kBAiMA,CAAA;AA2DD,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,iBAOpB"}
|
package/types/exports/serve.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ import type { VXRNServeOptions } from '../types';
|
|
|
3
3
|
export { loadEnv } from '../exports/loadEnv';
|
|
4
4
|
export * from '../utils/getServerEntry';
|
|
5
5
|
export { createProdServer, applyCompression } from './createServer';
|
|
6
|
-
export { serveStaticAssets } from './serveStaticAssets';
|
|
6
|
+
export { serveStaticAssets, compileCacheRules } from './serveStaticAssets';
|
|
7
|
+
export type { CompiledCacheRules } from './serveStaticAssets';
|
|
7
8
|
export declare const serve: ({ afterRegisterRoutes, beforeRegisterRoutes, app, outDir, ...optionsIn }: VXRNServeOptions) => Promise<void>;
|
|
8
9
|
//# sourceMappingURL=serve.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../../src/exports/serve.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAA;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAGhD,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AAC5C,cAAc,yBAAyB,CAAA;AACvC,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../../src/exports/serve.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAA;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAGhD,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AAC5C,cAAc,yBAAyB,CAAA;AACvC,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AACnE,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAC1E,YAAY,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AAE7D,eAAO,MAAM,KAAK,GAAU,0EAMzB,gBAAgB,kBAuBlB,CAAA"}
|
|
@@ -1,7 +1,18 @@
|
|
|
1
1
|
import type { Context } from 'hono';
|
|
2
|
-
export
|
|
2
|
+
export type CompiledCacheRules = {
|
|
3
|
+
re: RegExp;
|
|
4
|
+
values: string[];
|
|
5
|
+
};
|
|
6
|
+
/**
|
|
7
|
+
* compile a cacheControl config (glob → header) into a single regex.
|
|
8
|
+
* each unique header value gets a capturing group — one regex.test()
|
|
9
|
+
* per request, then the matched group index maps to the header value.
|
|
10
|
+
*/
|
|
11
|
+
export declare function compileCacheRules(cacheControl: Record<string, string>): CompiledCacheRules;
|
|
12
|
+
export declare function serveStaticAssets({ context, next, outDir, cacheRules, }: {
|
|
3
13
|
context: Context;
|
|
4
14
|
next?: () => Promise<void>;
|
|
5
15
|
outDir?: string;
|
|
16
|
+
cacheRules?: CompiledCacheRules;
|
|
6
17
|
}): Promise<Response | undefined>;
|
|
7
18
|
//# sourceMappingURL=serveStaticAssets.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serveStaticAssets.d.ts","sourceRoot":"","sources":["../../src/exports/serveStaticAssets.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"serveStaticAssets.d.ts","sourceRoot":"","sources":["../../src/exports/serveStaticAssets.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAMnC,MAAM,MAAM,kBAAkB,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAAA;AAEjE;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACnC,kBAAkB,CAyBpB;AAED,wBAAsB,iBAAiB,CAAC,EACtC,OAAO,EACP,IAAI,EACJ,MAAe,EACf,UAAU,GACX,EAAE;IACD,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE,kBAAkB,CAAA;CAChC,iCA8CA"}
|
package/types/index.d.ts
CHANGED
|
@@ -18,5 +18,4 @@ export * from './utils/getServerEntry';
|
|
|
18
18
|
export * from './plugins/rollupRemoveUnusedImports';
|
|
19
19
|
export * from './plugins/autoDepOptimizePlugin';
|
|
20
20
|
export * from './types';
|
|
21
|
-
export { prebuildReactNativeModules } from './utils/swapPrebuiltReactModules';
|
|
22
21
|
//# sourceMappingURL=index.d.ts.map
|
package/types/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AACvC,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAA;AACnC,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AACvC,OAAO,EAAE,KAAK,EAAE,KAAK,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAA;AAE/D,OAAO,EACL,KAAK,iBAAiB,EACtB,gBAAgB,EAChB,WAAW,GACZ,MAAM,2BAA2B,CAAA;AAClC,cAAc,0BAA0B,CAAA;AACxC,cAAc,gCAAgC,CAAA;AAC9C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,iBAAiB,CAAA;AAC/B,cAAc,0BAA0B,CAAA;AACxC,cAAc,wBAAwB,CAAA;AAEtC,cAAc,qCAAqC,CAAA;AACnD,cAAc,iCAAiC,CAAA;AAE/C,cAAc,SAAS,CAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AACvC,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAA;AACnC,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AACvC,OAAO,EAAE,KAAK,EAAE,KAAK,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAA;AAE/D,OAAO,EACL,KAAK,iBAAiB,EACtB,gBAAgB,EAChB,WAAW,GACZ,MAAM,2BAA2B,CAAA;AAClC,cAAc,0BAA0B,CAAA;AACxC,cAAc,gCAAgC,CAAA;AAC9C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,iBAAiB,CAAA;AAC/B,cAAc,0BAA0B,CAAA;AACxC,cAAc,wBAAwB,CAAA;AAEtC,cAAc,qCAAqC,CAAA;AACnD,cAAc,iCAAiC,CAAA;AAE/C,cAAc,SAAS,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builtInDepPatches.d.ts","sourceRoot":"","sources":["../../src/patches/builtInDepPatches.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,QAAQ,EAAiC,MAAM,kBAAkB,CAAA;AAE/E,eAAO,MAAM,iBAAiB,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"builtInDepPatches.d.ts","sourceRoot":"","sources":["../../src/patches/builtInDepPatches.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,QAAQ,EAAiC,MAAM,kBAAkB,CAAA;AAE/E,eAAO,MAAM,iBAAiB,EAAE,QAAQ,EAsnBvC,CAAA"}
|
|
@@ -1,11 +1,5 @@
|
|
|
1
|
-
import type { Plugin, ResolvedConfig } from 'vite';
|
|
2
1
|
export declare function getServerConfigPlugin(): {
|
|
3
2
|
name: string;
|
|
4
|
-
configResolved(this: import("vite").MinimalPluginContextWithoutEnvironment, conf: ResolvedConfig): void;
|
|
3
|
+
configResolved(this: import("vite").MinimalPluginContextWithoutEnvironment, conf: import("vite").ResolvedConfig): void;
|
|
5
4
|
};
|
|
6
|
-
/**
|
|
7
|
-
* some values used by the client needs to be dynamically injected by the server
|
|
8
|
-
* @server-only
|
|
9
|
-
*/
|
|
10
|
-
export declare function nativeClientInjectPlugin(): Plugin;
|
|
11
5
|
//# sourceMappingURL=clientInjectPlugin.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clientInjectPlugin.d.ts","sourceRoot":"","sources":["../../src/plugins/clientInjectPlugin.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"clientInjectPlugin.d.ts","sourceRoot":"","sources":["../../src/plugins/clientInjectPlugin.ts"],"names":[],"mappings":"AAGA,wBAAgB,qBAAqB;;;EAapC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reactNativeDevAssetPlugin.d.ts","sourceRoot":"","sources":["../../src/plugins/reactNativeDevAssetPlugin.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAkB,MAAM,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"reactNativeDevAssetPlugin.d.ts","sourceRoot":"","sources":["../../src/plugins/reactNativeDevAssetPlugin.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAkB,MAAM,MAAM,CAAA;AAQlD,KAAK,+BAA+B,GAAG;IACrC,kGAAkG;IAClG,SAAS,EAAE,MAAM,EAAE,CAAA;IACnB,2BAA2B;IAC3B,IAAI,CAAC,EAAE,KAAK,GAAG,MAAM,CAAA;IACrB,qDAAqD;IACrD,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,CAAA;AAED,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,+BAA+B,GACvC,MAAM,CA0IR"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reactNativeDevServer.d.ts","sourceRoot":"","sources":["../../src/plugins/reactNativeDevServer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAW,MAAM,EAAiB,MAAM,MAAM,CAAA;AAM1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAA;
|
|
1
|
+
{"version":3,"file":"reactNativeDevServer.d.ts","sourceRoot":"","sources":["../../src/plugins/reactNativeDevServer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAW,MAAM,EAAiB,MAAM,MAAM,CAAA;AAM1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAA;AAWnE,wBAAgB,gCAAgC,CAC9C,OAAO,CAAC,EAAE,OAAO,CACf,IAAI,CAAC,iBAAiB,EAAE,UAAU,GAAG,aAAa,GAAG,kBAAkB,GAAG,SAAS,CAAC,CACrF,GACA,MAAM,CA4MR"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildBundle.d.ts","sourceRoot":"","sources":["../../../src/rn-commands/bundle/buildBundle.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"buildBundle.d.ts","sourceRoot":"","sources":["../../../src/rn-commands/bundle/buildBundle.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,iBAAiB,GAAG;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,OAAO,CAAA;IACnB,gBAAgB,EAAE,OAAO,CAAA;IACzB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,KAAK,GAAG,SAAS,CAAA;IAC3B,GAAG,EAAE,OAAO,CAAA;IACZ,YAAY,EAAE,MAAM,CAAA;IACpB,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAA;IAC7C,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,wBAAwB,EAAE,OAAO,CAAA;IACjC,OAAO,EAAE,OAAO,CAAA;IAChB,wBAAwB,EAAE,MAAM,CAAA;IAChC,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,cAAc,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;CAC/B,CAAA;AAED,wBAAsB,WAAW,CAC/B,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,EACpB,GAAG,EAAE,GAAG,EACR,IAAI,EAAE,iBAAiB,EACvB,UAAU,GAAE,GAAU,GACrB,OAAO,CAAC,IAAI,CAAC,CAkEf"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* HMR client for React Native.
|
|
3
|
+
* Ported from rollipop (https://github.com/leegeunhyeok/rollipop)
|
|
4
|
+
*
|
|
5
|
+
* connects to dev server WebSocket, handles HMR messages,
|
|
6
|
+
* and integrates with React Native's DevLoadingView and LogBox.
|
|
7
|
+
*/
|
|
8
|
+
import type { HMRClientLogLevel } from './hmr-types';
|
|
9
|
+
interface HMRClientNativeInterface {
|
|
10
|
+
enable(): void;
|
|
11
|
+
disable(): void;
|
|
12
|
+
registerBundle(requestUrl: string): void;
|
|
13
|
+
log(level: string, data: any[]): void;
|
|
14
|
+
setup(platform: string, bundleEntry: string, host: string, port: number | string, isEnabled: boolean, scheme?: string): void;
|
|
15
|
+
}
|
|
16
|
+
declare class HMRClient implements HMRClientNativeInterface {
|
|
17
|
+
static readonly STARTUP_ERROR = "Expected HMRClient.setup() call at startup";
|
|
18
|
+
static readonly MAX_PENDING_LOGS = 100;
|
|
19
|
+
private enabled;
|
|
20
|
+
private _socketHolder;
|
|
21
|
+
private unavailableMessage;
|
|
22
|
+
private compileErrorMessage;
|
|
23
|
+
private pendingUpdatesCount;
|
|
24
|
+
private readonly pendingLogs;
|
|
25
|
+
enable(): void;
|
|
26
|
+
disable(): void;
|
|
27
|
+
registerBundle(_requestUrl: string): void;
|
|
28
|
+
log(level: HMRClientLogLevel, data: any[]): void;
|
|
29
|
+
setup(platform: string, bundleEntry: string, host: string, port: number | string, isEnabled?: boolean, protocol?: string): void;
|
|
30
|
+
private send;
|
|
31
|
+
private flushEarlyLogs;
|
|
32
|
+
private showCompileErrorIfNeeded;
|
|
33
|
+
private handleConnection;
|
|
34
|
+
private handleConnectionError;
|
|
35
|
+
private handleMessage;
|
|
36
|
+
private handleClose;
|
|
37
|
+
}
|
|
38
|
+
declare const _default: HMRClient;
|
|
39
|
+
export default _default;
|
|
40
|
+
//# sourceMappingURL=hmr-client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hmr-client.d.ts","sourceRoot":"","sources":["../../src/runtime/hmr-client.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAsC,MAAM,aAAa,CAAA;AAIxF,UAAU,wBAAwB;IAChC,MAAM,IAAI,IAAI,CAAA;IACd,OAAO,IAAI,IAAI,CAAA;IACf,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;IACxC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;IACrC,KAAK,CACH,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GAAG,MAAM,EACrB,SAAS,EAAE,OAAO,EAClB,MAAM,CAAC,EAAE,MAAM,GACd,IAAI,CAAA;CACR;AAOD,cAAM,SAAU,YAAW,wBAAwB;IACjD,MAAM,CAAC,QAAQ,CAAC,aAAa,gDAA+C;IAC5E,MAAM,CAAC,QAAQ,CAAC,gBAAgB,OAAM;IAEtC,OAAO,CAAC,OAAO,CAAO;IACtB,OAAO,CAAC,aAAa,CAA8B;IACnD,OAAO,CAAC,kBAAkB,CAAsB;IAChD,OAAO,CAAC,mBAAmB,CAAsB;IACjD,OAAO,CAAC,mBAAmB,CAAI;IAC/B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAmC;IAE/D,MAAM;IAON,OAAO;IAIP,cAAc,CAAC,WAAW,EAAE,MAAM;IAIlC,GAAG,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,GAAG,EAAE;IAiBzC,KAAK,CACH,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GAAG,MAAM,EACrB,SAAS,UAAO,EAChB,QAAQ,SAAS;IAiDnB,OAAO,CAAC,IAAI;IAOZ,OAAO,CAAC,cAAc;IAatB,OAAO,CAAC,wBAAwB;IAQhC,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,qBAAqB;IAY7B,OAAO,CAAC,aAAa;IAyBrB,OAAO,CAAC,WAAW;CASpB;;AAID,wBAEE"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* HMR runtime for rolldown's devMode.
|
|
3
|
+
* Ported from rollipop (https://github.com/leegeunhyeok/rollipop)
|
|
4
|
+
*
|
|
5
|
+
* this file is compiled to a string and passed to rolldown's
|
|
6
|
+
* `devMode.implement` option. rolldown injects it at the top of the bundle
|
|
7
|
+
* and references `__rolldown_runtime__` for module registration and HMR.
|
|
8
|
+
*/
|
|
9
|
+
import type { DevRuntime as DefaultDevRuntime, HMRContext, HMRCustomMessage } from './hmr-types';
|
|
10
|
+
import { enqueueUpdate, isReactRefreshBoundary } from './react-refresh-utils';
|
|
11
|
+
declare global {
|
|
12
|
+
var __rolldown_runtime__: ReactNativeDevRuntime;
|
|
13
|
+
var __turboModuleProxy: (moduleName: string) => any;
|
|
14
|
+
var globalEvalWithSourceUrl: (code: string, sourceURL?: string) => void;
|
|
15
|
+
var nativeModuleProxy: Record<string, any>;
|
|
16
|
+
var __ReactRefresh: any;
|
|
17
|
+
var __VXRN_CUSTOM_HMR_HANDLER__: ((socket: WebSocket, message: HMRCustomMessage) => void) | undefined;
|
|
18
|
+
}
|
|
19
|
+
declare const DevRuntime: typeof DefaultDevRuntime;
|
|
20
|
+
declare var BaseDevRuntime: typeof DefaultDevRuntime;
|
|
21
|
+
declare class ModuleHotContext implements HMRContext {
|
|
22
|
+
private moduleId;
|
|
23
|
+
private socketHolder;
|
|
24
|
+
private readonly removeListeners;
|
|
25
|
+
acceptCallbacks: {
|
|
26
|
+
deps: string[];
|
|
27
|
+
fn: (moduleExports: Record<string, any>[]) => void;
|
|
28
|
+
}[];
|
|
29
|
+
constructor(moduleId: string, socketHolder: SocketHolder);
|
|
30
|
+
get refresh(): any;
|
|
31
|
+
get refreshUtils(): {
|
|
32
|
+
isReactRefreshBoundary: typeof isReactRefreshBoundary;
|
|
33
|
+
enqueueUpdate: typeof enqueueUpdate;
|
|
34
|
+
};
|
|
35
|
+
accept(...args: any[]): void;
|
|
36
|
+
invalidate(): void;
|
|
37
|
+
on(event: string, listener: (...args: any[]) => void): void;
|
|
38
|
+
off(event: string, listener: (...args: any[]) => void): void;
|
|
39
|
+
send(type: string, payload?: unknown): void;
|
|
40
|
+
cleanup(): void;
|
|
41
|
+
}
|
|
42
|
+
declare class SocketHolder {
|
|
43
|
+
private readonly queuedMessages;
|
|
44
|
+
private readonly emitter;
|
|
45
|
+
private _socket;
|
|
46
|
+
private _origin;
|
|
47
|
+
get socket(): WebSocket | null;
|
|
48
|
+
get origin(): string | null;
|
|
49
|
+
setup(socket: WebSocket, origin: string): void;
|
|
50
|
+
on(event: string, listener: (payload?: unknown) => void): void;
|
|
51
|
+
off(event: string, listener: (payload?: unknown) => void): void;
|
|
52
|
+
emit(event: string, payload?: unknown): void;
|
|
53
|
+
send(message: string): void;
|
|
54
|
+
flushQueuedMessages(): void;
|
|
55
|
+
close(): void;
|
|
56
|
+
}
|
|
57
|
+
declare class ReactNativeDevRuntime extends BaseDevRuntime {
|
|
58
|
+
socketHolder: SocketHolder;
|
|
59
|
+
moduleHotContexts: Map<string, ModuleHotContext>;
|
|
60
|
+
moduleHotContextsToBeUpdated: Map<string, ModuleHotContext>;
|
|
61
|
+
constructor();
|
|
62
|
+
createModuleHotContext(moduleId: string): ModuleHotContext;
|
|
63
|
+
applyUpdates(boundaries: [string, string][]): void;
|
|
64
|
+
setup(socket: WebSocket, origin: string): void;
|
|
65
|
+
private evaluate;
|
|
66
|
+
private reload;
|
|
67
|
+
}
|
|
68
|
+
export type { DevRuntime };
|
|
69
|
+
//# sourceMappingURL=hmr-runtime.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hmr-runtime.d.ts","sourceRoot":"","sources":["../../src/runtime/hmr-runtime.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
export interface HMRContext {
|
|
2
|
+
accept(...args: any[]): void;
|
|
3
|
+
invalidate(): void;
|
|
4
|
+
on(event: string, listener: (...args: any[]) => void): void;
|
|
5
|
+
off(event: string, listener: (...args: any[]) => void): void;
|
|
6
|
+
send(type: string, payload?: unknown): void;
|
|
7
|
+
}
|
|
8
|
+
export type HMRClientLogLevel = 'trace' | 'info' | 'warn' | 'error' | 'log' | 'group' | 'groupCollapsed' | 'groupEnd' | 'debug';
|
|
9
|
+
export type HMRClientMessage = {
|
|
10
|
+
type: 'hmr:connected';
|
|
11
|
+
bundleEntry: string;
|
|
12
|
+
platform: string;
|
|
13
|
+
} | {
|
|
14
|
+
type: 'hmr:module-registered';
|
|
15
|
+
modules: string[];
|
|
16
|
+
} | {
|
|
17
|
+
type: 'hmr:log';
|
|
18
|
+
level: HMRClientLogLevel;
|
|
19
|
+
data: any[];
|
|
20
|
+
} | {
|
|
21
|
+
type: 'hmr:invalidate';
|
|
22
|
+
moduleId: string;
|
|
23
|
+
};
|
|
24
|
+
export type HMRServerMessage = {
|
|
25
|
+
type: 'hmr:update-start';
|
|
26
|
+
} | {
|
|
27
|
+
type: 'hmr:update-done';
|
|
28
|
+
} | {
|
|
29
|
+
type: 'hmr:update';
|
|
30
|
+
code: string;
|
|
31
|
+
} | {
|
|
32
|
+
type: 'hmr:reload';
|
|
33
|
+
} | {
|
|
34
|
+
type: 'hmr:error';
|
|
35
|
+
payload: HMRServerError;
|
|
36
|
+
};
|
|
37
|
+
export type HMRCustomMessage = {
|
|
38
|
+
type: string;
|
|
39
|
+
payload: unknown;
|
|
40
|
+
};
|
|
41
|
+
export type HMRCustomHandler = (socket: WebSocket, message: HMRCustomMessage) => void;
|
|
42
|
+
export interface HMRServerError {
|
|
43
|
+
type: string;
|
|
44
|
+
message: string;
|
|
45
|
+
errors: {
|
|
46
|
+
description: string;
|
|
47
|
+
}[];
|
|
48
|
+
}
|
|
49
|
+
export interface DevRuntimeModule {
|
|
50
|
+
exportsHolder: {
|
|
51
|
+
exports: any;
|
|
52
|
+
};
|
|
53
|
+
id: string;
|
|
54
|
+
exports: any;
|
|
55
|
+
}
|
|
56
|
+
export interface DevRuntimeInterface {
|
|
57
|
+
modules: Record<string, DevRuntimeModule>;
|
|
58
|
+
createModuleHotContext(moduleId: string): void;
|
|
59
|
+
applyUpdates(boundaries: [string, string][]): void;
|
|
60
|
+
registerModule(id: string, exportsHolder: DevRuntimeModule['exportsHolder']): void;
|
|
61
|
+
loadExports(id: string): void;
|
|
62
|
+
}
|
|
63
|
+
declare class DevRuntime implements DevRuntimeInterface {
|
|
64
|
+
clientId: string;
|
|
65
|
+
constructor(messenger: DevRuntimeMessenger, clientId: string);
|
|
66
|
+
modules: Record<string, DevRuntimeModule>;
|
|
67
|
+
createModuleHotContext(moduleId: string): void;
|
|
68
|
+
applyUpdates(boundaries: [string, string][]): void;
|
|
69
|
+
registerModule(id: string, exportsHolder: DevRuntimeModule['exportsHolder']): void;
|
|
70
|
+
loadExports(id: string): void;
|
|
71
|
+
}
|
|
72
|
+
export type { DevRuntime };
|
|
73
|
+
export interface DevRuntimeMessenger {
|
|
74
|
+
send(message: HMRClientMessage): void;
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=hmr-types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hmr-types.d.ts","sourceRoot":"","sources":["../../src/runtime/hmr-types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* native bundle prelude - minimal globals for React Native.
|
|
3
|
+
* injected via rolldown's `intro` output option.
|
|
4
|
+
* rolldown's devMode handles the module system.
|
|
5
|
+
*/
|
|
6
|
+
export declare function getNativePrelude(options: {
|
|
7
|
+
dev: boolean;
|
|
8
|
+
platform: string;
|
|
9
|
+
serverUrl?: string;
|
|
10
|
+
}): string;
|
|
11
|
+
//# sourceMappingURL=native-prelude.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native-prelude.d.ts","sourceRoot":"","sources":["../../src/runtime/native-prelude.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE;IACxC,GAAG,EAAE,OAAO,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,GAAG,MAAM,CAkGT"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"react-refresh-utils.d.ts","sourceRoot":"","sources":["../../src/runtime/react-refresh-utils.ts"],"names":[],"mappings":"AAAA,wBAAgB,sBAAsB,CAAC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,WAyB5E;AAID,wBAAgB,aAAa,SAM5B"}
|
package/types/types.d.ts
CHANGED
|
@@ -93,6 +93,20 @@ export type VXRNOptions = {
|
|
|
93
93
|
* @default false
|
|
94
94
|
*/
|
|
95
95
|
loadEnv?: boolean;
|
|
96
|
+
/**
|
|
97
|
+
* Custom cache-control rules for static assets.
|
|
98
|
+
* Map of glob patterns to Cache-Control header values.
|
|
99
|
+
* Hashed assets (e.g. app-CB4EB78V.js) are always immutable.
|
|
100
|
+
* Unmatched assets default to must-revalidate.
|
|
101
|
+
*
|
|
102
|
+
* @example
|
|
103
|
+
* cacheControl: {
|
|
104
|
+
* '*.worker.js': 'public, max-age=86400, stale-while-revalidate=604800',
|
|
105
|
+
* '*.wasm': 'public, max-age=86400',
|
|
106
|
+
* '/deps-*\/**': 'public, max-age=86400',
|
|
107
|
+
* }
|
|
108
|
+
*/
|
|
109
|
+
cacheControl?: Record<string, string>;
|
|
96
110
|
};
|
|
97
111
|
/**
|
|
98
112
|
* Whether to clean cache directories on startup
|
|
@@ -113,7 +127,7 @@ export type HMRListener = (update: {
|
|
|
113
127
|
contents: string;
|
|
114
128
|
}) => void;
|
|
115
129
|
type VXRNServeOptionsBase = VXRNOptions['server'];
|
|
116
|
-
export type VXRNServeOptionsFilled = Required<VXRNServeOptionsBase> & {
|
|
130
|
+
export type VXRNServeOptionsFilled = Required<Omit<NonNullable<VXRNServeOptionsBase>, 'cacheControl'>> & Pick<NonNullable<VXRNServeOptionsBase>, 'cacheControl'> & {
|
|
117
131
|
url: string;
|
|
118
132
|
protocol: string;
|
|
119
133
|
};
|
package/types/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAChC,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAA;AAC5E,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,MAAM,CAAA;AAEnE,KAAK,gBAAgB,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,WAAW,GAAG,WAAW,CAAC,EAAE,CAAC,CAAA;AAEvE,MAAM,MAAM,IAAI,GAAG,KAAK,GAAG,MAAM,CAAA;AAEjC,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,QAAQ,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,SAAS,CAAA;CACrC,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,EAAE,WAAW,CAAA;IACpB,YAAY,EAAE,gBAAgB,CAAA;IAC9B,YAAY,EAAE,gBAAgB,CAAA;IAC9B,cAAc,EAAE,UAAU,CAAA;IAC1B,iBAAiB,EAAE,UAAU,CAAA;IAC7B,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,cAAc,EAAE;QAEd,CAAC,GAAG,EAAE,MAAM,GAAG,mBAAmB,CAAA;KACnC,CAAA;CACF,CAAA;AAED,MAAM,MAAM,0BAA0B,GAAG;IACvC,OAAO,CAAC,EAAE,aAAa,CAAA;IACvB,OAAO,CAAC,EAAE,aAAa,CAAA;CACxB,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,GAAG,CAAC,EAAE,MAAM,EAAE,CAAA;CACf,CAAA;AAED,MAAM,MAAM,sBAAsB,GAAG,OAAO,GAAG,kBAAkB,CAAA;AAEjE,MAAM,MAAM,gBAAgB,GAAG;IAC7B;;;OAGG;IACH,YAAY,CAAC,EAAE,KAAK,GAAG,KAAK,CAAA;IAE5B,SAAS,CAAC,EAAE,sBAAsB,CAAA;IAElC;;OAEG;IACH,MAAM,CAAC,EAAE,YAAY,CAAA;CACtB,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IACxB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;IAEb;;OAEG;IACH,IAAI,CAAC,EAAE,aAAa,GAAG,YAAY,CAAA;IAEnC;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAA;IAEjB;;;;;OAKG;IACH,OAAO,CAAC,EAAE;QACR,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,GAAG,CAAC,EAAE,MAAM,CAAA;KACb,CAAA;IAED;;OAEG;IACH,KAAK,CAAC,EAAE;QACN;;;WAGG;QACH,MAAM,CAAC,EAAE,OAAO,GAAG,gBAAgB,CAAA;QAEnC;;;WAGG;QACH,OAAO,CAAC,EAAE,OAAO,CAAA;KAClB,CAAA;IAED,MAAM,CAAC,EAAE;QACP,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,QAAQ,CAAC,EAAE,OAAO,CAAA;QAElB;;;WAGG;QACH,OAAO,CAAC,EAAE,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Creates a rolldown DevEngine for native React Native bundle serving.
|
|
3
|
+
* Uses rolldown's experimental dev() API with ESM output.
|
|
4
|
+
*
|
|
5
|
+
* Inspired by rollipop's architecture:
|
|
6
|
+
* https://github.com/leegeunhyeok/rollipop
|
|
7
|
+
*/
|
|
8
|
+
import type { Plugin } from 'rolldown';
|
|
9
|
+
interface NativeDevEngineOptions {
|
|
10
|
+
root: string;
|
|
11
|
+
port: number;
|
|
12
|
+
host?: string;
|
|
13
|
+
platform: 'ios' | 'android';
|
|
14
|
+
serverUrl?: string;
|
|
15
|
+
plugins?: Plugin[];
|
|
16
|
+
onHmrUpdate?: (update: {
|
|
17
|
+
type: string;
|
|
18
|
+
code?: string;
|
|
19
|
+
}) => void;
|
|
20
|
+
}
|
|
21
|
+
interface NativeDevEngineResult {
|
|
22
|
+
engine: any;
|
|
23
|
+
getBundle: () => Promise<{
|
|
24
|
+
code: string;
|
|
25
|
+
map?: string;
|
|
26
|
+
}>;
|
|
27
|
+
close: () => Promise<void>;
|
|
28
|
+
}
|
|
29
|
+
export declare function createNativeDevEngine(options: NativeDevEngineOptions): Promise<NativeDevEngineResult>;
|
|
30
|
+
interface NativeBuildOptions {
|
|
31
|
+
root: string;
|
|
32
|
+
platform: 'ios' | 'android';
|
|
33
|
+
dev?: boolean;
|
|
34
|
+
serverUrl?: string;
|
|
35
|
+
plugins?: Plugin[];
|
|
36
|
+
}
|
|
37
|
+
export declare function buildNativeBundle(options: NativeBuildOptions): Promise<{
|
|
38
|
+
code: string;
|
|
39
|
+
map?: string;
|
|
40
|
+
}>;
|
|
41
|
+
export {};
|
|
42
|
+
//# sourceMappingURL=createNativeDevEngine.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createNativeDevEngine.d.ts","sourceRoot":"","sources":["../../src/utils/createNativeDevEngine.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EAA+B,MAAM,EAAkB,MAAM,UAAU,CAAA;AAOnF,UAAU,sBAAsB;IAC9B,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,KAAK,GAAG,SAAS,CAAA;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;CAChE;AAED,UAAU,qBAAqB;IAC7B,MAAM,EAAE,GAAG,CAAA;IACX,SAAS,EAAE,MAAM,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACxD,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAC3B;AAwJD,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,qBAAqB,CAAC,CAmMhC;AAID,UAAU,kBAAkB;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,KAAK,GAAG,SAAS,CAAA;IAC3B,GAAG,CAAC,EAAE,OAAO,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;CACnB;AAED,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAsCzC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"patches.d.ts","sourceRoot":"","sources":["../../src/utils/patches.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAA;AAInE,KAAK,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,CAAA;AAExC,MAAM,MAAM,eAAe,GACvB,CAAC,CAAC,QAAQ,CAAC,EAAE,MAAM,KAAK,IAAI,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC,GAC/D,MAAM,GACN,UAAU,EAAE,CAAA;AAEhB,MAAM,MAAM,QAAQ,GAAG;IACrB,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG;QACjC,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,CAAA;KAC/B,CAAA;CACF,CAAA;AAID,wBAAgB,eAAe,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,QAInD;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAI5D;AAED,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAA;AAEzE,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE,MAAM,CAAC,EACxC,YAAY,CAAC,EAAE,oBAAoB,iBA2BpC;AAyBD,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,QAAQ,EAAE,EACnB,EAAE,IAAoB,EAAE,GAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAO,
|
|
1
|
+
{"version":3,"file":"patches.d.ts","sourceRoot":"","sources":["../../src/utils/patches.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAA;AAInE,KAAK,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,CAAA;AAExC,MAAM,MAAM,eAAe,GACvB,CAAC,CAAC,QAAQ,CAAC,EAAE,MAAM,KAAK,IAAI,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC,GAC/D,MAAM,GACN,UAAU,EAAE,CAAA;AAEhB,MAAM,MAAM,QAAQ,GAAG;IACrB,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG;QACjC,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,CAAA;KAC/B,CAAA;CACF,CAAA;AAID,wBAAgB,eAAe,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,QAInD;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAI5D;AAED,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAA;AAEzE,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE,MAAM,CAAC,EACxC,YAAY,CAAC,EAAE,oBAAoB,iBA2BpC;AAyBD,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,QAAQ,EAAE,EACnB,EAAE,IAAoB,EAAE,GAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAO,iBA+NjD"}
|