unframer 2.7.6 → 2.7.8
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 +5 -6
- package/dist/babel-plugin-imports.d.ts +21 -0
- package/dist/babel-plugin-imports.d.ts.map +1 -0
- package/dist/babel-plugin-imports.js +375 -0
- package/dist/babel-plugin-imports.js.map +1 -0
- package/dist/cli.d.ts +14 -0
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +9 -42
- package/dist/cli.js.map +1 -1
- package/dist/css.d.ts.map +1 -1
- package/dist/css.js +4 -3
- package/dist/css.js.map +1 -1
- package/dist/esbuild.d.ts +7 -0
- package/dist/esbuild.d.ts.map +1 -1
- package/dist/esbuild.js +15 -1
- package/dist/esbuild.js.map +1 -1
- package/dist/exporter.d.ts +6 -14
- package/dist/exporter.d.ts.map +1 -1
- package/dist/exporter.js +79 -38
- package/dist/exporter.js.map +1 -1
- package/dist/exporter.test.js +48 -0
- package/dist/exporter.test.js.map +1 -1
- package/dist/framer.d.ts.map +1 -1
- package/dist/framer.js +26 -1788
- package/dist/framer.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/renamer.d.ts +12 -0
- package/dist/renamer.d.ts.map +1 -0
- package/dist/renamer.js +169 -0
- package/dist/renamer.js.map +1 -0
- package/dist/unframer-loader.d.ts.map +1 -1
- package/dist/unframer-loader.js +4 -3
- package/dist/unframer-loader.js.map +1 -1
- package/esm/babel-plugin-imports.d.ts +21 -0
- package/esm/babel-plugin-imports.d.ts.map +1 -0
- package/esm/babel-plugin-imports.js +344 -0
- package/esm/babel-plugin-imports.js.map +1 -0
- package/esm/cli.d.ts +14 -0
- package/esm/cli.d.ts.map +1 -1
- package/esm/cli.js +9 -42
- package/esm/cli.js.map +1 -1
- package/esm/css.d.ts.map +1 -1
- package/esm/css.js +3 -2
- package/esm/css.js.map +1 -1
- package/esm/esbuild.d.ts +7 -0
- package/esm/esbuild.d.ts.map +1 -1
- package/esm/esbuild.js +13 -0
- package/esm/esbuild.js.map +1 -1
- package/esm/exporter.d.ts +6 -14
- package/esm/exporter.d.ts.map +1 -1
- package/esm/exporter.js +78 -37
- package/esm/exporter.js.map +1 -1
- package/esm/exporter.test.js +48 -0
- package/esm/exporter.test.js.map +1 -1
- package/esm/framer.d.ts.map +1 -1
- package/esm/framer.js +27 -1788
- package/esm/framer.js.map +1 -1
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js.map +1 -1
- package/esm/renamer.d.ts +12 -0
- package/esm/renamer.d.ts.map +1 -0
- package/esm/renamer.js +140 -0
- package/esm/renamer.js.map +1 -0
- package/esm/unframer-loader.d.ts.map +1 -1
- package/esm/unframer-loader.js +4 -3
- package/esm/unframer-loader.js.map +1 -1
- package/package.json +6 -4
- package/src/babel-plugin-imports.ts +441 -0
- package/src/cli.tsx +11 -52
- package/src/css.ts +3 -2
- package/src/esbuild.ts +24 -2
- package/src/exporter.test.ts +66 -0
- package/src/exporter.ts +95 -42
- package/src/framer.js +25 -1827
- package/src/index.ts +2 -0
- package/src/renamer.ts +184 -0
- package/src/unframer-loader.ts +7 -3
package/esm/cli.js
CHANGED
|
@@ -16,15 +16,9 @@ import fs from 'fs-extra';
|
|
|
16
16
|
import path, { basename } from 'path';
|
|
17
17
|
import { logger } from './utils.js';
|
|
18
18
|
const configNames = ['unframer.config.json', 'unframer.json'];
|
|
19
|
+
import kebabCase from 'just-kebab-case';
|
|
19
20
|
export const cli = cac('unframer');
|
|
20
21
|
let defaultOutDir = 'framer';
|
|
21
|
-
function nameToFolder(name) {
|
|
22
|
-
return name
|
|
23
|
-
.replace(/[^a-zA-Z0-9]/g, '-') // Replace non-alphanumeric with dash
|
|
24
|
-
.replace(/-+/g, '-') // Replace multiple dashes with single dash
|
|
25
|
-
.replace(/^-|-$/g, '') // Remove leading/trailing dashes
|
|
26
|
-
.toLowerCase();
|
|
27
|
-
}
|
|
28
22
|
cli.command('[projectId]', 'Run unframer with optional project ID')
|
|
29
23
|
.option('--outDir <dir>', 'Output directory', { default: defaultOutDir })
|
|
30
24
|
.action(function main(projectId, options) {
|
|
@@ -39,17 +33,17 @@ cli.command('[projectId]', 'Run unframer with optional project ID')
|
|
|
39
33
|
return;
|
|
40
34
|
}
|
|
41
35
|
const data = yield response.json();
|
|
42
|
-
|
|
36
|
+
logger.log('unframer data', data);
|
|
37
|
+
let cwd = path.resolve(process.cwd(), outDir || 'framer');
|
|
38
|
+
return yield bundle({
|
|
43
39
|
config: {
|
|
44
40
|
outDir,
|
|
45
|
-
components: Object.fromEntries(data.components.map((c) => [
|
|
46
|
-
nameToFolder(c.name),
|
|
47
|
-
c.url,
|
|
48
|
-
])),
|
|
41
|
+
components: Object.fromEntries(data.components.map((c) => [kebabCase(c.name), c.url])),
|
|
49
42
|
tokens: data.colorStyles,
|
|
43
|
+
framerWebPages: data.framerWebPages || [],
|
|
50
44
|
},
|
|
51
45
|
watch: false,
|
|
52
|
-
|
|
46
|
+
cwd,
|
|
53
47
|
signal: new AbortController().signal,
|
|
54
48
|
});
|
|
55
49
|
}
|
|
@@ -73,11 +67,11 @@ cli.command('[projectId]', 'Run unframer with optional project ID')
|
|
|
73
67
|
}
|
|
74
68
|
let controller = new AbortController();
|
|
75
69
|
setMaxListeners(0, controller.signal);
|
|
76
|
-
|
|
70
|
+
yield bundle({
|
|
77
71
|
config,
|
|
78
72
|
watch: false,
|
|
79
73
|
signal: controller.signal,
|
|
80
|
-
|
|
74
|
+
cwd: path.resolve(process.cwd(), outDir || 'framer'),
|
|
81
75
|
});
|
|
82
76
|
});
|
|
83
77
|
});
|
|
@@ -137,31 +131,4 @@ function getNewNames(oldConfig, newConfig) {
|
|
|
137
131
|
});
|
|
138
132
|
return newNames;
|
|
139
133
|
}
|
|
140
|
-
function processConfig(_a) {
|
|
141
|
-
return __awaiter(this, arguments, void 0, function* ({ config, watch, signal, configBasename, }) {
|
|
142
|
-
try {
|
|
143
|
-
const { components, breakpoints, outDir } = config || {};
|
|
144
|
-
const installDir = path.resolve(process.cwd(), outDir || 'framer');
|
|
145
|
-
if (!components) {
|
|
146
|
-
logger.log(`No components found in ${configBasename}`);
|
|
147
|
-
return;
|
|
148
|
-
}
|
|
149
|
-
yield bundle({
|
|
150
|
-
components,
|
|
151
|
-
breakpoints,
|
|
152
|
-
cwd: installDir,
|
|
153
|
-
watch,
|
|
154
|
-
tokens: config.tokens,
|
|
155
|
-
signal,
|
|
156
|
-
});
|
|
157
|
-
}
|
|
158
|
-
catch (e) {
|
|
159
|
-
if (signal) {
|
|
160
|
-
logger.log('Error processing config', e.stack);
|
|
161
|
-
return;
|
|
162
|
-
}
|
|
163
|
-
throw e;
|
|
164
|
-
}
|
|
165
|
-
});
|
|
166
|
-
}
|
|
167
134
|
//# sourceMappingURL=cli.js.map
|
package/esm/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.tsx"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAA;AACxC,OAAO,IAAI,MAAM,OAAO,CAAA;AACxB,OAAO,EAAE,MAAM,EAAc,MAAM,eAAe,CAAA;AAElD,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AACzB,OAAO,MAAM,MAAM,SAAS,CAAA;AAC5B,OAAO,EAAE,MAAM,UAAU,CAAA;AACzB,OAAO,IAAI,EAAE,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAA;AAErC,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AACnC,MAAM,WAAW,GAAG,CAAC,sBAAsB,EAAE,eAAe,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.tsx"],"names":[],"mappings":"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"}
|
package/esm/css.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"css.d.ts","sourceRoot":"","sources":["../src/css.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAc3C,MAAM,MAAM,mBAAmB,GAAG;IAC9B;;;;;;;OAOG;IACH,aAAa,EAAE,OAAO,CAAA;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,aAAa,EAAE,CAAA;CACzB,CAAA;AAED,wBAAgB,aAAa,CAAC,YAAY,EAAE,mBAAmB,EAAE,UAuBhE;AAED,wBAAgB,cAAc,CAAC,UAAU,EAAE,mBAAmB,EAAE,
|
|
1
|
+
{"version":3,"file":"css.d.ts","sourceRoot":"","sources":["../src/css.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAc3C,MAAM,MAAM,mBAAmB,GAAG;IAC9B;;;;;;;OAOG;IACH,aAAa,EAAE,OAAO,CAAA;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,aAAa,EAAE,CAAA;CACzB,CAAA;AAED,wBAAgB,aAAa,CAAC,YAAY,EAAE,mBAAmB,EAAE,UAuBhE;AAED,wBAAgB,cAAc,CAAC,UAAU,EAAE,mBAAmB,EAAE,UA2D/D;AAED,eAAO,MAAM,sBAAsB;;;;;;;CAOzB,CAAA;AAEV,MAAM,MAAM,eAAe,GAAG,OAAO,sBAAsB,CAAA;AAE3D,eAAO,MAAM,iBAAiB,qBAAsB,eAAe,WA2DlE,CAAA;AAED,wBAAgB,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,MAAM,oBAUzD"}
|
package/esm/css.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import dedent from 'dedent';
|
|
1
|
+
import dedent from 'string-dedent';
|
|
2
2
|
function deduplicateByKey(arr, key) {
|
|
3
3
|
let map = new Map();
|
|
4
4
|
for (let item of arr) {
|
|
@@ -70,7 +70,8 @@ export function getFontsStyles(_fontsDefs) {
|
|
|
70
70
|
str += dedent `
|
|
71
71
|
@font-face {
|
|
72
72
|
font-family: '${x.family}';
|
|
73
|
-
src: url('${x.url}');\n
|
|
73
|
+
src: url('${x.url}');\n
|
|
74
|
+
`;
|
|
74
75
|
if (x.style) {
|
|
75
76
|
str += ` font-style: ${x.style};\n`;
|
|
76
77
|
}
|
package/esm/css.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"css.js","sourceRoot":"","sources":["../src/css.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,
|
|
1
|
+
{"version":3,"file":"css.js","sourceRoot":"","sources":["../src/css.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,eAAe,CAAA;AAGlC,SAAS,gBAAgB,CAAI,GAAQ,EAAE,GAAqB;IACxD,IAAI,GAAG,GAAG,IAAI,GAAG,EAAE,CAAA;IACnB,KAAK,IAAI,IAAI,IAAI,GAAG,EAAE,CAAC;QACnB,IAAI,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,CAAA;QACrB,IAAI,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YACjB,SAAQ;QACZ,CAAC;QACD,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IACxB,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAA;AACnC,CAAC;AAgBD,MAAM,UAAU,aAAa,CAAC,YAAmC;IAC7D,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;QACvB,OAAO,EAAE,CAAA;IACb,CAAC;IACD,IAAI,iBAAiB,GAAG,IAAI,GAAG,EAAuB,CAAA;IACtD,KAAK,IAAI,aAAa,IAAI,YAAY,EAAE,CAAC;QACrC,IAAI,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAA;QACrC,KAAK,IAAI,IAAI,IAAI,aAAa,CAAC,KAAK,EAAE,CAAC;YACnC,IAAI,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;gBACrC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAE,CAAC,GAAG,CAAC,QAAS,CAAC,CAAA;YACtD,CAAC;iBAAM,CAAC;gBACJ,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,GAAG,CAAC,CAAC,QAAS,CAAC,CAAC,CAAC,CAAA;YAC5D,CAAC;QACL,CAAC;IACL,CAAC;IACD,IAAI,GAAG,GAAG,aAAa,iBAAiB,CAAC,IAAI,gBAAgB,CAAA;IAC7D,KAAK,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,IAAI,iBAAiB,CAAC,OAAO,EAAE,EAAE,CAAC;QAC1D,GAAG,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,aAAa,CAAA;QAC7C,KAAK,IAAI,QAAQ,IAAI,SAAS,EAAE,CAAC;YAC7B,GAAG,IAAI,OAAO,QAAQ,IAAI,CAAA;QAC9B,CAAC;IACL,CAAC;IACD,OAAO,GAAG,CAAA;AACd,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,UAAiC;IAC5D,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;QACrB,OAAO,EAAE,CAAA;IACb,CAAC;IACD,IAAI,cAAc,GAAG,IAAI,GAAG,EAAuB,CAAA;IAEnD,KAAK,IAAI,aAAa,IAAI,UAAU,EAAE,CAAC;QACnC,IAAI,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAA;QACrC,KAAK,IAAI,IAAI,IAAI,aAAa,CAAC,KAAK,EAAE,CAAC;YACnC,IAAI,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC/B,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAE,CAAC,GAAG,CAAC,QAAS,CAAC,CAAA;YAChD,CAAC;iBAAM,CAAC;gBACJ,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,GAAG,CAAC,CAAC,QAAS,CAAC,CAAC,CAAC,CAAA;YACtD,CAAC;QACL,CAAC;IACL,CAAC;IACD,MAAM,QAAQ,GAAG,gBAAgB,CAC7B,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,EAClC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,GAAG,CAChB;SACI,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;SACpB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;IAE/C,qCAAqC;IACrC,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;QACpC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACnE,CAAC,CAAC,CAAA;IAEF,IAAI,GAAG,GAAG,MAAM,CAAA;IAChB,KAAK,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;QAClD,KAAK,GAAG,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;QACtC,GAAG,IAAI,cAAc,YAAY,OAAO,CAAA;QACxC,GAAG;YACC,IAAI;gBACJ,KAAK;qBACA,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;oBACP,IAAI,GAAG,GAAG,EAAE,CAAA;oBACZ,GAAG,IAAI,MAAM,CAAA;;wCAEO,CAAC,CAAC,MAAM;oCACZ,CAAC,CAAC,GAAG;qBACpB,CAAA;oBACD,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;wBACV,GAAG,IAAI,mBAAmB,CAAC,CAAC,KAAK,KAAK,CAAA;oBAC1C,CAAC;oBACD,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;wBACX,GAAG,IAAI,oBAAoB,CAAC,CAAC,MAAM,KAAK,CAAA;oBAC5C,CAAC;oBACD,IAAI,CAAC,CAAC,YAAY,EAAE,CAAC;wBACjB,GAAG,IAAI,qBAAqB,CAAC,CAAC,YAAY,KAAK,CAAA;oBACnD,CAAC;oBACD,GAAG,IAAI,KAAK,CAAA;oBACZ,OAAO,GAAG,CAAA;gBACd,CAAC,CAAC;qBACD,IAAI,CAAC,IAAI,CAAC;gBACf,IAAI,CAAA;IACZ,CAAC;IAED,OAAO,GAAG,CAAA;AACd,CAAC;AAED,MAAM,CAAC,MAAM,sBAAsB,GAAG;IAClC,IAAI,EAAE,CAAC;IACP,EAAE,EAAE,GAAG;IACP,EAAE,EAAE,GAAG;IACP,EAAE,EAAE,GAAG;IACP,EAAE,EAAE,IAAI;IACR,KAAK,EAAE,IAAI;CACL,CAAA;AAIV,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,eAAiC,EAAE,EAAE;IACnE,eAAe,mCAAQ,sBAAsB,GAAK,eAAe,CAAE,CAAA;IACnE,OAAO,SAAS,CAAC;;qBAEA,eAAe,CAAC,IAAI,uBACjC,eAAe,CAAC,EAAE,GAAG,CACzB;;;;;;;qBAOiB,eAAe,CAAC,EAAE,uBAC/B,eAAe,CAAC,EAAE,GAAG,CACzB;;;;;;;qBAOiB,eAAe,CAAC,EAAE,uBAC/B,eAAe,CAAC,EAAE,GAAG,CACzB;;;;;;;qBAOiB,eAAe,CAAC,EAAE,uBAC/B,eAAe,CAAC,EAAE,GAAG,CACzB;;;;;;;qBAOiB,eAAe,CAAC,EAAE,uBAC/B,eAAe,CAAC,KAAK,CAAC,GAAG,CAC7B;;;;;;;qBAOiB,eAAe,CAAC,KAAK,CAAC;;;;;;;;;CAS1C,CAAA;AACD,CAAC,CAAA;AAED,MAAM,UAAU,OAAO,CAAI,GAAQ,EAAE,GAAqB;;IACtD,MAAM,GAAG,GAAG,IAAI,GAAG,EAAe,CAAA;IAClC,KAAK,IAAI,IAAI,IAAI,GAAG,EAAE,CAAC;QACnB,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,CAAA;QACnB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACd,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;QAClB,CAAC;QACD,MAAA,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,0CAAE,IAAI,CAAC,IAAI,CAAC,CAAA;IAC1B,CAAC;IACD,OAAO,GAAG,CAAA;AACd,CAAC;AAED,SAAS,SAAS,CAAI,GAAQ,EAAE,GAAqB;IACjD,OAAO,GAAG,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AACnE,CAAC"}
|
package/esm/esbuild.d.ts
CHANGED
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
import { Plugin } from 'esbuild';
|
|
2
2
|
export declare const externalPackages: string[];
|
|
3
|
+
export declare const replaceWebPageIds: ({ elements, code, }: {
|
|
4
|
+
elements: {
|
|
5
|
+
webPageId: string;
|
|
6
|
+
path: string;
|
|
7
|
+
}[];
|
|
8
|
+
code: string;
|
|
9
|
+
}) => string;
|
|
3
10
|
export declare function esbuildPluginBundleDependencies({ signal, externalizeNpm, }: {
|
|
4
11
|
signal?: AbortSignal | undefined;
|
|
5
12
|
externalizeNpm?: boolean | undefined;
|
package/esm/esbuild.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"esbuild.d.ts","sourceRoot":"","sources":["../src/esbuild.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAa,MAAM,SAAS,CAAA;AAE3C,eAAO,MAAM,gBAAgB,UAM5B,CAAA;
|
|
1
|
+
{"version":3,"file":"esbuild.d.ts","sourceRoot":"","sources":["../src/esbuild.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAa,MAAM,SAAS,CAAA;AAE3C,eAAO,MAAM,gBAAgB,UAM5B,CAAA;AAID,eAAO,MAAM,iBAAiB,wBAG3B;IACC,QAAQ,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IAC/C,IAAI,EAAE,MAAM,CAAA;CACf,WAaA,CAAA;AAED,wBAAgB,+BAA+B,CAAC,EAC5C,MAA6C,EAC7C,cAAsB,GACzB;;;CAAA,UA8JA;AAED,wBAAsB,eAAe,CAAC,EAClC,aAAa,EACb,MAAM,EACN,GAAG,GACN,EAAE;IACC,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,aAAa,CAAC,EAAE,GAAG,CAAA;IACnB,MAAM,CAAC,EAAE,WAAW,CAAA;CACvB,gBAkBA;AAED,wBAAsB,wBAAwB,CAC1C,GAAG,CAAC,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,WAAW,+BAkBvB;AAED,eAAO,MAAM,cAAc,EAAwB,OAAO,KAAK,CAAA;AAE/D,wBAAgB,UAAU,CAAC,CAAC,SAAS,QAAQ,EAAE,EAAE,EAAE,QAAQ,GAAG,QAAQ,CAarE"}
|
package/esm/esbuild.js
CHANGED
|
@@ -18,6 +18,19 @@ export const externalPackages = [
|
|
|
18
18
|
'framer-motion', //
|
|
19
19
|
];
|
|
20
20
|
let redirectCache = new Map();
|
|
21
|
+
export const replaceWebPageIds = ({ elements, code, }) => {
|
|
22
|
+
// Match webPageId pattern with optional trailing comma
|
|
23
|
+
const pattern = /{[\s\n]*webPageId[\s\n]*:[\s\n]*(['"])(.*?)\1[\s\n]*,?[\s\n]*}/g;
|
|
24
|
+
return code.replace(pattern, (match, quote, id) => {
|
|
25
|
+
var _a;
|
|
26
|
+
const path = (_a = elements.find((e) => e.webPageId === id)) === null || _a === void 0 ? void 0 : _a.path;
|
|
27
|
+
if (!path) {
|
|
28
|
+
return match;
|
|
29
|
+
}
|
|
30
|
+
logger.log(`Replacing relative link to ${id} with fixed path: ${path}`);
|
|
31
|
+
return `'${path}'`;
|
|
32
|
+
});
|
|
33
|
+
};
|
|
21
34
|
export function esbuildPluginBundleDependencies({ signal = undefined, externalizeNpm = false, }) {
|
|
22
35
|
const codeCache = new Map();
|
|
23
36
|
const spinner = createSpinner('Fetching Framer Components Modules');
|
package/esm/esbuild.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"esbuild.js","sourceRoot":"","sources":["../src/esbuild.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAE3C,OAAO,EAAU,SAAS,EAAE,MAAM,SAAS,CAAA;AAE3C,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC5B,OAAO;IACP,WAAW;IACX,QAAQ;IACR,UAAU;IACV,eAAe,EAAE,EAAE;CACtB,CAAA;AAED,IAAI,aAAa,GAAG,IAAI,GAAG,EAA2B,CAAA;
|
|
1
|
+
{"version":3,"file":"esbuild.js","sourceRoot":"","sources":["../src/esbuild.ts"],"names":[],"mappings":"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"}
|
package/esm/exporter.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { Config } from './cli';
|
|
1
2
|
import { ComponentFontBundle } from './css.js';
|
|
2
3
|
import { PropertyControls } from './framer.js';
|
|
3
4
|
export type StyleToken = {
|
|
@@ -6,20 +7,11 @@ export type StyleToken = {
|
|
|
6
7
|
lightColor: string;
|
|
7
8
|
darkColor: string;
|
|
8
9
|
};
|
|
9
|
-
export declare function bundle({ cwd: out, watch,
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
breakpoints?: {
|
|
15
|
-
readonly base: 0;
|
|
16
|
-
readonly sm: 320;
|
|
17
|
-
readonly md: 768;
|
|
18
|
-
readonly lg: 960;
|
|
19
|
-
readonly xl: 1200;
|
|
20
|
-
readonly '2xl': 1536;
|
|
21
|
-
} | undefined;
|
|
22
|
-
signal?: AbortSignal | undefined;
|
|
10
|
+
export declare function bundle({ config, cwd: out, watch, signal, }: {
|
|
11
|
+
config: Config;
|
|
12
|
+
cwd: string;
|
|
13
|
+
watch?: boolean;
|
|
14
|
+
signal?: AbortSignal;
|
|
23
15
|
}): Promise<{
|
|
24
16
|
components: {
|
|
25
17
|
path: string;
|
package/esm/exporter.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exporter.d.ts","sourceRoot":"","sources":["../src/exporter.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"exporter.d.ts","sourceRoot":"","sources":["../src/exporter.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AAY9B,OAAO,EAEH,mBAAmB,EAKtB,MAAM,UAAU,CAAA;AAOjB,OAAO,EAGH,gBAAgB,EAEnB,MAAM,aAAa,CAAA;AAYpB,MAAM,MAAM,UAAU,GAAG;IACrB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;CACpB,CAAA;AAED,wBAAsB,MAAM,CAAC,EACzB,MAAM,EACN,GAAG,EAAE,GAAQ,EACb,KAAa,EACb,MAA6C,GAChD,EAAE;IACC,MAAM,EAAE,MAAM,CAAA;IACd,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,MAAM,CAAC,EAAE,WAAW,CAAA;CACvB;;;;;;;;eA0bA;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE;IACtC,YAAY,CAAC,EAAE,OAAO,GAAG,OAAO,CAAA;IAChC,OAAO,EAAE,MAAM,CAAA;CAClB,UAaA;AAED,wBAAgB,iBAAiB,CAC7B,MAAM,EAAE,UAAU,EAAE,EACpB,YAAY,GAAE,OAAO,GAAG,OAAiB,UA6B5C;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,YAY7C;AAED,wBAAsB,uBAAuB,CAAC,IAAI,KAAA,EAAE,IAAI,KAAA,mDAmCvD;AAqGD,wBAAsB,yBAAyB,CAC3C,QAAQ,KAAA,EACR,IAAI,KAAA,GACL,OAAO,CAAC;IACP,gBAAgB,CAAC,EAAE,gBAAgB,CAAA;IACnC,KAAK,CAAC,EAAE,mBAAmB,EAAE,CAAA;CAChC,CAAC,CA8DD;AAWD,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,gBAAgB,EAAE,QAAQ,KAAA,UA6FtE;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,iBAqCjD;AAED,KAAK,kBAAkB,GAAG;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAE9B,YAAY,EAAE,MAAM,CAAA;CACvB,CAAA;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB,EAAE,CA2DnE;AASD,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,UAU7C;AAwCD,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,UAiBxC"}
|
package/esm/exporter.js
CHANGED
|
@@ -13,11 +13,11 @@ import { Sema } from 'async-sema';
|
|
|
13
13
|
import dprint from 'dprint-node';
|
|
14
14
|
import { nodeModulesPolyfillPlugin } from 'esbuild-plugins-node-modules-polyfill';
|
|
15
15
|
import { exec } from 'child_process';
|
|
16
|
-
import dedent from 'dedent';
|
|
16
|
+
import dedent from 'string-dedent';
|
|
17
17
|
import fs from 'fs';
|
|
18
18
|
import path from 'path';
|
|
19
19
|
import { breakpointsStyles, getFontsStyles, groupBy, logFontsUsage, } from './css.js';
|
|
20
|
-
import { esbuildPluginBundleDependencies, externalPackages, resolveRedirect, } from './esbuild';
|
|
20
|
+
import { esbuildPluginBundleDependencies, externalPackages, replaceWebPageIds, resolveRedirect, } from './esbuild';
|
|
21
21
|
import { ControlType, combinedCSSRules, } from './framer.js';
|
|
22
22
|
import { logger, spinner, terminalMarkdown } from './utils.js';
|
|
23
23
|
function validateUrl(url) {
|
|
@@ -29,8 +29,9 @@ function validateUrl(url) {
|
|
|
29
29
|
}
|
|
30
30
|
}
|
|
31
31
|
export function bundle(_a) {
|
|
32
|
-
return __awaiter(this, arguments, void 0, function* ({ cwd: out = '', watch = false,
|
|
33
|
-
var _b;
|
|
32
|
+
return __awaiter(this, arguments, void 0, function* ({ config, cwd: out = '', watch = false, signal = undefined, }) {
|
|
33
|
+
var _b, _c;
|
|
34
|
+
const { components, breakpoints, tokens, outDir, framerWebPages } = config;
|
|
34
35
|
out || (out = path.resolve(process.cwd(), 'example'));
|
|
35
36
|
out = path.resolve(out);
|
|
36
37
|
try {
|
|
@@ -112,18 +113,37 @@ export function bundle(_a) {
|
|
|
112
113
|
const existing = yield fs.promises
|
|
113
114
|
.readFile(file.path, 'utf-8')
|
|
114
115
|
.catch(() => null);
|
|
116
|
+
// let res = transform(file.text || '', {
|
|
117
|
+
// babelrc: false,
|
|
118
|
+
// sourceType: 'module',
|
|
119
|
+
// plugins: [
|
|
120
|
+
// babelPluginDeduplicateImports,
|
|
121
|
+
// babelPluginJsxTransform(),
|
|
122
|
+
// ],
|
|
123
|
+
// filename: 'x.js',
|
|
124
|
+
// compact: true,
|
|
125
|
+
// sourceMaps: false,
|
|
126
|
+
// })
|
|
127
|
+
// let inputCode = res!.code!
|
|
128
|
+
let inputCode = file.text;
|
|
115
129
|
let codeNew = `// @ts-nocheck\n` +
|
|
116
130
|
`/* eslint-disable */\n` +
|
|
117
131
|
'/* This file was generated by Unframer, do not edit manually */\n' +
|
|
118
|
-
dprint.format(
|
|
132
|
+
dprint.format('file.jsx', inputCode, {
|
|
119
133
|
lineWidth: 140,
|
|
120
134
|
quoteStyle: 'alwaysSingle',
|
|
121
135
|
trailingCommas: 'always',
|
|
122
136
|
semiColons: 'always',
|
|
123
137
|
});
|
|
138
|
+
if (framerWebPages === null || framerWebPages === void 0 ? void 0 : framerWebPages.length) {
|
|
139
|
+
codeNew = replaceWebPageIds({
|
|
140
|
+
code: codeNew,
|
|
141
|
+
elements: framerWebPages,
|
|
142
|
+
});
|
|
143
|
+
}
|
|
124
144
|
const lines = findRelativeLinks(codeNew);
|
|
125
145
|
if (lines.length) {
|
|
126
|
-
spinner.error(`found broken links for ${path.relative(out, file.path)}
|
|
146
|
+
spinner.error(`found broken links for ${path.relative(out, file.path)}`);
|
|
127
147
|
lines.forEach((line) => {
|
|
128
148
|
logger.log(`${path.resolve(out, file.path)}:${line + 1}`);
|
|
129
149
|
});
|
|
@@ -178,7 +198,7 @@ export function bundle(_a) {
|
|
|
178
198
|
const cssString = '/* This file was generated by Unframer, do not edit manually */\n' +
|
|
179
199
|
'/* This css file has all the necessary styles to run all your components */\n' +
|
|
180
200
|
'\n' +
|
|
181
|
-
getStyleTokensCss(tokens) +
|
|
201
|
+
getStyleTokensCss(tokens || []) +
|
|
182
202
|
breakpointsStyles(breakpoints) +
|
|
183
203
|
'\n\n' +
|
|
184
204
|
combinedCSSRules
|
|
@@ -236,18 +256,22 @@ export function bundle(_a) {
|
|
|
236
256
|
yield buildContext.dispose();
|
|
237
257
|
console.log();
|
|
238
258
|
console.log();
|
|
239
|
-
let
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
const
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
259
|
+
let exampleComponent = (_c = (_b = result === null || result === void 0 ? void 0 : result.components) === null || _b === void 0 ? void 0 : _b.sort((a, b) => {
|
|
260
|
+
var _a, _b;
|
|
261
|
+
const aVariants = getVariantsFromPropControls(a.propertyControls);
|
|
262
|
+
const bVariants = getVariantsFromPropControls(b.propertyControls);
|
|
263
|
+
const aHasBreakpoints = (((_a = aVariants === null || aVariants === void 0 ? void 0 : aVariants.breakpoints) === null || _a === void 0 ? void 0 : _a.length) || 0) >= 2;
|
|
264
|
+
const bHasBreakpoints = (((_b = bVariants === null || bVariants === void 0 ? void 0 : bVariants.breakpoints) === null || _b === void 0 ? void 0 : _b.length) || 0) >= 2;
|
|
265
|
+
// Sort components with breakpoints first
|
|
266
|
+
if (aHasBreakpoints && !bHasBreakpoints)
|
|
267
|
+
return -1;
|
|
268
|
+
if (!aHasBreakpoints && bHasBreakpoints)
|
|
269
|
+
return 1;
|
|
270
|
+
// Within each group, prefer components with example properties
|
|
246
271
|
const aProp = findExampleProperty(a.propertyControls);
|
|
247
272
|
const bProp = findExampleProperty(b.propertyControls);
|
|
248
273
|
return (bProp ? 1 : 0) - (aProp ? 1 : 0);
|
|
249
|
-
});
|
|
250
|
-
let exampleComponent = withBreakpoints === null || withBreakpoints === void 0 ? void 0 : withBreakpoints[0];
|
|
274
|
+
})) === null || _c === void 0 ? void 0 : _c[0];
|
|
251
275
|
if (!exampleComponent) {
|
|
252
276
|
logger.log(`No example component found with breakpoints, using random example`);
|
|
253
277
|
// Create an example component if none found with breakpoints
|
|
@@ -269,18 +293,26 @@ export function bundle(_a) {
|
|
|
269
293
|
}
|
|
270
294
|
}
|
|
271
295
|
const variants = getVariantsFromPropControls(exampleComponent === null || exampleComponent === void 0 ? void 0 : exampleComponent.propertyControls);
|
|
272
|
-
const
|
|
273
|
-
if (!breakpoints) {
|
|
274
|
-
return;
|
|
275
|
-
}
|
|
296
|
+
const outDir = path.posix.relative(process.cwd(), out);
|
|
276
297
|
logger.log('exampleComponent?.propertyControls', exampleComponent === null || exampleComponent === void 0 ? void 0 : exampleComponent.propertyControls);
|
|
277
|
-
const
|
|
278
|
-
lg: breakpoints[1],
|
|
279
|
-
base: breakpoints[0],
|
|
280
|
-
};
|
|
281
|
-
let prop = findExampleProperty(exampleComponent === null || exampleComponent === void 0 ? void 0 : exampleComponent.propertyControls) ||
|
|
298
|
+
const prop = findExampleProperty(exampleComponent === null || exampleComponent === void 0 ? void 0 : exampleComponent.propertyControls) ||
|
|
282
299
|
'exampleFramerVariable';
|
|
283
|
-
const
|
|
300
|
+
const responsiveComponent = (() => {
|
|
301
|
+
const breakpoints = variants === null || variants === void 0 ? void 0 : variants.breakpoints;
|
|
302
|
+
if (!(breakpoints === null || breakpoints === void 0 ? void 0 : breakpoints.length)) {
|
|
303
|
+
return '';
|
|
304
|
+
}
|
|
305
|
+
const variantsExample = {
|
|
306
|
+
lg: breakpoints[1],
|
|
307
|
+
base: breakpoints[0],
|
|
308
|
+
};
|
|
309
|
+
return dedent `
|
|
310
|
+
<${exampleComponent === null || exampleComponent === void 0 ? void 0 : exampleComponent.componentName}.Responsive
|
|
311
|
+
${prop}='example'
|
|
312
|
+
variants={${JSON.stringify(variantsExample || {})}}
|
|
313
|
+
/>
|
|
314
|
+
`;
|
|
315
|
+
})();
|
|
284
316
|
console.log(terminalMarkdown(dedent `
|
|
285
317
|
# How to use the Framer components
|
|
286
318
|
|
|
@@ -305,10 +337,10 @@ export function bundle(_a) {
|
|
|
305
337
|
${prop}='example'
|
|
306
338
|
style={{ width: '100%' }}
|
|
307
339
|
/>
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
340
|
+
${responsiveComponent
|
|
341
|
+
.split('\n')
|
|
342
|
+
.map((line, i) => !i ? line : ' ' + line)
|
|
343
|
+
.join('\n')}
|
|
312
344
|
</div>
|
|
313
345
|
);
|
|
314
346
|
};
|
|
@@ -319,6 +351,7 @@ export function bundle(_a) {
|
|
|
319
351
|
To style components you can pass a \`style\` or \`className\` prop (but remember to use !important to increase the specificity).
|
|
320
352
|
|
|
321
353
|
Read more on GitHub: https://github.com/remorses/unframer
|
|
354
|
+
|
|
322
355
|
`));
|
|
323
356
|
return result;
|
|
324
357
|
}
|
|
@@ -517,7 +550,6 @@ function getTokensCss({ out, result, }) {
|
|
|
517
550
|
return tokensCss;
|
|
518
551
|
}
|
|
519
552
|
const nodePath = process.argv[0] || 'node';
|
|
520
|
-
let UNFRAMER_RUNTIME_PATH = url.pathToFileURL(require.resolve('../esm/index.js')).href;
|
|
521
553
|
export function extractPropControlsUnsafe(filename, name) {
|
|
522
554
|
return __awaiter(this, void 0, void 0, function* () {
|
|
523
555
|
const delimiter = '__delimiter__';
|
|
@@ -525,15 +557,22 @@ export function extractPropControlsUnsafe(filename, name) {
|
|
|
525
557
|
const fileUrl = url.pathToFileURL(filename).href;
|
|
526
558
|
const code = `import(${JSON.stringify(fileUrl)}).then(x => { console.log(${JSON.stringify(delimiter)}); console.log(${propCode}) })`;
|
|
527
559
|
const TIMEOUT = 5 * 1000;
|
|
560
|
+
const UNFRAMER_MAP_PACKAGES = JSON.stringify({
|
|
561
|
+
unframer: url.pathToFileURL(require.resolve('../esm/index.js')).href,
|
|
562
|
+
react: url.pathToFileURL(require.resolve('react')).href,
|
|
563
|
+
'react-dom': url.pathToFileURL(require.resolve('react-dom')).href,
|
|
564
|
+
});
|
|
528
565
|
let stdout = yield new Promise((res, rej) => {
|
|
529
566
|
let childProcess = exec(`${JSON.stringify(nodePath)} --input-type=module --loader ${require.resolve('../dist/unframer-loader.js')} -e ${JSON.stringify(code)}`, {
|
|
530
567
|
env: {
|
|
531
568
|
// ...process.env,
|
|
532
|
-
|
|
569
|
+
UNFRAMER_MAP_PACKAGES,
|
|
533
570
|
},
|
|
534
|
-
}, (err, stdout) => {
|
|
571
|
+
}, (err, stdout, stderr) => {
|
|
535
572
|
clearTimeout(timer);
|
|
536
573
|
if (err) {
|
|
574
|
+
spinner.error(`error extracting types for ${name}`);
|
|
575
|
+
spinner.error(stderr);
|
|
537
576
|
return rej(err);
|
|
538
577
|
}
|
|
539
578
|
res(stdout);
|
|
@@ -543,11 +582,13 @@ export function extractPropControlsUnsafe(filename, name) {
|
|
|
543
582
|
rej(new Error(`Timed out after ${TIMEOUT}ms while extracting types for ${name}`));
|
|
544
583
|
}, TIMEOUT);
|
|
545
584
|
}).catch((e) => {
|
|
546
|
-
spinner.error(`error extracting types for ${name}`);
|
|
547
585
|
logger.log(e.stack);
|
|
548
|
-
|
|
586
|
+
return '';
|
|
549
587
|
});
|
|
550
|
-
stdout = stdout.split(delimiter)[1];
|
|
588
|
+
stdout = stdout.split(delimiter)[1] || '';
|
|
589
|
+
if (!stdout) {
|
|
590
|
+
return {};
|
|
591
|
+
}
|
|
551
592
|
// console.log(stdout)
|
|
552
593
|
return safeJsonParse(stdout);
|
|
553
594
|
});
|
|
@@ -796,7 +837,7 @@ export function propCamelCase(str) {
|
|
|
796
837
|
}
|
|
797
838
|
// Convert dashes to camelCase (e.g. foo-bar -> fooBar)
|
|
798
839
|
str = str.replace(/-([\w])/g, (g) => g[1].toUpperCase());
|
|
799
|
-
// Convert underscores to camelCase (e.g. foo_bar -> fooBar)
|
|
840
|
+
// Convert underscores to camelCase (e.g. foo_bar -> fooBar)
|
|
800
841
|
str = str.replace(/_([a-z])/g, (g) => g[1].toUpperCase());
|
|
801
842
|
// Remove spaces (e.g. "Foo Bar" -> "fooBar")
|
|
802
843
|
str = str.replace(/\s+(.)/g, (_, c) => c.toUpperCase());
|