@figma/code-connect 0.1.0 → 0.1.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.
- package/README.md +21 -15
- package/dist/commands/connect.js +21 -21
- package/dist/commands/connect.js.map +1 -1
- package/dist/common/api.d.ts +29 -5
- package/dist/common/api.d.ts.map +1 -1
- package/dist/common/external.d.ts +1 -0
- package/dist/common/external.d.ts.map +1 -1
- package/dist/common/external.js.map +1 -1
- package/dist/common/figma_connect.d.ts +2 -2
- package/dist/common/figma_connect.d.ts.map +1 -1
- package/dist/common/intrinsics.d.ts +1 -1
- package/dist/common/intrinsics.d.ts.map +1 -1
- package/dist/common/intrinsics.js +10 -6
- package/dist/common/intrinsics.js.map +1 -1
- package/dist/common/project.d.ts +36 -21
- package/dist/common/project.d.ts.map +1 -1
- package/dist/common/project.js +30 -3
- package/dist/common/project.js.map +1 -1
- package/dist/connect/create.d.ts +1 -1
- package/dist/connect/create.d.ts.map +1 -1
- package/dist/connect/create.js +6 -5
- package/dist/connect/create.js.map +1 -1
- package/dist/connect/helpers.d.ts.map +1 -1
- package/dist/connect/helpers.js +11 -6
- package/dist/connect/helpers.js.map +1 -1
- package/dist/connect/upload.d.ts +2 -2
- package/dist/connect/upload.d.ts.map +1 -1
- package/dist/connect/upload.js +3 -3
- package/dist/connect/upload.js.map +1 -1
- package/dist/connect/validation.d.ts +2 -2
- package/dist/connect/validation.d.ts.map +1 -1
- package/dist/connect/validation.js +3 -3
- package/dist/connect/validation.js.map +1 -1
- package/dist/{common → react}/parser.d.ts +8 -8
- package/dist/react/parser.d.ts.map +1 -0
- package/dist/{common → react}/parser.js +240 -139
- package/dist/react/parser.js.map +1 -0
- package/dist/react/parser_template_helpers.d.ts.map +1 -0
- package/dist/{common → react}/parser_template_helpers.js +10 -1
- package/dist/react/parser_template_helpers.js.map +1 -0
- package/dist/storybook/convert.d.ts +4 -4
- package/dist/storybook/convert.d.ts.map +1 -1
- package/dist/storybook/convert.js +16 -14
- package/dist/storybook/convert.js.map +1 -1
- package/dist/{common → typescript}/compiler.d.ts +1 -1
- package/dist/typescript/compiler.d.ts.map +1 -0
- package/dist/{common → typescript}/compiler.js +21 -2
- package/dist/typescript/compiler.js.map +1 -0
- package/package.json +4 -2
- package/dist/common/compiler.d.ts.map +0 -1
- package/dist/common/compiler.js.map +0 -1
- package/dist/common/parser.d.ts.map +0 -1
- package/dist/common/parser.js.map +0 -1
- package/dist/common/parser_template_helpers.d.ts.map +0 -1
- package/dist/common/parser_template_helpers.js.map +0 -1
- /package/dist/{common → react}/parser_template_helpers.d.ts +0 -0
|
@@ -5,10 +5,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.parse = exports.getDefaultTemplate = exports.parseRenderFunction = exports.isFigmaConnectFile = exports.parseComponentMetadata = exports.parsePropsObject = exports.InternalError = exports.ParserError = void 0;
|
|
7
7
|
const typescript_1 = __importDefault(require("typescript"));
|
|
8
|
-
const project_1 = require("
|
|
9
|
-
const logging_1 = require("
|
|
10
|
-
const compiler_1 = require("
|
|
11
|
-
const intrinsics_1 = require("
|
|
8
|
+
const project_1 = require("../common/project");
|
|
9
|
+
const logging_1 = require("../common/logging");
|
|
10
|
+
const compiler_1 = require("../typescript/compiler");
|
|
11
|
+
const intrinsics_1 = require("../common/intrinsics");
|
|
12
12
|
const parser_template_helpers_1 = require("./parser_template_helpers");
|
|
13
13
|
class ParserError extends Error {
|
|
14
14
|
constructor(message, context) {
|
|
@@ -153,7 +153,7 @@ function getImportsForIdentifiers({ sourceFile }, _identifiers) {
|
|
|
153
153
|
return imports;
|
|
154
154
|
}
|
|
155
155
|
/**
|
|
156
|
-
* Parsers the `props` field of a `
|
|
156
|
+
* Parsers the `props` field of a `figma.connect()` call, returning a mapping of
|
|
157
157
|
* prop names to their respective intrinsic types
|
|
158
158
|
*
|
|
159
159
|
* @param objectLiteral An object literal expression
|
|
@@ -171,7 +171,7 @@ function parsePropsObject(objectLiteral, parserContext) {
|
|
|
171
171
|
exports.parsePropsObject = parsePropsObject;
|
|
172
172
|
/**
|
|
173
173
|
* Extract metadata about the referenced React component. Used by both the
|
|
174
|
-
*
|
|
174
|
+
* Code Connect and Storybook commands.
|
|
175
175
|
*
|
|
176
176
|
* @param parserContext Parser context
|
|
177
177
|
* @param componentSymbol The ts.Symbol from the metadata referencing the
|
|
@@ -263,24 +263,24 @@ async function parseComponentMetadata(node, { checker, sourceFile }) {
|
|
|
263
263
|
}
|
|
264
264
|
exports.parseComponentMetadata = parseComponentMetadata;
|
|
265
265
|
/**
|
|
266
|
-
* Checks if an AST node is a `
|
|
266
|
+
* Checks if an AST node is a `figma.connect()` call
|
|
267
267
|
*
|
|
268
268
|
* @param node AST node
|
|
269
269
|
* @param sourceFile Source file
|
|
270
|
-
* @returns True if the node is a `
|
|
270
|
+
* @returns True if the node is a `figma.connect()` call
|
|
271
271
|
*/
|
|
272
272
|
function isFigmaConnectCall(node, sourceFile) {
|
|
273
273
|
return (typescript_1.default.isCallExpression(node) && node.expression.getText(sourceFile).includes(intrinsics_1.FIGMA_CONNECT_CALL));
|
|
274
274
|
}
|
|
275
275
|
/**
|
|
276
|
-
* Checks if a file contains
|
|
276
|
+
* Checks if a file contains Code Connect by looking for the `figma.connect()` function call
|
|
277
277
|
*
|
|
278
278
|
* @param program
|
|
279
279
|
* @param file
|
|
280
280
|
* @returns
|
|
281
281
|
*/
|
|
282
282
|
function isFigmaConnectFile(program, file) {
|
|
283
|
-
// We don't support
|
|
283
|
+
// We don't support Code Connect in JSX and this throws an error if we let it proceed
|
|
284
284
|
if (!file.endsWith('.tsx')) {
|
|
285
285
|
return false;
|
|
286
286
|
}
|
|
@@ -297,7 +297,7 @@ function isFigmaConnectFile(program, file) {
|
|
|
297
297
|
}
|
|
298
298
|
exports.isFigmaConnectFile = isFigmaConnectFile;
|
|
299
299
|
/**
|
|
300
|
-
* Parses the `links` field of a `
|
|
300
|
+
* Parses the `links` field of a `figma.connect()` call
|
|
301
301
|
*
|
|
302
302
|
* @param linksArray an ArrayLiteralExpression
|
|
303
303
|
* @param parserContext Parser context
|
|
@@ -345,7 +345,23 @@ function parseVariant(variantMap, sourceFile, checker) {
|
|
|
345
345
|
});
|
|
346
346
|
}
|
|
347
347
|
/**
|
|
348
|
-
* Parses the
|
|
348
|
+
* Parses the `imports` field of a `figma.connect()` call
|
|
349
|
+
*
|
|
350
|
+
* @param importsArray an ArrayLiteralExpression
|
|
351
|
+
* @param parserContext Parser context
|
|
352
|
+
* @returns An array of link objects
|
|
353
|
+
*/
|
|
354
|
+
function parseImports(importsArray, parserContext) {
|
|
355
|
+
const { sourceFile } = parserContext;
|
|
356
|
+
const imports = [];
|
|
357
|
+
for (const element of importsArray.elements) {
|
|
358
|
+
(0, compiler_1.assertIsStringLiteral)(element, sourceFile, `'imports' must be an array literal with strings`);
|
|
359
|
+
imports.push((0, compiler_1.stripQuotes)(element));
|
|
360
|
+
}
|
|
361
|
+
return imports;
|
|
362
|
+
}
|
|
363
|
+
/**
|
|
364
|
+
* Parses the render function passed to `figma.connect()`, extracting the code and
|
|
349
365
|
* any import statements matching the JSX elements used in the function body
|
|
350
366
|
*
|
|
351
367
|
* @param exp A function or arrow function expression
|
|
@@ -423,9 +439,22 @@ function parseRenderFunction(exp, parserContext, propMappings) {
|
|
|
423
439
|
// <Button prop1={__PROP__("prop1")} prop2={__PROP__("prop2")} />.
|
|
424
440
|
if (typescript_1.default.isJsxSpreadAttribute(node) &&
|
|
425
441
|
typescript_1.default.isIdentifier(node.expression) &&
|
|
426
|
-
|
|
442
|
+
// example: (props) => (...)
|
|
443
|
+
(node.expression.getText() === propsParameter.name.getText() ||
|
|
444
|
+
// example: ({ prop1, prop2 ...props }) => (...)
|
|
445
|
+
(typescript_1.default.isObjectBindingPattern(propsParameter.name) &&
|
|
446
|
+
propsParameter.name.elements.find((el) => el.dotDotDotToken && el.name.getText() === node.expression?.getText())))) {
|
|
447
|
+
// if we have an object binding pattern ({ prop1, prop2 ...props }),
|
|
448
|
+
// exclude the props that are already destructured (prop1, prop2)
|
|
449
|
+
const propsToExclude = typescript_1.default.isObjectBindingPattern(propsParameter.name)
|
|
450
|
+
? propsParameter.name.elements
|
|
451
|
+
.filter((el) => !el.dotDotDotToken)
|
|
452
|
+
.map((el) => el.name.getText())
|
|
453
|
+
: [];
|
|
427
454
|
const props = propMappings
|
|
428
|
-
? Object.keys(propMappings)
|
|
455
|
+
? Object.keys(propMappings)
|
|
456
|
+
.filter((prop) => !propsToExclude.includes(prop))
|
|
457
|
+
.map((prop) => {
|
|
429
458
|
return typescript_1.default.factory.createJsxAttribute(typescript_1.default.factory.createIdentifier(prop), createPropPlaceholder(prop, node, true));
|
|
430
459
|
})
|
|
431
460
|
: [];
|
|
@@ -479,6 +508,11 @@ function parseRenderFunction(exp, parserContext, propMappings) {
|
|
|
479
508
|
// Replace React children placeholders like `${__PROP__("propName")}` with
|
|
480
509
|
// `${propName}`. These never need special treatment based on their type.
|
|
481
510
|
exampleCode = exampleCode.replace(/\{__PROP__\("([A-Za-z]+)"\)\}/g, '${$1}');
|
|
511
|
+
// Replace object values like `{ prop: __PROP__("propName") }` with
|
|
512
|
+
// `{ prop: ${propName} }`. These never need special treatment based on their type.
|
|
513
|
+
exampleCode = exampleCode.replace(/([A-Za-z0-9]+):\s+__PROP__\("([A-Za-z]+)"\)/g, (_match, objectKey, figmaPropName) => {
|
|
514
|
+
return `${objectKey}: \${${figmaPropName}}`;
|
|
515
|
+
});
|
|
482
516
|
// Generate the template code
|
|
483
517
|
// Inject React-specific template helper functions
|
|
484
518
|
templateCode = (0, parser_template_helpers_1.getParsedTemplateHelpersString)() + '\n\n';
|
|
@@ -514,7 +548,7 @@ function parseRenderFunction(exp, parserContext, propMappings) {
|
|
|
514
548
|
exports.parseRenderFunction = parseRenderFunction;
|
|
515
549
|
/**
|
|
516
550
|
* This wrapper function ensures that property names are type checked in case
|
|
517
|
-
* we make changes to the `
|
|
551
|
+
* we make changes to the `figma.connect()` interface.
|
|
518
552
|
*/
|
|
519
553
|
function makeConfigPropertyParser({ key, predicate, errorMessage, }) {
|
|
520
554
|
return (configArg, parserContext) => {
|
|
@@ -536,90 +570,141 @@ function makeFunctionArgumentParser({ index, predicate, required, errorMessage,
|
|
|
536
570
|
return (0, compiler_1.parseFunctionArgument)(node, parserContext, index, predicate, required, errorMessage);
|
|
537
571
|
};
|
|
538
572
|
}
|
|
539
|
-
function
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
\`${intrinsics_1.FIGMA_CONNECT_CALL}(Button, 'https://www.figma.com/file/123?node-id=1-1')\``;
|
|
552
|
-
const index = 1;
|
|
553
|
-
const required = true;
|
|
554
|
-
let arg = (0, compiler_1.parseFunctionArgument)(node, parserContext, index, (0, compiler_1.isOneOf)([typescript_1.default.isIdentifier, typescript_1.default.isStringLiteral]), required, invalidTypeErrorMsg);
|
|
555
|
-
if (arg && typescript_1.default.isIdentifier(arg)) {
|
|
556
|
-
const symbol = checker.getSymbolAtLocation(arg);
|
|
557
|
-
if (symbol) {
|
|
558
|
-
const decl = symbol.valueDeclaration;
|
|
559
|
-
if (decl &&
|
|
560
|
-
typescript_1.default.isVariableDeclaration(decl) &&
|
|
561
|
-
decl.initializer &&
|
|
562
|
-
typescript_1.default.isStringLiteral(decl.initializer)) {
|
|
563
|
-
arg = decl.initializer;
|
|
564
|
-
}
|
|
565
|
-
}
|
|
566
|
-
}
|
|
567
|
-
// If we followed the identifier to its declaration and it's not a string literal,
|
|
568
|
-
// throw an error
|
|
569
|
-
if (!arg || !typescript_1.default.isStringLiteral(arg)) {
|
|
570
|
-
throw new ParserError(invalidTypeErrorMsg, {
|
|
571
|
-
node: arg,
|
|
572
|
-
sourceFile: parserContext.sourceFile,
|
|
573
|
-
});
|
|
573
|
+
function followIdentifierToStringLiteralDeclaration(node, parserContext, errMessage) {
|
|
574
|
+
const { checker } = parserContext;
|
|
575
|
+
let result = node;
|
|
576
|
+
if (node && typescript_1.default.isIdentifier(node)) {
|
|
577
|
+
const symbol = checker.getSymbolAtLocation(node);
|
|
578
|
+
if (symbol) {
|
|
579
|
+
const decl = symbol.valueDeclaration;
|
|
580
|
+
if (decl &&
|
|
581
|
+
typescript_1.default.isVariableDeclaration(decl) &&
|
|
582
|
+
decl.initializer &&
|
|
583
|
+
typescript_1.default.isStringLiteral(decl.initializer)) {
|
|
584
|
+
result = decl.initializer;
|
|
574
585
|
}
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
})
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
\`${intrinsics_1.FIGMA_CONNECT_CALL}(Button, 'https://www.figma.com/file/123?node-id=1-1'
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
})
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
586
|
+
}
|
|
587
|
+
}
|
|
588
|
+
// If we followed the identifier to its declaration and it's not a string literal,
|
|
589
|
+
// throw an error
|
|
590
|
+
if (!result || !typescript_1.default.isStringLiteral(result)) {
|
|
591
|
+
throw new ParserError(errMessage, {
|
|
592
|
+
node: result,
|
|
593
|
+
sourceFile: parserContext.sourceFile,
|
|
594
|
+
});
|
|
595
|
+
}
|
|
596
|
+
return result;
|
|
597
|
+
}
|
|
598
|
+
function parseFigmaConnectArgs(node, parserContext) {
|
|
599
|
+
const required = true;
|
|
600
|
+
const first = (0, compiler_1.parseFunctionArgument)(node, parserContext, 0, (0, compiler_1.isOneOf)([typescript_1.default.isIdentifier, typescript_1.default.isPropertyAccessExpression, typescript_1.default.isStringLiteral]), required, `\`${intrinsics_1.FIGMA_CONNECT_CALL}\` must be called with a reference to a Component or a Figma Component URL as the first argument. Example usage:
|
|
601
|
+
\`${intrinsics_1.FIGMA_CONNECT_CALL}(Button, 'https://www.figma.com/file/123?node-id=1-1')\``);
|
|
602
|
+
let figmaNodeUrlArg;
|
|
603
|
+
let componentArg;
|
|
604
|
+
let configObjArgIndex;
|
|
605
|
+
// This function has two signatures. If the first arg is a string literal, it's the Figma node URL, and
|
|
606
|
+
// it won't have a component reference.
|
|
607
|
+
if (typescript_1.default.isStringLiteral(first)) {
|
|
608
|
+
figmaNodeUrlArg = first;
|
|
609
|
+
componentArg = undefined;
|
|
610
|
+
configObjArgIndex = 1;
|
|
611
|
+
}
|
|
612
|
+
else {
|
|
613
|
+
// If the first argument is not a string literal, it must be a component reference,
|
|
614
|
+
// and the second argument must be the Figma node URL
|
|
615
|
+
componentArg = first;
|
|
616
|
+
configObjArgIndex = 2;
|
|
617
|
+
const invalidTypeErrorMsg = `The second argument to ${intrinsics_1.FIGMA_CONNECT_CALL}() must be a string literal (the URL of the Figma node). Example usage:
|
|
618
|
+
\`${intrinsics_1.FIGMA_CONNECT_CALL}(Button, 'https://www.figma.com/file/123?node-id=1-1')\``;
|
|
619
|
+
let arg = (0, compiler_1.parseFunctionArgument)(node, parserContext, 1, (0, compiler_1.isOneOf)([typescript_1.default.isIdentifier, typescript_1.default.isStringLiteral]), required, invalidTypeErrorMsg);
|
|
620
|
+
figmaNodeUrlArg = followIdentifierToStringLiteralDeclaration(arg, parserContext, invalidTypeErrorMsg);
|
|
621
|
+
}
|
|
622
|
+
const configObjArg = (0, compiler_1.parseFunctionArgument)(node, parserContext, configObjArgIndex, typescript_1.default.isObjectLiteralExpression, false /* not required */, `The third argument to ${intrinsics_1.FIGMA_CONNECT_CALL}() must be an object literal. Example usage:
|
|
623
|
+
\`${intrinsics_1.FIGMA_CONNECT_CALL}(Button, 'https://www.figma.com/file/123?node-id=1-1', { render: () => <Button /> })\``);
|
|
624
|
+
return {
|
|
625
|
+
componentArg,
|
|
626
|
+
figmaNodeUrlArg,
|
|
627
|
+
configObjArg,
|
|
628
|
+
};
|
|
629
|
+
}
|
|
630
|
+
function parseConfigObjectArg(configArg, parserContext) {
|
|
631
|
+
if (!configArg) {
|
|
632
|
+
return {
|
|
633
|
+
propsArg: undefined,
|
|
634
|
+
exampleArg: undefined,
|
|
635
|
+
variantArg: undefined,
|
|
636
|
+
importsArg: undefined,
|
|
637
|
+
linksArg: undefined,
|
|
638
|
+
};
|
|
639
|
+
}
|
|
640
|
+
const propsArg = (0, compiler_1.parsePropertyOfType)({
|
|
641
|
+
objectLiteralNode: configArg,
|
|
642
|
+
propertyName: 'props',
|
|
643
|
+
predicate: typescript_1.default.isObjectLiteralExpression,
|
|
644
|
+
parserContext,
|
|
645
|
+
required: false,
|
|
646
|
+
errorMessage: `The 'props' property must be an object literal. Example usage:
|
|
647
|
+
\`${intrinsics_1.FIGMA_CONNECT_CALL}(Button, 'https://www.figma.com/file/123?node-id=1-1', {
|
|
648
|
+
props: {
|
|
649
|
+
disabled: figma.boolean('Disabled'),
|
|
650
|
+
text: figma.string('TextContent'),
|
|
651
|
+
}
|
|
652
|
+
})\``,
|
|
653
|
+
});
|
|
654
|
+
const exampleArg = (0, compiler_1.parsePropertyOfType)({
|
|
655
|
+
objectLiteralNode: configArg,
|
|
656
|
+
propertyName: 'example',
|
|
657
|
+
predicate: (0, compiler_1.isOneOf)([typescript_1.default.isArrowFunction, typescript_1.default.isFunctionExpression]),
|
|
658
|
+
parserContext,
|
|
659
|
+
required: false,
|
|
660
|
+
errorMessage: `The 'example' property must be an inline function or arrow function. Example usage:
|
|
661
|
+
\`${intrinsics_1.FIGMA_CONNECT_CALL}(Button, 'https://www.figma.com/file/123?node-id=1-1', {
|
|
662
|
+
example: () => <Button />
|
|
663
|
+
})\``,
|
|
664
|
+
});
|
|
665
|
+
const variantArg = (0, compiler_1.parsePropertyOfType)({
|
|
666
|
+
objectLiteralNode: configArg,
|
|
667
|
+
propertyName: 'variant',
|
|
668
|
+
predicate: typescript_1.default.isObjectLiteralExpression,
|
|
669
|
+
parserContext,
|
|
670
|
+
required: false,
|
|
671
|
+
errorMessage: `The 'variant' property must be an object literal. Example usage:
|
|
672
|
+
\`${intrinsics_1.FIGMA_CONNECT_CALL}(Button, 'https://www.figma.com/file/123?node-id=1-1', {
|
|
673
|
+
variant: {
|
|
674
|
+
"Has Icon": true
|
|
675
|
+
}
|
|
676
|
+
})\``,
|
|
677
|
+
});
|
|
678
|
+
const linksArg = (0, compiler_1.parsePropertyOfType)({
|
|
679
|
+
objectLiteralNode: configArg,
|
|
680
|
+
propertyName: 'links',
|
|
681
|
+
predicate: typescript_1.default.isArrayLiteralExpression,
|
|
682
|
+
parserContext,
|
|
683
|
+
required: false,
|
|
684
|
+
errorMessage: `The 'links' property must be an array literal. Example usage:
|
|
685
|
+
\`${intrinsics_1.FIGMA_CONNECT_CALL}(Button, 'https://www.figma.com/file/123?node-id=1-1', {
|
|
686
|
+
links: [
|
|
687
|
+
{ name: 'Storybook', url: 'https://storybook.com' }
|
|
688
|
+
]
|
|
689
|
+
})\``,
|
|
690
|
+
});
|
|
691
|
+
const importsArg = (0, compiler_1.parsePropertyOfType)({
|
|
692
|
+
objectLiteralNode: configArg,
|
|
693
|
+
propertyName: 'imports',
|
|
694
|
+
predicate: typescript_1.default.isArrayLiteralExpression,
|
|
695
|
+
parserContext,
|
|
696
|
+
required: false,
|
|
697
|
+
errorMessage: `The 'imports' property must be an array literal. Example usage:
|
|
698
|
+
\`${intrinsics_1.FIGMA_CONNECT_CALL}(Button, 'https://www.figma.com/file/123?node-id=1-1', {
|
|
699
|
+
imports: ['import { Button } from "./Button"']
|
|
700
|
+
})\``,
|
|
701
|
+
});
|
|
702
|
+
return {
|
|
703
|
+
propsArg,
|
|
704
|
+
exampleArg,
|
|
705
|
+
variantArg,
|
|
706
|
+
linksArg,
|
|
707
|
+
importsArg,
|
|
623
708
|
};
|
|
624
709
|
}
|
|
625
710
|
function getDefaultTemplate(componentMetadata) {
|
|
@@ -630,62 +715,78 @@ exports.getDefaultTemplate = getDefaultTemplate;
|
|
|
630
715
|
async function parseDoc(node, parserContext, repoUrl) {
|
|
631
716
|
const { checker, sourceFile, config } = parserContext;
|
|
632
717
|
// Parse the arguments to the `Figma.connect()` call
|
|
633
|
-
const
|
|
718
|
+
const { componentArg, figmaNodeUrlArg, configObjArg } = parseFigmaConnectArgs(node, parserContext);
|
|
634
719
|
// The ones with ! are definitely defined because their parser fn has required: true,
|
|
635
720
|
// but I couldn't work out how to model that in TypeScript
|
|
636
|
-
const
|
|
637
|
-
const figmaNodeUrlArg = args.parseFigmaNodeUrl(node, parserContext);
|
|
638
|
-
const configObjArg = args.parseConfig(node, parserContext);
|
|
639
|
-
const propsArg = configObjArg && args.parseProps(configObjArg, parserContext);
|
|
640
|
-
const exampleArg = configObjArg && args.parseExample(configObjArg, parserContext);
|
|
641
|
-
const variantArg = configObjArg && args.parseVariant(configObjArg, parserContext);
|
|
642
|
-
const linksArg = configObjArg && args.parseLinks(configObjArg, parserContext);
|
|
721
|
+
const { propsArg, exampleArg, variantArg, linksArg, importsArg } = parseConfigObjectArg(configObjArg, parserContext);
|
|
643
722
|
let figmaNode = (0, compiler_1.stripQuotes)(figmaNodeUrlArg);
|
|
644
723
|
if (config?.documentUrlSubstitutions) {
|
|
645
724
|
Object.entries(config.documentUrlSubstitutions).forEach(([from, to]) => {
|
|
646
725
|
figmaNode = figmaNode.replace(from, to);
|
|
647
726
|
});
|
|
648
727
|
}
|
|
649
|
-
const metadata =
|
|
728
|
+
const metadata = componentArg
|
|
729
|
+
? await parseComponentMetadata(componentArg, parserContext)
|
|
730
|
+
: undefined;
|
|
650
731
|
const props = propsArg ? parsePropsObject(propsArg, parserContext) : undefined;
|
|
651
732
|
const render = exampleArg ? parseRenderFunction(exampleArg, parserContext, props) : undefined;
|
|
652
733
|
const variant = variantArg ? parseVariant(variantArg, sourceFile, checker) : undefined;
|
|
653
734
|
const links = linksArg ? parseLinks(linksArg, parserContext) : undefined;
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
const template = render?.code ?? getDefaultTemplate(metadata);
|
|
658
|
-
if (imports.length === 0) {
|
|
659
|
-
// If no imports were found, it might mean that the component is not imported, or
|
|
660
|
-
// that the `figma.connect` call is in the same file as the component. In the latter
|
|
661
|
-
// case - we'll want to generate one
|
|
662
|
-
const fileName = metadata.source.split('/').pop()?.split('.')[0];
|
|
663
|
-
imports = [
|
|
664
|
-
{
|
|
665
|
-
statement: `import { ${metadata.component} } from './${fileName}'`,
|
|
666
|
-
file: sourceFile.fileName,
|
|
667
|
-
},
|
|
668
|
-
];
|
|
735
|
+
let resolvedImports;
|
|
736
|
+
if (importsArg) {
|
|
737
|
+
resolvedImports = parseImports(importsArg, parserContext);
|
|
669
738
|
}
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
739
|
+
else {
|
|
740
|
+
// If no template function was provided, construct one and add the import
|
|
741
|
+
// statement for the component
|
|
742
|
+
let imports = render?.imports
|
|
743
|
+
? render.imports
|
|
744
|
+
: metadata !== undefined
|
|
745
|
+
? getImportsForIdentifiers(parserContext, [metadata.component])
|
|
746
|
+
: [];
|
|
747
|
+
if (imports.length === 0 && metadata?.component) {
|
|
748
|
+
// If no imports were found, it might mean that the component is not imported, or
|
|
749
|
+
// that the `figma.connect` call is in the same file as the component. In the latter
|
|
750
|
+
// case - we'll want to generate one
|
|
751
|
+
const fileName = metadata.source.split('/').pop()?.split('.')[0];
|
|
752
|
+
imports = [
|
|
753
|
+
{
|
|
754
|
+
statement: `import { ${metadata.component} } from './${fileName}'`,
|
|
755
|
+
file: sourceFile.fileName,
|
|
756
|
+
},
|
|
757
|
+
];
|
|
676
758
|
}
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
759
|
+
resolvedImports =
|
|
760
|
+
imports.map((imp) => {
|
|
761
|
+
if (config) {
|
|
762
|
+
const resolvedPath = (0, project_1.resolveImportPath)(imp.file, config);
|
|
763
|
+
if (resolvedPath) {
|
|
764
|
+
return imp.statement.replace(/['"]([\.\/a-zA-Z0-9]*)['"]/, `'${resolvedPath}'`);
|
|
765
|
+
}
|
|
766
|
+
}
|
|
767
|
+
return imp.statement;
|
|
768
|
+
}) ?? [];
|
|
769
|
+
}
|
|
770
|
+
if (resolvedImports.length === 0 && metadata?.component) {
|
|
680
771
|
logging_1.logger.warn(`The import statement for ${metadata.component} could not be automatically resolved, make sure the component is imported (if not colocating) and that the path mappings are correct in your figma.config.json`);
|
|
681
772
|
}
|
|
773
|
+
let template;
|
|
774
|
+
if (render?.code) {
|
|
775
|
+
template = render.code;
|
|
776
|
+
}
|
|
777
|
+
else if (metadata) {
|
|
778
|
+
template = getDefaultTemplate(metadata);
|
|
779
|
+
}
|
|
780
|
+
else {
|
|
781
|
+
throw new ParserError(`${intrinsics_1.FIGMA_CONNECT_CALL}() requires either a component argument or an example function`, { sourceFile, node });
|
|
782
|
+
}
|
|
682
783
|
return {
|
|
683
784
|
figmaNode,
|
|
684
785
|
label: 'React',
|
|
685
786
|
language: 'typescript',
|
|
686
|
-
component: metadata
|
|
687
|
-
source: (0, project_1.getRemoteFileUrl)(metadata.source, repoUrl),
|
|
688
|
-
sourceLocation: { line: metadata.line },
|
|
787
|
+
component: metadata?.component,
|
|
788
|
+
source: metadata?.source ? (0, project_1.getRemoteFileUrl)(metadata.source, repoUrl) : '',
|
|
789
|
+
sourceLocation: metadata?.line ? { line: metadata.line } : { line: -1 },
|
|
689
790
|
variant,
|
|
690
791
|
template,
|
|
691
792
|
templateData: {
|
|
@@ -712,25 +813,25 @@ async function parse(program, file, repoUrl, config, debug) {
|
|
|
712
813
|
sourceFile,
|
|
713
814
|
config,
|
|
714
815
|
};
|
|
715
|
-
const
|
|
816
|
+
const codeConnectObjects = [];
|
|
716
817
|
const nodes = [parserContext.sourceFile];
|
|
717
818
|
while (nodes.length > 0) {
|
|
718
819
|
const node = nodes.shift();
|
|
719
820
|
if (isFigmaConnectCall(node, parserContext.sourceFile)) {
|
|
720
821
|
const doc = await parseDoc(node, parserContext, repoUrl);
|
|
721
822
|
if (doc) {
|
|
722
|
-
|
|
823
|
+
codeConnectObjects.push(doc);
|
|
723
824
|
}
|
|
724
825
|
}
|
|
725
826
|
nodes.push(...node.getChildren(parserContext.sourceFile));
|
|
726
827
|
}
|
|
727
|
-
if (
|
|
728
|
-
throw new ParserError(`Didn't find any calls to
|
|
828
|
+
if (codeConnectObjects.length === 0) {
|
|
829
|
+
throw new ParserError(`Didn't find any calls to figma.connect()`, {
|
|
729
830
|
sourceFile: parserContext.sourceFile,
|
|
730
831
|
node: parserContext.sourceFile,
|
|
731
832
|
});
|
|
732
833
|
}
|
|
733
|
-
return
|
|
834
|
+
return codeConnectObjects;
|
|
734
835
|
}
|
|
735
836
|
exports.parse = parse;
|
|
736
837
|
//# sourceMappingURL=parser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/react/parser.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parser_template_helpers.d.ts","sourceRoot":"","sources":["../../src/react/parser_template_helpers.ts"],"names":[],"mappings":"AA4DA,wBAAgB,8BAA8B,WAE7C"}
|
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
/* istanbul ignore file */
|
|
3
|
+
// This file needs to be ignored from code coverage, as Istanbul adds extra calls
|
|
4
|
+
// to `cov_*` functions which are used to track coverage, but these functions
|
|
5
|
+
// can't be resolved when executing the templates from the unit tests inside
|
|
6
|
+
// `new Function()`
|
|
2
7
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
8
|
exports.getParsedTemplateHelpersString = void 0;
|
|
4
9
|
// This file contains helper functions which hare included in the React template
|
|
@@ -8,7 +13,7 @@ exports.getParsedTemplateHelpersString = void 0;
|
|
|
8
13
|
// We write them in TS rather than as a string for maintainability, then call
|
|
9
14
|
// `.toString()` on the functions and return a string we can inject. Note that
|
|
10
15
|
// comments will be stripped, as this is run through the build step first.
|
|
11
|
-
// Render a React prop correctly, based on its type
|
|
16
|
+
// Render a React prop correctly, based on its type.
|
|
12
17
|
function _fcc_renderReactProp(name, value) {
|
|
13
18
|
// If the value is an array, then it's an array of objects representing React
|
|
14
19
|
// children (either of type INSTANCE for pills, or CODE for inline code). The
|
|
@@ -36,6 +41,10 @@ function _fcc_renderReactProp(name, value) {
|
|
|
36
41
|
// Strings are wrapped in quotes
|
|
37
42
|
return ` ${name}="${value}"`;
|
|
38
43
|
}
|
|
44
|
+
else if (typeof value === 'number') {
|
|
45
|
+
// Numbers are wrapped in braces
|
|
46
|
+
return ` ${name}={${value}}`;
|
|
47
|
+
}
|
|
39
48
|
else if (typeof value === 'boolean') {
|
|
40
49
|
// Render either the prop name or nothing for a boolean, we don't want to
|
|
41
50
|
// render `prop={true/false}`
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parser_template_helpers.js","sourceRoot":"","sources":["../../src/react/parser_template_helpers.ts"],"names":[],"mappings":";AAAA,0BAA0B;AAC1B,iFAAiF;AACjF,6EAA6E;AAC7E,4EAA4E;AAC5E,mBAAmB;;;AAInB,gFAAgF;AAChF,0EAA0E;AAC1E,mDAAmD;AACnD,EAAE;AACF,6EAA6E;AAC7E,8EAA8E;AAC9E,0EAA0E;AAE1E,oDAAoD;AACpD,SAAS,oBAAoB,CAC3B,IAAY,EACZ,KAAkE;IAElE,6EAA6E;IAC7E,6EAA6E;IAC7E,8EAA8E;IAC9E,sCAAsC;IACtC,MAAM,qBAAqB,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAElD,IAAI,qBAAqB,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9C,0EAA0E;QAC1E,YAAY;QACZ,EAAE;QACF,2EAA2E;QAC3E,2EAA2E;QAC3E,6EAA6E;QAC7E,yEAAyE;QACzE,OAAO,KAAK,CAAC,GAAG,CAAA,IAAI,IAAI,OAAO,KAAK,MAAM,CAAA;IAC5C,CAAC;SAAM,IACL,qBAAqB;QACrB,2EAA2E;QAC3E,4DAA4D;QAC5D,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EACpD,CAAC;QACD,gFAAgF;QAChF,OAAO,KAAK,CAAC,GAAG,CAAA,IAAI,IAAI,KAAK,KAAK,GAAG,CAAA;IACvC,CAAC;SAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACrC,gCAAgC;QAChC,OAAO,IAAI,IAAI,KAAK,KAAK,GAAG,CAAA;IAC9B,CAAC;SAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACrC,gCAAgC;QAChC,OAAO,IAAI,IAAI,KAAK,KAAK,GAAG,CAAA;IAC9B,CAAC;SAAM,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE,CAAC;QACtC,yEAAyE;QACzE,6BAA6B;QAC7B,OAAO,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;IAChC,CAAC;SAAM,IAAI,OAAO,KAAK,KAAK,WAAW,EAAE,CAAC;QACxC,OAAO,EAAE,CAAA;IACX,CAAC;AACH,CAAC;AAED,yEAAyE;AACzE,SAAgB,8BAA8B;IAC5C,OAAO,oBAAoB,CAAC,QAAQ,EAAE,CAAA;AACxC,CAAC;AAFD,wEAEC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ProjectInfo } from '../common/project';
|
|
2
|
-
import {
|
|
2
|
+
import { CodeConnectJSON } from '../common/figma_connect';
|
|
3
3
|
interface ConvertStorybookFilesArgs {
|
|
4
4
|
/**
|
|
5
5
|
* Optionally override the glob used to find stories. This is currently not
|
|
@@ -12,13 +12,13 @@ interface ConvertStorybookFilesArgs {
|
|
|
12
12
|
projectInfo: ProjectInfo;
|
|
13
13
|
}
|
|
14
14
|
/**
|
|
15
|
-
* Converts all Storyboook files in a directory into
|
|
15
|
+
* Converts all Storyboook files in a directory into Code Connect objects. If a file
|
|
16
16
|
* cannot be converted (e.g. unsupported syntax), it is ignored and an error is
|
|
17
17
|
* logged.
|
|
18
18
|
*
|
|
19
19
|
* @param args
|
|
20
|
-
* @returns An array of
|
|
20
|
+
* @returns An array of Code Connect objects
|
|
21
21
|
*/
|
|
22
|
-
export declare function convertStorybookFiles({ projectInfo, storiesGlob, }: ConvertStorybookFilesArgs): Promise<
|
|
22
|
+
export declare function convertStorybookFiles({ projectInfo, storiesGlob, }: ConvertStorybookFilesArgs): Promise<CodeConnectJSON[]>;
|
|
23
23
|
export {};
|
|
24
24
|
//# sourceMappingURL=convert.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"convert.d.ts","sourceRoot":"","sources":["../../src/storybook/convert.ts"],"names":[],"mappings":"AAgBA,OAAO,
|
|
1
|
+
{"version":3,"file":"convert.d.ts","sourceRoot":"","sources":["../../src/storybook/convert.ts"],"names":[],"mappings":"AAgBA,OAAO,EAEL,WAAW,EAGZ,MAAM,mBAAmB,CAAA;AAE1B,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAKzD,UAAU,yBAAyB;IACjC;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB;;OAEG;IACH,WAAW,EAAE,WAAW,CAAA;CACzB;AAED;;;;;;;GAOG;AACH,wBAAsB,qBAAqB,CAAC,EAC1C,WAAW,EACX,WAAgC,GACjC,EAAE,yBAAyB,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,CAWxD"}
|