unframer 2.7.5 → 2.7.7
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 +0 -5
- package/dist/cli.d.ts +14 -0
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +7 -31
- package/dist/cli.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 +7 -14
- package/dist/exporter.d.ts.map +1 -1
- package/dist/exporter.js +52 -14
- package/dist/exporter.js.map +1 -1
- package/dist/exporter.test.d.ts +2 -0
- package/dist/exporter.test.d.ts.map +1 -0
- package/dist/exporter.test.js +83 -0
- package/dist/exporter.test.js.map +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- 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/cli.d.ts +14 -0
- package/esm/cli.d.ts.map +1 -1
- package/esm/cli.js +7 -31
- package/esm/cli.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 +7 -14
- package/esm/exporter.d.ts.map +1 -1
- package/esm/exporter.js +52 -15
- package/esm/exporter.js.map +1 -1
- package/esm/exporter.test.d.ts +2 -0
- package/esm/exporter.test.d.ts.map +1 -0
- package/esm/exporter.test.js +81 -0
- package/esm/exporter.test.js.map +1 -0
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js.map +1 -1
- 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 +2 -1
- package/src/cli.tsx +9 -40
- package/src/esbuild.ts +24 -2
- package/src/exporter.test.ts +116 -0
- package/src/exporter.ts +59 -20
- package/src/index.ts +2 -0
- package/src/unframer-loader.ts +7 -3
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const vitest_1 = require("vitest");
|
|
4
|
+
const exporter_1 = require("./exporter");
|
|
5
|
+
const esbuild_1 = require("./esbuild");
|
|
6
|
+
(0, vitest_1.describe)('replaceWebPageIds', () => {
|
|
7
|
+
(0, vitest_1.test)('replaces webPageIds with paths', () => {
|
|
8
|
+
const elements = [
|
|
9
|
+
{ webPageId: 'abc123', path: '/page1' },
|
|
10
|
+
{ webPageId: 'def456', path: '/page2' },
|
|
11
|
+
];
|
|
12
|
+
const code = `{ webPageId: 'abc123' }`;
|
|
13
|
+
(0, vitest_1.expect)((0, esbuild_1.replaceWebPageIds)({ elements, code })).toEqual(`'/page1'`);
|
|
14
|
+
const code2 = `{ webPageId: "def456" }`;
|
|
15
|
+
(0, vitest_1.expect)((0, esbuild_1.replaceWebPageIds)({ elements, code: code2 })).toEqual(`'/page2'`);
|
|
16
|
+
});
|
|
17
|
+
(0, vitest_1.test)('handles whitespace variations', () => {
|
|
18
|
+
const elements = [{ webPageId: 'abc123', path: '/page1' }];
|
|
19
|
+
const code = `{webPageId:'abc123'}`;
|
|
20
|
+
(0, vitest_1.expect)((0, esbuild_1.replaceWebPageIds)({ elements, code })).toEqual(`'/page1'`);
|
|
21
|
+
const code2 = `{ webPageId : 'abc123' }`;
|
|
22
|
+
(0, vitest_1.expect)((0, esbuild_1.replaceWebPageIds)({ elements, code: code2 })).toEqual(`'/page1'`);
|
|
23
|
+
const code3 = `{ href: { webPageId: 'zRPFqFbvc' } }`;
|
|
24
|
+
(0, vitest_1.expect)((0, esbuild_1.replaceWebPageIds)({
|
|
25
|
+
elements: [{ webPageId: 'zRPFqFbvc', path: '/page1' }],
|
|
26
|
+
code: code3,
|
|
27
|
+
})).toEqual(`{ href: '/page1' }`);
|
|
28
|
+
const code4 = `/* @__PURE__ */ _jsx(Link, {
|
|
29
|
+
href: { webPageId: 'zRPFqFbvc', },
|
|
30
|
+
nodeId: 'aU2SMIi6t',`;
|
|
31
|
+
(0, vitest_1.expect)((0, esbuild_1.replaceWebPageIds)({
|
|
32
|
+
elements: [{ webPageId: 'zRPFqFbvc', path: '/page1' }],
|
|
33
|
+
code: code4,
|
|
34
|
+
})).toMatchInlineSnapshot(`
|
|
35
|
+
"/* @__PURE__ */ _jsx(Link, {
|
|
36
|
+
href: '/page1',
|
|
37
|
+
nodeId: 'aU2SMIi6t',"
|
|
38
|
+
`);
|
|
39
|
+
});
|
|
40
|
+
(0, vitest_1.test)('preserves non-matching webPageIds', () => {
|
|
41
|
+
const elements = [{ webPageId: 'abc123', path: '/page1' }];
|
|
42
|
+
const code = `{ webPageId: 'xyz789' }`;
|
|
43
|
+
(0, vitest_1.expect)((0, esbuild_1.replaceWebPageIds)({ elements, code })).toEqual(`{ webPageId: 'xyz789' }`);
|
|
44
|
+
});
|
|
45
|
+
(0, vitest_1.test)('handles newlines in input', () => {
|
|
46
|
+
const elements = [{ webPageId: 'abc123', path: '/page1' }];
|
|
47
|
+
const code = `{\n webPageId: 'abc123'\n}`;
|
|
48
|
+
(0, vitest_1.expect)((0, esbuild_1.replaceWebPageIds)({ elements, code })).toEqual(`'/page1'`);
|
|
49
|
+
const code2 = `{\n\n webPageId:\n 'abc123'\n\n}`;
|
|
50
|
+
(0, vitest_1.expect)((0, esbuild_1.replaceWebPageIds)({ elements, code: code2 })).toEqual(`'/page1'`);
|
|
51
|
+
});
|
|
52
|
+
});
|
|
53
|
+
(0, vitest_1.describe)('propCamelCase', () => {
|
|
54
|
+
(0, vitest_1.test)('converts dashes to camelCase', () => {
|
|
55
|
+
(0, vitest_1.expect)((0, exporter_1.propCamelCase)('foo-bar')).toMatchInlineSnapshot('"fooBar"');
|
|
56
|
+
(0, vitest_1.expect)((0, exporter_1.propCamelCase)('foo-bar-baz')).toMatchInlineSnapshot('"fooBarBaz"');
|
|
57
|
+
});
|
|
58
|
+
(0, vitest_1.test)('converts example-variable_dashes etc XX something 11 to camelCase', () => {
|
|
59
|
+
(0, vitest_1.expect)((0, exporter_1.propCamelCase)('example-variable_dashes etc XX something 11')).toBe(`exampleVariableDashesEtcXXSomething11`);
|
|
60
|
+
});
|
|
61
|
+
(0, vitest_1.test)('converts 0 starts with ZeroEtc to camelCase', () => {
|
|
62
|
+
(0, vitest_1.expect)((0, exporter_1.propCamelCase)('0 starts with ZeroEtc')).toBe(`_0StartsWithZeroEtc`);
|
|
63
|
+
});
|
|
64
|
+
(0, vitest_1.test)('converts underscores to camelCase', () => {
|
|
65
|
+
(0, vitest_1.expect)((0, exporter_1.propCamelCase)('foo_bar')).toMatchInlineSnapshot('"fooBar"');
|
|
66
|
+
(0, vitest_1.expect)((0, exporter_1.propCamelCase)('foo_bar_baz')).toMatchInlineSnapshot('"fooBarBaz"');
|
|
67
|
+
});
|
|
68
|
+
(0, vitest_1.test)('removes spaces and camelCases', () => {
|
|
69
|
+
(0, vitest_1.expect)((0, exporter_1.propCamelCase)('Foo Bar')).toMatchInlineSnapshot('"fooBar"');
|
|
70
|
+
(0, vitest_1.expect)((0, exporter_1.propCamelCase)('Foo Bar Baz')).toMatchInlineSnapshot('"fooBarBaz"');
|
|
71
|
+
});
|
|
72
|
+
(0, vitest_1.test)('ensures first character is lowercase', () => {
|
|
73
|
+
(0, vitest_1.expect)((0, exporter_1.propCamelCase)('FooBar')).toMatchInlineSnapshot('"fooBar"');
|
|
74
|
+
(0, vitest_1.expect)((0, exporter_1.propCamelCase)('Foo')).toMatchInlineSnapshot('"foo"');
|
|
75
|
+
});
|
|
76
|
+
(0, vitest_1.test)('handles empty string', () => {
|
|
77
|
+
(0, vitest_1.expect)((0, exporter_1.propCamelCase)('')).toMatchInlineSnapshot('""');
|
|
78
|
+
});
|
|
79
|
+
(0, vitest_1.test)('handles mixed cases', () => {
|
|
80
|
+
(0, vitest_1.expect)((0, exporter_1.propCamelCase)('Foo-Bar_Baz Test')).toMatchInlineSnapshot(`"fooBar_BazTest"`);
|
|
81
|
+
});
|
|
82
|
+
});
|
|
83
|
+
//# sourceMappingURL=exporter.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"exporter.test.js","sourceRoot":"","sources":["../src/exporter.test.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAG3B,OAAO,EACH,YAAY,EACZ,kBAAkB,EAClB,qBAAqB,GACxB,MAAM,YAAY,CAAA"}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,8CAA2B;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,8CAA2B;AAG3B,uCAImB;AAHf,wGAAA,YAAY,OAAA;AAEZ,iHAAA,qBAAqB,OAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unframer-loader.d.ts","sourceRoot":"","sources":["../src/unframer-loader.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"unframer-loader.d.ts","sourceRoot":"","sources":["../src/unframer-loader.ts"],"names":[],"mappings":"AAEA,wBAAsB,OAAO,CAAC,SAAS,KAAA,EAAE,OAAO,KAAA,EAAE,cAAc,KAAA,gBAW/D"}
|
package/dist/unframer-loader.js
CHANGED
|
@@ -10,12 +10,13 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.resolve = resolve;
|
|
13
|
+
const mapPackages = JSON.parse(process.env.UNFRAMER_MAP_PACKAGES || '{}');
|
|
13
14
|
function resolve(specifier, context, defaultResolve) {
|
|
14
15
|
return __awaiter(this, void 0, void 0, function* () {
|
|
15
|
-
if (specifier
|
|
16
|
+
if (mapPackages[specifier]) {
|
|
16
17
|
return {
|
|
17
|
-
url:
|
|
18
|
-
format: 'module', // Specify that unframer is an ES module
|
|
18
|
+
url: mapPackages[specifier],
|
|
19
|
+
// format: 'module', // Specify that unframer is an ES module
|
|
19
20
|
shortCircuit: true, // Signal that we're intentionally not calling next hook
|
|
20
21
|
};
|
|
21
22
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unframer-loader.js","sourceRoot":"","sources":["../src/unframer-loader.ts"],"names":[],"mappings":";;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"unframer-loader.js","sourceRoot":"","sources":["../src/unframer-loader.ts"],"names":[],"mappings":";;;;;;;;;;;AAEA,0BAWC;AAbD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,IAAI,CAAC,CAAA;AAEzE,SAAsB,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,cAAc;;QAC5D,IAAI,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC;YACzB,OAAO;gBACH,GAAG,EAAE,WAAW,CAAC,SAAS,CAAC;gBAC3B,6DAA6D;gBAC7D,YAAY,EAAE,IAAI,EAAE,wDAAwD;aAC/E,CAAA;QACL,CAAC;QAGD,OAAO,cAAc,CAAC,SAAS,EAAE,OAAO,EAAE,cAAc,CAAC,CAAA;IAC7D,CAAC;CAAA"}
|
package/esm/cli.d.ts
CHANGED
|
@@ -1,2 +1,16 @@
|
|
|
1
|
+
import { StyleToken } from './exporter.js';
|
|
2
|
+
import { BreakpointSizes } from './css.js';
|
|
1
3
|
export declare const cli: import("cac").CAC;
|
|
4
|
+
export type Config = {
|
|
5
|
+
components: {
|
|
6
|
+
[name: string]: string;
|
|
7
|
+
};
|
|
8
|
+
framerWebPages?: {
|
|
9
|
+
webPageId: string;
|
|
10
|
+
path: string;
|
|
11
|
+
}[];
|
|
12
|
+
breakpoints?: BreakpointSizes;
|
|
13
|
+
tokens?: StyleToken[];
|
|
14
|
+
outDir?: string;
|
|
15
|
+
};
|
|
2
16
|
//# sourceMappingURL=cli.d.ts.map
|
package/esm/cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAU,UAAU,EAAE,MAAM,eAAe,CAAA;AAMlD,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAI1C,eAAO,MAAM,GAAG,mBAAkB,CAAA;AAmJlC,MAAM,MAAM,MAAM,GAAG;IACjB,UAAU,EAAE;QACR,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;KACzB,CAAA;IACD,cAAc,CAAC,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IACtD,WAAW,CAAC,EAAE,eAAe,CAAA;IAC7B,MAAM,CAAC,EAAE,UAAU,EAAE,CAAA;IACrB,MAAM,CAAC,EAAE,MAAM,CAAA;CAClB,CAAA"}
|
package/esm/cli.js
CHANGED
|
@@ -39,7 +39,9 @@ cli.command('[projectId]', 'Run unframer with optional project ID')
|
|
|
39
39
|
return;
|
|
40
40
|
}
|
|
41
41
|
const data = yield response.json();
|
|
42
|
-
|
|
42
|
+
logger.log('unframer data', data);
|
|
43
|
+
let cwd = path.resolve(process.cwd(), outDir || 'framer');
|
|
44
|
+
return yield bundle({
|
|
43
45
|
config: {
|
|
44
46
|
outDir,
|
|
45
47
|
components: Object.fromEntries(data.components.map((c) => [
|
|
@@ -47,9 +49,10 @@ cli.command('[projectId]', 'Run unframer with optional project ID')
|
|
|
47
49
|
c.url,
|
|
48
50
|
])),
|
|
49
51
|
tokens: data.colorStyles,
|
|
52
|
+
framerWebPages: data.framerWebPages || [],
|
|
50
53
|
},
|
|
51
54
|
watch: false,
|
|
52
|
-
|
|
55
|
+
cwd,
|
|
53
56
|
signal: new AbortController().signal,
|
|
54
57
|
});
|
|
55
58
|
}
|
|
@@ -73,11 +76,11 @@ cli.command('[projectId]', 'Run unframer with optional project ID')
|
|
|
73
76
|
}
|
|
74
77
|
let controller = new AbortController();
|
|
75
78
|
setMaxListeners(0, controller.signal);
|
|
76
|
-
|
|
79
|
+
yield bundle({
|
|
77
80
|
config,
|
|
78
81
|
watch: false,
|
|
79
82
|
signal: controller.signal,
|
|
80
|
-
|
|
83
|
+
cwd: path.resolve(process.cwd(), outDir || 'framer'),
|
|
81
84
|
});
|
|
82
85
|
});
|
|
83
86
|
});
|
|
@@ -137,31 +140,4 @@ function getNewNames(oldConfig, newConfig) {
|
|
|
137
140
|
});
|
|
138
141
|
return newNames;
|
|
139
142
|
}
|
|
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
143
|
//# 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;AAE7D,MAAM,CAAC,MAAM,GAAG,GAAG,GAAG,CAAC,UAAU,CAAC,CAAA;AAElC,IAAI,aAAa,GAAG,QAAQ,CAAA;AAE5B,SAAS,YAAY,CAAC,IAAY;IAC9B,OAAO,IAAI;SACN,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC,qCAAqC;SACnE,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,2CAA2C;SAC/D,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,iCAAiC;SACvD,WAAW,EAAE,CAAA;AACtB,CAAC;AAED,GAAG,CAAC,OAAO,CAAC,aAAa,EAAE,uCAAuC,CAAC;KAC9D,MAAM,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC;KACxE,MAAM,CAAC,SAAe,IAAI,CAAC,SAAS,EAAE,OAAO;;QAC1C,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAA;QAC7B,IAAI,SAAS,EAAE,CAAC;YACZ,MAAM,CAAC,GAAG,CAAC,+BAA+B,SAAS,EAAE,CAAC,CAAA;YACtD,MAAM,QAAQ,GAAG,MAAM,KAAK,CACxB,IAAI,GAAG,CACH,0CAA0C,SAAS,EAAE,EACrD,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,qBAAqB,CAC3D,CAAC,QAAQ,EAAE,CACf,CAAA;YACD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAA;gBAC9C,MAAM,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;gBACpD,OAAM;YACV,CAAC;YACD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;YAClC,OAAO,
|
|
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;AAE7D,MAAM,CAAC,MAAM,GAAG,GAAG,GAAG,CAAC,UAAU,CAAC,CAAA;AAElC,IAAI,aAAa,GAAG,QAAQ,CAAA;AAE5B,SAAS,YAAY,CAAC,IAAY;IAC9B,OAAO,IAAI;SACN,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC,qCAAqC;SACnE,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,2CAA2C;SAC/D,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,iCAAiC;SACvD,WAAW,EAAE,CAAA;AACtB,CAAC;AAED,GAAG,CAAC,OAAO,CAAC,aAAa,EAAE,uCAAuC,CAAC;KAC9D,MAAM,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC;KACxE,MAAM,CAAC,SAAe,IAAI,CAAC,SAAS,EAAE,OAAO;;QAC1C,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAA;QAC7B,IAAI,SAAS,EAAE,CAAC;YACZ,MAAM,CAAC,GAAG,CAAC,+BAA+B,SAAS,EAAE,CAAC,CAAA;YACtD,MAAM,QAAQ,GAAG,MAAM,KAAK,CACxB,IAAI,GAAG,CACH,0CAA0C,SAAS,EAAE,EACrD,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,qBAAqB,CAC3D,CAAC,QAAQ,EAAE,CACf,CAAA;YACD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAA;gBAC9C,MAAM,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;gBACpD,OAAM;YACV,CAAC;YACD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;YAClC,MAAM,CAAC,GAAG,CAAC,eAAe,EAAE,IAAI,CAAC,CAAA;YACjC,IAAI,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,IAAI,QAAQ,CAAC,CAAA;YACzD,OAAO,MAAM,MAAM,CAAC;gBAChB,MAAM,EAAE;oBACJ,MAAM;oBACN,UAAU,EAAE,MAAM,CAAC,WAAW,CAC1B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;wBACvB,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC;wBACpB,CAAC,CAAC,GAAG;qBACR,CAAC,CACL;oBACD,MAAM,EAAE,IAAI,CAAC,WAAW;oBACxB,cAAc,EAAE,IAAI,CAAC,cAAc,IAAI,EAAE;iBAC5C;gBACD,KAAK,EAAE,KAAK;gBAEZ,GAAG;gBACH,MAAM,EAAE,IAAI,eAAe,EAAE,CAAC,MAAM;aACvC,CAAC,CAAA;QACN,CAAC;QAED,kBAAkB,EAAE,CAAA;QACpB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAA;QACzB,MAAM,CAAC,GAAG,CAAC,eAAe,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC,CAAA;QAC7D,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,WAAW,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;QACrD,IAAI,CAAC,UAAU,EAAE,CAAC;YACd,MAAM,CAAC,GAAG,CAAC,MAAM,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YAChD,OAAM;QACV,CAAC;QACD,MAAM,cAAc,GAAG,QAAQ,CAAC,UAAW,CAAC,CAAA;QAC5C,MAAM,aAAa,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;QACzD,IAAI,CAAC,aAAa,EAAE,CAAC;YACjB,MAAM,CAAC,GAAG,CAAC,MAAM,cAAc,iBAAiB,CAAC,CAAA;YACjD,OAAM;QACV,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAA;QACxC,IAAI,MAAM,KAAK,aAAa,EAAE,CAAC;YAC3B,MAAM,CAAC,MAAM,GAAG,MAAM,CAAA;QAC1B,CAAC;QAED,IAAI,UAAU,GAAG,IAAI,eAAe,EAAE,CAAA;QACtC,eAAe,CAAC,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,CAAA;QACrC,MAAM,MAAM,CAAC;YACT,MAAM;YACN,KAAK,EAAE,KAAK;YACZ,MAAM,EAAE,UAAU,CAAC,MAAM;YACzB,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,IAAI,QAAQ,CAAC;SACvD,CAAC,CAAA;IACN,CAAC;CAAA,CAAC,CAAA;AAEN,MAAM,aAAa,GAAG;;;;;;;;CAQrB,CAAA;AAED,SAAS,kBAAkB;IACvB,6DAA6D;IAE7D,MAAM,aAAa,GAAG,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,CAAA;IACpD,IAAI,aAAa,EAAE,CAAC;QAChB,EAAE,CAAC,UAAU,CAAC,eAAe,EAAE,sBAAsB,CAAC,CAAA;QACtD,MAAM,CAAC,KAAK,CACR,6DAA6D,CAChE,CAAA;QACD,OAAO,IAAI,CAAA;IACf,CAAC;IACD,OAAO,KAAK,CAAA;AAChB,CAAC;AACD,MAAM,OAAO,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAA;AAElD,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAA;AAE3B,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,sCAAsC,CAAC,CAAC,MAAM,CAC9D,CAAO,OAAO,EAAE,EAAE;IACd,IAAI,KAAK,GAAG,kBAAkB,EAAE,CAAA;IAChC,IAAI,KAAK,EAAE,CAAC;QACR,OAAM;IACV,CAAC;IACD,EAAE,CAAC,aAAa,CAAC,sBAAsB,EAAE,aAAa,CAAC,CAAA;IACvD,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,sBAAsB,CAAC,CAAA;IAC7D,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,eAAe,CAAC,CAAA;AACpC,CAAC,CAAA,CACJ,CAAA;AAED,SAAS,aAAa,CAAC,IAAY;IAC/B,IAAI,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IAC3B,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,OAAO,IAAI,CAAA;IACf,CAAC;AACL,CAAC;AAED,SAAS,KAAK,CAAuB,CAAI,EAAE,KAAU;IACjD,OAAO,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAC1D,CAAC;AAED,SAAS,WAAW,CAAC,SAAiB,EAAE,SAAiB;IACrD,+EAA+E;IAC/E,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA;IACjD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA;IACjD,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE;QACpC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACzB,OAAO,IAAI,CAAA;QACf,CAAC;QACD,IAAI,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1D,OAAO,IAAI,CAAA;QACf,CAAC;QACD,OAAO,KAAK,CAAA;IAChB,CAAC,CAAC,CAAA;IACF,OAAO,QAAQ,CAAA;AACnB,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":";;;;;;;;;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;AAEtD,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,EAC9B,QAAQ,EACR,IAAI,GAIP,EAAE,EAAE;IACD,uDAAuD;IACvD,MAAM,OAAO,GAAG,iEAAiE,CAAA;IAEjF,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE;;QAC9C,MAAM,IAAI,GAAG,MAAA,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,EAAE,CAAC,0CAAE,IAAI,CAAA;QAC3D,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,OAAO,KAAK,CAAA;QAChB,CAAC;QAED,MAAM,CAAC,GAAG,CAAC,8BAA8B,EAAE,qBAAqB,IAAI,EAAE,CAAC,CAAA;QACvE,OAAO,IAAI,IAAI,GAAG,CAAA;IACtB,CAAC,CAAC,CAAA;AACN,CAAC,CAAA;AAED,MAAM,UAAU,+BAA+B,CAAC,EAC5C,MAAM,GAAG,SAAoC,EAC7C,cAAc,GAAG,KAAK,GACzB;IACG,MAAM,SAAS,GAAG,IAAI,GAAG,EAAE,CAAA;IAC3B,MAAM,OAAO,GAAG,aAAa,CAAC,oCAAoC,CAAC,CAAA;IACnE,OAAO,CAAC,KAAK,EAAE,CAAA;IACf,MAAM,MAAM,GAAW;QACnB,IAAI,EAAE,gBAAgB;QACtB,KAAK,CAAC,KAAK;YACP,MAAM,SAAS,GAAG,QAAQ,CAAA;YAC1B,KAAK,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE;gBACjD,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBAC9B,OAAO;oBACH,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,QAAQ,EAAE,KAAK;oBACf,sBAAsB;oBACtB,SAAS;iBACZ,CAAA;YACL,CAAC,CAAC,CAAA;YACF,MAAM,UAAU,GAAG,CAAC,IAAI,EAAE,EAAE;gBACxB,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,EAAE,CAAC;oBAClB,MAAM,IAAI,KAAK,CAAC,SAAS,CAAC,CAAA;gBAC9B,CAAC;gBACD,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;oBACnC,OAAO;wBACH,IAAI,EAAE,IAAI,CAAC,IAAI;wBACf,QAAQ,EAAE,KAAK;wBACf,sBAAsB;wBACtB,SAAS;qBACZ,CAAA;gBACL,CAAC;gBACD,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACzB,OAAO;wBACH,IAAI,EAAE,UAAU;wBAChB,QAAQ,EAAE,IAAI;qBACjB,CAAA;gBACL,CAAC;gBACD,IAAI,eAAe,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;oBAChC,OAAO;wBACH,IAAI,EAAE,UAAU;wBAChB,QAAQ,EAAE,IAAI;qBACjB,CAAA;gBACL,CAAC;gBACD,IACI,gBAAgB,CAAC,IAAI,CACjB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,GAAG,GAAG,CAAC,CAC1D,EACH,CAAC;oBACC,OAAO;wBACH,IAAI,EAAE,IAAI,CAAC,IAAI;wBACf,QAAQ,EAAE,IAAI;qBACjB,CAAA;gBACL,CAAC;gBAED,oCAAoC;gBACpC,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;oBACzD,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAA;oBACtD,2BAA2B;oBAC3B,OAAO;wBACH,IAAI,EAAE,CAAC;wBACP,SAAS;qBACZ,CAAA;gBACL,CAAC;gBACD,IAAI,cAAc,EAAE,CAAC;oBACjB,OAAO;wBACH,IAAI,EAAE,IAAI,CAAC,IAAI;wBACf,QAAQ,EAAE,IAAI;qBACjB,CAAA;gBACL,CAAC;gBAED,MAAM,GAAG,GAAG,kBAAkB,IAAI,CAAC,IAAI,EAAE,CAAA;gBAEzC,OAAO;oBACH,IAAI,EAAE,GAAG;oBACT,SAAS;oBACT,QAAQ,EAAE,KAAK;iBAClB,CAAA;YACL,CAAC,CAAA;YACD,iDAAiD;YACjD,KAAK,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,UAAU,CAAC,CAAA;YACxD,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE;gBACb,OAAO,CAAC,IAAI,EAAE,CAAA;YAClB,CAAC,CAAC,CAAA;YAEF,KAAK,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,CAAO,IAAI,EAAE,EAAE;gBACrD,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,EAAE,CAAC;oBAClB,MAAM,IAAI,KAAK,CAAC,SAAS,CAAC,CAAA;gBAC9B,CAAC;gBACD,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAA;gBACrB,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAA;gBACtB,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC;oBACnC,GAAG;oBACH,aAAa;oBACb,MAAM;iBACT,CAAC,CAAA;gBACF,IAAI,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;oBACrB,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;oBACrC,OAAO;wBACH,QAAQ,EAAE,IAAI;wBACd,MAAM,EAAE,IAAI;qBACf,CAAA;gBACL,CAAC;gBACD,IAAI,MAAM,GAAG,KAAY,CAAA;gBACzB,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAS,EAAE;;oBAC9C,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC,CAAA;oBACtD,OAAO,CAAC,MAAM,CAAC,YAAY,GAAG,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,EAAE,CAAC,CAAA;oBAE5D,MAAM,GAAG,GAAG,MAAM,cAAc,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,CAAC,CAAA;oBACtD,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;wBACV,MAAM,IAAI,KAAK,CACX,gBAAgB,QAAQ,KAAK,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,UAAU,EAAE,CAC9D,CAAA;oBACL,CAAC;oBACD,uDAAuD;oBACvD,IACI,MAAA,GAAG,CAAC,OAAO;yBACN,GAAG,CAAC,cAAc,CAAC,0CAClB,UAAU,CAAC,kBAAkB,CAAC,EACtC,CAAC;wBACC,MAAM,GAAG,MAAM,CAAA;wBACf,OAAO,MAAM,GAAG,CAAC,IAAI,EAAE,CAAA;oBAC3B,CAAC;oBACD,IAAI,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAA;oBAE3B,sDAAsD;oBACtD,kCAAkC;oBAClC,IAAI,GAAG,IAAI,CAAC,OAAO,CACf,kCAAkC,EAClC,uBAAuB,CAC1B,CAAA;oBAED,MAAM,WAAW,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE;wBACtC,MAAM,EAAE;4BACJ,iBAAiB,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;yBAC9C;wBACD,MAAM,EAAE,KAAK;wBACb,MAAM,EAAE,KAAK;wBACb,GAAG,EAAE,WAAW;wBAChB,QAAQ,EAAE,OAAO;wBACjB,MAAM;wBACN,QAAQ,EAAE,SAAS;qBACtB,CAAC,CAAA;oBACF,uCAAuC;oBACvC,OAAO,WAAW,CAAC,IAAI,CAAA;gBAC3B,CAAC,CAAA,CAAC,CAAA;gBAEF,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;oBACnB,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;gBAC/B,CAAC;gBACD,MAAM,IAAI,GAAG,MAAM,OAAO,CAAA;gBAE1B,OAAO;oBACH,QAAQ,EAAE,IAAI;oBAEd,MAAM;iBACT,CAAA;YACL,CAAC,CAAA,CAAC,CAAA;QACN,CAAC;KACJ,CAAA;IACD,OAAO,MAAM,CAAA;AACjB,CAAC;AAED,MAAM,UAAgB,eAAe;yDAAC,EAClC,aAAa,EACb,MAAM,EACN,GAAG,GAKN;QACG,IAAI,CAAC,GAAG,EAAE,CAAC;YACP,OAAO,EAAE,CAAA;QACb,CAAC;QACD,GAAG,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAA;QAEpB,IAAI,aAAa,IAAI,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1C,OAAO,MAAM,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACvC,CAAC;QAED,yCAAyC;QACzC,MAAM,CAAC,GAAG,wBAAwB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;QAC/C,4CAA4C;QAE5C,IAAI,aAAa,EAAE,CAAC;YAChB,aAAa,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;QAC7B,CAAC;QACD,OAAO,MAAM,CAAC,CAAA;IAClB,CAAC;CAAA;AAED,MAAM,UAAgB,wBAAwB,CAC1C,GAAY,EACZ,MAAoB;;QAEpB,IAAI,CAAC,GAAG,EAAE,CAAC;YACP,OAAM;QACV,CAAC;QAED,IAAI,GAAG,GAAG,MAAM,cAAc,CAAC,GAAG,EAAE;YAChC,QAAQ,EAAE,QAAQ;YAClB,MAAM,EAAE,MAAM;YACd,MAAM,EAAE,MAAM;SACjB,CAAC,CAAA;QACF,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;QACvC,IAAI,GAAG,CAAC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAE,CAAC;YAC/C,8BAA8B;YAC9B,OAAO,wBAAwB,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAA;QACtE,CAAC;QAED,OAAO,GAAG,CAAA;IACd,CAAC;CAAA;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,UAAU,CAAC,KAAK,CAAiB,CAAA;AAE/D,MAAM,UAAU,UAAU,CAAqB,EAAY;IACvD,OAAO,CAAO,GAAG,IAAI,EAAE,EAAE;QACrB,IAAI,CAAC;YACD,OAAO,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC,CAAA;QAC5B,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YACd,sBAAsB;YACtB,IAAI,CAAC,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBAC1B,OAAM;YACV,CAAC;YACD,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC,CAAA;YACnC,OAAO,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC,CAAA;QAC5B,CAAC;IACL,CAAC,CAAA,CAAA;AACL,CAAC"}
|
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;
|
|
@@ -49,5 +41,6 @@ type ExtractedTokenInfo = {
|
|
|
49
41
|
};
|
|
50
42
|
export declare function extractTokenInfo(code: string): ExtractedTokenInfo[];
|
|
51
43
|
export declare function componentCamelCase(str: string): string;
|
|
44
|
+
export declare function propCamelCase(str: string): string;
|
|
52
45
|
export {};
|
|
53
46
|
//# sourceMappingURL=exporter.d.ts.map
|
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":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AAY9B,OAAO,EAEH,mBAAmB,EAKtB,MAAM,UAAU,CAAA;AAOjB,OAAO,EAGH,gBAAgB,EAEnB,MAAM,aAAa,CAAA;AAWpB,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;;;;;;;;eA8ZA;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
|
@@ -17,7 +17,7 @@ import dedent from '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,
|
|
32
|
+
return __awaiter(this, arguments, void 0, function* ({ config, cwd: out = '', watch = false, signal = undefined, }) {
|
|
33
33
|
var _b;
|
|
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 {
|
|
@@ -121,6 +122,12 @@ export function bundle(_a) {
|
|
|
121
122
|
trailingCommas: 'always',
|
|
122
123
|
semiColons: 'always',
|
|
123
124
|
});
|
|
125
|
+
if (framerWebPages === null || framerWebPages === void 0 ? void 0 : framerWebPages.length) {
|
|
126
|
+
codeNew = replaceWebPageIds({
|
|
127
|
+
code: codeNew,
|
|
128
|
+
elements: framerWebPages,
|
|
129
|
+
});
|
|
130
|
+
}
|
|
124
131
|
const lines = findRelativeLinks(codeNew);
|
|
125
132
|
if (lines.length) {
|
|
126
133
|
spinner.error(`found broken links for ${path.relative(out, file.path)}, don't use relative links in Framer components`);
|
|
@@ -178,7 +185,7 @@ export function bundle(_a) {
|
|
|
178
185
|
const cssString = '/* This file was generated by Unframer, do not edit manually */\n' +
|
|
179
186
|
'/* This css file has all the necessary styles to run all your components */\n' +
|
|
180
187
|
'\n' +
|
|
181
|
-
getStyleTokensCss(tokens) +
|
|
188
|
+
getStyleTokensCss(tokens || []) +
|
|
182
189
|
breakpointsStyles(breakpoints) +
|
|
183
190
|
'\n\n' +
|
|
184
191
|
combinedCSSRules
|
|
@@ -236,12 +243,18 @@ export function bundle(_a) {
|
|
|
236
243
|
yield buildContext.dispose();
|
|
237
244
|
console.log();
|
|
238
245
|
console.log();
|
|
239
|
-
let
|
|
246
|
+
let withBreakpoints = (_b = result === null || result === void 0 ? void 0 : result.components) === null || _b === void 0 ? void 0 : _b.filter((x) => {
|
|
240
247
|
if (!x.propertyControls)
|
|
241
248
|
return false;
|
|
242
249
|
const variants = getVariantsFromPropControls(x.propertyControls);
|
|
243
250
|
return (variants === null || variants === void 0 ? void 0 : variants.breakpoints.length) >= 2;
|
|
244
251
|
});
|
|
252
|
+
withBreakpoints = withBreakpoints === null || withBreakpoints === void 0 ? void 0 : withBreakpoints.sort((a, b) => {
|
|
253
|
+
const aProp = findExampleProperty(a.propertyControls);
|
|
254
|
+
const bProp = findExampleProperty(b.propertyControls);
|
|
255
|
+
return (bProp ? 1 : 0) - (aProp ? 1 : 0);
|
|
256
|
+
});
|
|
257
|
+
let exampleComponent = withBreakpoints === null || withBreakpoints === void 0 ? void 0 : withBreakpoints[0];
|
|
245
258
|
if (!exampleComponent) {
|
|
246
259
|
logger.log(`No example component found with breakpoints, using random example`);
|
|
247
260
|
// Create an example component if none found with breakpoints
|
|
@@ -392,9 +405,6 @@ export function getStyleTokensCss(tokens, darkModeType = 'class') {
|
|
|
392
405
|
content: darkTokens,
|
|
393
406
|
}));
|
|
394
407
|
}
|
|
395
|
-
function decapitalize(str) {
|
|
396
|
-
return str.charAt(0).toLowerCase() + str.slice(1);
|
|
397
|
-
}
|
|
398
408
|
export function findRelativeLinks(text) {
|
|
399
409
|
const regex = /webPageId:\s+/g;
|
|
400
410
|
const lines = text.split('\n');
|
|
@@ -514,7 +524,6 @@ function getTokensCss({ out, result, }) {
|
|
|
514
524
|
return tokensCss;
|
|
515
525
|
}
|
|
516
526
|
const nodePath = process.argv[0] || 'node';
|
|
517
|
-
let UNFRAMER_RUNTIME_PATH = url.pathToFileURL(require.resolve('../esm/index.js')).href;
|
|
518
527
|
export function extractPropControlsUnsafe(filename, name) {
|
|
519
528
|
return __awaiter(this, void 0, void 0, function* () {
|
|
520
529
|
const delimiter = '__delimiter__';
|
|
@@ -522,15 +531,22 @@ export function extractPropControlsUnsafe(filename, name) {
|
|
|
522
531
|
const fileUrl = url.pathToFileURL(filename).href;
|
|
523
532
|
const code = `import(${JSON.stringify(fileUrl)}).then(x => { console.log(${JSON.stringify(delimiter)}); console.log(${propCode}) })`;
|
|
524
533
|
const TIMEOUT = 5 * 1000;
|
|
534
|
+
const UNFRAMER_MAP_PACKAGES = JSON.stringify({
|
|
535
|
+
unframer: url.pathToFileURL(require.resolve('../esm/index.js')).href,
|
|
536
|
+
react: url.pathToFileURL(require.resolve('react')).href,
|
|
537
|
+
'react-dom': url.pathToFileURL(require.resolve('react-dom')).href,
|
|
538
|
+
});
|
|
525
539
|
let stdout = yield new Promise((res, rej) => {
|
|
526
540
|
let childProcess = exec(`${JSON.stringify(nodePath)} --input-type=module --loader ${require.resolve('../dist/unframer-loader.js')} -e ${JSON.stringify(code)}`, {
|
|
527
541
|
env: {
|
|
528
542
|
// ...process.env,
|
|
529
|
-
|
|
543
|
+
UNFRAMER_MAP_PACKAGES,
|
|
530
544
|
},
|
|
531
|
-
}, (err, stdout) => {
|
|
545
|
+
}, (err, stdout, stderr) => {
|
|
532
546
|
clearTimeout(timer);
|
|
533
547
|
if (err) {
|
|
548
|
+
spinner.error(`error extracting types for ${name}`);
|
|
549
|
+
spinner.error(stderr);
|
|
534
550
|
return rej(err);
|
|
535
551
|
}
|
|
536
552
|
res(stdout);
|
|
@@ -540,11 +556,13 @@ export function extractPropControlsUnsafe(filename, name) {
|
|
|
540
556
|
rej(new Error(`Timed out after ${TIMEOUT}ms while extracting types for ${name}`));
|
|
541
557
|
}, TIMEOUT);
|
|
542
558
|
}).catch((e) => {
|
|
543
|
-
spinner.error(`error extracting types for ${name}`);
|
|
544
559
|
logger.log(e.stack);
|
|
545
|
-
|
|
560
|
+
return '';
|
|
546
561
|
});
|
|
547
|
-
stdout = stdout.split(delimiter)[1];
|
|
562
|
+
stdout = stdout.split(delimiter)[1] || '';
|
|
563
|
+
if (!stdout) {
|
|
564
|
+
return {};
|
|
565
|
+
}
|
|
548
566
|
// console.log(stdout)
|
|
549
567
|
return safeJsonParse(stdout);
|
|
550
568
|
});
|
|
@@ -612,7 +630,7 @@ export function propControlsToType(controls, fileName) {
|
|
|
612
630
|
return 'Function';
|
|
613
631
|
}
|
|
614
632
|
};
|
|
615
|
-
let name =
|
|
633
|
+
let name = propCamelCase(value.title || key || '');
|
|
616
634
|
if (!name) {
|
|
617
635
|
return '';
|
|
618
636
|
}
|
|
@@ -774,6 +792,7 @@ function getVariantsFromPropControls(propControls) {
|
|
|
774
792
|
};
|
|
775
793
|
}
|
|
776
794
|
function findExampleProperty(propertyControls) {
|
|
795
|
+
var _a;
|
|
777
796
|
if (!propertyControls) {
|
|
778
797
|
return null;
|
|
779
798
|
}
|
|
@@ -784,6 +803,24 @@ function findExampleProperty(propertyControls) {
|
|
|
784
803
|
if (!stringProp) {
|
|
785
804
|
return null;
|
|
786
805
|
}
|
|
787
|
-
return stringProp[0
|
|
806
|
+
return propCamelCase(((_a = stringProp[1]) === null || _a === void 0 ? void 0 : _a.title) || '');
|
|
807
|
+
}
|
|
808
|
+
export function propCamelCase(str) {
|
|
809
|
+
if (!str) {
|
|
810
|
+
return '';
|
|
811
|
+
}
|
|
812
|
+
// Convert dashes to camelCase (e.g. foo-bar -> fooBar)
|
|
813
|
+
str = str.replace(/-([\w])/g, (g) => g[1].toUpperCase());
|
|
814
|
+
// Convert underscores to camelCase (e.g. foo_bar -> fooBar)
|
|
815
|
+
str = str.replace(/_([a-z])/g, (g) => g[1].toUpperCase());
|
|
816
|
+
// Remove spaces (e.g. "Foo Bar" -> "fooBar")
|
|
817
|
+
str = str.replace(/\s+(.)/g, (_, c) => c.toUpperCase());
|
|
818
|
+
// Ensure first character is lowercase
|
|
819
|
+
str = str[0].toLowerCase() + str.slice(1);
|
|
820
|
+
// Add underscore prefix if starts with number
|
|
821
|
+
if (/^\d/.test(str)) {
|
|
822
|
+
str = '_' + str;
|
|
823
|
+
}
|
|
824
|
+
return str;
|
|
788
825
|
}
|
|
789
826
|
//# sourceMappingURL=exporter.js.map
|