@vxrn/compiler 1.26.0 → 1.26.1-1789332805082

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 (53) hide show
  1. package/dist/cjs/cache.cjs +7 -0
  2. package/dist/cjs/index.cjs +14 -8
  3. package/dist/cjs/transformBabel.cjs +56 -10
  4. package/dist/cjs/transformBabel.test.cjs +88 -0
  5. package/dist/esm/cache.mjs +8 -2
  6. package/dist/esm/cache.mjs.map +1 -1
  7. package/dist/esm/index.js +14 -9
  8. package/dist/esm/index.js.map +1 -1
  9. package/dist/esm/index.mjs +14 -9
  10. package/dist/esm/index.mjs.map +1 -1
  11. package/dist/esm/reactNativeViewConfig.mjs.map +1 -1
  12. package/dist/esm/transformBabel.mjs +57 -12
  13. package/dist/esm/transformBabel.mjs.map +1 -1
  14. package/dist/esm/transformBabel.test.mjs +89 -1
  15. package/dist/esm/transformBabel.test.mjs.map +1 -1
  16. package/dist/esm/transformHermesLoops.mjs.map +1 -1
  17. package/dist/esm/transformSWC.mjs.map +1 -1
  18. package/dist/esm/transformSWC.test.mjs.map +1 -1
  19. package/dist/esm/transformWorklets.mjs.map +1 -1
  20. package/dist/esm/transformWorklets.test.mjs.map +1 -1
  21. package/dist/esm/worklets/autoworklet.mjs.map +1 -1
  22. package/dist/esm/worklets/scope.mjs.map +1 -1
  23. package/dist/esm/worklets/serialize.mjs.map +1 -1
  24. package/dist/esm/worklets/transform.mjs.map +1 -1
  25. package/package.json +4 -4
  26. package/src/cache.ts +13 -1
  27. package/src/index.ts +45 -17
  28. package/src/reactNativeViewConfig.ts +19 -5
  29. package/src/transformBabel.test.ts +110 -0
  30. package/src/transformBabel.ts +79 -11
  31. package/src/transformHermesLoops.ts +22 -4
  32. package/src/transformSWC.test.ts +14 -11
  33. package/src/transformSWC.ts +2 -1
  34. package/src/transformWorklets.test.ts +11 -8
  35. package/src/transformWorklets.ts +4 -1
  36. package/src/worklets/autoworklet.ts +12 -4
  37. package/src/worklets/scope.ts +2 -1
  38. package/src/worklets/serialize.ts +4 -3
  39. package/src/worklets/transform.ts +35 -8
  40. package/types/cache.d.ts +2 -0
  41. package/types/cache.d.ts.map +1 -1
  42. package/types/index.d.ts +1 -0
  43. package/types/index.d.ts.map +1 -1
  44. package/types/reactNativeViewConfig.d.ts.map +1 -1
  45. package/types/transformBabel.d.ts +4 -1
  46. package/types/transformBabel.d.ts.map +1 -1
  47. package/types/transformHermesLoops.d.ts.map +1 -1
  48. package/types/transformSWC.d.ts.map +1 -1
  49. package/types/transformWorklets.d.ts.map +1 -1
  50. package/types/worklets/autoworklet.d.ts.map +1 -1
  51. package/types/worklets/scope.d.ts.map +1 -1
  52. package/types/worklets/serialize.d.ts.map +1 -1
  53. package/types/worklets/transform.d.ts.map +1 -1
@@ -1,4 +1,5 @@
1
- import { extname, relative } from 'node:path'
1
+ import { existsSync, readFileSync } from 'node:fs'
2
+ import { extname, join, relative } from 'node:path'
2
3
  // type-only, so that importing this module does not drag babel in. every metro
3
4
  // worker loads it through the package index, and on the native transform path
4
5
  // babel is never called at all: loading it there is pure startup cost.
@@ -13,6 +14,37 @@ type Props = GetTransformProps & {
13
14
  userSetting?: GetTransformResponse
14
15
  }
15
16
 
17
+ const USER_BABEL_CONFIG_FILES = [
18
+ 'babel.config.js',
19
+ 'babel.config.cjs',
20
+ 'babel.config.mjs',
21
+ 'babel.config.json',
22
+ '.babelrc',
23
+ '.babelrc.js',
24
+ '.babelrc.json',
25
+ ] as const
26
+
27
+ const ONE_GENERATED_MARKER = '@one-generated'
28
+
29
+ export function findUserBabelConfig(projectRoot?: string): string | null {
30
+ if (!projectRoot) return null
31
+ for (const name of USER_BABEL_CONFIG_FILES) {
32
+ const fullPath = join(projectRoot, name)
33
+ if (existsSync(fullPath)) {
34
+ try {
35
+ const content = readFileSync(fullPath, 'utf8')
36
+ if (content.includes(ONE_GENERATED_MARKER)) {
37
+ continue
38
+ }
39
+ } catch {
40
+ continue
41
+ }
42
+ return fullPath
43
+ }
44
+ }
45
+ return null
46
+ }
47
+
16
48
  export function getBabelOptions(props: Props): babel.TransformOptions | null {
17
49
  // unify caller contracts (the Vite plugin hands POSIX ids; the native/patches
18
50
  // path hands OS-native ids) so every path matcher below can assume forward
@@ -20,22 +52,40 @@ export function getBabelOptions(props: Props): babel.TransformOptions | null {
20
52
  // reason. without it, RN's own files aren't matched on Windows.
21
53
  props = { ...props, id: normalizePath(props.id.split('?')[0]) }
22
54
 
55
+ const isProjectFile = !props.id.includes('node_modules')
56
+ const userBabelConfig =
57
+ isProjectFile && props.projectRoot
58
+ ? findUserBabelConfig(props.projectRoot)
59
+ : null
60
+
23
61
  if (props.userSetting === 'babel') {
24
- return getOptions(props, true)
62
+ return getOptions(props, true, userBabelConfig)
25
63
  }
26
64
  if (
27
65
  typeof props.userSetting === 'undefined' ||
28
66
  (typeof props.userSetting === 'object' && props.userSetting.transform === 'babel')
29
67
  ) {
30
68
  if (props.userSetting?.excludeDefaultPlugins) {
31
- return props.userSetting
69
+ return {
70
+ ...props.userSetting,
71
+ ...(userBabelConfig
72
+ ? { configFile: userBabelConfig, babelrc: true }
73
+ : {}),
74
+ }
32
75
  }
33
- return getOptions(props)
76
+ return getOptions(props, false, userBabelConfig)
77
+ }
78
+ if (userBabelConfig) {
79
+ return getOptions(props, false, userBabelConfig)
34
80
  }
35
81
  return null
36
82
  }
37
83
 
38
- const getOptions = (props: Props, force = false): babel.TransformOptions | null => {
84
+ const getOptions = (
85
+ props: Props,
86
+ force = false,
87
+ userBabelConfig: string | null = null
88
+ ): babel.TransformOptions | null => {
39
89
  let plugins: babel.PluginItem[] = []
40
90
 
41
91
  if (force || shouldBabelGenerators(props)) {
@@ -72,8 +122,13 @@ const getOptions = (props: Props, force = false): babel.TransformOptions | null
72
122
  plugins.push(getBabelReactCompilerPlugin(props))
73
123
  }
74
124
 
75
- if (plugins.length) {
76
- return { plugins }
125
+ if (plugins.length || userBabelConfig) {
126
+ return {
127
+ plugins,
128
+ ...(userBabelConfig
129
+ ? { configFile: userBabelConfig, babelrc: true }
130
+ : {}),
131
+ }
77
132
  }
78
133
 
79
134
  return null
@@ -91,14 +146,27 @@ const getOptions = (props: Props, force = false): babel.TransformOptions | null
91
146
  export async function transformOxcReactCompiler(
92
147
  id: string,
93
148
  code: string,
94
- target: '18' | '19',
149
+ optionsOrTarget: '18' | '19' | (Record<string, any> & { target?: '18' | '19' }) = '19',
95
150
  sourceMap = false
96
151
  ) {
97
152
  const { transform } = await import('oxc-transform-react')
153
+ const compilerOptions =
154
+ typeof optionsOrTarget === 'string'
155
+ ? { target: optionsOrTarget }
156
+ : optionsOrTarget || {}
157
+
158
+ const target = compilerOptions.target ?? '19'
98
159
  const result = await transform(id, code, {
99
160
  jsx: 'preserve',
100
161
  sourcemap: sourceMap,
101
- reactCompiler: { target },
162
+ reactCompiler: {
163
+ target,
164
+ ...compilerOptions,
165
+ environment: {
166
+ enableCustomTypeDefinitionForReanimated: true,
167
+ ...compilerOptions.environment,
168
+ },
169
+ },
102
170
  })
103
171
 
104
172
  // `errors` with fatal:false are react compiler BAILOUTS ("Cannot access refs
@@ -140,8 +208,8 @@ export async function transformBabel(
140
208
  const babelOptions = {
141
209
  filename: id,
142
210
  compact: false,
143
- babelrc: false,
144
- configFile: false,
211
+ babelrc: options.babelrc ?? false,
212
+ configFile: options.configFile ?? false,
145
213
  sourceMaps: false,
146
214
  minified: false,
147
215
  ...options,
@@ -169,7 +169,12 @@ function analyzeBody(body: any, names: Set<string>): BodyFacts {
169
169
  hasLabeledJump: false,
170
170
  }
171
171
 
172
- function walk(node: any, inNestedBreakable: boolean, inNestedLoop: boolean, inFunction: boolean) {
172
+ function walk(
173
+ node: any,
174
+ inNestedBreakable: boolean,
175
+ inNestedLoop: boolean,
176
+ inFunction: boolean
177
+ ) {
173
178
  if (!node || typeof node !== 'object') return
174
179
 
175
180
  if (FUNCTION_TYPES.has(node.type)) {
@@ -284,7 +289,10 @@ function transformOnce(
284
289
  // declarations are made fresh just by moving into a function body.
285
290
  const names: string[] = []
286
291
  const decl = headDeclaration(node)
287
- if (decl?.type === 'VariableDeclaration' && (decl.kind === 'let' || decl.kind === 'const')) {
292
+ if (
293
+ decl?.type === 'VariableDeclaration' &&
294
+ (decl.kind === 'let' || decl.kind === 'const')
295
+ ) {
288
296
  for (const d of decl.declarations || []) collectPatternNames(d.id, names)
289
297
  }
290
298
  const shared = [...names]
@@ -366,12 +374,22 @@ function transformOnce(
366
374
  * completion and a `continue` both return undefined, which is exactly right,
367
375
  * since falling out of _loop continues the loop.
368
376
  */
369
- function rewriteJumps(bodyText: string, bodyNode: any, code: string, names: Set<string>): string {
377
+ function rewriteJumps(
378
+ bodyText: string,
379
+ bodyNode: any,
380
+ code: string,
381
+ names: Set<string>
382
+ ): string {
370
383
  const offset = bodyNode.start
371
384
  const s = new MagicString(bodyText)
372
385
  const pad = bodyNode.type === 'BlockStatement' ? 0 : 2
373
386
 
374
- function walk(node: any, inNestedBreakable: boolean, inNestedLoop: boolean, inFunction: boolean) {
387
+ function walk(
388
+ node: any,
389
+ inNestedBreakable: boolean,
390
+ inNestedLoop: boolean,
391
+ inFunction: boolean
392
+ ) {
375
393
  if (!node || typeof node !== 'object') return
376
394
 
377
395
  if (FUNCTION_TYPES.has(node.type)) {
@@ -71,22 +71,25 @@ class Sample {
71
71
  expect(res!.code).toContain('this.publicField = 100')
72
72
  })
73
73
 
74
- it.each(['MyComponent.tsx', 'MyComponent.js', 'MyComponent.mjs', 'MyComponent.cjs'])('lowers JSX in %s to react automatic runtime calls', async (filename) => {
75
- const input = `
74
+ it.each(['MyComponent.tsx', 'MyComponent.js', 'MyComponent.mjs', 'MyComponent.cjs'])(
75
+ 'lowers JSX in %s to react automatic runtime calls',
76
+ async (filename) => {
77
+ const input = `
76
78
  export function MyComponent() {
77
79
  return <div className="test"><span>Hello</span></div>
78
80
  }
79
81
  `
80
- const res = await transformSWC(filename, input, {
81
- environment: 'client',
82
- mode: 'build',
83
- })
82
+ const res = await transformSWC(filename, input, {
83
+ environment: 'client',
84
+ mode: 'build',
85
+ })
84
86
 
85
- expect(res).toBeDefined()
86
- expect(res!.code).not.toContain('<div')
87
- expect(res!.code).not.toContain('<span>')
88
- expect(res!.code).toContain('_jsx')
89
- })
87
+ expect(res).toBeDefined()
88
+ expect(res!.code).not.toContain('<div')
89
+ expect(res!.code).not.toContain('<span>')
90
+ expect(res!.code).toContain('_jsx')
91
+ }
92
+ )
90
93
 
91
94
  it('respects sourcemaps option', async () => {
92
95
  const input = `
@@ -20,7 +20,8 @@ export function shouldStripFlow(id: string, code: string): boolean {
20
20
  }
21
21
  // scan the complete comment preamble, including license blocks before @flow.
22
22
  const header =
23
- code.match(/^(?:#![^\r\n]*(?:\r?\n|$))?(?:\s|\/\*[\s\S]*?\*\/|\/\/[^\r\n]*)*/)?.[0] || ''
23
+ code.match(/^(?:#![^\r\n]*(?:\r?\n|$))?(?:\s|\/\*[\s\S]*?\*\/|\/\/[^\r\n]*)*/)?.[0] ||
24
+ ''
24
25
  return /@flow\b/.test(header) || /\b(?:import|export)\s+type\b/.test(code)
25
26
  }
26
27
 
@@ -200,15 +200,17 @@ describe('transformWorklets', () => {
200
200
 
201
201
  // the inner worklet's init data is declared inside the outer function body,
202
202
  // not hoisted to module scope where the worklet runtime cannot see it.
203
- const innerVar = result.code.match(/var (_worklet_\d+_init_data) = \{\s*code: "function _worklet/)
203
+ const innerVar = result.code.match(
204
+ /var (_worklet_\d+_init_data) = \{\s*code: "function _worklet/
205
+ )
204
206
  expect(innerVar, 'inner worklet init data').toBeTruthy()
205
207
  // only look past the serialized string, which mentions the same name inside
206
208
  // its escaped body.
207
209
  const emitted = result.code.slice(result.code.indexOf('export var installUnpacker'))
208
210
  expect(emitted).toContain(`var ${innerVar![1]} = {`)
209
- expect(result.code.slice(0, result.code.indexOf('export var installUnpacker'))).not.toContain(
210
- `\nvar ${innerVar![1]} = {`
211
- )
211
+ expect(
212
+ result.code.slice(0, result.code.indexOf('export var installUnpacker'))
213
+ ).not.toContain(`\nvar ${innerVar![1]} = {`)
212
214
  })
213
215
 
214
216
  it('autoworkletizes hooks like useAnimatedStyle and withTiming', async () => {
@@ -555,7 +557,11 @@ describe('transformWorklets', () => {
555
557
  expect(computeFn({ x: 2 })).toBe(12) // (2 + 1 + 0) * 4 = 12
556
558
 
557
559
  const reconstructed = eval(`(${computeFn.__initData.code})`)
558
- const uiRes = reconstructed.call({ __closure: computeFn.__closure }, { x: 2, y: 3 }, 5)
560
+ const uiRes = reconstructed.call(
561
+ { __closure: computeFn.__closure },
562
+ { x: 2, y: 3 },
563
+ 5
564
+ )
559
565
  expect(uiRes).toBe(40) // (2 + 3 + 5) * 4 = 40
560
566
  })
561
567
 
@@ -692,9 +698,6 @@ describe('transformWorklets', () => {
692
698
  })
693
699
  })
694
700
 
695
-
696
-
697
-
698
701
  describe('worklet detection gate', () => {
699
702
  it('accepts files whose only worklets come from gesture callbacks', () => {
700
703
  // .onBegin/.onEnd/.onTouchesMove are auto-workletized by the transform, so
@@ -2,7 +2,10 @@ import fs from 'node:fs'
2
2
  import { createRequire } from 'node:module'
3
3
  import path from 'node:path'
4
4
  import { configuration, isNativeWorkletsEnabled } from './configure'
5
- import { AUTOWORKLET_FUNCTION_ARGS, GESTURE_BUILDER_METHODS } from './worklets/autoworklet'
5
+ import {
6
+ AUTOWORKLET_FUNCTION_ARGS,
7
+ GESTURE_BUILDER_METHODS,
8
+ } from './worklets/autoworklet'
6
9
 
7
10
  // every callee the transform auto-workletizes has to be in this gate, or files
8
11
  // whose only worklets come from gesture callbacks (`.onBegin`, `.onEnd`,
@@ -173,7 +173,11 @@ function isChainedCallback(callee: any): boolean {
173
173
  }
174
174
 
175
175
  // the worklets directives, in the order the runtime expects to find them.
176
- export const WORKLET_DIRECTIVES = ['worklet', 'no-worklet-closure', 'limit-init-data-hoisting']
176
+ export const WORKLET_DIRECTIVES = [
177
+ 'worklet',
178
+ 'no-worklet-closure',
179
+ 'limit-init-data-hoisting',
180
+ ]
177
181
 
178
182
  function statementDirective(stmt: any): string | undefined {
179
183
  if (!stmt || stmt.type !== 'ExpressionStatement') return undefined
@@ -219,7 +223,8 @@ export function hasWorkletDirective(fnNode: any): boolean {
219
223
  */
220
224
  export function bodyStartAfterDirectives(fnNode: any, code: string): number {
221
225
  let start = fnNode.body.start + 1
222
- if (fnNode.body.type !== 'BlockStatement' || !Array.isArray(fnNode.body.body)) return start
226
+ if (fnNode.body.type !== 'BlockStatement' || !Array.isArray(fnNode.body.body))
227
+ return start
223
228
  for (const stmt of fnNode.body.body) {
224
229
  const found = statementDirective(stmt)
225
230
  if (found === undefined || !WORKLET_DIRECTIVES.includes(found)) break
@@ -287,7 +292,9 @@ export function findWorkletCandidates(program: any): WorkletCandidate[] {
287
292
  }
288
293
  } else if (
289
294
  node.type === 'Property' &&
290
- (node.method || node.value?.type === 'FunctionExpression' || node.value?.type === 'ArrowFunctionExpression')
295
+ (node.method ||
296
+ node.value?.type === 'FunctionExpression' ||
297
+ node.value?.type === 'ArrowFunctionExpression')
291
298
  ) {
292
299
  const fn = node.value
293
300
  if (hasWorkletDirective(fn)) {
@@ -312,7 +319,8 @@ export function findWorkletCandidates(program: any): WorkletCandidate[] {
312
319
  const argIndices = calleeName ? AUTOWORKLET_FUNCTION_ARGS[calleeName] : undefined
313
320
  const chained = !argIndices && isChainedCallback(node.callee)
314
321
  const indices =
315
- argIndices ?? (chained ? node.arguments.map((_: unknown, i: number) => i) : undefined)
322
+ argIndices ??
323
+ (chained ? node.arguments.map((_: unknown, i: number) => i) : undefined)
316
324
  if (indices) {
317
325
  for (const idx of indices) {
318
326
  const arg = node.arguments[idx]
@@ -130,7 +130,8 @@ export function getClosureVariables(fnNode: any, globals: Set<string>): string[]
130
130
  return
131
131
  case 'VariableDeclaration':
132
132
  if (node.kind === 'var') {
133
- for (const d of node.declarations) addBindingsOnly(d.id, currentScope.varBindings)
133
+ for (const d of node.declarations)
134
+ addBindingsOnly(d.id, currentScope.varBindings)
134
135
  } else if (direct) {
135
136
  for (const d of node.declarations) addBindingsOnly(d.id, currentScope.bindings)
136
137
  }
@@ -51,9 +51,10 @@ export function serializeWorkletForUI(
51
51
  rawBody = `return ${code.slice(fnNode.body.start, fnNode.body.end)};`
52
52
  }
53
53
 
54
- const unpacker = closureVars.length > 0
55
- ? `const { ${closureVars.join(', ')} } = this.__closure ?? this._closure;\n`
56
- : ''
54
+ const unpacker =
55
+ closureVars.length > 0
56
+ ? `const { ${closureVars.join(', ')} } = this.__closure ?? this._closure;\n`
57
+ : ''
57
58
 
58
59
  const asyncPrefix = fnNode.async ? 'async ' : ''
59
60
  const genPrefix = fnNode.generator ? '*' : ''
@@ -2,7 +2,11 @@ import path from 'node:path'
2
2
  import MagicString from 'magic-string'
3
3
  import remapping from '@jridgewell/remapping'
4
4
  import { parseSync } from 'oxc-parser'
5
- import { bodyStartAfterDirectives, findWorkletCandidates, hasDirective } from './autoworklet'
5
+ import {
6
+ bodyStartAfterDirectives,
7
+ findWorkletCandidates,
8
+ hasDirective,
9
+ } from './autoworklet'
6
10
  import { createGlobalsSet } from './globals'
7
11
  import { calculateWorkletHash } from './hash'
8
12
  import { getClosureVariables } from './scope'
@@ -27,7 +31,9 @@ export function prepareWorkletsForReactCompiler(
27
31
  })
28
32
  if (parsed.errors.length) {
29
33
  const error = parsed.errors[0]
30
- throw new Error(error.codeframe || error.message || 'Syntax Error while parsing worklet')
34
+ throw new Error(
35
+ error.codeframe || error.message || 'Syntax Error while parsing worklet'
36
+ )
31
37
  }
32
38
  const candidates = findWorkletCandidates(parsed.program).filter(
33
39
  (candidate) => candidate.isAutoWorklet && !hasDirective(candidate.fnNode, 'worklet')
@@ -160,7 +166,9 @@ export function executeWorkletTransform(
160
166
 
161
167
  if (parseResult.errors && parseResult.errors.length > 0) {
162
168
  const err = parseResult.errors[0]
163
- throw new Error(err.codeframe || err.message || 'Syntax Error while parsing worklet')
169
+ throw new Error(
170
+ err.codeframe || err.message || 'Syntax Error while parsing worklet'
171
+ )
164
172
  }
165
173
 
166
174
  const candidates = findWorkletCandidates(parseResult.program)
@@ -179,7 +187,9 @@ export function executeWorkletTransform(
179
187
  })
180
188
 
181
189
  if (innermostCandidates.length === 0) {
182
- throw new Error(`[worklets] Cyclic or unresolvable worklet nesting detected in ${cleanId}`)
190
+ throw new Error(
191
+ `[worklets] Cyclic or unresolvable worklet nesting detected in ${cleanId}`
192
+ )
183
193
  }
184
194
 
185
195
  const ms = new MagicString(currentCode)
@@ -197,7 +207,12 @@ export function executeWorkletTransform(
197
207
  : getClosureVariables(candidate.fnNode, globals)
198
208
  const fnName = candidate.name
199
209
 
200
- const serializedCode = serializeWorkletForUI(candidate.fnNode, currentCode, fnName, closureVars)
210
+ const serializedCode = serializeWorkletForUI(
211
+ candidate.fnNode,
212
+ currentCode,
213
+ fnName,
214
+ closureVars
215
+ )
201
216
  const workletHash = calculateWorkletHash(serializedCode)
202
217
  const initDataVar = `_worklet_${workletHash}_init_data`
203
218
 
@@ -241,7 +256,11 @@ export function executeWorkletTransform(
241
256
 
242
257
  if (candidate.kind === 'function_declaration') {
243
258
  if (candidate.parent?.type === 'ExportNamedDeclaration') {
244
- ms.overwrite(candidate.parent.start, candidate.parent.end, `export var ${candidate.name} = ${iife};`)
259
+ ms.overwrite(
260
+ candidate.parent.start,
261
+ candidate.parent.end,
262
+ `export var ${candidate.name} = ${iife};`
263
+ )
245
264
  } else if (candidate.parent?.type === 'ExportDefaultDeclaration') {
246
265
  ms.overwrite(
247
266
  candidate.parent.start,
@@ -249,10 +268,18 @@ export function executeWorkletTransform(
249
268
  `var ${candidate.name || '_defaultWorklet'} = ${iife};\nexport default ${candidate.name || '_defaultWorklet'};`
250
269
  )
251
270
  } else {
252
- ms.overwrite(candidate.node.start, candidate.node.end, `var ${candidate.name} = ${iife};`)
271
+ ms.overwrite(
272
+ candidate.node.start,
273
+ candidate.node.end,
274
+ `var ${candidate.name} = ${iife};`
275
+ )
253
276
  }
254
277
  } else if (candidate.kind === 'object_method') {
255
- ms.overwrite(candidate.node.start, candidate.node.end, `${candidate.name}: ${iife}`)
278
+ ms.overwrite(
279
+ candidate.node.start,
280
+ candidate.node.end,
281
+ `${candidate.name}: ${iife}`
282
+ )
256
283
  } else {
257
284
  ms.overwrite(candidate.node.start, candidate.node.end, iife)
258
285
  }
package/types/cache.d.ts CHANGED
@@ -12,6 +12,8 @@ export declare function setCachedTransform(filePath: string, code: string, resul
12
12
  code: string;
13
13
  map?: any;
14
14
  }, environment: string): void;
15
+ /** Drop every cached transform, for `react-native bundle --reset-cache`. */
16
+ export declare function clearTransformCache(): void;
15
17
  export declare function getCacheStats(): CacheStats;
16
18
  export declare function logCacheStats(): void;
17
19
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":"AAqBA,UAAU,UAAU;IAClB,IAAI,EAAE,CAAC,CAAA;IACP,MAAM,EAAE,CAAC,CAAA;IACT,MAAM,EAAE,CAAC,CAAA;IACT,MAAM,EAAE,CAAC,CAAA;CACV;AAiDD,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,GAClB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,GAAG,CAAA;CAAE,GAAG,IAAI,CAoCpC;AAED,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,GAAG,CAAA;CAAE,EACnC,WAAW,EAAE,MAAM,GAClB,IAAI,CAwBN;AAED,wBAAgB,aAAa,IAAI,UAAU,CAE1C;AAED,wBAAgB,aAAa,IAAI,IAAI,CAapC"}
1
+ {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":"AA4BA,UAAU,UAAU;IAClB,IAAI,EAAE,CAAC,CAAA;IACP,MAAM,EAAE,CAAC,CAAA;IACT,MAAM,EAAE,CAAC,CAAA;IACT,MAAM,EAAE,CAAC,CAAA;CACV;AAiDD,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,GAClB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,GAAG,CAAA;CAAE,GAAG,IAAI,CAoCpC;AAED,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,GAAG,CAAA;CAAE,EACnC,WAAW,EAAE,MAAM,GAClB,IAAI,CAwBN;AAED,4EAA4E;AAC5E,wBAAgB,mBAAmB,IAAI,IAAI,CAE1C;AAED,wBAAgB,aAAa,IAAI,UAAU,CAE1C;AAED,wBAAgB,aAAa,IAAI,IAAI,CAapC"}
package/types/index.d.ts CHANGED
@@ -12,6 +12,7 @@ export * from './transformWorklets';
12
12
  export * from './reactNativeCodegen';
13
13
  export * from './transformHermesLoops';
14
14
  export * from './transformHermesAsync';
15
+ export { clearTransformCache } from './cache';
15
16
  export { JS_GLOBALS } from './worklets/globals';
16
17
  export { getClosureVariables } from './worklets/scope';
17
18
  export type { GetTransform } from './types';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH,OAAO,KAAK,EAAE,YAAY,EAA8B,MAAM,MAAM,CAAA;AAcpE,OAAO,KAAK,EAAkC,OAAO,EAAE,MAAM,SAAS,CAAA;AAGtE,cAAc,aAAa,CAAA;AAC3B,cAAc,kBAAkB,CAAA;AAChC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,qBAAqB,CAAA;AACnC,cAAc,sBAAsB,CAAA;AACpC,cAAc,wBAAwB,CAAA;AACtC,cAAc,wBAAwB,CAAA;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AACtD,YAAY,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AA2Q3C,wBAAsB,wBAAwB,CAC5C,SAAS,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,GAC3B,OAAO,CAAC,YAAY,EAAE,CAAC,CA6VzB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH,OAAO,KAAK,EAAE,YAAY,EAA8B,MAAM,MAAM,CAAA;AAcpE,OAAO,KAAK,EAAkC,OAAO,EAAE,MAAM,SAAS,CAAA;AAGtE,cAAc,aAAa,CAAA;AAC3B,cAAc,kBAAkB,CAAA;AAChC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,qBAAqB,CAAA;AACnC,cAAc,sBAAsB,CAAA;AACpC,cAAc,wBAAwB,CAAA;AACtC,cAAc,wBAAwB,CAAA;AACtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AACtD,YAAY,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAsS3C,wBAAsB,wBAAwB,CAC5C,SAAS,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,GAC3B,OAAO,CAAC,YAAY,EAAE,CAAC,CA6VzB"}
@@ -1 +1 @@
1
- {"version":3,"file":"reactNativeViewConfig.d.ts","sourceRoot":"","sources":["../src/reactNativeViewConfig.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAkdH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,GAAG,CAmBnF;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,GAAG,GACX;IAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAsE5C;AAED,kFAAkF;AAClF,wBAAgB,sBAAsB,CAAC,MAAM,EAAE;IAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,UAEjF;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAIvD"}
1
+ {"version":3,"file":"reactNativeViewConfig.d.ts","sourceRoot":"","sources":["../src/reactNativeViewConfig.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AA4dH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,GAAG,CAuBnF;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,GAAG,GACX;IAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAsE5C;AAED,kFAAkF;AAClF,wBAAgB,sBAAsB,CAAC,MAAM,EAAE;IAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,UAEjF;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAIvD"}
@@ -3,6 +3,7 @@ import type { GetTransformProps, GetTransformResponse } from './types';
3
3
  type Props = GetTransformProps & {
4
4
  userSetting?: GetTransformResponse;
5
5
  };
6
+ export declare function findUserBabelConfig(projectRoot?: string): string | null;
6
7
  export declare function getBabelOptions(props: Props): babel.TransformOptions | null;
7
8
  /**
8
9
  * Run the react compiler through oxc's rust port instead of babel.
@@ -13,7 +14,9 @@ export declare function getBabelOptions(props: Props): babel.TransformOptions |
13
14
  * still applies the project's jsxImportSource and dev-mode settings, exactly
14
15
  * as it did when babel only stripped types here.
15
16
  */
16
- export declare function transformOxcReactCompiler(id: string, code: string, target: '18' | '19', sourceMap?: boolean): Promise<{
17
+ export declare function transformOxcReactCompiler(id: string, code: string, optionsOrTarget?: '18' | '19' | (Record<string, any> & {
18
+ target?: '18' | '19';
19
+ }), sourceMap?: boolean): Promise<{
17
20
  code: string;
18
21
  map: any;
19
22
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"transformBabel.d.ts","sourceRoot":"","sources":["../src/transformBabel.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,KAAK,MAAM,aAAa,CAAA;AAKzC,OAAO,KAAK,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAEtE,KAAK,KAAK,GAAG,iBAAiB,GAAG;IAC/B,WAAW,CAAC,EAAE,oBAAoB,CAAA;CACnC,CAAA;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,CAAC,gBAAgB,GAAG,IAAI,CAoB3E;AA8CD;;;;;;;;GAQG;AACH,wBAAsB,yBAAyB,CAC7C,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,IAAI,GAAG,IAAI,EACnB,SAAS,UAAQ;;;GA4BlB;AAED;;GAEG;AACH,wBAAsB,cAAc,CAClC,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,KAAK,CAAC,gBAAgB,kCAsDhC"}
1
+ {"version":3,"file":"transformBabel.d.ts","sourceRoot":"","sources":["../src/transformBabel.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,KAAK,KAAK,MAAM,aAAa,CAAA;AAKzC,OAAO,KAAK,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAEtE,KAAK,KAAK,GAAG,iBAAiB,GAAG;IAC/B,WAAW,CAAC,EAAE,oBAAoB,CAAA;CACnC,CAAA;AAcD,wBAAgB,mBAAmB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAiBvE;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,CAAC,gBAAgB,GAAG,IAAI,CAkC3E;AAuDD;;;;;;;;GAQG;AACH,wBAAsB,yBAAyB,CAC7C,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,EACZ,eAAe,GAAE,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG;IAAE,MAAM,CAAC,EAAE,IAAI,GAAG,IAAI,CAAA;CAAE,CAAQ,EACtF,SAAS,UAAQ;;;GAyClB;AAED;;GAEG;AACH,wBAAsB,cAAc,CAClC,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,KAAK,CAAC,gBAAgB,kCAsDhC"}
@@ -1 +1 @@
1
- {"version":3,"file":"transformHermesLoops.d.ts","sourceRoot":"","sources":["../src/transformHermesLoops.ts"],"names":[],"mappings":"AA+ZA,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,GACf;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,GAAG,EAAE,CAAA;CAAE,GAAG,IAAI,CAgBtC"}
1
+ {"version":3,"file":"transformHermesLoops.d.ts","sourceRoot":"","sources":["../src/transformHermesLoops.ts"],"names":[],"mappings":"AAibA,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,GACf;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,GAAG,EAAE,CAAA;CAAE,GAAG,IAAI,CAgBtC"}
@@ -1 +1 @@
1
- {"version":3,"file":"transformSWC.d.ts","sourceRoot":"","sources":["../src/transformSWC.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEtC,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,CAAC,EAAE,GAAG,CAAA;CACV;AAKD,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAUjE;AAED,wBAAsB,YAAY,CAChC,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,OAAO,GAAG;IAAE,GAAG,CAAC,EAAE,OAAO,CAAA;CAAE,EACpC,UAAU,CAAC,EAAE,GAAG,GACf,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAkI7B;AAED,eAAO,MAAM,YAAY,qBAAe,CAAA;AA+HxC,wBAAgB,eAAe,YAE9B;AAyBD,eAAO,MAAM,oBAAoB,GAAU,IAAI,MAAM,EAAE,MAAM,MAAM;;SAwBxB,GAAG;cAC7C,CAAA;AAED,eAAO,MAAM,oBAAoB,OA3Bc,MAAM,QAAQ,MAAM;;SAwBxB,GAAG;cAGU,CAAA"}
1
+ {"version":3,"file":"transformSWC.d.ts","sourceRoot":"","sources":["../src/transformSWC.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEtC,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,CAAC,EAAE,GAAG,CAAA;CACV;AAKD,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAWjE;AAED,wBAAsB,YAAY,CAChC,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,OAAO,GAAG;IAAE,GAAG,CAAC,EAAE,OAAO,CAAA;CAAE,EACpC,UAAU,CAAC,EAAE,GAAG,GACf,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAkI7B;AAED,eAAO,MAAM,YAAY,qBAAe,CAAA;AA+HxC,wBAAgB,eAAe,YAE9B;AAyBD,eAAO,MAAM,oBAAoB,GAAU,IAAI,MAAM,EAAE,MAAM,MAAM;;SAwBxB,GAAG;cAC7C,CAAA;AAED,eAAO,MAAM,oBAAoB,OA3Bc,MAAM,QAAQ,MAAM;;SAwBxB,GAAG;cAGU,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"transformWorklets.d.ts","sourceRoot":"","sources":["../src/transformWorklets.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,sCAAsC,UAiBlD,CAAA;AAiCD,wBAAgB,uBAAuB,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,WAWjF;AAED,wBAAgB,kBAAkB,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CA8DlF;AAED,MAAM,MAAM,wBAAwB,GAAG;IACrC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,0BAA0B,CAAC,EAAE,OAAO,CAAA;IACpC,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAC/B,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,sBAAsB,CAAC,EAAE,OAAO,CAAA;IAChC,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB,CAAA;AAGD,OAAO,EAAE,+BAA+B,EAAE,MAAM,sBAAsB,CAAA;AAEtE,wBAAsB,iBAAiB,CACrC,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,EACZ,UAAU,UAAQ,EAClB,OAAO,CAAC,EAAE,wBAAwB,GACjC,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,GAAG,CAAA;CAAE,CAAC,CAEtC"}
1
+ {"version":3,"file":"transformWorklets.d.ts","sourceRoot":"","sources":["../src/transformWorklets.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,sCAAsC,UAiBlD,CAAA;AAiCD,wBAAgB,uBAAuB,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,WAWjF;AAED,wBAAgB,kBAAkB,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CA8DlF;AAED,MAAM,MAAM,wBAAwB,GAAG;IACrC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,0BAA0B,CAAC,EAAE,OAAO,CAAA;IACpC,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAC/B,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,sBAAsB,CAAC,EAAE,OAAO,CAAA;IAChC,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB,CAAA;AAGD,OAAO,EAAE,+BAA+B,EAAE,MAAM,sBAAsB,CAAA;AAEtE,wBAAsB,iBAAiB,CACrC,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,EACZ,UAAU,UAAQ,EAClB,OAAO,CAAC,EAAE,wBAAwB,GACjC,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,GAAG,CAAA;CAAE,CAAC,CAEtC"}
@@ -1 +1 @@
1
- {"version":3,"file":"autoworklet.d.ts","sourceRoot":"","sources":["../../src/worklets/autoworklet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAK/C,eAAO,MAAM,yBAAyB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAoC9D,CAAA;AAOD,eAAO,MAAM,uBAAuB,aAWlC,CAAA;AAoHF,eAAO,MAAM,kBAAkB,UAAgE,CAAA;AAW/F,wBAAgB,YAAY,CAAC,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAsBpE;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,GAAG,GAAG,OAAO,CAExD;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAY1E;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,GAAG,GAAG,gBAAgB,EAAE,CA6JtE"}
1
+ {"version":3,"file":"autoworklet.d.ts","sourceRoot":"","sources":["../../src/worklets/autoworklet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAK/C,eAAO,MAAM,yBAAyB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAoC9D,CAAA;AAOD,eAAO,MAAM,uBAAuB,aAWlC,CAAA;AAoHF,eAAO,MAAM,kBAAkB,UAI9B,CAAA;AAWD,wBAAgB,YAAY,CAAC,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAsBpE;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,GAAG,GAAG,OAAO,CAExD;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAa1E;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,GAAG,GAAG,gBAAgB,EAAE,CAgKtE"}
@@ -1 +1 @@
1
- {"version":3,"file":"scope.d.ts","sourceRoot":"","sources":["../../src/worklets/scope.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,MAAM,EAAE,CAmY/E"}
1
+ {"version":3,"file":"scope.d.ts","sourceRoot":"","sources":["../../src/worklets/scope.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,MAAM,EAAE,CAoY/E"}
@@ -1 +1 @@
1
- {"version":3,"file":"serialize.d.ts","sourceRoot":"","sources":["../../src/worklets/serialize.ts"],"names":[],"mappings":"AA0BA;;;;GAIG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,GAAG,EACX,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,WAAW,EAAE,MAAM,EAAE,GACpB,MAAM,CA8BR;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,GAAG,EACX,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GAAG,SAAS,GACvB,MAAM,CAqCR"}
1
+ {"version":3,"file":"serialize.d.ts","sourceRoot":"","sources":["../../src/worklets/serialize.ts"],"names":[],"mappings":"AA0BA;;;;GAIG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,GAAG,EACX,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,WAAW,EAAE,MAAM,EAAE,GACpB,MAAM,CA+BR;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,GAAG,EACX,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GAAG,SAAS,GACvB,MAAM,CAqCR"}
@@ -1 +1 @@
1
- {"version":3,"file":"transform.d.ts","sourceRoot":"","sources":["../../src/worklets/transform.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAA;AAQvD,wBAAgB,+BAA+B,CAC7C,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,EACZ,UAAU,UAAQ,GACjB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,GAAG,CAAA;CAAE,GAAG,IAAI,CA+BpC;AAsCD,wBAAgB,uBAAuB,CACrC,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,EACZ,UAAU,UAAQ,EAClB,OAAO,CAAC,EAAE,wBAAwB,EAClC,gBAAgB,CAAC,EAAE,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,KAAK,MAAM,GACrE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,GAAG,CAAA;CAAE,CA8N7B"}
1
+ {"version":3,"file":"transform.d.ts","sourceRoot":"","sources":["../../src/worklets/transform.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAA;AAQvD,wBAAgB,+BAA+B,CAC7C,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,EACZ,UAAU,UAAQ,GACjB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,GAAG,CAAA;CAAE,GAAG,IAAI,CAiCpC;AAsCD,wBAAgB,uBAAuB,CACrC,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,EACZ,UAAU,UAAQ,EAClB,OAAO,CAAC,EAAE,wBAAwB,EAClC,gBAAgB,CAAC,EAAE,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,KAAK,MAAM,GACrE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,GAAG,CAAA;CAAE,CAmP7B"}