@compiled/parcel-transformer 0.16.2 → 0.18.0
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/dist/index.js +9 -5
- package/dist/index.js.map +1 -1
- package/dist/types.d.ts +7 -0
- package/package.json +4 -4
- package/src/index.ts +11 -3
- package/src/types.ts +8 -0
package/dist/index.js
CHANGED
|
@@ -59,7 +59,7 @@ exports.default = new plugin_1.Transformer({
|
|
|
59
59
|
return false;
|
|
60
60
|
},
|
|
61
61
|
async parse({ asset, config, options }) {
|
|
62
|
-
var _a, _b
|
|
62
|
+
var _a, _b;
|
|
63
63
|
// Disable stylesheet extraction locally due to https://github.com/atlassian-labs/compiled/issues/1306
|
|
64
64
|
const extract = config.extract && options.mode !== 'development';
|
|
65
65
|
if (!asset.isSource && !extract) {
|
|
@@ -67,8 +67,9 @@ exports.default = new plugin_1.Transformer({
|
|
|
67
67
|
return undefined;
|
|
68
68
|
}
|
|
69
69
|
const code = await asset.getCode();
|
|
70
|
-
if (
|
|
71
|
-
|
|
70
|
+
if (
|
|
71
|
+
// If neither Compiled (default) nor any of the additional import sources are found in the code, we bail out.
|
|
72
|
+
[...utils_1.DEFAULT_IMPORT_SOURCES, ...(config.importSources || [])].every((importSource) => !code.includes(importSource))) {
|
|
72
73
|
// We only want to parse files that are actually using Compiled.
|
|
73
74
|
// For everything else we bail out.
|
|
74
75
|
return undefined;
|
|
@@ -80,9 +81,9 @@ exports.default = new plugin_1.Transformer({
|
|
|
80
81
|
caller: { name: 'compiled' },
|
|
81
82
|
rootMode: 'upward-optional',
|
|
82
83
|
parserOpts: {
|
|
83
|
-
plugins: (
|
|
84
|
+
plugins: (_a = config.parserBabelPlugins) !== null && _a !== void 0 ? _a : utils_1.DEFAULT_PARSER_BABEL_PLUGINS,
|
|
84
85
|
},
|
|
85
|
-
plugins: (
|
|
86
|
+
plugins: (_b = config.transformerBabelPlugins) !== null && _b !== void 0 ? _b : undefined,
|
|
86
87
|
});
|
|
87
88
|
if (program) {
|
|
88
89
|
return {
|
|
@@ -95,6 +96,9 @@ exports.default = new plugin_1.Transformer({
|
|
|
95
96
|
},
|
|
96
97
|
async transform({ asset, config, options }) {
|
|
97
98
|
var _a, _b, _c, _d, _e;
|
|
99
|
+
if (config.extract && config.classHashPrefix) {
|
|
100
|
+
throw new Error('`@compiled/parcel-transformer` is mixing `extract: true` and `classHashPrefix` options, which will not supported and will result in bundle size bloat.');
|
|
101
|
+
}
|
|
98
102
|
const ast = await asset.getAST();
|
|
99
103
|
if (!((ast === null || ast === void 0 ? void 0 : ast.type) === 'babel' && ast.program)) {
|
|
100
104
|
// We will only receive ASTs for assets we're interested in.
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;AAAA,+BAA4B;AAE5B,sCAAgE;AAChE,iEAAwC;AAMxC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -61,5 +61,12 @@ export interface ParcelTransformerOpts extends BabelPluginOpts {
|
|
|
61
61
|
source: string;
|
|
62
62
|
dest: string;
|
|
63
63
|
};
|
|
64
|
+
/**
|
|
65
|
+
* Adds a defined prefix to the generated classes' hashes.
|
|
66
|
+
* Useful in micro frontend environments to avoid clashing/specificity issues.
|
|
67
|
+
*
|
|
68
|
+
* This will throw an error if used alongside extraction or `extract: true`.
|
|
69
|
+
*/
|
|
70
|
+
classHashPrefix?: string;
|
|
64
71
|
}
|
|
65
72
|
export {};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@compiled/parcel-transformer",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.18.0",
|
|
4
4
|
"description": "A familiar and performant compile time CSS-in-JS library for React.",
|
|
5
5
|
"homepage": "https://compiledcssinjs.com/docs/pkg-parcel-transformer",
|
|
6
6
|
"bugs": "https://github.com/atlassian-labs/compiled/issues/new?assignees=&labels=bug&template=bug_report.md",
|
|
@@ -22,9 +22,9 @@
|
|
|
22
22
|
"dependencies": {
|
|
23
23
|
"@babel/core": "^7.21.8",
|
|
24
24
|
"@babel/generator": "^7.21.5",
|
|
25
|
-
"@compiled/babel-plugin": "^0.
|
|
26
|
-
"@compiled/babel-plugin-strip-runtime": "^0.
|
|
27
|
-
"@compiled/utils": "^0.
|
|
25
|
+
"@compiled/babel-plugin": "^0.32.1",
|
|
26
|
+
"@compiled/babel-plugin-strip-runtime": "^0.32.0",
|
|
27
|
+
"@compiled/utils": "^0.13.0",
|
|
28
28
|
"@parcel/plugin": "^2.8.3",
|
|
29
29
|
"@parcel/source-map": "^2.1.1",
|
|
30
30
|
"@parcel/utils": "^2.8.3",
|
package/src/index.ts
CHANGED
|
@@ -7,7 +7,7 @@ import type {
|
|
|
7
7
|
PluginOptions as BabelStripRuntimePluginOptions,
|
|
8
8
|
BabelFileMetadata,
|
|
9
9
|
} from '@compiled/babel-plugin-strip-runtime';
|
|
10
|
-
import { DEFAULT_PARSER_BABEL_PLUGINS, toBoolean } from '@compiled/utils';
|
|
10
|
+
import { DEFAULT_IMPORT_SOURCES, DEFAULT_PARSER_BABEL_PLUGINS, toBoolean } from '@compiled/utils';
|
|
11
11
|
import { Transformer } from '@parcel/plugin';
|
|
12
12
|
import SourceMap from '@parcel/source-map';
|
|
13
13
|
// @ts-expect-error missing type
|
|
@@ -90,8 +90,10 @@ export default new Transformer<ParcelTransformerOpts>({
|
|
|
90
90
|
|
|
91
91
|
const code = await asset.getCode();
|
|
92
92
|
if (
|
|
93
|
-
|
|
94
|
-
(config.importSources
|
|
93
|
+
// If neither Compiled (default) nor any of the additional import sources are found in the code, we bail out.
|
|
94
|
+
[...DEFAULT_IMPORT_SOURCES, ...(config.importSources || [])].every(
|
|
95
|
+
(importSource) => !code.includes(importSource)
|
|
96
|
+
)
|
|
95
97
|
) {
|
|
96
98
|
// We only want to parse files that are actually using Compiled.
|
|
97
99
|
// For everything else we bail out.
|
|
@@ -122,6 +124,12 @@ export default new Transformer<ParcelTransformerOpts>({
|
|
|
122
124
|
},
|
|
123
125
|
|
|
124
126
|
async transform({ asset, config, options }) {
|
|
127
|
+
if (config.extract && config.classHashPrefix) {
|
|
128
|
+
throw new Error(
|
|
129
|
+
'`@compiled/parcel-transformer` is mixing `extract: true` and `classHashPrefix` options, which will not supported and will result in bundle size bloat.'
|
|
130
|
+
);
|
|
131
|
+
}
|
|
132
|
+
|
|
125
133
|
const ast = await asset.getAST();
|
|
126
134
|
|
|
127
135
|
if (!(ast?.type === 'babel' && ast.program)) {
|
package/src/types.ts
CHANGED
|
@@ -67,4 +67,12 @@ export interface ParcelTransformerOpts extends BabelPluginOpts {
|
|
|
67
67
|
* When set, extract styles to an external CSS file
|
|
68
68
|
*/
|
|
69
69
|
extractStylesToDirectory?: { source: string; dest: string };
|
|
70
|
+
|
|
71
|
+
/**
|
|
72
|
+
* Adds a defined prefix to the generated classes' hashes.
|
|
73
|
+
* Useful in micro frontend environments to avoid clashing/specificity issues.
|
|
74
|
+
*
|
|
75
|
+
* This will throw an error if used alongside extraction or `extract: true`.
|
|
76
|
+
*/
|
|
77
|
+
classHashPrefix?: string;
|
|
70
78
|
}
|