@teleporthq/teleport-plugin-common 0.36.6 → 0.37.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/dist/cjs/node-handlers/node-to-html/index.js +8 -0
  2. package/dist/cjs/node-handlers/node-to-html/index.js.map +1 -1
  3. package/dist/cjs/node-handlers/node-to-html/utils.d.ts.map +1 -1
  4. package/dist/cjs/node-handlers/node-to-html/utils.js +5 -1
  5. package/dist/cjs/node-handlers/node-to-html/utils.js.map +1 -1
  6. package/dist/cjs/node-handlers/node-to-jsx/index.js +42 -17
  7. package/dist/cjs/node-handlers/node-to-jsx/index.js.map +1 -1
  8. package/dist/cjs/node-handlers/node-to-jsx/types.d.ts +4 -4
  9. package/dist/cjs/node-handlers/node-to-jsx/types.d.ts.map +1 -1
  10. package/dist/cjs/node-handlers/node-to-jsx/utils.d.ts +2 -2
  11. package/dist/cjs/node-handlers/node-to-jsx/utils.d.ts.map +1 -1
  12. package/dist/cjs/node-handlers/node-to-jsx/utils.js +8 -25
  13. package/dist/cjs/node-handlers/node-to-jsx/utils.js.map +1 -1
  14. package/dist/cjs/tsconfig.tsbuildinfo +1 -1
  15. package/dist/cjs/utils/ast-utils.d.ts +7 -0
  16. package/dist/cjs/utils/ast-utils.d.ts.map +1 -1
  17. package/dist/cjs/utils/ast-utils.js +25 -1
  18. package/dist/cjs/utils/ast-utils.js.map +1 -1
  19. package/dist/cjs/utils/types.d.ts +3 -0
  20. package/dist/cjs/utils/types.d.ts.map +1 -0
  21. package/dist/cjs/utils/types.js +3 -0
  22. package/dist/cjs/utils/types.js.map +1 -0
  23. package/dist/esm/node-handlers/node-to-html/index.js +8 -0
  24. package/dist/esm/node-handlers/node-to-html/index.js.map +1 -1
  25. package/dist/esm/node-handlers/node-to-html/utils.d.ts.map +1 -1
  26. package/dist/esm/node-handlers/node-to-html/utils.js +5 -1
  27. package/dist/esm/node-handlers/node-to-html/utils.js.map +1 -1
  28. package/dist/esm/node-handlers/node-to-jsx/index.js +42 -17
  29. package/dist/esm/node-handlers/node-to-jsx/index.js.map +1 -1
  30. package/dist/esm/node-handlers/node-to-jsx/types.d.ts +4 -4
  31. package/dist/esm/node-handlers/node-to-jsx/types.d.ts.map +1 -1
  32. package/dist/esm/node-handlers/node-to-jsx/utils.d.ts +2 -2
  33. package/dist/esm/node-handlers/node-to-jsx/utils.d.ts.map +1 -1
  34. package/dist/esm/node-handlers/node-to-jsx/utils.js +7 -24
  35. package/dist/esm/node-handlers/node-to-jsx/utils.js.map +1 -1
  36. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  37. package/dist/esm/utils/ast-utils.d.ts +7 -0
  38. package/dist/esm/utils/ast-utils.d.ts.map +1 -1
  39. package/dist/esm/utils/ast-utils.js +22 -0
  40. package/dist/esm/utils/ast-utils.js.map +1 -1
  41. package/dist/esm/utils/types.d.ts +3 -0
  42. package/dist/esm/utils/types.d.ts.map +1 -0
  43. package/dist/esm/utils/types.js +2 -0
  44. package/dist/esm/utils/types.js.map +1 -0
  45. package/package.json +4 -4
  46. package/src/node-handlers/node-to-html/index.ts +10 -0
  47. package/src/node-handlers/node-to-html/utils.ts +5 -1
  48. package/src/node-handlers/node-to-jsx/index.ts +57 -28
  49. package/src/node-handlers/node-to-jsx/types.ts +9 -28
  50. package/src/node-handlers/node-to-jsx/utils.ts +14 -27
  51. package/src/utils/ast-utils.ts +23 -0
  52. package/src/utils/types.ts +25 -0
@@ -1 +1 @@
1
- {"version":3,"file":"ast-utils.js","sourceRoot":"","sources":["../../../src/utils/ast-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ast-utils.js","sourceRoot":"","sources":["../../../src/utils/ast-utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export type BinaryOperator = '===' | '+' | '-' | '/' | '%' | '*' | '**' | '&' | '|' | '>>' | '>>>' | '<<' | '^' | '==' | '!=' | '!==' | 'in' | 'instanceof' | '>' | '<' | '>=' | '<=';
2
+ export type UnaryOperation = '+' | '-' | 'void' | 'throw' | 'delete' | '!' | '~' | 'typeof';
3
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/utils/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,cAAc,GACtB,KAAK,GACL,GAAG,GACH,GAAG,GACH,GAAG,GACH,GAAG,GACH,GAAG,GACH,IAAI,GACJ,GAAG,GACH,GAAG,GACH,IAAI,GACJ,KAAK,GACL,IAAI,GACJ,GAAG,GACH,IAAI,GACJ,IAAI,GACJ,KAAK,GACL,IAAI,GACJ,YAAY,GACZ,GAAG,GACH,GAAG,GACH,IAAI,GACJ,IAAI,CAAA;AAER,MAAM,MAAM,cAAc,GAAG,GAAG,GAAG,GAAG,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,GAAG,GAAG,GAAG,GAAG,QAAQ,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/utils/types.ts"],"names":[],"mappings":""}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@teleporthq/teleport-plugin-common",
3
- "version": "0.36.6",
3
+ "version": "0.37.2",
4
4
  "description": "Common building and modelating functions for ASTs and HASTs",
5
5
  "author": "teleportHQ",
6
6
  "license": "MIT",
@@ -27,10 +27,10 @@
27
27
  "@babel/core": "^7.5.5",
28
28
  "@babel/preset-react": "^7.22.5",
29
29
  "@babel/types": "^7.5.5",
30
- "@teleporthq/teleport-shared": "^0.36.6",
31
- "@teleporthq/teleport-types": "^0.36.6",
30
+ "@teleporthq/teleport-shared": "^0.37.2",
31
+ "@teleporthq/teleport-types": "^0.37.2",
32
32
  "jss": "^10.0.0",
33
33
  "jss-preset-default": "^10.0.0"
34
34
  },
35
- "gitHead": "64a55c39dba17f13dc58805a7a28f74cd96dd03a"
35
+ "gitHead": "bfc4e6229bcd9b3e5ce4077dbf6fd19666935187"
36
36
  }
@@ -122,6 +122,9 @@ const generateNode: NodeToHTML<UIDLNode, HastNode | HastText | string> = (
122
122
  case 'slot':
123
123
  return generateSlotNode(node, params, templateSyntax)
124
124
 
125
+ case 'expr':
126
+ return 'Expression nodes are not supported'
127
+
125
128
  default:
126
129
  throw new Error(
127
130
  `generateHTMLSyntax encountered a node of unsupported type: ${JSON.stringify(
@@ -138,6 +141,13 @@ const generateDynamicNode: NodeToHTML<UIDLDynamicReference, HastNode | HastText
138
141
  params,
139
142
  templateSyntax
140
143
  ) => {
144
+ if (node.content.referenceType === 'global') {
145
+ // TODO: Check this in the future. Not throwing an error for now
146
+ console.info(`Global dynamic values are not supported in the HTML generator`)
147
+ const spanNode = createHTMLNode('span')
148
+ return spanNode
149
+ }
150
+
141
151
  const usedPropType = params.propDefinitions[node.content.id]
142
152
  if (usedPropType && usedPropType.type === 'element') {
143
153
  let slotNode = createHTMLNode('slot')
@@ -85,7 +85,8 @@ export const handleAttribute = (
85
85
  }
86
86
 
87
87
  case 'expr':
88
- throw new Error(`Expressions are not supported in HTML templates`)
88
+ // TODO: Check this in the future. Not throwing an error for now
89
+ console.info(`Expressions are not supported in HTML templates`)
89
90
  break
90
91
 
91
92
  default:
@@ -181,6 +182,9 @@ const createConditional = (
181
182
  }
182
183
 
183
184
  const stringConditions = conditions.map(({ operation, operand }) => {
185
+ // @todo
186
+ // unlike jsx code generation, we are not converting the operand to binary or unary operation.
187
+ // Please refer to https://github.com/teleporthq/teleport-code-generators/blob/development/packages/teleport-plugin-common/src/node-handlers/node-to-jsx/utils.ts#L303-L319
184
188
  return `(${stringifyConditionalExpression(conditionalKey, operation, operand)})`
185
189
  })
186
190
 
@@ -205,8 +205,7 @@ const generateNode: NodeToJSX<UIDLNode, JSXASTReturnType[]> = (node, params, opt
205
205
 
206
206
  case 'inject':
207
207
  if (node?.dependency) {
208
- /* tslint:disable:no-string-literal */
209
- params.dependencies['Script'] = node.dependency
208
+ params.dependencies.Script = node.dependency
210
209
  }
211
210
  return [node.content.toString()]
212
211
 
@@ -214,35 +213,65 @@ const generateNode: NodeToJSX<UIDLNode, JSXASTReturnType[]> = (node, params, opt
214
213
  return [StringUtils.encode(node.content.toString())]
215
214
 
216
215
  case 'dynamic':
217
- // If the dynamic node is a prop and has a default value,
218
- // we should use it with a logical expression. And the most used case is for named-slots.
219
- const prop = params.propDefinitions[node.content.id]
220
- if (prop?.type === 'element' && prop.defaultValue) {
221
- const prefix =
222
- options.dynamicReferencePrefixMap[
223
- node.content.referenceType as 'prop' | 'state' | 'local'
224
- ] || ''
225
-
226
- const propDefault = prop.defaultValue as UIDLElementNode
227
- const jsxNode = params.nodesLookup[propDefault.content.key]
228
-
229
- if (jsxNode === undefined) {
230
- throw Error(`Prop ${node.content.id} is of type element \n
231
- The JSXNode of the prop-${node.content.id} is missing from the nodesLookup`)
216
+ switch (node.content.referenceType) {
217
+ case 'prop': {
218
+ // If the dynamic node is a prop and has a default value of type UIDLElementNode,
219
+ // we should use it with a logical expression.
220
+ const prop = params.propDefinitions[node.content.id]
221
+ if (prop?.type === 'element' && prop.defaultValue) {
222
+ const prefix = options.dynamicReferencePrefixMap[node.content.referenceType] || ''
223
+
224
+ const propDefault = prop.defaultValue as UIDLElementNode
225
+ const jsxNode = params.nodesLookup[propDefault.content.key]
226
+
227
+ if (jsxNode === undefined) {
228
+ throw Error(`Prop ${node.content.id} is of type element \n
229
+ The JSXNode of the prop-${node.content.id} is missing from the nodesLookup`)
230
+ }
231
+
232
+ return [
233
+ types.logicalExpression(
234
+ '??',
235
+ prefix === ''
236
+ ? types.identifier(node.content.id)
237
+ : types.memberExpression(
238
+ types.identifier(prefix),
239
+ types.identifier(node.content.id)
240
+ ),
241
+ jsxNode as types.JSXElement
242
+ ),
243
+ ]
244
+ }
245
+
246
+ return [createDynamicValueExpression(node, options)]
232
247
  }
233
248
 
234
- return [
235
- types.logicalExpression(
236
- '??',
237
- prefix === ''
238
- ? types.identifier(node.content.id)
239
- : types.memberExpression(types.identifier(prefix), types.identifier(node.content.id)),
240
- jsxNode as types.JSXElement
241
- ),
242
- ]
243
- }
249
+ case 'locale': {
250
+ // Locale is not handled the same in all frameworks.
251
+ // So, we need to handle it differently using individual plugins for each framework.
252
+ const emptyExpression = types.jsxEmptyExpression()
253
+ emptyExpression.innerComments = [
254
+ {
255
+ type: 'CommentBlock',
256
+ value: `locale-${node.content.id}`,
257
+ },
258
+ ]
259
+ const expression = types.jsxExpressionContainer(emptyExpression)
260
+ const jsxTag = createJSXTag('span')
261
+ addChildJSXTag(jsxTag, expression)
262
+
263
+ params.localeReferences.push(jsxTag)
264
+ return [jsxTag]
265
+ }
244
266
 
245
- return [createDynamicValueExpression(node, options)]
267
+ case 'global': {
268
+ params.globalReferences.push(node.content.id)
269
+ return [createDynamicValueExpression(node, options)]
270
+ }
271
+
272
+ default:
273
+ return [createDynamicValueExpression(node, options)]
274
+ }
246
275
 
247
276
  case 'cms-item':
248
277
  case 'cms-list':
@@ -1,13 +1,20 @@
1
1
  import * as types from '@babel/types'
2
2
 
3
- import { UIDLPropDefinition, UIDLDependency, UIDLStateDefinition } from '@teleporthq/teleport-types'
3
+ import {
4
+ UIDLPropDefinition,
5
+ UIDLDependency,
6
+ UIDLStateDefinition,
7
+ UIDLGlobalReference,
8
+ } from '@teleporthq/teleport-types'
4
9
 
5
10
  export interface JSXGenerationParams {
6
11
  propDefinitions: Record<string, UIDLPropDefinition>
7
12
  stateDefinitions: Record<string, UIDLStateDefinition>
8
- nodesLookup: Record<string, types.JSXElement>
13
+ nodesLookup: Record<string, types.JSXElement | types.JSXExpressionContainer>
9
14
  dependencies: Record<string, UIDLDependency>
10
15
  windowImports: Record<string, types.ExpressionStatement>
16
+ localeReferences: types.JSXElement[]
17
+ globalReferences: Array<UIDLGlobalReference['content']['id']>
11
18
  }
12
19
 
13
20
  export interface JSXGenerationOptions {
@@ -65,32 +72,6 @@ export type JSXASTReturnType =
65
72
  | types.Identifier
66
73
  | types.MemberExpression
67
74
 
68
- export type BinaryOperator =
69
- | '==='
70
- | '+'
71
- | '-'
72
- | '/'
73
- | '%'
74
- | '*'
75
- | '**'
76
- | '&'
77
- | '|'
78
- | '>>'
79
- | '>>>'
80
- | '<<'
81
- | '^'
82
- | '=='
83
- | '!='
84
- | '!=='
85
- | 'in'
86
- | 'instanceof'
87
- | '>'
88
- | '<'
89
- | '>='
90
- | '<='
91
-
92
- export type UnaryOperation = '+' | '-' | 'void' | 'throw' | 'delete' | '!' | '~' | 'typeof'
93
-
94
75
  export interface ConditionalIdentifier {
95
76
  key: string
96
77
  type: string
@@ -1,6 +1,10 @@
1
1
  import * as types from '@babel/types'
2
2
 
3
- import { convertValueToLiteral } from '../../utils/ast-utils'
3
+ import {
4
+ convertToBinaryOperator,
5
+ convertToUnaryOperator,
6
+ convertValueToLiteral,
7
+ } from '../../utils/ast-utils'
4
8
  import { StringUtils } from '@teleporthq/teleport-shared'
5
9
  import {
6
10
  UIDLPropDefinition,
@@ -12,11 +16,10 @@ import {
12
16
  UIDLPropCallEvent,
13
17
  UIDLStateModifierEvent,
14
18
  UIDLExpressionValue,
19
+ UIDLGlobalReference,
15
20
  } from '@teleporthq/teleport-types'
16
21
 
17
22
  import {
18
- BinaryOperator,
19
- UnaryOperation,
20
23
  JSXASTReturnType,
21
24
  ConditionalIdentifier,
22
25
  JSXGenerationParams,
@@ -144,12 +147,18 @@ const createStateChangeStatement = (
144
147
  }
145
148
 
146
149
  export const createDynamicValueExpression = (
147
- identifier: UIDLDynamicReference,
150
+ identifier: UIDLDynamicReference | UIDLGlobalReference,
148
151
  options: JSXGenerationOptions,
149
152
  t = types
150
153
  ) => {
151
154
  const identifierContent = identifier.content
152
- const { referenceType, id } = identifierContent
155
+ const refPath = identifier.content.refPath || []
156
+ const { referenceType } = identifierContent
157
+
158
+ let id = identifierContent.id
159
+ refPath?.forEach((pathItem) => {
160
+ id = id.concat(`?.${pathItem}`)
161
+ })
153
162
 
154
163
  if (referenceType === 'attr' || referenceType === 'children' || referenceType === 'token') {
155
164
  throw new Error(`Dynamic reference type "${referenceType}" is not supported yet`)
@@ -296,28 +305,6 @@ export const createBinaryExpression = (
296
305
  }
297
306
  }
298
307
 
299
- /**
300
- * Because of the restrictions of the AST Types we need to have a clear subset of binary operators we can use
301
- * @param operation - the operation defined in the UIDL for the current state branch
302
- */
303
- const convertToBinaryOperator = (operation: string): BinaryOperator => {
304
- const allowedOperations = ['===', '!==', '>=', '<=', '>', '<']
305
- if (allowedOperations.includes(operation)) {
306
- return operation as BinaryOperator
307
- } else {
308
- return '==='
309
- }
310
- }
311
-
312
- const convertToUnaryOperator = (operation: string): UnaryOperation => {
313
- const allowedOperations = ['!']
314
- if (allowedOperations.includes(operation)) {
315
- return operation as UnaryOperation
316
- } else {
317
- return '!'
318
- }
319
- }
320
-
321
308
  export const getRepeatSourceIdentifier = (
322
309
  dataSource: UIDLAttributeValue,
323
310
  options: JSXGenerationOptions
@@ -15,6 +15,7 @@ import {
15
15
  HastNode,
16
16
  } from '@teleporthq/teleport-types'
17
17
  import babelPresetReact from '@babel/preset-react'
18
+ import { UnaryOperation, BinaryOperator } from './types'
18
19
 
19
20
  /**
20
21
  * Adds a class definition string to an existing string of classes
@@ -1088,3 +1089,25 @@ export const getExpressionFromUIDLExpressionNode = (
1088
1089
 
1089
1090
  export const isJSXElement = (value: types.JSXElement | HastNode): value is types.JSXElement =>
1090
1091
  value.type === 'JSXElement'
1092
+
1093
+ /**
1094
+ * Because of the restrictions of the AST Types we need to have a clear subset of binary operators we can use
1095
+ * @param operation - the operation defined in the UIDL for the current state branch
1096
+ */
1097
+ export const convertToBinaryOperator = (operation: string): BinaryOperator => {
1098
+ const allowedOperations = ['===', '!==', '>=', '<=', '>', '<']
1099
+ if (allowedOperations.includes(operation)) {
1100
+ return operation as BinaryOperator
1101
+ } else {
1102
+ return '==='
1103
+ }
1104
+ }
1105
+
1106
+ export const convertToUnaryOperator = (operation: string): UnaryOperation => {
1107
+ const allowedOperations = ['!']
1108
+ if (allowedOperations.includes(operation)) {
1109
+ return operation as UnaryOperation
1110
+ } else {
1111
+ return '!'
1112
+ }
1113
+ }
@@ -0,0 +1,25 @@
1
+ export type BinaryOperator =
2
+ | '==='
3
+ | '+'
4
+ | '-'
5
+ | '/'
6
+ | '%'
7
+ | '*'
8
+ | '**'
9
+ | '&'
10
+ | '|'
11
+ | '>>'
12
+ | '>>>'
13
+ | '<<'
14
+ | '^'
15
+ | '=='
16
+ | '!='
17
+ | '!=='
18
+ | 'in'
19
+ | 'instanceof'
20
+ | '>'
21
+ | '<'
22
+ | '>='
23
+ | '<='
24
+
25
+ export type UnaryOperation = '+' | '-' | 'void' | 'throw' | 'delete' | '!' | '~' | 'typeof'