simplestyle-js 5.1.1 → 5.2.1
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 +6 -3
- package/dist/cjs/createStyles.cjs +23 -0
- package/dist/cjs/createStyles.d.ts +2 -1
- package/dist/cjs/index.d.ts +1 -1
- package/dist/cjs/makeStyles.cjs +16 -6
- package/dist/cjs/makeStyles.d.ts +6 -4
- package/dist/cjs/types.d.ts +1 -0
- package/dist/esm/createStyles.d.ts +2 -1
- package/dist/esm/createStyles.mjs +20 -0
- package/dist/esm/index.d.ts +1 -1
- package/dist/esm/makeStyles.d.ts +6 -4
- package/dist/esm/makeStyles.mjs +17 -7
- package/dist/esm/types.d.ts +1 -0
- package/package.json +10 -11
package/README.md
CHANGED
|
@@ -95,6 +95,9 @@ Rules support nested selectors via `&`, media queries, and `$className` back-ref
|
|
|
95
95
|
}), { flush: false }); // do not write to the DOM automatically
|
|
96
96
|
```
|
|
97
97
|
|
|
98
|
+
- `imports(ruleId, importRulesFnc, options?)`
|
|
99
|
+
- Allow you to define one or more `@import()` rules for importing or referencing external stylesheets. **Note**: These imports will not be transformed or attempted to have their contents imported.
|
|
100
|
+
|
|
98
101
|
- `keyframes(ruleId, framesFnc, options?)`
|
|
99
102
|
- Generates a unique animation name and accompanying `@keyframes` CSS.
|
|
100
103
|
- Returns `{ keyframe: string; stylesheet: string; }`. Respects `flush` and `insertBefore/After` options.
|
|
@@ -183,7 +186,7 @@ setSeed(11223344);
|
|
|
183
186
|
|
|
184
187
|
export const StyleRegistry = new SimpleStyleRegistry();
|
|
185
188
|
|
|
186
|
-
export const { createStyles, keyframes } = makeCssFuncs({ registry: StyleRegistry });
|
|
189
|
+
export const { createStyles, imports, keyframes, rawStyles } = makeCssFuncs({ registry: StyleRegistry });
|
|
187
190
|
```
|
|
188
191
|
|
|
189
192
|
```tsx
|
|
@@ -235,7 +238,7 @@ setSeed(11223344);
|
|
|
235
238
|
|
|
236
239
|
export const StyleRegistry = new SimpleStyleRegistry();
|
|
237
240
|
|
|
238
|
-
export { createStyles, keyframes } = makeCssFuncs({ registry: StyleRegistry });
|
|
241
|
+
export { createStyles, imports, keyframes, rawStyles } = makeCssFuncs({ registry: StyleRegistry });
|
|
239
242
|
```
|
|
240
243
|
|
|
241
244
|
```astro
|
|
@@ -351,7 +354,7 @@ setSeed(1);
|
|
|
351
354
|
export const StyleRegistry = new SimpleStyleRegistry();
|
|
352
355
|
|
|
353
356
|
// export the style functions that will be locked to your registry
|
|
354
|
-
export const { createStyles, keyframes, rawStyles } = makeCssFuncs({ registry: })
|
|
357
|
+
export const { createStyles, imports, keyframes, rawStyles } = makeCssFuncs({ registry: })
|
|
355
358
|
```
|
|
356
359
|
|
|
357
360
|
#### 2. Render the generated styles in your HTML
|
|
@@ -15,6 +15,9 @@ _export(exports, {
|
|
|
15
15
|
get default () {
|
|
16
16
|
return _default;
|
|
17
17
|
},
|
|
18
|
+
get imports () {
|
|
19
|
+
return imports;
|
|
20
|
+
},
|
|
18
21
|
get keyframes () {
|
|
19
22
|
return keyframes;
|
|
20
23
|
},
|
|
@@ -154,6 +157,26 @@ function coerceCreateStylesOptions(options) {
|
|
|
154
157
|
flush: options && typeof options.flush === 'boolean' ? options.flush : true
|
|
155
158
|
};
|
|
156
159
|
}
|
|
160
|
+
function imports(ruleId, rulesFnc, options) {
|
|
161
|
+
const coerced = coerceCreateStylesOptions(options);
|
|
162
|
+
const importRuleId = `${ruleId}_imports`;
|
|
163
|
+
const rules = rulesFnc();
|
|
164
|
+
if (!Array.isArray(rules)) {
|
|
165
|
+
throw new Error('the import() function expects the value returned to be an array of @import strings');
|
|
166
|
+
}
|
|
167
|
+
let sheetBuffer = '';
|
|
168
|
+
for (const importRule of rules){
|
|
169
|
+
if (!importRule.startsWith('@import')) {
|
|
170
|
+
throw new Error(`found an invalid import string: ${importRule}`);
|
|
171
|
+
}
|
|
172
|
+
sheetBuffer += `${importRule}${importRule.endsWith(';') ? '' : ';'}`;
|
|
173
|
+
}
|
|
174
|
+
if (options?.registry) {
|
|
175
|
+
options.registry.add(importRuleId, sheetBuffer);
|
|
176
|
+
} else if (coerced.flush) {
|
|
177
|
+
flushSheetContents(importRuleId, sheetBuffer, options);
|
|
178
|
+
}
|
|
179
|
+
}
|
|
157
180
|
function rawStyles(ruleId, rulesFnc, options) {
|
|
158
181
|
const rawStylesId = `${ruleId}_raw`;
|
|
159
182
|
const coerced = coerceCreateStylesOptions(options);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Properties } from 'csstype';
|
|
2
2
|
import type { SimpleStyleRegistry } from './simpleStyleRegistry.js';
|
|
3
|
-
import type { SimpleStyleRules } from './types.js';
|
|
3
|
+
import type { ImportStringType, SimpleStyleRules } from './types.js';
|
|
4
4
|
export type CreateStylesOptions = Partial<{
|
|
5
5
|
/**
|
|
6
6
|
* If true, automatically renders generated styles
|
|
@@ -26,6 +26,7 @@ export type CreateStylesOptions = Partial<{
|
|
|
26
26
|
*/
|
|
27
27
|
registry?: SimpleStyleRegistry;
|
|
28
28
|
}>;
|
|
29
|
+
export declare function imports(ruleId: string, rulesFnc: () => ImportStringType[], options?: CreateStylesOptions): void;
|
|
29
30
|
export declare function rawStyles<T extends SimpleStyleRules>(ruleId: string, rulesFnc: () => T, options?: Partial<CreateStylesOptions>): string;
|
|
30
31
|
export declare function keyframes<T extends Record<string, Properties>>(ruleId: string, framesFnc: () => T, options?: CreateStylesOptions): {
|
|
31
32
|
keyframe: string;
|
package/dist/cjs/index.d.ts
CHANGED
|
@@ -4,4 +4,4 @@ export { setSeed } from './generateClassName.js';
|
|
|
4
4
|
export * from './makeStyles.js';
|
|
5
5
|
export type { PosthookPlugin } from './plugins.js';
|
|
6
6
|
export { registerPosthook } from './plugins.js';
|
|
7
|
-
export type { SimpleStyleRules } from './types.js';
|
|
7
|
+
export type { ImportStringType, SimpleStyleRules } from './types.js';
|
package/dist/cjs/makeStyles.cjs
CHANGED
|
@@ -10,23 +10,33 @@ Object.defineProperty(exports, "makeCssFuncs", {
|
|
|
10
10
|
});
|
|
11
11
|
const _createStyles = require("./createStyles.cjs");
|
|
12
12
|
function makeCssFuncs(opts) {
|
|
13
|
-
function wrappedCreateStyles(ruleId, rulesFnc) {
|
|
13
|
+
function wrappedCreateStyles(ruleId, rulesFnc, overrides) {
|
|
14
14
|
return (0, _createStyles.createStyles)(ruleId, ()=>rulesFnc('variables' in opts ? opts.variables : undefined), {
|
|
15
|
-
|
|
15
|
+
...overrides,
|
|
16
|
+
registry: 'registry' in opts ? opts.registry : overrides?.registry
|
|
16
17
|
});
|
|
17
18
|
}
|
|
18
|
-
function wrappedCreateKeyframes(ruleId, rulesFnc) {
|
|
19
|
+
function wrappedCreateKeyframes(ruleId, rulesFnc, overrides) {
|
|
19
20
|
return (0, _createStyles.keyframes)(ruleId, ()=>rulesFnc('variables' in opts ? opts.variables : undefined), {
|
|
20
|
-
|
|
21
|
+
...overrides,
|
|
22
|
+
registry: 'registry' in opts ? opts.registry : overrides?.registry
|
|
21
23
|
});
|
|
22
24
|
}
|
|
23
|
-
function wrappedRawStyles(ruleId, rulesFnc) {
|
|
25
|
+
function wrappedRawStyles(ruleId, rulesFnc, overrides) {
|
|
24
26
|
return (0, _createStyles.rawStyles)(ruleId, ()=>rulesFnc('variables' in opts ? opts.variables : undefined), {
|
|
25
|
-
|
|
27
|
+
...overrides,
|
|
28
|
+
registry: 'registry' in opts ? opts.registry : overrides?.registry
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
function wrappedImports(ruleId, rulesFnc, overrides) {
|
|
32
|
+
return (0, _createStyles.imports)(ruleId, ()=>rulesFnc('variables' in opts ? opts.variables : undefined), {
|
|
33
|
+
...overrides,
|
|
34
|
+
registry: 'registry' in opts ? opts.registry : overrides?.registry
|
|
26
35
|
});
|
|
27
36
|
}
|
|
28
37
|
return {
|
|
29
38
|
createStyles: wrappedCreateStyles,
|
|
39
|
+
imports: wrappedImports,
|
|
30
40
|
keyframes: wrappedCreateKeyframes,
|
|
31
41
|
rawStyles: wrappedRawStyles
|
|
32
42
|
};
|
package/dist/cjs/makeStyles.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { Properties } from 'csstype';
|
|
2
|
+
import { type CreateStylesOptions } from './createStyles.js';
|
|
2
3
|
import type { SimpleStyleRegistry } from './simpleStyleRegistry.js';
|
|
3
|
-
import type { SimpleStyleRules } from './types.js';
|
|
4
|
+
import type { ImportStringType, SimpleStyleRules } from './types.js';
|
|
4
5
|
type MakeCssFuncsOpts<T extends object> = {} | {
|
|
5
6
|
registry: SimpleStyleRegistry;
|
|
6
7
|
} | {
|
|
@@ -17,7 +18,7 @@ type MakeCssFuncsOpts<T extends object> = {} | {
|
|
|
17
18
|
* The function will be provided with your variables
|
|
18
19
|
*/
|
|
19
20
|
export declare function makeCssFuncs<V extends object>(opts: MakeCssFuncsOpts<V>): {
|
|
20
|
-
createStyles: <T extends SimpleStyleRules, K extends keyof T, O extends Record<K, string>>(ruleId: string, rulesFnc: (vars?: V) => T) => {
|
|
21
|
+
createStyles: <T extends SimpleStyleRules, K extends keyof T, O extends Record<K, string>>(ruleId: string, rulesFnc: (vars?: V) => T, overrides?: CreateStylesOptions) => {
|
|
21
22
|
classes: O;
|
|
22
23
|
stylesheet: string;
|
|
23
24
|
updateSheet: <T2 extends SimpleStyleRules>(updatedRulesFnc: () => Partial<T2>) => {
|
|
@@ -25,10 +26,11 @@ export declare function makeCssFuncs<V extends object>(opts: MakeCssFuncsOpts<V>
|
|
|
25
26
|
stylesheet: string;
|
|
26
27
|
} | null;
|
|
27
28
|
};
|
|
28
|
-
|
|
29
|
+
imports: (ruleId: string, rulesFnc: (vars?: V) => ImportStringType[], overrides?: CreateStylesOptions) => void;
|
|
30
|
+
keyframes: <T extends Record<string, Properties>>(ruleId: string, rulesFnc: (vars?: V) => T, overrides?: CreateStylesOptions) => {
|
|
29
31
|
keyframe: string;
|
|
30
32
|
stylesheet: string;
|
|
31
33
|
};
|
|
32
|
-
rawStyles: <T extends SimpleStyleRules>(ruleId: string, rulesFnc: (vars?: V) => T) => string;
|
|
34
|
+
rawStyles: <T extends SimpleStyleRules>(ruleId: string, rulesFnc: (vars?: V) => T, overrides?: CreateStylesOptions) => string;
|
|
33
35
|
};
|
|
34
36
|
export {};
|
package/dist/cjs/types.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Properties } from 'csstype';
|
|
2
2
|
import type { SimpleStyleRegistry } from './simpleStyleRegistry.js';
|
|
3
|
-
import type { SimpleStyleRules } from './types.js';
|
|
3
|
+
import type { ImportStringType, SimpleStyleRules } from './types.js';
|
|
4
4
|
export type CreateStylesOptions = Partial<{
|
|
5
5
|
/**
|
|
6
6
|
* If true, automatically renders generated styles
|
|
@@ -26,6 +26,7 @@ export type CreateStylesOptions = Partial<{
|
|
|
26
26
|
*/
|
|
27
27
|
registry?: SimpleStyleRegistry;
|
|
28
28
|
}>;
|
|
29
|
+
export declare function imports(ruleId: string, rulesFnc: () => ImportStringType[], options?: CreateStylesOptions): void;
|
|
29
30
|
export declare function rawStyles<T extends SimpleStyleRules>(ruleId: string, rulesFnc: () => T, options?: Partial<CreateStylesOptions>): string;
|
|
30
31
|
export declare function keyframes<T extends Record<string, Properties>>(ruleId: string, framesFnc: () => T, options?: CreateStylesOptions): {
|
|
31
32
|
keyframe: string;
|
|
@@ -125,6 +125,26 @@ function coerceCreateStylesOptions(options) {
|
|
|
125
125
|
flush: options && typeof options.flush === 'boolean' ? options.flush : true
|
|
126
126
|
};
|
|
127
127
|
}
|
|
128
|
+
export function imports(ruleId, rulesFnc, options) {
|
|
129
|
+
const coerced = coerceCreateStylesOptions(options);
|
|
130
|
+
const importRuleId = `${ruleId}_imports`;
|
|
131
|
+
const rules = rulesFnc();
|
|
132
|
+
if (!Array.isArray(rules)) {
|
|
133
|
+
throw new Error('the import() function expects the value returned to be an array of @import strings');
|
|
134
|
+
}
|
|
135
|
+
let sheetBuffer = '';
|
|
136
|
+
for (const importRule of rules){
|
|
137
|
+
if (!importRule.startsWith('@import')) {
|
|
138
|
+
throw new Error(`found an invalid import string: ${importRule}`);
|
|
139
|
+
}
|
|
140
|
+
sheetBuffer += `${importRule}${importRule.endsWith(';') ? '' : ';'}`;
|
|
141
|
+
}
|
|
142
|
+
if (options?.registry) {
|
|
143
|
+
options.registry.add(importRuleId, sheetBuffer);
|
|
144
|
+
} else if (coerced.flush) {
|
|
145
|
+
flushSheetContents(importRuleId, sheetBuffer, options);
|
|
146
|
+
}
|
|
147
|
+
}
|
|
128
148
|
export function rawStyles(ruleId, rulesFnc, options) {
|
|
129
149
|
const rawStylesId = `${ruleId}_raw`;
|
|
130
150
|
const coerced = coerceCreateStylesOptions(options);
|
package/dist/esm/index.d.ts
CHANGED
|
@@ -4,4 +4,4 @@ export { setSeed } from './generateClassName.js';
|
|
|
4
4
|
export * from './makeStyles.js';
|
|
5
5
|
export type { PosthookPlugin } from './plugins.js';
|
|
6
6
|
export { registerPosthook } from './plugins.js';
|
|
7
|
-
export type { SimpleStyleRules } from './types.js';
|
|
7
|
+
export type { ImportStringType, SimpleStyleRules } from './types.js';
|
package/dist/esm/makeStyles.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { Properties } from 'csstype';
|
|
2
|
+
import { type CreateStylesOptions } from './createStyles.js';
|
|
2
3
|
import type { SimpleStyleRegistry } from './simpleStyleRegistry.js';
|
|
3
|
-
import type { SimpleStyleRules } from './types.js';
|
|
4
|
+
import type { ImportStringType, SimpleStyleRules } from './types.js';
|
|
4
5
|
type MakeCssFuncsOpts<T extends object> = {} | {
|
|
5
6
|
registry: SimpleStyleRegistry;
|
|
6
7
|
} | {
|
|
@@ -17,7 +18,7 @@ type MakeCssFuncsOpts<T extends object> = {} | {
|
|
|
17
18
|
* The function will be provided with your variables
|
|
18
19
|
*/
|
|
19
20
|
export declare function makeCssFuncs<V extends object>(opts: MakeCssFuncsOpts<V>): {
|
|
20
|
-
createStyles: <T extends SimpleStyleRules, K extends keyof T, O extends Record<K, string>>(ruleId: string, rulesFnc: (vars?: V) => T) => {
|
|
21
|
+
createStyles: <T extends SimpleStyleRules, K extends keyof T, O extends Record<K, string>>(ruleId: string, rulesFnc: (vars?: V) => T, overrides?: CreateStylesOptions) => {
|
|
21
22
|
classes: O;
|
|
22
23
|
stylesheet: string;
|
|
23
24
|
updateSheet: <T2 extends SimpleStyleRules>(updatedRulesFnc: () => Partial<T2>) => {
|
|
@@ -25,10 +26,11 @@ export declare function makeCssFuncs<V extends object>(opts: MakeCssFuncsOpts<V>
|
|
|
25
26
|
stylesheet: string;
|
|
26
27
|
} | null;
|
|
27
28
|
};
|
|
28
|
-
|
|
29
|
+
imports: (ruleId: string, rulesFnc: (vars?: V) => ImportStringType[], overrides?: CreateStylesOptions) => void;
|
|
30
|
+
keyframes: <T extends Record<string, Properties>>(ruleId: string, rulesFnc: (vars?: V) => T, overrides?: CreateStylesOptions) => {
|
|
29
31
|
keyframe: string;
|
|
30
32
|
stylesheet: string;
|
|
31
33
|
};
|
|
32
|
-
rawStyles: <T extends SimpleStyleRules>(ruleId: string, rulesFnc: (vars?: V) => T) => string;
|
|
34
|
+
rawStyles: <T extends SimpleStyleRules>(ruleId: string, rulesFnc: (vars?: V) => T, overrides?: CreateStylesOptions) => string;
|
|
33
35
|
};
|
|
34
36
|
export {};
|
package/dist/esm/makeStyles.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { createStyles, keyframes, rawStyles } from './createStyles.mjs';
|
|
1
|
+
import { createStyles, imports, keyframes, rawStyles } from './createStyles.mjs';
|
|
2
2
|
/**
|
|
3
3
|
* Creates all of your CSS functions, createStyles, keframes and rawStyles,
|
|
4
4
|
* and scopes them all to your registry and variables definitions (both are optional).
|
|
@@ -6,23 +6,33 @@ import { createStyles, keyframes, rawStyles } from './createStyles.mjs';
|
|
|
6
6
|
* they accept a function as the 2nd parameter, instead of the usual object.
|
|
7
7
|
* The function will be provided with your variables
|
|
8
8
|
*/ export function makeCssFuncs(opts) {
|
|
9
|
-
function wrappedCreateStyles(ruleId, rulesFnc) {
|
|
9
|
+
function wrappedCreateStyles(ruleId, rulesFnc, overrides) {
|
|
10
10
|
return createStyles(ruleId, ()=>rulesFnc('variables' in opts ? opts.variables : undefined), {
|
|
11
|
-
|
|
11
|
+
...overrides,
|
|
12
|
+
registry: 'registry' in opts ? opts.registry : overrides?.registry
|
|
12
13
|
});
|
|
13
14
|
}
|
|
14
|
-
function wrappedCreateKeyframes(ruleId, rulesFnc) {
|
|
15
|
+
function wrappedCreateKeyframes(ruleId, rulesFnc, overrides) {
|
|
15
16
|
return keyframes(ruleId, ()=>rulesFnc('variables' in opts ? opts.variables : undefined), {
|
|
16
|
-
|
|
17
|
+
...overrides,
|
|
18
|
+
registry: 'registry' in opts ? opts.registry : overrides?.registry
|
|
17
19
|
});
|
|
18
20
|
}
|
|
19
|
-
function wrappedRawStyles(ruleId, rulesFnc) {
|
|
21
|
+
function wrappedRawStyles(ruleId, rulesFnc, overrides) {
|
|
20
22
|
return rawStyles(ruleId, ()=>rulesFnc('variables' in opts ? opts.variables : undefined), {
|
|
21
|
-
|
|
23
|
+
...overrides,
|
|
24
|
+
registry: 'registry' in opts ? opts.registry : overrides?.registry
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
function wrappedImports(ruleId, rulesFnc, overrides) {
|
|
28
|
+
return imports(ruleId, ()=>rulesFnc('variables' in opts ? opts.variables : undefined), {
|
|
29
|
+
...overrides,
|
|
30
|
+
registry: 'registry' in opts ? opts.registry : overrides?.registry
|
|
22
31
|
});
|
|
23
32
|
}
|
|
24
33
|
return {
|
|
25
34
|
createStyles: wrappedCreateStyles,
|
|
35
|
+
imports: wrappedImports,
|
|
26
36
|
keyframes: wrappedCreateKeyframes,
|
|
27
37
|
rawStyles: wrappedRawStyles
|
|
28
38
|
};
|
package/dist/esm/types.d.ts
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "simplestyle-js",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.2.1",
|
|
4
4
|
"description": "An incredibly straightforward and simple CSS-in-JS solution with zero runtime dependencies, and out-of-the-box TypeScript support",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"repository": {
|
|
@@ -40,24 +40,23 @@
|
|
|
40
40
|
"devDependencies": {
|
|
41
41
|
"astro": ">=5",
|
|
42
42
|
"@better-builds/lets-version": "^1.6.0",
|
|
43
|
-
"@testing-library/react": "^16.3.
|
|
43
|
+
"@testing-library/react": "^16.3.1",
|
|
44
44
|
"@types/autoprefixer": "^10.2.4",
|
|
45
45
|
"@types/react": ">=18",
|
|
46
46
|
"@types/react-dom": ">=18",
|
|
47
|
-
"@vitejs/plugin-react": "^5.1.
|
|
48
|
-
"autoprefixer": "^10.4.
|
|
49
|
-
"@biomejs/biome": "^2.3.
|
|
47
|
+
"@vitejs/plugin-react": "^5.1.2",
|
|
48
|
+
"autoprefixer": "^10.4.23",
|
|
49
|
+
"@biomejs/biome": "^2.3.10",
|
|
50
50
|
"coveralls": "^3.1.1",
|
|
51
|
-
"eslint-config-react-yas": "^6.0.11",
|
|
52
51
|
"husky": "^9.1.7",
|
|
53
|
-
"jsdom": "^27.
|
|
52
|
+
"jsdom": "^27.3.0",
|
|
54
53
|
"postcss": "^8.5.6",
|
|
55
54
|
"react": ">=18",
|
|
56
55
|
"react-dom": ">=18",
|
|
57
|
-
"@better-builds/ts-duality": "^
|
|
56
|
+
"@better-builds/ts-duality": "^1.1.0",
|
|
58
57
|
"typescript": "^5.9.3",
|
|
59
|
-
"vite": "^7.
|
|
60
|
-
"vitest": "^4.0.
|
|
58
|
+
"vite": "^7.3.0",
|
|
59
|
+
"vitest": "^4.0.16"
|
|
61
60
|
},
|
|
62
61
|
"dependencies": {
|
|
63
62
|
"csstype": "^3.2.3",
|
|
@@ -200,4 +199,4 @@
|
|
|
200
199
|
"trustedDependencies": [
|
|
201
200
|
"@swc/core"
|
|
202
201
|
]
|
|
203
|
-
}
|
|
202
|
+
}
|