@figma/code-connect 0.1.2 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (106) hide show
  1. package/README.md +123 -25
  2. package/dist/cli.js +7 -0
  3. package/dist/cli.js.map +1 -1
  4. package/dist/commands/connect.d.ts +15 -0
  5. package/dist/commands/connect.d.ts.map +1 -1
  6. package/dist/commands/connect.js +137 -76
  7. package/dist/commands/connect.js.map +1 -1
  8. package/dist/common/__test__/project.test.d.ts +2 -0
  9. package/dist/common/__test__/project.test.d.ts.map +1 -0
  10. package/dist/common/__test__/project.test.js +14 -0
  11. package/dist/common/__test__/project.test.js.map +1 -0
  12. package/dist/common/api.d.ts +56 -2
  13. package/dist/common/api.d.ts.map +1 -1
  14. package/dist/common/external.d.ts +6 -3
  15. package/dist/common/external.d.ts.map +1 -1
  16. package/dist/common/external.js +13 -1
  17. package/dist/common/external.js.map +1 -1
  18. package/dist/common/figma_connect.d.ts +11 -9
  19. package/dist/common/figma_connect.d.ts.map +1 -1
  20. package/dist/common/intrinsics.d.ts +38 -6
  21. package/dist/common/intrinsics.d.ts.map +1 -1
  22. package/dist/common/intrinsics.js +160 -26
  23. package/dist/common/intrinsics.js.map +1 -1
  24. package/dist/common/logging.d.ts +9 -0
  25. package/dist/common/logging.d.ts.map +1 -1
  26. package/dist/common/logging.js +21 -1
  27. package/dist/common/logging.js.map +1 -1
  28. package/dist/common/updates.d.ts +4 -0
  29. package/dist/common/updates.d.ts.map +1 -0
  30. package/dist/common/updates.js +87 -0
  31. package/dist/common/updates.js.map +1 -0
  32. package/dist/connect/create.d.ts +5 -1
  33. package/dist/connect/create.d.ts.map +1 -1
  34. package/dist/connect/create.js +55 -69
  35. package/dist/connect/create.js.map +1 -1
  36. package/dist/connect/delete_docs.d.ts.map +1 -1
  37. package/dist/connect/delete_docs.js +1 -4
  38. package/dist/connect/delete_docs.js.map +1 -1
  39. package/dist/connect/figma_rest_api.d.ts +5 -0
  40. package/dist/connect/figma_rest_api.d.ts.map +1 -1
  41. package/dist/connect/figma_rest_api.js +10 -1
  42. package/dist/connect/figma_rest_api.js.map +1 -1
  43. package/dist/connect/helpers.d.ts +1 -1
  44. package/dist/connect/helpers.d.ts.map +1 -1
  45. package/dist/connect/helpers.js +6 -5
  46. package/dist/connect/helpers.js.map +1 -1
  47. package/dist/connect/parser_executable_types.d.ts +298 -0
  48. package/dist/connect/parser_executable_types.d.ts.map +1 -0
  49. package/dist/connect/parser_executable_types.js +108 -0
  50. package/dist/connect/parser_executable_types.js.map +1 -0
  51. package/dist/connect/parser_executables.d.ts +8 -0
  52. package/dist/connect/parser_executables.d.ts.map +1 -0
  53. package/dist/connect/parser_executables.js +132 -0
  54. package/dist/connect/parser_executables.js.map +1 -0
  55. package/dist/connect/project.d.ts +137 -0
  56. package/dist/connect/project.d.ts.map +1 -0
  57. package/dist/connect/project.js +411 -0
  58. package/dist/connect/project.js.map +1 -0
  59. package/dist/connect/upload.d.ts.map +1 -1
  60. package/dist/connect/upload.js +1 -4
  61. package/dist/connect/upload.js.map +1 -1
  62. package/dist/connect/validation.d.ts +6 -1
  63. package/dist/connect/validation.d.ts.map +1 -1
  64. package/dist/connect/validation.js +12 -12
  65. package/dist/connect/validation.js.map +1 -1
  66. package/dist/connect/wizard/helpers.d.ts +7 -0
  67. package/dist/connect/wizard/helpers.d.ts.map +1 -0
  68. package/dist/connect/wizard/helpers.js +55 -0
  69. package/dist/connect/wizard/helpers.js.map +1 -0
  70. package/dist/connect/wizard/run_wizard.d.ts +3 -0
  71. package/dist/connect/wizard/run_wizard.d.ts.map +1 -0
  72. package/dist/connect/wizard/run_wizard.js +479 -0
  73. package/dist/connect/wizard/run_wizard.js.map +1 -0
  74. package/dist/parser_scripts/get_file_if_exists.d.ts +2 -0
  75. package/dist/parser_scripts/get_file_if_exists.d.ts.map +1 -0
  76. package/dist/parser_scripts/get_file_if_exists.js +10 -0
  77. package/dist/parser_scripts/get_file_if_exists.js.map +1 -0
  78. package/dist/parser_scripts/get_gradlew_path.d.ts +3 -0
  79. package/dist/parser_scripts/get_gradlew_path.d.ts.map +1 -0
  80. package/dist/parser_scripts/get_gradlew_path.js +24 -0
  81. package/dist/parser_scripts/get_gradlew_path.js.map +1 -0
  82. package/dist/parser_scripts/get_swift_parser_dir.d.ts +2 -0
  83. package/dist/parser_scripts/get_swift_parser_dir.d.ts.map +1 -0
  84. package/dist/parser_scripts/get_swift_parser_dir.js +93 -0
  85. package/dist/parser_scripts/get_swift_parser_dir.js.map +1 -0
  86. package/dist/react/create.d.ts +4 -0
  87. package/dist/react/create.d.ts.map +1 -0
  88. package/dist/react/create.js +132 -0
  89. package/dist/react/create.js.map +1 -0
  90. package/dist/react/parser.d.ts +6 -15
  91. package/dist/react/parser.d.ts.map +1 -1
  92. package/dist/react/parser.js +59 -63
  93. package/dist/react/parser.js.map +1 -1
  94. package/dist/react/parser_template_helpers.d.ts +21 -0
  95. package/dist/react/parser_template_helpers.d.ts.map +1 -1
  96. package/dist/react/parser_template_helpers.js +107 -43
  97. package/dist/react/parser_template_helpers.js.map +1 -1
  98. package/dist/storybook/convert.d.ts +2 -2
  99. package/dist/storybook/convert.d.ts.map +1 -1
  100. package/dist/storybook/convert.js +6 -4
  101. package/dist/storybook/convert.js.map +1 -1
  102. package/package.json +36 -11
  103. package/dist/common/project.d.ts +0 -94
  104. package/dist/common/project.d.ts.map +0 -1
  105. package/dist/common/project.js +0 -198
  106. package/dist/common/project.js.map +0 -1
@@ -23,12 +23,13 @@ var __importStar = (this && this.__importStar) || function (mod) {
23
23
  return result;
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.intrinsicToString = exports.valueMappingToString = exports.parseIntrinsic = exports.IntrinsicKind = exports.FIGMA_CONNECT_CALL = exports.API_PREFIX = void 0;
26
+ exports.parsePropsObject = exports.intrinsicToString = exports.valueMappingToString = exports.parseIntrinsic = exports.IntrinsicKind = exports.FIGMA_CONNECT_CALL = exports.API_PREFIX = void 0;
27
27
  const ts = __importStar(require("typescript"));
28
28
  const parser_1 = require("../react/parser");
29
29
  const compiler_1 = require("../typescript/compiler");
30
30
  const compiler_2 = require("../typescript/compiler");
31
31
  const compiler_3 = require("../typescript/compiler");
32
+ const parser_template_helpers_1 = require("../react/parser_template_helpers");
32
33
  exports.API_PREFIX = 'figma';
33
34
  exports.FIGMA_CONNECT_CALL = `${exports.API_PREFIX}.connect`;
34
35
  var IntrinsicKind;
@@ -38,6 +39,9 @@ var IntrinsicKind;
38
39
  IntrinsicKind["Boolean"] = "boolean";
39
40
  IntrinsicKind["Instance"] = "instance";
40
41
  IntrinsicKind["Children"] = "children";
42
+ IntrinsicKind["NestedProps"] = "nested-props";
43
+ IntrinsicKind["ClassName"] = "className";
44
+ IntrinsicKind["TextContent"] = "text-content";
41
45
  })(IntrinsicKind || (exports.IntrinsicKind = IntrinsicKind = {}));
42
46
  const Intrinsics = {};
43
47
  /**
@@ -68,11 +72,7 @@ makeIntrinsic('boolean', (name) => {
68
72
  let valueMapping;
69
73
  if (valueMappingArg) {
70
74
  (0, compiler_3.assertIsObjectLiteralExpression)(valueMappingArg, ctx.sourceFile, `${name} second argument should be an object literal, that sets values for 'true' and 'false'`);
71
- valueMapping = (0, compiler_2.convertObjectLiteralToJs)(valueMappingArg, ctx.sourceFile, ctx.checker, (valueNode) => {
72
- if (ts.isCallExpression(valueNode)) {
73
- return parseIntrinsic(valueNode, ctx);
74
- }
75
- });
75
+ valueMapping = parsePropsObject(valueMappingArg, ctx);
76
76
  }
77
77
  return {
78
78
  kind: IntrinsicKind.Boolean,
@@ -87,7 +87,7 @@ makeIntrinsic('boolean', (name) => {
87
87
  makeIntrinsic('enum', (name) => {
88
88
  return {
89
89
  parse: (exp, ctx) => {
90
- const { sourceFile, checker } = ctx;
90
+ const { sourceFile } = ctx;
91
91
  const figmaPropNameIdentifier = exp.arguments?.[0];
92
92
  (0, compiler_1.assertIsStringLiteral)(figmaPropNameIdentifier, sourceFile, `${name} takes at least one argument, which is the Figma property name`);
93
93
  const valueMapping = exp.arguments?.[1];
@@ -96,11 +96,7 @@ makeIntrinsic('enum', (name) => {
96
96
  kind: IntrinsicKind.Enum,
97
97
  args: {
98
98
  figmaPropName: (0, compiler_1.stripQuotes)(figmaPropNameIdentifier),
99
- valueMapping: (0, compiler_2.convertObjectLiteralToJs)(valueMapping, sourceFile, checker, (valueNode) => {
100
- if (ts.isCallExpression(valueNode)) {
101
- return parseIntrinsic(valueNode, ctx);
102
- }
103
- }),
99
+ valueMapping: parsePropsObject(valueMapping, ctx),
104
100
  },
105
101
  };
106
102
  },
@@ -148,6 +144,13 @@ makeIntrinsic('children', (name) => {
148
144
  else if (ts.isArrayLiteralExpression(layerName) && layerName.elements.length > 0) {
149
145
  layerName.elements.forEach((el) => {
150
146
  (0, compiler_1.assertIsStringLiteral)(el, sourceFile);
147
+ const name = (0, compiler_1.stripQuotes)(el);
148
+ if (name.includes('*')) {
149
+ throw new parser_1.ParserError(`Wildcards can not be used with an array of strings. Use a single string literal instead.`, {
150
+ node: layerName,
151
+ sourceFile,
152
+ });
153
+ }
151
154
  layers.push((0, compiler_1.stripQuotes)(el));
152
155
  });
153
156
  }
@@ -166,6 +169,63 @@ makeIntrinsic('children', (name) => {
166
169
  },
167
170
  };
168
171
  });
172
+ makeIntrinsic('nestedProps', (name) => {
173
+ return {
174
+ parse: (exp, ctx) => {
175
+ const { sourceFile } = ctx;
176
+ const layerName = exp.arguments?.[0];
177
+ const mapping = exp.arguments?.[1];
178
+ (0, compiler_1.assertIsStringLiteral)(layerName, sourceFile, `Invalid argument to ${name}, \`layerName\` should be a string literal`);
179
+ (0, compiler_3.assertIsObjectLiteralExpression)(mapping, sourceFile, `Invalid argument to ${name}, \`props\` should be an object literal`);
180
+ return {
181
+ kind: IntrinsicKind.NestedProps,
182
+ args: {
183
+ layer: (0, compiler_1.stripQuotes)(layerName),
184
+ props: parsePropsObject(mapping, ctx),
185
+ },
186
+ };
187
+ },
188
+ };
189
+ });
190
+ makeIntrinsic('className', (name) => {
191
+ return {
192
+ parse: (exp, ctx) => {
193
+ const { sourceFile } = ctx;
194
+ const classNameArg = exp.arguments?.[0];
195
+ const className = [];
196
+ (0, compiler_1.assertIsArrayLiteralExpression)(classNameArg, sourceFile, `${name} takes an array of strings`);
197
+ classNameArg.elements.forEach((el) => {
198
+ if (ts.isStringLiteral(el)) {
199
+ className.push((0, compiler_1.stripQuotes)(el));
200
+ }
201
+ else if (ts.isCallExpression(el)) {
202
+ className.push(parseIntrinsic(el, ctx));
203
+ }
204
+ });
205
+ return {
206
+ kind: IntrinsicKind.ClassName,
207
+ args: {
208
+ className,
209
+ },
210
+ };
211
+ },
212
+ };
213
+ });
214
+ makeIntrinsic('textContent', (name) => {
215
+ return {
216
+ parse: (exp, ctx) => {
217
+ const { sourceFile } = ctx;
218
+ const layerNameArg = exp.arguments?.[0];
219
+ (0, compiler_1.assertIsStringLiteral)(layerNameArg, sourceFile, `${name} takes a single argument which is the Figma layer name`);
220
+ return {
221
+ kind: IntrinsicKind.TextContent,
222
+ args: {
223
+ layer: (0, compiler_1.stripQuotes)(layerNameArg),
224
+ },
225
+ };
226
+ },
227
+ };
228
+ });
169
229
  /**
170
230
  * Parses a call expression to an intrinsic
171
231
  *
@@ -185,30 +245,53 @@ function parseIntrinsic(exp, parserContext) {
185
245
  });
186
246
  }
187
247
  exports.parseIntrinsic = parseIntrinsic;
188
- function valueMappingToString(valueMapping) {
248
+ /**
249
+ * Replace newlines in enum values with \\n so that we don't output
250
+ * broken JS with newlines inside the string
251
+ */
252
+ function replaceNewlines(str) {
253
+ return str.toString().replaceAll('\n', '\\n').replaceAll("'", "\\'");
254
+ }
255
+ function valueMappingToString(valueMapping, childLayer) {
189
256
  // For enums (and booleans with a valueMapping provided), convert the
190
257
  // value mapping to an object.
191
258
  return ('{\n' +
192
259
  Object.entries(valueMapping)
193
260
  .map(([key, value]) => {
194
- if (typeof value === 'object' && 'kind' in value) {
195
- // Mappings can be nested, e.g. an enum value can be figma.instance(...)
196
- return `"${key}": ${intrinsicToString(value)}`;
197
- }
198
- else if (typeof value === 'boolean' ||
261
+ if (typeof value === 'boolean' ||
199
262
  typeof value === 'number' ||
200
263
  typeof value === 'undefined') {
201
264
  return `"${key}": ${value}`;
202
265
  }
203
- else {
204
- return `"${key}": '${value}'`;
266
+ if (typeof value === 'string') {
267
+ return `"${key}": '${replaceNewlines(value)}'`;
268
+ }
269
+ if ('kind' in value) {
270
+ // Mappings can be nested, e.g. an enum value can be figma.instance(...)
271
+ return `"${key}": ${intrinsicToString(value, childLayer)}`;
272
+ }
273
+ const v = replaceNewlines(value.value);
274
+ switch (value.type) {
275
+ case 'function':
276
+ return `"${key}": _fcc_function('${v}')`;
277
+ case 'identifier':
278
+ return `"${key}": _fcc_identifier('${v}')`;
279
+ case 'object':
280
+ return `"${key}": _fcc_object('${v}')`;
281
+ case 'template-string':
282
+ return `"${key}": _fcc_templateString('${v}')`;
283
+ case 'jsx-element':
284
+ return `"${key}": _fcc_jsxElement('${v}')`;
285
+ default:
286
+ throw new parser_1.InternalError(`Unknown helper type: ${value}`);
205
287
  }
206
288
  })
207
289
  .join(',\n') +
208
290
  '}');
209
291
  }
210
292
  exports.valueMappingToString = valueMappingToString;
211
- function intrinsicToString({ kind, args }) {
293
+ function intrinsicToString({ kind, args }, childLayer) {
294
+ const selector = childLayer ?? `figma.currentLayer`;
212
295
  switch (kind) {
213
296
  case IntrinsicKind.String:
214
297
  case IntrinsicKind.Instance: {
@@ -216,28 +299,79 @@ function intrinsicToString({ kind, args }) {
216
299
  // `const propName = figma.properties.string('propName')`, or
217
300
  // `const propName = figma.properties.boolean('propName')`, or
218
301
  // `const propName = figma.properties.instance('propName')`
219
- return `figma.properties.${kind}('${args.figmaPropName}')`;
302
+ return `${selector}.__properties__.${kind}('${args.figmaPropName}')`;
220
303
  }
221
304
  case IntrinsicKind.Boolean: {
222
305
  if (args.valueMapping) {
223
306
  const mappingString = valueMappingToString(args.valueMapping);
224
307
  // Outputs: `const propName = figma.properties.boolean('propName', { ... mapping object from above ... })`
225
- return `figma.properties.boolean('${args.figmaPropName}', ${mappingString})`;
308
+ return `${selector}.__properties__.boolean('${args.figmaPropName}', ${mappingString})`;
226
309
  }
227
- return `figma.properties.boolean('${args.figmaPropName}')`;
310
+ return `${selector}.__properties__.boolean('${args.figmaPropName}')`;
228
311
  }
229
312
  case IntrinsicKind.Enum: {
230
313
  const mappingString = valueMappingToString(args.valueMapping);
231
314
  // Outputs: `const propName = figma.properties.enum('propName', { ... mapping object from above ... })`
232
- return `figma.properties.enum('${args.figmaPropName}', ${mappingString})`;
315
+ return `${selector}.__properties__.enum('${args.figmaPropName}', ${mappingString})`;
233
316
  }
234
317
  case IntrinsicKind.Children: {
235
318
  // Outputs: `const propName = figma.properties.children(["Layer 1", "Layer 2"])`
236
- return `figma.properties.children([${args.layers.map((layerName) => `"${layerName}"`).join(',')}])`;
319
+ return `${selector}.__properties__.children([${args.layers.map((layerName) => `"${layerName}"`).join(',')}])`;
320
+ }
321
+ case IntrinsicKind.ClassName: {
322
+ // Outputs: `const propName = ['btn-base', figma.currentLayer.__properties__.enum('Size, { Large: 'btn-large' })].join(" ")`
323
+ return `[${args.className.map((className) => (typeof className === 'string' ? `"${className}"` : `${intrinsicToString(className, childLayer)}`)).join(', ')}].filter(v => !!v).join(' ')`;
324
+ }
325
+ case IntrinsicKind.TextContent: {
326
+ return `${selector}.__findChildWithCriteria__({ name: '${args.layer}', type: "TEXT" }).textContent`;
327
+ }
328
+ case IntrinsicKind.NestedProps: {
329
+ throw new parser_1.ParserError(`Deeply nested props should be expressed on the root level by passing the name of the inner layer`);
237
330
  }
238
331
  default:
239
332
  throw new parser_1.InternalError(`Unknown intrinsic: ${kind}`);
240
333
  }
241
334
  }
242
335
  exports.intrinsicToString = intrinsicToString;
336
+ function expressionToFccEnumValue(valueNode, sourceFile) {
337
+ if (ts.isParenthesizedExpression(valueNode)) {
338
+ return expressionToFccEnumValue(valueNode.expression, sourceFile);
339
+ }
340
+ if (ts.isJsxElement(valueNode) || ts.isJsxSelfClosingElement(valueNode)) {
341
+ return (0, parser_template_helpers_1._fcc_jsxElement)(valueNode.getText());
342
+ }
343
+ if (ts.isArrowFunction(valueNode) || ts.isFunctionExpression(valueNode)) {
344
+ return (0, parser_template_helpers_1._fcc_function)(valueNode.getText());
345
+ }
346
+ if (ts.isObjectLiteralExpression(valueNode)) {
347
+ return (0, parser_template_helpers_1._fcc_object)(valueNode.getText());
348
+ }
349
+ if (ts.isTemplateLiteral(valueNode)) {
350
+ const str = valueNode.getText().replaceAll('`', '');
351
+ return (0, parser_template_helpers_1._fcc_templateString)(str);
352
+ }
353
+ if (ts.isPropertyAccessExpression(valueNode)) {
354
+ return (0, parser_template_helpers_1._fcc_identifier)(valueNode.getText());
355
+ }
356
+ // Fall back to the default conversion in `convertObjectLiteralToJs`
357
+ return undefined;
358
+ }
359
+ /**
360
+ * Parses the `props` field in a `figma.connect()` call, returning a mapping of
361
+ * prop names to their respective intrinsic types
362
+ *
363
+ * @param objectLiteral An object literal expression
364
+ * @param parserContext Parser context
365
+ * @returns
366
+ */
367
+ function parsePropsObject(objectLiteral, parserContext) {
368
+ const { sourceFile, checker } = parserContext;
369
+ return (0, compiler_2.convertObjectLiteralToJs)(objectLiteral, sourceFile, checker, (valueNode) => {
370
+ if (ts.isCallExpression(valueNode)) {
371
+ return parseIntrinsic(valueNode, parserContext);
372
+ }
373
+ return expressionToFccEnumValue(valueNode, sourceFile);
374
+ });
375
+ }
376
+ exports.parsePropsObject = parsePropsObject;
243
377
  //# sourceMappingURL=intrinsics.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"intrinsics.js","sourceRoot":"","sources":["../../src/common/intrinsics.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"intrinsics.js","sourceRoot":"","sources":["../../src/common/intrinsics.ts"],"names":[],"mappings":"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"}
@@ -20,6 +20,15 @@ export declare const logger: {
20
20
  error: (...msgs: unknown[]) => void;
21
21
  warn: (...msgs: unknown[]) => void;
22
22
  info: (...msgs: unknown[]) => void;
23
+ infoForce: (...msgs: unknown[]) => void;
23
24
  debug: (...msgs: unknown[]) => void;
24
25
  };
26
+ /**
27
+ * Exit the process with an error message. The `never` type tells TypeScript
28
+ * that code after this will not be executed.
29
+ *
30
+ * @param msg Error message
31
+ * @param errorCode Optional command exit code, defaults to 1
32
+ */
33
+ export declare function exitWithError(msg: string, errorCode?: number): never;
25
34
  //# sourceMappingURL=logging.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"logging.d.ts","sourceRoot":"","sources":["../../src/common/logging.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,eAAO,MAAM,KAAK,aAAY,CAAA;AAC9B,eAAO,MAAM,OAAO,aAAc,CAAA;AAClC,eAAO,MAAM,IAAI,aAAc,CAAA;AAC/B,eAAO,MAAM,IAAI,aAAe,CAAA;AAChC,eAAO,MAAM,KAAK,aAAa,CAAA;AAC/B,eAAO,MAAM,OAAO,aAAa,CAAA;AACjC,eAAO,MAAM,SAAS,aAAa,CAAA;AACnC,eAAO,MAAM,KAAK,aAAc,CAAA;AAChC,eAAO,MAAM,SAAS,aAAkB,CAAA;AAExC,oBAAY,QAAQ;IAClB,OAAO,IAAI;IACX,KAAK,IAAI;IACT,IAAI,IAAI;IACR,IAAI,IAAI;IACR,KAAK,IAAI;CACV;AAID,eAAO,MAAM,MAAM;yBACI,QAAQ;qBAGZ,OAAO,EAAE;oBAGV,OAAO,EAAE;oBAGT,OAAO,EAAE;qBAGR,OAAO,EAAE;CAG3B,CAAA"}
1
+ {"version":3,"file":"logging.d.ts","sourceRoot":"","sources":["../../src/common/logging.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAQzB,eAAO,MAAM,KAAK,aAAY,CAAA;AAC9B,eAAO,MAAM,OAAO,aAAc,CAAA;AAClC,eAAO,MAAM,IAAI,aAAc,CAAA;AAC/B,eAAO,MAAM,IAAI,aAAe,CAAA;AAChC,eAAO,MAAM,KAAK,aAAa,CAAA;AAC/B,eAAO,MAAM,OAAO,aAAa,CAAA;AACjC,eAAO,MAAM,SAAS,aAAa,CAAA;AACnC,eAAO,MAAM,KAAK,aAAc,CAAA;AAChC,eAAO,MAAM,SAAS,aAAkB,CAAA;AAExC,oBAAY,QAAQ;IAClB,OAAO,IAAI;IACX,KAAK,IAAI;IACT,IAAI,IAAI;IACR,IAAI,IAAI;IACR,KAAK,IAAI;CACV;AAID,eAAO,MAAM,MAAM;yBACI,QAAQ;qBAGZ,OAAO,EAAE;oBAGV,OAAO,EAAE;oBAGT,OAAO,EAAE;yBAGJ,OAAO,EAAE;qBAGb,OAAO,EAAE;CAG3B,CAAA;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,SAAI,GAAG,KAAK,CAG/D"}
@@ -3,8 +3,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.logger = exports.LogLevel = exports.underline = exports.reset = exports.highlight = exports.verbose = exports.debug = exports.warn = exports.info = exports.success = exports.error = void 0;
6
+ exports.exitWithError = exports.logger = exports.LogLevel = exports.underline = exports.reset = exports.highlight = exports.verbose = exports.debug = exports.warn = exports.info = exports.success = exports.error = void 0;
7
7
  const chalk_1 = __importDefault(require("chalk"));
8
+ const console_1 = require("console");
9
+ const updates_1 = require("./updates");
10
+ // Redirect all console output to stderr, so that JSON output to stdout in parse
11
+ // mode can be piped to other commands
12
+ const console = new console_1.Console(process.stderr);
8
13
  exports.error = chalk_1.default.red;
9
14
  exports.success = chalk_1.default.green;
10
15
  exports.info = chalk_1.default.white;
@@ -39,9 +44,24 @@ exports.logger = {
39
44
  if (logLevel >= LogLevel.Info)
40
45
  console.info((0, exports.info)(...msgs));
41
46
  },
47
+ infoForce: (...msgs) => {
48
+ console.info((0, exports.info)(...msgs));
49
+ },
42
50
  debug: (...msgs) => {
43
51
  if (logLevel >= LogLevel.Debug)
44
52
  console.debug((0, exports.debug)(...msgs));
45
53
  },
46
54
  };
55
+ /**
56
+ * Exit the process with an error message. The `never` type tells TypeScript
57
+ * that code after this will not be executed.
58
+ *
59
+ * @param msg Error message
60
+ * @param errorCode Optional command exit code, defaults to 1
61
+ */
62
+ function exitWithError(msg, errorCode = 1) {
63
+ exports.logger.error(msg);
64
+ (0, updates_1.exitWithUpdateCheck)(errorCode);
65
+ }
66
+ exports.exitWithError = exitWithError;
47
67
  //# sourceMappingURL=logging.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"logging.js","sourceRoot":"","sources":["../../src/common/logging.ts"],"names":[],"mappings":";;;;;;AAAA,kDAAyB;AAEZ,QAAA,KAAK,GAAG,eAAK,CAAC,GAAG,CAAA;AACjB,QAAA,OAAO,GAAG,eAAK,CAAC,KAAK,CAAA;AACrB,QAAA,IAAI,GAAG,eAAK,CAAC,KAAK,CAAA;AAClB,QAAA,IAAI,GAAG,eAAK,CAAC,MAAM,CAAA;AACnB,QAAA,KAAK,GAAG,eAAK,CAAC,IAAI,CAAA;AAClB,QAAA,OAAO,GAAG,eAAK,CAAC,IAAI,CAAA;AACpB,QAAA,SAAS,GAAG,eAAK,CAAC,IAAI,CAAA;AACtB,QAAA,KAAK,GAAG,eAAK,CAAC,KAAK,CAAA;AACnB,QAAA,SAAS,GAAG,eAAK,CAAC,SAAS,CAAA;AAExC,IAAY,QAMX;AAND,WAAY,QAAQ;IAClB,6CAAW,CAAA;IACX,yCAAS,CAAA;IACT,uCAAQ,CAAA;IACR,uCAAQ,CAAA;IACR,yCAAS,CAAA;AACX,CAAC,EANW,QAAQ,wBAAR,QAAQ,QAMnB;AAED,IAAI,QAAQ,GAAa,QAAQ,CAAC,IAAI,CAAA;AAEzB,QAAA,MAAM,GAAG;IACpB,WAAW,EAAE,CAAC,KAAe,EAAE,EAAE;QAC/B,QAAQ,GAAG,KAAK,CAAA;IAClB,CAAC;IACD,KAAK,EAAE,CAAC,GAAG,IAAe,EAAE,EAAE;QAC5B,IAAI,QAAQ,IAAI,QAAQ,CAAC,KAAK;YAAE,OAAO,CAAC,KAAK,CAAC,IAAA,aAAK,EAAC,GAAG,IAAI,CAAC,CAAC,CAAA;IAC/D,CAAC;IACD,IAAI,EAAE,CAAC,GAAG,IAAe,EAAE,EAAE;QAC3B,IAAI,QAAQ,IAAI,QAAQ,CAAC,IAAI;YAAE,OAAO,CAAC,IAAI,CAAC,IAAA,YAAI,EAAC,GAAG,IAAI,CAAC,CAAC,CAAA;IAC5D,CAAC;IACD,IAAI,EAAE,CAAC,GAAG,IAAe,EAAE,EAAE;QAC3B,IAAI,QAAQ,IAAI,QAAQ,CAAC,IAAI;YAAE,OAAO,CAAC,IAAI,CAAC,IAAA,YAAI,EAAC,GAAG,IAAI,CAAC,CAAC,CAAA;IAC5D,CAAC;IACD,KAAK,EAAE,CAAC,GAAG,IAAe,EAAE,EAAE;QAC5B,IAAI,QAAQ,IAAI,QAAQ,CAAC,KAAK;YAAE,OAAO,CAAC,KAAK,CAAC,IAAA,aAAK,EAAC,GAAG,IAAI,CAAC,CAAC,CAAA;IAC/D,CAAC;CACF,CAAA"}
1
+ {"version":3,"file":"logging.js","sourceRoot":"","sources":["../../src/common/logging.ts"],"names":[],"mappings":";;;;;;AAAA,kDAAyB;AACzB,qCAAiC;AACjC,uCAA+C;AAE/C,gFAAgF;AAChF,sCAAsC;AACtC,MAAM,OAAO,GAAG,IAAI,iBAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;AAE9B,QAAA,KAAK,GAAG,eAAK,CAAC,GAAG,CAAA;AACjB,QAAA,OAAO,GAAG,eAAK,CAAC,KAAK,CAAA;AACrB,QAAA,IAAI,GAAG,eAAK,CAAC,KAAK,CAAA;AAClB,QAAA,IAAI,GAAG,eAAK,CAAC,MAAM,CAAA;AACnB,QAAA,KAAK,GAAG,eAAK,CAAC,IAAI,CAAA;AAClB,QAAA,OAAO,GAAG,eAAK,CAAC,IAAI,CAAA;AACpB,QAAA,SAAS,GAAG,eAAK,CAAC,IAAI,CAAA;AACtB,QAAA,KAAK,GAAG,eAAK,CAAC,KAAK,CAAA;AACnB,QAAA,SAAS,GAAG,eAAK,CAAC,SAAS,CAAA;AAExC,IAAY,QAMX;AAND,WAAY,QAAQ;IAClB,6CAAW,CAAA;IACX,yCAAS,CAAA;IACT,uCAAQ,CAAA;IACR,uCAAQ,CAAA;IACR,yCAAS,CAAA;AACX,CAAC,EANW,QAAQ,wBAAR,QAAQ,QAMnB;AAED,IAAI,QAAQ,GAAa,QAAQ,CAAC,IAAI,CAAA;AAEzB,QAAA,MAAM,GAAG;IACpB,WAAW,EAAE,CAAC,KAAe,EAAE,EAAE;QAC/B,QAAQ,GAAG,KAAK,CAAA;IAClB,CAAC;IACD,KAAK,EAAE,CAAC,GAAG,IAAe,EAAE,EAAE;QAC5B,IAAI,QAAQ,IAAI,QAAQ,CAAC,KAAK;YAAE,OAAO,CAAC,KAAK,CAAC,IAAA,aAAK,EAAC,GAAG,IAAI,CAAC,CAAC,CAAA;IAC/D,CAAC;IACD,IAAI,EAAE,CAAC,GAAG,IAAe,EAAE,EAAE;QAC3B,IAAI,QAAQ,IAAI,QAAQ,CAAC,IAAI;YAAE,OAAO,CAAC,IAAI,CAAC,IAAA,YAAI,EAAC,GAAG,IAAI,CAAC,CAAC,CAAA;IAC5D,CAAC;IACD,IAAI,EAAE,CAAC,GAAG,IAAe,EAAE,EAAE;QAC3B,IAAI,QAAQ,IAAI,QAAQ,CAAC,IAAI;YAAE,OAAO,CAAC,IAAI,CAAC,IAAA,YAAI,EAAC,GAAG,IAAI,CAAC,CAAC,CAAA;IAC5D,CAAC;IACD,SAAS,EAAE,CAAC,GAAG,IAAe,EAAE,EAAE;QAChC,OAAO,CAAC,IAAI,CAAC,IAAA,YAAI,EAAC,GAAG,IAAI,CAAC,CAAC,CAAA;IAC7B,CAAC;IACD,KAAK,EAAE,CAAC,GAAG,IAAe,EAAE,EAAE;QAC5B,IAAI,QAAQ,IAAI,QAAQ,CAAC,KAAK;YAAE,OAAO,CAAC,KAAK,CAAC,IAAA,aAAK,EAAC,GAAG,IAAI,CAAC,CAAC,CAAA;IAC/D,CAAC;CACF,CAAA;AAED;;;;;;GAMG;AACH,SAAgB,aAAa,CAAC,GAAW,EAAE,SAAS,GAAG,CAAC;IACtD,cAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACjB,IAAA,6BAAmB,EAAC,SAAS,CAAC,CAAA;AAChC,CAAC;AAHD,sCAGC"}
@@ -0,0 +1,4 @@
1
+ export declare function withUpdateCheck(fn: (...args: any[]) => void | Promise<void>): (...args: any[]) => void;
2
+ export declare function exitWithUpdateCheck(errorCode?: number): never;
3
+ export declare function updateCli(): void;
4
+ //# sourceMappingURL=updates.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updates.d.ts","sourceRoot":"","sources":["../../src/common/updates.ts"],"names":[],"mappings":"AAWA,wBAAgB,eAAe,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,aACzD,GAAG,EAAE,UAUvB;AAyCD,wBAAgB,mBAAmB,CAAC,SAAS,SAAI,GAAG,KAAK,CAGxD;AAkBD,wBAAgB,SAAS,SAExB"}
@@ -0,0 +1,87 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.updateCli = exports.exitWithUpdateCheck = exports.withUpdateCheck = void 0;
7
+ const chalk_1 = __importDefault(require("chalk"));
8
+ const logging_1 = require("./logging");
9
+ const child_process_1 = require("child_process");
10
+ const axios_1 = __importDefault(require("axios"));
11
+ const compare_versions_1 = require("compare-versions");
12
+ let updatedVersionAvailable = undefined;
13
+ let message = undefined;
14
+ // Wrap action handlers to check for updates or a message, and output a message
15
+ // after the action if any are available
16
+ function withUpdateCheck(fn) {
17
+ return (...args) => {
18
+ startUpdateCheck();
19
+ const result = fn(...args);
20
+ if (result instanceof Promise) {
21
+ result.finally(waitAndCheckForUpdates);
22
+ }
23
+ else {
24
+ waitAndCheckForUpdates();
25
+ }
26
+ };
27
+ }
28
+ exports.withUpdateCheck = withUpdateCheck;
29
+ // Start checking for updates in the background. We don't wait for this before
30
+ // running the action, as we will show the result at the end
31
+ function startUpdateCheck() {
32
+ axios_1.default
33
+ .get('https://api.github.com/repos/figma/code-connect/releases/latest')
34
+ .then((response) => {
35
+ const latestVersion = response.data.tag_name.replace(/^v/, '');
36
+ const currentVersion = require('../../package.json').version;
37
+ if ((0, compare_versions_1.compareVersions)(latestVersion, currentVersion) === 1) {
38
+ updatedVersionAvailable = latestVersion;
39
+ }
40
+ else {
41
+ updatedVersionAvailable = false;
42
+ }
43
+ })
44
+ .catch(() => {
45
+ // Silently fail if we can't check for updates
46
+ updatedVersionAvailable = false;
47
+ });
48
+ }
49
+ // Wait for up to 1 second for the result of update checking to be available,
50
+ // and output a message if there is an update or a message. If there is no
51
+ // result after the timeout, the app will exit.
52
+ async function waitAndCheckForUpdates() {
53
+ for (let i = 0; i < 10; i++) {
54
+ if (updatedVersionAvailable !== undefined) {
55
+ break;
56
+ }
57
+ await new Promise((resolve) => setTimeout(resolve, 100));
58
+ }
59
+ maybeShowUpdateMessage();
60
+ }
61
+ // Exit the process, first checking if there is an update or message available.
62
+ // Unlike waitAndCheckForUpdates, this will not wait for the update check to
63
+ // complete, so if the request has not completed yet, nothing will be shown.
64
+ // This is to avoid confusion about when the process _actually_ exits.
65
+ function exitWithUpdateCheck(errorCode = 1) {
66
+ maybeShowUpdateMessage();
67
+ process.exit(errorCode);
68
+ }
69
+ exports.exitWithUpdateCheck = exitWithUpdateCheck;
70
+ function getUpdateCommand() {
71
+ return 'npm update -g @figma/code-connect';
72
+ }
73
+ function maybeShowUpdateMessage() {
74
+ if (updatedVersionAvailable) {
75
+ logging_1.logger.warn(`\nA new version of the Figma CLI is available. v${require('../../package.json').version} is currently installed, and the latest version available is v${updatedVersionAvailable}.
76
+
77
+ To update, run ${chalk_1.default.whiteBright('figma update')}, or you can manually update by running ${chalk_1.default.white(getUpdateCommand())}.`);
78
+ }
79
+ if (message) {
80
+ logging_1.logger.warn(`\n${message}`);
81
+ }
82
+ }
83
+ function updateCli() {
84
+ (0, child_process_1.execSync)(getUpdateCommand(), { stdio: 'inherit' });
85
+ }
86
+ exports.updateCli = updateCli;
87
+ //# sourceMappingURL=updates.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updates.js","sourceRoot":"","sources":["../../src/common/updates.ts"],"names":[],"mappings":";;;;;;AAAA,kDAAyB;AACzB,uCAAkC;AAClC,iDAAmD;AACnD,kDAAyB;AACzB,uDAAkD;AAElD,IAAI,uBAAuB,GAA+B,SAAS,CAAA;AACnE,IAAI,OAAO,GAAuB,SAAS,CAAA;AAE3C,+EAA+E;AAC/E,wCAAwC;AACxC,SAAgB,eAAe,CAAC,EAA4C;IAC1E,OAAO,CAAC,GAAG,IAAW,EAAE,EAAE;QACxB,gBAAgB,EAAE,CAAA;QAElB,MAAM,MAAM,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,CAAA;QAC1B,IAAI,MAAM,YAAY,OAAO,EAAE,CAAC;YAC9B,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAA;QACxC,CAAC;aAAM,CAAC;YACN,sBAAsB,EAAE,CAAA;QAC1B,CAAC;IACH,CAAC,CAAA;AACH,CAAC;AAXD,0CAWC;AAED,8EAA8E;AAC9E,4DAA4D;AAC5D,SAAS,gBAAgB;IACvB,eAAK;SACF,GAAG,CAAC,iEAAiE,CAAC;SACtE,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;QACjB,MAAM,aAAa,GAAG,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;QAC9D,MAAM,cAAc,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC,OAAO,CAAA;QAE5D,IAAI,IAAA,kCAAe,EAAC,aAAa,EAAE,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;YACzD,uBAAuB,GAAG,aAAa,CAAA;QACzC,CAAC;aAAM,CAAC;YACN,uBAAuB,GAAG,KAAK,CAAA;QACjC,CAAC;IACH,CAAC,CAAC;SACD,KAAK,CAAC,GAAG,EAAE;QACV,8CAA8C;QAC9C,uBAAuB,GAAG,KAAK,CAAA;IACjC,CAAC,CAAC,CAAA;AACN,CAAC;AAED,6EAA6E;AAC7E,0EAA0E;AAC1E,+CAA+C;AAC/C,KAAK,UAAU,sBAAsB;IACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;QAC5B,IAAI,uBAAuB,KAAK,SAAS,EAAE,CAAC;YAC1C,MAAK;QACP,CAAC;QACD,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAA;IAC1D,CAAC;IAED,sBAAsB,EAAE,CAAA;AAC1B,CAAC;AAED,+EAA+E;AAC/E,4EAA4E;AAC5E,4EAA4E;AAC5E,sEAAsE;AACtE,SAAgB,mBAAmB,CAAC,SAAS,GAAG,CAAC;IAC/C,sBAAsB,EAAE,CAAA;IACxB,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;AACzB,CAAC;AAHD,kDAGC;AAED,SAAS,gBAAgB;IACvB,OAAO,mCAAmC,CAAA;AAC5C,CAAC;AAED,SAAS,sBAAsB;IAC7B,IAAI,uBAAuB,EAAE,CAAC;QAC5B,gBAAM,CAAC,IAAI,CAAC,mDAAmD,OAAO,CAAC,oBAAoB,CAAC,CAAC,OAAO,iEAAiE,uBAAuB;;iBAE/K,eAAK,CAAC,WAAW,CAAC,cAAc,CAAC,2CAA2C,eAAK,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC,GAAG,CAAC,CAAA;IAC9H,CAAC;IAED,IAAI,OAAO,EAAE,CAAC;QACZ,gBAAM,CAAC,IAAI,CAAC,KAAK,OAAO,EAAE,CAAC,CAAA;IAC7B,CAAC;AACH,CAAC;AAED,SAAgB,SAAS;IACvB,IAAA,wBAAQ,EAAC,gBAAgB,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAA;AACpD,CAAC;AAFD,8BAEC"}
@@ -1,8 +1,12 @@
1
+ import { ProjectInfo } from './project';
1
2
  interface GenerateDocsArgs {
2
3
  accessToken: string;
3
4
  figmaNodeUrl: string;
4
5
  outFile: string;
6
+ outDir: string;
7
+ projectInfo: ProjectInfo;
5
8
  }
6
- export declare function createCodeConnectFromUrl({ accessToken, figmaNodeUrl, outFile, }: GenerateDocsArgs): Promise<void>;
9
+ export declare function normalizeComponentName(name: string): string;
10
+ export declare function createCodeConnectFromUrl({ accessToken, figmaNodeUrl, outFile, outDir, projectInfo, }: GenerateDocsArgs): Promise<void>;
7
11
  export {};
8
12
  //# sourceMappingURL=create.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../src/connect/create.ts"],"names":[],"mappings":"AAQA,UAAU,gBAAgB;IACxB,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,MAAM,CAAA;CAChB;AA2ED,wBAAsB,wBAAwB,CAAC,EAC7C,WAAW,EACX,YAAY,EACZ,OAAO,GACR,EAAE,gBAAgB,iBAmElB"}
1
+ {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../src/connect/create.ts"],"names":[],"mappings":"AAOA,OAAO,EAAqC,WAAW,EAAE,MAAM,WAAW,CAAA;AAM1E,UAAU,gBAAgB;IACxB,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,WAAW,EAAE,WAAW,CAAA;CACzB;AA2BD,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,UAQlD;AAED,wBAAsB,wBAAwB,CAAC,EAC7C,WAAW,EACX,YAAY,EACZ,OAAO,EACP,MAAM,EACN,WAAW,GACZ,EAAE,gBAAgB,iBA0FlB"}