@figma/code-connect 1.0.1 → 1.0.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 (36) hide show
  1. package/README.md +20 -5
  2. package/dist/cli.js.map +1 -1
  3. package/dist/connect/project.d.ts.map +1 -1
  4. package/dist/connect/project.js +33 -8
  5. package/dist/connect/project.js.map +1 -1
  6. package/dist/connect/wizard/__test__/helpers.test.d.ts +2 -0
  7. package/dist/connect/wizard/__test__/helpers.test.d.ts.map +1 -0
  8. package/dist/connect/wizard/__test__/helpers.test.js +27 -0
  9. package/dist/connect/wizard/__test__/helpers.test.js.map +1 -0
  10. package/dist/connect/wizard/__test__/run_wizard.test.d.ts +2 -0
  11. package/dist/connect/wizard/__test__/run_wizard.test.d.ts.map +1 -0
  12. package/dist/connect/wizard/__test__/run_wizard.test.js +183 -0
  13. package/dist/connect/wizard/__test__/run_wizard.test.js.map +1 -0
  14. package/dist/connect/wizard/helpers.d.ts +16 -2
  15. package/dist/connect/wizard/helpers.d.ts.map +1 -1
  16. package/dist/connect/wizard/helpers.js +23 -9
  17. package/dist/connect/wizard/helpers.js.map +1 -1
  18. package/dist/connect/wizard/run_wizard.d.ts +28 -0
  19. package/dist/connect/wizard/run_wizard.d.ts.map +1 -1
  20. package/dist/connect/wizard/run_wizard.js +95 -39
  21. package/dist/connect/wizard/run_wizard.js.map +1 -1
  22. package/dist/index.d.ts.map +1 -1
  23. package/dist/index.js +20 -1
  24. package/dist/index.js.map +1 -1
  25. package/dist/parser_scripts/get_swift_parser_dir.js +1 -1
  26. package/dist/parser_scripts/get_swift_parser_dir.js.map +1 -1
  27. package/dist/react/create.d.ts.map +1 -1
  28. package/dist/react/create.js +3 -2
  29. package/dist/react/create.js.map +1 -1
  30. package/dist/react/parser.d.ts.map +1 -1
  31. package/dist/react/parser.js +9 -11
  32. package/dist/react/parser.js.map +1 -1
  33. package/dist/react/parser_template_helpers.d.ts.map +1 -1
  34. package/dist/react/parser_template_helpers.js +12 -2
  35. package/dist/react/parser_template_helpers.js.map +1 -1
  36. package/package.json +4 -2
package/README.md CHANGED
@@ -276,7 +276,7 @@ figma.string('Title')
276
276
 
277
277
  ### Booleans
278
278
 
279
- Booleans work similar to strings. However Code Connect also provides helpers for mapping booleans in Figma to more complex types in code. For example you may want to map a Figma boolean to the existence of a specific sublayer in code.
279
+ Booleans work similar to strings. However Code Connect also provides helpers for mapping booleans in Figma to more complex types in code. For example you may want to map a Figma boolean to the existence of a specific sublayer in code. In addition to mapping boolean props, `figma.boolean` can be used to map boolean Variants in Figma. A boolean Variant is a Variant with only two options that are either "Yes"/"No", "True"/"False" or "On"/Off". For `figma.boolean` these values are normalized to `true` and `false`.
280
280
 
281
281
  ```tsx
282
282
  // simple mapping of boolean from figma to code
@@ -287,15 +287,16 @@ figma.boolean('Has Icon', {
287
287
  true: <Icon />,
288
288
  false: <Spacer />,
289
289
  })
290
+
290
291
  ```
291
292
 
292
293
  In some cases, you only want to render a certain prop if it matches some value in Figma. You can do this either by passing a partial mapping object, or setting the value to `undefined`.
293
294
 
294
295
  ```tsx
295
- // Don't render the prop if 'Has Icon' in figma is `false`
296
- figma.boolean('Has Icon', {
297
- true: <Icon />,
298
- false: undefined,
296
+ // Don't render the prop if 'Has label' in figma is `false`
297
+ figma.boolean("Has label", {
298
+ true: figma.string("Label"),
299
+ false: undefined
299
300
  })
300
301
  ```
301
302
 
@@ -330,6 +331,20 @@ figma.enum('Type', {
330
331
  })
331
332
  ```
332
333
 
334
+ Note that in contrast to `figma.boolean`, values are _not_ normalized for `figma.enum`. You always need to pass the exact literal values to the mapping object.
335
+
336
+ ```tsx
337
+ // These two are equivalent for a variant with the options "Yes" and "No"
338
+ disabled: figma.enum("Boolean Variant", {
339
+ Yes: // ...
340
+ No: // ...
341
+ })
342
+ disabled: figma.boolean("Boolean Variant", {
343
+ true: // ...
344
+ false: // ...
345
+ })
346
+ ```
347
+
333
348
  ### Instances
334
349
 
335
350
  Instances is a Figma term for nested component references. For example, in the case of a `Button` containing an `Icon` as a nested component, we would call the `Icon` an instance. In Figma instances can be properties, (that is, inputs to the component), just like we have render props in code. Similarly to how we can map booleans, enums, and strings from Figma to code, we can also map these to instance props.
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,qDAAsC;AACtC,gDAA+D;AAG/D,OAAO,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAA;AAE1B,KAAK,UAAU,GAAG;IAChB,MAAM,OAAO,GAAG,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,OAAO,CAAC,CAAA;IACrF,OAAO,CAAC,uBAAuB,EAAE,CAAA;IAEjC,IAAA,oCAA0B,EAAC,OAAO,CAAC,CAAA;IAEnC,8EAA8E;IAC9E,sCAAsC;IACtC;;;;;;;MAOE;IAEF,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAC3B,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,OAAO,CAAC,UAAU,EAAE,CAAA;QACpB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;AACH,CAAC;AAED,GAAG,EAAE,CAAA"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,qDAAsC;AACtC,gDAA+D;AAG/D,OAAO,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAA;AAE1B,KAAK,UAAU,GAAG;IAEhB,MAAM,OAAO,GAAG,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,OAAO,CAAC,CAAA;IACrF,OAAO,CAAC,uBAAuB,EAAE,CAAA;IAEjC,IAAA,oCAA0B,EAAC,OAAO,CAAC,CAAA;IAEnC,8EAA8E;IAC9E,sCAAsC;IACtC;;;;;;;MAOE;IAEF,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAC3B,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,OAAO,CAAC,UAAU,EAAE,CAAA;QACpB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;AACH,CAAC;AAED,GAAG,EAAE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../src/connect/project.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../src/connect/project.ts"],"names":[],"mappings":"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"}
@@ -345,16 +345,19 @@ async function getProjectInfoFromConfig(dir, config) {
345
345
  const defaultIncludeGlobs = config.parser
346
346
  ? exports.DEFAULT_INCLUDE_GLOBS_BY_PARSER[config.parser]
347
347
  : undefined;
348
+ // always ignore any `node_modules` folders in react projects
348
349
  const defaultExcludeGlobs = config.parser
349
350
  ? {
350
- react: [`${absPath}/node_modules/**`],
351
- swift: [''],
352
- compose: [''],
353
- __unit_test__: [''],
354
- }[config.parser]
355
- : '';
351
+ react: ['node_modules/**'],
352
+ swift: [],
353
+ compose: [],
354
+ __unit_test__: [],
355
+ }[config.parser] ?? []
356
+ : [];
356
357
  const includeGlobs = config.include || defaultIncludeGlobs;
357
- const excludeGlobs = config.exclude || defaultExcludeGlobs || [];
358
+ const excludeGlobs = config.exclude
359
+ ? [...config.exclude, ...defaultExcludeGlobs]
360
+ : defaultExcludeGlobs;
358
361
  if (!includeGlobs) {
359
362
  (0, logging_1.exitWithError)('No include globs specified in config file');
360
363
  }
@@ -364,6 +367,9 @@ async function getProjectInfoFromConfig(dir, config) {
364
367
  // Otherwise this is true on *nix and false on Windows
365
368
  absolute: true,
366
369
  });
370
+ if (files.length > 10000) {
371
+ logging_1.logger.warn(`Matching number of files was excessively large (${files.length}) - consider using more specific include/exclude globs in your config file.`);
372
+ }
367
373
  return {
368
374
  absPath,
369
375
  remoteUrl,
@@ -404,9 +410,28 @@ function getReactProjectInfo(projectInfo) {
404
410
  }
405
411
  exports.getReactProjectInfo = getReactProjectInfo;
406
412
  function resolveImportPath(filePath, config) {
413
+ // Takes the reversed path and pattern parts and check if they match
407
414
  function isMatch(patternParts, pathParts) {
415
+ if (patternParts[0] === '*') {
416
+ // if the path is just a wildcard and nothing else, match any import
417
+ if (patternParts.length === 1) {
418
+ return true;
419
+ }
420
+ // if the _next_ part in the pattern does not exist in the path, it's not
421
+ // a match.
422
+ const index = pathParts.indexOf(patternParts[1]);
423
+ if (index === -1) {
424
+ return false;
425
+ }
426
+ // Skip to the matching part in the path and match the rest of
427
+ // the pattern. E.g if the pattern is `*/ui/src` (reversed) and the path is
428
+ // `button.tsx/components/ui/src`, we skip to `ui` and match the rest of the
429
+ // pattern.
430
+ patternParts = patternParts.slice(1);
431
+ pathParts = pathParts.slice(index);
432
+ }
408
433
  for (let i = 0; i < patternParts.length; i++) {
409
- if (patternParts[i] !== '*' && patternParts[i] !== pathParts[i]) {
434
+ if (patternParts[i] !== pathParts[i]) {
410
435
  return false;
411
436
  }
412
437
  }
@@ -1 +1 @@
1
- {"version":3,"file":"project.js","sourceRoot":"","sources":["../../src/connect/project.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"project.js","sourceRoot":"","sources":["../../src/connect/project.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=helpers.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.test.d.ts","sourceRoot":"","sources":["../../../../src/connect/wizard/__test__/helpers.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const project_1 = require("../../project");
4
+ const helpers_1 = require("../helpers");
5
+ describe('getIncludesGlob', () => {
6
+ it('returns default includes glob if no component directory', () => {
7
+ const result = (0, helpers_1.getIncludesGlob)({
8
+ dir: './',
9
+ componentDirectory: null,
10
+ config: {
11
+ parser: 'react',
12
+ },
13
+ });
14
+ expect(result).toBe(project_1.DEFAULT_INCLUDE_GLOBS_BY_PARSER.react);
15
+ });
16
+ it('prepends path to component directory to default globs', () => {
17
+ const result = (0, helpers_1.getIncludesGlob)({
18
+ dir: './',
19
+ componentDirectory: './src/connect/wizard/__test__',
20
+ config: {
21
+ parser: 'react',
22
+ },
23
+ });
24
+ expect(result).toEqual(['src/connect/wizard/__test__/**/*.{tsx,jsx}']);
25
+ });
26
+ });
27
+ //# sourceMappingURL=helpers.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.test.js","sourceRoot":"","sources":["../../../../src/connect/wizard/__test__/helpers.test.ts"],"names":[],"mappings":";;AAAA,2CAA+D;AAC/D,wCAA4C;AAE5C,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC/B,EAAE,CAAC,yDAAyD,EAAE,GAAG,EAAE;QACjE,MAAM,MAAM,GAAG,IAAA,yBAAe,EAAC;YAC7B,GAAG,EAAE,IAAI;YACT,kBAAkB,EAAE,IAAI;YACxB,MAAM,EAAE;gBACN,MAAM,EAAE,OAAO;aAChB;SACF,CAAC,CAAA;QACF,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,yCAA+B,CAAC,KAAK,CAAC,CAAA;IAC5D,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;QAC/D,MAAM,MAAM,GAAG,IAAA,yBAAe,EAAC;YAC7B,GAAG,EAAE,IAAI;YACT,kBAAkB,EAAE,+BAA+B;YACnD,MAAM,EAAE;gBACN,MAAM,EAAE,OAAO;aAChB;SACF,CAAC,CAAA;QACF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,4CAA4C,CAAC,CAAC,CAAA;IACxE,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=run_wizard.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run_wizard.test.d.ts","sourceRoot":"","sources":["../../../../src/connect/wizard/__test__/run_wizard.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,183 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ const path_1 = __importDefault(require("path"));
30
+ const connect = __importStar(require("../../../commands/connect"));
31
+ const project = __importStar(require("../../project"));
32
+ const run_wizard_1 = require("../run_wizard");
33
+ const _stripAnsi = require('strip-ansi');
34
+ const MOCK_COMPONENTS = [
35
+ {
36
+ type: 'COMPONENT',
37
+ name: 'a reeeeeeeally long component name',
38
+ id: '1:11',
39
+ children: [],
40
+ componentPropertyDefinitions: {},
41
+ },
42
+ {
43
+ type: 'COMPONENT',
44
+ name: 'another component',
45
+ id: '1:12',
46
+ children: [],
47
+ componentPropertyDefinitions: {},
48
+ },
49
+ {
50
+ type: 'COMPONENT',
51
+ name: 'different component',
52
+ id: '1:13',
53
+ children: [],
54
+ componentPropertyDefinitions: {},
55
+ },
56
+ ];
57
+ describe('getComponentChoicesForPrompt', () => {
58
+ it('returns a sorted list of linked + unlinked formatted choices', () => {
59
+ const result = (0, run_wizard_1.getComponentChoicesForPrompt)(MOCK_COMPONENTS, {
60
+ '1:12': '/some/component/path.tsx',
61
+ }, [], '/');
62
+ expect(result.map((r) => _stripAnsi(r.title))).toEqual([
63
+ `Figma component: another component ↔️ ${path_1.default.join('some', 'component', 'path.tsx')}`,
64
+ `Figma component: a reeeeeeeally long component name ↔️ -`,
65
+ `Figma component: different component ↔️ -`,
66
+ ]);
67
+ });
68
+ it('returns results relative to dir', () => {
69
+ const result = (0, run_wizard_1.getComponentChoicesForPrompt)(MOCK_COMPONENTS, {
70
+ '1:12': '/some/component/path.tsx',
71
+ }, [], '/some');
72
+ expect(result.map((r) => _stripAnsi(r.title))).toEqual([
73
+ `Figma component: another component ↔️ ${path_1.default.join('component', 'path.tsx')}`,
74
+ `Figma component: a reeeeeeeally long component name ↔️ -`,
75
+ `Figma component: different component ↔️ -`,
76
+ ]);
77
+ });
78
+ it('displays already connected components underneath unconnected components', () => {
79
+ const result = (0, run_wizard_1.getComponentChoicesForPrompt)([MOCK_COMPONENTS[0]], {}, [
80
+ {
81
+ componentName: 'some connected component',
82
+ path: '/foo/connectedComponent1.tsx',
83
+ },
84
+ {
85
+ componentName: 'another connected component',
86
+ path: '/foo/connectedComponent2.tsx',
87
+ },
88
+ ], '/');
89
+ expect(result.map((r) => _stripAnsi(r.title))).toEqual([
90
+ `Figma component: a reeeeeeeally long component name ↔️ -`,
91
+ `Figma component: some connected component ↔️ /foo/connectedComponent1.tsx`,
92
+ `Figma component: another connected component ↔️ /foo/connectedComponent2.tsx`,
93
+ ]);
94
+ });
95
+ });
96
+ describe('autoLinkComponents', () => {
97
+ it('populates linkedNodeIdsToPaths using fuzzy matching', () => {
98
+ const linkedNodeIdsToPaths = {};
99
+ (0, run_wizard_1.autoLinkComponents)({
100
+ unconnectedComponents: MOCK_COMPONENTS,
101
+ linkedNodeIdsToPaths,
102
+ componentPaths: ['/foo/bar/AnotherComponent.tsx', '/foo/bar/DifferentComponent.tsx'],
103
+ });
104
+ expect(linkedNodeIdsToPaths).toEqual({
105
+ '1:12': '/foo/bar/AnotherComponent.tsx',
106
+ '1:13': '/foo/bar/DifferentComponent.tsx',
107
+ });
108
+ });
109
+ it('does not populate linkedNodeIdsToPaths with bad matches', () => {
110
+ const linkedNodeIdsToPaths = {};
111
+ (0, run_wizard_1.autoLinkComponents)({
112
+ unconnectedComponents: MOCK_COMPONENTS,
113
+ linkedNodeIdsToPaths,
114
+ componentPaths: ['/foo/bar/MyButton.tsx', '/foo/bar/AlternativeComponent.tsx'],
115
+ });
116
+ expect(linkedNodeIdsToPaths).toEqual({});
117
+ });
118
+ });
119
+ describe('getUnconnectedComponentsAndConnectedComponentMappings', () => {
120
+ it('correctly derives connected / unconnected components', async () => {
121
+ jest.spyOn(project, 'getGitRepoAbsolutePath').mockReturnValue('/user/me/my-repo');
122
+ jest.spyOn(connect, 'getCodeConnectObjects').mockReturnValue(new Promise((resolve) => resolve([
123
+ {
124
+ figmaNode: 'https://figma.com/design/someFileId/wow?node-id=1:11',
125
+ label: 'React',
126
+ language: 'typescript',
127
+ component: 'Modal',
128
+ source: 'https://github.com/some-user/my-design-system/blob/main/components/Modal.tsx',
129
+ sourceLocation: { line: 2 },
130
+ template: '',
131
+ templateData: {
132
+ props: {
133
+ property: {
134
+ kind: 'enum',
135
+ args: {
136
+ figmaPropName: 'Property 1',
137
+ valueMapping: { Default: 'default', Variant2: 'variant2' },
138
+ },
139
+ },
140
+ },
141
+ imports: ['import { Modal } from "./Modal"'],
142
+ nestable: true,
143
+ },
144
+ metadata: { cliVersion: '1.0.1' },
145
+ },
146
+ ])));
147
+ const result = await (0, run_wizard_1.getUnconnectedComponentsAndConnectedComponentMappings)({
148
+ dir: '/user/me/my-repo/components',
149
+ }, 'https://figma.com/design/someFileId/abc', MOCK_COMPONENTS, {});
150
+ expect(result).toEqual({
151
+ unconnectedComponents: [
152
+ {
153
+ type: 'COMPONENT',
154
+ name: 'another component',
155
+ id: '1:12',
156
+ children: [],
157
+ componentPropertyDefinitions: {},
158
+ },
159
+ {
160
+ type: 'COMPONENT',
161
+ name: 'different component',
162
+ id: '1:13',
163
+ children: [],
164
+ componentPropertyDefinitions: {},
165
+ },
166
+ ],
167
+ connectedComponentsMappings: [
168
+ { componentName: 'a reeeeeeeally long component name', path: 'Modal.tsx' },
169
+ ],
170
+ });
171
+ });
172
+ });
173
+ describe('convertRemoteFileUrlToRelativePath', () => {
174
+ it('converts to relative path', () => {
175
+ const result = (0, run_wizard_1.convertRemoteFileUrlToRelativePath)({
176
+ remoteFileUrl: 'https://github.com/slees-figma/sims-design-system/blob/main/components/ds/Modal.tsx',
177
+ gitRootPath: '/user/me/my-repo',
178
+ dir: '/user/me/my-repo/components',
179
+ });
180
+ expect(result).toBe(path_1.default.join('ds', 'Modal.tsx'));
181
+ });
182
+ });
183
+ //# sourceMappingURL=run_wizard.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run_wizard.test.js","sourceRoot":"","sources":["../../../../src/connect/wizard/__test__/run_wizard.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAuB;AACvB,mEAAoD;AAEpD,uDAAwC;AACxC,8CAKsB;AAEtB,MAAM,UAAU,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;AAExC,MAAM,eAAe,GAA6B;IAChD;QACE,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,oCAAoC;QAC1C,EAAE,EAAE,MAAM;QACV,QAAQ,EAAE,EAAE;QACZ,4BAA4B,EAAE,EAAE;KACjC;IACD;QACE,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,mBAAmB;QACzB,EAAE,EAAE,MAAM;QACV,QAAQ,EAAE,EAAE;QACZ,4BAA4B,EAAE,EAAE;KACjC;IACD;QACE,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,qBAAqB;QAC3B,EAAE,EAAE,MAAM;QACV,QAAQ,EAAE,EAAE;QACZ,4BAA4B,EAAE,EAAE;KACjC;CACF,CAAA;AAED,QAAQ,CAAC,8BAA8B,EAAE,GAAG,EAAE;IAC5C,EAAE,CAAC,8DAA8D,EAAE,GAAG,EAAE;QACtE,MAAM,MAAM,GAAG,IAAA,yCAA4B,EACzC,eAAe,EACf;YACE,MAAM,EAAE,0BAA0B;SACnC,EACD,EAAE,EACF,GAAG,CACJ,CAAA;QAED,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;YACrD,2DAA2D,cAAI,CAAC,IAAI,CAAC,MAAM,EAAE,WAAW,EAAE,UAAU,CAAC,EAAE;YACvG,2DAA2D;YAC3D,2DAA2D;SAC5D,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;QACzC,MAAM,MAAM,GAAG,IAAA,yCAA4B,EACzC,eAAe,EACf;YACE,MAAM,EAAE,0BAA0B;SACnC,EACD,EAAE,EACF,OAAO,CACR,CAAA;QAED,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;YACrD,2DAA2D,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,EAAE;YAC/F,2DAA2D;YAC3D,2DAA2D;SAC5D,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,yEAAyE,EAAE,GAAG,EAAE;QACjF,MAAM,MAAM,GAAG,IAAA,yCAA4B,EACzC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,EACpB,EAAE,EACF;YACE;gBACE,aAAa,EAAE,0BAA0B;gBACzC,IAAI,EAAE,8BAA8B;aACrC;YACD;gBACE,aAAa,EAAE,6BAA6B;gBAC5C,IAAI,EAAE,8BAA8B;aACrC;SACF,EACD,GAAG,CACJ,CAAA;QACD,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;YACrD,2DAA2D;YAC3D,sFAAsF;YACtF,sFAAsF;SACvF,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAClC,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;QAC7D,MAAM,oBAAoB,GAAG,EAAE,CAAA;QAC/B,IAAA,+BAAkB,EAAC;YACjB,qBAAqB,EAAE,eAAe;YACtC,oBAAoB;YACpB,cAAc,EAAE,CAAC,+BAA+B,EAAE,iCAAiC,CAAC;SACrF,CAAC,CAAA;QACF,MAAM,CAAC,oBAAoB,CAAC,CAAC,OAAO,CAAC;YACnC,MAAM,EAAE,+BAA+B;YACvC,MAAM,EAAE,iCAAiC;SAC1C,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IACF,EAAE,CAAC,yDAAyD,EAAE,GAAG,EAAE;QACjE,MAAM,oBAAoB,GAAG,EAAE,CAAA;QAC/B,IAAA,+BAAkB,EAAC;YACjB,qBAAqB,EAAE,eAAe;YACtC,oBAAoB;YACpB,cAAc,EAAE,CAAC,uBAAuB,EAAE,mCAAmC,CAAC;SAC/E,CAAC,CAAA;QACF,MAAM,CAAC,oBAAoB,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAC1C,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,uDAAuD,EAAE,GAAG,EAAE;IACrE,EAAE,CAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;QACpE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,wBAAwB,CAAC,CAAC,eAAe,CAAC,kBAAkB,CAAC,CAAA;QACjF,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,uBAAuB,CAAC,CAAC,eAAe,CAC1D,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CACtB,OAAO,CAAC;YACN;gBACE,SAAS,EAAE,sDAAsD;gBACjE,KAAK,EAAE,OAAO;gBACd,QAAQ,EAAE,YAAY;gBACtB,SAAS,EAAE,OAAO;gBAClB,MAAM,EAAE,8EAA8E;gBACtF,cAAc,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE;gBAC3B,QAAQ,EAAE,EAAE;gBACZ,YAAY,EAAE;oBACZ,KAAK,EAAE;wBACL,QAAQ,EAAE;4BACR,IAAI,EAAE,MAAa;4BACnB,IAAI,EAAE;gCACJ,aAAa,EAAE,YAAY;gCAC3B,YAAY,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE;6BAC3D;yBACF;qBACF;oBACD,OAAO,EAAE,CAAC,iCAAiC,CAAC;oBAC5C,QAAQ,EAAE,IAAI;iBACf;gBACD,QAAQ,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE;aAClC;SACF,CAAC,CACH,CACF,CAAA;QACD,MAAM,MAAM,GAAG,MAAM,IAAA,kEAAqD,EACxE;YACE,GAAG,EAAE,6BAA6B;SAC5B,EACR,yCAAyC,EACzC,eAAe,EACf,EAAS,CACV,CAAA;QACD,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YACrB,qBAAqB,EAAE;gBACrB;oBACE,IAAI,EAAE,WAAW;oBACjB,IAAI,EAAE,mBAAmB;oBACzB,EAAE,EAAE,MAAM;oBACV,QAAQ,EAAE,EAAE;oBACZ,4BAA4B,EAAE,EAAE;iBACjC;gBACD;oBACE,IAAI,EAAE,WAAW;oBACjB,IAAI,EAAE,qBAAqB;oBAC3B,EAAE,EAAE,MAAM;oBACV,QAAQ,EAAE,EAAE;oBACZ,4BAA4B,EAAE,EAAE;iBACjC;aACF;YACD,2BAA2B,EAAE;gBAC3B,EAAE,aAAa,EAAE,oCAAoC,EAAE,IAAI,EAAE,WAAW,EAAE;aAC3E;SACF,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,oCAAoC,EAAE,GAAG,EAAE;IAClD,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACnC,MAAM,MAAM,GAAG,IAAA,+CAAkC,EAAC;YAChD,aAAa,EACX,qFAAqF;YACvF,WAAW,EAAE,kBAAkB;YAC/B,GAAG,EAAE,6BAA6B;SACnC,CAAC,CAAA;QACF,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,cAAI,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAA;IACnD,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -1,7 +1,21 @@
1
1
  import { CodeConnectConfig } from '../project';
2
- export declare function createCodeConnectConfig({ dir, dirToSearchForFiles, config, }: {
2
+ /**
3
+ *
4
+ * Gets the default include globs for config.parser with componentDirectory prepended
5
+ * @param args
6
+ * @param args.dir project root path
7
+ * @param args.componentDirectory optional path to where includes should be limited to
8
+ * @param args.config CodeConnectConfig
9
+ * @returns array of include globs
10
+ */
11
+ export declare function getIncludesGlob({ dir, componentDirectory, config, }: {
3
12
  dir: string;
4
- dirToSearchForFiles: string;
13
+ componentDirectory: string | null;
14
+ config: CodeConnectConfig;
15
+ }): string[];
16
+ export declare function createCodeConnectConfig({ dir, componentDirectory, config, }: {
17
+ dir: string;
18
+ componentDirectory: string | null;
5
19
  config: CodeConnectConfig;
6
20
  }): Promise<void>;
7
21
  //# sourceMappingURL=helpers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/connect/wizard/helpers.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,iBAAiB,EAGlB,MAAM,YAAY,CAAA;AAInB,wBAAsB,uBAAuB,CAAC,EAC5C,GAAG,EACH,mBAAmB,EACnB,MAAM,GACP,EAAE;IACD,GAAG,EAAE,MAAM,CAAA;IACX,mBAAmB,EAAE,MAAM,CAAA;IAC3B,MAAM,EAAE,iBAAiB,CAAA;CAC1B,iBAsBA"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/connect/wizard/helpers.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,iBAAiB,EAGlB,MAAM,YAAY,CAAA;AAMnB;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,EAC9B,GAAG,EACH,kBAAkB,EAClB,MAAM,GACP,EAAE;IACD,GAAG,EAAE,MAAM,CAAA;IACX,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAA;IACjC,MAAM,EAAE,iBAAiB,CAAA;CAC1B,YASA;AAED,wBAAsB,uBAAuB,CAAC,EAC5C,GAAG,EACH,kBAAkB,EAClB,MAAM,GACP,EAAE;IACD,GAAG,EAAE,MAAM,CAAA;IACX,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAA;IACjC,MAAM,EAAE,iBAAiB,CAAA;CAC1B,iBAiBA"}
@@ -26,19 +26,32 @@ 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.createCodeConnectConfig = void 0;
29
+ exports.createCodeConnectConfig = exports.getIncludesGlob = void 0;
30
30
  const prettier = __importStar(require("prettier"));
31
31
  const fs_1 = __importDefault(require("fs"));
32
32
  const project_1 = require("../project");
33
33
  const logging_1 = require("../../common/logging");
34
34
  const path_1 = __importDefault(require("path"));
35
- async function createCodeConnectConfig({ dir, dirToSearchForFiles, config, }) {
36
- // use unix separators for config file globs
37
- const pathToComponentsDir = path_1.default.relative(dir, dirToSearchForFiles).replaceAll(path_1.default.sep, '/');
38
- const includesGlob = pathToComponentsDir
39
- ? `${pathToComponentsDir}/${project_1.DEFAULT_INCLUDE_GLOBS_BY_PARSER[config.parser]}`
40
- : project_1.DEFAULT_INCLUDE_GLOBS_BY_PARSER[config.parser];
41
- const filePath = (0, project_1.getDefaultConfigPath)(dir);
35
+ /**
36
+ *
37
+ * Gets the default include globs for config.parser with componentDirectory prepended
38
+ * @param args
39
+ * @param args.dir project root path
40
+ * @param args.componentDirectory optional path to where includes should be limited to
41
+ * @param args.config CodeConnectConfig
42
+ * @returns array of include globs
43
+ */
44
+ function getIncludesGlob({ dir, componentDirectory, config, }) {
45
+ if (componentDirectory) {
46
+ // use unix separators for config file globs
47
+ const pathToComponentsDir = path_1.default.relative(dir, componentDirectory).replaceAll(path_1.default.sep, '/');
48
+ return project_1.DEFAULT_INCLUDE_GLOBS_BY_PARSER[config.parser].map((defaultIncludeGlob) => `${pathToComponentsDir}/${defaultIncludeGlob}`);
49
+ }
50
+ return project_1.DEFAULT_INCLUDE_GLOBS_BY_PARSER[config.parser];
51
+ }
52
+ exports.getIncludesGlob = getIncludesGlob;
53
+ async function createCodeConnectConfig({ dir, componentDirectory, config, }) {
54
+ const includesGlob = getIncludesGlob({ dir, componentDirectory, config });
42
55
  const configJson = `
43
56
  {
44
57
  "codeConnect": {
@@ -46,9 +59,10 @@ async function createCodeConnectConfig({ dir, dirToSearchForFiles, config, }) {
46
59
  }
47
60
  }
48
61
  `;
49
- let formatted = await prettier.format(configJson, {
62
+ const formatted = await prettier.format(configJson, {
50
63
  parser: 'json',
51
64
  });
65
+ const filePath = (0, project_1.getDefaultConfigPath)(dir);
52
66
  fs_1.default.writeFileSync(filePath, formatted);
53
67
  logging_1.logger.info((0, logging_1.success)(`Created ${filePath}`));
54
68
  }
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/connect/wizard/helpers.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mDAAoC;AACpC,4CAAmB;AACnB,wCAImB;AACnB,kDAAsD;AACtD,gDAAuB;AAEhB,KAAK,UAAU,uBAAuB,CAAC,EAC5C,GAAG,EACH,mBAAmB,EACnB,MAAM,GAKP;IACC,4CAA4C;IAC5C,MAAM,mBAAmB,GAAG,cAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC,UAAU,CAAC,cAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IAE7F,MAAM,YAAY,GAAG,mBAAmB;QACtC,CAAC,CAAC,GAAG,mBAAmB,IAAI,yCAA+B,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE;QAC5E,CAAC,CAAC,yCAA+B,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IAElD,MAAM,QAAQ,GAAG,IAAA,8BAAoB,EAAC,GAAG,CAAC,CAAA;IAC1C,MAAM,UAAU,GAAG;;;mBAGF,YAAY;;;GAG5B,CAAA;IACD,IAAI,SAAS,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE;QAChD,MAAM,EAAE,MAAM;KACf,CAAC,CAAA;IACF,YAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAA;IAErC,gBAAM,CAAC,IAAI,CAAC,IAAA,iBAAO,EAAC,WAAW,QAAQ,EAAE,CAAC,CAAC,CAAA;AAC7C,CAAC;AA9BD,0DA8BC"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/connect/wizard/helpers.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mDAAoC;AACpC,4CAAmB;AACnB,wCAImB;AACnB,kDAAsD;AACtD,gDAAuB;AAIvB;;;;;;;;GAQG;AACH,SAAgB,eAAe,CAAC,EAC9B,GAAG,EACH,kBAAkB,EAClB,MAAM,GAKP;IACC,IAAI,kBAAkB,EAAE,CAAC;QACvB,4CAA4C;QAC5C,MAAM,mBAAmB,GAAG,cAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC,UAAU,CAAC,cAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;QAC5F,OAAO,yCAA+B,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CACvD,CAAC,kBAAkB,EAAE,EAAE,CAAC,GAAG,mBAAmB,IAAI,kBAAkB,EAAE,CACvE,CAAA;IACH,CAAC;IACD,OAAO,yCAA+B,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;AACvD,CAAC;AAjBD,0CAiBC;AAEM,KAAK,UAAU,uBAAuB,CAAC,EAC5C,GAAG,EACH,kBAAkB,EAClB,MAAM,GAKP;IACC,MAAM,YAAY,GAAG,eAAe,CAAC,EAAE,GAAG,EAAE,kBAAkB,EAAE,MAAM,EAAE,CAAC,CAAA;IACzE,MAAM,UAAU,GAAG;;;mBAGF,YAAY;;;GAG5B,CAAA;IACD,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE;QAClD,MAAM,EAAE,MAAM;KACf,CAAC,CAAA;IACF,MAAM,QAAQ,GAAG,IAAA,8BAAoB,EAAC,GAAG,CAAC,CAAA;IAE1C,YAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAA;IAErC,gBAAM,CAAC,IAAI,CAAC,IAAA,iBAAO,EAAC,WAAW,QAAQ,EAAE,CAAC,CAAC,CAAA;AAC7C,CAAC;AAzBD,0DAyBC"}
@@ -1,3 +1,31 @@
1
1
  import { BaseCommand } from '../../commands/connect';
2
+ import prompts from 'prompts';
3
+ import { FigmaRestApi } from '../figma_rest_api';
4
+ import { ReactProjectInfo } from '../../connect/project';
5
+ type ConnectedComponentMappings = {
6
+ componentName: string;
7
+ path: string;
8
+ }[];
9
+ export declare function getComponentChoicesForPrompt(components: FigmaRestApi.Component[], linkedNodeIdsToPaths: Record<string, string>, connectedComponentsMappings: ConnectedComponentMappings, dir: string): prompts.Choice[];
10
+ /**
11
+ * Autolinks components/paths based on fuzzy matching of name and writes mappings to linkedNodeIdsToPaths.
12
+ *
13
+ * Matching is done by fast-fuzzy
14
+ */
15
+ export declare function autoLinkComponents({ unconnectedComponents, linkedNodeIdsToPaths, componentPaths, }: {
16
+ unconnectedComponents: FigmaRestApi.Component[];
17
+ linkedNodeIdsToPaths: Record<string, string>;
18
+ componentPaths: string[];
19
+ }): void;
20
+ export declare function convertRemoteFileUrlToRelativePath({ remoteFileUrl, gitRootPath, dir, }: {
21
+ remoteFileUrl: string;
22
+ gitRootPath: string;
23
+ dir: string;
24
+ }): string | null;
25
+ export declare function getUnconnectedComponentsAndConnectedComponentMappings(cmd: BaseCommand, figmaFileUrl: string, componentsFromFile: FigmaRestApi.Component[], projectInfo: ReactProjectInfo): Promise<{
26
+ unconnectedComponents: FigmaRestApi.Component[];
27
+ connectedComponentsMappings: ConnectedComponentMappings;
28
+ }>;
2
29
  export declare function runWizard(cmd: BaseCommand): Promise<void>;
30
+ export {};
3
31
  //# sourceMappingURL=run_wizard.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"run_wizard.d.ts","sourceRoot":"","sources":["../../../src/connect/wizard/run_wizard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAiD,MAAM,wBAAwB,CAAA;AAuiBnG,wBAAsB,SAAS,CAAC,GAAG,EAAE,WAAW,iBAgJ/C"}
1
+ {"version":3,"file":"run_wizard.d.ts","sourceRoot":"","sources":["../../../src/connect/wizard/run_wizard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAiD,MAAM,wBAAwB,CAAA;AACnG,OAAO,OAAO,MAAM,SAAS,CAAA;AAG7B,OAAO,EAAE,YAAY,EAAa,MAAM,mBAAmB,CAAA;AAG3D,OAAO,EACL,gBAAgB,EAMjB,MAAM,uBAAuB,CAAA;AAgB9B,KAAK,0BAA0B,GAAG;IAAE,aAAa,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,CAAA;AAoJ3E,wBAAgB,4BAA4B,CAC1C,UAAU,EAAE,YAAY,CAAC,SAAS,EAAE,EACpC,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC5C,2BAA2B,EAAE,0BAA0B,EACvD,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,MAAM,EAAE,CAuClB;AA0JD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,EACjC,qBAAqB,EACrB,oBAAoB,EACpB,cAAc,GACf,EAAE;IACD,qBAAqB,EAAE,YAAY,CAAC,SAAS,EAAE,CAAA;IAC/C,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC5C,cAAc,EAAE,MAAM,EAAE,CAAA;CACzB,QAsBA;AA2DD,wBAAgB,kCAAkC,CAAC,EACjD,aAAa,EACb,WAAW,EACX,GAAG,GACJ,EAAE;IACD,aAAa,EAAE,MAAM,CAAA;IACrB,WAAW,EAAE,MAAM,CAAA;IACnB,GAAG,EAAE,MAAM,CAAA;CACZ,iBAYA;AAED,wBAAsB,qDAAqD,CACzE,GAAG,EAAE,WAAW,EAChB,YAAY,EAAE,MAAM,EACpB,kBAAkB,EAAE,YAAY,CAAC,SAAS,EAAE,EAC5C,WAAW,EAAE,gBAAgB;;;GA8C9B;AAoFD,wBAAsB,SAAS,CAAC,GAAG,EAAE,WAAW,iBA8J/C"}