@teleporthq/teleport-plugin-common 0.43.44 → 0.43.47
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/__tests__/utils/parse-string-with-template-expressions.ts +82 -0
- package/__tests__/utils/route-utils.ts +118 -0
- package/__tests__/utils/template-expression-balance.ts +83 -0
- package/dist/cjs/node-handlers/node-to-jsx/utils.d.ts.map +1 -1
- package/dist/cjs/node-handlers/node-to-jsx/utils.js +30 -7
- package/dist/cjs/node-handlers/node-to-jsx/utils.js.map +1 -1
- package/dist/cjs/tsconfig.tsbuildinfo +1 -1
- package/dist/cjs/utils/ast-utils.d.ts.map +1 -1
- package/dist/cjs/utils/ast-utils.js +65 -16
- package/dist/cjs/utils/ast-utils.js.map +1 -1
- package/dist/cjs/utils/route-utils.d.ts +10 -0
- package/dist/cjs/utils/route-utils.d.ts.map +1 -1
- package/dist/cjs/utils/route-utils.js +9 -1
- package/dist/cjs/utils/route-utils.js.map +1 -1
- package/dist/cjs/utils/template-expression-balance.d.ts +58 -0
- package/dist/cjs/utils/template-expression-balance.d.ts.map +1 -0
- package/dist/cjs/utils/template-expression-balance.js +181 -0
- package/dist/cjs/utils/template-expression-balance.js.map +1 -0
- package/dist/esm/node-handlers/node-to-jsx/utils.d.ts.map +1 -1
- package/dist/esm/node-handlers/node-to-jsx/utils.js +31 -8
- package/dist/esm/node-handlers/node-to-jsx/utils.js.map +1 -1
- package/dist/esm/tsconfig.tsbuildinfo +1 -1
- package/dist/esm/utils/ast-utils.d.ts.map +1 -1
- package/dist/esm/utils/ast-utils.js +66 -17
- package/dist/esm/utils/ast-utils.js.map +1 -1
- package/dist/esm/utils/route-utils.d.ts +10 -0
- package/dist/esm/utils/route-utils.d.ts.map +1 -1
- package/dist/esm/utils/route-utils.js +8 -0
- package/dist/esm/utils/route-utils.js.map +1 -1
- package/dist/esm/utils/template-expression-balance.d.ts +58 -0
- package/dist/esm/utils/template-expression-balance.d.ts.map +1 -0
- package/dist/esm/utils/template-expression-balance.js +174 -0
- package/dist/esm/utils/template-expression-balance.js.map +1 -0
- package/package.json +4 -4
- package/src/node-handlers/node-to-jsx/utils.ts +36 -10
- package/src/utils/ast-utils.ts +68 -17
- package/src/utils/route-utils.ts +9 -0
- package/src/utils/template-expression-balance.ts +196 -0
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import * as types from '@babel/types'
|
|
2
|
+
import generate from '@babel/generator'
|
|
3
|
+
import { parseStringWithTemplateExpressions } from '../../src/utils/ast-utils'
|
|
4
|
+
|
|
5
|
+
/** The generated source for a template literal, e.g. "`translateX(${x}px)`". */
|
|
6
|
+
const render = (input: string): string =>
|
|
7
|
+
generate(parseStringWithTemplateExpressions(input) as types.Node).code
|
|
8
|
+
|
|
9
|
+
describe('parseStringWithTemplateExpressions', () => {
|
|
10
|
+
it('converts a well-formed binding and strips the state prefix', () => {
|
|
11
|
+
expect(render(`translate({{ enemy.x || '0' }}px)`)).toBe(`\`translate(\${enemy.x || '0'}px)\``)
|
|
12
|
+
expect(render(`translateX({{ -(state.cameraX || 0) }}px)`)).toBe(
|
|
13
|
+
`\`translateX(\${-(cameraX || 0)}px)\``
|
|
14
|
+
)
|
|
15
|
+
})
|
|
16
|
+
|
|
17
|
+
it('handles several bindings in one value', () => {
|
|
18
|
+
expect(render(`translate({{ ctx.x }}px, {{ ctx.y }}px)`)).toBe(
|
|
19
|
+
`\`translate(\${ctx.x}px, \${ctx.y}px)\``
|
|
20
|
+
)
|
|
21
|
+
})
|
|
22
|
+
|
|
23
|
+
it('re-closes a CSS function the binding genuinely swallowed', () => {
|
|
24
|
+
// The unit is inferred from the one already present.
|
|
25
|
+
expect(render(`translate({{ x }}px, {{ y`)).toBe(`\`translate(\${x}px, \${y}px)\``)
|
|
26
|
+
})
|
|
27
|
+
|
|
28
|
+
it('infers deg for rotate and no unit for scale', () => {
|
|
29
|
+
expect(render(`rotate({{ a`)).toBe(`\`rotate(\${a}deg)\``)
|
|
30
|
+
expect(render(`scale({{ s`)).toBe(`\`scale(\${s})\``)
|
|
31
|
+
})
|
|
32
|
+
})
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* Run 021fa45a — an upstream "repair" turned `{{ -(state.cameraX || 0) }}` into
|
|
36
|
+
* `{{ -(state.cameraX || '' }}`, dropping the closing paren. This function then
|
|
37
|
+
* counted parentheses across the WHOLE string, mistook the imbalance inside the
|
|
38
|
+
* interpolation for an unclosed CSS function, appended `px)` to the end, and
|
|
39
|
+
* handed Babel `` `translateX(${-(cameraX || ''}px) }px)` ``. The SyntaxError
|
|
40
|
+
* escaped through the inline-style caller (which has no try/catch) and killed
|
|
41
|
+
* the entire project build.
|
|
42
|
+
*/
|
|
43
|
+
describe('parseStringWithTemplateExpressions — a malformed binding must not break the build', () => {
|
|
44
|
+
const BROKEN = `translateX({{ -(state.cameraX || '' }}px) }`
|
|
45
|
+
|
|
46
|
+
it('does not throw on the exact UIDL value that killed the build', () => {
|
|
47
|
+
expect(() => parseStringWithTemplateExpressions(BROKEN)).not.toThrow()
|
|
48
|
+
})
|
|
49
|
+
|
|
50
|
+
it('repairs it INSIDE the interpolation, where the paren was missing', () => {
|
|
51
|
+
expect(render(BROKEN)).toBe(`\`translateX(\${-(cameraX || '')}px) }\``)
|
|
52
|
+
})
|
|
53
|
+
|
|
54
|
+
it('no longer appends a fabricated unit and paren to the end', () => {
|
|
55
|
+
expect(render(BROKEN)).not.toContain('px)`')
|
|
56
|
+
})
|
|
57
|
+
|
|
58
|
+
it('closes an unterminated quote inside a binding', () => {
|
|
59
|
+
expect(render(`{{ label || 'Guest }}`)).toBe(`\`\${label || 'Guest'}\``)
|
|
60
|
+
})
|
|
61
|
+
|
|
62
|
+
it('degrades to the declared literal fallback when nothing can be parsed', () => {
|
|
63
|
+
// A stray closer cannot be balanced without guessing, so the binding is
|
|
64
|
+
// dropped and its literal fallback kept — one value degrades, nothing throws.
|
|
65
|
+
const result = render(`{{ name) || 'Guest' }}`)
|
|
66
|
+
expect(result).toBe('`Guest`')
|
|
67
|
+
})
|
|
68
|
+
|
|
69
|
+
it('degrades to empty text when a broken binding declared no fallback', () => {
|
|
70
|
+
expect(render(`{{ a) }}`)).toBe('``')
|
|
71
|
+
})
|
|
72
|
+
|
|
73
|
+
it('always returns a TemplateLiteral, even on the degraded path', () => {
|
|
74
|
+
expect(types.isTemplateLiteral(parseStringWithTemplateExpressions(`{{ a) }}`))).toBe(true)
|
|
75
|
+
})
|
|
76
|
+
|
|
77
|
+
it('is idempotent on an already-repaired value', () => {
|
|
78
|
+
const once = render(BROKEN)
|
|
79
|
+
// Feeding the generated form back in (minus the backticks) is stable.
|
|
80
|
+
expect(render(once.slice(1, -1))).toBe(once)
|
|
81
|
+
})
|
|
82
|
+
})
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
import {
|
|
2
|
+
parseDynamicPathSegments,
|
|
3
|
+
pathHasDynamicSegment,
|
|
4
|
+
isDynamicRoute,
|
|
5
|
+
} from '../../src/utils/route-utils'
|
|
6
|
+
|
|
7
|
+
describe('parseDynamicPathSegments', () => {
|
|
8
|
+
it('splits a Next.js bracket segment into static text plus a param name', () => {
|
|
9
|
+
// The shape every details page's `navLink` actually carries. Before this
|
|
10
|
+
// was understood, the literal text "[id]" shipped inside canonical URLs,
|
|
11
|
+
// og:url and sitemap entries.
|
|
12
|
+
expect(parseDynamicPathSegments('/event-details/[id]')).toEqual({
|
|
13
|
+
staticParts: ['/event-details/', ''],
|
|
14
|
+
paramNames: ['id'],
|
|
15
|
+
})
|
|
16
|
+
})
|
|
17
|
+
|
|
18
|
+
it('still splits the template-literal form', () => {
|
|
19
|
+
expect(parseDynamicPathSegments('/news/' + '$' + '{' + 'slug}')).toEqual({
|
|
20
|
+
staticParts: ['/news/', ''],
|
|
21
|
+
paramNames: ['slug'],
|
|
22
|
+
})
|
|
23
|
+
})
|
|
24
|
+
|
|
25
|
+
it('handles a full absolute URL, keeping the origin in the static text', () => {
|
|
26
|
+
expect(parseDynamicPathSegments('https://example.com/rsvp-event/[id]')).toEqual({
|
|
27
|
+
staticParts: ['https://example.com/rsvp-event/', ''],
|
|
28
|
+
paramNames: ['id'],
|
|
29
|
+
})
|
|
30
|
+
})
|
|
31
|
+
|
|
32
|
+
it('splits several parameters and keeps the text between them', () => {
|
|
33
|
+
expect(parseDynamicPathSegments('/g/[guildId]/e/[eventId]/rsvp')).toEqual({
|
|
34
|
+
staticParts: ['/g/', '/e/', '/rsvp'],
|
|
35
|
+
paramNames: ['guildId', 'eventId'],
|
|
36
|
+
})
|
|
37
|
+
})
|
|
38
|
+
|
|
39
|
+
it('mixes both spellings in one path', () => {
|
|
40
|
+
expect(parseDynamicPathSegments('/a/[id]/b/' + '$' + '{' + 'slug}')).toEqual({
|
|
41
|
+
staticParts: ['/a/', '/b/', ''],
|
|
42
|
+
paramNames: ['id', 'slug'],
|
|
43
|
+
})
|
|
44
|
+
})
|
|
45
|
+
|
|
46
|
+
it('reports no parameters for a plain static path', () => {
|
|
47
|
+
expect(parseDynamicPathSegments('https://example.com/add-guild')).toEqual({
|
|
48
|
+
staticParts: ['https://example.com/add-guild'],
|
|
49
|
+
paramNames: [],
|
|
50
|
+
})
|
|
51
|
+
})
|
|
52
|
+
|
|
53
|
+
it('always returns exactly one more static part than parameters', () => {
|
|
54
|
+
for (const path of ['/a', '/a/[id]', '/a/[id]/b/[other]', '/' + '$' + '{' + 'x}']) {
|
|
55
|
+
const { staticParts, paramNames } = parseDynamicPathSegments(path)
|
|
56
|
+
expect(staticParts.length).toBe(paramNames.length + 1)
|
|
57
|
+
}
|
|
58
|
+
})
|
|
59
|
+
|
|
60
|
+
it('rebuilding staticParts + parameters reproduces the original path', () => {
|
|
61
|
+
const path = '/g/[guildId]/e/[eventId]/rsvp'
|
|
62
|
+
const { staticParts, paramNames } = parseDynamicPathSegments(path)
|
|
63
|
+
const rebuilt = staticParts.reduce(
|
|
64
|
+
(acc, part, i) => acc + part + (i < paramNames.length ? `[${paramNames[i]}]` : ''),
|
|
65
|
+
''
|
|
66
|
+
)
|
|
67
|
+
expect(rebuilt).toBe(path)
|
|
68
|
+
})
|
|
69
|
+
|
|
70
|
+
it('ignores a bracket that is not a whole path segment', () => {
|
|
71
|
+
// A literal bracket inside a segment or a query string is content, not a
|
|
72
|
+
// route parameter — turning it into router.query would corrupt the URL.
|
|
73
|
+
expect(parseDynamicPathSegments('/report[2024]/summary').paramNames).toEqual([])
|
|
74
|
+
expect(parseDynamicPathSegments('/search?tags[]=a').paramNames).toEqual([])
|
|
75
|
+
expect(parseDynamicPathSegments('/a/[id]x/b').paramNames).toEqual([])
|
|
76
|
+
})
|
|
77
|
+
|
|
78
|
+
it('ignores Next catch-all segments, whose value is an array', () => {
|
|
79
|
+
// `router.query.slug` is a string[] for a catch-all; interpolating it into
|
|
80
|
+
// a URL would emit a comma-joined path. Leaving it alone is the honest
|
|
81
|
+
// outcome until a caller needs a real join.
|
|
82
|
+
expect(parseDynamicPathSegments('/docs/[...slug]').paramNames).toEqual([])
|
|
83
|
+
expect(parseDynamicPathSegments('/docs/[[...slug]]').paramNames).toEqual([])
|
|
84
|
+
})
|
|
85
|
+
|
|
86
|
+
it('ends a segment at anything that cannot be part of a path', () => {
|
|
87
|
+
// The same template appears inside a serialized JSON-LD document, where the
|
|
88
|
+
// URL ends at the closing quote rather than at a slash.
|
|
89
|
+
const embedded = '{"item":"https://example.com/event-details/[id]"}'
|
|
90
|
+
const { paramNames } = parseDynamicPathSegments(embedded)
|
|
91
|
+
expect(paramNames).toEqual(['id'])
|
|
92
|
+
})
|
|
93
|
+
|
|
94
|
+
it('is total for empty input', () => {
|
|
95
|
+
expect(parseDynamicPathSegments('')).toEqual({ staticParts: [''], paramNames: [] })
|
|
96
|
+
})
|
|
97
|
+
})
|
|
98
|
+
|
|
99
|
+
describe('pathHasDynamicSegment', () => {
|
|
100
|
+
it('is true only for a whole-segment bracket parameter', () => {
|
|
101
|
+
expect(pathHasDynamicSegment('/add-character/[id]')).toBe(true)
|
|
102
|
+
expect(pathHasDynamicSegment('https://example.com/profile/[id]')).toBe(true)
|
|
103
|
+
expect(pathHasDynamicSegment('/add-guild')).toBe(false)
|
|
104
|
+
expect(pathHasDynamicSegment('/report[2024]')).toBe(false)
|
|
105
|
+
expect(pathHasDynamicSegment('')).toBe(false)
|
|
106
|
+
expect(pathHasDynamicSegment(undefined as unknown as string)).toBe(false)
|
|
107
|
+
})
|
|
108
|
+
})
|
|
109
|
+
|
|
110
|
+
describe('isDynamicRoute', () => {
|
|
111
|
+
it('reads the component output options, not a URL', () => {
|
|
112
|
+
expect(
|
|
113
|
+
isDynamicRoute({ outputOptions: { folderPath: ['event-details'], fileName: '[id]' } })
|
|
114
|
+
).toBe(true)
|
|
115
|
+
expect(isDynamicRoute({ outputOptions: { folderPath: [], fileName: 'add-guild' } })).toBe(false)
|
|
116
|
+
expect(isDynamicRoute({})).toBe(false)
|
|
117
|
+
})
|
|
118
|
+
})
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import {
|
|
2
|
+
balanceExpression,
|
|
3
|
+
countUnclosedStaticParens,
|
|
4
|
+
isBalancedExpression,
|
|
5
|
+
scanExpression,
|
|
6
|
+
} from '../../src/utils/template-expression-balance'
|
|
7
|
+
|
|
8
|
+
describe('scanExpression', () => {
|
|
9
|
+
it('reports a clean expression as fully closed', () => {
|
|
10
|
+
const scan = scanExpression('-(cameraX || 0)')
|
|
11
|
+
expect(scan.unclosed).toEqual([])
|
|
12
|
+
expect(scan.strayCloserCount).toBe(0)
|
|
13
|
+
expect(scan.unterminatedQuote).toBeNull()
|
|
14
|
+
})
|
|
15
|
+
|
|
16
|
+
it('never lets a bracket inside a string affect nesting', () => {
|
|
17
|
+
expect(isBalancedExpression(`name || '(unclosed'`)).toBe(true)
|
|
18
|
+
expect(isBalancedExpression(`name || ')'`)).toBe(true)
|
|
19
|
+
})
|
|
20
|
+
|
|
21
|
+
it('honours escapes inside a string', () => {
|
|
22
|
+
expect(isBalancedExpression(`name || 'it\\'s fine'`)).toBe(true)
|
|
23
|
+
})
|
|
24
|
+
|
|
25
|
+
it('reports an unterminated quote', () => {
|
|
26
|
+
expect(scanExpression(`name || 'oops`).unterminatedQuote).toBe("'")
|
|
27
|
+
})
|
|
28
|
+
|
|
29
|
+
it('counts a closer that never had an opener as stray', () => {
|
|
30
|
+
expect(scanExpression('0)').strayCloserCount).toBe(1)
|
|
31
|
+
})
|
|
32
|
+
|
|
33
|
+
it('treats a mismatched closer as stray rather than guessing', () => {
|
|
34
|
+
expect(scanExpression('fn(a]').strayCloserCount).toBe(1)
|
|
35
|
+
})
|
|
36
|
+
})
|
|
37
|
+
|
|
38
|
+
describe('balanceExpression', () => {
|
|
39
|
+
it('closes the paren the upstream repair dropped', () => {
|
|
40
|
+
expect(balanceExpression(`-(cameraX || ''`)).toBe(`-(cameraX || '')`)
|
|
41
|
+
})
|
|
42
|
+
|
|
43
|
+
it('closes an unterminated quote BEFORE the brackets around it', () => {
|
|
44
|
+
expect(balanceExpression(`fn(x, 'label`)).toBe(`fn(x, 'label')`)
|
|
45
|
+
})
|
|
46
|
+
|
|
47
|
+
it('closes nested brackets outermost-last', () => {
|
|
48
|
+
expect(balanceExpression('fn(items[0')).toBe('fn(items[0])')
|
|
49
|
+
})
|
|
50
|
+
|
|
51
|
+
it('leaves a balanced expression byte-for-byte alone', () => {
|
|
52
|
+
for (const expr of [`-(cameraX || 0)`, `a.b`, `items[0].name`, `fn(a, 'b')`]) {
|
|
53
|
+
expect(balanceExpression(expr)).toBe(expr)
|
|
54
|
+
}
|
|
55
|
+
})
|
|
56
|
+
|
|
57
|
+
it('refuses to guess where a missing opener belonged', () => {
|
|
58
|
+
expect(balanceExpression('cameraX)')).toBe('cameraX)')
|
|
59
|
+
})
|
|
60
|
+
})
|
|
61
|
+
|
|
62
|
+
describe('countUnclosedStaticParens', () => {
|
|
63
|
+
it('ignores parentheses inside an interpolation', () => {
|
|
64
|
+
// The whole point: the `(` in the expression is not a CSS function call.
|
|
65
|
+
expect(countUnclosedStaticParens(`translateX(\${-(cameraX || 0)}px)`)).toBe(0)
|
|
66
|
+
})
|
|
67
|
+
|
|
68
|
+
it('counts a genuinely unclosed CSS function', () => {
|
|
69
|
+
expect(countUnclosedStaticParens(`translate(\${x}px, \${y}px`)).toBe(1)
|
|
70
|
+
})
|
|
71
|
+
|
|
72
|
+
it('does not go negative on extra closers', () => {
|
|
73
|
+
expect(countUnclosedStaticParens(`\${x}px))`)).toBe(0)
|
|
74
|
+
})
|
|
75
|
+
|
|
76
|
+
it('skips a brace inside a string inside an interpolation', () => {
|
|
77
|
+
expect(countUnclosedStaticParens(`translateX(${'${'}fn('}')${'}'}px)`)).toBe(0)
|
|
78
|
+
})
|
|
79
|
+
|
|
80
|
+
it('tolerates an unterminated interpolation', () => {
|
|
81
|
+
expect(countUnclosedStaticParens(`translateX(\${-(cameraX`)).toBe(1)
|
|
82
|
+
})
|
|
83
|
+
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/node-handlers/node-to-jsx/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AASrC,OAAO,EAEL,kBAAkB,EAClB,oBAAoB,EACpB,mBAAmB,EACnB,yBAAyB,EACzB,yBAAyB,EAEzB,sBAAsB,EACtB,mBAAmB,EACnB,mBAAmB,EACnB,yBAAyB,EACzB,wBAAwB,EACzB,MAAM,4BAA4B,CAAA;AAEnC,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,SAAS,CAAA;AAyEhB;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,0CAA0C,QAChD,MAAM,UAAU,eACR,MAAM,uBAElB,IA8DF,CAAA;AAED,eAAO,MAAM,oBAAoB,QAC1B,MAAM,UAAU,YACX,MAAM,0BACQ,yBAAyB,EAAE,UAC3C,mBAAmB,WAClB,oBAAoB,2BA8C9B,CAAA;
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/node-handlers/node-to-jsx/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AASrC,OAAO,EAEL,kBAAkB,EAClB,oBAAoB,EACpB,mBAAmB,EACnB,yBAAyB,EACzB,yBAAyB,EAEzB,sBAAsB,EACtB,mBAAmB,EACnB,mBAAmB,EACnB,yBAAyB,EACzB,wBAAwB,EACzB,MAAM,4BAA4B,CAAA;AAEnC,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,SAAS,CAAA;AAyEhB;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,0CAA0C,QAChD,MAAM,UAAU,eACR,MAAM,uBAElB,IA8DF,CAAA;AAED,eAAO,MAAM,oBAAoB,QAC1B,MAAM,UAAU,YACX,MAAM,0BACQ,yBAAyB,EAAE,UAC3C,mBAAmB,WAClB,oBAAoB,2BA8C9B,CAAA;AAoCD;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,0BAA0B,0BACd,sBAAsB,oBAC3B,OAAO,MAAM,EAAE,mBAAmB,CAAC,WAC5C,oBAAoB,gDAiM9B,CAAA;AAED,eAAO,MAAM,sBAAsB,OAC7B,MAAM,gBACI,OAAO,MAAM,EAAE,yBAAyB,CAAC,KACtD,MAUF,CAAA;AAcD;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,mCAAmC,WACtC,MAAM,GAAG,SAAS,UAClB,mBAAmB,KAC1B,MA0CF,CAAA;AAED,eAAO,MAAM,2BAA2B,QACjC,wBAAwB,gBACf,OAAO,MAAM,EAAE,yBAAyB,CAAC,uBAEtD,MAAM,UAAU,GAAG,MAAM,wBAiB3B,CAAA;AAED,eAAO,MAAM,4BAA4B,eAC3B,oBAAoB,GAAG,mBAAmB,WAC7C,oBAAoB,8yCAe9B,CAAA;AAiLD,eAAO,MAAM,yBAAyB,qBAClB,oBAAoB,GAAG,mBAAmB,UACpD,mBAAmB,WAClB,oBAAoB,KAC5B,qBAkIF,CAAA;AAED,eAAO,MAAM,8BAA8B,YAChC,gBAAgB,yBACF,yBAAyB,yBACzB,qBAAqB,YACnC;IAAE,eAAe,CAAC,EAAE,MAAM,CAAC;IAAC,uBAAuB,CAAC,EAAE,MAAM,CAAA;CAAE,8CA4CxE,CAAA;AAuED,eAAO,MAAM,sBAAsB;eAEpB,MAAM;cACP,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,oBAAoB,GAAG,mBAAmB;oBAChE,MAAM;0BAED,qBAAqB,YACnC;IAAE,eAAe,CAAC,EAAE,MAAM,CAAC;IAAC,uBAAuB,CAAC,EAAE,MAAM,CAAA;CAAE,wIA0LxE,CAAA;AAED,eAAO,MAAM,yBAAyB,eACxB,kBAAkB,WACrB,oBAAoB,8xCAW9B,CAAA"}
|
|
@@ -215,7 +215,13 @@ var createPropCallStatement = function (eventHandlerStatement, propDefinitions,
|
|
|
215
215
|
var prefix = options.dynamicReferencePrefixMap.prop
|
|
216
216
|
? options.dynamicReferencePrefixMap.prop + '.'
|
|
217
217
|
: '';
|
|
218
|
-
|
|
218
|
+
// Un-prefixed the prop name is called as a bare binding, so it must be
|
|
219
|
+
// identifier-safe; prefixed it is `props.<name>`, where the UIDL spelling is
|
|
220
|
+
// both legal and load-bearing.
|
|
221
|
+
var calleeName = prefix
|
|
222
|
+
? prefix + propFunctionKey
|
|
223
|
+
: teleport_shared_1.JSIdentifiers.createSafeJSIdentifier(propFunctionKey);
|
|
224
|
+
return t.expressionStatement(t.callExpression(t.identifier(calleeName), __spreadArray([], args.map(function (arg) { return (0, ast_utils_1.convertValueToLiteral)(arg); }), true)));
|
|
219
225
|
};
|
|
220
226
|
/**
|
|
221
227
|
* Plan v14 — Type-aware state setter emitter.
|
|
@@ -252,6 +258,12 @@ var createStateChangeStatement = function (eventHandlerStatement, stateDefinitio
|
|
|
252
258
|
var statePrefix = options.dynamicReferencePrefixMap.state
|
|
253
259
|
? options.dynamicReferencePrefixMap.state + '.'
|
|
254
260
|
: '';
|
|
261
|
+
// Reading/writing the state through a prefix (`this.class`) is a member
|
|
262
|
+
// access and keeps the UIDL spelling; without one the name IS the binding
|
|
263
|
+
// and has to match what `createStateHookAST` declared.
|
|
264
|
+
var stateReadName = statePrefix
|
|
265
|
+
? statePrefix + stateKey
|
|
266
|
+
: teleport_shared_1.JSIdentifiers.createSafeJSIdentifier(stateKey);
|
|
255
267
|
var declaredType = stateDefinition.type;
|
|
256
268
|
var newState = eventHandlerStatement.newState;
|
|
257
269
|
var newStateValue;
|
|
@@ -264,7 +276,7 @@ var createStateChangeStatement = function (eventHandlerStatement, stateDefinitio
|
|
|
264
276
|
console.warn("[createStateChangeStatement] '$toggle' is only valid for boolean state; state \"".concat(stateKey, "\" is declared as ").concat(declaredType, ". Skipping setter to avoid corrupting state."));
|
|
265
277
|
return null;
|
|
266
278
|
}
|
|
267
|
-
newStateValue = t.unaryExpression('!', t.identifier(
|
|
279
|
+
newStateValue = t.unaryExpression('!', t.identifier(stateReadName));
|
|
268
280
|
}
|
|
269
281
|
else if (typeof newState === 'object' && newState !== null) {
|
|
270
282
|
var obj = newState;
|
|
@@ -385,7 +397,7 @@ var createStateChangeStatement = function (eventHandlerStatement, stateDefinitio
|
|
|
385
397
|
if (!newStateValue) {
|
|
386
398
|
return null;
|
|
387
399
|
}
|
|
388
|
-
return t.expressionStatement(t.assignmentExpression('=', t.identifier(
|
|
400
|
+
return t.expressionStatement(t.assignmentExpression('=', t.identifier(stateReadName), newStateValue));
|
|
389
401
|
}
|
|
390
402
|
}
|
|
391
403
|
};
|
|
@@ -444,7 +456,9 @@ var resolveAndRegisterGlobalStateSource = function (source, params) {
|
|
|
444
456
|
var def = _a[_i];
|
|
445
457
|
if (def.id === id) {
|
|
446
458
|
params.globalStateReferences.push({ id: def.id, name: def.name });
|
|
447
|
-
|
|
459
|
+
// The rewritten source is embedded as code, so the placeholder becomes
|
|
460
|
+
// the LOCAL binding — the sanitised name the destructuring declares.
|
|
461
|
+
return original.replace(LEGACY_GLOBAL_STATE_RE, teleport_shared_1.JSIdentifiers.createSafeJSIdentifier(def.name));
|
|
448
462
|
}
|
|
449
463
|
}
|
|
450
464
|
// Legacy prefix found but no matching definition (orphaned reference).
|
|
@@ -468,7 +482,9 @@ var resolveAndRegisterGlobalStateSource = function (source, params) {
|
|
|
468
482
|
exports.resolveAndRegisterGlobalStateSource = resolveAndRegisterGlobalStateSource;
|
|
469
483
|
var createGlobalStateExpression = function (ref, definitions, t) {
|
|
470
484
|
if (t === void 0) { t = types; }
|
|
471
|
-
|
|
485
|
+
// The global-state name is destructured out of `useGlobalState()` as a local
|
|
486
|
+
// binding, so it goes through the same sanitiser the destructuring site uses.
|
|
487
|
+
var name = teleport_shared_1.JSIdentifiers.createSafeJSIdentifier((0, exports.resolveGlobalStateName)(ref.content.id, definitions));
|
|
472
488
|
var refPath = ref.content.refPath || [];
|
|
473
489
|
if (refPath.length === 0) {
|
|
474
490
|
return t.identifier(name);
|
|
@@ -626,8 +642,12 @@ var createDynamicValueExpressionRaw = function (identifier, options, t) {
|
|
|
626
642
|
}
|
|
627
643
|
var idWithPath = (0, uidl_utils_1.generateIdWithRefPath)(id, refPath);
|
|
628
644
|
var prefix = options.dynamicReferencePrefixMap[referenceType] || '';
|
|
645
|
+
// With no prefix the id IS the binding (React hooks: `class`), so it has to
|
|
646
|
+
// be sanitised exactly the way the declaration was. With a prefix it is a
|
|
647
|
+
// MEMBER (`props.class`, `this.class`), where a reserved word is perfectly
|
|
648
|
+
// legal and renaming it would point at a property that does not exist.
|
|
629
649
|
return prefix === ''
|
|
630
|
-
? t.identifier(idWithPath)
|
|
650
|
+
? t.identifier(teleport_shared_1.JSIdentifiers.createSafeJSIdentifierPath(idWithPath))
|
|
631
651
|
: t.memberExpression(t.identifier(prefix), t.identifier(idWithPath));
|
|
632
652
|
};
|
|
633
653
|
// Prepares an identifier (from props or state or an expr) to be used as a conditional rendering identifier
|
|
@@ -827,9 +847,12 @@ var createBinaryExpression = function (condition, conditionalIdentifier, options
|
|
|
827
847
|
if (options === void 0) { options = {}; }
|
|
828
848
|
if (t === void 0) { t = types; }
|
|
829
849
|
var operand = condition.operand, operation = condition.operation, containsField = condition.containsField;
|
|
850
|
+
// Same rule as `createDynamicValueExpression`: an un-prefixed key is the
|
|
851
|
+
// binding itself and must be identifier-safe; a prefixed one is a member
|
|
852
|
+
// access that has to keep the UIDL's original spelling.
|
|
830
853
|
var identifier = conditionalIdentifier.prefix
|
|
831
854
|
? t.memberExpression(t.identifier(conditionalIdentifier.prefix), t.identifier(conditionalIdentifier.key))
|
|
832
|
-
: t.identifier(conditionalIdentifier.key);
|
|
855
|
+
: t.identifier(teleport_shared_1.JSIdentifiers.createSafeJSIdentifierPath(conditionalIdentifier.key));
|
|
833
856
|
// Array/Object operators
|
|
834
857
|
if (operation === 'isEmpty') {
|
|
835
858
|
return t.binaryExpression('===', createLengthExpression(identifier, conditionalIdentifier, t), t.numericLiteral(0));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/node-handlers/node-to-jsx/utils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/node-handlers/node-to-jsx/utils.ts"],"names":[],"mappings":"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"}
|