@figma/code-connect 1.1.2 → 1.1.4

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 (73) hide show
  1. package/README.md +2 -2
  2. package/dist/common/updates.js +1 -1
  3. package/dist/common/updates.js.map +1 -1
  4. package/dist/connect/api.d.ts +3 -3
  5. package/dist/connect/api.d.ts.map +1 -1
  6. package/dist/connect/create.d.ts.map +1 -1
  7. package/dist/connect/create.js +3 -0
  8. package/dist/connect/create.js.map +1 -1
  9. package/dist/connect/parser_executable_types.d.ts +21 -19
  10. package/dist/connect/parser_executable_types.d.ts.map +1 -1
  11. package/dist/connect/parser_executable_types.js.map +1 -1
  12. package/dist/connect/wizard/prop_mapping.d.ts +21 -1
  13. package/dist/connect/wizard/prop_mapping.d.ts.map +1 -1
  14. package/dist/connect/wizard/prop_mapping.js +137 -35
  15. package/dist/connect/wizard/prop_mapping.js.map +1 -1
  16. package/dist/connect/wizard/run_wizard.d.ts.map +1 -1
  17. package/dist/connect/wizard/run_wizard.js +16 -9
  18. package/dist/connect/wizard/run_wizard.js.map +1 -1
  19. package/dist/html/external.d.ts +2 -2
  20. package/dist/html/external.d.ts.map +1 -1
  21. package/dist/html/external.js.map +1 -1
  22. package/dist/html/index_html.d.ts +3 -2
  23. package/dist/html/index_html.d.ts.map +1 -1
  24. package/dist/html/index_html.js.map +1 -1
  25. package/dist/html/parser.js +1 -1
  26. package/dist/html/types.d.ts +9 -0
  27. package/dist/html/types.d.ts.map +1 -0
  28. package/dist/html/types.js +3 -0
  29. package/dist/html/types.js.map +1 -0
  30. package/dist/react/create.d.ts.map +1 -1
  31. package/dist/react/create.js +38 -3
  32. package/dist/react/create.js.map +1 -1
  33. package/dist/react/external.d.ts +3 -3
  34. package/dist/react/external.d.ts.map +1 -1
  35. package/dist/react/external.js.map +1 -1
  36. package/dist/react/index_react.d.ts +4 -9
  37. package/dist/react/index_react.d.ts.map +1 -1
  38. package/dist/react/index_react.js.map +1 -1
  39. package/dist/react/parser.d.ts +1 -0
  40. package/dist/react/parser.d.ts.map +1 -1
  41. package/dist/react/parser.js +29 -24
  42. package/dist/react/parser.js.map +1 -1
  43. package/dist/react/types.d.ts +11 -0
  44. package/dist/react/types.d.ts.map +1 -0
  45. package/dist/react/types.js +3 -0
  46. package/dist/react/types.js.map +1 -0
  47. package/dist/storybook/external.d.ts +2 -2
  48. package/dist/storybook/external.d.ts.map +1 -1
  49. package/package.json +5 -4
  50. package/dist/html/__test__/parser/examples/NoConfigObject.figma.d.ts +0 -2
  51. package/dist/html/__test__/parser/examples/NoConfigObject.figma.d.ts.map +0 -1
  52. package/dist/html/__test__/parser/examples/NoConfigObject.figma.js +0 -9
  53. package/dist/html/__test__/parser/examples/NoConfigObject.figma.js.map +0 -1
  54. package/dist/html/__test__/parser/examples/NoExample.figma.d.ts +0 -2
  55. package/dist/html/__test__/parser/examples/NoExample.figma.d.ts.map +0 -1
  56. package/dist/html/__test__/parser/examples/NoExample.figma.js +0 -9
  57. package/dist/html/__test__/parser/examples/NoExample.figma.js.map +0 -1
  58. package/dist/html/__test__/parser/examples/RegularFunctionExampleWithExtraCode.figma.d.ts +0 -2
  59. package/dist/html/__test__/parser/examples/RegularFunctionExampleWithExtraCode.figma.d.ts.map +0 -1
  60. package/dist/html/__test__/parser/examples/RegularFunctionExampleWithExtraCode.figma.js +0 -33
  61. package/dist/html/__test__/parser/examples/RegularFunctionExampleWithExtraCode.figma.js.map +0 -1
  62. package/dist/html/__test__/parser/examples/WrongSignatureJsx.figma.d.ts +0 -2
  63. package/dist/html/__test__/parser/examples/WrongSignatureJsx.figma.d.ts.map +0 -1
  64. package/dist/html/__test__/parser/examples/WrongSignatureJsx.figma.js +0 -15
  65. package/dist/html/__test__/parser/examples/WrongSignatureJsx.figma.js.map +0 -1
  66. package/dist/html/__test__/parser/examples/WrongSignatureNoHtmlTag.figma.d.ts +0 -2
  67. package/dist/html/__test__/parser/examples/WrongSignatureNoHtmlTag.figma.d.ts.map +0 -1
  68. package/dist/html/__test__/parser/examples/WrongSignatureNoHtmlTag.figma.js +0 -15
  69. package/dist/html/__test__/parser/examples/WrongSignatureNoHtmlTag.figma.js.map +0 -1
  70. package/dist/html/__test__/parser/parser.test.d.ts +0 -2
  71. package/dist/html/__test__/parser/parser.test.d.ts.map +0 -1
  72. package/dist/html/__test__/parser/parser.test.js +0 -50
  73. package/dist/html/__test__/parser/parser.test.js.map +0 -1
package/README.md CHANGED
@@ -11,7 +11,7 @@ Code Connect is easy to set up, easy to maintain, type-safe, and extensible. Out
11
11
 
12
12
  ## CLI installation
13
13
 
14
- To install Code Connect locally to a React project, you can follow the instructions in the [React README](https://github.com/figma/code-connect/blob/main/cli/README.md#installation).
14
+ To install Code Connect locally to a React project, you can follow the instructions in the [React README](https://github.com/figma/code-connect/blob/main/docs/react.md#installation).
15
15
 
16
16
  For other platforms, you first need to have Node.js v16 or newer installed on your computer. You can check if you already have Node.js installed and which version by running `node -v`. If you need to install Node.js, instructions for all platforms can be found [on the Node.js website](https://nodejs.org/en/download/package-manager).
17
17
 
@@ -38,7 +38,7 @@ Every platform supports some common configuration options, in addition to any pl
38
38
 
39
39
  ### `include` and `exclude`
40
40
 
41
- `include` and `exclude` are lists of globs for where to parse Code Connect files, and for where to search for your component code when using the [interactive setup](https://github.com/figma/code-connect/blob/main/cli/README.md#interactive-setup). `include` and `exclude` paths must be relative to the location of the config file.
41
+ `include` and `exclude` are lists of globs for where to parse Code Connect files, and for where to search for your component code when using the [interactive setup](https://github.com/figma/code-connect/blob/main/docs/react.md#interactive-setup). `include` and `exclude` paths must be relative to the location of the config file.
42
42
 
43
43
  ```jsonp
44
44
  {
@@ -84,7 +84,7 @@ function maybeShowUpdateMessage() {
84
84
  if (updatedVersionAvailable) {
85
85
  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}.
86
86
 
87
- To update, run ${chalk_1.default.whiteBright('npm install @figma/code-connect@latest')} for React, or ${chalk_1.default.whiteBright('npm install -g @figma/code-connect@latest')} for other targets (or if you have Code Connect installed globally).`);
87
+ To update, run ${chalk_1.default.whiteBright('npm install @figma/code-connect@latest')} for React or HTML, or ${chalk_1.default.whiteBright('npm install -g @figma/code-connect@latest')} for other targets (or if you have Code Connect installed globally).`);
88
88
  }
89
89
  if (message) {
90
90
  logging_1.logger.warn(`\n${message}`);
@@ -1 +1 @@
1
- {"version":3,"file":"updates.js","sourceRoot":"","sources":["../../src/common/updates.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"updates.js","sourceRoot":"","sources":["../../src/common/updates.ts"],"names":[],"mappings":"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"}
@@ -103,7 +103,7 @@ export interface FigmaConnectLink {
103
103
  name: string;
104
104
  url: string;
105
105
  }
106
- export interface FigmaConnectMeta<T = {}, ExampleFnReturnT = unknown> {
106
+ export interface FigmaConnectMeta<T = {}, ExampleFnReturnT = unknown, ExtraExampleT = never> {
107
107
  /**
108
108
  * Restricts this figma connect to any variants that fullfill the given filter.
109
109
  * The filter is a map of Figma variant names to values. Example:
@@ -115,7 +115,7 @@ export interface FigmaConnectMeta<T = {}, ExampleFnReturnT = unknown> {
115
115
  variant?: Record<string, string | boolean | number>;
116
116
  /**
117
117
  * Prop mappings for the connected component. This is used to map the values of the component's props
118
- * to the values that are used in Figma, using helper functions like `Figma.boolean`. For example:
118
+ * to the values that are used in Figma, using helper functions like `figma.boolean`. For example:
119
119
  * ```ts
120
120
  * props: {
121
121
  * disabled: figma.boolean('Disabled'),
@@ -134,7 +134,7 @@ export interface FigmaConnectMeta<T = {}, ExampleFnReturnT = unknown> {
134
134
  * @param props
135
135
  * @returns
136
136
  */
137
- example?: (props: T) => ExampleFnReturnT;
137
+ example?: ((props: T) => ExampleFnReturnT) | ExtraExampleT;
138
138
  /**
139
139
  * A list of links that will display in Figma along with the examples
140
140
  */
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/connect/api.ts"],"names":[],"mappings":";AAAA,MAAM,MAAM,SAAS,GACjB,MAAM,GACN,OAAO,GACP,MAAM,GACN,MAAM,GACN,SAAS,GACT,GAAG,CAAC,OAAO,GACX,QAAQ,GACR,MAAM,CAAA;AASV,MAAM,WAAW,eAAe,CAAC,iBAAiB;IAChD;;;;;;;;;;;;;;;OAeG;IACH,IAAI,CAAC,CAAC,SAAS,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAA;IAEpF;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAAA;IAErC;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,iBAAiB,CAAA;IAElD;;;;;;;;;;;;;;;;;;;OAmBG;IACH,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,iBAAiB,CAAA;IAE1D;;;;;;;;;;;;;;OAcG;IACH,SAAS,CAAC,SAAS,EAAE,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,GAAG,MAAM,CAAA;IAEpD;;;;;;;;;;;OAWG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CACnC;AAED,MAAM,MAAM,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAA;AAEnC,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI;KAC1B,GAAG,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC;CACzB,CAAA;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,CAAA;CACZ;AAED,MAAM,WAAW,gBAAgB,CAAC,CAAC,GAAG,EAAE,EAAE,gBAAgB,GAAG,OAAO;IAClE;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC,CAAA;IAEnD;;;;;;;;;;;;;OAaG;IACH,KAAK,CAAC,EAAE,CAAC,CAAA;IAET;;;;;OAKG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,gBAAgB,CAAA;IAExC;;OAEG;IACH,KAAK,CAAC,EAAE,gBAAgB,EAAE,CAAA;CAC3B"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/connect/api.ts"],"names":[],"mappings":";AAAA,MAAM,MAAM,SAAS,GACjB,MAAM,GACN,OAAO,GACP,MAAM,GACN,MAAM,GACN,SAAS,GACT,GAAG,CAAC,OAAO,GACX,QAAQ,GACR,MAAM,CAAA;AASV,MAAM,WAAW,eAAe,CAAC,iBAAiB;IAChD;;;;;;;;;;;;;;;OAeG;IACH,IAAI,CAAC,CAAC,SAAS,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAA;IAEpF;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAAA;IAErC;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,iBAAiB,CAAA;IAElD;;;;;;;;;;;;;;;;;;;OAmBG;IACH,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,iBAAiB,CAAA;IAE1D;;;;;;;;;;;;;;OAcG;IACH,SAAS,CAAC,SAAS,EAAE,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,GAAG,MAAM,CAAA;IAEpD;;;;;;;;;;;OAWG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CACnC;AAED,MAAM,MAAM,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAA;AAEnC,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI;KAC1B,GAAG,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC;CACzB,CAAA;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,CAAA;CACZ;AAKD,MAAM,WAAW,gBAAgB,CAAC,CAAC,GAAG,EAAE,EAAE,gBAAgB,GAAG,OAAO,EAAE,aAAa,GAAG,KAAK;IACzF;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC,CAAA;IAEnD;;;;;;;;;;;;;OAaG;IACH,KAAK,CAAC,EAAE,CAAC,CAAA;IAET;;;;;OAKG;IACH,OAAO,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,KAAK,gBAAgB,CAAC,GAAG,aAAa,CAAA;IAE1D;;OAEG;IACH,KAAK,CAAC,EAAE,gBAAgB,EAAE,CAAA;CAC3B"}
@@ -1 +1 @@
1
- {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../src/connect/create.ts"],"names":[],"mappings":"AAWA,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;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,UAQlD;AAED,wBAAsB,wBAAwB,CAAC,EAC7C,WAAW,EACX,YAAY,EACZ,OAAO,EACP,MAAM,EACN,WAAW,GACZ,EAAE,gBAAgB,iBAuGlB"}
1
+ {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../src/connect/create.ts"],"names":[],"mappings":"AAWA,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;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,UAQlD;AAED,wBAAsB,wBAAwB,CAAC,EAC7C,WAAW,EACX,YAAY,EACZ,OAAO,EACP,MAAM,EACN,WAAW,GACZ,EAAE,gBAAgB,iBA0GlB"}
@@ -70,6 +70,9 @@ async function createCodeConnectFromUrl({ accessToken, figmaNodeUrl, outFile, ou
70
70
  if (response.status === 200) {
71
71
  logging_1.logger.info('Parsing response');
72
72
  const component = (0, helpers_1.findComponentsInDocument)(response.data.document, nodeIds)[0];
73
+ if (component === undefined) {
74
+ (0, logging_1.exitWithError)('Could not find a component in the provided URL');
75
+ }
73
76
  const normalizedName = normalizeComponentName(component.name);
74
77
  const payload = {
75
78
  mode: 'CREATE',
@@ -1 +1 @@
1
- {"version":3,"file":"create.js","sourceRoot":"","sources":["../../src/connect/create.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create.js","sourceRoot":"","sources":["../../src/connect/create.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { z } from 'zod';
2
- import { Intrinsic } from '../connect/intrinsics';
2
+ import { ComponentTypeSignature } from '../react/parser';
3
+ import { Intrinsic } from './intrinsics';
3
4
  export type ParseRequestPayload = {
4
5
  mode: 'PARSE';
5
6
  paths: string[];
@@ -22,19 +23,19 @@ export declare const ParserExecutableMessages: z.ZodArray<z.ZodObject<{
22
23
  }, "strip", z.ZodTypeAny, {
23
24
  message: string;
24
25
  level: "ERROR" | "DEBUG" | "INFO" | "WARN";
25
- type?: string | undefined;
26
26
  sourceLocation?: {
27
27
  file: string;
28
28
  line?: number | undefined;
29
29
  } | undefined;
30
+ type?: string | undefined;
30
31
  }, {
31
32
  message: string;
32
33
  level: "ERROR" | "DEBUG" | "INFO" | "WARN";
33
- type?: string | undefined;
34
34
  sourceLocation?: {
35
35
  file: string;
36
36
  line?: number | undefined;
37
37
  } | undefined;
38
+ type?: string | undefined;
38
39
  }>, "many">;
39
40
  export declare const ParseResponsePayload: z.ZodObject<{
40
41
  docs: z.ZodArray<z.ZodObject<{
@@ -79,42 +80,42 @@ export declare const ParseResponsePayload: z.ZodObject<{
79
80
  label: string;
80
81
  template: string;
81
82
  figmaNode: string;
83
+ language: string;
82
84
  templateData: {
83
85
  props: Record<string, any>;
84
86
  imports?: string[] | undefined;
85
87
  nestable?: boolean | undefined;
86
88
  };
87
- language: string;
88
89
  variant?: Record<string, any> | undefined;
89
90
  links?: {
90
91
  name: string;
91
92
  url: string;
92
93
  }[] | undefined;
93
94
  source?: string | undefined;
95
+ component?: string | undefined;
94
96
  sourceLocation?: {
95
97
  line: number;
96
98
  } | undefined;
97
- component?: string | undefined;
98
99
  }, {
99
100
  label: string;
100
101
  template: string;
101
102
  figmaNode: string;
103
+ language: string;
102
104
  templateData: {
103
105
  props: Record<string, any>;
104
106
  imports?: string[] | undefined;
105
107
  nestable?: boolean | undefined;
106
108
  };
107
- language: string;
108
109
  variant?: Record<string, any> | undefined;
109
110
  links?: {
110
111
  name: string;
111
112
  url: string;
112
113
  }[] | undefined;
113
114
  source?: string | undefined;
115
+ component?: string | undefined;
114
116
  sourceLocation?: {
115
117
  line: number;
116
118
  } | undefined;
117
- component?: string | undefined;
118
119
  }>, "many">;
119
120
  messages: z.ZodArray<z.ZodObject<{
120
121
  level: z.ZodUnion<[z.ZodLiteral<"DEBUG">, z.ZodLiteral<"INFO">, z.ZodLiteral<"WARN">, z.ZodLiteral<"ERROR">]>;
@@ -133,81 +134,81 @@ export declare const ParseResponsePayload: z.ZodObject<{
133
134
  }, "strip", z.ZodTypeAny, {
134
135
  message: string;
135
136
  level: "ERROR" | "DEBUG" | "INFO" | "WARN";
136
- type?: string | undefined;
137
137
  sourceLocation?: {
138
138
  file: string;
139
139
  line?: number | undefined;
140
140
  } | undefined;
141
+ type?: string | undefined;
141
142
  }, {
142
143
  message: string;
143
144
  level: "ERROR" | "DEBUG" | "INFO" | "WARN";
144
- type?: string | undefined;
145
145
  sourceLocation?: {
146
146
  file: string;
147
147
  line?: number | undefined;
148
148
  } | undefined;
149
+ type?: string | undefined;
149
150
  }>, "many">;
150
151
  }, "strip", z.ZodTypeAny, {
151
152
  docs: {
152
153
  label: string;
153
154
  template: string;
154
155
  figmaNode: string;
156
+ language: string;
155
157
  templateData: {
156
158
  props: Record<string, any>;
157
159
  imports?: string[] | undefined;
158
160
  nestable?: boolean | undefined;
159
161
  };
160
- language: string;
161
162
  variant?: Record<string, any> | undefined;
162
163
  links?: {
163
164
  name: string;
164
165
  url: string;
165
166
  }[] | undefined;
166
167
  source?: string | undefined;
168
+ component?: string | undefined;
167
169
  sourceLocation?: {
168
170
  line: number;
169
171
  } | undefined;
170
- component?: string | undefined;
171
172
  }[];
172
173
  messages: {
173
174
  message: string;
174
175
  level: "ERROR" | "DEBUG" | "INFO" | "WARN";
175
- type?: string | undefined;
176
176
  sourceLocation?: {
177
177
  file: string;
178
178
  line?: number | undefined;
179
179
  } | undefined;
180
+ type?: string | undefined;
180
181
  }[];
181
182
  }, {
182
183
  docs: {
183
184
  label: string;
184
185
  template: string;
185
186
  figmaNode: string;
187
+ language: string;
186
188
  templateData: {
187
189
  props: Record<string, any>;
188
190
  imports?: string[] | undefined;
189
191
  nestable?: boolean | undefined;
190
192
  };
191
- language: string;
192
193
  variant?: Record<string, any> | undefined;
193
194
  links?: {
194
195
  name: string;
195
196
  url: string;
196
197
  }[] | undefined;
197
198
  source?: string | undefined;
199
+ component?: string | undefined;
198
200
  sourceLocation?: {
199
201
  line: number;
200
202
  } | undefined;
201
- component?: string | undefined;
202
203
  }[];
203
204
  messages: {
204
205
  message: string;
205
206
  level: "ERROR" | "DEBUG" | "INFO" | "WARN";
206
- type?: string | undefined;
207
207
  sourceLocation?: {
208
208
  file: string;
209
209
  line?: number | undefined;
210
210
  } | undefined;
211
+ type?: string | undefined;
211
212
  }[];
212
213
  }>;
213
214
  export type PropMapping = Record<string, Intrinsic>;
@@ -223,6 +224,7 @@ export type CreateRequestPayload = {
223
224
  sourceFilepath?: string;
224
225
  sourceExport?: string;
225
226
  propMapping?: PropMapping;
227
+ reactTypeSignature?: ComponentTypeSignature;
226
228
  component: {
227
229
  figmaNodeUrl: string;
228
230
  id: string;
@@ -258,29 +260,29 @@ export declare const CreateResponsePayload: z.ZodObject<{
258
260
  }, "strip", z.ZodTypeAny, {
259
261
  message: string;
260
262
  level: "ERROR" | "DEBUG" | "INFO" | "WARN";
261
- type?: string | undefined;
262
263
  sourceLocation?: {
263
264
  file: string;
264
265
  line?: number | undefined;
265
266
  } | undefined;
267
+ type?: string | undefined;
266
268
  }, {
267
269
  message: string;
268
270
  level: "ERROR" | "DEBUG" | "INFO" | "WARN";
269
- type?: string | undefined;
270
271
  sourceLocation?: {
271
272
  file: string;
272
273
  line?: number | undefined;
273
274
  } | undefined;
275
+ type?: string | undefined;
274
276
  }>, "many">;
275
277
  }, "strip", z.ZodTypeAny, {
276
278
  messages: {
277
279
  message: string;
278
280
  level: "ERROR" | "DEBUG" | "INFO" | "WARN";
279
- type?: string | undefined;
280
281
  sourceLocation?: {
281
282
  file: string;
282
283
  line?: number | undefined;
283
284
  } | undefined;
285
+ type?: string | undefined;
284
286
  }[];
285
287
  createdFiles: {
286
288
  filePath: string;
@@ -289,11 +291,11 @@ export declare const CreateResponsePayload: z.ZodObject<{
289
291
  messages: {
290
292
  message: string;
291
293
  level: "ERROR" | "DEBUG" | "INFO" | "WARN";
292
- type?: string | undefined;
293
294
  sourceLocation?: {
294
295
  file: string;
295
296
  line?: number | undefined;
296
297
  } | undefined;
298
+ type?: string | undefined;
297
299
  }[];
298
300
  createdFiles: {
299
301
  filePath: string;
@@ -1 +1 @@
1
- {"version":3,"file":"parser_executable_types.d.ts","sourceRoot":"","sources":["../../src/connect/parser_executable_types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAGjD,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,OAAO,CAAA;IAGb,KAAK,EAAE,MAAM,EAAE,CAAA;IAIf,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAC5B,CAAA;AAOD,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAuBpC,CAAA;AASD,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8D/B,CAAA;AAEF,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;AAEnD,MAAM,MAAM,2BAA2B,GAAG;IAExC,IAAI,EAAE,SAAS,GAAG,eAAe,GAAG,MAAM,GAAG,SAAS,CAAA;IAEtD,YAAY,EAAE,OAAO,GAAG,MAAM,CAAA;IAE9B,cAAc,CAAC,EAAE,MAAM,EAAE,CAAA;CAC1B,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,QAAQ,CAAA;IAId,cAAc,EAAE,MAAM,CAAA;IAGtB,eAAe,CAAC,EAAE,MAAM,CAAA;IAGxB,cAAc,CAAC,EAAE,MAAM,CAAA;IAEvB,YAAY,CAAC,EAAE,MAAM,CAAA;IAErB,WAAW,CAAC,EAAE,WAAW,CAAA;IAIzB,SAAS,EAAE;QAGT,YAAY,EAAE,MAAM,CAAA;QAEpB,EAAE,EAAE,MAAM,CAAA;QAEV,IAAI,EAAE,MAAM,CAAA;QAGZ,cAAc,EAAE,MAAM,CAAA;QAEtB,IAAI,EAAE,WAAW,GAAG,eAAe,CAAA;QAEnC,4BAA4B,EAAE,MAAM,CAAC,MAAM,EAAE,2BAA2B,CAAC,CAAA;KAC1E,CAAA;IAID,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAC5B,CAAA;AAED,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUhC,CAAA;AAEF,MAAM,MAAM,oBAAoB,GAAG,mBAAmB,GAAG,oBAAoB,CAAA"}
1
+ {"version":3,"file":"parser_executable_types.d.ts","sourceRoot":"","sources":["../../src/connect/parser_executable_types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAA;AAExD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAExC,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,OAAO,CAAA;IAGb,KAAK,EAAE,MAAM,EAAE,CAAA;IAIf,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAC5B,CAAA;AAOD,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAuBpC,CAAA;AASD,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8D/B,CAAA;AAEF,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;AAEnD,MAAM,MAAM,2BAA2B,GAAG;IAExC,IAAI,EAAE,SAAS,GAAG,eAAe,GAAG,MAAM,GAAG,SAAS,CAAA;IAEtD,YAAY,EAAE,OAAO,GAAG,MAAM,CAAA;IAE9B,cAAc,CAAC,EAAE,MAAM,EAAE,CAAA;CAC1B,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,QAAQ,CAAA;IAId,cAAc,EAAE,MAAM,CAAA;IAGtB,eAAe,CAAC,EAAE,MAAM,CAAA;IAGxB,cAAc,CAAC,EAAE,MAAM,CAAA;IAEvB,YAAY,CAAC,EAAE,MAAM,CAAA;IAErB,WAAW,CAAC,EAAE,WAAW,CAAA;IAEzB,kBAAkB,CAAC,EAAE,sBAAsB,CAAA;IAI3C,SAAS,EAAE;QAGT,YAAY,EAAE,MAAM,CAAA;QAEpB,EAAE,EAAE,MAAM,CAAA;QAEV,IAAI,EAAE,MAAM,CAAA;QAGZ,cAAc,EAAE,MAAM,CAAA;QAEtB,IAAI,EAAE,WAAW,GAAG,eAAe,CAAA;QAEnC,4BAA4B,EAAE,MAAM,CAAC,MAAM,EAAE,2BAA2B,CAAC,CAAA;KAC1E,CAAA;IAID,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAC5B,CAAA;AAED,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUhC,CAAA;AAEF,MAAM,MAAM,oBAAoB,GAAG,mBAAmB,GAAG,oBAAoB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"parser_executable_types.js","sourceRoot":"","sources":["../../src/connect/parser_executable_types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parser_executable_types.js","sourceRoot":"","sources":["../../src/connect/parser_executable_types.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,22 @@ import { ValueMapping } from '../../connect/intrinsics';
9
9
  */
10
10
  export declare const PROPERTY_PLACEHOLDER = "PROPERTY_PLACEHOLDER";
11
11
  export declare function generateValueMapping(propSignature: string, figmaPropDef: FigmaRestApi.ComponentPropertyDefinition): ValueMapping;
12
+ export declare enum MatchableNameTypes {
13
+ Property = 0,
14
+ VariantValue = 1
15
+ }
16
+ type MatchableName = {
17
+ type: MatchableNameTypes;
18
+ name: string;
19
+ variantProperty?: string;
20
+ };
21
+ /**
22
+ * Builds a map of all properties and enum values, indexed by matchable name.
23
+ * @param componentPropertyDefinitions
24
+ * @returns A map of {name: values[]}. Each value is an array to avoid
25
+ * collisions between properties / enum values
26
+ */
27
+ export declare function buildMatchableNamesMap(componentPropertyDefinitions?: FigmaRestApi.Component['componentPropertyDefinitions']): Record<string, MatchableName[]>;
12
28
  export declare function generatePropMapping({ componentPropertyDefinitions, signature, }: {
13
29
  componentPropertyDefinitions: FigmaRestApi.Component['componentPropertyDefinitions'];
14
30
  signature: ComponentTypeSignature;
@@ -19,5 +35,9 @@ export declare function extractSignatureAndGeneratePropMapping({ exportName, fil
19
35
  projectInfo: ReactProjectInfo;
20
36
  componentPropertyDefinitions: FigmaRestApi.Component['componentPropertyDefinitions'];
21
37
  cmd: BaseCommand;
22
- }): PropMapping | undefined;
38
+ }): {
39
+ propMapping: PropMapping | undefined;
40
+ signature: ComponentTypeSignature | undefined;
41
+ };
42
+ export {};
23
43
  //# sourceMappingURL=prop_mapping.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"prop_mapping.d.ts","sourceRoot":"","sources":["../../../src/connect/wizard/prop_mapping.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAC7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAExD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AAEpD,OAAO,EAA4B,YAAY,EAAoB,MAAM,0BAA0B,CAAA;AAInG;;GAEG;AACH,eAAO,MAAM,oBAAoB,yBAAyB,CAAA;AAI1D,wBAAgB,oBAAoB,CAClC,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,YAAY,CAAC,2BAA2B,GACrD,YAAY,CAUd;AAwDD,wBAAgB,mBAAmB,CAAC,EAClC,4BAA4B,EAC5B,SAAS,GACV,EAAE;IACD,4BAA4B,EAAE,YAAY,CAAC,SAAS,CAAC,8BAA8B,CAAC,CAAA;IACpF,SAAS,EAAE,sBAAsB,CAAA;CAClC,GAAG,WAAW,CAkCd;AAED,wBAAgB,sCAAsC,CAAC,EACrD,UAAU,EACV,QAAQ,EACR,WAAW,EACX,4BAA4B,EAC5B,GAAG,GACJ,EAAE;IACD,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,gBAAgB,CAAA;IAC7B,4BAA4B,EAAE,YAAY,CAAC,SAAS,CAAC,8BAA8B,CAAC,CAAA;IACpF,GAAG,EAAE,WAAW,CAAA;CACjB,GAAG,WAAW,GAAG,SAAS,CAoB1B"}
1
+ {"version":3,"file":"prop_mapping.d.ts","sourceRoot":"","sources":["../../../src/connect/wizard/prop_mapping.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAC7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAExD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AAEpD,OAAO,EAA4B,YAAY,EAAoB,MAAM,0BAA0B,CAAA;AAInG;;GAEG;AACH,eAAO,MAAM,oBAAoB,yBAAyB,CAAA;AAI1D,wBAAgB,oBAAoB,CAClC,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,YAAY,CAAC,2BAA2B,GACrD,YAAY,CAUd;AAgED,oBAAY,kBAAkB;IAC5B,QAAQ,IAAA;IACR,YAAY,IAAA;CAEb;AAED,KAAK,aAAa,GAAG;IACnB,IAAI,EAAE,kBAAkB,CAAA;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,eAAe,CAAC,EAAE,MAAM,CAAA;CACzB,CAAA;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,4BAA4B,CAAC,EAAE,YAAY,CAAC,SAAS,CAAC,8BAA8B,CAAC,mCA+BtF;AAED,wBAAgB,mBAAmB,CAAC,EAClC,4BAA4B,EAC5B,SAAS,GACV,EAAE;IACD,4BAA4B,EAAE,YAAY,CAAC,SAAS,CAAC,8BAA8B,CAAC,CAAA;IACpF,SAAS,EAAE,sBAAsB,CAAA;CAClC,GAAG,WAAW,CAuFd;AAED,wBAAgB,sCAAsC,CAAC,EACrD,UAAU,EACV,QAAQ,EACR,WAAW,EACX,4BAA4B,EAC5B,GAAG,GACJ,EAAE;IACD,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,gBAAgB,CAAA;IAC7B,4BAA4B,EAAE,YAAY,CAAC,SAAS,CAAC,8BAA8B,CAAC,CAAA;IACpF,GAAG,EAAE,WAAW,CAAA;CACjB,GAAG;IACF,WAAW,EAAE,WAAW,GAAG,SAAS,CAAA;IACpC,SAAS,EAAE,sBAAsB,GAAG,SAAS,CAAA;CAC9C,CA6BA"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.extractSignatureAndGeneratePropMapping = exports.generatePropMapping = exports.generateValueMapping = exports.PROPERTY_PLACEHOLDER = void 0;
3
+ exports.extractSignatureAndGeneratePropMapping = exports.generatePropMapping = exports.buildMatchableNamesMap = exports.MatchableNameTypes = exports.generateValueMapping = exports.PROPERTY_PLACEHOLDER = void 0;
4
4
  const figma_rest_api_1 = require("../figma_rest_api");
5
5
  const fast_fuzzy_1 = require("fast-fuzzy");
6
6
  const logging_1 = require("../../common/logging");
@@ -29,10 +29,8 @@ exports.generateValueMapping = generateValueMapping;
29
29
  * These props have been matched by name and aren't guaranteed to
30
30
  * actually be related, so we return null if no suitable mapping
31
31
  */
32
- function generateIntrinsic({ propSignature: propSignatureWithOptionalModifier, figmaPropName, figmaPropDef, }) {
33
- const propSignature = propSignatureWithOptionalModifier.startsWith('?')
34
- ? propSignatureWithOptionalModifier.substring(1)
35
- : propSignatureWithOptionalModifier;
32
+ function generateIntrinsic({ propSignature, figmaPropName: figmaPropNameWithNodeId, figmaPropDef, }) {
33
+ const figmaPropName = stripNodeIdFromPropertyName(figmaPropNameWithNodeId);
36
34
  if (propSignature === 'string' && figmaPropDef.type === figma_rest_api_1.FigmaRestApi.ComponentPropertyType.Text) {
37
35
  return {
38
36
  kind: intrinsics_1.IntrinsicKind.String,
@@ -55,40 +53,135 @@ function generateIntrinsic({ propSignature: propSignatureWithOptionalModifier, f
55
53
  }
56
54
  if (propSignature.includes(' | ') &&
57
55
  figmaPropDef.type === figma_rest_api_1.FigmaRestApi.ComponentPropertyType.Variant) {
58
- return {
59
- kind: intrinsics_1.IntrinsicKind.Enum,
60
- args: {
61
- figmaPropName,
62
- valueMapping: generateValueMapping(propSignature, figmaPropDef),
63
- },
64
- };
56
+ const valueMapping = generateValueMapping(propSignature, figmaPropDef);
57
+ // Only valuable if some values were mapped
58
+ if (Object.keys(valueMapping).length > 0) {
59
+ return {
60
+ kind: intrinsics_1.IntrinsicKind.Enum,
61
+ args: {
62
+ figmaPropName,
63
+ valueMapping,
64
+ },
65
+ };
66
+ }
65
67
  }
66
68
  return null;
67
69
  }
70
+ function stripNodeIdFromPropertyName(propertyName) {
71
+ return propertyName.replace(/#\d+:\d+/, '');
72
+ }
73
+ const DELIMITERS_REGEX = /[\s-_]/g;
74
+ var MatchableNameTypes;
75
+ (function (MatchableNameTypes) {
76
+ MatchableNameTypes[MatchableNameTypes["Property"] = 0] = "Property";
77
+ MatchableNameTypes[MatchableNameTypes["VariantValue"] = 1] = "VariantValue";
78
+ // ChildLayer, // TODO
79
+ })(MatchableNameTypes || (exports.MatchableNameTypes = MatchableNameTypes = {}));
80
+ /**
81
+ * Builds a map of all properties and enum values, indexed by matchable name.
82
+ * @param componentPropertyDefinitions
83
+ * @returns A map of {name: values[]}. Each value is an array to avoid
84
+ * collisions between properties / enum values
85
+ */
86
+ function buildMatchableNamesMap(componentPropertyDefinitions) {
87
+ const matchableValues = {};
88
+ function add(matchableStr, definition) {
89
+ matchableValues[matchableStr] = matchableValues[matchableStr] || [];
90
+ matchableValues[matchableStr].push(definition);
91
+ }
92
+ Object.entries(componentPropertyDefinitions || {}).forEach(([propName, propDef]) => {
93
+ const matchableStr = stripNodeIdFromPropertyName(propName).replace(DELIMITERS_REGEX, '');
94
+ add(matchableStr, {
95
+ type: MatchableNameTypes.Property,
96
+ name: propName,
97
+ });
98
+ if (propDef.type === figma_rest_api_1.FigmaRestApi.ComponentPropertyType.Variant) {
99
+ propDef.variantOptions?.forEach((variantOption) => {
100
+ const variantMatchableStr = variantOption.replace(DELIMITERS_REGEX, '');
101
+ add(variantMatchableStr, {
102
+ type: MatchableNameTypes.VariantValue,
103
+ name: variantOption,
104
+ variantProperty: propName,
105
+ });
106
+ });
107
+ }
108
+ });
109
+ return matchableValues;
110
+ }
111
+ exports.buildMatchableNamesMap = buildMatchableNamesMap;
68
112
  function generatePropMapping({ componentPropertyDefinitions, signature, }) {
69
113
  const propMapping = {};
70
- // Remove whitespace for closer matches with code props
71
- const matchableFigmaProperties = Object.keys(componentPropertyDefinitions || {}).reduce((acc, propName) => {
72
- const withoutWhitespace = propName.replace(/\s/g, '');
73
- acc[withoutWhitespace] = propName;
74
- return acc;
75
- }, {});
76
- const searchSpace = Object.keys(matchableFigmaProperties);
114
+ const matchableNames = buildMatchableNamesMap(componentPropertyDefinitions);
115
+ const searchSpace = Object.keys(matchableNames);
77
116
  const searcher = new fast_fuzzy_1.Searcher(searchSpace);
78
- Object.entries(signature).forEach(([propName, propSignature]) => {
117
+ function findBestMatch(matchData, { score, where }) {
118
+ for (const nameMatches of matchData) {
119
+ if (nameMatches.score < score) {
120
+ return null;
121
+ }
122
+ const items = matchableNames[nameMatches.item];
123
+ const match = items.find(where);
124
+ if (match) {
125
+ return match;
126
+ }
127
+ }
128
+ return null;
129
+ }
130
+ for (const [propName, propSignatureWithOptionalModifier] of Object.entries(signature)) {
131
+ const propSignature = propSignatureWithOptionalModifier.startsWith('?')
132
+ ? propSignatureWithOptionalModifier.substring(1)
133
+ : propSignatureWithOptionalModifier;
79
134
  const results = searcher.search(propName, { returnMatchData: true });
80
- if (results.length > 0) {
81
- const { item, score } = results[0];
82
- const figmaPropName = matchableFigmaProperties[item];
83
- const figmaPropDef = componentPropertyDefinitions[figmaPropName];
84
- if (score > PROP_MINIMUM_MATCH_THRESHOLD) {
85
- const intrinsic = generateIntrinsic({ propSignature, figmaPropName, figmaPropDef });
86
- if (intrinsic) {
87
- propMapping[propName] = intrinsic;
135
+ if (results.length === 0) {
136
+ continue;
137
+ }
138
+ /**
139
+ * First, look for matching property names with compatible types
140
+ */
141
+ const matchingProperty = findBestMatch(results, {
142
+ score: PROP_MINIMUM_MATCH_THRESHOLD,
143
+ where: (item) => item.type === MatchableNameTypes.Property,
144
+ });
145
+ if (matchingProperty) {
146
+ const { name: figmaPropName } = matchingProperty;
147
+ const intrinsic = generateIntrinsic({
148
+ propSignature,
149
+ figmaPropName,
150
+ figmaPropDef: componentPropertyDefinitions[figmaPropName],
151
+ });
152
+ if (intrinsic) {
153
+ propMapping[propName] = intrinsic;
154
+ }
155
+ }
156
+ /**
157
+ * Then if no match AND a boolean prop, look for matching variant values, e.g:
158
+ *
159
+ * disabled: figma.enum('State', {
160
+ * Disabled: true,
161
+ * })
162
+ */
163
+ if (!propMapping[propName] && propSignature === 'false | true') {
164
+ const matchingProperty = findBestMatch(results, {
165
+ score: PROP_MINIMUM_MATCH_THRESHOLD,
166
+ where: (item) => item.type === MatchableNameTypes.VariantValue,
167
+ });
168
+ if (matchingProperty) {
169
+ const { name: variantValue, variantProperty } = matchingProperty;
170
+ if (!variantProperty) {
171
+ throw new Error('Expected variant property'); // satisfying TS
88
172
  }
173
+ propMapping[propName] = {
174
+ kind: intrinsics_1.IntrinsicKind.Enum,
175
+ args: {
176
+ figmaPropName: variantProperty,
177
+ valueMapping: {
178
+ [variantValue]: true,
179
+ },
180
+ },
181
+ };
89
182
  }
90
183
  }
91
- });
184
+ }
92
185
  return propMapping;
93
186
  }
94
187
  exports.generatePropMapping = generatePropMapping;
@@ -100,17 +193,26 @@ function extractSignatureAndGeneratePropMapping({ exportName, filepath, projectI
100
193
  sourceFilePath: filepath,
101
194
  projectInfo,
102
195
  });
196
+ if (cmd.verbose && Object.keys(signature).length === 0) {
197
+ logging_1.logger.warn(`No TS signature found for "${exportName}" in ${filepath}`);
198
+ }
103
199
  }
104
200
  catch (e) {
105
201
  if (cmd.verbose) {
106
- logging_1.logger.warn(`Could not extract signature for "${exportName}" in ${filepath}`);
202
+ logging_1.logger.warn(`Could not extract TS signature for "${exportName}" in ${filepath}`);
107
203
  }
108
- return undefined;
204
+ return {
205
+ propMapping: undefined,
206
+ signature: undefined,
207
+ };
109
208
  }
110
- return generatePropMapping({
111
- componentPropertyDefinitions,
112
- signature,
113
- });
209
+ return {
210
+ propMapping: generatePropMapping({
211
+ componentPropertyDefinitions,
212
+ signature,
213
+ }),
214
+ signature: signature,
215
+ };
114
216
  }
115
217
  exports.extractSignatureAndGeneratePropMapping = extractSignatureAndGeneratePropMapping;
116
218
  //# sourceMappingURL=prop_mapping.js.map