@figma/code-connect 1.0.1 → 1.0.3

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 (76) hide show
  1. package/README.md +21 -5
  2. package/dist/cli.js.map +1 -1
  3. package/dist/commands/connect.d.ts +1 -0
  4. package/dist/commands/connect.d.ts.map +1 -1
  5. package/dist/commands/connect.js +14 -2
  6. package/dist/commands/connect.js.map +1 -1
  7. package/dist/common/updates.d.ts +4 -1
  8. package/dist/common/updates.d.ts.map +1 -1
  9. package/dist/common/updates.js +10 -2
  10. package/dist/common/updates.js.map +1 -1
  11. package/dist/connect/parser_executables.d.ts.map +1 -1
  12. package/dist/connect/parser_executables.js +1 -1
  13. package/dist/connect/parser_executables.js.map +1 -1
  14. package/dist/connect/project.d.ts +4 -0
  15. package/dist/connect/project.d.ts.map +1 -1
  16. package/dist/connect/project.js +33 -8
  17. package/dist/connect/project.js.map +1 -1
  18. package/dist/connect/upload.d.ts.map +1 -1
  19. package/dist/connect/upload.js +12 -1
  20. package/dist/connect/upload.js.map +1 -1
  21. package/dist/connect/wizard/__test__/autolinking/autolinking.test.d.ts +2 -0
  22. package/dist/connect/wizard/__test__/autolinking/autolinking.test.d.ts.map +1 -0
  23. package/dist/connect/wizard/__test__/autolinking/autolinking.test.js +49 -0
  24. package/dist/connect/wizard/__test__/autolinking/autolinking.test.js.map +1 -0
  25. package/dist/connect/wizard/__test__/autolinking/test_cases/backstage.d.ts +4 -0
  26. package/dist/connect/wizard/__test__/autolinking/test_cases/backstage.d.ts.map +1 -0
  27. package/dist/connect/wizard/__test__/autolinking/test_cases/backstage.js +306 -0
  28. package/dist/connect/wizard/__test__/autolinking/test_cases/backstage.js.map +1 -0
  29. package/dist/connect/wizard/__test__/autolinking/test_cases/polaris_react.d.ts +4 -0
  30. package/dist/connect/wizard/__test__/autolinking/test_cases/polaris_react.d.ts.map +1 -0
  31. package/dist/connect/wizard/__test__/autolinking/test_cases/polaris_react.js +982 -0
  32. package/dist/connect/wizard/__test__/autolinking/test_cases/polaris_react.js.map +1 -0
  33. package/dist/connect/wizard/__test__/autolinking/test_cases/vitamin_web.d.ts +4 -0
  34. package/dist/connect/wizard/__test__/autolinking/test_cases/vitamin_web.d.ts.map +1 -0
  35. package/dist/connect/wizard/__test__/autolinking/test_cases/vitamin_web.js +463 -0
  36. package/dist/connect/wizard/__test__/autolinking/test_cases/vitamin_web.js.map +1 -0
  37. package/dist/connect/wizard/__test__/autolinking/types.d.ts +12 -0
  38. package/dist/connect/wizard/__test__/autolinking/types.d.ts.map +1 -0
  39. package/dist/connect/wizard/__test__/autolinking/types.js +3 -0
  40. package/dist/connect/wizard/__test__/autolinking/types.js.map +1 -0
  41. package/dist/connect/wizard/__test__/helpers.test.d.ts +2 -0
  42. package/dist/connect/wizard/__test__/helpers.test.d.ts.map +1 -0
  43. package/dist/connect/wizard/__test__/helpers.test.js +27 -0
  44. package/dist/connect/wizard/__test__/helpers.test.js.map +1 -0
  45. package/dist/connect/wizard/__test__/run_wizard.test.d.ts +2 -0
  46. package/dist/connect/wizard/__test__/run_wizard.test.d.ts.map +1 -0
  47. package/dist/connect/wizard/__test__/run_wizard.test.js +160 -0
  48. package/dist/connect/wizard/__test__/run_wizard.test.js.map +1 -0
  49. package/dist/connect/wizard/autolinking.d.ts +12 -0
  50. package/dist/connect/wizard/autolinking.d.ts.map +1 -0
  51. package/dist/connect/wizard/autolinking.js +47 -0
  52. package/dist/connect/wizard/autolinking.js.map +1 -0
  53. package/dist/connect/wizard/helpers.d.ts +16 -2
  54. package/dist/connect/wizard/helpers.d.ts.map +1 -1
  55. package/dist/connect/wizard/helpers.js +23 -9
  56. package/dist/connect/wizard/helpers.js.map +1 -1
  57. package/dist/connect/wizard/run_wizard.d.ts +18 -0
  58. package/dist/connect/wizard/run_wizard.d.ts.map +1 -1
  59. package/dist/connect/wizard/run_wizard.js +132 -78
  60. package/dist/connect/wizard/run_wizard.js.map +1 -1
  61. package/dist/index.d.ts.map +1 -1
  62. package/dist/index.js +20 -1
  63. package/dist/index.js.map +1 -1
  64. package/dist/parser_scripts/get_swift_parser_dir.d.ts.map +1 -1
  65. package/dist/parser_scripts/get_swift_parser_dir.js +5 -11
  66. package/dist/parser_scripts/get_swift_parser_dir.js.map +1 -1
  67. package/dist/react/create.d.ts.map +1 -1
  68. package/dist/react/create.js +3 -2
  69. package/dist/react/create.js.map +1 -1
  70. package/dist/react/parser.d.ts.map +1 -1
  71. package/dist/react/parser.js +11 -12
  72. package/dist/react/parser.js.map +1 -1
  73. package/dist/react/parser_template_helpers.d.ts.map +1 -1
  74. package/dist/react/parser_template_helpers.js +12 -2
  75. package/dist/react/parser_template_helpers.js.map +1 -1
  76. package/package.json +10 -5
@@ -26,7 +26,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
26
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.runWizard = void 0;
29
+ exports.runWizard = exports.getUnconnectedComponentsAndConnectedComponentMappings = exports.convertRemoteFileUrlToRelativePath = exports.getComponentChoicesForPrompt = void 0;
30
30
  const connect_1 = require("../../commands/connect");
31
31
  const prompts_1 = __importDefault(require("prompts"));
32
32
  const fs_1 = __importDefault(require("fs"));
@@ -38,26 +38,48 @@ const project_1 = require("../../connect/project");
38
38
  const validation_1 = require("../validation");
39
39
  const chalk_1 = __importDefault(require("chalk"));
40
40
  const path_1 = __importDefault(require("path"));
41
+ const parser_executable_types_1 = require("../parser_executable_types");
41
42
  const create_1 = require("../create");
42
43
  const create_2 = require("../../react/create");
43
44
  const boxen_1 = __importDefault(require("boxen"));
44
- const fast_fuzzy_1 = require("fast-fuzzy");
45
45
  const parser_1 = require("../../react/parser");
46
46
  const helpers_2 = require("./helpers");
47
+ const strip_ansi_1 = __importDefault(require("strip-ansi"));
47
48
  const parser_executables_1 = require("../parser_executables");
49
+ const ora_1 = __importDefault(require("ora"));
50
+ const zod_validation_error_1 = require("zod-validation-error");
51
+ const autolinking_1 = require("./autolinking");
48
52
  const NONE = '(None)';
49
53
  const DELIMITERS_REGEX = /[\s-_]/g;
54
+ function clearQuestion(prompt, answer) {
55
+ const displayedAnswer = (Array.isArray(prompt.choices) && prompt.choices.find((c) => c.value === answer)?.title) ||
56
+ answer;
57
+ const lengthOfDisplayedQuestion = (0, strip_ansi_1.default)(prompt.message).length + (0, strip_ansi_1.default)(displayedAnswer).length + 5; // 2 chars before, 3 chars between Q + A
58
+ const rowsToRemove = Math.ceil(lengthOfDisplayedQuestion / process.stdout.columns);
59
+ process.stdout.moveCursor(0, -rowsToRemove);
60
+ process.stdout.clearScreenDown();
61
+ }
50
62
  async function fetchTopLevelComponentsFromFile({ accessToken, figmaUrl, }) {
51
63
  // TODO enter create flow if node-id specified
52
64
  const fileKey = (0, helpers_1.parseFileKey)(figmaUrl);
53
65
  const apiUrl = (0, figma_rest_api_1.getApiUrl)(figmaUrl ?? '') + `/code_connect/${fileKey}/cli_data`;
54
66
  try {
55
- logging_1.logger.info('Fetching component information from Figma...');
56
- const response = await axios_1.default.get(apiUrl, {
57
- headers: {
58
- 'X-Figma-Token': accessToken,
59
- 'Content-Type': 'application/json',
60
- },
67
+ const spinner = (0, ora_1.default)({
68
+ text: 'Fetching component information from Figma...',
69
+ color: 'green',
70
+ }).start();
71
+ const response = await (process.env.CODE_CONNECT_MOCK_DOC_RESPONSE
72
+ ? Promise.resolve({
73
+ status: 200,
74
+ data: JSON.parse(fs_1.default.readFileSync(process.env.CODE_CONNECT_MOCK_DOC_RESPONSE, 'utf-8')),
75
+ })
76
+ : axios_1.default.get(apiUrl, {
77
+ headers: {
78
+ 'X-Figma-Token': accessToken,
79
+ 'Content-Type': 'application/json',
80
+ },
81
+ })).finally(() => {
82
+ spinner.stop();
61
83
  });
62
84
  if (response.status === 200) {
63
85
  return (0, helpers_1.findComponentsInDocument)(response.data.document).filter(({ id }) => id in response.data.componentSets || !response.data.components[id].componentSetId);
@@ -140,16 +162,21 @@ function formatComponentTitle(componentName, path, pad) {
140
162
  const linkedLabel = `↔️ ${path ?? '-'}`;
141
163
  return `${nameLabel} ${linkedLabel}`;
142
164
  }
143
- function getComponentChoicesForPrompt(components, linkedNodeIdsToPaths, connectedComponentsMappings) {
165
+ function getComponentChoicesForPrompt(components, linkedNodeIdsToPaths, connectedComponentsMappings, dir) {
144
166
  const longestNameLength = [...components, ...connectedComponentsMappings].reduce((longest, component) => Math.max(longest, 'name' in component ? component.name.length : component.componentName.length), 0);
145
167
  const nameCompare = (a, b) => a.name.localeCompare(b.name);
146
168
  const linkedComponents = components.filter((c) => !!linkedNodeIdsToPaths[c.id]).sort(nameCompare);
147
169
  const unlinkedComponents = components.filter((c) => !linkedNodeIdsToPaths[c.id]).sort(nameCompare);
148
- const formatComponentChoice = (c) => ({
149
- title: formatComponentTitle(c.name, linkedNodeIdsToPaths[c.id], longestNameLength),
150
- value: c.id,
151
- description: `${chalk_1.default.green('Edit link')}`,
152
- });
170
+ const formatComponentChoice = (c) => {
171
+ const componentPath = linkedNodeIdsToPaths[c.id]
172
+ ? path_1.default.relative(dir, linkedNodeIdsToPaths[c.id])
173
+ : null;
174
+ return {
175
+ title: formatComponentTitle(c.name, componentPath, longestNameLength),
176
+ value: c.id,
177
+ description: `${chalk_1.default.green('Edit link')}`,
178
+ };
179
+ };
153
180
  return [
154
181
  ...linkedComponents.map(formatComponentChoice),
155
182
  ...unlinkedComponents.map(formatComponentChoice),
@@ -159,35 +186,39 @@ function getComponentChoicesForPrompt(components, linkedNodeIdsToPaths, connecte
159
186
  })),
160
187
  ];
161
188
  }
162
- function getUnconnectedComponentChoices(componentPaths) {
189
+ exports.getComponentChoicesForPrompt = getComponentChoicesForPrompt;
190
+ function getUnconnectedComponentChoices(componentPaths, dir) {
163
191
  return [
164
192
  {
165
193
  title: NONE,
166
194
  value: NONE,
167
195
  },
168
- ...componentPaths.map((path) => {
196
+ ...componentPaths.map((absPath) => {
169
197
  return {
170
- title: path,
171
- value: path,
198
+ title: path_1.default.relative(dir, absPath),
199
+ value: absPath,
172
200
  };
173
201
  }),
174
202
  ];
175
203
  }
176
- async function runManualLinking({ unconnectedComponents, linkedNodeIdsToPaths, componentPaths, connectedComponentsMappings, }) {
204
+ async function runManualLinking({ unconnectedComponents, linkedNodeIdsToPaths, componentPaths, connectedComponentsMappings, cmd, }) {
205
+ const dir = (0, connect_1.getDir)(cmd);
177
206
  while (true) {
178
207
  // Don't show exit confirmation as we're relying on esc behavior
179
208
  const { nodeId } = await (0, prompts_1.default)({
180
209
  type: 'select',
181
210
  name: 'nodeId',
182
211
  message: `Select a link to edit (Press ${chalk_1.default.green('esc')} when you're ready to continue on)`,
183
- choices: getComponentChoicesForPrompt(unconnectedComponents, linkedNodeIdsToPaths, connectedComponentsMappings),
212
+ choices: getComponentChoicesForPrompt(unconnectedComponents, linkedNodeIdsToPaths, connectedComponentsMappings, dir),
184
213
  warn: 'This component already has a local Code Connect file.',
185
214
  hint: ' ',
215
+ }, {
216
+ onSubmit: clearQuestion,
186
217
  });
187
218
  if (!nodeId) {
188
219
  return;
189
220
  }
190
- const pathChoices = getUnconnectedComponentChoices(componentPaths);
221
+ const pathChoices = getUnconnectedComponentChoices(componentPaths, dir);
191
222
  const { pathToComponent } = await (0, prompts_1.default)({
192
223
  type: 'autocomplete',
193
224
  name: 'pathToComponent',
@@ -199,6 +230,8 @@ async function runManualLinking({ unconnectedComponents, linkedNodeIdsToPaths, c
199
230
  initial: nodeId in linkedNodeIdsToPaths
200
231
  ? pathChoices.findIndex(({ value }) => value === linkedNodeIdsToPaths[nodeId])
201
232
  : 0,
233
+ }, {
234
+ onSubmit: clearQuestion,
202
235
  });
203
236
  if (pathToComponent) {
204
237
  if (pathToComponent === NONE) {
@@ -267,29 +300,6 @@ async function runManualLinkingWithConfirmation(manualLinkingArgs) {
267
300
  }
268
301
  }
269
302
  }
270
- /**
271
- * Autolinks components/paths based on fuzzy matching of name and writes mappings to linkedNodeIdsToPaths.
272
- *
273
- * Matching is done by fast-fuzzy
274
- */
275
- function autoLinkComponents({ unconnectedComponents, linkedNodeIdsToPaths, componentPaths, }) {
276
- const matchableNamesToNodeIdsMap = unconnectedComponents.reduce((acc, curr) => {
277
- const matchableName = curr.name;
278
- acc[matchableName] = curr.id;
279
- return acc;
280
- }, {});
281
- const searchSpace = Object.keys(matchableNamesToNodeIdsMap);
282
- const searcher = new fast_fuzzy_1.Searcher(searchSpace);
283
- componentPaths.forEach((componentPath) => {
284
- const { name } = path_1.default.parse(componentPath);
285
- const matchableName = name;
286
- const results = searcher.search(matchableName, { returnMatchData: true });
287
- const bestMatch = results[0];
288
- if (bestMatch && bestMatch.score > 0.9 && bestMatch.item in matchableNamesToNodeIdsMap) {
289
- linkedNodeIdsToPaths[matchableNamesToNodeIdsMap[bestMatch.item]] = componentPath;
290
- }
291
- });
292
- }
293
303
  // returns ES-style import path from given system path
294
304
  function formatImportPath(systemPath) {
295
305
  // use forward slashes for import paths
@@ -301,7 +311,7 @@ function formatImportPath(systemPath) {
301
311
  // assume not using ESM imports
302
312
  return formattedImportPath.replace(/\.(jsx|tsx)$/, '');
303
313
  }
304
- async function createCodeConnectFiles({ linkedNodeIdsToPaths, figmaFileUrl, unconnectedComponentsMap, outDir: outDirArg, }) {
314
+ async function createCodeConnectFiles({ linkedNodeIdsToPaths, figmaFileUrl, unconnectedComponentsMap, outDir: outDirArg, projectInfo, }) {
305
315
  for (const [nodeId, filePath] of Object.entries(linkedNodeIdsToPaths)) {
306
316
  const urlObj = new URL(figmaFileUrl);
307
317
  urlObj.search = '';
@@ -309,26 +319,44 @@ async function createCodeConnectFiles({ linkedNodeIdsToPaths, figmaFileUrl, unco
309
319
  const { name } = path_1.default.parse(filePath);
310
320
  const componentName = name.split('.')[0];
311
321
  const outDir = outDirArg || path_1.default.dirname(filePath);
312
- const outFile = path_1.default.join(outDir, `${name}.figma.tsx`);
313
322
  const payload = {
314
323
  mode: 'CREATE',
315
- destinationDir: path_1.default.dirname(filePath),
316
- destinationFile: outFile,
324
+ destinationDir: outDir,
317
325
  component: {
318
326
  figmaNodeUrl: urlObj.toString(),
319
327
  normalizedName: (0, create_1.normalizeComponentName)(name),
320
328
  ...unconnectedComponentsMap[nodeId],
321
329
  },
322
- config: {},
330
+ config: projectInfo.config,
323
331
  };
324
- const result = await (0, create_2.createReactCodeConnect)(payload);
332
+ let result;
333
+ if (projectInfo.config.parser === 'react') {
334
+ result = await (0, create_2.createReactCodeConnect)(payload);
335
+ }
336
+ else {
337
+ try {
338
+ const stdout = await (0, parser_executables_1.callParser)(
339
+ // We use `as` because the React parser makes the types difficult
340
+ // TODO remove once React is an executable parser
341
+ projectInfo.config, payload, projectInfo.absPath);
342
+ result = parser_executable_types_1.CreateResponsePayload.parse(stdout);
343
+ }
344
+ catch (e) {
345
+ throw (0, zod_validation_error_1.fromError)(e);
346
+ }
347
+ }
325
348
  const { hasErrors } = (0, parser_executables_1.handleMessages)(result.messages);
326
- if (!hasErrors) {
327
- logging_1.logger.info((0, logging_1.success)(`Created ${outFile}`));
349
+ if (hasErrors) {
350
+ (0, logging_1.exitWithError)('Errors encountered calling parser, exiting');
351
+ }
352
+ else {
353
+ result.createdFiles.forEach((file) => {
354
+ logging_1.logger.info((0, logging_1.success)(`Created ${file.filePath}`));
355
+ });
328
356
  }
329
357
  }
330
358
  }
331
- function convertRemoteFileUrlToRelativePath({ remoteFileUrl, gitRootPath, componentDirectory, }) {
359
+ function convertRemoteFileUrlToRelativePath({ remoteFileUrl, gitRootPath, dir, }) {
332
360
  if (!gitRootPath) {
333
361
  return null;
334
362
  }
@@ -337,9 +365,10 @@ function convertRemoteFileUrlToRelativePath({ remoteFileUrl, gitRootPath, compon
337
365
  return null;
338
366
  }
339
367
  const absPath = path_1.default.join(gitRootPath, pathWithinRepo);
340
- return path_1.default.relative(componentDirectory, absPath);
368
+ return path_1.default.relative(dir, absPath);
341
369
  }
342
- async function getUnconnectedComponentsAndConnectedComponentMappings(cmd, figmaFileUrl, componentsFromFile, componentDirectory, projectInfo) {
370
+ exports.convertRemoteFileUrlToRelativePath = convertRemoteFileUrlToRelativePath;
371
+ async function getUnconnectedComponentsAndConnectedComponentMappings(cmd, figmaFileUrl, componentsFromFile, projectInfo) {
343
372
  const dir = (0, connect_1.getDir)(cmd);
344
373
  const fileKey = (0, helpers_1.parseFileKey)(figmaFileUrl);
345
374
  const codeConnectObjects = await (0, connect_1.getCodeConnectObjects)(dir, cmd, projectInfo, true);
@@ -352,14 +381,14 @@ async function getUnconnectedComponentsAndConnectedComponentMappings(cmd, figmaF
352
381
  }, {});
353
382
  const unconnectedComponents = [];
354
383
  const connectedComponentsMappings = [];
355
- const gitRootPath = (0, project_1.getGitRepoAbsolutePath)(componentDirectory);
384
+ const gitRootPath = (0, project_1.getGitRepoAbsolutePath)(dir);
356
385
  componentsFromFile.map((c) => {
357
386
  if (c.id in connectedNodeIdsInFileToCodeConnectObjectMap) {
358
387
  const cc = connectedNodeIdsInFileToCodeConnectObjectMap[c.id];
359
388
  const relativePath = convertRemoteFileUrlToRelativePath({
360
389
  remoteFileUrl: cc.source,
361
390
  gitRootPath,
362
- componentDirectory,
391
+ dir,
363
392
  });
364
393
  connectedComponentsMappings.push({
365
394
  componentName: c.name,
@@ -375,15 +404,16 @@ async function getUnconnectedComponentsAndConnectedComponentMappings(cmd, figmaF
375
404
  connectedComponentsMappings,
376
405
  };
377
406
  }
407
+ exports.getUnconnectedComponentsAndConnectedComponentMappings = getUnconnectedComponentsAndConnectedComponentMappings;
378
408
  async function askForTopLevelDirectoryOrDetermineFromConfig({ dir, hasConfigFile, config, }) {
379
- let dirToSearchForFiles = dir;
409
+ let componentDirectory = null;
380
410
  while (true) {
381
411
  if (!hasConfigFile) {
382
- const { componentDirectory } = await askQuestionOrExit({
412
+ const { componentDirectory: componentDirectoryAnswer } = await askQuestionOrExit({
383
413
  type: 'text',
384
414
  message: `Which top-level directory contains the code to be connected to your Figma design system? (Press ${chalk_1.default.green('enter')} to use current directory)`,
385
415
  name: 'componentDirectory',
386
- format: (val) => val || process.cwd(),
416
+ format: (val) => val || process.cwd(), // should this be || dir?
387
417
  validate: (value) => {
388
418
  if (!value) {
389
419
  return true;
@@ -394,25 +424,47 @@ async function askForTopLevelDirectoryOrDetermineFromConfig({ dir, hasConfigFile
394
424
  return true;
395
425
  },
396
426
  });
397
- dirToSearchForFiles = componentDirectory;
427
+ componentDirectory = componentDirectoryAnswer;
428
+ }
429
+ const configToUse = componentDirectory
430
+ ? {
431
+ ...config,
432
+ include: (0, helpers_2.getIncludesGlob)({
433
+ dir,
434
+ componentDirectory,
435
+ config,
436
+ }),
437
+ }
438
+ : config;
439
+ const spinner = (0, ora_1.default)({
440
+ text: 'Parsing local files...',
441
+ color: 'green',
442
+ spinner: {
443
+ // Don't show spinner as ts.createProgram blocks thread
444
+ frames: [''],
445
+ },
446
+ }).start();
447
+ let projectInfo = await (0, project_1.getProjectInfoFromConfig)(dir, configToUse);
448
+ let componentPaths = projectInfo.files;
449
+ if (projectInfo.config.parser === 'react') {
450
+ projectInfo = (0, project_1.getReactProjectInfo)(projectInfo);
451
+ // TODO can we do similar filtering for non-react?
452
+ componentPaths = componentPaths.filter((f) => !(0, parser_1.isFigmaConnectFile)(projectInfo.tsProgram, f));
398
453
  }
399
- const projectInfo = (0, project_1.getReactProjectInfo)((await (0, project_1.getProjectInfoFromConfig)(dirToSearchForFiles, config)));
400
- const componentPaths = projectInfo.files
401
- .filter((f) => !(0, parser_1.isFigmaConnectFile)(projectInfo.tsProgram, f))
402
- .map((filePath) => path_1.default.relative(dirToSearchForFiles, filePath));
454
+ spinner.stop();
403
455
  if (!componentPaths.length) {
404
456
  if (hasConfigFile) {
405
- logging_1.logger.error('No jsx/tsx files found. Please update the include/exclude globs in your config file and try again.');
457
+ logging_1.logger.error('No files found. Please update the include/exclude globs in your config file and try again.');
406
458
  (0, helpers_1.exitWithFeedbackMessage)(1);
407
459
  }
408
460
  else {
409
- logging_1.logger.error('No jsx/tsx files could be found in that directory. Please enter a different directory.');
461
+ logging_1.logger.error('No files for your project type could be found in that directory. Please enter a different directory.');
410
462
  }
411
463
  }
412
464
  else {
413
465
  return {
414
466
  projectInfo,
415
- dirToSearchForFiles,
467
+ componentDirectory,
416
468
  componentPaths,
417
469
  };
418
470
  }
@@ -433,10 +485,6 @@ async function runWizard(cmd) {
433
485
  }));
434
486
  const dir = (0, connect_1.getDir)(cmd);
435
487
  const { hasConfigFile, config } = await (0, project_1.parseOrDetermineConfig)(dir, cmd.config);
436
- if (config.parser !== 'react' && config.parser !== '__unit_test__') {
437
- logging_1.logger.error('This flow currently only supports React projects. Please use one of the other commands.');
438
- (0, helpers_1.exitWithFeedbackMessage)(1);
439
- }
440
488
  let accessToken = (0, connect_1.getAccessToken)(cmd);
441
489
  if (!accessToken) {
442
490
  const { accessTokenEntered } = await askQuestionOrExit({
@@ -449,7 +497,7 @@ async function runWizard(cmd) {
449
497
  accessToken = accessTokenEntered;
450
498
  }
451
499
  logging_1.logger.info('');
452
- const { dirToSearchForFiles, projectInfo, componentPaths } = await askForTopLevelDirectoryOrDetermineFromConfig({
500
+ const { componentDirectory, projectInfo, componentPaths } = await askForTopLevelDirectoryOrDetermineFromConfig({
453
501
  dir,
454
502
  hasConfigFile,
455
503
  config,
@@ -458,6 +506,7 @@ async function runWizard(cmd) {
458
506
  type: 'text',
459
507
  message: 'What is the URL of the Figma file containing your design system library?',
460
508
  name: 'figmaFileUrl',
509
+ validate: (value) => !!(0, helpers_1.parseFileKey)(value) || 'Please enter a valid Figma file URL.',
461
510
  });
462
511
  const componentsFromFile = await fetchTopLevelComponentsFromFile({
463
512
  accessToken,
@@ -483,19 +532,23 @@ async function runWizard(cmd) {
483
532
  ],
484
533
  });
485
534
  if (createConfigFile === 'yes') {
486
- await (0, helpers_2.createCodeConnectConfig)({ dir, dirToSearchForFiles, config });
535
+ await (0, helpers_2.createCodeConnectConfig)({ dir, componentDirectory, config });
487
536
  }
488
537
  }
489
538
  const linkedNodeIdsToPaths = {};
490
- const { unconnectedComponents, connectedComponentsMappings } = await getUnconnectedComponentsAndConnectedComponentMappings(cmd, figmaFileUrl, componentsFromFile, dirToSearchForFiles, projectInfo);
491
- autoLinkComponents({
539
+ const { unconnectedComponents, connectedComponentsMappings } = await getUnconnectedComponentsAndConnectedComponentMappings(cmd, figmaFileUrl, componentsFromFile, projectInfo);
540
+ (0, autolinking_1.autoLinkComponents)({
492
541
  unconnectedComponents,
493
542
  linkedNodeIdsToPaths,
494
543
  componentPaths,
495
544
  });
496
545
  logging_1.logger.info((0, boxen_1.default)(`${chalk_1.default.bold(`Connecting your components`)}\n\n` +
497
- `${chalk_1.default.green(`${chalk_1.default.bold(Object.keys(linkedNodeIdsToPaths).length)} ${Object.keys(linkedNodeIdsToPaths).length === 1 ? 'component was automatically matched based on its name' : 'components were automatically matched based on their names'}`)}\n` +
498
- `${chalk_1.default.yellow(`${chalk_1.default.bold(unconnectedComponents.length)} ${unconnectedComponents.length === 1 ? 'component has not been matched' : 'components have not been matched'}`)}\n\n` +
546
+ `${chalk_1.default.green(`${chalk_1.default.bold(Object.keys(linkedNodeIdsToPaths).length)} ${Object.keys(linkedNodeIdsToPaths).length === 1
547
+ ? 'component was automatically matched based on its name'
548
+ : 'components were automatically matched based on their names'}`)}\n` +
549
+ `${chalk_1.default.yellow(`${chalk_1.default.bold(unconnectedComponents.length)} ${unconnectedComponents.length === 1
550
+ ? 'component has not been matched'
551
+ : 'components have not been matched'}`)}\n\n` +
499
552
  `Match up Figma components with their code definitions. When you're finished, you\n` +
500
553
  `can specify the directory you want to create Code Connect files in.`, {
501
554
  padding: 1,
@@ -518,6 +571,7 @@ async function runWizard(cmd) {
518
571
  unconnectedComponentsMap,
519
572
  figmaFileUrl,
520
573
  outDir,
574
+ projectInfo,
521
575
  });
522
576
  }
523
577
  exports.runWizard = runWizard;
@@ -1 +1 @@
1
- {"version":3,"file":"run_wizard.js","sourceRoot":"","sources":["../../../src/connect/wizard/run_wizard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run_wizard.js","sourceRoot":"","sources":["../../../src/connect/wizard/run_wizard.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAE9C,OAAO,KAAK,cAAc,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AAG1D,QAAA,MAAM,OAAO,EAAE,kBAA2B,CAAA;AAC1C,QAAA,MAAM,MAAM,EAAE,eAAuB,CAAA;AAErC,OAAO,EAAE,MAAM,IAAI,KAAK,EAAE,OAAO,IAAI,MAAM,EAAE,CAAA;AAC7C,eAAe,MAAM,CAAA;AAErB,MAAM,MAAM,eAAe,CAAC,CAAC,GAAG,EAAE,IAAI,cAAc,CAAC,eAAe,CAAC,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAE9C,OAAO,KAAK,cAAc,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AAkB1D,QAAA,MAAM,OAAO,EAAE,kBAA2B,CAAA;AAC1C,QAAA,MAAM,MAAM,EAAE,eAAuB,CAAA;AAErC,OAAO,EAAE,MAAM,IAAI,KAAK,EAAE,OAAO,IAAI,MAAM,EAAE,CAAA;AAC7C,eAAe,MAAM,CAAA;AAErB,MAAM,MAAM,eAAe,CAAC,CAAC,GAAG,EAAE,IAAI,cAAc,CAAC,eAAe,CAAC,CAAC,CAAC,CAAA"}
package/dist/index.js CHANGED
@@ -1,4 +1,9 @@
1
1
  "use strict";
2
+ // IMPORTANT: be careful to ensure you don't accidentally add code which has a
3
+ // dependency on Node.js-only modules here, as it will break co=located
4
+ // components. We don't have a test for this yet. Any such code should be
5
+ // conditionally required - see `client` for an example. Reach out in
6
+ // #feat-code-connect if you're unsure.
2
7
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
8
  if (k2 === undefined) k2 = k;
4
9
  var desc = Object.getOwnPropertyDescriptor(m, k);
@@ -25,7 +30,21 @@ var __importStar = (this && this.__importStar) || function (mod) {
25
30
  Object.defineProperty(exports, "__esModule", { value: true });
26
31
  exports.client = exports.figma = void 0;
27
32
  const figma = __importStar(require("./common/external"));
28
- const client = __importStar(require("./client/external"));
33
+ // `client/external`'s dependency chain ends up including code which is not safe
34
+ // in a browser context, e.g. `child_process`. This would mean that if you
35
+ // co-locate your Code Connect with React components, your app will be broken in
36
+ // a browser, because of this import chain.
37
+ //
38
+ // To get around this, we only import `client/external` if you are in a Node
39
+ // context – it is only used for the icon script, so none of the code which runs
40
+ // in the browser should touch it.
41
+ //
42
+ // Note that you may still see messages from the JS bundler about Node modules,
43
+ // but these won't be included at runtime.
44
+ let client = {};
45
+ if (typeof process !== 'undefined' && process.versions && process.versions.node) {
46
+ client = require('./client/external');
47
+ }
29
48
  const _client = client;
30
49
  exports.client = _client;
31
50
  const _figma = figma;
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,yDAA0C;AAG1C,0DAA2C;AAE3C,MAAM,OAAO,GAAuB,MAAM,CAAA;AAGL,yBAAM;AAF3C,MAAM,MAAM,GAAoB,KAAK,CAAA;AAElB,uBAAK;AACxB,kBAAe,MAAM,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,8EAA8E;AAC9E,uEAAuE;AACvE,yEAAyE;AACzE,qEAAqE;AACrE,uCAAuC;;;;;;;;;;;;;;;;;;;;;;;;;;AAGvC,yDAA0C;AAI1C,gFAAgF;AAChF,0EAA0E;AAC1E,gFAAgF;AAChF,2CAA2C;AAC3C,EAAE;AACF,4EAA4E;AAC5E,gFAAgF;AAChF,kCAAkC;AAClC,EAAE;AACF,+EAA+E;AAC/E,0CAA0C;AAC1C,IAAI,MAAM,GAAuB,EAAS,CAAA;AAC1C,IAAI,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IAChF,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAA;AACvC,CAAC;AAED,MAAM,OAAO,GAAuB,MAAM,CAAA;AAGL,yBAAM;AAF3C,MAAM,MAAM,GAAoB,KAAK,CAAA;AAElB,uBAAK;AACxB,kBAAe,MAAM,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"get_swift_parser_dir.d.ts","sourceRoot":"","sources":["../../src/parser_scripts/get_swift_parser_dir.ts"],"names":[],"mappings":"AAYA,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,mBA2F1E"}
1
+ {"version":3,"file":"get_swift_parser_dir.d.ts","sourceRoot":"","sources":["../../src/parser_scripts/get_swift_parser_dir.ts"],"names":[],"mappings":"AAYA,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,mBA0F1E"}
@@ -15,7 +15,7 @@ const get_file_if_exists_1 = require("./get_file_if_exists");
15
15
  async function getSwiftParserDir(cwd, xcodeprojPath) {
16
16
  let figmaPackageDir;
17
17
  // Check for the supported project types.
18
- const xcodeProjFile = xcodeprojPath || (0, get_file_if_exists_1.getFileIfExists)(cwd, '*.xcodeproj');
18
+ const xcodeProjFile = (xcodeprojPath || (0, get_file_if_exists_1.getFileIfExists)(cwd, '*.xcodeproj')).replace(/\s/g, '\\ ');
19
19
  const packageSwiftFile = (0, get_file_if_exists_1.getFileIfExists)(cwd, 'Package.swift');
20
20
  if (!(xcodeProjFile || packageSwiftFile)) {
21
21
  (0, logging_1.exitWithError)('No supported project found. Supported project types are .xcodeproj or Package.swift. You can specify the location of your .xcodeproj file with the `xcodeprojPath` config option.');
@@ -34,7 +34,7 @@ async function getSwiftParserDir(cwd, xcodeprojPath) {
34
34
  // - Figma: /path/to/code-connect
35
35
  const figmaPackageMatch = buildSettings.match(/\s+Figma: ([^\s]*)(?: @ (.*))?/);
36
36
  if (!figmaPackageMatch) {
37
- (0, logging_1.exitWithError)('Code Connect Swift package not found');
37
+ (0, logging_1.exitWithError)('Code Connect Swift package not found. Please add a dependency to the Code Connect package at https://github.com/figma/code-connect to your project.');
38
38
  }
39
39
  // Find the package's location on disk, to compile and run the parser binary from
40
40
  const [_, figmaPackageSource, figmaPackageVersion] = figmaPackageMatch;
@@ -68,16 +68,10 @@ async function getSwiftParserDir(cwd, xcodeprojPath) {
68
68
  // Our local directory is called figmadoc, so this is what swift outputs as the identity
69
69
  packageInfo.dependencies.find((p) => p.identity === 'figmadoc');
70
70
  if (!codeConnectPackage) {
71
- (0, logging_1.exitWithError)('Code Connect Swift package not found in Package.swift');
72
- }
73
- if (codeConnectPackage.path) {
74
- // Installed locally
75
- figmaPackageDir = codeConnectPackage.path;
76
- }
77
- else {
78
- // Installed from git, SPM clones it into this directory
79
- figmaPackageDir = '.build/checkouts/code-connect';
71
+ (0, logging_1.exitWithError)('Code Connect Swift package not found in Package.swift. Please add a dependency to https://github.com/figma/code-connect to your Package.swift file.');
80
72
  }
73
+ // We can run directly from the directory of the package swift file
74
+ figmaPackageDir = cwd;
81
75
  }
82
76
  catch (e) {
83
77
  (0, logging_1.exitWithError)(`Error calling Swift command: ${e}`);
@@ -1 +1 @@
1
- {"version":3,"file":"get_swift_parser_dir.js","sourceRoot":"","sources":["../../src/parser_scripts/get_swift_parser_dir.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"get_swift_parser_dir.js","sourceRoot":"","sources":["../../src/parser_scripts/get_swift_parser_dir.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../src/react/create.ts"],"names":[],"mappings":"AAGA,OAAO,CAAC,MAAM,KAAK,CAAA;AACnB,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAA;AAwFhG,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC,CA2ChD"}
1
+ {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../src/react/create.ts"],"names":[],"mappings":"AAGA,OAAO,CAAC,MAAM,KAAK,CAAA;AACnB,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAA;AA0FhG,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC,CA2ChD"}
@@ -44,7 +44,7 @@ function normalizePropName(name) {
44
44
  return name.replace(/#[0-9:]*/g, '');
45
45
  }
46
46
  function generateCodePropName(name) {
47
- return (0, lodash_1.camelCase)(name.replace(/[^a-zA-Z]/g, ''));
47
+ return (0, lodash_1.camelCase)(name.replace(/[^a-zA-Z0-9]/g, ''));
48
48
  }
49
49
  function normalizePropValue(name) {
50
50
  // Convert the string to kebab-case
@@ -66,7 +66,8 @@ function generateProps(component) {
66
66
  props.push(`"${codePropName}": figma.string('${figmaPropName}')`);
67
67
  }
68
68
  if (propDef.type === 'VARIANT') {
69
- if (propDef.variantOptions?.find((value) => isBooleanKind(value))) {
69
+ const isBooleanVariant = propDef.variantOptions?.length === 2 && propDef.variantOptions.every(isBooleanKind);
70
+ if (isBooleanVariant) {
70
71
  props.push(`"${codePropName}": figma.boolean('${figmaPropName}')`);
71
72
  }
72
73
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"create.js","sourceRoot":"","sources":["../../src/react/create.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create.js","sourceRoot":"","sources":["../../src/react/create.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mCAAkC;AAClC,mDAAoC;AACpC,4CAAmB;AAGnB,gDAAuB;AAEvB,SAAS,aAAa,CAAC,SAAiB;IACtC,MAAM,UAAU,GAAG,SAAS,CAAC,WAAW,EAAE,CAAA;IAC1C,OAAO,CACL,UAAU,KAAK,MAAM;QACrB,UAAU,KAAK,OAAO;QACtB,UAAU,KAAK,KAAK;QACpB,UAAU,KAAK,IAAI;QACnB,UAAU,KAAK,IAAI;QACnB,UAAU,KAAK,KAAK,CACrB,CAAA;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAY;IACrC,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;AACtC,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAY;IACxC,OAAO,IAAA,kBAAS,EAAC,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,CAAA;AACrD,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAY;IACtC,mCAAmC;IACnC,OAAO,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,CAAA;AACzD,CAAC;AAED,SAAS,aAAa,CAAC,SAA4C;IACjE,MAAM,KAAK,GAAa,EAAE,CAAA;IAC1B,IACE,CAAC,SAAS,CAAC,4BAA4B;QACvC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,4BAA4B,CAAC,CAAC,MAAM,KAAK,CAAC,EAChE,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,KAAK,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,4BAA4B,CAAC,EAAE,CAAC;QACzF,MAAM,YAAY,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAA;QACnD,MAAM,aAAa,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAA;QACjD,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC/B,KAAK,CAAC,IAAI,CAAC,IAAI,YAAY,qBAAqB,aAAa,IAAI,CAAC,CAAA;QACpE,CAAC;QACD,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC5B,KAAK,CAAC,IAAI,CAAC,IAAI,YAAY,oBAAoB,aAAa,IAAI,CAAC,CAAA;QACnE,CAAC;QACD,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC/B,MAAM,gBAAgB,GACpB,OAAO,CAAC,cAAc,EAAE,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,aAAa,CAAC,CAAA;YACrF,IAAI,gBAAgB,EAAE,CAAC;gBACrB,KAAK,CAAC,IAAI,CAAC,IAAI,YAAY,qBAAqB,aAAa,IAAI,CAAC,CAAA;YACpE,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,IAAI,CACR,IAAI,YAAY,kBAAkB,aAAa,UAAU,OAAO,CAAC,cAAc;oBAC7E,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,KAAK,OAAO,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC;qBAC/D,IAAI,CAAC,KAAK,CAAC,IAAI,CACnB,CAAA;YACH,CAAC;QACH,CAAC;QACD,IAAI,OAAO,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;YACrC,KAAK,CAAC,IAAI,CAAC,IAAI,YAAY,sBAAsB,aAAa,IAAI,CAAC,CAAA;QACrE,CAAC;IACH,CAAC;IACD,OAAO;IACL,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC;EACrB,CAAA;AACF,CAAC;AAED,SAAS,cAAc,CAAC,EACtB,OAAO,EACP,MAAM,EACN,aAAa,GAKd;IACC,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,MAAM,QAAQ,GAAG,GAAG,aAAa,YAAY,CAAA;IAE7C,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,cAAI,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IACpC,CAAC;IAED,OAAO,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,CAAC,CAAA;AACnE,CAAC;AAEM,KAAK,UAAU,sBAAsB,CAC1C,OAA6B;IAE7B,MAAM,EAAE,SAAS,EAAE,eAAe,EAAE,cAAc,EAAE,GAAG,OAAO,CAAA;IAC9D,MAAM,EAAE,cAAc,EAAE,YAAY,EAAE,GAAG,SAAS,CAAA;IAClD,MAAM,QAAQ,GAAG,cAAc,CAAC;QAC9B,OAAO,EAAE,eAAe;QACxB,MAAM,EAAE,cAAc;QACtB,aAAa,EAAE,cAAc;KAC9B,CAAC,CAAA;IAEF,MAAM,WAAW,GAAG;;WAEX,cAAc,cAAc,cAAc;;;;;;;;;;;gBAWrC,cAAc,MAAM,YAAY;WACrC,aAAa,CAAC,SAAS,CAAC;yBACV,cAAc;;CAEtC,CAAA;IACC,IAAI,SAAS,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE;QACjD,MAAM,EAAE,YAAY;QACpB,IAAI,EAAE,KAAK;QACX,aAAa,EAAE,KAAK;KACrB,CAAC,CAAA;IAEF,IAAI,YAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC5B,OAAO;YACL,YAAY,EAAE,EAAE;YAChB,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,QAAQ,QAAQ,oCAAoC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;SAC9F,CAAA;IACH,CAAC;IACD,YAAE,CAAC,SAAS,CAAC,cAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IACzD,YAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAA;IAErC,OAAO,EAAE,YAAY,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAA;AACvD,CAAC;AA7CD,wDA6CC"}