@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
package/dist/common/project.js
CHANGED
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.resolveImportPath = exports.getProjectInfo = exports.getRemoteFileUrl = exports.getGitRemoteURL = void 0;
|
|
6
|
+
exports.resolveImportPath = exports.getProjectInfo = exports.getStorybookUrl = exports.getRemoteFileUrl = exports.getGitRemoteURL = void 0;
|
|
7
7
|
const child_process_1 = require("child_process");
|
|
8
8
|
const glob_1 = require("glob");
|
|
9
9
|
const path_1 = __importDefault(require("path"));
|
|
@@ -81,6 +81,25 @@ function getRemoteFileUrl(filePath, repoURL) {
|
|
|
81
81
|
return `${url}/tree/master${relativeFilePath}`;
|
|
82
82
|
}
|
|
83
83
|
exports.getRemoteFileUrl = getRemoteFileUrl;
|
|
84
|
+
function getStorybookUrl(filePath, storybookUrl) {
|
|
85
|
+
// the folder of the git repo on disk could be named differently,
|
|
86
|
+
// so we need to find the relative path of the file to the root of the repo
|
|
87
|
+
// and append that to the remote URL
|
|
88
|
+
const repoAbsPath = getGitRepoAbsolutePath(filePath);
|
|
89
|
+
const index = filePath.indexOf(repoAbsPath);
|
|
90
|
+
if (index === -1) {
|
|
91
|
+
return '';
|
|
92
|
+
}
|
|
93
|
+
const relativeFilePath = filePath.substring(index + repoAbsPath.length + 1); // +1 to remove the leading slash
|
|
94
|
+
const storybookComponentPath = relativeFilePath
|
|
95
|
+
.trim()
|
|
96
|
+
.replace(/[\s|_]/g, '-')
|
|
97
|
+
.replace(/\.[jt]sx?$/, '')
|
|
98
|
+
.split('/')
|
|
99
|
+
.join('-');
|
|
100
|
+
return `${storybookUrl}/?path=/docs/${storybookComponentPath}`;
|
|
101
|
+
}
|
|
102
|
+
exports.getStorybookUrl = getStorybookUrl;
|
|
84
103
|
function mapToAbsolutePaths(globPaths, absPath) {
|
|
85
104
|
return globPaths.map((globPath) => `${absPath}/${globPath}`);
|
|
86
105
|
}
|
|
@@ -97,6 +116,14 @@ function getProjectInfo(dir, configPath) {
|
|
|
97
116
|
: path_1.default.resolve(path_1.default.join(dir, DEFAULT_CONFIG_FILE_NAME));
|
|
98
117
|
const globalConfig = configFilePath ? parseConfig(configFilePath) : undefined;
|
|
99
118
|
const config = globalConfig?.codeConnect;
|
|
119
|
+
// `importPaths` and `paths` previously (incorrectly) lived in the global `codeConnect` config -
|
|
120
|
+
// some early users may have it defined here so we'll log this error message to notify them to move it
|
|
121
|
+
if (globalConfig && globalConfig.codeConnect.importPaths) {
|
|
122
|
+
logging_1.logger.error(`The 'importPaths' option in the config file should be specified under 'react'`);
|
|
123
|
+
}
|
|
124
|
+
if (globalConfig && globalConfig.codeConnect.paths) {
|
|
125
|
+
logging_1.logger.error(`The 'paths' option in the config file should be specified under 'react'`);
|
|
126
|
+
}
|
|
100
127
|
if (!globalConfig) {
|
|
101
128
|
logging_1.logger.info(`No config file found in ${dir}, proceeding with default options`);
|
|
102
129
|
}
|
|
@@ -130,7 +157,7 @@ function getProjectInfo(dir, configPath) {
|
|
|
130
157
|
// TODO: not sure why Node10 is needed her, but otherwise module resolution for
|
|
131
158
|
// pnpm workspaces won't work
|
|
132
159
|
moduleResolution: typescript_1.default.ModuleResolutionKind.Node10,
|
|
133
|
-
paths: config?.paths ?? {},
|
|
160
|
+
paths: config?.react?.paths ?? {},
|
|
134
161
|
allowJs: true,
|
|
135
162
|
};
|
|
136
163
|
const tsProgram = typescript_1.default.createProgram(files, compilerOptions);
|
|
@@ -152,7 +179,7 @@ function resolveImportPath(filePath, config) {
|
|
|
152
179
|
}
|
|
153
180
|
return true;
|
|
154
181
|
}
|
|
155
|
-
for (const [key, value] of Object.entries(config.importPaths || {})) {
|
|
182
|
+
for (const [key, value] of Object.entries(config.react?.importPaths || {})) {
|
|
156
183
|
// Do a partial match from the end of the path
|
|
157
184
|
const patternParts = key.split('/').reverse();
|
|
158
185
|
const pathParts = filePath.split('/').reverse();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project.js","sourceRoot":"","sources":["../../src/common/project.ts"],"names":[],"mappings":";;;;;;AAAA,iDAAyC;AACzC,+BAA+B;AAC/B,gDAAuB;AACvB,4CAAmB;AACnB,4DAA2B;AAC3B,uCAAkC;AAElC,MAAM,wBAAwB,GAAG,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"project.js","sourceRoot":"","sources":["../../src/common/project.ts"],"names":[],"mappings":"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"}
|
package/dist/connect/create.d.ts
CHANGED
|
@@ -3,6 +3,6 @@ interface GenerateDocsArgs {
|
|
|
3
3
|
figmaNodeUrl: string;
|
|
4
4
|
outFile: string;
|
|
5
5
|
}
|
|
6
|
-
export declare function
|
|
6
|
+
export declare function createCodeConnectFromUrl({ accessToken, figmaNodeUrl, outFile, }: GenerateDocsArgs): Promise<void>;
|
|
7
7
|
export {};
|
|
8
8
|
//# sourceMappingURL=create.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../src/connect/create.ts"],"names":[],"mappings":"AAQA,UAAU,gBAAgB;IACxB,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,MAAM,CAAA;CAChB;AA2ED,wBAAsB,
|
|
1
|
+
{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../src/connect/create.ts"],"names":[],"mappings":"AAQA,UAAU,gBAAgB;IACxB,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,MAAM,CAAA;CAChB;AA2ED,wBAAsB,wBAAwB,CAAC,EAC7C,WAAW,EACX,YAAY,EACZ,OAAO,GACR,EAAE,gBAAgB,iBAmElB"}
|
package/dist/connect/create.js
CHANGED
|
@@ -26,7 +26,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
26
26
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
27
|
};
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.
|
|
29
|
+
exports.createCodeConnectFromUrl = void 0;
|
|
30
30
|
const helpers_1 = require("./helpers");
|
|
31
31
|
const axios_1 = __importStar(require("axios"));
|
|
32
32
|
const fs_1 = __importDefault(require("fs"));
|
|
@@ -95,7 +95,7 @@ function generateProps(component) {
|
|
|
95
95
|
${props.join(',\n ')}
|
|
96
96
|
}`;
|
|
97
97
|
}
|
|
98
|
-
async function
|
|
98
|
+
async function createCodeConnectFromUrl({ accessToken, figmaNodeUrl, outFile, }) {
|
|
99
99
|
const fileKey = (0, helpers_1.parseFileKey)(figmaNodeUrl);
|
|
100
100
|
const nodeIds = (0, helpers_1.parseNodeIds)([figmaNodeUrl]);
|
|
101
101
|
const apiUrl = (0, figma_rest_api_1.getApiUrl)(figmaNodeUrl ?? '') + `/files/${fileKey}?ids=${nodeIds.join(',')}`;
|
|
@@ -112,7 +112,8 @@ async function createFigmadocFromUrl({ accessToken, figmaNodeUrl, outFile, }) {
|
|
|
112
112
|
const component = (0, helpers_1.findComponentsInDocument)(response.data.document, nodeIds)[0];
|
|
113
113
|
const componentName = normalizeComponentName(component.name);
|
|
114
114
|
logging_1.logger.info('Generating Code Connect file...');
|
|
115
|
-
const
|
|
115
|
+
const codeConnect = `
|
|
116
|
+
import React from 'react'
|
|
116
117
|
import { ${componentName} } from './${componentName}'
|
|
117
118
|
import figma from '@figma/code-connect'
|
|
118
119
|
|
|
@@ -129,7 +130,7 @@ figma.connect(${componentName}, "${figmaNodeUrl}", {
|
|
|
129
130
|
example: (props) => <${componentName} />
|
|
130
131
|
})
|
|
131
132
|
`;
|
|
132
|
-
let formatted = await prettier.format(
|
|
133
|
+
let formatted = await prettier.format(codeConnect, {
|
|
133
134
|
parser: 'typescript',
|
|
134
135
|
semi: false,
|
|
135
136
|
});
|
|
@@ -158,5 +159,5 @@ figma.connect(${componentName}, "${figmaNodeUrl}", {
|
|
|
158
159
|
process.exit(1);
|
|
159
160
|
}
|
|
160
161
|
}
|
|
161
|
-
exports.
|
|
162
|
+
exports.createCodeConnectFromUrl = createCodeConnectFromUrl;
|
|
162
163
|
//# sourceMappingURL=create.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../src/connect/create.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAgF;AAChF,+CAA2C;AAC3C,4CAAmB;AACnB,mDAAoC;AACpC,qDAA0D;AAC1D,+CAA0C;AAC1C,mCAAkC;AAQlC,SAAS,aAAa,CAAC,SAAiB;IACtC,MAAM,UAAU,GAAG,SAAS,CAAC,WAAW,EAAE,CAAA;IAC1C,OAAO,CACL,UAAU,KAAK,MAAM;QACrB,UAAU,KAAK,OAAO;QACtB,UAAU,KAAK,KAAK;QACpB,UAAU,KAAK,IAAI;QACnB,UAAU,KAAK,IAAI;QACnB,UAAU,KAAK,KAAK,CACrB,CAAA;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAY;IACrC,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;AACtC,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAY;IACxC,OAAO,IAAA,kBAAS,EAAC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,CAAA;AAClD,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAY;IACtC,mCAAmC;IACnC,OAAO,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,CAAA;AACzD,CAAC;AAED,SAAS,sBAAsB,CAAC,IAAY;IAC1C,6EAA6E;IAC7E,OAAO,IAAI;SACR,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC;SAC7B,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SAC3D,IAAI,CAAC,EAAE,CAAC;SACR,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;AAC7B,CAAC;AAED,SAAS,aAAa,CAAC,SAAiC;IACtD,MAAM,KAAK,GAAa,EAAE,CAAA;IAC1B,IACE,CAAC,SAAS,CAAC,4BAA4B;QACvC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,4BAA4B,CAAC,CAAC,MAAM,KAAK,CAAC,EAChE,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,KAAK,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,4BAA4B,CAAC,EAAE,CAAC;QACzF,MAAM,YAAY,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAA;QACnD,MAAM,aAAa,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAA;QACjD,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC/B,KAAK,CAAC,IAAI,CAAC,IAAI,YAAY,qBAAqB,aAAa,IAAI,CAAC,CAAA;QACpE,CAAC;QACD,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC5B,KAAK,CAAC,IAAI,CAAC,IAAI,YAAY,oBAAoB,aAAa,IAAI,CAAC,CAAA;QACnE,CAAC;QACD,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC/B,IAAI,OAAO,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;gBAClE,KAAK,CAAC,IAAI,CAAC,IAAI,YAAY,qBAAqB,aAAa,IAAI,CAAC,CAAA;YACpE,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,IAAI,CACR,IAAI,YAAY,kBAAkB,aAAa,UAAU,OAAO,CAAC,cAAc;oBAC7E,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,KAAK,OAAO,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC;qBAC/D,IAAI,CAAC,KAAK,CAAC,IAAI,CACnB,CAAA;YACH,CAAC;QACH,CAAC;QACD,IAAI,OAAO,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;YACrC,KAAK,CAAC,IAAI,CAAC,IAAI,YAAY,sBAAsB,aAAa,IAAI,CAAC,CAAA;QACrE,CAAC;IACH,CAAC;IACD,OAAO;IACL,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC;EACrB,CAAA;AACF,CAAC;AAEM,KAAK,UAAU,
|
|
1
|
+
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../src/connect/create.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/connect/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAM/C,wBAAgB,WAAW,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,GAAG,IAAI,IAAI,YAAY,CAAC,SAAS,CAEnF;AAED,eAAO,MAAM,cAAc,OAAiB,MAAM,KAAG,
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/connect/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAM/C,wBAAgB,WAAW,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,GAAG,IAAI,IAAI,YAAY,CAAC,SAAS,CAEnF;AAED,eAAO,MAAM,cAAc,OAAiB,MAAM,KAAG,MAOpD,CAAA;AAED,wBAAgB,YAAY,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAqB9D;AAED,wBAAgB,YAAY,CAAC,YAAY,EAAE,MAAM,sBAEhD;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,YAAY,CAAC,IAAI,EAC3B,OAAO,EAAE,MAAM,EAAE,GAChB,YAAY,CAAC,SAAS,EAAE,CAkB1B"}
|
package/dist/connect/helpers.js
CHANGED
|
@@ -34,7 +34,8 @@ exports.isComponent = isComponent;
|
|
|
34
34
|
const validateNodeId = function (id) {
|
|
35
35
|
const newId = id.replace('-', ':');
|
|
36
36
|
if (!guidRegex.test(newId)) {
|
|
37
|
-
|
|
37
|
+
logging_1.logger.error(`Invalid figma node URL: the provided node-id "${id}" is invalid`);
|
|
38
|
+
process.exit(1);
|
|
38
39
|
}
|
|
39
40
|
return newId;
|
|
40
41
|
};
|
|
@@ -44,14 +45,18 @@ function parseNodeIds(figmaNodeUrls) {
|
|
|
44
45
|
for (const nodeURL of figmaNodeUrls) {
|
|
45
46
|
const figmaNodeUrl = url.parse(nodeURL, true);
|
|
46
47
|
const nodeId = figmaNodeUrl.query['node-id'];
|
|
47
|
-
if (typeof nodeId
|
|
48
|
-
logging_1.logger.error(`Invalid figma node URL: ${nodeURL}, more than one node-id given`);
|
|
49
|
-
process.exit(1);
|
|
50
|
-
}
|
|
51
|
-
if (nodeId) {
|
|
48
|
+
if (nodeId && typeof nodeId === 'string') {
|
|
52
49
|
const figmaNodeId = (0, exports.validateNodeId)(nodeId);
|
|
53
50
|
nodeIds.push(figmaNodeId);
|
|
54
51
|
}
|
|
52
|
+
else if (!nodeId) {
|
|
53
|
+
logging_1.logger.error(`Invalid figma node URL: the provided url "${nodeURL}" does not contain a node-id`);
|
|
54
|
+
process.exit(1);
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
logging_1.logger.error(`Invalid figma node URL: the provided url "${nodeURL}" contains more than one node-id`);
|
|
58
|
+
process.exit(1);
|
|
59
|
+
}
|
|
55
60
|
}
|
|
56
61
|
return nodeIds;
|
|
57
62
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/connect/helpers.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,yCAA0B;AAC1B,+CAA0C;AAE1C,MAAM,SAAS,GAAG,oCAAoC,CAAA;AAEtD,SAAgB,WAAW,CAAC,IAAuB;IACjD,OAAO,IAAI,CAAC,IAAI,KAAK,WAAW,IAAI,IAAI,CAAC,IAAI,KAAK,eAAe,CAAA;AACnE,CAAC;AAFD,kCAEC;AAEM,MAAM,cAAc,GAAG,UAAU,EAAU;IAChD,MAAM,KAAK,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IAClC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3B,
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/connect/helpers.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,yCAA0B;AAC1B,+CAA0C;AAE1C,MAAM,SAAS,GAAG,oCAAoC,CAAA;AAEtD,SAAgB,WAAW,CAAC,IAAuB;IACjD,OAAO,IAAI,CAAC,IAAI,KAAK,WAAW,IAAI,IAAI,CAAC,IAAI,KAAK,eAAe,CAAA;AACnE,CAAC;AAFD,kCAEC;AAEM,MAAM,cAAc,GAAG,UAAU,EAAU;IAChD,MAAM,KAAK,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IAClC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3B,gBAAM,CAAC,KAAK,CAAC,iDAAiD,EAAE,cAAc,CAAC,CAAA;QAC/E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAPY,QAAA,cAAc,kBAO1B;AAED,SAAgB,YAAY,CAAC,aAAuB;IAClD,MAAM,OAAO,GAAa,EAAE,CAAA;IAC5B,KAAK,MAAM,OAAO,IAAI,aAAa,EAAE,CAAC;QACpC,MAAM,YAAY,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;QAC7C,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;QAC5C,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YACzC,MAAM,WAAW,GAAG,IAAA,sBAAc,EAAC,MAAM,CAAC,CAAA;YAC1C,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QAC3B,CAAC;aAAM,IAAI,CAAC,MAAM,EAAE,CAAC;YACnB,gBAAM,CAAC,KAAK,CACV,6CAA6C,OAAO,8BAA8B,CACnF,CAAA;YACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;aAAM,CAAC;YACN,gBAAM,CAAC,KAAK,CACV,6CAA6C,OAAO,kCAAkC,CACvF,CAAA;YACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC;AArBD,oCAqBC;AAED,SAAgB,YAAY,CAAC,YAAoB;IAC/C,OAAO,YAAY,CAAC,KAAK,CAAC,iCAAiC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;AACnE,CAAC;AAFD,oCAEC;AAED;;;;;GAKG;AACH,SAAgB,wBAAwB,CACtC,QAA2B,EAC3B,OAAiB;IAEjB,MAAM,UAAU,GAA6B,EAAE,CAAA;IAC/C,MAAM,KAAK,GAAG,CAAC,QAAQ,CAAC,CAAA;IAExB,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,EAAG,CAAA;QACzB,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;YAC9B,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;gBACvB,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAA;YACzE,CAAC;YACD,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACvB,CAAC;QACD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YACjC,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC9B,CAAC;IACH,CAAC;IAED,OAAO,UAAU,CAAA;AACnB,CAAC;AArBD,4DAqBC"}
|
package/dist/connect/upload.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { CodeConnectJSON } from '../common/figma_connect';
|
|
2
2
|
interface Args {
|
|
3
3
|
accessToken: string;
|
|
4
|
-
docs:
|
|
4
|
+
docs: CodeConnectJSON[];
|
|
5
5
|
}
|
|
6
6
|
export declare function upload({ accessToken, docs }: Args): Promise<void>;
|
|
7
7
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upload.d.ts","sourceRoot":"","sources":["../../src/connect/upload.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"upload.d.ts","sourceRoot":"","sources":["../../src/connect/upload.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAKzD,UAAU,IAAI;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,IAAI,EAAE,eAAe,EAAE,CAAA;CACxB;AAMD,wBAAsB,MAAM,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,IAAI,iBA+BvD"}
|
package/dist/connect/upload.js
CHANGED
|
@@ -27,8 +27,8 @@ exports.upload = void 0;
|
|
|
27
27
|
const logging_1 = require("../common/logging");
|
|
28
28
|
const axios_1 = __importStar(require("axios"));
|
|
29
29
|
const figma_rest_api_1 = require("./figma_rest_api");
|
|
30
|
-
function
|
|
31
|
-
return `${(0, logging_1.highlight)(doc.component)}${doc.variant ? `(${Object.entries(doc.variant).map(([key, value]) => `${key}=${value}`)})` : ''} ${(0, logging_1.underline)(doc.figmaNode)}`;
|
|
30
|
+
function codeConnectStr(doc) {
|
|
31
|
+
return `${(0, logging_1.highlight)(doc.component ?? '')}${doc.variant ? `(${Object.entries(doc.variant).map(([key, value]) => `${key}=${value}`)})` : ''} ${(0, logging_1.underline)(doc.figmaNode)}`;
|
|
32
32
|
}
|
|
33
33
|
async function upload({ accessToken, docs }) {
|
|
34
34
|
const apiUrl = (0, figma_rest_api_1.getApiUrl)(docs?.[0]?.figmaNode ?? '') + '/code_connect';
|
|
@@ -40,7 +40,7 @@ async function upload({ accessToken, docs }) {
|
|
|
40
40
|
'Content-Type': 'application/json',
|
|
41
41
|
},
|
|
42
42
|
});
|
|
43
|
-
logging_1.logger.info(`Successfully uploaded to Figma:\n${docs.map((doc) => `-> ${
|
|
43
|
+
logging_1.logger.info(`Successfully uploaded to Figma:\n${docs.map((doc) => `-> ${codeConnectStr(doc)}`).join('\n')}`);
|
|
44
44
|
}
|
|
45
45
|
catch (err) {
|
|
46
46
|
if ((0, axios_1.isAxiosError)(err)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upload.js","sourceRoot":"","sources":["../../src/connect/upload.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,+CAAgE;AAChE,+CAA2C;AAC3C,qDAA4C;AAO5C,SAAS,
|
|
1
|
+
{"version":3,"file":"upload.js","sourceRoot":"","sources":["../../src/connect/upload.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,+CAAgE;AAChE,+CAA2C;AAC3C,qDAA4C;AAO5C,SAAS,cAAc,CAAC,GAAoB;IAC1C,OAAO,GAAG,IAAA,mBAAS,EAAC,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,IAAA,mBAAS,EAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAA;AACzK,CAAC;AAEM,KAAK,UAAU,MAAM,CAAC,EAAE,WAAW,EAAE,IAAI,EAAQ;IACtD,MAAM,MAAM,GAAG,IAAA,0BAAS,EAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,IAAI,EAAE,CAAC,GAAG,eAAe,CAAA;IAEtE,IAAI,CAAC;QACH,gBAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAA;QAEpC,MAAM,QAAQ,GAAG,MAAM,eAAK,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE;YAC9C,OAAO,EAAE;gBACP,eAAe,EAAE,WAAW;gBAC5B,cAAc,EAAE,kBAAkB;aACnC;SACF,CAAC,CAAA;QAEF,gBAAM,CAAC,IAAI,CACT,oCAAoC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAChG,CAAA;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,IAAA,oBAAY,EAAC,GAAG,CAAC,EAAE,CAAC;YACtB,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;gBACjB,gBAAM,CAAC,KAAK,CACV,8BAA8B,GAAG,CAAC,IAAI,MAAM,GAAG,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,CAClG,CAAA;YACH,CAAC;iBAAM,CAAC;gBACN,gBAAM,CAAC,KAAK,CAAC,8BAA8B,GAAG,CAAC,OAAO,EAAE,CAAC,CAAA;YAC3D,CAAC;YACD,gBAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAA;QAClD,CAAC;aAAM,CAAC;YACN,gBAAM,CAAC,KAAK,CAAC,8BAA8B,GAAG,EAAE,CAAC,CAAA;QACnD,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;AACH,CAAC;AA/BD,wBA+BC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare function validateDocs(accessToken: string, docs:
|
|
1
|
+
import { CodeConnectJSON } from '../common/figma_connect';
|
|
2
|
+
export declare function validateDocs(accessToken: string, docs: CodeConnectJSON[]): Promise<boolean>;
|
|
3
3
|
//# sourceMappingURL=validation.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/connect/validation.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/connect/validation.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AA0NzD,wBAAsB,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAoDjG"}
|
|
@@ -87,10 +87,10 @@ function validateProps(doc, document) {
|
|
|
87
87
|
if (codeConnectProp.kind === 'children') {
|
|
88
88
|
const codeConnectLayerNames = codeConnectProp.args.layers;
|
|
89
89
|
// Get all layer names in the figma doc
|
|
90
|
-
const
|
|
90
|
+
const figmaLayerNames = [];
|
|
91
91
|
const getLayerNames = (layer) => {
|
|
92
92
|
if (layer.name) {
|
|
93
|
-
|
|
93
|
+
figmaLayerNames.push(layer.name);
|
|
94
94
|
}
|
|
95
95
|
if (layer.children) {
|
|
96
96
|
layer.children.forEach((child) => getLayerNames(child));
|
|
@@ -99,7 +99,7 @@ function validateProps(doc, document) {
|
|
|
99
99
|
getLayerNames(document);
|
|
100
100
|
// And make sure that the layer names in the code connect file are present in the figma doc
|
|
101
101
|
for (const codeConnectLayerName of codeConnectLayerNames) {
|
|
102
|
-
if (!
|
|
102
|
+
if (!figmaLayerNames.includes(codeConnectLayerName)) {
|
|
103
103
|
logging_1.logger.error(`Validation failed for ${doc.component} (${doc.figmaNode}): The layer "${codeConnectLayerName}" does not exist on the Figma component`);
|
|
104
104
|
propsValid = false;
|
|
105
105
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/connect/validation.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAA0B;AAC1B,mCAA8B;AAC9B,+CAA2C;AAG3C,+CAA0C;AAC1C,uCAA0C;AAC1C,qDAA4C;AAE5C,SAAS,cAAc,CAAC,
|
|
1
|
+
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/connect/validation.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import ts from 'typescript';
|
|
2
|
-
import {
|
|
3
|
-
import { Intrinsic } from '
|
|
2
|
+
import { CodeConnectConfig } from '../common/project';
|
|
3
|
+
import { Intrinsic } from '../common/intrinsics';
|
|
4
4
|
interface ParserErrorContext {
|
|
5
5
|
sourceFile: ts.SourceFile;
|
|
6
6
|
node: ts.Node | undefined;
|
|
@@ -18,10 +18,10 @@ export declare class InternalError extends ParserError {
|
|
|
18
18
|
export interface ParserContext {
|
|
19
19
|
checker: ts.TypeChecker;
|
|
20
20
|
sourceFile: ts.SourceFile;
|
|
21
|
-
config:
|
|
21
|
+
config: CodeConnectConfig | undefined;
|
|
22
22
|
}
|
|
23
23
|
/**
|
|
24
|
-
* Parsers the `props` field of a `
|
|
24
|
+
* Parsers the `props` field of a `figma.connect()` call, returning a mapping of
|
|
25
25
|
* prop names to their respective intrinsic types
|
|
26
26
|
*
|
|
27
27
|
* @param objectLiteral An object literal expression
|
|
@@ -32,7 +32,7 @@ export declare function parsePropsObject(objectLiteral: ts.ObjectLiteralExpressi
|
|
|
32
32
|
export type PropMappings = Record<string, Intrinsic>;
|
|
33
33
|
/**
|
|
34
34
|
* Extract metadata about the referenced React component. Used by both the
|
|
35
|
-
*
|
|
35
|
+
* Code Connect and Storybook commands.
|
|
36
36
|
*
|
|
37
37
|
* @param parserContext Parser context
|
|
38
38
|
* @param componentSymbol The ts.Symbol from the metadata referencing the
|
|
@@ -46,7 +46,7 @@ export declare function parseComponentMetadata(node: ts.PropertyAccessExpression
|
|
|
46
46
|
component: string;
|
|
47
47
|
}>;
|
|
48
48
|
/**
|
|
49
|
-
* Checks if a file contains
|
|
49
|
+
* Checks if a file contains Code Connect by looking for the `figma.connect()` function call
|
|
50
50
|
*
|
|
51
51
|
* @param program
|
|
52
52
|
* @param file
|
|
@@ -54,7 +54,7 @@ export declare function parseComponentMetadata(node: ts.PropertyAccessExpression
|
|
|
54
54
|
*/
|
|
55
55
|
export declare function isFigmaConnectFile(program: ts.Program, file: string): boolean;
|
|
56
56
|
/**
|
|
57
|
-
* Parses the render function passed to `
|
|
57
|
+
* Parses the render function passed to `figma.connect()`, extracting the code and
|
|
58
58
|
* any import statements matching the JSX elements used in the function body
|
|
59
59
|
*
|
|
60
60
|
* @param exp A function or arrow function expression
|
|
@@ -72,6 +72,6 @@ export declare function parseRenderFunction(exp: ts.ArrowFunction | ts.FunctionE
|
|
|
72
72
|
nestable: boolean;
|
|
73
73
|
};
|
|
74
74
|
export declare function getDefaultTemplate(componentMetadata: Awaited<ReturnType<typeof parseComponentMetadata>>): string;
|
|
75
|
-
export declare function parse(program: ts.Program, file: string, repoUrl?: string, config?:
|
|
75
|
+
export declare function parse(program: ts.Program, file: string, repoUrl?: string, config?: CodeConnectConfig, debug?: boolean): Promise<any[]>;
|
|
76
76
|
export {};
|
|
77
77
|
//# sourceMappingURL=parser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../src/react/parser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,YAAY,CAAA;AAC3B,OAAO,EAAE,iBAAiB,EAAuC,MAAM,mBAAmB,CAAA;AAa1F,OAAO,EAEL,SAAS,EAGV,MAAM,sBAAsB,CAAA;AAK7B,UAAU,kBAAkB;IAC1B,UAAU,EAAE,EAAE,CAAC,UAAU,CAAA;IACzB,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,SAAS,CAAA;CAC1B;AAED,qBAAa,WAAY,SAAQ,KAAK;IACpC,kBAAkB,EAAE,EAAE,CAAC,gBAAgB,GAAG,IAAI,CAAA;IAC9C,cAAc,EAAE,MAAM,CAAA;gBAEV,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB;IAUzD,QAAQ;IAQR,aAAa;CAGd;AAED,qBAAa,aAAc,SAAQ,WAAW;gBAChC,OAAO,EAAE,MAAM;CAI5B;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,EAAE,CAAC,WAAW,CAAA;IACvB,UAAU,EAAE,EAAE,CAAC,UAAU,CAAA;IACzB,MAAM,EAAE,iBAAiB,GAAG,SAAS,CAAA;CACtC;AAwID;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAC9B,aAAa,EAAE,EAAE,CAAC,uBAAuB,EACzC,aAAa,EAAE,aAAa,GAC3B,YAAY,CAOd;AAED,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;AAEpD;;;;;;;;;GASG;AACH,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE,EAAE,CAAC,wBAAwB,GAAG,EAAE,CAAC,UAAU,GAAG,EAAE,CAAC,UAAU,EACjE,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,aAAa;;;;GAwGvC;AAeD;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,WAmBnE;AAkFD;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,EAAE,CAAC,aAAa,GAAG,EAAE,CAAC,kBAAkB,GAAG,EAAE,CAAC,mBAAmB,EACtE,aAAa,EAAE,aAAa,EAC5B,YAAY,CAAC,EAAE,YAAY;;;;;;;EAiP5B;AA2OD,wBAAgB,kBAAkB,CAChC,iBAAiB,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,sBAAsB,CAAC,CAAC,UAItE;AAiHD,wBAAsB,KAAK,CACzB,OAAO,EAAE,EAAE,CAAC,OAAO,EACnB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,MAAM,EAChB,MAAM,CAAC,EAAE,iBAAiB,EAC1B,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,GAAG,EAAE,CAAC,CAkChB"}
|