diff --git a/apps/website/docs/react/ahead-of-time-compilation/with-babel.md b/apps/website/docs/react/ahead-of-time-compilation/with-babel.md
index bff405335..609cbee47 100644
--- a/apps/website/docs/react/ahead-of-time-compilation/with-babel.md
+++ b/apps/website/docs/react/ahead-of-time-compilation/with-babel.md
@@ -13,14 +13,14 @@ import TabItem from '@theme/TabItem';
```shell
-yarn add --dev @griffel/babel-preset
+yarn add --dev @griffel/babel-preset @griffel/linaria-processor
```
```shell
-npm install --save-dev @griffel/babel-preset
+npm install --save-dev @griffel/babel-preset @griffel/linaria-processor
```
diff --git a/apps/website/docs/react/ahead-of-time-compilation/with-webpack.md b/apps/website/docs/react/ahead-of-time-compilation/with-webpack.md
index 2c1096553..fe5da823d 100644
--- a/apps/website/docs/react/ahead-of-time-compilation/with-webpack.md
+++ b/apps/website/docs/react/ahead-of-time-compilation/with-webpack.md
@@ -13,14 +13,14 @@ import TabItem from '@theme/TabItem';
```shell
-yarn add --dev @griffel/webpack-loader
+yarn add --dev @griffel/linaria-processor @griffel/webpack-loader
```
```shell
-npm install --save-dev @griffel/webpack-loader
+npm install --save-dev @griffel/linaria-processor @griffel/webpack-loader
```
diff --git a/change/@griffel-babel-preset-b40a43d0-1b08-4469-8ac1-c1d56a93523d.json b/change/@griffel-babel-preset-b40a43d0-1b08-4469-8ac1-c1d56a93523d.json
new file mode 100644
index 000000000..2e22eca7d
--- /dev/null
+++ b/change/@griffel-babel-preset-b40a43d0-1b08-4469-8ac1-c1d56a93523d.json
@@ -0,0 +1,7 @@
+{
+ "type": "major",
+ "comment": "BREAKING: update to Linaria v4",
+ "packageName": "@griffel/babel-preset",
+ "email": "olfedias@microsoft.com",
+ "dependentChangeType": "patch"
+}
diff --git a/change/@griffel-linaria-processor-b20f4e52-7e3f-4efc-ac1d-6157f9fb99ee.json b/change/@griffel-linaria-processor-b20f4e52-7e3f-4efc-ac1d-6157f9fb99ee.json
new file mode 100644
index 000000000..063a1a8ec
--- /dev/null
+++ b/change/@griffel-linaria-processor-b20f4e52-7e3f-4efc-ac1d-6157f9fb99ee.json
@@ -0,0 +1,7 @@
+{
+ "type": "major",
+ "comment": "chore: initial release",
+ "packageName": "@griffel/linaria-processor",
+ "email": "olfedias@microsoft.com",
+ "dependentChangeType": "patch"
+}
diff --git a/change/@griffel-react-0d6fd156-25c5-453b-a0d6-633a6c4adcb8.json b/change/@griffel-react-0d6fd156-25c5-453b-a0d6-633a6c4adcb8.json
new file mode 100644
index 000000000..47ec6490e
--- /dev/null
+++ b/change/@griffel-react-0d6fd156-25c5-453b-a0d6-633a6c4adcb8.json
@@ -0,0 +1,7 @@
+{
+ "type": "patch",
+ "comment": "chore: add meta to package.json for @griffel/processor",
+ "packageName": "@griffel/react",
+ "email": "olfedias@microsoft.com",
+ "dependentChangeType": "patch"
+}
diff --git a/change/@griffel-webpack-loader-294e1c0f-f12b-4129-b5dc-27cdebd726d0.json b/change/@griffel-webpack-loader-294e1c0f-f12b-4129-b5dc-27cdebd726d0.json
new file mode 100644
index 000000000..c51c1a388
--- /dev/null
+++ b/change/@griffel-webpack-loader-294e1c0f-f12b-4129-b5dc-27cdebd726d0.json
@@ -0,0 +1,7 @@
+{
+ "type": "major",
+ "comment": "BREAKING: update to Linaria v4",
+ "packageName": "@griffel/webpack-loader",
+ "email": "olfedias@microsoft.com",
+ "dependentChangeType": "patch"
+}
diff --git a/e2e/nextjs/project.json b/e2e/nextjs/project.json
index bff67292e..95871550d 100644
--- a/e2e/nextjs/project.json
+++ b/e2e/nextjs/project.json
@@ -3,7 +3,7 @@
"$schema": "../../node_modules/nx/schemas/project-schema.json",
"sourceRoot": "e2e/nextjs/src",
"projectType": "library",
- "implicitDependencies": ["@griffel/webpack-loader"],
+ "implicitDependencies": ["@griffel/linaria-processor", "@griffel/webpack-loader"],
"targets": {
"test": {
"executor": "nx:run-commands",
diff --git a/e2e/nextjs/src/test.ts b/e2e/nextjs/src/test.ts
index 35e8587b7..e3dc06719 100644
--- a/e2e/nextjs/src/test.ts
+++ b/e2e/nextjs/src/test.ts
@@ -23,6 +23,7 @@ async function performTest() {
packLocalPackage(rootDir, tempDir, '@griffel/style-types'),
packLocalPackage(rootDir, tempDir, '@griffel/core'),
packLocalPackage(rootDir, tempDir, '@griffel/react'),
+ packLocalPackage(rootDir, tempDir, '@griffel/linaria-processor'),
packLocalPackage(rootDir, tempDir, '@griffel/webpack-extraction-plugin'),
packLocalPackage(rootDir, tempDir, '@griffel/webpack-loader'),
packLocalPackage(rootDir, tempDir, '@griffel/next-extraction-plugin'),
diff --git a/package.json b/package.json
index fff149746..d5b414a9c 100644
--- a/package.json
+++ b/package.json
@@ -26,6 +26,7 @@
"type-check": "nx affected --target=type-check"
},
"devDependencies": {
+ "@babel/generator": "^7.12.13",
"@babel/preset-react": "^7.14.5",
"@babel/preset-typescript": "7.12.13",
"@codesandbox/sandpack-react": "1.18.4",
@@ -50,6 +51,7 @@
"@storybook/builder-webpack5": "6.5.15",
"@storybook/manager-webpack5": "6.5.15",
"@storybook/react": "6.5.15",
+ "@swc/core": "^1.3.19",
"@testing-library/jest-dom": "5.16.1",
"@testing-library/react": "13.4.0",
"@tsconfig/docusaurus": "^1.0.4",
@@ -140,20 +142,18 @@
},
"dependencies": {
"@babel/core": "^7.12.13",
- "@babel/generator": "^7.12.13",
"@babel/helper-module-imports": "^7.12.13",
"@babel/helper-plugin-utils": "^7.12.13",
- "@babel/template": "^7.12.13",
- "@babel/traverse": "^7.12.13",
"@emotion/hash": "^0.9.0",
- "@linaria/babel-preset": "^3.0.0-beta.24",
- "@linaria/shaker": "^3.0.0-beta.22",
- "@swc/core": "^1.3.19",
+ "@linaria/babel-preset": "^5.0.2",
+ "@linaria/shaker": "^5.0.1",
+ "@linaria/tags": "^5.0.1",
+ "@linaria/utils": "^5.0.1",
+ "@linaria/webpack-loader": "^5.0.2",
"@typescript-eslint/utils": "^5.47.0",
"ajv": "^8.4.0",
"browserslist": "^4.19.1",
"csstype": "^3.1.2",
- "enhanced-resolve": "^5.8.2",
"rtl-css-js": "^1.16.1",
"source-map-js": "1.0.2",
"stylis": "^4.2.0",
diff --git a/packages/babel-preset/README.md b/packages/babel-preset/README.md
index aa5635278..bf1e21491 100644
--- a/packages/babel-preset/README.md
+++ b/packages/babel-preset/README.md
@@ -22,9 +22,9 @@ A Babel preset that performs build time transforms for [`@griffel/react`](../rea
## Install
```bash
-yarn add --dev @griffel/babel-preset
+yarn add --dev @griffel/babel-preset @griffel/linaria-processor
# or
-npm install --save-dev @griffel/babel-preset
+npm install --save-dev @griffel/babel-preset @griffel/linaria-processor
```
## When to use it?
@@ -50,22 +50,27 @@ import { makeStyles } from 'custom-package';
import { createStyles } from 'custom-package';
```
-By default, preset handles imports from `@griffel/react` & `@fluentui/react-components`, to handle imports from custom packages settings should be tweaked:
+By default, preset handles imports from `@griffel/react` & `@fluentui/react-components`, to handle imports from custom packages settings you need to include meta information to a matching `package.json`:
```json
{
- "presets": [
- [
- "@griffel",
- {
- "modules": [{ "moduleSource": "custom-package", "importName": "makeStyles" }]
- }
- ]
- ]
+ "name": "custom-package",
+ "version": "1.0.0",
+ "linaria": {
+ "tags": {
+ "makeStyles": "@griffel/linaria-processor/make-styles",
+ "makeResetStyles": "@griffel/linaria-processor/make-reset-styles"
+ }
+ }
}
```
-> **Note**: "custom-package" should re-export `__styles` function from `@griffel/react`
+> **Note**: "custom-package" should re-export following functions from `@griffel/react`:
+>
+> - `__styles`
+> - `__css`
+> - `__resetStyles`
+> - `__resetCSS`
### Configuring Babel settings
@@ -157,9 +162,9 @@ const useStyles = makeStyles({
roughly to
```js
-import { __styles } from '@griffel/react';
+import { __styles as _styles } from '@griffel/react';
-const useStyles = __styles(/* resolved styles */);
+const useStyles = _styles(/* resolved styles */);
```
## Access CSS output from code
@@ -218,7 +223,7 @@ However, the concepts are not coupled to the repo setup.
### Module evaluation
-The preset uses tools from [linaria](https://github.com/callstack/linaria) to evaluate runtime calls of `makeStyles`.
+The preset reuses `@linaria/babel-preset` from [linaria](https://github.com/callstack/linaria) to evaluate runtime calls of `makeStyles` and `makeResetStyles`.
[Linaria's debugging documentation can help here](https://github.com/callstack/linaria/blob/master/CONTRIBUTING.md#debugging-and-deep-dive-into-babel-plugin).
Debugging output can be activated with following environment variables:
@@ -232,9 +237,3 @@ On Windows it's required to set environment variables via [`set`](https://docs.m
```sh
$ cross-env DEBUG=linaria\* LINARIA_LOG=debug yarn build
```
-
-The debug output will include:
-
-- Prepared code
-- Evaluated code
-- AST that indicates what code has been shaken with `@linaria/shaker`
diff --git a/packages/babel-preset/__fixtures__/assets-multiple-declarations/output.ts b/packages/babel-preset/__fixtures__/assets-multiple-declarations/output.ts
index 56fa34f7a..32aed5e39 100644
--- a/packages/babel-preset/__fixtures__/assets-multiple-declarations/output.ts
+++ b/packages/babel-preset/__fixtures__/assets-multiple-declarations/output.ts
@@ -1,15 +1,13 @@
+import { __styles as _styles } from '@griffel/react';
import _asset2 from './empty.jpg';
import _asset from './blank.jpg';
-import { __styles } from '@griffel/react';
-import blank from './blank.jpg';
-import empty from './empty.jpg';
-export const useStyles = __styles(
+export const useStyles = /*#__PURE__*/ _styles(
{
root: {
- Bcmaq0h: 'fp00rh9',
+ Bcmaq0h: 'f1surbjy',
},
},
{
- d: [`.fp00rh9{background-image:url(${_asset}),url(${_asset2});}`],
+ d: [`.f1surbjy{background-image:url(${_asset}),url(${_asset2});}`],
},
);
diff --git a/packages/babel-preset/__fixtures__/assets-reset-styles/output.ts b/packages/babel-preset/__fixtures__/assets-reset-styles/output.ts
index f582824f6..611acf347 100644
--- a/packages/babel-preset/__fixtures__/assets-reset-styles/output.ts
+++ b/packages/babel-preset/__fixtures__/assets-reset-styles/output.ts
@@ -1,11 +1,9 @@
-import _asset2 from './empty.jpg';
+import { __resetStyles as _resetStyles } from '@griffel/react';
+import _asset3 from './empty.jpg';
+import _asset2 from './blank.jpg';
import _asset from './blank.jpg';
-import { __resetStyles } from '@griffel/react';
-import blank from './blank.jpg';
-import blankDuplicate from './blank.jpg';
-import empty from './empty.jpg';
-export const useStyles = __resetStyles('ra9m047', null, [
- `.ra9m047{background-image:url(${_asset});}`,
- `.ra9m047:hover{background-image:url(${_asset});}`,
- `.ra9m047:focus{background-image:url(${_asset2});}`,
+export const useStyles = /*#__PURE__*/ _resetStyles('rzkd6zb', null, [
+ `.rzkd6zb{background-image:url(${_asset});}`,
+ `.rzkd6zb:hover{background-image:url(${_asset2});}`,
+ `.rzkd6zb:focus{background-image:url(${_asset3});}`,
]);
diff --git a/packages/babel-preset/__fixtures__/assets-urls/output.ts b/packages/babel-preset/__fixtures__/assets-urls/output.ts
index 082fd705e..260058ea3 100644
--- a/packages/babel-preset/__fixtures__/assets-urls/output.ts
+++ b/packages/babel-preset/__fixtures__/assets-urls/output.ts
@@ -1,5 +1,5 @@
-import { __styles } from '@griffel/react';
-export const useStyles = __styles(
+import { __styles as _styles } from '@griffel/react';
+export const useStyles = /*#__PURE__*/ _styles(
{
httpUrl: {
Bcmaq0h: 'f405sdg',
diff --git a/packages/babel-preset/__fixtures__/assets/output.ts b/packages/babel-preset/__fixtures__/assets/output.ts
index 652af3b2d..b5c908aa8 100644
--- a/packages/babel-preset/__fixtures__/assets/output.ts
+++ b/packages/babel-preset/__fixtures__/assets/output.ts
@@ -1,30 +1,26 @@
-import _asset3 from './a.svg';
+import { __styles as _styles } from '@griffel/react';
import _asset2 from './empty.jpg';
import _asset from './blank.jpg';
-import { __styles } from '@griffel/react';
-import blank from './blank.jpg';
-import blankDuplicate from './blank.jpg';
-import empty from './empty.jpg';
-export const useStyles = __styles(
+export const useStyles = /*#__PURE__*/ _styles(
{
rootA: {
- Bcmaq0h: 'fnwsaxv',
+ Bcmaq0h: 'f1lg9ji5',
},
rootB: {
- Bcmaq0h: 'fnwsaxv',
+ Bcmaq0h: 'f1lg9ji5',
},
rootC: {
- Bcmaq0h: 'f1ryfumh',
+ Bcmaq0h: 'feire57',
},
assetWithHash: {
- Bhu2qc9: 'fv04sme',
+ Bhu2qc9: 'f12vvth1',
},
},
{
d: [
- `.fnwsaxv{background-image:url(${_asset});}`,
- `.f1ryfumh{background-image:url(${_asset2});}`,
- `.fv04sme{filter:url(${_asset3}#a);}`,
+ `.f1lg9ji5{background-image:url(${_asset});}`,
+ `.feire57{background-image:url(${_asset2});}`,
+ `.f12vvth1{filter:url(./a.svg#a);}`,
],
},
);
diff --git a/packages/babel-preset/__fixtures__/at-rules/output.ts b/packages/babel-preset/__fixtures__/at-rules/output.ts
index 6310605e7..0da41e64d 100644
--- a/packages/babel-preset/__fixtures__/at-rules/output.ts
+++ b/packages/babel-preset/__fixtures__/at-rules/output.ts
@@ -1,5 +1,5 @@
-import { __styles } from '@griffel/react';
-export const useStyles = __styles(
+import { __styles as _styles } from '@griffel/react';
+export const useStyles = /*#__PURE__*/ _styles(
{
root: {
cvzfql: ['f13wceqr', 'fmtq1hn'],
diff --git a/packages/babel-preset/__fixtures__/config-babel-options/output.ts b/packages/babel-preset/__fixtures__/config-babel-options/output.ts
index 658f15b66..2b7acf8df 100644
--- a/packages/babel-preset/__fixtures__/config-babel-options/output.ts
+++ b/packages/babel-preset/__fixtures__/config-babel-options/output.ts
@@ -1,13 +1,5 @@
-import { __styles } from '@griffel/react';
-const func = () => {
- // This assignment has no sense, but it will prevent us from evaluation in AST
- // This fixture uses "colorRenamePlugin.js" in transformPlugin's config so input we should get a different color
- const color = 'red';
- return {
- color,
- };
-};
-export const useStyles = __styles(
+import { __styles as _styles } from '@griffel/react';
+export const useStyles = /*#__PURE__*/ _styles(
{
root: {
sj55zd: 'f163i14w',
diff --git a/packages/babel-preset/__fixtures__/config-evaluation-rules/output.ts b/packages/babel-preset/__fixtures__/config-evaluation-rules/output.ts
index 303604072..2b7acf8df 100644
--- a/packages/babel-preset/__fixtures__/config-evaluation-rules/output.ts
+++ b/packages/babel-preset/__fixtures__/config-evaluation-rules/output.ts
@@ -1,6 +1,5 @@
-import { __styles } from '@griffel/react';
-import { colorRed } from './consts';
-export const useStyles = __styles(
+import { __styles as _styles } from '@griffel/react';
+export const useStyles = /*#__PURE__*/ _styles(
{
root: {
sj55zd: 'f163i14w',
diff --git a/packages/babel-preset/__fixtures__/config-evaluation-rules/sampleEvaluator.js b/packages/babel-preset/__fixtures__/config-evaluation-rules/sampleEvaluator.js
index 8871cf21f..2c2a3fb9c 100644
--- a/packages/babel-preset/__fixtures__/config-evaluation-rules/sampleEvaluator.js
+++ b/packages/babel-preset/__fixtures__/config-evaluation-rules/sampleEvaluator.js
@@ -1,12 +1,19 @@
// @ts-check
-/** @type {import("@linaria/babel-preset").Evaluator} */
-const sampleEvaluator = () => {
- // Evaluators transform input code to something that will be evaluated by Node later. In evaluatePathsInVM() we expect
- // that results will be available as "exports.__mkPreval", this evaluator mocks it
- const result = `exports.__mkPreval = [{ root: { color: 'blue' } }]`;
+/** @type {import("@linaria/utils").Evaluator} */
+const sampleEvaluator = (babelOptions, ast) => {
+ // Evaluators transform input code to something that will be evaluated by Node
+ // later. Linaria expects that results will be available as
+ // "exports.__linariaPreval", this evaluator mocks it
+ const result = `
+ exports.__linariaPreval = {
+ _exp: () => ({
+ root: { color: 'blue' }
+ })
+ };
+ `;
- return [result, null];
+ return [ast, result, null];
};
module.exports.default = sampleEvaluator;
diff --git a/packages/babel-preset/__fixtures__/duplicated-imports/code.ts b/packages/babel-preset/__fixtures__/duplicated-imports/code.ts
index 8c4eb21f0..968db4043 100644
--- a/packages/babel-preset/__fixtures__/duplicated-imports/code.ts
+++ b/packages/babel-preset/__fixtures__/duplicated-imports/code.ts
@@ -1,12 +1,10 @@
-// @ts-expect-error This module does not exist, but will be resolved via aliases
-import { createStylesA } from 'custom-package';
-// @ts-expect-error This module does not exist, but will be resolved via aliases
-import { createStylesB } from 'custom-package';
+import { makeStyles as makeStylesA } from '@griffel/react';
+import { makeStyles as makeStylesB } from '@griffel/react';
-export const useClassesA = createStylesA({
+export const useClassesA = makeStylesA({
root: { color: 'red' },
});
-export const useClassesB = createStylesB({
+export const useClassesB = makeStylesB({
root: { color: 'yellow' },
});
diff --git a/packages/babel-preset/__fixtures__/duplicated-imports/output.ts b/packages/babel-preset/__fixtures__/duplicated-imports/output.ts
index cd944f8b2..ff0abe6d0 100644
--- a/packages/babel-preset/__fixtures__/duplicated-imports/output.ts
+++ b/packages/babel-preset/__fixtures__/duplicated-imports/output.ts
@@ -1,8 +1,6 @@
-// @ts-expect-error This module does not exist, but will be resolved via aliases
-import { __styles } from 'custom-package';
-// @ts-expect-error This module does not exist, but will be resolved via aliases
-import { createStylesB } from 'custom-package';
-export const useClassesA = __styles(
+import { __styles as _styles2 } from '@griffel/react';
+import { __styles as _styles } from '@griffel/react';
+export const useClassesA = /*#__PURE__*/ _styles(
{
root: {
sj55zd: 'fe3e8s9',
@@ -12,8 +10,13 @@ export const useClassesA = __styles(
d: ['.fe3e8s9{color:red;}'],
},
);
-export const useClassesB = createStylesB({
- root: {
- color: 'yellow',
+export const useClassesB = /*#__PURE__*/ _styles2(
+ {
+ root: {
+ sj55zd: 'f1aqe04n',
+ },
},
-});
+ {
+ d: ['.f1aqe04n{color:yellow;}'],
+ },
+);
diff --git a/packages/babel-preset/__fixtures__/error-argument-count/fixture.js b/packages/babel-preset/__fixtures__/error-argument-count/fixture.js
deleted file mode 100644
index 1f0d00fd9..000000000
--- a/packages/babel-preset/__fixtures__/error-argument-count/fixture.js
+++ /dev/null
@@ -1,4 +0,0 @@
-import { makeStyles } from '@griffel/react';
-
-// This file is .js intentionally to avoid TS compiler errors
-export const useStyles = makeStyles({ root: { color: 'red' } }, 'foo');
diff --git a/packages/babel-preset/__fixtures__/function-mixin/output.ts b/packages/babel-preset/__fixtures__/function-mixin/output.ts
index 51ced1db5..f48f0faf6 100644
--- a/packages/babel-preset/__fixtures__/function-mixin/output.ts
+++ b/packages/babel-preset/__fixtures__/function-mixin/output.ts
@@ -1,6 +1,5 @@
-import { __styles } from '@griffel/react';
-import { createMixin } from './mixins';
-export const useStyles = __styles(
+import { __styles as _styles } from '@griffel/react';
+export const useStyles = /*#__PURE__*/ _styles(
{
avatar: {
sj55zd: 'f1817uup',
diff --git a/packages/babel-preset/__fixtures__/import-alias/output.ts b/packages/babel-preset/__fixtures__/import-alias/output.ts
index 27d3dfbc6..44ef1b6c7 100644
--- a/packages/babel-preset/__fixtures__/import-alias/output.ts
+++ b/packages/babel-preset/__fixtures__/import-alias/output.ts
@@ -1,5 +1,5 @@
-import { __styles } from '@griffel/react';
-export const useStyles = __styles(
+import { __styles as _styles } from '@griffel/react';
+export const useStyles = /*#__PURE__*/ _styles(
{
root: {
sj55zd: 'fe3e8s9',
diff --git a/packages/babel-preset/__fixtures__/import-custom-module/code.ts b/packages/babel-preset/__fixtures__/import-custom-module/code.ts
deleted file mode 100644
index 05a61939e..000000000
--- a/packages/babel-preset/__fixtures__/import-custom-module/code.ts
+++ /dev/null
@@ -1,6 +0,0 @@
-// @ts-expect-error This module does not exist, but will be resolved via aliases
-import { makeStyles } from 'custom-package';
-
-export const useStyles = makeStyles({
- root: { color: 'red' },
-});
diff --git a/packages/babel-preset/__fixtures__/import-custom-module/output.ts b/packages/babel-preset/__fixtures__/import-custom-module/output.ts
deleted file mode 100644
index e53499e0b..000000000
--- a/packages/babel-preset/__fixtures__/import-custom-module/output.ts
+++ /dev/null
@@ -1,12 +0,0 @@
-// @ts-expect-error This module does not exist, but will be resolved via aliases
-import { __styles } from 'custom-package';
-export const useStyles = __styles(
- {
- root: {
- sj55zd: 'fe3e8s9',
- },
- },
- {
- d: ['.fe3e8s9{color:red;}'],
- },
-);
diff --git a/packages/babel-preset/__fixtures__/import-custom-name/code.ts b/packages/babel-preset/__fixtures__/import-custom-name/code.ts
deleted file mode 100644
index fe1f8436b..000000000
--- a/packages/babel-preset/__fixtures__/import-custom-name/code.ts
+++ /dev/null
@@ -1,6 +0,0 @@
-// @ts-expect-error This module does not exist, but will be resolved via aliases
-import { createStyles } from 'custom-package';
-
-export const useStyles = createStyles({
- root: { color: 'red' },
-});
diff --git a/packages/babel-preset/__fixtures__/import-custom-name/output.ts b/packages/babel-preset/__fixtures__/import-custom-name/output.ts
deleted file mode 100644
index e53499e0b..000000000
--- a/packages/babel-preset/__fixtures__/import-custom-name/output.ts
+++ /dev/null
@@ -1,12 +0,0 @@
-// @ts-expect-error This module does not exist, but will be resolved via aliases
-import { __styles } from 'custom-package';
-export const useStyles = __styles(
- {
- root: {
- sj55zd: 'fe3e8s9',
- },
- },
- {
- d: ['.fe3e8s9{color:red;}'],
- },
-);
diff --git a/packages/babel-preset/__fixtures__/keyframes/output.ts b/packages/babel-preset/__fixtures__/keyframes/output.ts
index 10655ab89..1edc6aebc 100644
--- a/packages/babel-preset/__fixtures__/keyframes/output.ts
+++ b/packages/babel-preset/__fixtures__/keyframes/output.ts
@@ -1,5 +1,5 @@
-import { __styles } from '@griffel/react';
-export const useStyles = __styles(
+import { __styles as _styles } from '@griffel/react';
+export const useStyles = /*#__PURE__*/ _styles(
{
single: {
Bv12yb3: ['f1g6ul6r', 'f1fp4ujf'],
diff --git a/packages/babel-preset/__fixtures__/multiple-declarations/output.ts b/packages/babel-preset/__fixtures__/multiple-declarations/output.ts
index 7a796c441..990a3a308 100644
--- a/packages/babel-preset/__fixtures__/multiple-declarations/output.ts
+++ b/packages/babel-preset/__fixtures__/multiple-declarations/output.ts
@@ -1,5 +1,6 @@
-import { __styles } from '@griffel/react';
-export const useStyles1 = __styles(
+import { __styles as _styles2 } from '@griffel/react';
+import { __styles as _styles } from '@griffel/react';
+export const useStyles1 = /*#__PURE__*/ _styles(
{
root: {
sj55zd: 'fe3e8s9',
@@ -9,7 +10,7 @@ export const useStyles1 = __styles(
d: ['.fe3e8s9{color:red;}'],
},
);
-export const useStyles2 = __styles(
+export const useStyles2 = /*#__PURE__*/ _styles2(
{
root: {
sj55zd: 'fka9v86',
diff --git a/packages/babel-preset/__fixtures__/non-existing-module-call/code.ts b/packages/babel-preset/__fixtures__/non-existing-module-call/code.ts
deleted file mode 100644
index 82a5a97f7..000000000
--- a/packages/babel-preset/__fixtures__/non-existing-module-call/code.ts
+++ /dev/null
@@ -1,10 +0,0 @@
-import { makeStyles } from '@griffel/react';
-import { createModule } from './module';
-
-export const useStyles = makeStyles({
- container: {
- color: 'red',
- },
-});
-
-createModule().baz();
diff --git a/packages/babel-preset/__fixtures__/non-existing-module-call/module.ts b/packages/babel-preset/__fixtures__/non-existing-module-call/module.ts
deleted file mode 100644
index 3158365a5..000000000
--- a/packages/babel-preset/__fixtures__/non-existing-module-call/module.ts
+++ /dev/null
@@ -1,13 +0,0 @@
-type FakeModule = {
- foo: () => void;
- bar: () => void;
- baz: () => void;
-};
-
-export function createModule(): FakeModule {
- return {
- foo: () => {},
- bar: () => {},
- // this implementation intentionally missing "baz" property to throw on calls in runtime
- } as unknown as FakeModule;
-}
diff --git a/packages/babel-preset/__fixtures__/non-existing-module-call/output.ts b/packages/babel-preset/__fixtures__/non-existing-module-call/output.ts
deleted file mode 100644
index f735a9172..000000000
--- a/packages/babel-preset/__fixtures__/non-existing-module-call/output.ts
+++ /dev/null
@@ -1,13 +0,0 @@
-import { __styles } from '@griffel/react';
-import { createModule } from './module';
-export const useStyles = __styles(
- {
- container: {
- sj55zd: 'fe3e8s9',
- },
- },
- {
- d: ['.fe3e8s9{color:red;}'],
- },
-);
-createModule().baz();
diff --git a/packages/babel-preset/__fixtures__/object-computed-keys/output.ts b/packages/babel-preset/__fixtures__/object-computed-keys/output.ts
index 9e8cd4cff..7a7340c6f 100644
--- a/packages/babel-preset/__fixtures__/object-computed-keys/output.ts
+++ b/packages/babel-preset/__fixtures__/object-computed-keys/output.ts
@@ -1,6 +1,5 @@
-import { __styles } from '@griffel/react';
-const rootSlot = 'root';
-export const useStyles = __styles(
+import { __styles as _styles } from '@griffel/react';
+export const useStyles = /*#__PURE__*/ _styles(
{
root: {
sj55zd: 'fe3e8s9',
diff --git a/packages/babel-preset/__fixtures__/object-imported-keys/output.ts b/packages/babel-preset/__fixtures__/object-imported-keys/output.ts
index 3640bc8c4..98d4b5708 100644
--- a/packages/babel-preset/__fixtures__/object-imported-keys/output.ts
+++ b/packages/babel-preset/__fixtures__/object-imported-keys/output.ts
@@ -1,6 +1,5 @@
-import { __styles } from '@griffel/react';
-import { className, selector } from './consts';
-export const useStyles = __styles(
+import { __styles as _styles } from '@griffel/react';
+export const useStyles = /*#__PURE__*/ _styles(
{
root: {
B0egftl: 'f1wgwx3x',
diff --git a/packages/babel-preset/__fixtures__/object-mixins/output.ts b/packages/babel-preset/__fixtures__/object-mixins/output.ts
index 9d6f1d206..7cb95b6ae 100644
--- a/packages/babel-preset/__fixtures__/object-mixins/output.ts
+++ b/packages/babel-preset/__fixtures__/object-mixins/output.ts
@@ -1,6 +1,5 @@
-import { __styles } from '@griffel/react';
-import { flexStyles, gridStyles, typography } from './mixins';
-export const useStyles = __styles(
+import { __styles as _styles } from '@griffel/react';
+export const useStyles = /*#__PURE__*/ _styles(
{
root: {
mc9l5x: 'f22iagw',
diff --git a/packages/babel-preset/__fixtures__/object-nesting/output.ts b/packages/babel-preset/__fixtures__/object-nesting/output.ts
index d1304b8cc..d5555b4b5 100644
--- a/packages/babel-preset/__fixtures__/object-nesting/output.ts
+++ b/packages/babel-preset/__fixtures__/object-nesting/output.ts
@@ -1,6 +1,5 @@
-import { __styles } from '@griffel/react';
-import { colorBlue } from './consts';
-export const useStyles = __styles(
+import { __styles as _styles } from '@griffel/react';
+export const useStyles = /*#__PURE__*/ _styles(
{
root: {
mc9l5x: 'f22iagw',
diff --git a/packages/babel-preset/__fixtures__/object-sequence-expr/code.ts b/packages/babel-preset/__fixtures__/object-sequence-expr/code.ts
index dab6d2abf..27f2cf785 100644
--- a/packages/babel-preset/__fixtures__/object-sequence-expr/code.ts
+++ b/packages/babel-preset/__fixtures__/object-sequence-expr/code.ts
@@ -1,4 +1,5 @@
-import { makeStyles, GriffelStyle } from '@griffel/react';
+import { makeStyles } from '@griffel/react';
+import type { GriffelStyle } from '@griffel/react';
const switchClassName = 'fui-Switch';
let _a: Record;
diff --git a/packages/babel-preset/__fixtures__/object-sequence-expr/output.ts b/packages/babel-preset/__fixtures__/object-sequence-expr/output.ts
index 4da492c9c..1398f6832 100644
--- a/packages/babel-preset/__fixtures__/object-sequence-expr/output.ts
+++ b/packages/babel-preset/__fixtures__/object-sequence-expr/output.ts
@@ -1,7 +1,7 @@
-import { __styles, GriffelStyle } from '@griffel/react';
-const switchClassName = 'fui-Switch';
+import { __styles as _styles } from '@griffel/react';
+import type { GriffelStyle } from '@griffel/react';
let _a: Record;
-export const useStyles = __styles(
+export const useStyles = /*#__PURE__*/ _styles(
{
root: {
ozcac4: 'f1cm6cy7',
diff --git a/packages/babel-preset/__fixtures__/object-variables/output.ts b/packages/babel-preset/__fixtures__/object-variables/output.ts
index 4d0f53c0c..703a35dcd 100644
--- a/packages/babel-preset/__fixtures__/object-variables/output.ts
+++ b/packages/babel-preset/__fixtures__/object-variables/output.ts
@@ -1,7 +1,5 @@
-import { __styles } from '@griffel/react';
-import { colorGreen, theme } from './vars';
-const colorRed = 'red';
-export const useStyles = __styles(
+import { __styles as _styles } from '@griffel/react';
+export const useStyles = /*#__PURE__*/ _styles(
{
root: {
sj55zd: 'fe3e8s9',
diff --git a/packages/babel-preset/__fixtures__/object/output.ts b/packages/babel-preset/__fixtures__/object/output.ts
index 3fbb29473..5297e9d31 100644
--- a/packages/babel-preset/__fixtures__/object/output.ts
+++ b/packages/babel-preset/__fixtures__/object/output.ts
@@ -1,5 +1,5 @@
-import { __styles } from '@griffel/react';
-export const useStyles = __styles(
+import { __styles as _styles } from '@griffel/react';
+export const useStyles = /*#__PURE__*/ _styles(
{
root: {
sj55zd: 'fe3e8s9',
diff --git a/packages/babel-preset/__fixtures__/require-custom-module/code.ts b/packages/babel-preset/__fixtures__/require-custom-module/code.ts
deleted file mode 100644
index 21ca02b1d..000000000
--- a/packages/babel-preset/__fixtures__/require-custom-module/code.ts
+++ /dev/null
@@ -1,10 +0,0 @@
-const react_make_styles_1 = require('custom-package');
-
-export const useStyles = react_make_styles_1.makeStyles({
- root: {
- fontSize: '14px',
- lineHeight: 1,
- },
-});
-
-console.log(useStyles);
diff --git a/packages/babel-preset/__fixtures__/require-custom-module/output.ts b/packages/babel-preset/__fixtures__/require-custom-module/output.ts
deleted file mode 100644
index 6fd3af32f..000000000
--- a/packages/babel-preset/__fixtures__/require-custom-module/output.ts
+++ /dev/null
@@ -1,13 +0,0 @@
-const react_make_styles_1 = require('custom-package');
-export const useStyles = react_make_styles_1.__styles(
- {
- root: {
- Be2twd7: 'fses1vf',
- Bg96gwp: 'fp6vxd',
- },
- },
- {
- d: ['.fses1vf{font-size:14px;}', '.fp6vxd{line-height:1;}'],
- },
-);
-console.log(useStyles);
diff --git a/packages/babel-preset/__fixtures__/require-reset-styles/code.ts b/packages/babel-preset/__fixtures__/require-reset-styles/code.ts
index 2194b3342..9aa8f0ae0 100644
--- a/packages/babel-preset/__fixtures__/require-reset-styles/code.ts
+++ b/packages/babel-preset/__fixtures__/require-reset-styles/code.ts
@@ -1,6 +1,7 @@
-const react_make_styles_1 = require('@griffel/react');
-
-export const useStyles = react_make_styles_1.makeResetStyles({
+const react_make_styles_2 = require('@griffel/react');
+const useResetStyles = react_make_styles_2.makeResetStyles({
fontSize: '14px',
lineHeight: 1,
});
+
+exports.useResetStyles = useResetStyles;
diff --git a/packages/babel-preset/__fixtures__/require-reset-styles/output.ts b/packages/babel-preset/__fixtures__/require-reset-styles/output.ts
index 99637e266..2bf1728df 100644
--- a/packages/babel-preset/__fixtures__/require-reset-styles/output.ts
+++ b/packages/babel-preset/__fixtures__/require-reset-styles/output.ts
@@ -1,4 +1,3 @@
-const react_make_styles_1 = require('@griffel/react');
-export const useStyles = react_make_styles_1.__resetStyles('r1qlvv59', null, [
- '.r1qlvv59{font-size:14px;line-height:1;}',
-]);
+var _resetStyles = require('@griffel/react').__resetStyles;
+const useResetStyles = /*#__PURE__*/ _resetStyles('r1qlvv59', null, ['.r1qlvv59{font-size:14px;line-height:1;}']);
+exports.useResetStyles = useResetStyles;
diff --git a/packages/babel-preset/__fixtures__/require/code.ts b/packages/babel-preset/__fixtures__/require/code.ts
index 6d560d7ea..689b5b7e7 100644
--- a/packages/babel-preset/__fixtures__/require/code.ts
+++ b/packages/babel-preset/__fixtures__/require/code.ts
@@ -1,10 +1,9 @@
const react_make_styles_1 = require('@griffel/react');
-
-export const useStyles = react_make_styles_1.makeStyles({
+const useStyles = react_make_styles_1.makeStyles({
root: {
fontSize: '14px',
lineHeight: 1,
},
});
-console.log(useStyles);
+exports.useStyles = useStyles;
diff --git a/packages/babel-preset/__fixtures__/require/output.ts b/packages/babel-preset/__fixtures__/require/output.ts
index e217c3f33..c3b4f1ad6 100644
--- a/packages/babel-preset/__fixtures__/require/output.ts
+++ b/packages/babel-preset/__fixtures__/require/output.ts
@@ -1,5 +1,5 @@
-const react_make_styles_1 = require('@griffel/react');
-export const useStyles = react_make_styles_1.__styles(
+var _styles = require('@griffel/react').__styles;
+const useStyles = /*#__PURE__*/ _styles(
{
root: {
Be2twd7: 'fses1vf',
@@ -10,4 +10,4 @@ export const useStyles = react_make_styles_1.__styles(
d: ['.fses1vf{font-size:14px;}', '.fp6vxd{line-height:1;}'],
},
);
-console.log(useStyles);
+exports.useStyles = useStyles;
diff --git a/packages/babel-preset/__fixtures__/reset-styles-at-rules/output.ts b/packages/babel-preset/__fixtures__/reset-styles-at-rules/output.ts
index 2495b0f62..1fafb830f 100644
--- a/packages/babel-preset/__fixtures__/reset-styles-at-rules/output.ts
+++ b/packages/babel-preset/__fixtures__/reset-styles-at-rules/output.ts
@@ -1,5 +1,5 @@
-import { __resetStyles } from '@griffel/react';
-export const useStyles = __resetStyles('rjrhw4c', null, {
+import { __resetStyles as _resetStyles } from '@griffel/react';
+export const useStyles = /*#__PURE__*/ _resetStyles('rjrhw4c', null, {
r: ['.rjrhw4c{color:red;}'],
s: ['@supports (display: flex){.rjrhw4c{color:pink;}}', '@media (min-width: 100px){.rjrhw4c{color:blue;}}'],
});
diff --git a/packages/babel-preset/__fixtures__/reset-styles/output.ts b/packages/babel-preset/__fixtures__/reset-styles/output.ts
index 4101e2fc9..74d412f80 100644
--- a/packages/babel-preset/__fixtures__/reset-styles/output.ts
+++ b/packages/babel-preset/__fixtures__/reset-styles/output.ts
@@ -1,5 +1,5 @@
-import { __resetStyles } from '@griffel/react';
-export const useStyles = __resetStyles('rjefjbm', 'r7z97ji', [
+import { __resetStyles as _resetStyles } from '@griffel/react';
+export const useStyles = /*#__PURE__*/ _resetStyles('rjefjbm', 'r7z97ji', [
'.rjefjbm{color:red;padding-left:4px;}',
'.r7z97ji{color:red;padding-right:4px;}',
]);
diff --git a/packages/babel-preset/__fixtures__/rules-with-metadata/output.ts b/packages/babel-preset/__fixtures__/rules-with-metadata/output.ts
index f4541c5d5..66b27a1af 100644
--- a/packages/babel-preset/__fixtures__/rules-with-metadata/output.ts
+++ b/packages/babel-preset/__fixtures__/rules-with-metadata/output.ts
@@ -1,5 +1,5 @@
-import { __styles } from '@griffel/react';
-export const useStyles = __styles(
+import { __styles as _styles } from '@griffel/react';
+export const useStyles = /*#__PURE__*/ _styles(
{
media: {
Bulngiv: 'fr5o61b',
diff --git a/packages/babel-preset/__fixtures__/shared-mixins/output.ts b/packages/babel-preset/__fixtures__/shared-mixins/output.ts
index 62b5e43d3..8d8408893 100644
--- a/packages/babel-preset/__fixtures__/shared-mixins/output.ts
+++ b/packages/babel-preset/__fixtures__/shared-mixins/output.ts
@@ -1,6 +1,5 @@
-import { __styles } from '@griffel/react';
-import { sharedStyles } from './mixins';
-export const useStyles = __styles(
+import { __styles as _styles } from '@griffel/react';
+export const useStyles = /*#__PURE__*/ _styles(
{
root: {
mc9l5x: 'f22iagw',
diff --git a/packages/babel-preset/__fixtures__/tokens/output.ts b/packages/babel-preset/__fixtures__/tokens/output.ts
index d8744efb4..1d88c1ef7 100644
--- a/packages/babel-preset/__fixtures__/tokens/output.ts
+++ b/packages/babel-preset/__fixtures__/tokens/output.ts
@@ -1,6 +1,5 @@
-import { __styles } from '@griffel/react';
-import { tokens } from './tokens';
-export const useStyles = __styles(
+import { __styles as _styles } from '@griffel/react';
+export const useStyles = /*#__PURE__*/ _styles(
{
root: {
De3pzq: 'f1734hy',
diff --git a/packages/babel-preset/__fixtures__/unsupported-css-properties/output.ts b/packages/babel-preset/__fixtures__/unsupported-css-properties/output.ts
index f7330031a..f5930e731 100644
--- a/packages/babel-preset/__fixtures__/unsupported-css-properties/output.ts
+++ b/packages/babel-preset/__fixtures__/unsupported-css-properties/output.ts
@@ -1,5 +1,5 @@
-import { __styles } from '@griffel/react';
-export const useStyles = __styles(
+import { __styles as _styles } from '@griffel/react';
+export const useStyles = /*#__PURE__*/ _styles(
{
root: {},
},
diff --git a/packages/babel-preset/package.json b/packages/babel-preset/package.json
index a8e5f80c9..97a0a51d5 100644
--- a/packages/babel-preset/package.json
+++ b/packages/babel-preset/package.json
@@ -9,15 +9,15 @@
},
"dependencies": {
"@babel/core": "^7.12.13",
- "@babel/generator": "^7.12.13",
- "@babel/helper-plugin-utils": "^7.12.13",
- "@babel/template": "^7.12.13",
- "@babel/traverse": "^7.12.13",
- "@griffel/core": "^1.14.2",
- "@linaria/babel-preset": "^3.0.0-beta.24",
- "@linaria/shaker": "^3.0.0-beta.22",
+ "@linaria/babel-preset": "^5.0.2",
+ "@linaria/shaker": "^5.0.1",
+ "@linaria/utils": "^5.0.1",
+ "@griffel/core": "^1.14.1",
"ajv": "^8.4.0",
"stylis": "^4.2.0",
"tslib": "^2.1.0"
+ },
+ "peerDependencies": {
+ "@griffel/linaria-processor": "^0.0.1"
}
}
diff --git a/packages/babel-preset/src/assets/absolutePathToRelative.test.ts b/packages/babel-preset/src/assets/absolutePathToRelative.test.ts
deleted file mode 100644
index 1cd41fda4..000000000
--- a/packages/babel-preset/src/assets/absolutePathToRelative.test.ts
+++ /dev/null
@@ -1,62 +0,0 @@
-import * as path from 'path';
-import { absolutePathToRelative } from './absolutePathToRelative';
-
-describe('absolutePathToRelative', () => {
- it('handles POSIX paths', () => {
- expect(
- absolutePathToRelative(
- path.posix,
- '/home/projects/foo',
- '/home/projects/foo/src/styles/Component.styles.ts',
- 'assets/image.png',
- ),
- ).toBe('../../assets/image.png');
-
- expect(
- absolutePathToRelative(
- path.posix,
- '/home/projects/foo',
- '/home/projects/foo/src/styles/Component.styles.ts',
- 'src/styles/Component.png',
- ),
- ).toBe('./Component.png');
-
- expect(
- absolutePathToRelative(
- path.posix,
- '/home/projects/foo',
- '/home/projects/foo/packages/components/src/index.styles.ts',
- 'packages/components/src/images/Component.png',
- ),
- ).toBe('./images/Component.png');
- });
-
- it('handles Windows paths', () => {
- expect(
- absolutePathToRelative(
- path.win32,
- 'C:\\Users\\Foo\\projects',
- 'C:\\Users\\Foo\\projects\\src\\styles\\Component.styles.ts',
- 'assets/image.png',
- ),
- ).toBe('../../assets/image.png');
-
- expect(
- absolutePathToRelative(
- path.win32,
- 'C:\\Users\\Foo\\projects',
- 'C:\\Users\\Foo\\projects\\src\\styles\\Component.styles.ts',
- 'src/styles/Component.png',
- ),
- ).toBe('./Component.png');
-
- expect(
- absolutePathToRelative(
- path.win32,
- 'C:\\Users\\Foo\\projects',
- 'C:\\Users\\Foo\\projects\\packages\\components\\src\\index.styles.ts',
- 'packages/components/src/images/Component.png',
- ),
- ).toBe('./images/Component.png');
- });
-});
diff --git a/packages/babel-preset/src/assets/isAssetUrl.test.ts b/packages/babel-preset/src/assets/isAssetUrl.test.ts
deleted file mode 100644
index 4747dedc5..000000000
--- a/packages/babel-preset/src/assets/isAssetUrl.test.ts
+++ /dev/null
@@ -1,24 +0,0 @@
-import { isAssetUrl } from './isAssetUrl';
-
-describe('isAssetUrl', () => {
- it('handles remote URLs', () => {
- expect(isAssetUrl('data://example.com')).toBe(false);
- expect(isAssetUrl('http://example.com')).toBe(false);
- expect(isAssetUrl('https://example.com')).toBe(false);
- expect(isAssetUrl('//example.com')).toBe(false);
- expect(isAssetUrl('#svg-part')).toBe(false);
- });
-
- it('handles assets URLs', () => {
- expect(isAssetUrl('../file.jpg')).toBe(true);
- expect(isAssetUrl('./file.jpg')).toBe(true);
- });
-
- it('handles quotes around URLs', () => {
- expect(isAssetUrl('"//example.com"')).toBe(false);
- expect(isAssetUrl("'//example.com'")).toBe(false);
-
- expect(isAssetUrl('"./file.jpg"')).toBe(true);
- expect(isAssetUrl("'./file.jpg'")).toBe(true);
- });
-});
diff --git a/packages/babel-preset/src/assets/isAssetUrl.ts b/packages/babel-preset/src/assets/isAssetUrl.ts
deleted file mode 100644
index 165ab36ae..000000000
--- a/packages/babel-preset/src/assets/isAssetUrl.ts
+++ /dev/null
@@ -1,11 +0,0 @@
-export function isAssetUrl(value: string): boolean {
- const url = value.replace(/^['|"]/, '');
- const isRemoteUrl =
- url.startsWith('data:') ||
- url.startsWith('http:') ||
- url.startsWith('https:') ||
- url.startsWith('//') /* Urls without protocol (use the same protocol as current page) */ ||
- url.startsWith('#');
-
- return !isRemoteUrl;
-}
diff --git a/packages/babel-preset/src/assets/normalizeStyleRules.test.ts b/packages/babel-preset/src/assets/normalizeStyleRules.test.ts
deleted file mode 100644
index 6076f617e..000000000
--- a/packages/babel-preset/src/assets/normalizeStyleRules.test.ts
+++ /dev/null
@@ -1,151 +0,0 @@
-import * as path from 'path';
-import { normalizeStyleRule, normalizeStyleRules } from './normalizeStyleRules';
-
-describe('normalizeStyleRule', () => {
- it('handles rules without quotes', () => {
- expect(
- normalizeStyleRule(
- path.posix,
- '/home/projects/foo',
- '/home/projects/foo/src/styles/Component.styles.ts',
- 'url(../../assets/image.png)',
- ),
- ).toBe('url(assets/image.png)');
- });
-
- it('handles rules with quotes', () => {
- expect(
- normalizeStyleRule(
- path.posix,
- '/home/projects/foo',
- '/home/projects/foo/src/styles/Component.styles.ts',
- "url('../../assets/image.png')",
- ),
- ).toBe('url(assets/image.png)');
- expect(
- normalizeStyleRule(
- path.posix,
- '/home/projects/foo',
- '/home/projects/foo/src/styles/Component.styles.ts',
- 'url("../../assets/image.png")',
- ),
- ).toBe('url(assets/image.png)');
- });
-
- it('keeps data-url', () => {
- expect(
- normalizeStyleRule(
- path.posix,
- '/home/projects/foo',
- '/home/projects/foo/src/styles/Component.styles.ts',
- 'url(data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEAYABgAAD/2Q==)',
- ),
- ).toBe('url(data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEAYABgAAD/2Q==)');
- });
-
- it('handles Windows paths', () => {
- expect(
- normalizeStyleRule(
- path.win32,
- 'C:\\Users\\Foo\\projects\\bar',
- 'C:\\Users\\Foo\\projects\\bar\\src\\styles\\Component.styles.ts',
- 'url(../../assets/image.png)',
- ),
- ).toBe('url(assets/image.png)');
- });
-});
-
-describe('normalizeStyleRules', () => {
- it('handles rules without metadata', () => {
- expect(
- normalizeStyleRules(
- path.posix,
- '/home/projects/foo',
- '/home/projects/foo/src/styles/Component.styles.ts',
-
- {
- root: {
- color: 'red',
- backgroundImage: 'url(../../assets/image.jpg)',
- overflowY: ['hidden', 'scroll'],
-
- ':hover': {
- backgroundImage: 'url(../../assets/hoverImage.jpg)',
- },
-
- '@media screen and (max-width: 100px)': {
- '& .foo': {
- backgroundImage: 'url(../../assets/mediaImage.jpg)',
- },
- },
- },
- },
- ),
- ).toEqual({
- root: {
- color: 'red',
- backgroundImage: 'url(assets/image.jpg)',
- overflowY: ['hidden', 'scroll'],
-
- ':hover': {
- backgroundImage: 'url(assets/hoverImage.jpg)',
- },
-
- '@media screen and (max-width: 100px)': {
- '& .foo': {
- backgroundImage: 'url(assets/mediaImage.jpg)',
- },
- },
- },
- });
- });
-
- it('handles multiple URLs', () => {
- expect(
- normalizeStyleRules(
- path.posix,
- '/home/projects/foo',
- '/home/projects/foo/src/styles/Component.styles.ts',
-
- {
- root: {
- // https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Backgrounds_and_Borders/Using_multiple_backgrounds
- backgroundImage: [
- 'url(../../assets/firefox.png),',
- 'url(../../assets/bubbles.png),',
- 'linear-gradient(to right, rgba(30, 75, 115, 1), rgba(255, 255, 255, 0))',
- ].join(' '),
- },
- },
- ),
- ).toEqual({
- root: {
- backgroundImage: [
- 'url(assets/firefox.png),',
- 'url(assets/bubbles.png),',
- 'linear-gradient(to right, rgba(30, 75, 115, 1), rgba(255, 255, 255, 0))',
- ].join(' '),
- },
- });
- });
-
- it('handles keyframe arrays', () => {
- expect(
- normalizeStyleRules(
- path.posix,
- '/home/projects/foo',
- '/home/projects/foo/src/styles/Component.styles.ts',
-
- {
- root: {
- animationName: [{ from: { height: '20px' }, to: { height: '10px' } }],
- },
- },
- ),
- ).toEqual({
- root: {
- animationName: [{ from: { height: '20px' }, to: { height: '10px' } }],
- },
- });
- });
-});
diff --git a/packages/babel-preset/src/assets/replaceAssetsWithImports.ts b/packages/babel-preset/src/assets/replaceAssetsWithImports.ts
deleted file mode 100644
index fb64fa2df..000000000
--- a/packages/babel-preset/src/assets/replaceAssetsWithImports.ts
+++ /dev/null
@@ -1,90 +0,0 @@
-import { NodePath, traverse, types as t } from '@babel/core';
-import * as path from 'path';
-import { tokenize } from 'stylis';
-
-import { absolutePathToRelative } from './absolutePathToRelative';
-import { isAssetUrl } from './isAssetUrl';
-
-/**
- * Replaces assets used in styles with imports and template literals.
- *
- * @example
- * "['.foo { background-image: url(image.png) }"
- * // to
- * import _asset from 'image.png'
- * `['.foo { background-image: url(${_asset}) }`
- */
-export function replaceAssetsWithImports(
- projectRoot: string,
- filename: string,
- programPath: NodePath,
- pathToUpdate: NodePath,
-) {
- const assetIdentifiers = new Map();
-
- function getAssetIdentifier(assetPath: string): t.Identifier {
- if (!assetIdentifiers.has(assetPath)) {
- assetIdentifiers.set(assetPath, programPath.scope.generateUidIdentifier('asset'));
- }
-
- return assetIdentifiers.get(assetPath) as t.Identifier;
- }
-
- function buildTemplateLiteralFromValue(value: string): t.TemplateLiteral {
- const tokens = tokenize(value);
-
- const quasis: t.TemplateElement[] = [];
- const expressions: t.Identifier[] = [];
-
- let acc = '';
-
- for (let i = 0, l = tokens.length; i < l; i++) {
- acc += tokens[i];
-
- if (tokens[i] === 'url') {
- const url = tokens[i + 1].slice(1, -1);
-
- if (isAssetUrl(url)) {
- // Handle `filter: url(./a.svg#id)`
- const [pathname, hash] = url.split('#');
-
- quasis.push(t.templateElement({ raw: acc + '(' }, false));
- expressions.push(getAssetIdentifier(pathname));
-
- acc = `${hash ? `#${hash}` : ''})`;
- i++;
- }
- }
- }
-
- quasis.push(t.templateElement({ raw: acc }, true));
-
- return t.templateLiteral(quasis, expressions);
- }
-
- traverse(
- pathToUpdate.node,
- {
- StringLiteral(literalPath) {
- const value = literalPath.node.value;
-
- if (value.indexOf('url(') === -1) {
- return;
- }
-
- literalPath.replaceWith(buildTemplateLiteralFromValue(value));
- },
- },
- programPath.scope,
- programPath,
- );
-
- for (const [importPath, identifier] of assetIdentifiers.entries()) {
- const relativePath = absolutePathToRelative(path, projectRoot, filename, importPath);
-
- programPath.unshiftContainer(
- 'body',
- t.importDeclaration([t.importDefaultSpecifier(identifier)], t.stringLiteral(relativePath)),
- );
- }
-}
diff --git a/packages/babel-preset/src/transformPlugin.test.ts b/packages/babel-preset/src/index.test.ts
similarity index 83%
rename from packages/babel-preset/src/transformPlugin.test.ts
rename to packages/babel-preset/src/index.test.ts
index 49ee88ca0..65e95ba6b 100644
--- a/packages/babel-preset/src/transformPlugin.test.ts
+++ b/packages/babel-preset/src/index.test.ts
@@ -15,11 +15,7 @@ pluginTester({
babelOptions: {
parserOpts: {
plugins: ['typescript'],
- },
- },
- pluginOptions: {
- babelOptions: {
- presets: ['@babel/typescript'],
+ sourceType: 'unambiguous',
},
},
formatResult: code =>
@@ -41,9 +37,6 @@ pluginTester({
title: 'duplicated imports',
fixture: path.resolve(fixturesDir, 'duplicated-imports', 'code.ts'),
outputFixture: path.resolve(fixturesDir, 'duplicated-imports', 'output.ts'),
- pluginOptions: {
- modules: [{ moduleSource: 'custom-package', importName: 'createStylesA' }],
- },
},
{
title: 'at rules',
@@ -55,11 +48,6 @@ pluginTester({
fixture: path.resolve(fixturesDir, 'multiple-declarations', 'code.ts'),
outputFixture: path.resolve(fixturesDir, 'multiple-declarations', 'output.ts'),
},
- {
- title: 'call of non existing module',
- fixture: path.resolve(fixturesDir, 'non-existing-module-call', 'code.ts'),
- outputFixture: path.resolve(fixturesDir, 'non-existing-module-call', 'output.ts'),
- },
{
title: 'syntax: animationName',
fixture: path.resolve(fixturesDir, 'keyframes', 'code.ts'),
@@ -151,9 +139,9 @@ pluginTester({
title: 'config: babelOptions',
fixture: path.resolve(fixturesDir, 'config-babel-options', 'code.ts'),
outputFixture: path.resolve(fixturesDir, 'config-babel-options', 'output.ts'),
- pluginOptions: {
+ presetOptions: {
babelOptions: {
- plugins: ['./packages/babel-preset/__fixtures__/config-babel-options/colorRenamePlugin'],
+ plugins: [path.resolve(fixturesDir, 'config-babel-options', 'colorRenamePlugin.js')],
},
},
},
@@ -161,12 +149,8 @@ pluginTester({
title: 'config: evaluationRules',
fixture: path.resolve(fixturesDir, 'config-evaluation-rules', 'code.ts'),
outputFixture: path.resolve(fixturesDir, 'config-evaluation-rules', 'output.ts'),
- pluginOptions: {
- evaluationRules: [
- {
- action: 'sampleEvaluator',
- },
- ],
+ presetOptions: {
+ evaluationRules: [{ action: 'sampleEvaluator' }],
},
},
@@ -197,36 +181,11 @@ pluginTester({
fixture: path.resolve(fixturesDir, 'import-alias', 'code.ts'),
outputFixture: path.resolve(fixturesDir, 'import-alias', 'output.ts'),
},
- {
- title: 'imports: custom module',
- fixture: path.resolve(fixturesDir, 'import-custom-module', 'code.ts'),
- outputFixture: path.resolve(fixturesDir, 'import-custom-module', 'output.ts'),
- pluginOptions: {
- modules: [{ moduleSource: 'custom-package', importName: 'makeStyles' }],
- },
- },
- {
- title: 'imports: custom module name',
- fixture: path.resolve(fixturesDir, 'import-custom-name', 'code.ts'),
- outputFixture: path.resolve(fixturesDir, 'import-custom-name', 'output.ts'),
- pluginOptions: {
- modules: [{ moduleSource: 'custom-package', importName: 'createStyles' }],
- },
- },
{
title: 'imports: require()',
fixture: path.resolve(fixturesDir, 'require', 'code.ts'),
outputFixture: path.resolve(fixturesDir, 'require', 'output.ts'),
},
- {
- title: 'imports: require() with custom module',
- fixture: path.resolve(fixturesDir, 'require-custom-module', 'code.ts'),
- outputFixture: path.resolve(fixturesDir, 'require-custom-module', 'output.ts'),
- pluginOptions: {
- modules: [{ moduleSource: 'custom-package', importName: 'makeStyles' }],
- },
- },
-
{
title: 'imports: require() for makeResetStyles',
fixture: path.resolve(fixturesDir, 'require-reset-styles', 'code.ts'),
@@ -240,6 +199,7 @@ pluginTester({
title: 'errors: unsupported shorthand CSS properties',
fixture: path.resolve(fixturesDir, 'unsupported-css-properties', 'fixture.ts'),
outputFixture: path.resolve(fixturesDir, 'unsupported-css-properties', 'output.ts'),
+
setup() {
const consoleSpy = jest.spyOn(console, 'error').mockImplementation();
@@ -248,15 +208,10 @@ pluginTester({
};
},
},
- {
- title: 'errors: throws on invalid argument count',
- fixture: path.resolve(fixturesDir, 'error-argument-count', 'fixture.js'),
- error: /function accepts only a single param/,
- },
{
title: 'errors: throws on invalid config',
fixture: path.resolve(fixturesDir, 'error-config-babel-options', 'fixture.ts'),
- pluginOptions: {
+ presetOptions: {
babelOptions: {
plugins: {},
},
@@ -265,8 +220,11 @@ pluginTester({
},
],
- plugin: transformPlugin,
- pluginName: '@griffel/babel-plugin-transform',
+ preset: griffelPreset,
+ presetName: '@griffel/babel-preset',
+ presetOptions: {
+ babelOptions: { presets: ['@babel/preset-typescript'] },
+ },
});
// TODO use the plugin tester and all existing fixtures once there is support for that
diff --git a/packages/babel-preset/src/index.ts b/packages/babel-preset/src/index.ts
index e104771b6..e119e098f 100644
--- a/packages/babel-preset/src/index.ts
+++ b/packages/babel-preset/src/index.ts
@@ -1,17 +1,20 @@
-import { transformPlugin } from './transformPlugin';
-
import type { ConfigAPI } from '@babel/core';
+import linariaPreset, { PluginOptions } from '@linaria/babel-preset';
+
+import { validateOptions } from './validateOptions';
import type { BabelPluginOptions, BabelPluginMetadata } from './types';
export { default as shakerEvaluator } from '@linaria/shaker';
-export { EvalCache, Module } from '@linaria/babel-preset';
export { configSchema } from './schema';
-export type { Evaluator, EvalRule } from '@linaria/babel-preset';
+export type { Evaluator, EvalRule } from '@linaria/utils';
export type { BabelPluginOptions, BabelPluginMetadata };
-export default function griffelPreset(babel: ConfigAPI, options: BabelPluginOptions) {
- return {
- plugins: [[transformPlugin, options]],
- };
+export default function griffelPreset(babel: ConfigAPI, options: BabelPluginOptions = {}) {
+ const { babelOptions, evaluationRules } = validateOptions(options);
+
+ return linariaPreset(babel, {
+ babelOptions,
+ rules: evaluationRules,
+ } as PluginOptions);
}
diff --git a/packages/babel-preset/src/schema.ts b/packages/babel-preset/src/schema.ts
index 71d1ae8f8..10a9b797f 100644
--- a/packages/babel-preset/src/schema.ts
+++ b/packages/babel-preset/src/schema.ts
@@ -48,9 +48,6 @@ export const configSchema: JSONSchema7 = {
},
},
},
- projectRoot: {
- type: 'string',
- },
},
additionalProperties: false,
};
diff --git a/packages/babel-preset/src/transformPlugin.ts b/packages/babel-preset/src/transformPlugin.ts
deleted file mode 100644
index c0dde9f58..000000000
--- a/packages/babel-preset/src/transformPlugin.ts
+++ /dev/null
@@ -1,485 +0,0 @@
-import { NodePath, PluginObj, PluginPass, types as t } from '@babel/core';
-import { declare } from '@babel/helper-plugin-utils';
-import { Module } from '@linaria/babel-preset';
-import shakerEvaluator from '@linaria/shaker';
-import {
- resolveStyleRulesForSlots,
- GriffelStyle,
- resolveResetStyleRules,
- CSSRulesByBucket,
- CSSClassesMapBySlot,
- normalizeCSSBucketEntry,
-} from '@griffel/core';
-import * as path from 'path';
-
-import { normalizeStyleRules } from './assets/normalizeStyleRules';
-import { replaceAssetsWithImports } from './assets/replaceAssetsWithImports';
-import { dedupeCSSRules } from './utils/dedupeCSSRules';
-import { evaluatePaths } from './utils/evaluatePaths';
-import { BabelPluginOptions, BabelPluginMetadata } from './types';
-import { validateOptions } from './validateOptions';
-
-type FunctionKinds = 'makeStyles' | 'makeResetStyles';
-
-type BabelPluginState = PluginPass & {
- importDeclarationPaths?: NodePath[];
- requireDeclarationPath?: NodePath;
-
- definitionPaths?: {
- /** The name of the resulting hook from a Griffel call */
- declaratorId: string;
- /** The type of Griffel call */
- functionKind: FunctionKinds;
- /** The code path of the Griffel call */
- path: NodePath;
- }[];
- calleePaths?: NodePath[];
- cssEntries?: BabelPluginMetadata['cssEntries'];
- cssResetEntries?: BabelPluginMetadata['cssResetEntries'];
-};
-
-function getDefinitionPathFromCallExpression(
- functionKind: FunctionKinds,
- callExpression: NodePath,
-): NodePath {
- const argumentPaths = callExpression.get('arguments');
- const hasValidArguments = Array.isArray(argumentPaths) && argumentPaths.length === 1;
-
- if (!hasValidArguments) {
- throw callExpression.buildCodeFrameError(`${functionKind}() function accepts only a single param`);
- }
-
- const definitionsPath = argumentPaths[0];
-
- if (definitionsPath.isExpression() || definitionsPath.isSpreadElement()) {
- return definitionsPath;
- }
-
- throw definitionsPath.buildCodeFrameError(`${functionKind}() function accepts only expressions and spreads`);
-}
-
-/**
- * Gets a kind of passed callee.
- */
-function getCalleeFunctionKind(
- path: NodePath,
- modules: NonNullable,
-): FunctionKinds | null {
- for (const module of modules) {
- if (path.referencesImport(module.moduleSource, module.importName)) {
- return 'makeStyles';
- }
-
- if (path.referencesImport(module.moduleSource, module.resetImportName || 'makeResetStyles')) {
- return 'makeResetStyles';
- }
- }
-
- return null;
-}
-
-/**
- * Gets the id of the parent variable declarator
- */
-function getParentDeclaratorId(path: NodePath | NodePath): string {
- const declarator = path.findParent(p => p.isVariableDeclarator());
- if (declarator?.isVariableDeclarator()) {
- const id = declarator.get('id');
- if (id.isIdentifier()) {
- return id.node.name;
- }
- }
-
- return 'unknownHook';
-}
-
-/**
- * Extracts CSS rules from evaluated reset styles to metadata
- */
-function buildCSSResetEntriesMetadata(
- state: Required,
- cssRules: string[] | CSSRulesByBucket,
- declaratorId: string,
-) {
- const cssRulesByBucket: CSSRulesByBucket = Array.isArray(cssRules) ? { d: cssRules } : cssRules;
- state.cssResetEntries[declaratorId] ??= [];
- state.cssResetEntries[declaratorId] = Object.values(cssRulesByBucket).flatMap(bucketEntries => {
- return bucketEntries.map(bucketEntry => {
- if (Array.isArray(bucketEntry)) {
- throw new Error(
- `CSS rules in buckets for "makeResetStyles()" should not contain arrays, got: ${JSON.stringify(
- bucketEntry,
- )})}`,
- );
- }
-
- return bucketEntry;
- });
- });
-}
-
-/**
- * Extracts CSS rules from evaluated styles to metadata
- */
-function buildCSSEntriesMetadata(
- state: Required,
- classnamesMapping: CSSClassesMapBySlot,
- cssRulesByBucket: CSSRulesByBucket,
- declaratorId: string,
-) {
- const classesBySlot: Record = Object.fromEntries(
- Object.entries(classnamesMapping).map(([slot, cssClassesMap]) => {
- return [
- slot,
- Object.values(cssClassesMap).flatMap(cssClasses => (Array.isArray(cssClasses) ? cssClasses : [cssClasses])),
- ];
- }),
- );
-
- const cssRules: string[] = Object.values(cssRulesByBucket).flatMap(cssRulesByBucket => {
- return cssRulesByBucket.map(bucketEntry => {
- const [cssRule] = normalizeCSSBucketEntry(bucketEntry);
- return cssRule;
- });
- });
-
- state.cssEntries[declaratorId] = Object.fromEntries(
- Object.entries(classesBySlot).map(([slot, cssClasses]) => {
- return [
- slot,
- cssClasses.map(cssClass => {
- return cssRules.find(rule => rule.includes(cssClass))!;
- }),
- ];
- }),
- );
-}
-
-/**
- * Checks if import statement import makeStyles().
- */
-function hasMakeStylesImport(
- path: NodePath,
- modules: NonNullable,
-): boolean {
- return Boolean(modules.find(module => path.node.source.value === module.moduleSource));
-}
-
-/**
- * Checks that passed declarator imports makesStyles().
- *
- * @example react_make_styles_1 = require('@griffel/react')
- */
-function isRequireDeclarator(
- path: NodePath,
- modules: NonNullable,
-): boolean {
- const initPath = path.get('init');
-
- if (!initPath.isCallExpression()) {
- return false;
- }
-
- if (initPath.get('callee').isIdentifier({ name: 'require' })) {
- const args = initPath.get('arguments');
-
- if (Array.isArray(args) && args.length === 1) {
- const moduleNamePath = args[0];
-
- if (moduleNamePath.isStringLiteral()) {
- return Boolean(modules.find(module => moduleNamePath.node.value === module.moduleSource));
- }
- }
- }
-
- return false;
-}
-
-export const transformPlugin = declare, PluginObj>((api, options) => {
- api.assertVersion(7);
-
- const pluginOptions: Required = {
- babelOptions: {},
- generateMetadata: false,
- modules: [
- { moduleSource: '@griffel/react', importName: 'makeStyles' },
- { moduleSource: '@fluentui/react-components', importName: 'makeStyles' },
- ],
- evaluationRules: [
- { action: shakerEvaluator },
- {
- test: /[/\\]node_modules[/\\]/,
- action: 'ignore',
- },
- ],
- projectRoot: process.cwd(),
-
- ...options,
- };
-
- validateOptions(pluginOptions);
-
- return {
- name: '@griffel/babel-plugin-transform',
-
- pre() {
- this.importDeclarationPaths = [];
- this.definitionPaths = [];
- this.calleePaths = [];
- this.cssEntries = {};
- this.cssResetEntries = {};
-
- if (pluginOptions.generateMetadata) {
- Object.assign(this.file.metadata, {
- cssResetEntries: {},
- cssEntries: {},
- } as BabelPluginMetadata);
- }
- },
-
- visitor: {
- Program: {
- enter(programPath, state) {
- if (typeof state.filename === 'undefined') {
- throw new Error(
- [
- '@griffel/babel-preset: This preset requires "filename" option to be specified by Babel. ',
- "It's automatically done by Babel and our loaders/plugins. ",
- "If you're facing this issue, please check your setup.\n\n",
- 'See: https://babeljs.io/docs/en/options#filename',
- ].join(''),
- );
- }
-
- // Invalidate cache for module evaluation to get fresh modules
- Module.invalidate();
- },
-
- exit(programPath, state) {
- if (state.importDeclarationPaths!.length === 0 && !state.requireDeclarationPath) {
- return;
- }
-
- if (state.definitionPaths) {
- // Runs Babel AST processing or module evaluation for Node once for all arguments of makeStyles() calls once
- evaluatePaths(
- programPath,
- state.file.opts.filename!,
- state.definitionPaths.map(p => p.path),
- pluginOptions,
- );
-
- state.definitionPaths.forEach(definitionPath => {
- const callExpressionPath = definitionPath.path.findParent(parentPath =>
- parentPath.isCallExpression(),
- ) as NodePath;
- const evaluationResult = definitionPath.path.evaluate();
-
- if (!evaluationResult.confident) {
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
- const deoptPath = (evaluationResult as any).deopt as NodePath | undefined;
- throw (deoptPath || definitionPath.path).buildCodeFrameError(
- 'Evaluation of a code fragment failed, this is a bug, please report it',
- );
- }
-
- if (definitionPath.functionKind === 'makeStyles') {
- const stylesBySlots: Record = evaluationResult.value;
- const [classnamesMapping, cssRulesByBucket] = resolveStyleRulesForSlots(
- // Heads up!
- // Style rules should be normalized *before* they will be resolved to CSS rules to have deterministic
- // results across different build targets.
- normalizeStyleRules(
- path,
- pluginOptions.projectRoot,
- // Presence of "state.filename" is validated on `Program.enter()`
- state.filename as string,
- stylesBySlots,
- ),
- );
- const uniqueCSSRules = dedupeCSSRules(cssRulesByBucket);
-
- if (pluginOptions.generateMetadata) {
- buildCSSEntriesMetadata(
- state as Required,
- classnamesMapping,
- uniqueCSSRules,
- definitionPath.declaratorId,
- );
- }
-
- (callExpressionPath.get('arguments.0') as NodePath).remove();
- callExpressionPath.pushContainer('arguments', [
- t.valueToNode(classnamesMapping),
- t.valueToNode(uniqueCSSRules),
- ]);
- }
-
- if (definitionPath.functionKind === 'makeResetStyles') {
- const styles: GriffelStyle = evaluationResult.value;
- const [ltrClassName, rtlClassName, cssRules] = resolveResetStyleRules(
- // Heads up!
- // Style rules should be normalized *before* they will be resolved to CSS rules to have deterministic
- // results across different build targets.
- normalizeStyleRules(
- path,
- pluginOptions.projectRoot,
- // Presence of "state.filename" is validated on `Program.enter()`
- state.filename as string,
- styles,
- ),
- );
-
- if (pluginOptions.generateMetadata) {
- buildCSSResetEntriesMetadata(
- state as Required,
- cssRules,
- definitionPath.declaratorId,
- );
- }
-
- (callExpressionPath.get('arguments.0') as NodePath).remove();
- callExpressionPath.pushContainer('arguments', [
- t.valueToNode(ltrClassName),
- t.valueToNode(rtlClassName),
- t.valueToNode(cssRules),
- ]);
- }
-
- replaceAssetsWithImports(pluginOptions.projectRoot, state.filename!, programPath, callExpressionPath);
- });
-
- if (pluginOptions.generateMetadata) {
- Object.assign(this.file.metadata, {
- cssResetEntries: state.cssResetEntries ?? {},
- cssEntries: state.cssEntries ?? {},
- } as BabelPluginMetadata);
- }
- }
-
- state.importDeclarationPaths!.forEach(importDeclarationPath => {
- const specifiers = importDeclarationPath.get('specifiers');
- const source = importDeclarationPath.get('source');
-
- specifiers.forEach(specifier => {
- if (specifier.isImportSpecifier()) {
- const importedPath = specifier.get('imported');
-
- for (const module of pluginOptions.modules) {
- if (module.moduleSource !== source.node.value) {
- // 👆 "moduleSource" should match "importDeclarationPath.source" to skip unrelated ".importName"
- continue;
- }
-
- if (importedPath.isIdentifier({ name: module.importName })) {
- specifier.replaceWith(t.identifier('__styles'));
- } else if (importedPath.isIdentifier({ name: module.resetImportName || 'makeResetStyles' })) {
- specifier.replaceWith(t.identifier('__resetStyles'));
- }
- }
- }
- });
- });
-
- if (state.calleePaths) {
- state.calleePaths.forEach(calleePath => {
- if (calleePath.node.name === 'makeResetStyles') {
- calleePath.replaceWith(t.identifier('__resetStyles'));
- return;
- }
-
- calleePath.replaceWith(t.identifier('__styles'));
- });
- }
- },
- },
-
- // eslint-disable-next-line @typescript-eslint/naming-convention
- ImportDeclaration(path, state) {
- if (hasMakeStylesImport(path, pluginOptions.modules)) {
- state.importDeclarationPaths!.push(path);
- }
- },
-
- // eslint-disable-next-line @typescript-eslint/naming-convention
- VariableDeclarator(path, state) {
- if (isRequireDeclarator(path, pluginOptions.modules)) {
- state.requireDeclarationPath = path;
- }
- },
-
- // eslint-disable-next-line @typescript-eslint/naming-convention
- CallExpression(path, state) {
- /**
- * Handles case when `makeStyles()` is `CallExpression`.
- *
- * @example makeStyles({})
- */
- if (state.importDeclarationPaths!.length === 0) {
- return;
- }
-
- const calleePath = path.get('callee');
-
- if (calleePath.isIdentifier()) {
- const functionKind = getCalleeFunctionKind(calleePath, pluginOptions.modules);
- const declaratorId = getParentDeclaratorId(path);
-
- if (functionKind) {
- state.definitionPaths!.push({
- declaratorId,
- functionKind,
- path: getDefinitionPathFromCallExpression(functionKind, path),
- });
- state.calleePaths!.push(calleePath);
- }
- }
- },
-
- // eslint-disable-next-line @typescript-eslint/naming-convention
- MemberExpression(expressionPath, state) {
- /**
- * Handles case when `makeStyles()` is inside `MemberExpression`.
- *
- * @example module.makeStyles({})
- */
- if (!state.requireDeclarationPath) {
- return;
- }
-
- const objectPath = expressionPath.get('object');
- const propertyPath = expressionPath.get('property');
-
- if (!objectPath.isIdentifier({ name: (state.requireDeclarationPath.node.id as t.Identifier).name })) {
- return;
- }
-
- let functionKind: FunctionKinds | null = null;
-
- if (propertyPath.isIdentifier({ name: 'makeStyles' })) {
- functionKind = 'makeStyles';
- } else if (propertyPath.isIdentifier({ name: 'makeResetStyles' })) {
- functionKind = 'makeResetStyles';
- }
-
- if (!functionKind) {
- return;
- }
-
- const parentPath = expressionPath.parentPath;
-
- if (!parentPath.isCallExpression()) {
- return;
- }
-
- const declaratorId = getParentDeclaratorId(expressionPath);
- state.definitionPaths!.push({
- functionKind,
- declaratorId,
- path: getDefinitionPathFromCallExpression(functionKind, parentPath),
- });
- state.calleePaths!.push(propertyPath as NodePath);
- },
- },
- };
-});
diff --git a/packages/babel-preset/src/types.ts b/packages/babel-preset/src/types.ts
index 3107cb28a..ec2c62ce8 100644
--- a/packages/babel-preset/src/types.ts
+++ b/packages/babel-preset/src/types.ts
@@ -1,5 +1,5 @@
import type { TransformOptions } from '@babel/core';
-import type { EvalRule } from '@linaria/babel-preset';
+import type { EvalRule } from '@linaria/utils';
export type BabelPluginOptions = {
/**
@@ -22,14 +22,6 @@ export type BabelPluginOptions = {
/** The set of rules that defines how the matched files will be transformed during the evaluation. */
evaluationRules?: EvalRule[];
-
- /**
- * Defined the of the project. Is used to have a deterministic path for asset paths, usually should be equal to Git
- * root.
- *
- * @default process.cwd()
- */
- projectRoot?: string;
};
export type BabelPluginMetadata = {
diff --git a/packages/babel-preset/src/utils/evaluatePaths.ts b/packages/babel-preset/src/utils/evaluatePaths.ts
deleted file mode 100644
index 0ace2eca3..000000000
--- a/packages/babel-preset/src/utils/evaluatePaths.ts
+++ /dev/null
@@ -1,34 +0,0 @@
-import { NodePath, types as t } from '@babel/core';
-
-import type { BabelPluginOptions } from '../types';
-import { evaluatePathsInVM } from './evaluatePathsInVM';
-
-/**
- * Checks if passed paths can be evaluated by Babel, if no - fallbacks to Node evaluation.
- * The goal there is to ensure that all paths are pure and can be safely evaluated later by Babel.
- */
-export function evaluatePaths(
- program: NodePath,
- filename: string,
- paths: NodePath[],
- pluginOptions: Required,
-): void {
- const pathsToBeEvaluatedInVM: NodePath[] = [];
-
- for (let i = 0; i < paths.length; i++) {
- const result = paths[i].evaluate();
-
- // Optimistic case, we were able to resolve a path without evaluation in Node environment 🎉
- if (result.confident) {
- // Heads up!
- // We don't need to do any replacements there as after resolving all style objects will be evaluated again
- continue;
- }
-
- pathsToBeEvaluatedInVM.push(paths[i]);
- }
-
- if (pathsToBeEvaluatedInVM.length > 0) {
- evaluatePathsInVM(program, filename, pathsToBeEvaluatedInVM, pluginOptions);
- }
-}
diff --git a/packages/babel-preset/src/utils/evaluatePathsInVM.test.ts b/packages/babel-preset/src/utils/evaluatePathsInVM.test.ts
deleted file mode 100644
index cba10532b..000000000
--- a/packages/babel-preset/src/utils/evaluatePathsInVM.test.ts
+++ /dev/null
@@ -1,16 +0,0 @@
-import * as Babel from '@babel/core';
-import generator from '@babel/generator';
-
-import { expressionTpl } from './evaluatePathsInVM';
-
-describe('expressionTpl', () => {
- it('returns an expression based on a template', () => {
- const expression = Babel.types.identifier('foo');
-
- const result = expressionTpl({ expression, wrapName: 'wrap' });
- const resultCode = generator(result).code;
-
- expect(Babel.types.isCallExpression(result)).toBe(true);
- expect(resultCode).toMatchInlineSnapshot(`"wrap(() => foo)"`);
- });
-});
diff --git a/packages/babel-preset/src/utils/evaluatePathsInVM.ts b/packages/babel-preset/src/utils/evaluatePathsInVM.ts
deleted file mode 100644
index e9fed30ff..000000000
--- a/packages/babel-preset/src/utils/evaluatePathsInVM.ts
+++ /dev/null
@@ -1,111 +0,0 @@
-import { NodePath, types as t } from '@babel/core';
-import { Scope } from '@babel/traverse';
-import * as template from '@babel/template';
-import generator from '@babel/generator';
-import { Module, StrictOptions } from '@linaria/babel-preset';
-
-import type { BabelPluginOptions } from '../types';
-
-const EVAL_EXPORT_NAME = '__mkPreval';
-
-function evaluate(code: string, filename: string, pluginOptions: Required) {
- const options: StrictOptions = {
- displayName: false,
- evaluate: true,
-
- rules: pluginOptions.evaluationRules,
- babelOptions: {
- ...pluginOptions.babelOptions,
-
- // This instance of Babel should ignore all user's configs and apply only our transformPlugin
- configFile: false,
- babelrc: false,
- },
- };
- const mod = new Module(filename, options);
-
- mod.evaluate(code, [EVAL_EXPORT_NAME]);
-
- return (mod.exports as { [EVAL_EXPORT_NAME]: unknown[] })[EVAL_EXPORT_NAME];
-}
-
-function findFreeName(scope: Scope, name: string): string {
- // By default `name` is used as a name of the function …
- let nextName = name;
- let idx = 0;
- while (scope.hasBinding(nextName, false)) {
- // … but if there is an already defined variable with this name …
- // … we are trying to use a name like wrap_N
- idx += 1;
- nextName = `wrap_${idx}`;
- }
-
- return nextName;
-}
-
-const expressionWrapperTpl = template.statement(`
- const %%wrapName%% = (fn) => {
- try {
- return fn();
- } catch (e) {
- return e;
- }
- };
-`);
-
-export const expressionTpl = template.expression(`%%wrapName%%(() => %%expression%%)`);
-const exportsPrevalTpl = template.statement(`exports.${EVAL_EXPORT_NAME} = %%expressions%%`);
-
-/**
- * Creates a new program that includes required imports and wrappers to return resolved values.
- */
-function addPreval(path: NodePath, lazyDeps: Array): t.Program {
- // Constant for "__mkPreval" with all dependencies
- const wrapName = findFreeName(path.scope, '_wrap');
- const programNode = path.node;
-
- return t.program(
- [
- ...programNode.body,
-
- expressionWrapperTpl({ wrapName }),
- exportsPrevalTpl({
- expressions: t.arrayExpression(lazyDeps.map(expression => expressionTpl({ expression, wrapName }))),
- }),
- ],
- programNode.directives,
- programNode.sourceType,
- programNode.interpreter,
- );
-}
-
-/**
- * Evaluates passed paths in Node environment to resolve all lazy values.
- */
-export function evaluatePathsInVM(
- program: NodePath,
- filename: string,
- nodePaths: NodePath[],
- pluginOptions: Required,
-): void {
- const pathsToEvaluate = nodePaths.map(nodePath => {
- // spreads ("...fooBar") can't be executed directly, so they are wrapped with an object ("{...fooBar}")
- if (nodePath.isSpreadElement()) {
- return t.objectExpression([nodePath.node as t.SpreadElement]);
- }
-
- return nodePath.node;
- });
-
- // Linaria also performs hoisting of identifiers, we don't need this as all makeStyles() calls should be top level
- const modifiedProgram = addPreval(program, pathsToEvaluate);
-
- const { code } = generator(modifiedProgram);
- const results = evaluate(code, filename, pluginOptions);
-
- for (let i = 0; i < nodePaths.length; i++) {
- const nodePath = nodePaths[i];
-
- nodePath.replaceWith(t.valueToNode(results[i]));
- }
-}
diff --git a/packages/babel-preset/src/validateOptions.test.ts b/packages/babel-preset/src/validateOptions.test.ts
index fc7c594f5..2f0d8419b 100644
--- a/packages/babel-preset/src/validateOptions.test.ts
+++ b/packages/babel-preset/src/validateOptions.test.ts
@@ -1,28 +1,10 @@
-import type { Evaluator } from '@linaria/babel-preset';
+import type { File } from '@babel/types';
+import type { Evaluator } from '@linaria/utils';
import { validateOptions } from './validateOptions';
import { BabelPluginOptions } from './types';
describe('validateOptions', () => {
- describe('modules', () => {
- it('passes on valid options', () => {
- const pluginOptions: BabelPluginOptions = {
- modules: [{ moduleSource: 'react-make-styles', importName: 'makeStyles' }],
- };
-
- expect(() => validateOptions(pluginOptions)).not.toThrow();
- });
-
- it('throws on wrong options', () => {
- const pluginOptions = { modules: {} };
-
- // @ts-expect-error Invalid options are passed for testing purposes
- expect(() => validateOptions(pluginOptions)).toThrowErrorMatchingInlineSnapshot(
- `"Validation failed for passed config: data/modules must be array"`,
- );
- });
- });
-
describe('babelOptions', () => {
it('passes on valid options', () => {
const pluginOptions: BabelPluginOptions = {
@@ -56,7 +38,7 @@ describe('validateOptions', () => {
describe('evaluationRules', () => {
it('passes on valid options', () => {
- const noopEvaluator: Evaluator = () => ['foo', null];
+ const noopEvaluator: Evaluator = () => [null as unknown as File, 'foo', null];
const pluginOptions: BabelPluginOptions = {
evaluationRules: [
{ action: noopEvaluator },
diff --git a/packages/babel-preset/src/validateOptions.ts b/packages/babel-preset/src/validateOptions.ts
index 1d92bb8b2..461872fec 100644
--- a/packages/babel-preset/src/validateOptions.ts
+++ b/packages/babel-preset/src/validateOptions.ts
@@ -8,10 +8,12 @@ const ajv = new Ajv();
/**
* Validates options for transformPlugin with a schema.
*/
-export function validateOptions(pluginOptions: BabelPluginOptions): void {
+export function validateOptions(pluginOptions: BabelPluginOptions): BabelPluginOptions {
const valid = ajv.validate(configSchema, pluginOptions);
if (!valid) {
throw new Error(`Validation failed for passed config: ${ajv.errorsText(ajv.errors)}`);
}
+
+ return pluginOptions;
}
diff --git a/packages/babel-preset/tsconfig.spec.json b/packages/babel-preset/tsconfig.spec.json
index 0321a8aa6..82af2525c 100644
--- a/packages/babel-preset/tsconfig.spec.json
+++ b/packages/babel-preset/tsconfig.spec.json
@@ -9,6 +9,7 @@
"include": [
"__fixtures__/**/code.ts",
"__fixtures__/**/fixture.ts",
+ "__fixtures__/config-evaluation-rules/sampleEvaluator.js",
"**/*.test.ts",
"**/*.spec.ts",
"**/*.test.tsx",
diff --git a/packages/linaria-processor/.eslintrc.json b/packages/linaria-processor/.eslintrc.json
new file mode 100644
index 000000000..9d9c0db55
--- /dev/null
+++ b/packages/linaria-processor/.eslintrc.json
@@ -0,0 +1,18 @@
+{
+ "extends": ["../../.eslintrc.json"],
+ "ignorePatterns": ["!**/*"],
+ "overrides": [
+ {
+ "files": ["*.ts", "*.tsx", "*.js", "*.jsx"],
+ "rules": {}
+ },
+ {
+ "files": ["*.ts", "*.tsx"],
+ "rules": {}
+ },
+ {
+ "files": ["*.js", "*.jsx"],
+ "rules": {}
+ }
+ ]
+}
diff --git a/packages/linaria-processor/README.md b/packages/linaria-processor/README.md
new file mode 100644
index 000000000..b80683556
--- /dev/null
+++ b/packages/linaria-processor/README.md
@@ -0,0 +1,55 @@
+# Griffel processor for Linaria
+
+A processor for [Linaria](https://github.com/callstack/linaria) for that performs build time transforms for `makeStyles` & `makeResetStyles` [`@griffel/react`](../react).
+
+
+
+
+- [Install](#install)
+- [How to use it?](#how-to-use-it)
+ - [Handling Griffel re-exports](#handling-griffel-re-exports)
+
+
+
+## Install
+
+```bash
+yarn add --dev @griffel/linaria-processor
+# or
+npm install --save-dev @griffel/linaria-processor
+```
+
+## How to use it?
+
+This package cannot be used solely, it should be paired with `@griffel/babel-preset` or `@griffel/webpack-loader`
+
+- For library developers, please use [`@griffel/babel-preset`](../babel-preset)
+- For application developers, please use [`@griffel/webpack-loader`](../webpack-loader)
+
+### Handling Griffel re-exports
+
+```js
+import { makeStyles, makeResetStyles } from 'custom-package';
+```
+
+By default, the processor handles imports from `@griffel/react` & `@fluentui/react-components`, to handle imports from custom packages settings you need to include meta information to a matching `package.json`:
+
+```json
+{
+ "name": "custom-package",
+ "version": "1.0.0",
+ "linaria": {
+ "tags": {
+ "makeStyles": "@griffel/linaria-processor/make-styles",
+ "makeResetStyles": "@griffel/linaria-processor/make-reset-styles"
+ }
+ }
+}
+```
+
+> **Note**: "custom-package" should re-export following functions from `@griffel/react`:
+>
+> - `__styles`
+> - `__css`
+> - `__resetStyles`
+> - `__resetCSS`
diff --git a/packages/linaria-processor/jest.config.js b/packages/linaria-processor/jest.config.js
new file mode 100644
index 000000000..bf28fa7c5
--- /dev/null
+++ b/packages/linaria-processor/jest.config.js
@@ -0,0 +1,14 @@
+module.exports = {
+ displayName: 'linaria-processor',
+ preset: '../../jest.preset.js',
+ globals: {
+ 'ts-jest': {
+ tsconfig: '/tsconfig.spec.json',
+ },
+ },
+ transform: {
+ '^.+\\.[tj]sx?$': 'ts-jest',
+ },
+ moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx'],
+ coverageDirectory: '../../coverage/packages/linaria-processor',
+};
diff --git a/packages/linaria-processor/package.json b/packages/linaria-processor/package.json
new file mode 100644
index 000000000..e578d0512
--- /dev/null
+++ b/packages/linaria-processor/package.json
@@ -0,0 +1,30 @@
+{
+ "name": "@griffel/linaria-processor",
+ "version": "0.0.1",
+ "description": "Linaria processor for Griffel",
+ "license": "MIT",
+ "repository": {
+ "type": "git",
+ "url": "https://github.com/microsoft/griffel"
+ },
+ "dependencies": {
+ "@griffel/core": "^1.14.1",
+ "@linaria/tags": "^5.0.1",
+ "stylis": "^4.2.0",
+ "tslib": "^2.1.0"
+ },
+ "exports": {
+ ".": {
+ "types": "./src/index.d.ts",
+ "default": "./src/index.js"
+ },
+ "./make-styles": {
+ "types": "./src/MakeStylesProcessor.d.ts",
+ "default": "./src/MakeStylesProcessor.js"
+ },
+ "./make-reset-styles": {
+ "types": "./src/MakeResetStylesProcessor.d.ts",
+ "default": "./src/MakeResetStylesProcessor.js"
+ }
+ }
+}
diff --git a/packages/linaria-processor/project.json b/packages/linaria-processor/project.json
new file mode 100644
index 000000000..d5ccdd0c7
--- /dev/null
+++ b/packages/linaria-processor/project.json
@@ -0,0 +1,49 @@
+{
+ "root": "packages/linaria-processor",
+ "sourceRoot": "packages/linaria-processor/src",
+ "projectType": "library",
+ "targets": {
+ "lint": {
+ "executor": "@nrwl/linter:eslint",
+ "outputs": ["{options.outputFile}"],
+ "options": {
+ "lintFilePatterns": ["packages/linaria-processor/**/*.ts"]
+ }
+ },
+ "test": {
+ "executor": "@nrwl/jest:jest",
+ "outputs": ["coverage/packages/linaria-processor"],
+ "options": {
+ "jestConfig": "packages/linaria-processor/jest.config.js",
+ "passWithNoTests": true
+ }
+ },
+ "build": {
+ "executor": "@nrwl/js:tsc",
+ "outputs": ["{options.outputPath}"],
+ "options": {
+ "outputPath": "dist/packages/linaria-processor",
+ "tsConfig": "packages/linaria-processor/tsconfig.lib.json",
+ "packageJson": "packages/linaria-processor/package.json",
+ "main": "packages/linaria-processor/src/index.ts",
+ "assets": [
+ "packages/linaria-processor/README.md",
+ {
+ "glob": "LICENSE.md",
+ "input": ".",
+ "output": "."
+ }
+ ]
+ }
+ },
+ "type-check": {
+ "executor": "@nrwl/workspace:run-commands",
+ "options": {
+ "cwd": "packages/linaria-processor",
+ "commands": [{ "command": "tsc -b --pretty" }],
+ "outputPath": []
+ }
+ }
+ },
+ "tags": []
+}
diff --git a/packages/linaria-processor/src/BaseGriffelProcessor.ts b/packages/linaria-processor/src/BaseGriffelProcessor.ts
new file mode 100644
index 000000000..8e1e1d7c6
--- /dev/null
+++ b/packages/linaria-processor/src/BaseGriffelProcessor.ts
@@ -0,0 +1,47 @@
+import type { Expression } from '@babel/types';
+import type { Params, TailProcessorParams } from '@linaria/tags';
+import { BaseProcessor, TaggedTemplateProcessor, validateParams } from '@linaria/tags';
+import * as path from 'path';
+
+export default abstract class BaseGriffelProcessor extends BaseProcessor {
+ readonly expressionName: string | number | boolean | null = null;
+
+ public constructor([tag, callParam]: Params, ...args: TailProcessorParams) {
+ super([tag], ...args);
+
+ validateParams([tag, callParam], ['callee', 'call'], TaggedTemplateProcessor.SKIP);
+
+ if (callParam[0] === 'call') {
+ const { ex } = callParam[1];
+
+ if (ex.type === 'Identifier') {
+ this.dependencies.push(callParam[1] as any);
+ this.expressionName = ex.name;
+ } else if (ex.type === 'NullLiteral') {
+ this.expressionName = null;
+ } else {
+ this.expressionName = ex.value;
+ }
+ }
+ }
+
+ public get path() {
+ return process.platform === 'win32' ? path.win32 : path.posix;
+ }
+
+ public override get asSelector(): string {
+ throw new Error('The result of makeStyles cannot be used as a selector.');
+ }
+
+ public override doEvaltimeReplacement(): void {
+ this.replacer(this.value, false);
+ }
+
+ public override get value(): Expression {
+ return this.astService.nullLiteral();
+ }
+
+ public override toString(): string {
+ return `${super.toString()}(…)`;
+ }
+}
diff --git a/packages/linaria-processor/src/MakeResetStylesProcessor.ts b/packages/linaria-processor/src/MakeResetStylesProcessor.ts
new file mode 100644
index 000000000..388e33676
--- /dev/null
+++ b/packages/linaria-processor/src/MakeResetStylesProcessor.ts
@@ -0,0 +1,66 @@
+import { resolveResetStyleRules } from '@griffel/core';
+import type { CSSRulesByBucket, GriffelResetStyle } from '@griffel/core';
+import type { ValueCache } from '@linaria/tags';
+
+import { createRuleLiteral } from './assets/createRuleLiteral';
+import { normalizeStyleRules } from './assets/normalizeStyleRules';
+import BaseGriffelProcessor from './BaseGriffelProcessor';
+import { FileContext } from './types';
+
+export default class MakeResetStylesProcessor extends BaseGriffelProcessor {
+ #ltrClassName: string | null = null;
+ #rtlClassName: string | null = null;
+ #cssRules: CSSRulesByBucket | string[] | null = null;
+
+ public override build(valueCache: ValueCache) {
+ const styles = valueCache.get(this.expressionName) as GriffelResetStyle;
+
+ [this.#ltrClassName, this.#rtlClassName, this.#cssRules] = resolveResetStyleRules(
+ // Heads up!
+ // Style rules should be normalized *before* they will be resolved to CSS rules to have deterministic
+ // results across different build targets.
+ normalizeStyleRules(this.path, this.context as FileContext, styles),
+ );
+ }
+
+ public override doRuntimeReplacement(): void {
+ if (!this.#cssRules || !this.#ltrClassName) {
+ throw new Error('Styles are not extracted yet. Please call `build` first.');
+ }
+
+ const t = this.astService;
+ const addAssetImport = (path: string) => t.addDefaultImport(path, 'asset');
+
+ let rulesExpression;
+
+ if (Array.isArray(this.#cssRules)) {
+ rulesExpression = t.arrayExpression(
+ this.#cssRules.map(rule => {
+ return createRuleLiteral(this.path, t, this.context as FileContext, rule, addAssetImport);
+ }),
+ );
+ } else {
+ rulesExpression = t.objectExpression(
+ Object.entries(this.#cssRules).map(([bucketName, cssRules]) =>
+ t.objectProperty(
+ t.identifier(bucketName),
+ t.arrayExpression(
+ cssRules.map(rule => {
+ return createRuleLiteral(this.path, t, this.context as FileContext, rule as string, addAssetImport);
+ }),
+ ),
+ ),
+ ),
+ );
+ }
+
+ const stylesImportIdentifier = t.addNamedImport('__resetStyles', this.tagSource.source);
+ const stylesCallExpression = t.callExpression(stylesImportIdentifier, [
+ t.stringLiteral(this.#ltrClassName),
+ this.#rtlClassName ? t.stringLiteral(this.#rtlClassName) : t.nullLiteral(),
+ rulesExpression,
+ ]);
+
+ this.replacer(stylesCallExpression, true);
+ }
+}
diff --git a/packages/linaria-processor/src/MakeStylesProcessor.ts b/packages/linaria-processor/src/MakeStylesProcessor.ts
new file mode 100644
index 000000000..df850f6a6
--- /dev/null
+++ b/packages/linaria-processor/src/MakeStylesProcessor.ts
@@ -0,0 +1,69 @@
+import { GriffelStyle, resolveStyleRulesForSlots } from '@griffel/core';
+import type { CSSClassesMapBySlot, CSSRulesByBucket } from '@griffel/core';
+import type { ValueCache } from '@linaria/tags';
+
+import { createRuleLiteral } from './assets/createRuleLiteral';
+import { normalizeStyleRules } from './assets/normalizeStyleRules';
+import BaseGriffelProcessor from './BaseGriffelProcessor';
+import type { FileContext } from './types';
+import { dedupeCSSRules } from './utils/dedupeCSSRules';
+
+export default class MakeStylesProcessor extends BaseGriffelProcessor {
+ #cssClassMap: CSSClassesMapBySlot | undefined;
+ #cssRulesByBucket: CSSRulesByBucket | undefined;
+
+ public override build(valueCache: ValueCache) {
+ const stylesBySlots = valueCache.get(this.expressionName) as Record;
+
+ [this.#cssClassMap, this.#cssRulesByBucket] = resolveStyleRulesForSlots(
+ // Heads up!
+ // Style rules should be normalized *before* they will be resolved to CSS rules to have deterministic
+ // results across different build targets.
+ normalizeStyleRules(this.path, this.context as FileContext, stylesBySlots),
+ );
+ }
+
+ public override doRuntimeReplacement(): void {
+ if (!this.#cssClassMap || !this.#cssRulesByBucket) {
+ throw new Error('Styles are not extracted yet. Please call `build` first.');
+ }
+
+ const t = this.astService;
+ const addAssetImport = (path: string) => t.addDefaultImport(path, 'asset');
+
+ const uniqueRules = dedupeCSSRules(this.#cssRulesByBucket);
+ const rulesObjectExpression = t.objectExpression(
+ Object.entries(uniqueRules).map(([bucketName, cssRules]) =>
+ t.objectProperty(
+ t.identifier(bucketName),
+ t.arrayExpression(
+ cssRules.map(rule => {
+ if (typeof rule === 'string') {
+ return createRuleLiteral(this.path, t, this.context as FileContext, rule, addAssetImport);
+ }
+
+ const [cssRule, metadata] = rule;
+
+ return t.arrayExpression([
+ createRuleLiteral(this.path, t, this.context as FileContext, cssRule, addAssetImport),
+ t.objectExpression(
+ Object.entries(metadata).map(([key, value]) =>
+ t.objectProperty(t.identifier(key), t.stringLiteral(value as string)),
+ ),
+ ),
+ ]);
+ }),
+ ),
+ ),
+ ),
+ );
+
+ const stylesImportIdentifier = t.addNamedImport('__styles', this.tagSource.source);
+ const stylesCallExpression = t.callExpression(stylesImportIdentifier, [
+ t.valueToNode(this.#cssClassMap),
+ rulesObjectExpression,
+ ]);
+
+ this.replacer(stylesCallExpression, true);
+ }
+}
diff --git a/packages/linaria-processor/src/assets/createRuleLiteral.test.ts b/packages/linaria-processor/src/assets/createRuleLiteral.test.ts
new file mode 100644
index 000000000..27c6cb1b0
--- /dev/null
+++ b/packages/linaria-processor/src/assets/createRuleLiteral.test.ts
@@ -0,0 +1,61 @@
+import { types as t } from '@babel/core';
+import generate from '@babel/generator';
+import * as path from 'path';
+
+import type { FileContext } from '../types';
+import { createRuleLiteral } from './createRuleLiteral';
+
+const fileContextPosix: FileContext = {
+ root: '/home/projects/foo',
+ filename: '/home/projects/foo/src/styles/Component.styles.ts',
+};
+const fileContextWin32: FileContext = {
+ root: 'C:\\Users\\Foo\\projects',
+ filename: 'C:\\Users\\Foo\\projects\\src\\styles\\Component.styles.ts',
+};
+
+describe('createRuleLiteral', () => {
+ it('creates strings for rules', () => {
+ const addAssetImport = jest.fn();
+
+ const node = createRuleLiteral(path.posix, t, fileContextPosix, '.foo { color: red }', addAssetImport);
+ const { code } = generate(node);
+
+ expect(code).toMatchInlineSnapshot(`"\\".foo { color: red }\\""`);
+ expect(addAssetImport).not.toHaveBeenCalled();
+ });
+
+ describe('updates URLs that start with "griffel"', () => {
+ it('posix', () => {
+ const addAssetImport = jest.fn().mockImplementation(() => t.identifier('foo'));
+
+ const node = createRuleLiteral(
+ path.posix,
+ t,
+ fileContextPosix,
+ '.foo { url(griffel:assets/foo.png) }',
+ addAssetImport,
+ );
+ const { code } = generate(node);
+
+ expect(code).toMatchInlineSnapshot(`"\`.foo { url(\${foo}) }\`"`);
+ expect(addAssetImport).toHaveBeenCalledWith('../../assets/foo.png');
+ });
+
+ it('win32', () => {
+ const addAssetImport = jest.fn().mockImplementation(() => t.identifier('foo'));
+
+ const node = createRuleLiteral(
+ path.win32,
+ t,
+ fileContextWin32,
+ '.foo { url(griffel:assets/foo.png) }',
+ addAssetImport,
+ );
+ const { code } = generate(node);
+
+ expect(code).toMatchInlineSnapshot(`"\`.foo { url(\${foo}) }\`"`);
+ expect(addAssetImport).toHaveBeenCalledWith('../../assets/foo.png');
+ });
+ });
+});
diff --git a/packages/linaria-processor/src/assets/createRuleLiteral.ts b/packages/linaria-processor/src/assets/createRuleLiteral.ts
new file mode 100644
index 000000000..fbe7252c9
--- /dev/null
+++ b/packages/linaria-processor/src/assets/createRuleLiteral.ts
@@ -0,0 +1,51 @@
+import type { types as t } from '@babel/core';
+import { tokenize } from 'stylis';
+
+import { relativePathToImportLike } from './relativePathToImportLike';
+import type { FileContext } from '../types';
+
+export function createRuleLiteral(
+ path: typeof import('path'),
+ astService: typeof t,
+ fileContext: FileContext,
+ rule: string,
+ addAssetImport: (path: string) => t.Identifier,
+): t.StringLiteral | t.TemplateLiteral {
+ if (rule.indexOf('url(') === -1) {
+ return astService.stringLiteral(rule);
+ }
+
+ const tokens = tokenize(rule);
+
+ const quasis: t.TemplateElement[] = [];
+ const expressions: t.Identifier[] = [];
+
+ let acc = '';
+
+ for (let i = 0, l = tokens.length; i < l; i++) {
+ acc += tokens[i];
+
+ if (tokens[i] === 'url') {
+ const url = tokens[i + 1].slice(1, -1);
+
+ if (url.startsWith('griffel:')) {
+ // Handle `filter: url(./a.svg#id)`
+ const [pathname, hash] = url.slice(8).split('#');
+
+ quasis.push(astService.templateElement({ raw: acc + '(' }, false));
+
+ const importPath = relativePathToImportLike(path, fileContext, pathname);
+ const importName = addAssetImport(importPath);
+
+ expressions.push(importName);
+
+ acc = `${hash ? `#${hash}` : ''})`;
+ i++;
+ }
+ }
+ }
+
+ quasis.push(astService.templateElement({ raw: acc }, true));
+
+ return astService.templateLiteral(quasis, expressions);
+}
diff --git a/packages/linaria-processor/src/assets/normalizeStyleRules.test.ts b/packages/linaria-processor/src/assets/normalizeStyleRules.test.ts
new file mode 100644
index 000000000..4b881269c
--- /dev/null
+++ b/packages/linaria-processor/src/assets/normalizeStyleRules.test.ts
@@ -0,0 +1,187 @@
+import * as path from 'path';
+import { normalizeStyleRule, normalizeStyleRules } from './normalizeStyleRules';
+
+describe('normalizeStyleRule', () => {
+ it('handles rules without quotes', () => {
+ expect(
+ normalizeStyleRule(
+ path.posix,
+ {
+ root: '/home/projects/foo',
+ filename: '/home/projects/foo/src/styles/Component.styles.ts',
+ },
+ 'url(/home/projects/foo/assets/image.png)',
+ ),
+ ).toBe('url(griffel:assets/image.png)');
+ });
+
+ it('handles rules with quotes', () => {
+ expect(
+ normalizeStyleRule(
+ path.posix,
+ {
+ root: '/home/projects/foo',
+ filename: '/home/projects/foo/src/styles/Component.styles.ts',
+ },
+ "url('/home/projects/foo/assets/image.png')",
+ ),
+ ).toBe('url(griffel:assets/image.png)');
+ expect(
+ normalizeStyleRule(
+ path.posix,
+ {
+ root: '/home/projects/foo',
+ filename: '/home/projects/foo/src/styles/Component.styles.ts',
+ },
+ 'url("/home/projects/foo/assets/image.png")',
+ ),
+ ).toBe('url(griffel:assets/image.png)');
+ });
+
+ it('keeps relative URLs', () => {
+ expect(
+ normalizeStyleRule(
+ path.posix,
+ {
+ root: '/home/projects/foo',
+ filename: '/home/projects/foo/src/styles/Component.styles.ts',
+ },
+ 'url(./foo.img)',
+ ),
+ ).toBe('url(./foo.img)');
+ expect(
+ normalizeStyleRule(
+ path.posix,
+ {
+ root: '/home/projects/foo',
+ filename: '/home/projects/foo/src/styles/Component.styles.ts',
+ },
+ 'url(../foo.img)',
+ ),
+ ).toBe('url(../foo.img)');
+ });
+
+ it('keeps data-url', () => {
+ expect(
+ normalizeStyleRule(
+ path.posix,
+ {
+ root: '/home/projects/foo',
+ filename: '/home/projects/foo/src/styles/Component.styles.ts',
+ },
+ 'url(data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEAYABgAAD/2Q==)',
+ ),
+ ).toBe('url(data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEAYABgAAD/2Q==)');
+ });
+
+ it('handles Windows paths', () => {
+ expect(
+ normalizeStyleRule(
+ path.win32,
+ {
+ root: 'C:\\Users\\Foo\\projects\\bar',
+ filename: 'C:\\Users\\Foo\\projects\\bar\\src\\styles\\Component.styles.ts',
+ },
+ 'url(C:\\Users\\Foo\\projects\\bar\\assets\\image.png)',
+ ),
+ ).toBe('url(griffel:assets/image.png)');
+ });
+});
+
+describe('normalizeStyleRules', () => {
+ it('handles rules without metadata', () => {
+ expect(
+ normalizeStyleRules(
+ path.posix,
+ {
+ root: '/home/projects/foo',
+ filename: '/home/projects/foo/src/styles/Component.styles.ts',
+ },
+ {
+ root: {
+ color: 'red',
+ backgroundImage: 'url(/home/projects/foo/assets/image.jpg)',
+ overflowY: ['hidden', 'scroll'],
+
+ ':hover': {
+ backgroundImage: 'url(/home/projects/foo/assets/hoverImage.jpg)',
+ },
+
+ '@media screen and (max-width: 100px)': {
+ '& .foo': {
+ backgroundImage: 'url(/home/projects/foo/assets/mediaImage.jpg)',
+ },
+ },
+ },
+ },
+ ),
+ ).toEqual({
+ root: {
+ color: 'red',
+ backgroundImage: 'url(griffel:assets/image.jpg)',
+ overflowY: ['hidden', 'scroll'],
+
+ ':hover': {
+ backgroundImage: 'url(griffel:assets/hoverImage.jpg)',
+ },
+
+ '@media screen and (max-width: 100px)': {
+ '& .foo': {
+ backgroundImage: 'url(griffel:assets/mediaImage.jpg)',
+ },
+ },
+ },
+ });
+ });
+
+ it('handles multiple URLs', () => {
+ expect(
+ normalizeStyleRules(
+ path.posix,
+ {
+ root: '/home/projects/foo',
+ filename: '/home/projects/foo/src/styles/Component.styles.ts',
+ },
+ {
+ root: {
+ // https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Backgrounds_and_Borders/Using_multiple_backgrounds
+ backgroundImage: [
+ 'url(/home/projects/foo/assets/firefox.png),',
+ 'url(/home/projects/foo/assets/bubbles.png),',
+ 'linear-gradient(to right, rgba(30, 75, 115, 1), rgba(255, 255, 255, 0))',
+ ].join(' '),
+ },
+ },
+ ),
+ ).toEqual({
+ root: {
+ backgroundImage: [
+ 'url(griffel:assets/firefox.png),',
+ 'url(griffel:assets/bubbles.png),',
+ 'linear-gradient(to right, rgba(30, 75, 115, 1), rgba(255, 255, 255, 0))',
+ ].join(' '),
+ },
+ });
+ });
+
+ it('handles keyframe arrays', () => {
+ expect(
+ normalizeStyleRules(
+ path.posix,
+ {
+ root: '/home/projects/foo',
+ filename: '/home/projects/foo/src/styles/Component.styles.ts',
+ },
+ {
+ root: {
+ animationName: [{ from: { height: '20px' }, to: { height: '10px' } }],
+ },
+ },
+ ),
+ ).toEqual({
+ root: {
+ animationName: [{ from: { height: '20px' }, to: { height: '10px' } }],
+ },
+ });
+ });
+});
diff --git a/packages/babel-preset/src/assets/normalizeStyleRules.ts b/packages/linaria-processor/src/assets/normalizeStyleRules.ts
similarity index 60%
rename from packages/babel-preset/src/assets/normalizeStyleRules.ts
rename to packages/linaria-processor/src/assets/normalizeStyleRules.ts
index c56fd8dd2..f6bab71ea 100644
--- a/packages/babel-preset/src/assets/normalizeStyleRules.ts
+++ b/packages/linaria-processor/src/assets/normalizeStyleRules.ts
@@ -1,25 +1,18 @@
-import { GriffelAnimation, GriffelStyle } from '@griffel/core';
+import type { GriffelAnimation, GriffelResetStyle, GriffelStyle } from '@griffel/core';
import { tokenize } from 'stylis';
-import { isAssetUrl } from './isAssetUrl';
+import { FileContext } from '../types';
/**
- * Linaria v3 emits relative paths for assets, we normalize these paths to be relative from the project root to be the
+ * Linaria v4 emits absolute paths for assets, we normalize these paths to be relative from the project root to be the
* same if an assets was used in different files.
*/
-export function normalizeAssetPath(path: typeof import('path'), projectRoot: string, filename: string, asset: string) {
- const absoluteAssetPath = path.resolve(path.dirname(filename), asset);
-
+export function normalizeAssetPath(path: typeof import('path'), fileContext: FileContext, absoluteAssetPath: string) {
// Normalize paths to be POSIX-like to be independent of an execution environment
- return path.relative(projectRoot, absoluteAssetPath).split(path.sep).join(path.posix.sep);
+ return path.relative(fileContext.root, absoluteAssetPath).split(path.sep).join(path.posix.sep);
}
-export function normalizeStyleRule(
- path: typeof import('path'),
- projectRoot: string,
- filename: string,
- ruleValue: string | number,
-) {
+export function normalizeStyleRule(path: typeof import('path'), fileContext: FileContext, ruleValue: string | number) {
if (typeof ruleValue === 'number' || ruleValue.indexOf('url(') === -1) {
return ruleValue;
}
@@ -27,12 +20,12 @@ export function normalizeStyleRule(
return tokenize(ruleValue).reduce((result, token, index, array) => {
if (token === 'url') {
const url = array[index + 1].slice(1, -1);
+ const isFilePath = url.replace(/^['|"]/, '').startsWith(fileContext.root);
- if (isAssetUrl(url)) {
- array[index + 1] = `(${normalizeAssetPath(
+ if (isFilePath) {
+ array[index + 1] = `(griffel:${normalizeAssetPath(
path,
- projectRoot,
- filename,
+ fileContext,
// Quotes in URL are optional, so we can also normalize them as we know that it's a file path
// https://www.w3.org/TR/CSS2/syndata.html#value-def-uri
url.replace(/^['|"](.+)['|"]$/, '$1'),
@@ -49,9 +42,8 @@ export function normalizeStyleRule(
export function normalizeStyleRules(
path: typeof import('path'),
- projectRoot: string,
- filename: string,
- stylesBySlots: Record | GriffelStyle,
+ fileContext: FileContext,
+ stylesBySlots: Record | GriffelStyle | GriffelResetStyle,
): Record {
return Object.fromEntries(
Object.entries(stylesBySlots).map(([key, value]) => {
@@ -65,20 +57,20 @@ export function normalizeStyleRules(
key,
value.map(rule => {
if (typeof rule === 'object') {
- return normalizeStyleRules(path, projectRoot, filename, rule as GriffelAnimation);
+ return normalizeStyleRules(path, fileContext, rule as GriffelAnimation);
}
- return normalizeStyleRule(path, projectRoot, filename, rule);
+ return normalizeStyleRule(path, fileContext, rule);
}),
];
}
// Nested objects
if (typeof value === 'object') {
- return [key, normalizeStyleRules(path, projectRoot, filename, value as unknown as GriffelStyle)];
+ return [key, normalizeStyleRules(path, fileContext, value as unknown as GriffelStyle)];
}
- return [key, normalizeStyleRule(path, projectRoot, filename, value)];
+ return [key, normalizeStyleRule(path, fileContext, value)];
}),
);
}
diff --git a/packages/linaria-processor/src/assets/relativePathToImportLike.test.ts b/packages/linaria-processor/src/assets/relativePathToImportLike.test.ts
new file mode 100644
index 000000000..95f28d9c6
--- /dev/null
+++ b/packages/linaria-processor/src/assets/relativePathToImportLike.test.ts
@@ -0,0 +1,74 @@
+import * as path from 'path';
+import { relativePathToImportLike } from './relativePathToImportLike';
+
+describe('relativePathToImportLike', () => {
+ it('handles POSIX paths', () => {
+ expect(
+ relativePathToImportLike(
+ path.posix,
+ {
+ root: '/home/projects/foo',
+ filename: '/home/projects/foo/src/styles/Component.styles.ts',
+ },
+ 'assets/image.png',
+ ),
+ ).toBe('../../assets/image.png');
+
+ expect(
+ relativePathToImportLike(
+ path.posix,
+ {
+ root: '/home/projects/foo',
+ filename: '/home/projects/foo/src/styles/Component.styles.ts',
+ },
+ 'src/styles/Component.png',
+ ),
+ ).toBe('./Component.png');
+
+ expect(
+ relativePathToImportLike(
+ path.posix,
+ {
+ root: '/home/projects/foo',
+ filename: '/home/projects/foo/packages/components/src/index.styles.ts',
+ },
+ 'packages/components/src/images/Component.png',
+ ),
+ ).toBe('./images/Component.png');
+ });
+
+ it('handles Windows paths', () => {
+ expect(
+ relativePathToImportLike(
+ path.win32,
+ {
+ root: 'C:\\Users\\Foo\\projects',
+ filename: 'C:\\Users\\Foo\\projects\\src\\styles\\Component.styles.ts',
+ },
+ 'assets/image.png',
+ ),
+ ).toBe('../../assets/image.png');
+
+ expect(
+ relativePathToImportLike(
+ path.win32,
+ {
+ root: 'C:\\Users\\Foo\\projects',
+ filename: 'C:\\Users\\Foo\\projects\\src\\styles\\Component.styles.ts',
+ },
+ 'src/styles/Component.png',
+ ),
+ ).toBe('./Component.png');
+
+ expect(
+ relativePathToImportLike(
+ path.win32,
+ {
+ root: 'C:\\Users\\Foo\\projects',
+ filename: 'C:\\Users\\Foo\\projects\\packages\\components\\src\\index.styles.ts',
+ },
+ 'packages/components/src/images/Component.png',
+ ),
+ ).toBe('./images/Component.png');
+ });
+});
diff --git a/packages/babel-preset/src/assets/absolutePathToRelative.ts b/packages/linaria-processor/src/assets/relativePathToImportLike.ts
similarity index 59%
rename from packages/babel-preset/src/assets/absolutePathToRelative.ts
rename to packages/linaria-processor/src/assets/relativePathToImportLike.ts
index db7c23073..f8a946c76 100644
--- a/packages/babel-preset/src/assets/absolutePathToRelative.ts
+++ b/packages/linaria-processor/src/assets/relativePathToImportLike.ts
@@ -1,11 +1,8 @@
-export function absolutePathToRelative(
- path: typeof import('path'),
- projectRoot: string,
- filename: string,
- assetPath: string,
-) {
- const fileDirectory = path.dirname(filename);
- const absoluteAssetPath = path.resolve(projectRoot, assetPath);
+import type { FileContext } from '../types';
+
+export function relativePathToImportLike(path: typeof import('path'), fileContext: FileContext, assetPath: string) {
+ const fileDirectory = path.dirname(fileContext.filename);
+ const absoluteAssetPath = path.resolve(fileContext.root, assetPath);
let relativeAssetPath = path.relative(fileDirectory, absoluteAssetPath);
diff --git a/packages/linaria-processor/src/index.ts b/packages/linaria-processor/src/index.ts
new file mode 100644
index 000000000..cb0ff5c3b
--- /dev/null
+++ b/packages/linaria-processor/src/index.ts
@@ -0,0 +1 @@
+export {};
diff --git a/packages/linaria-processor/src/types.ts b/packages/linaria-processor/src/types.ts
new file mode 100644
index 000000000..8d40090ad
--- /dev/null
+++ b/packages/linaria-processor/src/types.ts
@@ -0,0 +1,4 @@
+export type FileContext = {
+ root: string;
+ filename: string;
+};
diff --git a/packages/babel-preset/src/utils/dedupeCSSRules.test.ts b/packages/linaria-processor/src/utils/dedupeCSSRules.test.ts
similarity index 100%
rename from packages/babel-preset/src/utils/dedupeCSSRules.test.ts
rename to packages/linaria-processor/src/utils/dedupeCSSRules.test.ts
diff --git a/packages/babel-preset/src/utils/dedupeCSSRules.ts b/packages/linaria-processor/src/utils/dedupeCSSRules.ts
similarity index 100%
rename from packages/babel-preset/src/utils/dedupeCSSRules.ts
rename to packages/linaria-processor/src/utils/dedupeCSSRules.ts
diff --git a/packages/linaria-processor/tsconfig.json b/packages/linaria-processor/tsconfig.json
new file mode 100644
index 000000000..42707b2da
--- /dev/null
+++ b/packages/linaria-processor/tsconfig.json
@@ -0,0 +1,23 @@
+{
+ "extends": "../../tsconfig.base.json",
+ "compilerOptions": {
+ "allowJs": true,
+ "forceConsistentCasingInFileNames": true,
+ "lib": ["ES2019", "dom", "DOM.Iterable"],
+ "strict": true,
+ "noImplicitOverride": true,
+ "noPropertyAccessFromIndexSignature": true,
+ "noImplicitReturns": true,
+ "noFallthroughCasesInSwitch": true
+ },
+ "files": [],
+ "include": [],
+ "references": [
+ {
+ "path": "./tsconfig.lib.json"
+ },
+ {
+ "path": "./tsconfig.spec.json"
+ }
+ ]
+}
diff --git a/packages/linaria-processor/tsconfig.lib.json b/packages/linaria-processor/tsconfig.lib.json
new file mode 100644
index 000000000..8d27d94f9
--- /dev/null
+++ b/packages/linaria-processor/tsconfig.lib.json
@@ -0,0 +1,11 @@
+{
+ "extends": "./tsconfig.json",
+ "compilerOptions": {
+ "module": "commonjs",
+ "outDir": "../../dist/out-tsc",
+ "declaration": true,
+ "types": ["node", "environment"]
+ },
+ "exclude": ["**/*.spec.ts", "**/*.test.ts"],
+ "include": ["**/*.ts"]
+}
diff --git a/packages/linaria-processor/tsconfig.spec.json b/packages/linaria-processor/tsconfig.spec.json
new file mode 100644
index 000000000..e75e7becd
--- /dev/null
+++ b/packages/linaria-processor/tsconfig.spec.json
@@ -0,0 +1,20 @@
+{
+ "extends": "./tsconfig.json",
+ "compilerOptions": {
+ "jsx": "react",
+ "outDir": "../../dist/out-tsc",
+ "module": "commonjs",
+ "types": ["jest", "node", "environment", "@testing-library/jest-dom"]
+ },
+ "include": [
+ "**/*.test.ts",
+ "**/*.spec.ts",
+ "**/*.test.tsx",
+ "**/*.spec.tsx",
+ "**/*.test.js",
+ "**/*.spec.js",
+ "**/*.test.jsx",
+ "**/*.spec.jsx",
+ "**/*.d.ts"
+ ]
+}
diff --git a/packages/react/package.json b/packages/react/package.json
index 659514a1a..7ecec4754 100644
--- a/packages/react/package.json
+++ b/packages/react/package.json
@@ -8,6 +8,12 @@
"url": "https://github.com/microsoft/griffel"
},
"sideEffects": false,
+ "linaria": {
+ "tags": {
+ "makeStyles": "@griffel/linaria-processor/make-styles",
+ "makeResetStyles": "@griffel/linaria-processor/make-reset-styles"
+ }
+ },
"dependencies": {
"@griffel/core": "^1.14.2",
"tslib": "^2.1.0"
diff --git a/packages/webpack-loader/README.md b/packages/webpack-loader/README.md
index b8e0a2af3..31d4580d2 100644
--- a/packages/webpack-loader/README.md
+++ b/packages/webpack-loader/README.md
@@ -19,9 +19,9 @@ A loader for Webpack 5 that performs build time transforms for [`@griffel/react`
## Install
```bash
-yarn add --dev @griffel/webpack-loader
+yarn add --dev @griffel/linaria-processor @griffel/webpack-loader
# or
-npm install --save-dev @griffel/webpack-loader
+npm install --save-dev @griffel/linaria-processor @griffel/webpack-loader
```
## When to use it?
@@ -92,35 +92,21 @@ module.exports = {
```js
import { makeStyles, makeResetStyles } from 'custom-package';
-// 👇 custom import names are also supported
-import { createStyles } from 'custom-package';
```
-By default, the Webpack loader handles imports from `@griffel/react`. The webpack loader can be re-configured to handle re-exports of Griffel from custom packages. The `makeStyles` function itself can also be renamed in this case.
-
-```js
-module.exports = {
- module: {
- rules: [
- {
- test: /\.(js|jsx)$/,
- exclude: /node_modules/,
- use: {
- loader: '@griffel/webpack-loader',
- options: {
- modules: [
- {
- moduleSource: 'custom-package',
- importName: 'makeStyles',
- resetImportName: 'makeResetStyles',
- },
- ],
- },
- },
- },
- ],
- },
-};
+By default, the Webpack loader handles imports from `@griffel/react` & `@fluentui/react-components`, to handle imports from custom packages settings you need to include meta information to a matching `package.json`:
+
+```json
+{
+ "name": "custom-package",
+ "version": "1.0.0",
+ "linaria": {
+ "tags": {
+ "makeStyles": "@griffel/linaria-processor/make-styles",
+ "makeResetStyles": "@griffel/linaria-processor/make-reset-styles"
+ }
+ }
+}
```
> **Note**: "custom-package" should re-export following functions from `@griffel/react`:
diff --git a/packages/webpack-loader/__fixtures__/config-modules/code.ts b/packages/webpack-loader/__fixtures__/config-modules/code.ts
deleted file mode 100644
index 8357320ae..000000000
--- a/packages/webpack-loader/__fixtures__/config-modules/code.ts
+++ /dev/null
@@ -1,6 +0,0 @@
-// @ts-expect-error This is a fake module, will be resolved by Webpack aliases
-import { makeStyles } from 'react-make-styles';
-
-export const styles = makeStyles({
- root: { backgroundColor: 'red' },
-});
diff --git a/packages/webpack-loader/__fixtures__/config-modules/output.ts b/packages/webpack-loader/__fixtures__/config-modules/output.ts
deleted file mode 100644
index fdd5b2392..000000000
--- a/packages/webpack-loader/__fixtures__/config-modules/output.ts
+++ /dev/null
@@ -1,12 +0,0 @@
-// @ts-expect-error This is a fake module, will be resolved by Webpack aliases
-import { __styles } from 'react-make-styles';
-export const styles = __styles(
- {
- root: {
- De3pzq: 'f3xbvq9',
- },
- },
- {
- d: ['.f3xbvq9{background-color:red;}'],
- },
-);
diff --git a/packages/webpack-loader/__fixtures__/empty/output.ts b/packages/webpack-loader/__fixtures__/empty/output.ts
index f7330031a..f5930e731 100644
--- a/packages/webpack-loader/__fixtures__/empty/output.ts
+++ b/packages/webpack-loader/__fixtures__/empty/output.ts
@@ -1,5 +1,5 @@
-import { __styles } from '@griffel/react';
-export const useStyles = __styles(
+import { __styles as _styles } from '@griffel/react';
+export const useStyles = /*#__PURE__*/ _styles(
{
root: {},
},
diff --git a/packages/webpack-loader/__fixtures__/error-argument-count/code.ts b/packages/webpack-loader/__fixtures__/error-argument-count/code.ts
deleted file mode 100644
index b04fbcd97..000000000
--- a/packages/webpack-loader/__fixtures__/error-argument-count/code.ts
+++ /dev/null
@@ -1,4 +0,0 @@
-import { makeStyles } from '@griffel/react';
-
-// @ts-expect-error Invalid arguments for "makeStyles" function
-export const useStyles = makeStyles({ root: { color: 'red' } }, 'foo');
diff --git a/packages/webpack-loader/__fixtures__/error-argument-count/error.ts b/packages/webpack-loader/__fixtures__/error-argument-count/error.ts
deleted file mode 100644
index f687a24a7..000000000
--- a/packages/webpack-loader/__fixtures__/error-argument-count/error.ts
+++ /dev/null
@@ -1 +0,0 @@
-export default /makeStyles\(\) function accepts only a single param/;
diff --git a/packages/webpack-loader/__fixtures__/error-config/code.ts b/packages/webpack-loader/__fixtures__/error-config/code.ts
deleted file mode 100644
index 5d70d13b8..000000000
--- a/packages/webpack-loader/__fixtures__/error-config/code.ts
+++ /dev/null
@@ -1,3 +0,0 @@
-import { makeStyles } from '@griffel/react';
-
-export const useStyles = makeStyles({ root: { color: 'red' } });
diff --git a/packages/webpack-loader/__fixtures__/error-config/error.ts b/packages/webpack-loader/__fixtures__/error-config/error.ts
deleted file mode 100644
index 77b57681f..000000000
--- a/packages/webpack-loader/__fixtures__/error-config/error.ts
+++ /dev/null
@@ -1 +0,0 @@
-export default /Loader has been initialized using an options object that does not match the API schema/;
diff --git a/packages/webpack-loader/__fixtures__/error-syntax/code.txt b/packages/webpack-loader/__fixtures__/error-syntax/code.txt
deleted file mode 100644
index c71bbc16e..000000000
--- a/packages/webpack-loader/__fixtures__/error-syntax/code.txt
+++ /dev/null
@@ -1,6 +0,0 @@
-// This file is .txt intentionally to avoid Prettier formatting
-import { makeStyles } from '@griffel/react';
-
-const styles = makeStyles({
- root: { color: 'red' },
-}
diff --git a/packages/webpack-loader/__fixtures__/error-syntax/error.ts b/packages/webpack-loader/__fixtures__/error-syntax/error.ts
deleted file mode 100644
index 14647cf21..000000000
--- a/packages/webpack-loader/__fixtures__/error-syntax/error.ts
+++ /dev/null
@@ -1 +0,0 @@
-export default /Module build failed/;
diff --git a/packages/webpack-loader/__fixtures__/function/output.ts b/packages/webpack-loader/__fixtures__/function/output.ts
index f227f4c15..e38a3bc7c 100644
--- a/packages/webpack-loader/__fixtures__/function/output.ts
+++ b/packages/webpack-loader/__fixtures__/function/output.ts
@@ -1,5 +1,5 @@
-import { __styles } from '@griffel/react';
-export const styles = __styles(
+import { __styles as _styles } from '@griffel/react';
+export const styles = /*#__PURE__*/ _styles(
{
root: {
sj55zd: 'fe3e8s9',
diff --git a/packages/webpack-loader/__fixtures__/object/output.ts b/packages/webpack-loader/__fixtures__/object/output.ts
index 3f3ef2479..acf11e401 100644
--- a/packages/webpack-loader/__fixtures__/object/output.ts
+++ b/packages/webpack-loader/__fixtures__/object/output.ts
@@ -1,6 +1,5 @@
-import { __styles } from '@griffel/react';
-import { tokens } from './tokens';
-export const styles = __styles(
+import { __styles as _styles } from '@griffel/react';
+export const styles = /*#__PURE__*/ _styles(
{
root: {
sj55zd: 'fl9q5hc',
diff --git a/packages/webpack-loader/__fixtures__/react-component/code.ts b/packages/webpack-loader/__fixtures__/react-component/code.ts
new file mode 100644
index 000000000..24d1a07ad
--- /dev/null
+++ b/packages/webpack-loader/__fixtures__/react-component/code.ts
@@ -0,0 +1,12 @@
+import { makeStyles } from '@griffel/react';
+import * as React from 'react';
+
+const useStyles = makeStyles({
+ root: { color: 'red' },
+});
+
+export default function Component() {
+ const classes = useStyles();
+
+ return React.createElement('div', { className: classes.root });
+}
diff --git a/packages/webpack-loader/__fixtures__/react-component/output.ts b/packages/webpack-loader/__fixtures__/react-component/output.ts
new file mode 100644
index 000000000..deecd1848
--- /dev/null
+++ b/packages/webpack-loader/__fixtures__/react-component/output.ts
@@ -0,0 +1,18 @@
+import { __styles as _styles } from '@griffel/react';
+import * as React from 'react';
+const useStyles = /*#__PURE__*/ _styles(
+ {
+ root: {
+ sj55zd: 'fe3e8s9',
+ },
+ },
+ {
+ d: ['.fe3e8s9{color:red;}'],
+ },
+);
+export default function Component() {
+ const classes = useStyles();
+ return React.createElement('div', {
+ className: classes.root,
+ });
+}
diff --git a/packages/webpack-loader/__fixtures__/reset/output.ts b/packages/webpack-loader/__fixtures__/reset/output.ts
index 908b64601..a176e7560 100644
--- a/packages/webpack-loader/__fixtures__/reset/output.ts
+++ b/packages/webpack-loader/__fixtures__/reset/output.ts
@@ -1,6 +1,5 @@
-import { __resetStyles } from '@griffel/react';
-import { tokens } from './tokens';
-export const useStyles = __resetStyles('rgwtdav', 'r133dp1', [
+import { __resetStyles as _resetStyles } from '@griffel/react';
+export const useStyles = /*#__PURE__*/ _resetStyles('rgwtdav', 'r133dp1', [
'.rgwtdav{color:var(--colorBrandStroke1);padding-left:4px;}',
'.r133dp1{color:var(--colorBrandStroke1);padding-right:4px;}',
]);
diff --git a/packages/webpack-loader/__fixtures__/webpack-aliases/output.ts b/packages/webpack-loader/__fixtures__/webpack-aliases/output.ts
index 06a3744a4..1c4e424fa 100644
--- a/packages/webpack-loader/__fixtures__/webpack-aliases/output.ts
+++ b/packages/webpack-loader/__fixtures__/webpack-aliases/output.ts
@@ -1,8 +1,5 @@
-import { __styles } from '@griffel/react';
-// @ts-expect-error This module will be resolved via aliases
-import color from 'non-existing-color-module';
-import { tokens } from './tokens';
-export const styles = __styles(
+import { __styles as _styles } from '@griffel/react'; // @ts-expect-error This module will be resolved via aliases
+export const styles = /*#__PURE__*/ _styles(
{
root: {
De3pzq: 'f1bh81bl',
diff --git a/packages/webpack-loader/__fixtures__/webpack-resolve-plugins/output.ts b/packages/webpack-loader/__fixtures__/webpack-resolve-plugins/output.ts
index 22cb5aea9..d75789a45 100644
--- a/packages/webpack-loader/__fixtures__/webpack-resolve-plugins/output.ts
+++ b/packages/webpack-loader/__fixtures__/webpack-resolve-plugins/output.ts
@@ -1,8 +1,7 @@
-import { __styles } from '@griffel/react';
-import { tokens } from './tokens';
+import { __styles as _styles } from '@griffel/react';
// @ts-expect-error This module will be resolved via aliases
-import color from 'non-existing-color-module';
-export const styles = __styles(
+
+export const styles = /*#__PURE__*/ _styles(
{
root: {
De3pzq: 'f1bh81bl',
diff --git a/packages/webpack-loader/package.json b/packages/webpack-loader/package.json
index 55b985b01..ecad4868b 100644
--- a/packages/webpack-loader/package.json
+++ b/packages/webpack-loader/package.json
@@ -8,12 +8,10 @@
"url": "https://github.com/microsoft/griffel"
},
"dependencies": {
- "@babel/core": "^7.12.13",
- "@griffel/babel-preset": "^1.5.1",
- "enhanced-resolve": "^5.8.2",
+ "@linaria/webpack-loader": "^5.0.2",
"tslib": "^2.1.0"
},
"peerDependencies": {
- "webpack": "^5"
+ "@griffel/linaria-processor": "^0.0.1"
}
}
diff --git a/packages/webpack-loader/src/transformSync.ts b/packages/webpack-loader/src/transformSync.ts
deleted file mode 100644
index 4709d1748..000000000
--- a/packages/webpack-loader/src/transformSync.ts
+++ /dev/null
@@ -1,57 +0,0 @@
-import * as Babel from '@babel/core';
-import griffelPreset, { BabelPluginOptions } from '@griffel/babel-preset';
-
-export type TransformOptions = {
- filename: string;
-
- inputSourceMap: Babel.TransformOptions['inputSourceMap'];
- enableSourceMaps: boolean;
-
- pluginOptions: BabelPluginOptions;
-};
-
-export type TransformResult = {
- code: string;
- sourceMap: NonNullable | undefined;
-};
-
-/**
- * Transforms passed source code with Babel, uses user's config for parsing, but ignores it for transforms.
- */
-export function transformSync(sourceCode: string, options: TransformOptions): TransformResult {
- // Parse the code first so Babel will use user's babel config for parsing
- // During transforms we don't want to use user's config
- const babelAST = Babel.parseSync(sourceCode, {
- caller: { name: 'griffel' },
-
- filename: options.filename,
- inputSourceMap: options.inputSourceMap,
- sourceMaps: options.enableSourceMaps,
- });
-
- if (babelAST === null) {
- throw new Error(`Failed to create AST for "${options.filename}" due unknown Babel error...`);
- }
-
- const babelFileResult = Babel.transformFromAstSync(babelAST, sourceCode, {
- // Ignore all user's configs and apply only our plugin
- babelrc: false,
- configFile: false,
- presets: [[griffelPreset, options.pluginOptions]],
-
- filename: options.filename,
-
- sourceMaps: options.enableSourceMaps,
- sourceFileName: options.filename,
- inputSourceMap: options.inputSourceMap,
- });
-
- if (babelFileResult === null) {
- throw new Error(`Failed to transform "${options.filename}" due unknown Babel error...`);
- }
-
- return {
- code: babelFileResult.code as string,
- sourceMap: babelFileResult.map === null ? undefined : babelFileResult.map,
- };
-}
diff --git a/packages/webpack-loader/src/webpackLoader.test.ts b/packages/webpack-loader/src/webpackLoader.test.ts
index 4dc73fa41..df7745498 100644
--- a/packages/webpack-loader/src/webpackLoader.test.ts
+++ b/packages/webpack-loader/src/webpackLoader.test.ts
@@ -5,11 +5,10 @@ import * as prettier from 'prettier';
import * as webpack from 'webpack';
import { merge } from 'webpack-merge';
-import type { WebpackLoaderOptions } from './webpackLoader';
import { shouldTransformSourceCode } from './webpackLoader';
type CompileOptions = {
- loaderOptions?: WebpackLoaderOptions;
+ loaderOptions?: Record;
webpackConfig?: webpack.Configuration;
};
@@ -35,7 +34,7 @@ async function compileSourceWithWebpack(entryPath: string, options: CompileOptio
module: {
rules: [
{
- test: /\.(ts|tsx|txt)$/,
+ test: /\.ts$/,
include: path.dirname(entryPath),
use: {
loader: path.resolve(__dirname, './index.ts'),
@@ -174,77 +173,29 @@ function testFixture(fixtureName: string, options: CompileOptions = {}) {
}
describe('shouldTransformSourceCode', () => {
- describe('handles defaults', () => {
+ describe('handles functions', () => {
it('makeStyles', () => {
- expect(shouldTransformSourceCode(`import { makeStyles } from "@griffel/react"`, undefined)).toBe(true);
- expect(shouldTransformSourceCode(`import { Button } from "@fluentui/react"`, undefined)).toBe(false);
+ expect(shouldTransformSourceCode(`import { makeStyles } from "@griffel/react"`)).toBe(true);
+ expect(shouldTransformSourceCode(`import { Button } from "@fluentui/react"`)).toBe(false);
});
it('makeResetStyles', () => {
- expect(shouldTransformSourceCode(`import { makeResetStyles } from "@griffel/react"`, undefined)).toBe(true);
- expect(shouldTransformSourceCode(`import { Button } from "@fluentui/react"`, undefined)).toBe(false);
- });
- });
-
- describe('handles options', () => {
- it('makeStyles', () => {
- expect(
- shouldTransformSourceCode(`import { makeStyles } from "@griffel/react"`, [
- { moduleSource: '@griffel/react', importName: 'makeStyles' },
- ]),
- ).toBe(true);
- expect(
- shouldTransformSourceCode(`import { createStyles } from "make-styles"`, [
- { moduleSource: 'make-styles', importName: 'createStyles' },
- ]),
- ).toBe(true);
-
- expect(
- shouldTransformSourceCode(`import { Button } from "@fluentui/react"`, [
- { moduleSource: '@griffel/react', importName: 'makeStyles' },
- ]),
- ).toBe(false);
- });
-
- it('makeResetStyles', () => {
- expect(
- shouldTransformSourceCode(`import { makeResetStyles } from "@griffel/react"`, [
- { moduleSource: '@griffel/react', importName: 'makeStyles', resetImportName: 'makeResetStyles' },
- ]),
- ).toBe(true);
- expect(
- shouldTransformSourceCode(`import { createResetStyles } from "make-styles"`, [
- { moduleSource: 'make-styles', importName: 'makeStyles', resetImportName: 'createResetStyles' },
- ]),
- ).toBe(true);
-
- expect(
- shouldTransformSourceCode(`import { Button } from "@fluentui/react"`, [
- { moduleSource: '@griffel/react', importName: 'makeStyles', resetImportName: 'makeResetStyles' },
- ]),
- ).toBe(false);
+ expect(shouldTransformSourceCode(`import { makeResetStyles } from "@griffel/react"`)).toBe(true);
+ expect(shouldTransformSourceCode(`import { Button } from "@fluentui/react"`)).toBe(false);
});
});
});
describe('webpackLoader', () => {
+ jest.setTimeout(15000);
+
// Integration fixtures for base functionality, all scenarios are tested in "@griffel/babel-preset"
testFixture('object');
testFixture('function');
testFixture('reset');
testFixture('empty');
- // Integration fixtures for config functionality
- testFixture('config-modules', {
- loaderOptions: {
- modules: [{ moduleSource: 'react-make-styles', importName: 'makeStyles' }],
- },
- webpackConfig: {
- externals: {
- 'react-make-styles': 'Griffel',
- },
- },
- });
+ testFixture('react-component');
// Asserts that aliases are resolved properly in Babel plugin
testFixture('webpack-aliases', {
@@ -308,18 +259,4 @@ describe('webpackLoader', () => {
},
},
});
-
- // Asserts handling errors from Babel plugin
- testFixture('error-argument-count');
- // Asserts errors in loader's config
- testFixture('error-config', {
- loaderOptions: {
- babelOptions: {
- // @ts-expect-error "plugins" should be an array, an object is passed to test schema
- plugins: {},
- },
- },
- });
- // Asserts errors in loader functionality
- testFixture('error-syntax');
});
diff --git a/packages/webpack-loader/src/webpackLoader.ts b/packages/webpack-loader/src/webpackLoader.ts
index b519f58d5..9f45789be 100644
--- a/packages/webpack-loader/src/webpackLoader.ts
+++ b/packages/webpack-loader/src/webpackLoader.ts
@@ -1,134 +1,24 @@
-import { BabelPluginOptions, EvalCache, Module } from '@griffel/babel-preset';
-import * as enhancedResolve from 'enhanced-resolve';
-import * as path from 'path';
-import * as webpack from 'webpack';
+import linariaLoader from '@linaria/webpack-loader';
-import { transformSync, TransformResult, TransformOptions } from './transformSync';
-import { optionsSchema } from './schema';
+export function shouldTransformSourceCode(source: string | Buffer): boolean {
+ const code = Buffer.isBuffer(source) ? source.toString('utf8') : source;
-export type WebpackLoaderOptions = BabelPluginOptions & {
- inheritResolveOptions?: ('alias' | 'modules' | 'plugins' | 'conditionNames' | 'extensions')[];
- webpackResolveOptions?: Pick<
- Required['resolve'],
- 'alias' | 'modules' | 'plugins' | 'conditionNames' | 'extensions'
- >;
-};
-
-type WebpackLoaderParams = Parameters>;
-
-export function shouldTransformSourceCode(
- sourceCode: string,
- modules: WebpackLoaderOptions['modules'] | undefined,
-): boolean {
- // Fallback to "makeStyles" if options were not provided
- const imports = modules
- ? modules.flatMap(module => [module.importName, module.resetImportName || 'makeResetStyles']).join('|')
- : 'makeStyles|makeResetStyles';
-
- return new RegExp(`\\b(${imports}|makeResetStyles)`).test(sourceCode);
-}
-
-/**
- * Webpack can also pass sourcemaps as a string, Babel accepts only objects.
- * See https://github.com/babel/babel-loader/pull/889.
- */
-function parseSourceMap(inputSourceMap: WebpackLoaderParams[1]): TransformOptions['inputSourceMap'] {
- try {
- if (typeof inputSourceMap === 'string') {
- return JSON.parse(inputSourceMap) as TransformOptions['inputSourceMap'];
- }
-
- return inputSourceMap as TransformOptions['inputSourceMap'];
- } catch (err) {
- return undefined;
- }
+ return new RegExp(`\\b(makeStyles|makeResetStyles)`).test(code);
}
export function webpackLoader(
- this: webpack.LoaderContext,
- sourceCode: WebpackLoaderParams[0],
- inputSourceMap: WebpackLoaderParams[1],
-) {
+ this: ThisParameterType,
+ ...args: Parameters
+): void {
// Loaders are cacheable by default, but there are edge cases/bugs when caching does not work until it's specified:
// https://github.com/webpack/webpack/issues/14946
this.cacheable();
- const {
- inheritResolveOptions = ['alias', 'modules', 'plugins'],
- webpackResolveOptions,
- ...babelConfig
- } = this.getOptions(optionsSchema);
-
// Early return to handle cases when makeStyles() calls are not present, allows to avoid expensive invocation of Babel
- if (!shouldTransformSourceCode(sourceCode, babelConfig.modules)) {
- this.callback(null, sourceCode, inputSourceMap);
- return;
- }
-
- EvalCache.clearForFile(this.resourcePath);
-
- const resolveOptionsDefaults: webpack.ResolveOptions = {
- conditionNames: ['require'],
- extensions: ['.js', '.jsx', '.ts', '.tsx', '.json'],
- };
- // âš "this._compilation" limits loaders compatibility, however there seems to be no other way to access Webpack's
- // resolver.
- // There is this.resolve(), but it's asynchronous. Another option is to read the webpack.config.js, but it won't work
- // for programmatic usage. This API is used by many loaders/plugins, so hope we're safe for a while
- const resolveOptionsFromWebpackConfig: webpack.ResolveOptions = this._compilation?.options.resolve || {};
-
- const resolveSync = enhancedResolve.create.sync({
- ...resolveOptionsDefaults,
- ...Object.fromEntries(
- inheritResolveOptions.map(resolveOptionKey => [
- resolveOptionKey,
- resolveOptionsFromWebpackConfig[resolveOptionKey],
- ]),
- ),
- ...webpackResolveOptions,
- });
-
- const originalResolveFilename = Module._resolveFilename;
-
- let result: TransformResult | null = null;
- let error: Error | null = null;
-
- try {
- // We are evaluating modules in Babel plugin to resolve expressions (function calls, imported constants, etc.) in
- // makeStyles() calls, see evaluatePathsInVM.ts.
- // Webpack's config can define own module resolution, Babel plugin should use Webpack's resolution to properly
- // resolve paths.
- Module._resolveFilename = (id, { filename }) => {
- const resolvedPath = resolveSync(path.dirname(filename), id);
-
- if (!resolvedPath) {
- throw new Error(`enhanced-resolve: Failed to resolve module "${id}"`);
- }
-
- this.addDependency(resolvedPath);
-
- return resolvedPath;
- };
-
- result = transformSync(sourceCode, {
- filename: path.relative(process.cwd(), this.resourcePath),
-
- enableSourceMaps: this.sourceMap || false,
- inputSourceMap: parseSourceMap(inputSourceMap),
-
- pluginOptions: babelConfig,
- });
- } catch (err) {
- error = err as Error;
- } finally {
- // Restore original behaviour
- Module._resolveFilename = originalResolveFilename;
- }
-
- if (result) {
- this.callback(null, result.code, result.sourceMap);
+ if (!shouldTransformSourceCode(args[0])) {
+ this.callback(null, args[0], args[1]);
return;
}
- this.callback(error);
+ return linariaLoader.apply(this, args);
}
diff --git a/tsconfig.base.json b/tsconfig.base.json
index 3f9920744..baa4d6725 100644
--- a/tsconfig.base.json
+++ b/tsconfig.base.json
@@ -21,6 +21,9 @@
"@griffel/e2e-utils": ["e2e/utils/src/index.ts"],
"@griffel/eslint-plugin": ["packages/eslint-plugin/src/index.ts"],
"@griffel/jest-serializer": ["packages/jest-serializer/src/index.ts"],
+ "@griffel/linaria-processor": ["packages/linaria-processor/src/index.ts"],
+ "@griffel/linaria-processor/make-styles": ["packages/linaria-processor/src/MakeStylesProcessor.ts"],
+ "@griffel/linaria-processor/make-reset-styles": ["packages/linaria-processor/src/MakeResetStylesProcessor.ts"],
"@griffel/next-extraction-plugin": ["packages/next-extraction-plugin/src/index.ts"],
"@griffel/postcss-syntax": ["packages/postcss-syntax/src/index.ts"],
"@griffel/style-types": ["packages/style-types/src/index.ts"],
diff --git a/workspace.json b/workspace.json
index d8ebbb4ff..89ea00bec 100644
--- a/workspace.json
+++ b/workspace.json
@@ -10,6 +10,7 @@
"@griffel/e2e-utils": "e2e/utils",
"@griffel/eslint-plugin": "packages/eslint-plugin",
"@griffel/jest-serializer": "packages/jest-serializer",
+ "@griffel/linaria-processor": "packages/linaria-processor",
"@griffel/next-extraction-plugin": "packages/next-extraction-plugin",
"@griffel/postcss-syntax": "packages/postcss-syntax",
"@griffel/react": "packages/react",
diff --git a/yarn.lock b/yarn.lock
index dd9055960..f43a660a6 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -172,28 +172,30 @@ __metadata:
languageName: node
linkType: hard
-"@ampproject/remapping@npm:^2.1.0":
- version: 2.1.2
- resolution: "@ampproject/remapping@npm:2.1.2"
+"@ampproject/remapping@npm:^2.2.0":
+ version: 2.2.1
+ resolution: "@ampproject/remapping@npm:2.2.1"
dependencies:
- "@jridgewell/trace-mapping": ^0.3.0
- checksum: e023f92cdd9723f3042cde3b4d922adfeef0e198aa73486b0b6c034ad36af5f96e5c0cc72b335b30b2eb9852d907efc92af6bfcd3f4b4d286177ee32a189cf92
+ "@jridgewell/gen-mapping": ^0.3.0
+ "@jridgewell/trace-mapping": ^0.3.9
+ checksum: 03c04fd526acc64a1f4df22651186f3e5ef0a9d6d6530ce4482ec9841269cf7a11dbb8af79237c282d721c5312024ff17529cd72cc4768c11e999b58e2302079
languageName: node
linkType: hard
-"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.10.4, @babel/code-frame@npm:^7.12.13, @babel/code-frame@npm:^7.16.0, @babel/code-frame@npm:^7.16.7, @babel/code-frame@npm:^7.18.6, @babel/code-frame@npm:^7.5.5, @babel/code-frame@npm:^7.8.3":
- version: 7.18.6
- resolution: "@babel/code-frame@npm:7.18.6"
+"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.10.4, @babel/code-frame@npm:^7.12.13, @babel/code-frame@npm:^7.16.0, @babel/code-frame@npm:^7.16.7, @babel/code-frame@npm:^7.22.13, @babel/code-frame@npm:^7.5.5, @babel/code-frame@npm:^7.8.3":
+ version: 7.22.13
+ resolution: "@babel/code-frame@npm:7.22.13"
dependencies:
- "@babel/highlight": ^7.18.6
- checksum: 195e2be3172d7684bf95cff69ae3b7a15a9841ea9d27d3c843662d50cdd7d6470fd9c8e64be84d031117e4a4083486effba39f9aef6bbb2c89f7f21bcfba33ba
+ "@babel/highlight": ^7.22.13
+ chalk: ^2.4.2
+ checksum: 22e342c8077c8b77eeb11f554ecca2ba14153f707b85294fcf6070b6f6150aae88a7b7436dd88d8c9289970585f3fe5b9b941c5aa3aa26a6d5a8ef3f292da058
languageName: node
linkType: hard
-"@babel/compat-data@npm:^7.17.7, @babel/compat-data@npm:^7.20.1, @babel/compat-data@npm:^7.20.5":
- version: 7.20.14
- resolution: "@babel/compat-data@npm:7.20.14"
- checksum: 6c9efe36232094e4ad0b70d165587f21ca718e5d011f7a52a77a18502a7524e90e2855aa5a2e086395bcfd21bd2c7c99128dcd8d9fdffe94316b72acf5c66f2c
+"@babel/compat-data@npm:^7.20.5, @babel/compat-data@npm:^7.22.20, @babel/compat-data@npm:^7.22.6, @babel/compat-data@npm:^7.22.9":
+ version: 7.22.20
+ resolution: "@babel/compat-data@npm:7.22.20"
+ checksum: efedd1d18878c10fde95e4d82b1236a9aba41395ef798cbb651f58dbf5632dbff475736c507b8d13d4c8f44809d41c0eb2ef0d694283af9ba5dd8339b6dab451
languageName: node
linkType: hard
@@ -221,101 +223,101 @@ __metadata:
languageName: node
linkType: hard
-"@babel/core@npm:^7.0.1, @babel/core@npm:^7.1.0, @babel/core@npm:^7.11.6, @babel/core@npm:^7.12.10, @babel/core@npm:^7.12.13, @babel/core@npm:^7.12.3, @babel/core@npm:^7.15.0, @babel/core@npm:^7.15.5, @babel/core@npm:^7.18.2, @babel/core@npm:^7.18.6, @babel/core@npm:^7.20.2, @babel/core@npm:^7.7.5":
- version: 7.20.12
- resolution: "@babel/core@npm:7.20.12"
+"@babel/core@npm:^7.0.1, @babel/core@npm:^7.1.0, @babel/core@npm:^7.11.6, @babel/core@npm:^7.12.10, @babel/core@npm:^7.12.13, @babel/core@npm:^7.12.3, @babel/core@npm:^7.15.0, @babel/core@npm:^7.15.5, @babel/core@npm:^7.18.6, @babel/core@npm:^7.20.2, @babel/core@npm:^7.22.15, @babel/core@npm:^7.7.5":
+ version: 7.23.0
+ resolution: "@babel/core@npm:7.23.0"
dependencies:
- "@ampproject/remapping": ^2.1.0
- "@babel/code-frame": ^7.18.6
- "@babel/generator": ^7.20.7
- "@babel/helper-compilation-targets": ^7.20.7
- "@babel/helper-module-transforms": ^7.20.11
- "@babel/helpers": ^7.20.7
- "@babel/parser": ^7.20.7
- "@babel/template": ^7.20.7
- "@babel/traverse": ^7.20.12
- "@babel/types": ^7.20.7
- convert-source-map: ^1.7.0
+ "@ampproject/remapping": ^2.2.0
+ "@babel/code-frame": ^7.22.13
+ "@babel/generator": ^7.23.0
+ "@babel/helper-compilation-targets": ^7.22.15
+ "@babel/helper-module-transforms": ^7.23.0
+ "@babel/helpers": ^7.23.0
+ "@babel/parser": ^7.23.0
+ "@babel/template": ^7.22.15
+ "@babel/traverse": ^7.23.0
+ "@babel/types": ^7.23.0
+ convert-source-map: ^2.0.0
debug: ^4.1.0
gensync: ^1.0.0-beta.2
- json5: ^2.2.2
- semver: ^6.3.0
- checksum: 62e6c3e2149a70b5c9729ef5f0d3e2e97e9dcde89fc039c8d8e3463d5d7ba9b29ee84d10faf79b61532ac1645aa62f2bd42338320617e6e3a8a4d8e2a27076e7
+ json5: ^2.2.3
+ semver: ^6.3.1
+ checksum: cebd9b48dbc970a7548522f207f245c69567e5ea17ebb1a4e4de563823cf20a01177fe8d2fe19b6e1461361f92fa169fd0b29f8ee9d44eeec84842be1feee5f2
languageName: node
linkType: hard
-"@babel/generator@npm:>=7, @babel/generator@npm:^7.12.11, @babel/generator@npm:^7.12.13, @babel/generator@npm:^7.12.5, @babel/generator@npm:^7.17.9, @babel/generator@npm:^7.18.7, @babel/generator@npm:^7.20.7, @babel/generator@npm:^7.7.2":
- version: 7.20.14
- resolution: "@babel/generator@npm:7.20.14"
+"@babel/generator@npm:^7.12.11, @babel/generator@npm:^7.12.13, @babel/generator@npm:^7.12.5, @babel/generator@npm:^7.17.9, @babel/generator@npm:^7.18.7, @babel/generator@npm:^7.22.15, @babel/generator@npm:^7.23.0, @babel/generator@npm:^7.7.2":
+ version: 7.23.0
+ resolution: "@babel/generator@npm:7.23.0"
dependencies:
- "@babel/types": ^7.20.7
+ "@babel/types": ^7.23.0
"@jridgewell/gen-mapping": ^0.3.2
+ "@jridgewell/trace-mapping": ^0.3.17
jsesc: ^2.5.1
- checksum: 5f6aa2d86af26e76d276923a5c34191124a119b16ee9ccc34aef654a7dec84fbd7d2daed2e6458a6a06bf87f3661deb77c9fea59b8f67faff5c90793c96d76d6
+ checksum: 8efe24adad34300f1f8ea2add420b28171a646edc70f2a1b3e1683842f23b8b7ffa7e35ef0119294e1901f45bfea5b3dc70abe1f10a1917ccdfb41bed69be5f1
languageName: node
linkType: hard
-"@babel/helper-annotate-as-pure@npm:^7.16.0, @babel/helper-annotate-as-pure@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/helper-annotate-as-pure@npm:7.18.6"
+"@babel/helper-annotate-as-pure@npm:^7.16.0, @babel/helper-annotate-as-pure@npm:^7.18.6, @babel/helper-annotate-as-pure@npm:^7.22.5":
+ version: 7.22.5
+ resolution: "@babel/helper-annotate-as-pure@npm:7.22.5"
dependencies:
- "@babel/types": ^7.18.6
- checksum: 88ccd15ced475ef2243fdd3b2916a29ea54c5db3cd0cfabf9d1d29ff6e63b7f7cd1c27264137d7a40ac2e978b9b9a542c332e78f40eb72abe737a7400788fc1b
+ "@babel/types": ^7.22.5
+ checksum: 53da330f1835c46f26b7bf4da31f7a496dee9fd8696cca12366b94ba19d97421ce519a74a837f687749318f94d1a37f8d1abcbf35e8ed22c32d16373b2f6198d
languageName: node
linkType: hard
-"@babel/helper-builder-binary-assignment-operator-visitor@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/helper-builder-binary-assignment-operator-visitor@npm:7.18.6"
+"@babel/helper-builder-binary-assignment-operator-visitor@npm:^7.22.5":
+ version: 7.22.15
+ resolution: "@babel/helper-builder-binary-assignment-operator-visitor@npm:7.22.15"
dependencies:
- "@babel/helper-explode-assignable-expression": ^7.18.6
- "@babel/types": ^7.18.6
- checksum: c4d71356e0adbc20ce9fe7c1e1181ff65a78603f8bba7615745f0417fed86bad7dc0a54a840bc83667c66709b3cb3721edcb9be0d393a298ce4e9eb6d085f3c1
+ "@babel/types": ^7.22.15
+ checksum: 639c697a1c729f9fafa2dd4c9af2e18568190299b5907bd4c2d0bc818fcbd1e83ffeecc2af24327a7faa7ac4c34edd9d7940510a5e66296c19bad17001cf5c7a
languageName: node
linkType: hard
-"@babel/helper-compilation-targets@npm:^7.13.0, @babel/helper-compilation-targets@npm:^7.17.7, @babel/helper-compilation-targets@npm:^7.18.9, @babel/helper-compilation-targets@npm:^7.20.0, @babel/helper-compilation-targets@npm:^7.20.7":
- version: 7.20.7
- resolution: "@babel/helper-compilation-targets@npm:7.20.7"
+"@babel/helper-compilation-targets@npm:^7.13.0, @babel/helper-compilation-targets@npm:^7.20.7, @babel/helper-compilation-targets@npm:^7.22.15, @babel/helper-compilation-targets@npm:^7.22.5, @babel/helper-compilation-targets@npm:^7.22.6":
+ version: 7.22.15
+ resolution: "@babel/helper-compilation-targets@npm:7.22.15"
dependencies:
- "@babel/compat-data": ^7.20.5
- "@babel/helper-validator-option": ^7.18.6
- browserslist: ^4.21.3
+ "@babel/compat-data": ^7.22.9
+ "@babel/helper-validator-option": ^7.22.15
+ browserslist: ^4.21.9
lru-cache: ^5.1.1
- semver: ^6.3.0
- peerDependencies:
- "@babel/core": ^7.0.0
- checksum: 8c32c873ba86e2e1805b30e0807abd07188acbe00ebb97576f0b09061cc65007f1312b589eccb4349c5a8c7f8bb9f2ab199d41da7030bf103d9f347dcd3a3cf4
+ semver: ^6.3.1
+ checksum: ce85196769e091ae54dd39e4a80c2a9df1793da8588e335c383d536d54f06baf648d0a08fc873044f226398c4ded15c4ae9120ee18e7dfd7c639a68e3cdc9980
languageName: node
linkType: hard
-"@babel/helper-create-class-features-plugin@npm:^7.17.0, @babel/helper-create-class-features-plugin@npm:^7.18.6, @babel/helper-create-class-features-plugin@npm:^7.20.5":
- version: 7.20.12
- resolution: "@babel/helper-create-class-features-plugin@npm:7.20.12"
+"@babel/helper-create-class-features-plugin@npm:^7.17.0, @babel/helper-create-class-features-plugin@npm:^7.18.6, @babel/helper-create-class-features-plugin@npm:^7.20.5, @babel/helper-create-class-features-plugin@npm:^7.22.11, @babel/helper-create-class-features-plugin@npm:^7.22.5":
+ version: 7.22.15
+ resolution: "@babel/helper-create-class-features-plugin@npm:7.22.15"
dependencies:
- "@babel/helper-annotate-as-pure": ^7.18.6
- "@babel/helper-environment-visitor": ^7.18.9
- "@babel/helper-function-name": ^7.19.0
- "@babel/helper-member-expression-to-functions": ^7.20.7
- "@babel/helper-optimise-call-expression": ^7.18.6
- "@babel/helper-replace-supers": ^7.20.7
- "@babel/helper-skip-transparent-expression-wrappers": ^7.20.0
- "@babel/helper-split-export-declaration": ^7.18.6
+ "@babel/helper-annotate-as-pure": ^7.22.5
+ "@babel/helper-environment-visitor": ^7.22.5
+ "@babel/helper-function-name": ^7.22.5
+ "@babel/helper-member-expression-to-functions": ^7.22.15
+ "@babel/helper-optimise-call-expression": ^7.22.5
+ "@babel/helper-replace-supers": ^7.22.9
+ "@babel/helper-skip-transparent-expression-wrappers": ^7.22.5
+ "@babel/helper-split-export-declaration": ^7.22.6
+ semver: ^6.3.1
peerDependencies:
"@babel/core": ^7.0.0
- checksum: 1e9ed4243b75278fa24deb40dc62bf537b79307987223a2d2d2ae5abf7ba6dc8435d6e3bb55d52ceb30d3e1eba88e7eb6a1885a8bb519e5cfc3e9dedb97d43e6
+ checksum: 52c500d8d164abb3a360b1b7c4b8fff77bc4a5920d3a2b41ae6e1d30617b0dc0b972c1f5db35b1752007e04a748908b4a99bc872b73549ae837e87dcdde005a3
languageName: node
linkType: hard
-"@babel/helper-create-regexp-features-plugin@npm:^7.18.6, @babel/helper-create-regexp-features-plugin@npm:^7.20.5":
- version: 7.20.5
- resolution: "@babel/helper-create-regexp-features-plugin@npm:7.20.5"
+"@babel/helper-create-regexp-features-plugin@npm:^7.18.6, @babel/helper-create-regexp-features-plugin@npm:^7.22.5":
+ version: 7.22.15
+ resolution: "@babel/helper-create-regexp-features-plugin@npm:7.22.15"
dependencies:
- "@babel/helper-annotate-as-pure": ^7.18.6
- regexpu-core: ^5.2.1
+ "@babel/helper-annotate-as-pure": ^7.22.5
+ regexpu-core: ^5.3.1
+ semver: ^6.3.1
peerDependencies:
"@babel/core": ^7.0.0
- checksum: 7f29c3cb7447cca047b0d394f8ab98e4923d00e86a7afa56e5df9770c48ec107891505d2d1f06b720ecc94ed24bf58d90986cc35fe4a43b549eb7b7a5077b693
+ checksum: 0243b8d4854f1dc8861b1029a46d3f6393ad72f366a5a08e36a4648aa682044f06da4c6e87a456260e1e1b33c999f898ba591a0760842c1387bcc93fbf2151a6
languageName: node
linkType: hard
@@ -337,97 +339,86 @@ __metadata:
languageName: node
linkType: hard
-"@babel/helper-define-polyfill-provider@npm:^0.3.1, @babel/helper-define-polyfill-provider@npm:^0.3.3":
- version: 0.3.3
- resolution: "@babel/helper-define-polyfill-provider@npm:0.3.3"
+"@babel/helper-define-polyfill-provider@npm:^0.4.2":
+ version: 0.4.2
+ resolution: "@babel/helper-define-polyfill-provider@npm:0.4.2"
dependencies:
- "@babel/helper-compilation-targets": ^7.17.7
- "@babel/helper-plugin-utils": ^7.16.7
+ "@babel/helper-compilation-targets": ^7.22.6
+ "@babel/helper-plugin-utils": ^7.22.5
debug: ^4.1.1
lodash.debounce: ^4.0.8
resolve: ^1.14.2
- semver: ^6.1.2
peerDependencies:
- "@babel/core": ^7.4.0-0
- checksum: 8e3fe75513302e34f6d92bd67b53890e8545e6c5bca8fe757b9979f09d68d7e259f6daea90dc9e01e332c4f8781bda31c5fe551c82a277f9bc0bec007aed497c
+ "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0
+ checksum: 1f6dec0c5d0876d278fe15b71238eccc5f74c4e2efa2c78aaafa8bc2cc96336b8e68d94cd1a78497356c96e8b91b8c1f4452179820624d1702aee2f9832e6569
languageName: node
linkType: hard
-"@babel/helper-environment-visitor@npm:^7.18.9":
- version: 7.18.9
- resolution: "@babel/helper-environment-visitor@npm:7.18.9"
- checksum: b25101f6162ddca2d12da73942c08ad203d7668e06663df685634a8fde54a98bc015f6f62938e8554457a592a024108d45b8f3e651fd6dcdb877275b73cc4420
+"@babel/helper-environment-visitor@npm:^7.22.20, @babel/helper-environment-visitor@npm:^7.22.5":
+ version: 7.22.20
+ resolution: "@babel/helper-environment-visitor@npm:7.22.20"
+ checksum: d80ee98ff66f41e233f36ca1921774c37e88a803b2f7dca3db7c057a5fea0473804db9fb6729e5dbfd07f4bed722d60f7852035c2c739382e84c335661590b69
languageName: node
linkType: hard
-"@babel/helper-explode-assignable-expression@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/helper-explode-assignable-expression@npm:7.18.6"
+"@babel/helper-function-name@npm:^7.22.5, @babel/helper-function-name@npm:^7.23.0":
+ version: 7.23.0
+ resolution: "@babel/helper-function-name@npm:7.23.0"
dependencies:
- "@babel/types": ^7.18.6
- checksum: 225cfcc3376a8799023d15dc95000609e9d4e7547b29528c7f7111a0e05493ffb12c15d70d379a0bb32d42752f340233c4115bded6d299bc0c3ab7a12be3d30f
+ "@babel/template": ^7.22.15
+ "@babel/types": ^7.23.0
+ checksum: e44542257b2d4634a1f979244eb2a4ad8e6d75eb6761b4cfceb56b562f7db150d134bc538c8e6adca3783e3bc31be949071527aa8e3aab7867d1ad2d84a26e10
languageName: node
linkType: hard
-"@babel/helper-function-name@npm:^7.18.9, @babel/helper-function-name@npm:^7.19.0":
- version: 7.19.0
- resolution: "@babel/helper-function-name@npm:7.19.0"
+"@babel/helper-hoist-variables@npm:^7.22.5":
+ version: 7.22.5
+ resolution: "@babel/helper-hoist-variables@npm:7.22.5"
dependencies:
- "@babel/template": ^7.18.10
- "@babel/types": ^7.19.0
- checksum: eac1f5db428ba546270c2b8d750c24eb528b8fcfe50c81de2e0bdebf0e20f24bec688d4331533b782e4a907fad435244621ca2193cfcf80a86731299840e0f6e
+ "@babel/types": ^7.22.5
+ checksum: 394ca191b4ac908a76e7c50ab52102669efe3a1c277033e49467913c7ed6f7c64d7eacbeabf3bed39ea1f41731e22993f763b1edce0f74ff8563fd1f380d92cc
languageName: node
linkType: hard
-"@babel/helper-hoist-variables@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/helper-hoist-variables@npm:7.18.6"
+"@babel/helper-member-expression-to-functions@npm:^7.22.15":
+ version: 7.23.0
+ resolution: "@babel/helper-member-expression-to-functions@npm:7.23.0"
dependencies:
- "@babel/types": ^7.18.6
- checksum: fd9c35bb435fda802bf9ff7b6f2df06308a21277c6dec2120a35b09f9de68f68a33972e2c15505c1a1a04b36ec64c9ace97d4a9e26d6097b76b4396b7c5fa20f
+ "@babel/types": ^7.23.0
+ checksum: 494659361370c979ada711ca685e2efe9460683c36db1b283b446122596602c901e291e09f2f980ecedfe6e0f2bd5386cb59768285446530df10c14df1024e75
languageName: node
linkType: hard
-"@babel/helper-member-expression-to-functions@npm:^7.20.7":
- version: 7.20.7
- resolution: "@babel/helper-member-expression-to-functions@npm:7.20.7"
- dependencies:
- "@babel/types": ^7.20.7
- checksum: cec17aab7e964830b0146e575bd141127032319f26ed864a65b35abd75ad618d264d3e11449b9b4e29cfd95bb1a7e774afddd4884fdcc29c36ac9cbd2b66359f
- languageName: node
- linkType: hard
-
-"@babel/helper-module-imports@npm:^7.0.0, @babel/helper-module-imports@npm:^7.10.4, @babel/helper-module-imports@npm:^7.12.13, @babel/helper-module-imports@npm:^7.16.0, @babel/helper-module-imports@npm:^7.16.7, @babel/helper-module-imports@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/helper-module-imports@npm:7.18.6"
+"@babel/helper-module-imports@npm:^7.0.0, @babel/helper-module-imports@npm:^7.10.4, @babel/helper-module-imports@npm:^7.12.13, @babel/helper-module-imports@npm:^7.16.0, @babel/helper-module-imports@npm:^7.16.7, @babel/helper-module-imports@npm:^7.18.6, @babel/helper-module-imports@npm:^7.22.15, @babel/helper-module-imports@npm:^7.22.5":
+ version: 7.22.15
+ resolution: "@babel/helper-module-imports@npm:7.22.15"
dependencies:
- "@babel/types": ^7.18.6
- checksum: f393f8a3b3304b1b7a288a38c10989de754f01d29caf62ce7c4e5835daf0a27b81f3ac687d9d2780d39685aae7b55267324b512150e7b2be967b0c493b6a1def
+ "@babel/types": ^7.22.15
+ checksum: ecd7e457df0a46f889228f943ef9b4a47d485d82e030676767e6a2fdcbdaa63594d8124d4b55fd160b41c201025aec01fc27580352b1c87a37c9c6f33d116702
languageName: node
linkType: hard
-"@babel/helper-module-transforms@npm:^7.12.1, @babel/helper-module-transforms@npm:^7.18.6, @babel/helper-module-transforms@npm:^7.20.11":
- version: 7.20.11
- resolution: "@babel/helper-module-transforms@npm:7.20.11"
+"@babel/helper-module-transforms@npm:^7.12.1, @babel/helper-module-transforms@npm:^7.22.5, @babel/helper-module-transforms@npm:^7.23.0":
+ version: 7.23.0
+ resolution: "@babel/helper-module-transforms@npm:7.23.0"
dependencies:
- "@babel/helper-environment-visitor": ^7.18.9
- "@babel/helper-module-imports": ^7.18.6
- "@babel/helper-simple-access": ^7.20.2
- "@babel/helper-split-export-declaration": ^7.18.6
- "@babel/helper-validator-identifier": ^7.19.1
- "@babel/template": ^7.20.7
- "@babel/traverse": ^7.20.10
- "@babel/types": ^7.20.7
- checksum: 29319ebafa693d48756c6ba0d871677bb0037e0da084fbe221a17c38d57093fc8aa38543c07d76e788266a937976e37ab4901971ca7f237c5ab45f524b9ecca0
+ "@babel/helper-environment-visitor": ^7.22.20
+ "@babel/helper-module-imports": ^7.22.15
+ "@babel/helper-simple-access": ^7.22.5
+ "@babel/helper-split-export-declaration": ^7.22.6
+ "@babel/helper-validator-identifier": ^7.22.20
+ peerDependencies:
+ "@babel/core": ^7.0.0
+ checksum: 6e2afffb058cf3f8ce92f5116f710dda4341c81cfcd872f9a0197ea594f7ce0ab3cb940b0590af2fe99e60d2e5448bfba6bca8156ed70a2ed4be2adc8586c891
languageName: node
linkType: hard
-"@babel/helper-optimise-call-expression@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/helper-optimise-call-expression@npm:7.18.6"
+"@babel/helper-optimise-call-expression@npm:^7.22.5":
+ version: 7.22.5
+ resolution: "@babel/helper-optimise-call-expression@npm:7.22.5"
dependencies:
- "@babel/types": ^7.18.6
- checksum: e518fe8418571405e21644cfb39cf694f30b6c47b10b006609a92469ae8b8775cbff56f0b19732343e2ea910641091c5a2dc73b56ceba04e116a33b0f8bd2fbd
+ "@babel/types": ^7.22.5
+ checksum: c70ef6cc6b6ed32eeeec4482127e8be5451d0e5282d5495d5d569d39eb04d7f1d66ec99b327f45d1d5842a9ad8c22d48567e93fc502003a47de78d122e355f7c
languageName: node
linkType: hard
@@ -438,171 +429,154 @@ __metadata:
languageName: node
linkType: hard
-"@babel/helper-plugin-utils@npm:^7.0.0, @babel/helper-plugin-utils@npm:^7.10.4, @babel/helper-plugin-utils@npm:^7.12.13, @babel/helper-plugin-utils@npm:^7.13.0, @babel/helper-plugin-utils@npm:^7.14.5, @babel/helper-plugin-utils@npm:^7.16.7, @babel/helper-plugin-utils@npm:^7.18.6, @babel/helper-plugin-utils@npm:^7.18.9, @babel/helper-plugin-utils@npm:^7.19.0, @babel/helper-plugin-utils@npm:^7.20.2, @babel/helper-plugin-utils@npm:^7.8.0, @babel/helper-plugin-utils@npm:^7.8.3":
- version: 7.20.2
- resolution: "@babel/helper-plugin-utils@npm:7.20.2"
- checksum: f6cae53b7fdb1bf3abd50fa61b10b4470985b400cc794d92635da1e7077bb19729f626adc0741b69403d9b6e411cddddb9c0157a709cc7c4eeb41e663be5d74b
+"@babel/helper-plugin-utils@npm:^7.0.0, @babel/helper-plugin-utils@npm:^7.10.4, @babel/helper-plugin-utils@npm:^7.12.13, @babel/helper-plugin-utils@npm:^7.13.0, @babel/helper-plugin-utils@npm:^7.14.5, @babel/helper-plugin-utils@npm:^7.16.7, @babel/helper-plugin-utils@npm:^7.18.6, @babel/helper-plugin-utils@npm:^7.20.2, @babel/helper-plugin-utils@npm:^7.22.5, @babel/helper-plugin-utils@npm:^7.8.0, @babel/helper-plugin-utils@npm:^7.8.3":
+ version: 7.22.5
+ resolution: "@babel/helper-plugin-utils@npm:7.22.5"
+ checksum: c0fc7227076b6041acd2f0e818145d2e8c41968cc52fb5ca70eed48e21b8fe6dd88a0a91cbddf4951e33647336eb5ae184747ca706817ca3bef5e9e905151ff5
languageName: node
linkType: hard
-"@babel/helper-remap-async-to-generator@npm:^7.18.6, @babel/helper-remap-async-to-generator@npm:^7.18.9":
- version: 7.18.9
- resolution: "@babel/helper-remap-async-to-generator@npm:7.18.9"
+"@babel/helper-remap-async-to-generator@npm:^7.22.5, @babel/helper-remap-async-to-generator@npm:^7.22.9":
+ version: 7.22.20
+ resolution: "@babel/helper-remap-async-to-generator@npm:7.22.20"
dependencies:
- "@babel/helper-annotate-as-pure": ^7.18.6
- "@babel/helper-environment-visitor": ^7.18.9
- "@babel/helper-wrap-function": ^7.18.9
- "@babel/types": ^7.18.9
+ "@babel/helper-annotate-as-pure": ^7.22.5
+ "@babel/helper-environment-visitor": ^7.22.20
+ "@babel/helper-wrap-function": ^7.22.20
peerDependencies:
"@babel/core": ^7.0.0
- checksum: 4be6076192308671b046245899b703ba090dbe7ad03e0bea897bb2944ae5b88e5e85853c9d1f83f643474b54c578d8ac0800b80341a86e8538264a725fbbefec
+ checksum: 2fe6300a6f1b58211dffa0aed1b45d4958506d096543663dba83bd9251fe8d670fa909143a65b45e72acb49e7e20fbdb73eae315d9ddaced467948c3329986e7
languageName: node
linkType: hard
-"@babel/helper-replace-supers@npm:^7.16.7, @babel/helper-replace-supers@npm:^7.18.6, @babel/helper-replace-supers@npm:^7.20.7":
- version: 7.20.7
- resolution: "@babel/helper-replace-supers@npm:7.20.7"
+"@babel/helper-replace-supers@npm:^7.16.7, @babel/helper-replace-supers@npm:^7.22.5, @babel/helper-replace-supers@npm:^7.22.9":
+ version: 7.22.20
+ resolution: "@babel/helper-replace-supers@npm:7.22.20"
dependencies:
- "@babel/helper-environment-visitor": ^7.18.9
- "@babel/helper-member-expression-to-functions": ^7.20.7
- "@babel/helper-optimise-call-expression": ^7.18.6
- "@babel/template": ^7.20.7
- "@babel/traverse": ^7.20.7
- "@babel/types": ^7.20.7
- checksum: b8e0087c9b0c1446e3c6f3f72b73b7e03559c6b570e2cfbe62c738676d9ebd8c369a708cf1a564ef88113b4330750a50232ee1131d303d478b7a5e65e46fbc7c
+ "@babel/helper-environment-visitor": ^7.22.20
+ "@babel/helper-member-expression-to-functions": ^7.22.15
+ "@babel/helper-optimise-call-expression": ^7.22.5
+ peerDependencies:
+ "@babel/core": ^7.0.0
+ checksum: a0008332e24daedea2e9498733e3c39b389d6d4512637e000f96f62b797e702ee24a407ccbcd7a236a551590a38f31282829a8ef35c50a3c0457d88218cae639
languageName: node
linkType: hard
-"@babel/helper-simple-access@npm:^7.20.2":
- version: 7.20.2
- resolution: "@babel/helper-simple-access@npm:7.20.2"
+"@babel/helper-simple-access@npm:^7.22.5":
+ version: 7.22.5
+ resolution: "@babel/helper-simple-access@npm:7.22.5"
dependencies:
- "@babel/types": ^7.20.2
- checksum: ad1e96ee2e5f654ffee2369a586e5e8d2722bf2d8b028a121b4c33ebae47253f64d420157b9f0a8927aea3a9e0f18c0103e74fdd531815cf3650a0a4adca11a1
+ "@babel/types": ^7.22.5
+ checksum: fe9686714caf7d70aedb46c3cce090f8b915b206e09225f1e4dbc416786c2fdbbee40b38b23c268b7ccef749dd2db35f255338fb4f2444429874d900dede5ad2
languageName: node
linkType: hard
-"@babel/helper-skip-transparent-expression-wrappers@npm:^7.20.0":
- version: 7.20.0
- resolution: "@babel/helper-skip-transparent-expression-wrappers@npm:7.20.0"
+"@babel/helper-skip-transparent-expression-wrappers@npm:^7.20.0, @babel/helper-skip-transparent-expression-wrappers@npm:^7.22.5":
+ version: 7.22.5
+ resolution: "@babel/helper-skip-transparent-expression-wrappers@npm:7.22.5"
dependencies:
- "@babel/types": ^7.20.0
- checksum: 34da8c832d1c8a546e45d5c1d59755459ffe43629436707079989599b91e8c19e50e73af7a4bd09c95402d389266731b0d9c5f69e372d8ebd3a709c05c80d7dd
+ "@babel/types": ^7.22.5
+ checksum: 1012ef2295eb12dc073f2b9edf3425661e9b8432a3387e62a8bc27c42963f1f216ab3124228015c748770b2257b4f1fda882ca8fa34c0bf485e929ae5bc45244
languageName: node
linkType: hard
-"@babel/helper-split-export-declaration@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/helper-split-export-declaration@npm:7.18.6"
+"@babel/helper-split-export-declaration@npm:^7.22.6":
+ version: 7.22.6
+ resolution: "@babel/helper-split-export-declaration@npm:7.22.6"
dependencies:
- "@babel/types": ^7.18.6
- checksum: c6d3dede53878f6be1d869e03e9ffbbb36f4897c7cc1527dc96c56d127d834ffe4520a6f7e467f5b6f3c2843ea0e81a7819d66ae02f707f6ac057f3d57943a2b
+ "@babel/types": ^7.22.5
+ checksum: e141cace583b19d9195f9c2b8e17a3ae913b7ee9b8120246d0f9ca349ca6f03cb2c001fd5ec57488c544347c0bb584afec66c936511e447fd20a360e591ac921
languageName: node
linkType: hard
-"@babel/helper-string-parser@npm:^7.19.4":
- version: 7.19.4
- resolution: "@babel/helper-string-parser@npm:7.19.4"
- checksum: b2f8a3920b30dfac81ec282ac4ad9598ea170648f8254b10f475abe6d944808fb006aab325d3eb5a8ad3bea8dfa888cfa6ef471050dae5748497c110ec060943
+"@babel/helper-string-parser@npm:^7.22.5":
+ version: 7.22.5
+ resolution: "@babel/helper-string-parser@npm:7.22.5"
+ checksum: 836851ca5ec813077bbb303acc992d75a360267aa3b5de7134d220411c852a6f17de7c0d0b8c8dcc0f567f67874c00f4528672b2a4f1bc978a3ada64c8c78467
languageName: node
linkType: hard
-"@babel/helper-validator-identifier@npm:^7.18.6, @babel/helper-validator-identifier@npm:^7.19.1":
- version: 7.19.1
- resolution: "@babel/helper-validator-identifier@npm:7.19.1"
- checksum: 0eca5e86a729162af569b46c6c41a63e18b43dbe09fda1d2a3c8924f7d617116af39cac5e4cd5d431bb760b4dca3c0970e0c444789b1db42bcf1fa41fbad0a3a
+"@babel/helper-validator-identifier@npm:^7.22.20":
+ version: 7.22.20
+ resolution: "@babel/helper-validator-identifier@npm:7.22.20"
+ checksum: 136412784d9428266bcdd4d91c32bcf9ff0e8d25534a9d94b044f77fe76bc50f941a90319b05aafd1ec04f7d127cd57a179a3716009ff7f3412ef835ada95bdc
languageName: node
linkType: hard
-"@babel/helper-validator-option@npm:^7.12.11, @babel/helper-validator-option@npm:^7.16.7, @babel/helper-validator-option@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/helper-validator-option@npm:7.18.6"
- checksum: f9cc6eb7cc5d759c5abf006402180f8d5e4251e9198197428a97e05d65eb2f8ae5a0ce73b1dfd2d35af41d0eb780627a64edf98a4e71f064eeeacef8de58f2cf
+"@babel/helper-validator-option@npm:^7.12.11, @babel/helper-validator-option@npm:^7.16.7, @babel/helper-validator-option@npm:^7.18.6, @babel/helper-validator-option@npm:^7.22.15":
+ version: 7.22.15
+ resolution: "@babel/helper-validator-option@npm:7.22.15"
+ checksum: 68da52b1e10002a543161494c4bc0f4d0398c8fdf361d5f7f4272e95c45d5b32d974896d44f6a0ea7378c9204988879d73613ca683e13bd1304e46d25ff67a8d
languageName: node
linkType: hard
-"@babel/helper-wrap-function@npm:^7.18.9":
- version: 7.20.5
- resolution: "@babel/helper-wrap-function@npm:7.20.5"
+"@babel/helper-wrap-function@npm:^7.22.20":
+ version: 7.22.20
+ resolution: "@babel/helper-wrap-function@npm:7.22.20"
dependencies:
- "@babel/helper-function-name": ^7.19.0
- "@babel/template": ^7.18.10
- "@babel/traverse": ^7.20.5
- "@babel/types": ^7.20.5
- checksum: 11a6fc28334368a193a9cb3ad16f29cd7603bab958433efc82ebe59fa6556c227faa24f07ce43983f7a85df826f71d441638442c4315e90a554fe0a70ca5005b
+ "@babel/helper-function-name": ^7.22.5
+ "@babel/template": ^7.22.15
+ "@babel/types": ^7.22.19
+ checksum: 221ed9b5572612aeb571e4ce6a256f2dee85b3c9536f1dd5e611b0255e5f59a3d0ec392d8d46d4152149156a8109f92f20379b1d6d36abb613176e0e33f05fca
languageName: node
linkType: hard
-"@babel/helpers@npm:^7.12.5, @babel/helpers@npm:^7.20.7":
- version: 7.20.13
- resolution: "@babel/helpers@npm:7.20.13"
+"@babel/helpers@npm:^7.12.5, @babel/helpers@npm:^7.23.0":
+ version: 7.23.1
+ resolution: "@babel/helpers@npm:7.23.1"
dependencies:
- "@babel/template": ^7.20.7
- "@babel/traverse": ^7.20.13
- "@babel/types": ^7.20.7
- checksum: d62076fa834f342798f8c3fd7aec0870cc1725d273d99e540cbaa8d6c3ed10258228dd14601c8e66bfeabbb9424c3b31090ecc467fe855f7bd72c4734df7fb09
+ "@babel/template": ^7.22.15
+ "@babel/traverse": ^7.23.0
+ "@babel/types": ^7.23.0
+ checksum: acfc345102045c24ea2a4d60e00dcf8220e215af3add4520e2167700661338e6a80bd56baf44bb764af05ec6621101c9afc315dc107e18c61fa6da8acbdbb893
languageName: node
linkType: hard
-"@babel/highlight@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/highlight@npm:7.18.6"
+"@babel/highlight@npm:^7.22.13":
+ version: 7.22.20
+ resolution: "@babel/highlight@npm:7.22.20"
dependencies:
- "@babel/helper-validator-identifier": ^7.18.6
- chalk: ^2.0.0
+ "@babel/helper-validator-identifier": ^7.22.20
+ chalk: ^2.4.2
js-tokens: ^4.0.0
- checksum: 92d8ee61549de5ff5120e945e774728e5ccd57fd3b2ed6eace020ec744823d4a98e242be1453d21764a30a14769ecd62170fba28539b211799bbaf232bbb2789
+ checksum: 84bd034dca309a5e680083cd827a766780ca63cef37308404f17653d32366ea76262bd2364b2d38776232f2d01b649f26721417d507e8b4b6da3e4e739f6d134
languageName: node
linkType: hard
-"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.12.11, @babel/parser@npm:^7.12.7, @babel/parser@npm:^7.13.0, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.18.8, @babel/parser@npm:^7.20.13, @babel/parser@npm:^7.20.7":
- version: 7.20.15
- resolution: "@babel/parser@npm:7.20.15"
+"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.12.11, @babel/parser@npm:^7.12.7, @babel/parser@npm:^7.13.0, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.18.8, @babel/parser@npm:^7.22.15, @babel/parser@npm:^7.23.0":
+ version: 7.23.0
+ resolution: "@babel/parser@npm:7.23.0"
bin:
parser: ./bin/babel-parser.js
- checksum: 1d0f47ca67ff2652f1c0ff1570bed8deccbc4b53509e7cd73476af9cc7ed23480c99f1179bd6d0be01612368b92b39e206d330ad6054009d699934848a89298b
+ checksum: 453fdf8b9e2c2b7d7b02139e0ce003d1af21947bbc03eb350fb248ee335c9b85e4ab41697ddbdd97079698de825a265e45a0846bb2ed47a2c7c1df833f42a354
languageName: node
linkType: hard
-"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@npm:7.18.6"
+"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@npm:^7.22.15":
+ version: 7.22.15
+ resolution: "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@npm:7.22.15"
dependencies:
- "@babel/helper-plugin-utils": ^7.18.6
+ "@babel/helper-plugin-utils": ^7.22.5
peerDependencies:
"@babel/core": ^7.0.0
- checksum: 845bd280c55a6a91d232cfa54eaf9708ec71e594676fe705794f494bb8b711d833b752b59d1a5c154695225880c23dbc9cab0e53af16fd57807976cd3ff41b8d
+ checksum: 8910ca21a7ec7c06f7b247d4b86c97c5aa15ef321518f44f6f490c5912fdf82c605aaa02b90892e375d82ccbedeadfdeadd922c1b836c9dd4c596871bf654753
languageName: node
linkType: hard
-"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:^7.18.9":
- version: 7.20.7
- resolution: "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:7.20.7"
+"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:^7.22.15":
+ version: 7.22.15
+ resolution: "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:7.22.15"
dependencies:
- "@babel/helper-plugin-utils": ^7.20.2
- "@babel/helper-skip-transparent-expression-wrappers": ^7.20.0
- "@babel/plugin-proposal-optional-chaining": ^7.20.7
+ "@babel/helper-plugin-utils": ^7.22.5
+ "@babel/helper-skip-transparent-expression-wrappers": ^7.22.5
+ "@babel/plugin-transform-optional-chaining": ^7.22.15
peerDependencies:
"@babel/core": ^7.13.0
- checksum: d610f532210bee5342f5b44a12395ccc6d904e675a297189bc1e401cc185beec09873da523466d7fec34ae1574f7a384235cba1ccc9fe7b89ba094167897c845
+ checksum: fbefedc0da014c37f1a50a8094ce7dbbf2181ae93243f23d6ecba2499b5b20196c2124d6a4dfe3e9e0125798e80593103e456352a4beb4e5c6f7c75efb80fdac
languageName: node
linkType: hard
-"@babel/plugin-proposal-async-generator-functions@npm:^7.20.1":
- version: 7.20.7
- resolution: "@babel/plugin-proposal-async-generator-functions@npm:7.20.7"
- dependencies:
- "@babel/helper-environment-visitor": ^7.18.9
- "@babel/helper-plugin-utils": ^7.20.2
- "@babel/helper-remap-async-to-generator": ^7.18.9
- "@babel/plugin-syntax-async-generators": ^7.8.4
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 111109ee118c9e69982f08d5e119eab04190b36a0f40e22e873802d941956eee66d2aa5a15f5321e51e3f9aa70a91136451b987fe15185ef8cc547ac88937723
- languageName: node
- linkType: hard
-
-"@babel/plugin-proposal-class-properties@npm:^7.12.1, @babel/plugin-proposal-class-properties@npm:^7.14.5, @babel/plugin-proposal-class-properties@npm:^7.18.6":
+"@babel/plugin-proposal-class-properties@npm:^7.12.1, @babel/plugin-proposal-class-properties@npm:^7.14.5":
version: 7.18.6
resolution: "@babel/plugin-proposal-class-properties@npm:7.18.6"
dependencies:
@@ -614,19 +588,6 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-proposal-class-static-block@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-proposal-class-static-block@npm:7.18.6"
- dependencies:
- "@babel/helper-create-class-features-plugin": ^7.18.6
- "@babel/helper-plugin-utils": ^7.18.6
- "@babel/plugin-syntax-class-static-block": ^7.14.5
- peerDependencies:
- "@babel/core": ^7.12.0
- checksum: b8d7ae99ed5ad784f39e7820e3ac03841f91d6ed60ab4a98c61d6112253da36013e12807bae4ffed0ef3cb318e47debac112ed614e03b403fb8b075b09a828ee
- languageName: node
- linkType: hard
-
"@babel/plugin-proposal-decorators@npm:^7.12.12, @babel/plugin-proposal-decorators@npm:^7.14.5":
version: 7.17.0
resolution: "@babel/plugin-proposal-decorators@npm:7.17.0"
@@ -642,18 +603,6 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-proposal-dynamic-import@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-proposal-dynamic-import@npm:7.18.6"
- dependencies:
- "@babel/helper-plugin-utils": ^7.18.6
- "@babel/plugin-syntax-dynamic-import": ^7.8.3
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 96b1c8a8ad8171d39e9ab106be33bde37ae09b22fb2c449afee9a5edf3c537933d79d963dcdc2694d10677cb96da739cdf1b53454e6a5deab9801f28a818bb2f
- languageName: node
- linkType: hard
-
"@babel/plugin-proposal-export-default-from@npm:^7.12.1":
version: 7.18.6
resolution: "@babel/plugin-proposal-export-default-from@npm:7.18.6"
@@ -666,43 +615,7 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-proposal-export-namespace-from@npm:>=7, @babel/plugin-proposal-export-namespace-from@npm:^7.18.9":
- version: 7.18.9
- resolution: "@babel/plugin-proposal-export-namespace-from@npm:7.18.9"
- dependencies:
- "@babel/helper-plugin-utils": ^7.18.9
- "@babel/plugin-syntax-export-namespace-from": ^7.8.3
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 84ff22bacc5d30918a849bfb7e0e90ae4c5b8d8b65f2ac881803d1cf9068dffbe53bd657b0e4bc4c20b4db301b1c85f1e74183cf29a0dd31e964bd4e97c363ef
- languageName: node
- linkType: hard
-
-"@babel/plugin-proposal-json-strings@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-proposal-json-strings@npm:7.18.6"
- dependencies:
- "@babel/helper-plugin-utils": ^7.18.6
- "@babel/plugin-syntax-json-strings": ^7.8.3
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 25ba0e6b9d6115174f51f7c6787e96214c90dd4026e266976b248a2ed417fe50fddae72843ffb3cbe324014a18632ce5648dfac77f089da858022b49fd608cb3
- languageName: node
- linkType: hard
-
-"@babel/plugin-proposal-logical-assignment-operators@npm:^7.18.9":
- version: 7.20.7
- resolution: "@babel/plugin-proposal-logical-assignment-operators@npm:7.20.7"
- dependencies:
- "@babel/helper-plugin-utils": ^7.20.2
- "@babel/plugin-syntax-logical-assignment-operators": ^7.10.4
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: cdd7b8136cc4db3f47714d5266f9e7b592a2ac5a94a5878787ce08890e97c8ab1ca8e94b27bfeba7b0f2b1549a026d9fc414ca2196de603df36fb32633bbdc19
- languageName: node
- linkType: hard
-
-"@babel/plugin-proposal-nullish-coalescing-operator@npm:^7.12.1, @babel/plugin-proposal-nullish-coalescing-operator@npm:^7.18.6":
+"@babel/plugin-proposal-nullish-coalescing-operator@npm:^7.12.1":
version: 7.18.6
resolution: "@babel/plugin-proposal-nullish-coalescing-operator@npm:7.18.6"
dependencies:
@@ -714,18 +627,6 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-proposal-numeric-separator@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-proposal-numeric-separator@npm:7.18.6"
- dependencies:
- "@babel/helper-plugin-utils": ^7.18.6
- "@babel/plugin-syntax-numeric-separator": ^7.10.4
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: f370ea584c55bf4040e1f78c80b4eeb1ce2e6aaa74f87d1a48266493c33931d0b6222d8cee3a082383d6bb648ab8d6b7147a06f974d3296ef3bc39c7851683ec
- languageName: node
- linkType: hard
-
"@babel/plugin-proposal-object-rest-spread@npm:7.12.1":
version: 7.12.1
resolution: "@babel/plugin-proposal-object-rest-spread@npm:7.12.1"
@@ -739,7 +640,7 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-proposal-object-rest-spread@npm:^7.12.1, @babel/plugin-proposal-object-rest-spread@npm:^7.20.2":
+"@babel/plugin-proposal-object-rest-spread@npm:^7.12.1":
version: 7.20.7
resolution: "@babel/plugin-proposal-object-rest-spread@npm:7.20.7"
dependencies:
@@ -754,19 +655,7 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-proposal-optional-catch-binding@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-proposal-optional-catch-binding@npm:7.18.6"
- dependencies:
- "@babel/helper-plugin-utils": ^7.18.6
- "@babel/plugin-syntax-optional-catch-binding": ^7.8.3
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 7b5b39fb5d8d6d14faad6cb68ece5eeb2fd550fb66b5af7d7582402f974f5bc3684641f7c192a5a57e0f59acfae4aada6786be1eba030881ddc590666eff4d1e
- languageName: node
- linkType: hard
-
-"@babel/plugin-proposal-optional-chaining@npm:^7.12.7, @babel/plugin-proposal-optional-chaining@npm:^7.18.9, @babel/plugin-proposal-optional-chaining@npm:^7.20.7":
+"@babel/plugin-proposal-optional-chaining@npm:^7.12.7":
version: 7.20.7
resolution: "@babel/plugin-proposal-optional-chaining@npm:7.20.7"
dependencies:
@@ -779,7 +668,7 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-proposal-private-methods@npm:^7.12.1, @babel/plugin-proposal-private-methods@npm:^7.18.6":
+"@babel/plugin-proposal-private-methods@npm:^7.12.1":
version: 7.18.6
resolution: "@babel/plugin-proposal-private-methods@npm:7.18.6"
dependencies:
@@ -791,7 +680,16 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-proposal-private-property-in-object@npm:^7.12.1, @babel/plugin-proposal-private-property-in-object@npm:^7.18.6":
+"@babel/plugin-proposal-private-property-in-object@npm:7.21.0-placeholder-for-preset-env.2":
+ version: 7.21.0-placeholder-for-preset-env.2
+ resolution: "@babel/plugin-proposal-private-property-in-object@npm:7.21.0-placeholder-for-preset-env.2"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: d97745d098b835d55033ff3a7fb2b895b9c5295b08a5759e4f20df325aa385a3e0bc9bd5ad8f2ec554a44d4e6525acfc257b8c5848a1345cb40f26a30e277e91
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-proposal-private-property-in-object@npm:^7.12.1":
version: 7.20.5
resolution: "@babel/plugin-proposal-private-property-in-object@npm:7.20.5"
dependencies:
@@ -805,18 +703,6 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-proposal-unicode-property-regex@npm:^7.18.6, @babel/plugin-proposal-unicode-property-regex@npm:^7.4.4":
- version: 7.18.6
- resolution: "@babel/plugin-proposal-unicode-property-regex@npm:7.18.6"
- dependencies:
- "@babel/helper-create-regexp-features-plugin": ^7.18.6
- "@babel/helper-plugin-utils": ^7.18.6
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: a8575ecb7ff24bf6c6e94808d5c84bb5a0c6dd7892b54f09f4646711ba0ee1e1668032b3c43e3e1dfec2c5716c302e851ac756c1645e15882d73df6ad21ae951
- languageName: node
- linkType: hard
-
"@babel/plugin-syntax-async-generators@npm:^7.8.4":
version: 7.8.4
resolution: "@babel/plugin-syntax-async-generators@npm:7.8.4"
@@ -872,7 +758,7 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-syntax-dynamic-import@npm:>=7, @babel/plugin-syntax-dynamic-import@npm:^7.8.3":
+"@babel/plugin-syntax-dynamic-import@npm:^7.8.3":
version: 7.8.3
resolution: "@babel/plugin-syntax-dynamic-import@npm:7.8.3"
dependencies:
@@ -916,18 +802,29 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-syntax-import-assertions@npm:^7.20.0":
- version: 7.20.0
- resolution: "@babel/plugin-syntax-import-assertions@npm:7.20.0"
+"@babel/plugin-syntax-import-assertions@npm:^7.22.5":
+ version: 7.22.5
+ resolution: "@babel/plugin-syntax-import-assertions@npm:7.22.5"
dependencies:
- "@babel/helper-plugin-utils": ^7.19.0
+ "@babel/helper-plugin-utils": ^7.22.5
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 6a86220e0aae40164cd3ffaf80e7c076a1be02a8f3480455dddbae05fda8140f429290027604df7a11b3f3f124866e8a6d69dbfa1dda61ee7377b920ad144d5b
+ checksum: 2b8b5572db04a7bef1e6cd20debf447e4eef7cb012616f5eceb8fa3e23ce469b8f76ee74fd6d1e158ba17a8f58b0aec579d092fb67c5a30e83ccfbc5754916c1
languageName: node
linkType: hard
-"@babel/plugin-syntax-import-meta@npm:^7.8.3":
+"@babel/plugin-syntax-import-attributes@npm:^7.22.5":
+ version: 7.22.5
+ resolution: "@babel/plugin-syntax-import-attributes@npm:7.22.5"
+ dependencies:
+ "@babel/helper-plugin-utils": ^7.22.5
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 197b3c5ea2a9649347f033342cb222ab47f4645633695205c0250c6bf2af29e643753b8bb24a2db39948bef08e7c540babfd365591eb57fc110cb30b425ffc47
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-syntax-import-meta@npm:^7.10.4, @babel/plugin-syntax-import-meta@npm:^7.8.3":
version: 7.10.4
resolution: "@babel/plugin-syntax-import-meta@npm:7.10.4"
dependencies:
@@ -1070,126 +967,201 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-transform-arrow-functions@npm:^7.12.1, @babel/plugin-transform-arrow-functions@npm:^7.18.6":
+"@babel/plugin-syntax-unicode-sets-regex@npm:^7.18.6":
version: 7.18.6
- resolution: "@babel/plugin-transform-arrow-functions@npm:7.18.6"
+ resolution: "@babel/plugin-syntax-unicode-sets-regex@npm:7.18.6"
dependencies:
+ "@babel/helper-create-regexp-features-plugin": ^7.18.6
"@babel/helper-plugin-utils": ^7.18.6
+ peerDependencies:
+ "@babel/core": ^7.0.0
+ checksum: a651d700fe63ff0ddfd7186f4ebc24447ca734f114433139e3c027bc94a900d013cf1ef2e2db8430425ba542e39ae160c3b05f06b59fd4656273a3df97679e9c
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-arrow-functions@npm:^7.12.1, @babel/plugin-transform-arrow-functions@npm:^7.22.5":
+ version: 7.22.5
+ resolution: "@babel/plugin-transform-arrow-functions@npm:7.22.5"
+ dependencies:
+ "@babel/helper-plugin-utils": ^7.22.5
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 900f5c695755062b91eec74da6f9092f40b8fada099058b92576f1e23c55e9813ec437051893a9b3c05cefe39e8ac06303d4a91b384e1c03dd8dc1581ea11602
+ checksum: 35abb6c57062802c7ce8bd96b2ef2883e3124370c688bbd67609f7d2453802fb73944df8808f893b6c67de978eb2bcf87bbfe325e46d6f39b5fcb09ece11d01a
languageName: node
linkType: hard
-"@babel/plugin-transform-async-to-generator@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-transform-async-to-generator@npm:7.18.6"
+"@babel/plugin-transform-async-generator-functions@npm:^7.22.15":
+ version: 7.22.15
+ resolution: "@babel/plugin-transform-async-generator-functions@npm:7.22.15"
dependencies:
- "@babel/helper-module-imports": ^7.18.6
- "@babel/helper-plugin-utils": ^7.18.6
- "@babel/helper-remap-async-to-generator": ^7.18.6
+ "@babel/helper-environment-visitor": ^7.22.5
+ "@babel/helper-plugin-utils": ^7.22.5
+ "@babel/helper-remap-async-to-generator": ^7.22.9
+ "@babel/plugin-syntax-async-generators": ^7.8.4
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: c2cca47468cf1aeefdc7ec35d670e195c86cee4de28a1970648c46a88ce6bd1806ef0bab27251b9e7fb791bb28a64dcd543770efd899f28ee5f7854e64e873d3
+ checksum: fad98786b446ce63bde0d14a221e2617eef5a7bbca62b49d96f16ab5e1694521234cfba6145b830fbf9af16d60a8a3dbf148e8694830bd91796fe333b0599e73
languageName: node
linkType: hard
-"@babel/plugin-transform-block-scoped-functions@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-transform-block-scoped-functions@npm:7.18.6"
+"@babel/plugin-transform-async-to-generator@npm:^7.22.5":
+ version: 7.22.5
+ resolution: "@babel/plugin-transform-async-to-generator@npm:7.22.5"
dependencies:
- "@babel/helper-plugin-utils": ^7.18.6
+ "@babel/helper-module-imports": ^7.22.5
+ "@babel/helper-plugin-utils": ^7.22.5
+ "@babel/helper-remap-async-to-generator": ^7.22.5
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 0a0df61f94601e3666bf39f2cc26f5f7b22a94450fb93081edbed967bd752ce3f81d1227fefd3799f5ee2722171b5e28db61379234d1bb85b6ec689589f99d7e
+ checksum: b95f23f99dcb379a9f0a1c2a3bbea3f8dc0e1b16dc1ac8b484fe378370169290a7a63d520959a9ba1232837cf74a80e23f6facbe14fd42a3cda6d3c2d7168e62
languageName: node
linkType: hard
-"@babel/plugin-transform-block-scoping@npm:^7.12.12, @babel/plugin-transform-block-scoping@npm:^7.20.2":
- version: 7.20.15
- resolution: "@babel/plugin-transform-block-scoping@npm:7.20.15"
+"@babel/plugin-transform-block-scoped-functions@npm:^7.22.5":
+ version: 7.22.5
+ resolution: "@babel/plugin-transform-block-scoped-functions@npm:7.22.5"
dependencies:
- "@babel/helper-plugin-utils": ^7.20.2
+ "@babel/helper-plugin-utils": ^7.22.5
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 1dddf7be578306837074cb5059f8408af0b1c0bfcf922ed920d4aa65d08fb7c6e6129ca254e9879c4c6d2a6be4937111551f51922e8b0e071ed16eb6564a4dbb
+ checksum: 416b1341858e8ca4e524dee66044735956ced5f478b2c3b9bc11ec2285b0c25d7dbb96d79887169eb938084c95d0a89338c8b2fe70d473bd9dc92e5d9db1732c
languageName: node
linkType: hard
-"@babel/plugin-transform-classes@npm:^7.12.1, @babel/plugin-transform-classes@npm:^7.20.2":
- version: 7.20.7
- resolution: "@babel/plugin-transform-classes@npm:7.20.7"
+"@babel/plugin-transform-block-scoping@npm:^7.12.12, @babel/plugin-transform-block-scoping@npm:^7.22.15":
+ version: 7.23.0
+ resolution: "@babel/plugin-transform-block-scoping@npm:7.23.0"
dependencies:
- "@babel/helper-annotate-as-pure": ^7.18.6
- "@babel/helper-compilation-targets": ^7.20.7
- "@babel/helper-environment-visitor": ^7.18.9
- "@babel/helper-function-name": ^7.19.0
- "@babel/helper-optimise-call-expression": ^7.18.6
- "@babel/helper-plugin-utils": ^7.20.2
- "@babel/helper-replace-supers": ^7.20.7
- "@babel/helper-split-export-declaration": ^7.18.6
+ "@babel/helper-plugin-utils": ^7.22.5
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 0cfe925cc3b5a3ad407e2253fab3ceeaa117a4b291c9cb245578880872999bca91bd83ffa0128ae9ca356330702e1ef1dcb26804f28d2cef678239caf629f73e
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-class-properties@npm:^7.22.5":
+ version: 7.22.5
+ resolution: "@babel/plugin-transform-class-properties@npm:7.22.5"
+ dependencies:
+ "@babel/helper-create-class-features-plugin": ^7.22.5
+ "@babel/helper-plugin-utils": ^7.22.5
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: b830152dfc2ff2f647f0abe76e6251babdfbef54d18c4b2c73a6bf76b1a00050a5d998dac80dc901a48514e95604324943a9dd39317073fe0928b559e0e0c579
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-class-static-block@npm:^7.22.11":
+ version: 7.22.11
+ resolution: "@babel/plugin-transform-class-static-block@npm:7.22.11"
+ dependencies:
+ "@babel/helper-create-class-features-plugin": ^7.22.11
+ "@babel/helper-plugin-utils": ^7.22.5
+ "@babel/plugin-syntax-class-static-block": ^7.14.5
+ peerDependencies:
+ "@babel/core": ^7.12.0
+ checksum: 69f040506fad66f1c6918d288d0e0edbc5c8a07c8b4462c1184ad2f9f08995d68b057126c213871c0853ae0c72afc60ec87492049dfacb20902e32346a448bcb
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-classes@npm:^7.12.1, @babel/plugin-transform-classes@npm:^7.22.15":
+ version: 7.22.15
+ resolution: "@babel/plugin-transform-classes@npm:7.22.15"
+ dependencies:
+ "@babel/helper-annotate-as-pure": ^7.22.5
+ "@babel/helper-compilation-targets": ^7.22.15
+ "@babel/helper-environment-visitor": ^7.22.5
+ "@babel/helper-function-name": ^7.22.5
+ "@babel/helper-optimise-call-expression": ^7.22.5
+ "@babel/helper-plugin-utils": ^7.22.5
+ "@babel/helper-replace-supers": ^7.22.9
+ "@babel/helper-split-export-declaration": ^7.22.6
globals: ^11.1.0
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 4cf55ad88e52c7c66a991add4c8e1c3324384bd52df7085962d396879561456a44352e5ab1725cc80f4e83737a2931e847c4a96c7aa4a549357f23631ff31799
+ checksum: d3f4d0c107dd8a3557ea3575cc777fab27efa92958b41e4a9822f7499725c1f554beae58855de16ddec0a7b694e45f59a26cea8fbde4275563f72f09c6e039a0
languageName: node
linkType: hard
-"@babel/plugin-transform-computed-properties@npm:^7.18.9":
- version: 7.20.7
- resolution: "@babel/plugin-transform-computed-properties@npm:7.20.7"
+"@babel/plugin-transform-computed-properties@npm:^7.22.5":
+ version: 7.22.5
+ resolution: "@babel/plugin-transform-computed-properties@npm:7.22.5"
dependencies:
- "@babel/helper-plugin-utils": ^7.20.2
- "@babel/template": ^7.20.7
+ "@babel/helper-plugin-utils": ^7.22.5
+ "@babel/template": ^7.22.5
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: be70e54bda8b469146459f429e5f2bd415023b87b2d5af8b10e48f465ffb02847a3ed162ca60378c004b82db848e4d62e90010d41ded7e7176b6d8d1c2911139
+ checksum: c2a77a0f94ec71efbc569109ec14ea2aa925b333289272ced8b33c6108bdbb02caf01830ffc7e49486b62dec51911924d13f3a76f1149f40daace1898009e131
languageName: node
linkType: hard
-"@babel/plugin-transform-destructuring@npm:^7.12.1, @babel/plugin-transform-destructuring@npm:^7.20.2":
- version: 7.20.7
- resolution: "@babel/plugin-transform-destructuring@npm:7.20.7"
+"@babel/plugin-transform-destructuring@npm:^7.12.1, @babel/plugin-transform-destructuring@npm:^7.22.15":
+ version: 7.23.0
+ resolution: "@babel/plugin-transform-destructuring@npm:7.23.0"
dependencies:
- "@babel/helper-plugin-utils": ^7.20.2
+ "@babel/helper-plugin-utils": ^7.22.5
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: bd8affdb142c77662037215e37128b2110a786c92a67e1f00b38223c438c1610bd84cbc0386e9cd3479245ea811c5ca6c9838f49be4729b592159a30ce79add2
+ checksum: cd6dd454ccc2766be551e4f8a04b1acc2aa539fa19e5c7501c56cc2f8cc921dd41a7ffb78455b4c4b2f954fcab8ca4561ba7c9c7bd5af9f19465243603d18cc3
languageName: node
linkType: hard
-"@babel/plugin-transform-dotall-regex@npm:^7.18.6, @babel/plugin-transform-dotall-regex@npm:^7.4.4":
- version: 7.18.6
- resolution: "@babel/plugin-transform-dotall-regex@npm:7.18.6"
+"@babel/plugin-transform-dotall-regex@npm:^7.22.5":
+ version: 7.22.5
+ resolution: "@babel/plugin-transform-dotall-regex@npm:7.22.5"
dependencies:
- "@babel/helper-create-regexp-features-plugin": ^7.18.6
- "@babel/helper-plugin-utils": ^7.18.6
+ "@babel/helper-create-regexp-features-plugin": ^7.22.5
+ "@babel/helper-plugin-utils": ^7.22.5
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: cbe5d7063eb8f8cca24cd4827bc97f5641166509e58781a5f8aa47fb3d2d786ce4506a30fca2e01f61f18792783a5cb5d96bf5434c3dd1ad0de8c9cc625a53da
+ checksum: 409b658d11e3082c8f69e9cdef2d96e4d6d11256f005772425fb230cc48fd05945edbfbcb709dab293a1a2f01f9c8a5bb7b4131e632b23264039d9f95864b453
languageName: node
linkType: hard
-"@babel/plugin-transform-duplicate-keys@npm:^7.18.9":
- version: 7.18.9
- resolution: "@babel/plugin-transform-duplicate-keys@npm:7.18.9"
+"@babel/plugin-transform-duplicate-keys@npm:^7.22.5":
+ version: 7.22.5
+ resolution: "@babel/plugin-transform-duplicate-keys@npm:7.22.5"
dependencies:
- "@babel/helper-plugin-utils": ^7.18.9
+ "@babel/helper-plugin-utils": ^7.22.5
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 220bf4a9fec5c4d4a7b1de38810350260e8ea08481bf78332a464a21256a95f0df8cd56025f346238f09b04f8e86d4158fafc9f4af57abaef31637e3b58bd4fe
+ checksum: bb1280fbabaab6fab2ede585df34900712698210a3bd413f4df5bae6d8c24be36b496c92722ae676a7a67d060a4624f4d6c23b923485f906bfba8773c69f55b4
languageName: node
linkType: hard
-"@babel/plugin-transform-exponentiation-operator@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-transform-exponentiation-operator@npm:7.18.6"
+"@babel/plugin-transform-dynamic-import@npm:^7.22.11":
+ version: 7.22.11
+ resolution: "@babel/plugin-transform-dynamic-import@npm:7.22.11"
dependencies:
- "@babel/helper-builder-binary-assignment-operator-visitor": ^7.18.6
- "@babel/helper-plugin-utils": ^7.18.6
+ "@babel/helper-plugin-utils": ^7.22.5
+ "@babel/plugin-syntax-dynamic-import": ^7.8.3
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 78fc9c532210bf9e8f231747f542318568ac360ee6c27e80853962c984283c73da3f8f8aebe83c2096090a435b356b092ed85de617a156cbe0729d847632be45
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-exponentiation-operator@npm:^7.22.5":
+ version: 7.22.5
+ resolution: "@babel/plugin-transform-exponentiation-operator@npm:7.22.5"
+ dependencies:
+ "@babel/helper-builder-binary-assignment-operator-visitor": ^7.22.5
+ "@babel/helper-plugin-utils": ^7.22.5
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 7f70222f6829c82a36005508d34ddbe6fd0974ae190683a8670dd6ff08669aaf51fef2209d7403f9bd543cb2d12b18458016c99a6ed0332ccedb3ea127b01229
+ checksum: f2d660c1b1d51ad5fec1cd5ad426a52187204068c4158f8c4aa977b31535c61b66898d532603eef21c15756827be8277f724c869b888d560f26d7fe848bb5eae
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-export-namespace-from@npm:^7.22.11":
+ version: 7.22.11
+ resolution: "@babel/plugin-transform-export-namespace-from@npm:7.22.11"
+ dependencies:
+ "@babel/helper-plugin-utils": ^7.22.5
+ "@babel/plugin-syntax-export-namespace-from": ^7.8.3
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 73af5883a321ed56a4bfd43c8a7de0164faebe619287706896fc6ee2f7a4e69042adaa1338c0b8b4bdb9f7e5fdceb016fb1d40694cb43ca3b8827429e8aac4bf
languageName: node
linkType: hard
@@ -1205,157 +1177,271 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-transform-for-of@npm:^7.12.1, @babel/plugin-transform-for-of@npm:^7.18.8":
- version: 7.18.8
- resolution: "@babel/plugin-transform-for-of@npm:7.18.8"
+"@babel/plugin-transform-for-of@npm:^7.12.1, @babel/plugin-transform-for-of@npm:^7.22.15":
+ version: 7.22.15
+ resolution: "@babel/plugin-transform-for-of@npm:7.22.15"
dependencies:
- "@babel/helper-plugin-utils": ^7.18.6
+ "@babel/helper-plugin-utils": ^7.22.5
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: ca64c623cf0c7a80ab6f07ebd3e6e4ade95e2ae806696f70b43eafe6394fa8ce21f2b1ffdd15df2067f7363d2ecfe26472a97c6c774403d2163fa05f50c98f17
+ checksum: f395ae7bce31e14961460f56cf751b5d6e37dd27d7df5b1f4e49fec1c11b6f9cf71991c7ffbe6549878591e87df0d66af798cf26edfa4bfa6b4c3dba1fb2f73a
languageName: node
linkType: hard
-"@babel/plugin-transform-function-name@npm:^7.18.9":
- version: 7.18.9
- resolution: "@babel/plugin-transform-function-name@npm:7.18.9"
+"@babel/plugin-transform-function-name@npm:^7.22.5":
+ version: 7.22.5
+ resolution: "@babel/plugin-transform-function-name@npm:7.22.5"
dependencies:
- "@babel/helper-compilation-targets": ^7.18.9
- "@babel/helper-function-name": ^7.18.9
- "@babel/helper-plugin-utils": ^7.18.9
+ "@babel/helper-compilation-targets": ^7.22.5
+ "@babel/helper-function-name": ^7.22.5
+ "@babel/helper-plugin-utils": ^7.22.5
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 62dd9c6cdc9714704efe15545e782ee52d74dc73916bf954b4d3bee088fb0ec9e3c8f52e751252433656c09f744b27b757fc06ed99bcde28e8a21600a1d8e597
+ checksum: cff3b876357999cb8ae30e439c3ec6b0491a53b0aa6f722920a4675a6dd5b53af97a833051df4b34791fe5b3dd326ccf769d5c8e45b322aa50ee11a660b17845
languageName: node
linkType: hard
-"@babel/plugin-transform-literals@npm:^7.18.9":
- version: 7.18.9
- resolution: "@babel/plugin-transform-literals@npm:7.18.9"
+"@babel/plugin-transform-json-strings@npm:^7.22.11":
+ version: 7.22.11
+ resolution: "@babel/plugin-transform-json-strings@npm:7.22.11"
dependencies:
- "@babel/helper-plugin-utils": ^7.18.9
+ "@babel/helper-plugin-utils": ^7.22.5
+ "@babel/plugin-syntax-json-strings": ^7.8.3
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 3458dd2f1a47ac51d9d607aa18f3d321cbfa8560a985199185bed5a906bb0c61ba85575d386460bac9aed43fdd98940041fae5a67dff286f6f967707cff489f8
+ checksum: 50665e5979e66358c50e90a26db53c55917f78175127ac2fa05c7888d156d418ffb930ec0a109353db0a7c5f57c756ce01bfc9825d24cbfd2b3ec453f2ed8cba
languageName: node
linkType: hard
-"@babel/plugin-transform-member-expression-literals@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-transform-member-expression-literals@npm:7.18.6"
+"@babel/plugin-transform-literals@npm:^7.22.5":
+ version: 7.22.5
+ resolution: "@babel/plugin-transform-literals@npm:7.22.5"
dependencies:
- "@babel/helper-plugin-utils": ^7.18.6
+ "@babel/helper-plugin-utils": ^7.22.5
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 35a3d04f6693bc6b298c05453d85ee6e41cc806538acb6928427e0e97ae06059f97d2f07d21495fcf5f70d3c13a242e2ecbd09d5c1fcb1b1a73ff528dcb0b695
+ checksum: ec37cc2ffb32667af935ab32fe28f00920ec8a1eb999aa6dc6602f2bebd8ba205a558aeedcdccdebf334381d5c57106c61f52332045730393e73410892a9735b
languageName: node
linkType: hard
-"@babel/plugin-transform-modules-amd@npm:^7.19.6":
- version: 7.20.11
- resolution: "@babel/plugin-transform-modules-amd@npm:7.20.11"
+"@babel/plugin-transform-logical-assignment-operators@npm:^7.22.11":
+ version: 7.22.11
+ resolution: "@babel/plugin-transform-logical-assignment-operators@npm:7.22.11"
dependencies:
- "@babel/helper-module-transforms": ^7.20.11
- "@babel/helper-plugin-utils": ^7.20.2
+ "@babel/helper-plugin-utils": ^7.22.5
+ "@babel/plugin-syntax-logical-assignment-operators": ^7.10.4
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 23665c1c20c8f11c89382b588fb9651c0756d130737a7625baeaadbd3b973bc5bfba1303bedffa8fb99db1e6d848afb01016e1df2b69b18303e946890c790001
+ checksum: c664e9798e85afa7f92f07b867682dee7392046181d82f5d21bae6f2ca26dfe9c8375cdc52b7483c3fc09a983c1989f60eff9fbc4f373b0c0a74090553d05739
languageName: node
linkType: hard
-"@babel/plugin-transform-modules-commonjs@npm:^7.18.2, @babel/plugin-transform-modules-commonjs@npm:^7.19.6":
- version: 7.20.11
- resolution: "@babel/plugin-transform-modules-commonjs@npm:7.20.11"
+"@babel/plugin-transform-member-expression-literals@npm:^7.22.5":
+ version: 7.22.5
+ resolution: "@babel/plugin-transform-member-expression-literals@npm:7.22.5"
dependencies:
- "@babel/helper-module-transforms": ^7.20.11
- "@babel/helper-plugin-utils": ^7.20.2
- "@babel/helper-simple-access": ^7.20.2
+ "@babel/helper-plugin-utils": ^7.22.5
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: ddd0623e2ad4b5c0faaa0ae30d3407a3fa484d911c968ed33cfb1b339ac3691321c959db60b66dc136dbd67770fff586f7e48a7ce0d7d357f92d6ef6fb7ed1a7
+ checksum: ec4b0e07915ddd4fda0142fd104ee61015c208608a84cfa13643a95d18760b1dc1ceb6c6e0548898b8c49e5959a994e46367260176dbabc4467f729b21868504
languageName: node
linkType: hard
-"@babel/plugin-transform-modules-systemjs@npm:^7.19.6":
- version: 7.20.11
- resolution: "@babel/plugin-transform-modules-systemjs@npm:7.20.11"
+"@babel/plugin-transform-modules-amd@npm:^7.22.5":
+ version: 7.23.0
+ resolution: "@babel/plugin-transform-modules-amd@npm:7.23.0"
dependencies:
- "@babel/helper-hoist-variables": ^7.18.6
- "@babel/helper-module-transforms": ^7.20.11
- "@babel/helper-plugin-utils": ^7.20.2
- "@babel/helper-validator-identifier": ^7.19.1
+ "@babel/helper-module-transforms": ^7.23.0
+ "@babel/helper-plugin-utils": ^7.22.5
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 4546c47587f88156d66c7eb7808e903cf4bb3f6ba6ac9bc8e3af2e29e92eb9f0b3f44d52043bfd24eb25fa7827fd7b6c8bfeac0cac7584e019b87e1ecbd0e673
+ checksum: 5d92875170a37b8282d4bcd805f55829b8fab0f9c8d08b53d32a7a0bfdc62b868e489b52d329ae768ecafc0c993eed0ad7a387baa673ac33211390a9f833ab5d
languageName: node
linkType: hard
-"@babel/plugin-transform-modules-umd@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-transform-modules-umd@npm:7.18.6"
+"@babel/plugin-transform-modules-commonjs@npm:^7.22.15":
+ version: 7.23.0
+ resolution: "@babel/plugin-transform-modules-commonjs@npm:7.23.0"
dependencies:
- "@babel/helper-module-transforms": ^7.18.6
- "@babel/helper-plugin-utils": ^7.18.6
+ "@babel/helper-module-transforms": ^7.23.0
+ "@babel/helper-plugin-utils": ^7.22.5
+ "@babel/helper-simple-access": ^7.22.5
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: c3b6796c6f4579f1ba5ab0cdcc73910c1e9c8e1e773c507c8bb4da33072b3ae5df73c6d68f9126dab6e99c24ea8571e1563f8710d7c421fac1cde1e434c20153
+ checksum: 7fb25997194053e167c4207c319ff05362392da841bd9f42ddb3caf9c8798a5d203bd926d23ddf5830fdf05eddc82c2810f40d1287e3a4f80b07eff13d1024b5
languageName: node
linkType: hard
-"@babel/plugin-transform-named-capturing-groups-regex@npm:^7.19.1":
- version: 7.20.5
- resolution: "@babel/plugin-transform-named-capturing-groups-regex@npm:7.20.5"
+"@babel/plugin-transform-modules-systemjs@npm:^7.22.11":
+ version: 7.23.0
+ resolution: "@babel/plugin-transform-modules-systemjs@npm:7.23.0"
dependencies:
- "@babel/helper-create-regexp-features-plugin": ^7.20.5
- "@babel/helper-plugin-utils": ^7.20.2
+ "@babel/helper-hoist-variables": ^7.22.5
+ "@babel/helper-module-transforms": ^7.23.0
+ "@babel/helper-plugin-utils": ^7.22.5
+ "@babel/helper-validator-identifier": ^7.22.20
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 2d481458b22605046badea2317d5cc5c94ac3031c2293e34c96f02063f5b02af0979c4da6a8fbc67cc249541575dc9c6d710db6b919ede70b7337a22d9fd57a7
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-modules-umd@npm:^7.22.5":
+ version: 7.22.5
+ resolution: "@babel/plugin-transform-modules-umd@npm:7.22.5"
+ dependencies:
+ "@babel/helper-module-transforms": ^7.22.5
+ "@babel/helper-plugin-utils": ^7.22.5
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 46622834c54c551b231963b867adbc80854881b3e516ff29984a8da989bd81665bd70e8cba6710345248e97166689310f544aee1a5773e262845a8f1b3e5b8b4
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-named-capturing-groups-regex@npm:^7.22.5":
+ version: 7.22.5
+ resolution: "@babel/plugin-transform-named-capturing-groups-regex@npm:7.22.5"
+ dependencies:
+ "@babel/helper-create-regexp-features-plugin": ^7.22.5
+ "@babel/helper-plugin-utils": ^7.22.5
peerDependencies:
"@babel/core": ^7.0.0
- checksum: 528c95fb1087e212f17e1c6456df041b28a83c772b9c93d2e407c9d03b72182b0d9d126770c1d6e0b23aab052599ceaf25ed6a2c0627f4249be34a83f6fae853
+ checksum: 3ee564ddee620c035b928fdc942c5d17e9c4b98329b76f9cefac65c111135d925eb94ed324064cd7556d4f5123beec79abea1d4b97d1c8a2a5c748887a2eb623
languageName: node
linkType: hard
-"@babel/plugin-transform-new-target@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-transform-new-target@npm:7.18.6"
+"@babel/plugin-transform-new-target@npm:^7.22.5":
+ version: 7.22.5
+ resolution: "@babel/plugin-transform-new-target@npm:7.22.5"
dependencies:
- "@babel/helper-plugin-utils": ^7.18.6
+ "@babel/helper-plugin-utils": ^7.22.5
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: bd780e14f46af55d0ae8503b3cb81ca86dcc73ed782f177e74f498fff934754f9e9911df1f8f3bd123777eed7c1c1af4d66abab87c8daae5403e7719a6b845d1
+ checksum: 6b72112773487a881a1d6ffa680afde08bad699252020e86122180ee7a88854d5da3f15d9bca3331cf2e025df045604494a8208a2e63b486266b07c14e2ffbf3
languageName: node
linkType: hard
-"@babel/plugin-transform-object-super@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-transform-object-super@npm:7.18.6"
+"@babel/plugin-transform-nullish-coalescing-operator@npm:^7.22.11":
+ version: 7.22.11
+ resolution: "@babel/plugin-transform-nullish-coalescing-operator@npm:7.22.11"
dependencies:
- "@babel/helper-plugin-utils": ^7.18.6
- "@babel/helper-replace-supers": ^7.18.6
+ "@babel/helper-plugin-utils": ^7.22.5
+ "@babel/plugin-syntax-nullish-coalescing-operator": ^7.8.3
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 0fcb04e15deea96ae047c21cb403607d49f06b23b4589055993365ebd7a7d7541334f06bf9642e90075e66efce6ebaf1eb0ef066fbbab802d21d714f1aac3aef
+ checksum: 167babecc8b8fe70796a7b7d34af667ebbf43da166c21689502e5e8cc93180b7a85979c77c9f64b7cce431b36718bd0a6df9e5e0ffea4ae22afb22cfef886372
languageName: node
linkType: hard
-"@babel/plugin-transform-parameters@npm:^7.12.1, @babel/plugin-transform-parameters@npm:^7.20.1, @babel/plugin-transform-parameters@npm:^7.20.7":
- version: 7.20.7
- resolution: "@babel/plugin-transform-parameters@npm:7.20.7"
+"@babel/plugin-transform-numeric-separator@npm:^7.22.11":
+ version: 7.22.11
+ resolution: "@babel/plugin-transform-numeric-separator@npm:7.22.11"
dependencies:
- "@babel/helper-plugin-utils": ^7.20.2
+ "@babel/helper-plugin-utils": ^7.22.5
+ "@babel/plugin-syntax-numeric-separator": ^7.10.4
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 6ffe0dd9afb2d2b9bc247381aa2e95dd9997ff5568a0a11900528919a4e073ac68f46409431455badb8809644d47cff180045bc2b9700e3f36e3b23554978947
+ checksum: af064d06a4a041767ec396a5f258103f64785df290e038bba9f0ef454e6c914f2ac45d862bbdad8fac2c7ad47fa4e95356f29053c60c100a0160b02a995fe2a3
languageName: node
linkType: hard
-"@babel/plugin-transform-property-literals@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-transform-property-literals@npm:7.18.6"
+"@babel/plugin-transform-object-rest-spread@npm:^7.22.15":
+ version: 7.22.15
+ resolution: "@babel/plugin-transform-object-rest-spread@npm:7.22.15"
dependencies:
- "@babel/helper-plugin-utils": ^7.18.6
+ "@babel/compat-data": ^7.22.9
+ "@babel/helper-compilation-targets": ^7.22.15
+ "@babel/helper-plugin-utils": ^7.22.5
+ "@babel/plugin-syntax-object-rest-spread": ^7.8.3
+ "@babel/plugin-transform-parameters": ^7.22.15
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 62197a6f12289c1c1bd57f3bed9f0f765ca32390bfe91e0b5561dd94dd9770f4480c4162dec98da094bc0ba99d2c2ebba68de47c019454041b0b7a68ba2ec66d
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-object-super@npm:^7.22.5":
+ version: 7.22.5
+ resolution: "@babel/plugin-transform-object-super@npm:7.22.5"
+ dependencies:
+ "@babel/helper-plugin-utils": ^7.22.5
+ "@babel/helper-replace-supers": ^7.22.5
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: b71887877d74cb64dbccb5c0324fa67e31171e6a5311991f626650e44a4083e5436a1eaa89da78c0474fb095d4ec322d63ee778b202d33aa2e4194e1ed8e62d7
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-optional-catch-binding@npm:^7.22.11":
+ version: 7.22.11
+ resolution: "@babel/plugin-transform-optional-catch-binding@npm:7.22.11"
+ dependencies:
+ "@babel/helper-plugin-utils": ^7.22.5
+ "@babel/plugin-syntax-optional-catch-binding": ^7.8.3
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: f17abd90e1de67c84d63afea29c8021c74abb2794d3a6eeafb0bbe7372d3db32aefca386e392116ec63884537a4a2815d090d26264d259bacc08f6e3ed05294c
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-optional-chaining@npm:^7.22.15":
+ version: 7.23.0
+ resolution: "@babel/plugin-transform-optional-chaining@npm:7.23.0"
+ dependencies:
+ "@babel/helper-plugin-utils": ^7.22.5
+ "@babel/helper-skip-transparent-expression-wrappers": ^7.22.5
+ "@babel/plugin-syntax-optional-chaining": ^7.8.3
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: f702634f2b97e5260dbec0d4bde05ccb6f4d96d7bfa946481aeacfa205ca846cb6e096a38312f9d51fdbdac1f258f211138c5f7075952e46a5bf8574de6a1329
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-parameters@npm:^7.12.1, @babel/plugin-transform-parameters@npm:^7.20.7, @babel/plugin-transform-parameters@npm:^7.22.15":
+ version: 7.22.15
+ resolution: "@babel/plugin-transform-parameters@npm:7.22.15"
+ dependencies:
+ "@babel/helper-plugin-utils": ^7.22.5
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 541188bb7d1876cad87687b5c7daf90f63d8208ae83df24acb1e2b05020ad1c78786b2723ca4054a83fcb74fb6509f30c4cacc5b538ee684224261ad5fb047c1
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-private-methods@npm:^7.22.5":
+ version: 7.22.5
+ resolution: "@babel/plugin-transform-private-methods@npm:7.22.5"
+ dependencies:
+ "@babel/helper-create-class-features-plugin": ^7.22.5
+ "@babel/helper-plugin-utils": ^7.22.5
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 321479b4fcb6d3b3ef622ab22fd24001e43d46e680e8e41324c033d5810c84646e470f81b44cbcbef5c22e99030784f7cac92f1829974da7a47a60a7139082c3
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-private-property-in-object@npm:^7.22.11":
+ version: 7.22.11
+ resolution: "@babel/plugin-transform-private-property-in-object@npm:7.22.11"
+ dependencies:
+ "@babel/helper-annotate-as-pure": ^7.22.5
+ "@babel/helper-create-class-features-plugin": ^7.22.11
+ "@babel/helper-plugin-utils": ^7.22.5
+ "@babel/plugin-syntax-private-property-in-object": ^7.14.5
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 4d029d84901e53c46dead7a46e2990a7bc62470f4e4ca58a0d063394f86652fd58fe4eea1eb941da3669cd536b559b9d058b342b59300026346b7a2a51badac8
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-property-literals@npm:^7.22.5":
+ version: 7.22.5
+ resolution: "@babel/plugin-transform-property-literals@npm:7.22.5"
+ dependencies:
+ "@babel/helper-plugin-utils": ^7.22.5
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 1c16e64de554703f4b547541de2edda6c01346dd3031d4d29e881aa7733785cd26d53611a4ccf5353f4d3e69097bb0111c0a93ace9e683edd94fea28c4484144
+ checksum: 796176a3176106f77fcb8cd04eb34a8475ce82d6d03a88db089531b8f0453a2fb8b0c6ec9a52c27948bc0ea478becec449893741fc546dfc3930ab927e3f9f2e
languageName: node
linkType: hard
@@ -1419,98 +1505,98 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-transform-regenerator@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-transform-regenerator@npm:7.18.6"
+"@babel/plugin-transform-regenerator@npm:^7.22.10":
+ version: 7.22.10
+ resolution: "@babel/plugin-transform-regenerator@npm:7.22.10"
dependencies:
- "@babel/helper-plugin-utils": ^7.18.6
- regenerator-transform: ^0.15.0
+ "@babel/helper-plugin-utils": ^7.22.5
+ regenerator-transform: ^0.15.2
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 60bd482cb0343c714f85c3e19a13b3b5fa05ee336c079974091c0b35e263307f4e661f4555dff90707a87d5efe19b1d51835db44455405444ac1813e268ad750
+ checksum: e13678d62d6fa96f11cb8b863f00e8693491e7adc88bfca3f2820f80cbac8336e7dec3a596eee6a1c4663b7ececc3564f2cd7fb44ed6d4ce84ac2bb7f39ecc6e
languageName: node
linkType: hard
-"@babel/plugin-transform-reserved-words@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-transform-reserved-words@npm:7.18.6"
+"@babel/plugin-transform-reserved-words@npm:^7.22.5":
+ version: 7.22.5
+ resolution: "@babel/plugin-transform-reserved-words@npm:7.22.5"
dependencies:
- "@babel/helper-plugin-utils": ^7.18.6
+ "@babel/helper-plugin-utils": ^7.22.5
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 0738cdc30abdae07c8ec4b233b30c31f68b3ff0eaa40eddb45ae607c066127f5fa99ddad3c0177d8e2832e3a7d3ad115775c62b431ebd6189c40a951b867a80c
+ checksum: 3ffd7dbc425fe8132bfec118b9817572799cab1473113a635d25ab606c1f5a2341a636c04cf6b22df3813320365ed5a965b5eeb3192320a10e4cc2c137bd8bfc
languageName: node
linkType: hard
-"@babel/plugin-transform-runtime@npm:>=7, @babel/plugin-transform-runtime@npm:^7.15.0, @babel/plugin-transform-runtime@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-transform-runtime@npm:7.18.6"
+"@babel/plugin-transform-runtime@npm:^7.15.0, @babel/plugin-transform-runtime@npm:^7.18.6, @babel/plugin-transform-runtime@npm:^7.22.15":
+ version: 7.22.15
+ resolution: "@babel/plugin-transform-runtime@npm:7.22.15"
dependencies:
- "@babel/helper-module-imports": ^7.18.6
- "@babel/helper-plugin-utils": ^7.18.6
- babel-plugin-polyfill-corejs2: ^0.3.1
- babel-plugin-polyfill-corejs3: ^0.5.2
- babel-plugin-polyfill-regenerator: ^0.3.1
- semver: ^6.3.0
+ "@babel/helper-module-imports": ^7.22.15
+ "@babel/helper-plugin-utils": ^7.22.5
+ babel-plugin-polyfill-corejs2: ^0.4.5
+ babel-plugin-polyfill-corejs3: ^0.8.3
+ babel-plugin-polyfill-regenerator: ^0.5.2
+ semver: ^6.3.1
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: ed1ee31d02c86b4cad3d38678fd9593a50478588c1ad15b0128135dfbfb463555d49335a55d1486c3a15c5791e6ef9e21a3cc124c555b250fadfd83861ac61d2
+ checksum: 7edf20b13d02f856276221624abf3b8084daa3f265a6e5c70ee0d0c63087fcf726dc8756a9c8bb3d25a1ce8697ab66ec8cdd15be992c21aed9971cb5bfe80a5b
languageName: node
linkType: hard
-"@babel/plugin-transform-shorthand-properties@npm:^7.12.1, @babel/plugin-transform-shorthand-properties@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-transform-shorthand-properties@npm:7.18.6"
+"@babel/plugin-transform-shorthand-properties@npm:^7.12.1, @babel/plugin-transform-shorthand-properties@npm:^7.22.5":
+ version: 7.22.5
+ resolution: "@babel/plugin-transform-shorthand-properties@npm:7.22.5"
dependencies:
- "@babel/helper-plugin-utils": ^7.18.6
+ "@babel/helper-plugin-utils": ^7.22.5
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: b8e4e8acc2700d1e0d7d5dbfd4fdfb935651913de6be36e6afb7e739d8f9ca539a5150075a0f9b79c88be25ddf45abb912fe7abf525f0b80f5b9d9860de685d7
+ checksum: a5ac902c56ea8effa99f681340ee61bac21094588f7aef0bc01dff98246651702e677552fa6d10e548c4ac22a3ffad047dd2f8c8f0540b68316c2c203e56818b
languageName: node
linkType: hard
-"@babel/plugin-transform-spread@npm:^7.12.1, @babel/plugin-transform-spread@npm:^7.19.0":
- version: 7.20.7
- resolution: "@babel/plugin-transform-spread@npm:7.20.7"
+"@babel/plugin-transform-spread@npm:^7.12.1, @babel/plugin-transform-spread@npm:^7.22.5":
+ version: 7.22.5
+ resolution: "@babel/plugin-transform-spread@npm:7.22.5"
dependencies:
- "@babel/helper-plugin-utils": ^7.20.2
- "@babel/helper-skip-transparent-expression-wrappers": ^7.20.0
+ "@babel/helper-plugin-utils": ^7.22.5
+ "@babel/helper-skip-transparent-expression-wrappers": ^7.22.5
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 8ea698a12da15718aac7489d4cde10beb8a3eea1f66167d11ab1e625033641e8b328157fd1a0b55dd6531933a160c01fc2e2e61132a385cece05f26429fd0cc2
+ checksum: 5587f0deb60b3dfc9b274e269031cc45ec75facccf1933ea2ea71ced9fd3ce98ed91bb36d6cd26817c14474b90ed998c5078415f0eab531caf301496ce24c95c
languageName: node
linkType: hard
-"@babel/plugin-transform-sticky-regex@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-transform-sticky-regex@npm:7.18.6"
+"@babel/plugin-transform-sticky-regex@npm:^7.22.5":
+ version: 7.22.5
+ resolution: "@babel/plugin-transform-sticky-regex@npm:7.22.5"
dependencies:
- "@babel/helper-plugin-utils": ^7.18.6
+ "@babel/helper-plugin-utils": ^7.22.5
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 68ea18884ae9723443ffa975eb736c8c0d751265859cd3955691253f7fee37d7a0f7efea96c8a062876af49a257a18ea0ed5fea0d95a7b3611ce40f7ee23aee3
+ checksum: 63b2c575e3e7f96c32d52ed45ee098fb7d354b35c2223b8c8e76840b32cc529ee0c0ceb5742fd082e56e91e3d82842a367ce177e82b05039af3d602c9627a729
languageName: node
linkType: hard
-"@babel/plugin-transform-template-literals@npm:>=7, @babel/plugin-transform-template-literals@npm:^7.12.1, @babel/plugin-transform-template-literals@npm:^7.18.9":
- version: 7.18.9
- resolution: "@babel/plugin-transform-template-literals@npm:7.18.9"
+"@babel/plugin-transform-template-literals@npm:^7.12.1, @babel/plugin-transform-template-literals@npm:^7.22.5":
+ version: 7.22.5
+ resolution: "@babel/plugin-transform-template-literals@npm:7.22.5"
dependencies:
- "@babel/helper-plugin-utils": ^7.18.9
+ "@babel/helper-plugin-utils": ^7.22.5
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 3d2fcd79b7c345917f69b92a85bdc3ddd68ce2c87dc70c7d61a8373546ccd1f5cb8adc8540b49dfba08e1b82bb7b3bbe23a19efdb2b9c994db2db42906ca9fb2
+ checksum: 27e9bb030654cb425381c69754be4abe6a7c75b45cd7f962cd8d604b841b2f0fb7b024f2efc1c25cc53f5b16d79d5e8cfc47cacbdaa983895b3aeefa3e7e24ff
languageName: node
linkType: hard
-"@babel/plugin-transform-typeof-symbol@npm:^7.18.9":
- version: 7.18.9
- resolution: "@babel/plugin-transform-typeof-symbol@npm:7.18.9"
+"@babel/plugin-transform-typeof-symbol@npm:^7.22.5":
+ version: 7.22.5
+ resolution: "@babel/plugin-transform-typeof-symbol@npm:7.22.5"
dependencies:
- "@babel/helper-plugin-utils": ^7.18.9
+ "@babel/helper-plugin-utils": ^7.22.5
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: e754e0d8b8a028c52e10c148088606e3f7a9942c57bd648fc0438e5b4868db73c386a5ed47ab6d6f0594aae29ee5ffc2ffc0f7ebee7fae560a066d6dea811cd4
+ checksum: 82a53a63ffc3010b689ca9a54e5f53b2718b9f4b4a9818f36f9b7dba234f38a01876680553d2716a645a61920b5e6e4aaf8d4a0064add379b27ca0b403049512
languageName: node
linkType: hard
@@ -1527,60 +1613,72 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-transform-unicode-escapes@npm:^7.18.10":
- version: 7.18.10
- resolution: "@babel/plugin-transform-unicode-escapes@npm:7.18.10"
+"@babel/plugin-transform-unicode-escapes@npm:^7.22.10":
+ version: 7.22.10
+ resolution: "@babel/plugin-transform-unicode-escapes@npm:7.22.10"
dependencies:
- "@babel/helper-plugin-utils": ^7.18.9
+ "@babel/helper-plugin-utils": ^7.22.5
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: f5baca55cb3c11bc08ec589f5f522d85c1ab509b4d11492437e45027d64ae0b22f0907bd1381e8d7f2a436384bb1f9ad89d19277314242c5c2671a0f91d0f9cd
+ checksum: 807f40ed1324c8cb107c45358f1903384ca3f0ef1d01c5a3c5c9b271c8d8eec66936a3dcc8d75ddfceea9421420368c2e77ae3adef0a50557e778dfe296bf382
languageName: node
linkType: hard
-"@babel/plugin-transform-unicode-regex@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-transform-unicode-regex@npm:7.18.6"
+"@babel/plugin-transform-unicode-property-regex@npm:^7.22.5":
+ version: 7.22.5
+ resolution: "@babel/plugin-transform-unicode-property-regex@npm:7.22.5"
dependencies:
- "@babel/helper-create-regexp-features-plugin": ^7.18.6
- "@babel/helper-plugin-utils": ^7.18.6
+ "@babel/helper-create-regexp-features-plugin": ^7.22.5
+ "@babel/helper-plugin-utils": ^7.22.5
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: d9e18d57536a2d317fb0b7c04f8f55347f3cfacb75e636b4c6fa2080ab13a3542771b5120e726b598b815891fc606d1472ac02b749c69fd527b03847f22dc25e
+ checksum: 2495e5f663cb388e3d888b4ba3df419ac436a5012144ac170b622ddfc221f9ea9bdba839fa2bc0185cb776b578030666406452ec7791cbf0e7a3d4c88ae9574c
languageName: node
linkType: hard
-"@babel/preset-env@npm:>=7, @babel/preset-env@npm:^7.0.0, @babel/preset-env@npm:^7.12.11, @babel/preset-env@npm:^7.15.0, @babel/preset-env@npm:^7.15.6, @babel/preset-env@npm:^7.18.6":
- version: 7.20.2
- resolution: "@babel/preset-env@npm:7.20.2"
+"@babel/plugin-transform-unicode-regex@npm:^7.22.5":
+ version: 7.22.5
+ resolution: "@babel/plugin-transform-unicode-regex@npm:7.22.5"
dependencies:
- "@babel/compat-data": ^7.20.1
- "@babel/helper-compilation-targets": ^7.20.0
- "@babel/helper-plugin-utils": ^7.20.2
- "@babel/helper-validator-option": ^7.18.6
- "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": ^7.18.6
- "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": ^7.18.9
- "@babel/plugin-proposal-async-generator-functions": ^7.20.1
- "@babel/plugin-proposal-class-properties": ^7.18.6
- "@babel/plugin-proposal-class-static-block": ^7.18.6
- "@babel/plugin-proposal-dynamic-import": ^7.18.6
- "@babel/plugin-proposal-export-namespace-from": ^7.18.9
- "@babel/plugin-proposal-json-strings": ^7.18.6
- "@babel/plugin-proposal-logical-assignment-operators": ^7.18.9
- "@babel/plugin-proposal-nullish-coalescing-operator": ^7.18.6
- "@babel/plugin-proposal-numeric-separator": ^7.18.6
- "@babel/plugin-proposal-object-rest-spread": ^7.20.2
- "@babel/plugin-proposal-optional-catch-binding": ^7.18.6
- "@babel/plugin-proposal-optional-chaining": ^7.18.9
- "@babel/plugin-proposal-private-methods": ^7.18.6
- "@babel/plugin-proposal-private-property-in-object": ^7.18.6
- "@babel/plugin-proposal-unicode-property-regex": ^7.18.6
+ "@babel/helper-create-regexp-features-plugin": ^7.22.5
+ "@babel/helper-plugin-utils": ^7.22.5
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 6b5d1404c8c623b0ec9bd436c00d885a17d6a34f3f2597996343ddb9d94f6379705b21582dfd4cec2c47fd34068872e74ab6b9580116c0566b3f9447e2a7fa06
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-unicode-sets-regex@npm:^7.22.5":
+ version: 7.22.5
+ resolution: "@babel/plugin-transform-unicode-sets-regex@npm:7.22.5"
+ dependencies:
+ "@babel/helper-create-regexp-features-plugin": ^7.22.5
+ "@babel/helper-plugin-utils": ^7.22.5
+ peerDependencies:
+ "@babel/core": ^7.0.0
+ checksum: c042070f980b139547f8b0179efbc049ac5930abec7fc26ed7a41d89a048d8ab17d362200e204b6f71c3c20d6991a0e74415e1a412a49adc8131c2a40c04822e
+ languageName: node
+ linkType: hard
+
+"@babel/preset-env@npm:^7.0.0, @babel/preset-env@npm:^7.12.11, @babel/preset-env@npm:^7.15.0, @babel/preset-env@npm:^7.15.6, @babel/preset-env@npm:^7.18.6, @babel/preset-env@npm:^7.22.15":
+ version: 7.22.20
+ resolution: "@babel/preset-env@npm:7.22.20"
+ dependencies:
+ "@babel/compat-data": ^7.22.20
+ "@babel/helper-compilation-targets": ^7.22.15
+ "@babel/helper-plugin-utils": ^7.22.5
+ "@babel/helper-validator-option": ^7.22.15
+ "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": ^7.22.15
+ "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": ^7.22.15
+ "@babel/plugin-proposal-private-property-in-object": 7.21.0-placeholder-for-preset-env.2
"@babel/plugin-syntax-async-generators": ^7.8.4
"@babel/plugin-syntax-class-properties": ^7.12.13
"@babel/plugin-syntax-class-static-block": ^7.14.5
"@babel/plugin-syntax-dynamic-import": ^7.8.3
"@babel/plugin-syntax-export-namespace-from": ^7.8.3
- "@babel/plugin-syntax-import-assertions": ^7.20.0
+ "@babel/plugin-syntax-import-assertions": ^7.22.5
+ "@babel/plugin-syntax-import-attributes": ^7.22.5
+ "@babel/plugin-syntax-import-meta": ^7.10.4
"@babel/plugin-syntax-json-strings": ^7.8.3
"@babel/plugin-syntax-logical-assignment-operators": ^7.10.4
"@babel/plugin-syntax-nullish-coalescing-operator": ^7.8.3
@@ -1590,48 +1688,65 @@ __metadata:
"@babel/plugin-syntax-optional-chaining": ^7.8.3
"@babel/plugin-syntax-private-property-in-object": ^7.14.5
"@babel/plugin-syntax-top-level-await": ^7.14.5
- "@babel/plugin-transform-arrow-functions": ^7.18.6
- "@babel/plugin-transform-async-to-generator": ^7.18.6
- "@babel/plugin-transform-block-scoped-functions": ^7.18.6
- "@babel/plugin-transform-block-scoping": ^7.20.2
- "@babel/plugin-transform-classes": ^7.20.2
- "@babel/plugin-transform-computed-properties": ^7.18.9
- "@babel/plugin-transform-destructuring": ^7.20.2
- "@babel/plugin-transform-dotall-regex": ^7.18.6
- "@babel/plugin-transform-duplicate-keys": ^7.18.9
- "@babel/plugin-transform-exponentiation-operator": ^7.18.6
- "@babel/plugin-transform-for-of": ^7.18.8
- "@babel/plugin-transform-function-name": ^7.18.9
- "@babel/plugin-transform-literals": ^7.18.9
- "@babel/plugin-transform-member-expression-literals": ^7.18.6
- "@babel/plugin-transform-modules-amd": ^7.19.6
- "@babel/plugin-transform-modules-commonjs": ^7.19.6
- "@babel/plugin-transform-modules-systemjs": ^7.19.6
- "@babel/plugin-transform-modules-umd": ^7.18.6
- "@babel/plugin-transform-named-capturing-groups-regex": ^7.19.1
- "@babel/plugin-transform-new-target": ^7.18.6
- "@babel/plugin-transform-object-super": ^7.18.6
- "@babel/plugin-transform-parameters": ^7.20.1
- "@babel/plugin-transform-property-literals": ^7.18.6
- "@babel/plugin-transform-regenerator": ^7.18.6
- "@babel/plugin-transform-reserved-words": ^7.18.6
- "@babel/plugin-transform-shorthand-properties": ^7.18.6
- "@babel/plugin-transform-spread": ^7.19.0
- "@babel/plugin-transform-sticky-regex": ^7.18.6
- "@babel/plugin-transform-template-literals": ^7.18.9
- "@babel/plugin-transform-typeof-symbol": ^7.18.9
- "@babel/plugin-transform-unicode-escapes": ^7.18.10
- "@babel/plugin-transform-unicode-regex": ^7.18.6
- "@babel/preset-modules": ^0.1.5
- "@babel/types": ^7.20.2
- babel-plugin-polyfill-corejs2: ^0.3.3
- babel-plugin-polyfill-corejs3: ^0.6.0
- babel-plugin-polyfill-regenerator: ^0.4.1
- core-js-compat: ^3.25.1
- semver: ^6.3.0
+ "@babel/plugin-syntax-unicode-sets-regex": ^7.18.6
+ "@babel/plugin-transform-arrow-functions": ^7.22.5
+ "@babel/plugin-transform-async-generator-functions": ^7.22.15
+ "@babel/plugin-transform-async-to-generator": ^7.22.5
+ "@babel/plugin-transform-block-scoped-functions": ^7.22.5
+ "@babel/plugin-transform-block-scoping": ^7.22.15
+ "@babel/plugin-transform-class-properties": ^7.22.5
+ "@babel/plugin-transform-class-static-block": ^7.22.11
+ "@babel/plugin-transform-classes": ^7.22.15
+ "@babel/plugin-transform-computed-properties": ^7.22.5
+ "@babel/plugin-transform-destructuring": ^7.22.15
+ "@babel/plugin-transform-dotall-regex": ^7.22.5
+ "@babel/plugin-transform-duplicate-keys": ^7.22.5
+ "@babel/plugin-transform-dynamic-import": ^7.22.11
+ "@babel/plugin-transform-exponentiation-operator": ^7.22.5
+ "@babel/plugin-transform-export-namespace-from": ^7.22.11
+ "@babel/plugin-transform-for-of": ^7.22.15
+ "@babel/plugin-transform-function-name": ^7.22.5
+ "@babel/plugin-transform-json-strings": ^7.22.11
+ "@babel/plugin-transform-literals": ^7.22.5
+ "@babel/plugin-transform-logical-assignment-operators": ^7.22.11
+ "@babel/plugin-transform-member-expression-literals": ^7.22.5
+ "@babel/plugin-transform-modules-amd": ^7.22.5
+ "@babel/plugin-transform-modules-commonjs": ^7.22.15
+ "@babel/plugin-transform-modules-systemjs": ^7.22.11
+ "@babel/plugin-transform-modules-umd": ^7.22.5
+ "@babel/plugin-transform-named-capturing-groups-regex": ^7.22.5
+ "@babel/plugin-transform-new-target": ^7.22.5
+ "@babel/plugin-transform-nullish-coalescing-operator": ^7.22.11
+ "@babel/plugin-transform-numeric-separator": ^7.22.11
+ "@babel/plugin-transform-object-rest-spread": ^7.22.15
+ "@babel/plugin-transform-object-super": ^7.22.5
+ "@babel/plugin-transform-optional-catch-binding": ^7.22.11
+ "@babel/plugin-transform-optional-chaining": ^7.22.15
+ "@babel/plugin-transform-parameters": ^7.22.15
+ "@babel/plugin-transform-private-methods": ^7.22.5
+ "@babel/plugin-transform-private-property-in-object": ^7.22.11
+ "@babel/plugin-transform-property-literals": ^7.22.5
+ "@babel/plugin-transform-regenerator": ^7.22.10
+ "@babel/plugin-transform-reserved-words": ^7.22.5
+ "@babel/plugin-transform-shorthand-properties": ^7.22.5
+ "@babel/plugin-transform-spread": ^7.22.5
+ "@babel/plugin-transform-sticky-regex": ^7.22.5
+ "@babel/plugin-transform-template-literals": ^7.22.5
+ "@babel/plugin-transform-typeof-symbol": ^7.22.5
+ "@babel/plugin-transform-unicode-escapes": ^7.22.10
+ "@babel/plugin-transform-unicode-property-regex": ^7.22.5
+ "@babel/plugin-transform-unicode-regex": ^7.22.5
+ "@babel/plugin-transform-unicode-sets-regex": ^7.22.5
+ "@babel/preset-modules": 0.1.6-no-external-plugins
+ "@babel/types": ^7.22.19
+ babel-plugin-polyfill-corejs2: ^0.4.5
+ babel-plugin-polyfill-corejs3: ^0.8.3
+ babel-plugin-polyfill-regenerator: ^0.5.2
+ core-js-compat: ^3.31.0
+ semver: ^6.3.1
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: ece2d7e9c7789db6116e962b8e1a55eb55c110c44c217f0c8f6ffea4ca234954e66557f7bd019b7affadf7fbb3a53ccc807e93fc935aacd48146234b73b6947e
+ checksum: 99357a5cb30f53bacdc0d1cd6dff0f052ea6c2d1ba874d969bba69897ef716e87283e84a59dc52fb49aa31fd1b6f55ed756c64c04f5678380700239f6030b881
languageName: node
linkType: hard
@@ -1648,18 +1763,16 @@ __metadata:
languageName: node
linkType: hard
-"@babel/preset-modules@npm:^0.1.5":
- version: 0.1.5
- resolution: "@babel/preset-modules@npm:0.1.5"
+"@babel/preset-modules@npm:0.1.6-no-external-plugins":
+ version: 0.1.6-no-external-plugins
+ resolution: "@babel/preset-modules@npm:0.1.6-no-external-plugins"
dependencies:
"@babel/helper-plugin-utils": ^7.0.0
- "@babel/plugin-proposal-unicode-property-regex": ^7.4.4
- "@babel/plugin-transform-dotall-regex": ^7.4.4
"@babel/types": ^7.4.4
esutils: ^2.0.2
peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 8430e0e9e9d520b53e22e8c4c6a5a080a12b63af6eabe559c2310b187bd62ae113f3da82ba33e9d1d0f3230930ca702843aae9dd226dec51f7d7114dc1f51c10
+ "@babel/core": ^7.0.0-0 || ^8.0.0-0 <8.0.0
+ checksum: 4855e799bc50f2449fb5210f78ea9e8fd46cf4f242243f1e2ed838e2bd702e25e73e822e7f8447722a5f4baa5e67a8f7a0e403f3e7ce04540ff743a9c411c375
languageName: node
linkType: hard
@@ -1720,6 +1833,13 @@ __metadata:
languageName: node
linkType: hard
+"@babel/regjsgen@npm:^0.8.0":
+ version: 0.8.0
+ resolution: "@babel/regjsgen@npm:0.8.0"
+ checksum: 89c338fee774770e5a487382170711014d49a68eb281e74f2b5eac88f38300a4ad545516a7786a8dd5702e9cf009c94c2f582d200f077ac5decd74c56b973730
+ languageName: node
+ linkType: hard
+
"@babel/runtime-corejs3@npm:^7.10.2, @babel/runtime-corejs3@npm:^7.18.6":
version: 7.18.6
resolution: "@babel/runtime-corejs3@npm:7.18.6"
@@ -1739,43 +1859,43 @@ __metadata:
languageName: node
linkType: hard
-"@babel/template@npm:>=7, @babel/template@npm:^7.12.13, @babel/template@npm:^7.12.7, @babel/template@npm:^7.18.10, @babel/template@npm:^7.20.7, @babel/template@npm:^7.3.3":
- version: 7.20.7
- resolution: "@babel/template@npm:7.20.7"
+"@babel/template@npm:^7.12.7, @babel/template@npm:^7.22.15, @babel/template@npm:^7.22.5, @babel/template@npm:^7.3.3":
+ version: 7.22.15
+ resolution: "@babel/template@npm:7.22.15"
dependencies:
- "@babel/code-frame": ^7.18.6
- "@babel/parser": ^7.20.7
- "@babel/types": ^7.20.7
- checksum: 2eb1a0ab8d415078776bceb3473d07ab746e6bb4c2f6ca46ee70efb284d75c4a32bb0cd6f4f4946dec9711f9c0780e8e5d64b743208deac6f8e9858afadc349e
+ "@babel/code-frame": ^7.22.13
+ "@babel/parser": ^7.22.15
+ "@babel/types": ^7.22.15
+ checksum: 1f3e7dcd6c44f5904c184b3f7fe280394b191f2fed819919ffa1e529c259d5b197da8981b6ca491c235aee8dbad4a50b7e31304aa531271cb823a4a24a0dd8fd
languageName: node
linkType: hard
-"@babel/traverse@npm:>=7, @babel/traverse@npm:^7.1.6, @babel/traverse@npm:^7.12.11, @babel/traverse@npm:^7.12.13, @babel/traverse@npm:^7.12.9, @babel/traverse@npm:^7.13.0, @babel/traverse@npm:^7.16.0, @babel/traverse@npm:^7.17.9, @babel/traverse@npm:^7.18.8, @babel/traverse@npm:^7.20.10, @babel/traverse@npm:^7.20.12, @babel/traverse@npm:^7.20.13, @babel/traverse@npm:^7.20.5, @babel/traverse@npm:^7.20.7, @babel/traverse@npm:^7.4.5, @babel/traverse@npm:^7.7.2":
- version: 7.20.13
- resolution: "@babel/traverse@npm:7.20.13"
- dependencies:
- "@babel/code-frame": ^7.18.6
- "@babel/generator": ^7.20.7
- "@babel/helper-environment-visitor": ^7.18.9
- "@babel/helper-function-name": ^7.19.0
- "@babel/helper-hoist-variables": ^7.18.6
- "@babel/helper-split-export-declaration": ^7.18.6
- "@babel/parser": ^7.20.13
- "@babel/types": ^7.20.7
+"@babel/traverse@npm:^7.1.6, @babel/traverse@npm:^7.12.11, @babel/traverse@npm:^7.12.9, @babel/traverse@npm:^7.13.0, @babel/traverse@npm:^7.16.0, @babel/traverse@npm:^7.17.9, @babel/traverse@npm:^7.18.8, @babel/traverse@npm:^7.22.15, @babel/traverse@npm:^7.23.0, @babel/traverse@npm:^7.4.5, @babel/traverse@npm:^7.7.2":
+ version: 7.23.0
+ resolution: "@babel/traverse@npm:7.23.0"
+ dependencies:
+ "@babel/code-frame": ^7.22.13
+ "@babel/generator": ^7.23.0
+ "@babel/helper-environment-visitor": ^7.22.20
+ "@babel/helper-function-name": ^7.23.0
+ "@babel/helper-hoist-variables": ^7.22.5
+ "@babel/helper-split-export-declaration": ^7.22.6
+ "@babel/parser": ^7.23.0
+ "@babel/types": ^7.23.0
debug: ^4.1.0
globals: ^11.1.0
- checksum: 30ca6e0bd18233fda48fa09315efd14dfc61dcf5b8fa3712b343bfc61b32bc63b5e85ea1773cc9576c9b293b96f46b4589aaeb0a52e1f3eeac4edc076d049fc7
+ checksum: 0b17fae53269e1af2cd3edba00892bc2975ad5df9eea7b84815dab07dfec2928c451066d51bc65b4be61d8499e77db7e547ce69ef2a7b0eca3f96269cb43a0b0
languageName: node
linkType: hard
-"@babel/types@npm:^7.0.0, @babel/types@npm:^7.12.11, @babel/types@npm:^7.12.7, @babel/types@npm:^7.15.6, @babel/types@npm:^7.18.6, @babel/types@npm:^7.18.9, @babel/types@npm:^7.19.0, @babel/types@npm:^7.2.0, @babel/types@npm:^7.20.0, @babel/types@npm:^7.20.2, @babel/types@npm:^7.20.5, @babel/types@npm:^7.20.7, @babel/types@npm:^7.3.0, @babel/types@npm:^7.3.3, @babel/types@npm:^7.4.4, @babel/types@npm:^7.8.3":
- version: 7.20.7
- resolution: "@babel/types@npm:7.20.7"
+"@babel/types@npm:^7.0.0, @babel/types@npm:^7.12.11, @babel/types@npm:^7.12.7, @babel/types@npm:^7.15.6, @babel/types@npm:^7.18.6, @babel/types@npm:^7.2.0, @babel/types@npm:^7.22.15, @babel/types@npm:^7.22.19, @babel/types@npm:^7.22.5, @babel/types@npm:^7.23.0, @babel/types@npm:^7.3.0, @babel/types@npm:^7.3.3, @babel/types@npm:^7.4.4, @babel/types@npm:^7.8.3":
+ version: 7.23.0
+ resolution: "@babel/types@npm:7.23.0"
dependencies:
- "@babel/helper-string-parser": ^7.19.4
- "@babel/helper-validator-identifier": ^7.19.1
+ "@babel/helper-string-parser": ^7.22.5
+ "@babel/helper-validator-identifier": ^7.22.20
to-fast-properties: ^2.0.0
- checksum: b39af241f0b72bba67fd6d0d23914f6faec8c0eba8015c181cbd5ea92e59fc91a52a1ab490d3520c7dbd19ddb9ebb76c476308f6388764f16d8201e37fae6811
+ checksum: 215fe04bd7feef79eeb4d33374b39909ce9cad1611c4135a4f7fdf41fe3280594105af6d7094354751514625ea92d0875aba355f53e86a92600f290e77b0e604
languageName: node
linkType: hard
@@ -3281,10 +3401,10 @@ __metadata:
languageName: node
linkType: hard
-"@jridgewell/resolve-uri@npm:3.1.0, @jridgewell/resolve-uri@npm:^3.0.3":
- version: 3.1.0
- resolution: "@jridgewell/resolve-uri@npm:3.1.0"
- checksum: b5ceaaf9a110fcb2780d1d8f8d4a0bfd216702f31c988d8042e5f8fbe353c55d9b0f55a1733afdc64806f8e79c485d2464680ac48a0d9fcadb9548ee6b81d267
+"@jridgewell/resolve-uri@npm:^3.0.3, @jridgewell/resolve-uri@npm:^3.1.0":
+ version: 3.1.1
+ resolution: "@jridgewell/resolve-uri@npm:3.1.1"
+ checksum: f5b441fe7900eab4f9155b3b93f9800a916257f4e8563afbcd3b5a5337b55e52bd8ae6735453b1b745457d9f6cdb16d74cd6220bbdd98cf153239e13f6cbb653
languageName: node
linkType: hard
@@ -3305,10 +3425,10 @@ __metadata:
languageName: node
linkType: hard
-"@jridgewell/sourcemap-codec@npm:1.4.14, @jridgewell/sourcemap-codec@npm:^1.4.10":
- version: 1.4.14
- resolution: "@jridgewell/sourcemap-codec@npm:1.4.14"
- checksum: 61100637b6d173d3ba786a5dff019e1a74b1f394f323c1fee337ff390239f053b87266c7a948777f4b1ee68c01a8ad0ab61e5ff4abb5a012a0b091bec391ab97
+"@jridgewell/sourcemap-codec@npm:^1.4.10, @jridgewell/sourcemap-codec@npm:^1.4.14":
+ version: 1.4.15
+ resolution: "@jridgewell/sourcemap-codec@npm:1.4.15"
+ checksum: b881c7e503db3fc7f3c1f35a1dd2655a188cc51a3612d76efc8a6eb74728bef5606e6758ee77423e564092b4a518aba569bbb21c9bac5ab7a35b0c6ae7e344c8
languageName: node
linkType: hard
@@ -3322,13 +3442,13 @@ __metadata:
languageName: node
linkType: hard
-"@jridgewell/trace-mapping@npm:^0.3.0, @jridgewell/trace-mapping@npm:^0.3.12, @jridgewell/trace-mapping@npm:^0.3.13, @jridgewell/trace-mapping@npm:^0.3.14, @jridgewell/trace-mapping@npm:^0.3.7, @jridgewell/trace-mapping@npm:^0.3.9":
- version: 0.3.17
- resolution: "@jridgewell/trace-mapping@npm:0.3.17"
+"@jridgewell/trace-mapping@npm:^0.3.12, @jridgewell/trace-mapping@npm:^0.3.13, @jridgewell/trace-mapping@npm:^0.3.14, @jridgewell/trace-mapping@npm:^0.3.17, @jridgewell/trace-mapping@npm:^0.3.7, @jridgewell/trace-mapping@npm:^0.3.9":
+ version: 0.3.19
+ resolution: "@jridgewell/trace-mapping@npm:0.3.19"
dependencies:
- "@jridgewell/resolve-uri": 3.1.0
- "@jridgewell/sourcemap-codec": 1.4.14
- checksum: 9d703b859cff5cd83b7308fd457a431387db5db96bd781a63bf48e183418dd9d3d44e76b9e4ae13237f6abeeb25d739ec9215c1d5bfdd08f66f750a50074a339
+ "@jridgewell/resolve-uri": ^3.1.0
+ "@jridgewell/sourcemap-codec": ^1.4.14
+ checksum: 956a6f0f6fec060fb48c6bf1f5ec2064e13cd38c8be3873877d4b92b4a27ba58289a34071752671262a3e3c202abcc3fa2aac64d8447b4b0fa1ba3c9047f1c20
languageName: node
linkType: hard
@@ -3382,79 +3502,135 @@ __metadata:
languageName: node
linkType: hard
-"@linaria/babel-preset@npm:^3.0.0-beta.22, @linaria/babel-preset@npm:^3.0.0-beta.24":
- version: 3.0.0-beta.24
- resolution: "@linaria/babel-preset@npm:3.0.0-beta.24"
- dependencies:
- "@babel/core": ^7.18.2
- "@babel/generator": ">=7"
- "@babel/plugin-proposal-export-namespace-from": ">=7"
- "@babel/plugin-syntax-dynamic-import": ">=7"
- "@babel/plugin-transform-modules-commonjs": ^7.18.2
- "@babel/template": ">=7"
- "@babel/traverse": ">=7"
- "@linaria/core": 3.0.0-beta.22
- "@linaria/logger": 3.0.0-beta.20
- "@linaria/utils": 3.0.0-beta.20
- cosmiconfig: ^5.1.0
- find-up: ^5.0.0
+"@linaria/babel-preset@npm:^5.0.2":
+ version: 5.0.2
+ resolution: "@linaria/babel-preset@npm:5.0.2"
+ dependencies:
+ "@babel/core": ^7.22.15
+ "@babel/generator": ^7.22.15
+ "@babel/helper-module-imports": ^7.22.15
+ "@babel/template": ^7.22.15
+ "@babel/traverse": ^7.22.15
+ "@babel/types": ^7.22.15
+ "@linaria/core": ^5.0.1
+ "@linaria/logger": ^5.0.0
+ "@linaria/shaker": ^5.0.1
+ "@linaria/tags": ^5.0.1
+ "@linaria/utils": ^5.0.1
+ cosmiconfig: ^8.0.0
+ happy-dom: 10.8.0
source-map: ^0.7.3
stylis: ^3.5.4
- checksum: e4659b252a03f0adf080ad1c2a8d17b5803c483d2e70d9c82f3b95d807b5365b59c7d1c14350d953c70a4a938370d81f99451df121e033143465b2b00e4ee5d4
+ ts-invariant: ^0.10.3
+ checksum: b6d41b0ad842d1f14ebe1ecadfd52dfff8235ccc6a69cf9691bc2e54632f1a7b1f593be3082bd84ebf65c32770dc78459977d0285b8c93a48ec1946ae9d9ff9c
languageName: node
linkType: hard
-"@linaria/core@npm:3.0.0-beta.22":
- version: 3.0.0-beta.22
- resolution: "@linaria/core@npm:3.0.0-beta.22"
+"@linaria/core@npm:^5.0.1":
+ version: 5.0.1
+ resolution: "@linaria/core@npm:5.0.1"
dependencies:
- "@linaria/logger": ^3.0.0-beta.20
- "@linaria/utils": ^3.0.0-beta.20
- checksum: 67f57811c78821eb4866e3f307078e3c1cf375ca84f23b4a25cf7f4c34b48b76eaef70a4320436a51145a73b4d0fbac54db7459ab5a23049e7c347fee3644abb
+ "@linaria/logger": ^5.0.0
+ "@linaria/tags": ^5.0.1
+ "@linaria/utils": ^5.0.1
+ checksum: 6372899afc2a3077345161ccf0240f8a8f15c5b91a568c315779b6080cbadc7b636123d47025e389a1c4d9d6afb2194c1ff9f3c68124eeb97c1827f9c905b621
languageName: node
linkType: hard
-"@linaria/logger@npm:3.0.0-beta.20, @linaria/logger@npm:^3.0.0-beta.20":
- version: 3.0.0-beta.20
- resolution: "@linaria/logger@npm:3.0.0-beta.20"
+"@linaria/logger@npm:^5.0.0":
+ version: 5.0.0
+ resolution: "@linaria/logger@npm:5.0.0"
dependencies:
- debug: ^4.1.1
+ debug: ^4.3.4
picocolors: ^1.0.0
- checksum: c5c1fbe593d9110fcbf7309517530fbda419c42c4258e0854f05619f917641724718919693a0a12eb50250bace9857435f29f4de8b056e1dc5f40c01eb074a7a
+ checksum: 92b345e0f1aeb7bcaf819268753d9c72ac266b1d9ed60163719ee8d873c7b7db2259a47e34cc7c45630b2264d6e2e8568a41c2c3972e020e11aee7d7538ab68a
+ languageName: node
+ linkType: hard
+
+"@linaria/shaker@npm:^5.0.1":
+ version: 5.0.1
+ resolution: "@linaria/shaker@npm:5.0.1"
+ dependencies:
+ "@babel/core": ^7.22.15
+ "@babel/generator": ^7.22.15
+ "@babel/plugin-transform-modules-commonjs": ^7.22.15
+ "@babel/plugin-transform-runtime": ^7.22.15
+ "@babel/plugin-transform-template-literals": ^7.22.5
+ "@babel/preset-env": ^7.22.15
+ "@linaria/logger": ^5.0.0
+ "@linaria/utils": ^5.0.1
+ babel-plugin-transform-react-remove-prop-types: ^0.4.24
+ ts-invariant: ^0.10.3
+ checksum: 87c4131392d77a9177109ece3b6cb433817d9ca5e689d587dbf699fa4b99a294c07f52a6133ff8a10fe23ac49bfcb42fc11afa80d889865ef2fa2b6478391517
languageName: node
linkType: hard
-"@linaria/preeval@npm:^3.0.0-beta.22":
- version: 3.0.0-beta.22
- resolution: "@linaria/preeval@npm:3.0.0-beta.22"
+"@linaria/tags@npm:^5.0.1":
+ version: 5.0.1
+ resolution: "@linaria/tags@npm:5.0.1"
dependencies:
- "@linaria/babel-preset": ^3.0.0-beta.22
- checksum: 3f1cf0c27cbcfd3ebd6e82346ee3ad00f146a8dd2e41b440a677707893e03a82937be5aee3f33fabba2c537b0639d1280cafa139558123548f1473eee08bb446
+ "@babel/generator": ^7.22.15
+ "@linaria/logger": ^5.0.0
+ "@linaria/utils": ^5.0.1
+ checksum: ac4660e5c19ef981fe65ca9fe2a91881bd89e1ee83314e92aa8525900eb9dc9bc5e4d193e88e3ac69b4465e04328e8e156f89981c8d9e101d706e294c54e704e
languageName: node
linkType: hard
-"@linaria/shaker@npm:^3.0.0-beta.22":
- version: 3.0.0-beta.22
- resolution: "@linaria/shaker@npm:3.0.0-beta.22"
+"@linaria/utils@npm:^5.0.1":
+ version: 5.0.1
+ resolution: "@linaria/utils@npm:5.0.1"
+ dependencies:
+ "@babel/core": ^7.22.15
+ "@babel/generator": ^7.22.15
+ "@babel/plugin-transform-modules-commonjs": ^7.22.15
+ "@babel/template": ^7.22.15
+ "@babel/traverse": ^7.22.15
+ "@babel/types": ^7.22.15
+ "@linaria/logger": ^5.0.0
+ babel-merge: ^3.0.0
+ find-up: ^5.0.0
+ minimatch: ^9.0.3
+ checksum: 836d6abc9892945466e3079160bbc677ce9c9f932650751b5a982d26ffac92d91bd4792470cd65f3e86d78cee56c5e4314d765d169dd6795aefa7e7bc1ff60fd
+ languageName: node
+ linkType: hard
+
+"@linaria/webpack-loader@npm:^5.0.2":
+ version: 5.0.2
+ resolution: "@linaria/webpack-loader@npm:5.0.2"
dependencies:
- "@babel/core": ^7.18.2
- "@babel/generator": ">=7"
- "@babel/plugin-transform-runtime": ">=7"
- "@babel/plugin-transform-template-literals": ">=7"
- "@babel/preset-env": ">=7"
- "@linaria/babel-preset": ^3.0.0-beta.22
- "@linaria/logger": ^3.0.0-beta.20
- "@linaria/preeval": ^3.0.0-beta.22
- babel-plugin-transform-react-remove-prop-types: ^0.4.24
- ts-invariant: ^0.10.3
- checksum: 4b9d3d5112f82317fddbe9369e3b96f5023a4c212aa220e51c32165fe33ba9487683a61263cacb6ad2e202c13e9f1bdba80f0264d3e0074a97a2bcb15af22e9b
+ "@linaria/webpack4-loader": ^5.0.2
+ "@linaria/webpack5-loader": ^5.0.2
+ checksum: 73e11bb6d7236fbf17ddfd8bafaaf340cca42c130c6c729e179166fed529a4e08cdc35ba5cc1f9c4af8c528717338885c5d0066d76de4d780db8cc40d69f4f13
+ languageName: node
+ linkType: hard
+
+"@linaria/webpack4-loader@npm:^5.0.2":
+ version: 5.0.2
+ resolution: "@linaria/webpack4-loader@npm:5.0.2"
+ dependencies:
+ "@linaria/babel-preset": ^5.0.2
+ "@linaria/logger": ^5.0.0
+ enhanced-resolve: ^4.1.0
+ loader-utils: ^1.4.2
+ mkdirp: ^0.5.1
+ peerDependencies:
+ webpack: ">=4.0.0 <5.0.0"
+ checksum: 1b662e523927f113b3ca88355ba8a773bebf9e63801ab13e08317f549fe965df80e442f68ec836c5b9d8c7b9fb69e7ddb17eb9e248ff4d1a749fda6c72311dee
languageName: node
linkType: hard
-"@linaria/utils@npm:3.0.0-beta.20, @linaria/utils@npm:^3.0.0-beta.20":
- version: 3.0.0-beta.20
- resolution: "@linaria/utils@npm:3.0.0-beta.20"
- checksum: dbf2170bf89a06fd7158b979069ca0a445a56baeebe258109a2490d4709dacc5c4b1a3628cd179ba991478809907847e0460c0c32ac92f3d427f9056e2b8c152
+"@linaria/webpack5-loader@npm:^5.0.2":
+ version: 5.0.2
+ resolution: "@linaria/webpack5-loader@npm:5.0.2"
+ dependencies:
+ "@linaria/babel-preset": ^5.0.2
+ "@linaria/logger": ^5.0.0
+ "@linaria/utils": ^5.0.1
+ enhanced-resolve: ^5.3.1
+ mkdirp: ^0.5.1
+ peerDependencies:
+ webpack: ^5.0.0
+ checksum: d1855d3514bbc5bb029e320274ab18a1b777556028ca4b664f3a01c7e4c381f21021d0c7ed40bd0364d3e7704323622255d96040f40d50030c16cfe266dc24aa
languageName: node
linkType: hard
@@ -8244,6 +8420,18 @@ __metadata:
languageName: node
linkType: hard
+"babel-merge@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "babel-merge@npm:3.0.0"
+ dependencies:
+ deepmerge: ^2.2.1
+ object.omit: ^3.0.0
+ peerDependencies:
+ "@babel/core": ^7.0.0
+ checksum: 8613efb6edcacaac628f9f86056bb110bc4f78dcc35c38787aaa4b8cfe92481ebedf56d558a1e74fcb8cdb4242d0bea2c1ab00e150e243548934157d0c9db06b
+ languageName: node
+ linkType: hard
+
"babel-plugin-add-react-displayname@npm:^0.0.5":
version: 0.0.5
resolution: "babel-plugin-add-react-displayname@npm:0.0.5"
@@ -8357,16 +8545,16 @@ __metadata:
languageName: node
linkType: hard
-"babel-plugin-polyfill-corejs2@npm:^0.3.1, babel-plugin-polyfill-corejs2@npm:^0.3.3":
- version: 0.3.3
- resolution: "babel-plugin-polyfill-corejs2@npm:0.3.3"
+"babel-plugin-polyfill-corejs2@npm:^0.4.5":
+ version: 0.4.5
+ resolution: "babel-plugin-polyfill-corejs2@npm:0.4.5"
dependencies:
- "@babel/compat-data": ^7.17.7
- "@babel/helper-define-polyfill-provider": ^0.3.3
- semver: ^6.1.1
+ "@babel/compat-data": ^7.22.6
+ "@babel/helper-define-polyfill-provider": ^0.4.2
+ semver: ^6.3.1
peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 7db3044993f3dddb3cc3d407bc82e640964a3bfe22de05d90e1f8f7a5cb71460011ab136d3c03c6c1ba428359ebf635688cd6205e28d0469bba221985f5c6179
+ "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0
+ checksum: 33a8e06aa54e2858d211c743d179f0487b03222f9ca1bfd7c4865bca243fca942a3358cb75f6bb894ed476cbddede834811fbd6903ff589f055821146f053e1a
languageName: node
linkType: hard
@@ -8382,49 +8570,26 @@ __metadata:
languageName: node
linkType: hard
-"babel-plugin-polyfill-corejs3@npm:^0.5.2":
- version: 0.5.2
- resolution: "babel-plugin-polyfill-corejs3@npm:0.5.2"
- dependencies:
- "@babel/helper-define-polyfill-provider": ^0.3.1
- core-js-compat: ^3.21.0
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 2f3184c73f80f00ac876a5ebcad945fd8d2ae70e5f85b7ab6cc3bc69bc74025f4f7070de7abbb2a7274c78e130bd34fc13f4c85342da28205930364a1ef0aa21
- languageName: node
- linkType: hard
-
-"babel-plugin-polyfill-corejs3@npm:^0.6.0":
- version: 0.6.0
- resolution: "babel-plugin-polyfill-corejs3@npm:0.6.0"
- dependencies:
- "@babel/helper-define-polyfill-provider": ^0.3.3
- core-js-compat: ^3.25.1
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 470bb8c59f7c0912bd77fe1b5a2e72f349b3f65bbdee1d60d6eb7e1f4a085c6f24b2dd5ab4ac6c2df6444a96b070ef6790eccc9edb6a2668c60d33133bfb62c6
- languageName: node
- linkType: hard
-
-"babel-plugin-polyfill-regenerator@npm:^0.3.1":
- version: 0.3.1
- resolution: "babel-plugin-polyfill-regenerator@npm:0.3.1"
+"babel-plugin-polyfill-corejs3@npm:^0.8.3":
+ version: 0.8.4
+ resolution: "babel-plugin-polyfill-corejs3@npm:0.8.4"
dependencies:
- "@babel/helper-define-polyfill-provider": ^0.3.1
+ "@babel/helper-define-polyfill-provider": ^0.4.2
+ core-js-compat: ^3.32.2
peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: f1473df7b700d6795ca41301b1e65a0aff15ce6c1463fc0ce2cf0c821114b0330920f59d4cebf52976363ee817ba29ad2758544a4661a724b08191080b9fe1da
+ "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0
+ checksum: 7243241a5b978b1335d51bcbd1248d6c4df88f6b3726706e71e0392f111c59bbf01118c85bb0ed42dce65e90e8fc768d19eda0a81a321cbe54abd3df9a285dc8
languageName: node
linkType: hard
-"babel-plugin-polyfill-regenerator@npm:^0.4.1":
- version: 0.4.1
- resolution: "babel-plugin-polyfill-regenerator@npm:0.4.1"
+"babel-plugin-polyfill-regenerator@npm:^0.5.2":
+ version: 0.5.2
+ resolution: "babel-plugin-polyfill-regenerator@npm:0.5.2"
dependencies:
- "@babel/helper-define-polyfill-provider": ^0.3.3
+ "@babel/helper-define-polyfill-provider": ^0.4.2
peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: ab0355efbad17d29492503230387679dfb780b63b25408990d2e4cf421012dae61d6199ddc309f4d2409ce4e9d3002d187702700dd8f4f8770ebbba651ed066c
+ "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0
+ checksum: d962200f604016a9a09bc9b4aaf60a3db7af876bb65bcefaeac04d44ac9d9ec4037cf24ce117760cc141d7046b6394c7eb0320ba9665cb4a2ee64df2be187c93
languageName: node
linkType: hard
@@ -8978,17 +9143,17 @@ __metadata:
languageName: node
linkType: hard
-"browserslist@npm:^4.0.0, browserslist@npm:^4.12.0, browserslist@npm:^4.14.5, browserslist@npm:^4.16.6, browserslist@npm:^4.18.1, browserslist@npm:^4.19.1, browserslist@npm:^4.20.3, browserslist@npm:^4.21.3, browserslist@npm:^4.21.4":
- version: 4.21.5
- resolution: "browserslist@npm:4.21.5"
+"browserslist@npm:^4.0.0, browserslist@npm:^4.12.0, browserslist@npm:^4.14.5, browserslist@npm:^4.16.6, browserslist@npm:^4.18.1, browserslist@npm:^4.19.1, browserslist@npm:^4.20.3, browserslist@npm:^4.21.10, browserslist@npm:^4.21.4, browserslist@npm:^4.21.9":
+ version: 4.21.11
+ resolution: "browserslist@npm:4.21.11"
dependencies:
- caniuse-lite: ^1.0.30001449
- electron-to-chromium: ^1.4.284
- node-releases: ^2.0.8
- update-browserslist-db: ^1.0.10
+ caniuse-lite: ^1.0.30001538
+ electron-to-chromium: ^1.4.526
+ node-releases: ^2.0.13
+ update-browserslist-db: ^1.0.13
bin:
browserslist: cli.js
- checksum: 9755986b22e73a6a1497fd8797aedd88e04270be33ce66ed5d85a1c8a798292a65e222b0f251bafa1c2522261e237d73b08b58689d4920a607e5a53d56dc4706
+ checksum: 89377745428d32c7bbec37055bc4b9e48aa859418ea3886b13218d825f8ea3053640f90d8652844ae855941fec0bffd2d69cf933035d6f9224b427d48d31eddf
languageName: node
linkType: hard
@@ -9209,31 +9374,6 @@ __metadata:
languageName: node
linkType: hard
-"caller-callsite@npm:^2.0.0":
- version: 2.0.0
- resolution: "caller-callsite@npm:2.0.0"
- dependencies:
- callsites: ^2.0.0
- checksum: b685e9d126d9247b320cfdfeb3bc8da0c4be28d8fb98c471a96bc51aab3130099898a2fe3bf0308f0fe048d64c37d6d09f563958b9afce1a1e5e63d879c128a2
- languageName: node
- linkType: hard
-
-"caller-path@npm:^2.0.0":
- version: 2.0.0
- resolution: "caller-path@npm:2.0.0"
- dependencies:
- caller-callsite: ^2.0.0
- checksum: 3e12ccd0c71ec10a057aac69e3ec175b721ca858c640df021ef0d25999e22f7c1d864934b596b7d47038e9b56b7ec315add042abbd15caac882998b50102fb12
- languageName: node
- linkType: hard
-
-"callsites@npm:^2.0.0":
- version: 2.0.0
- resolution: "callsites@npm:2.0.0"
- checksum: be2f67b247df913732b7dec1ec0bbfcdbaea263e5a95968b19ec7965affae9496b970e3024317e6d4baa8e28dc6ba0cec03f46fdddc2fdcc51396600e53c2623
- languageName: node
- linkType: hard
-
"callsites@npm:^3.0.0":
version: 3.1.0
resolution: "callsites@npm:3.1.0"
@@ -9320,10 +9460,10 @@ __metadata:
languageName: node
linkType: hard
-"caniuse-lite@npm:^1.0.0, caniuse-lite@npm:^1.0.30001109, caniuse-lite@npm:^1.0.30001332, caniuse-lite@npm:^1.0.30001394, caniuse-lite@npm:^1.0.30001426, caniuse-lite@npm:^1.0.30001449":
- version: 1.0.30001450
- resolution: "caniuse-lite@npm:1.0.30001450"
- checksum: 511b360bfc907b2e437699364cf96b83507bc45043926450056642332bcd6f65a1e72540c828534ae15e0ac906e3e9af46cb2bb84458dd580bc31478e9dce282
+"caniuse-lite@npm:^1.0.0, caniuse-lite@npm:^1.0.30001109, caniuse-lite@npm:^1.0.30001332, caniuse-lite@npm:^1.0.30001394, caniuse-lite@npm:^1.0.30001426, caniuse-lite@npm:^1.0.30001538":
+ version: 1.0.30001539
+ resolution: "caniuse-lite@npm:1.0.30001539"
+ checksum: 8595905d6c7234173a4915439fdd69fa2c06b0272d56af63aee0df6114e1ee4727758af160c0db9844055f778e0ea27ed4714facf2e472a2e74d9f567f111f41
languageName: node
linkType: hard
@@ -9370,7 +9510,7 @@ __metadata:
languageName: node
linkType: hard
-"chalk@npm:^2.0.0, chalk@npm:^2.4.1":
+"chalk@npm:^2.4.1, chalk@npm:^2.4.2":
version: 2.4.2
resolution: "chalk@npm:2.4.2"
dependencies:
@@ -10081,6 +10221,13 @@ __metadata:
languageName: node
linkType: hard
+"convert-source-map@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "convert-source-map@npm:2.0.0"
+ checksum: 63ae9933be5a2b8d4509daca5124e20c14d023c820258e484e32dc324d34c2754e71297c94a05784064ad27615037ef677e3f0c00469fb55f409d2bb21261035
+ languageName: node
+ linkType: hard
+
"cookie-signature@npm:1.0.6":
version: 1.0.6
resolution: "cookie-signature@npm:1.0.6"
@@ -10155,12 +10302,12 @@ __metadata:
languageName: node
linkType: hard
-"core-js-compat@npm:^3.21.0, core-js-compat@npm:^3.25.1, core-js-compat@npm:^3.8.1":
- version: 3.27.2
- resolution: "core-js-compat@npm:3.27.2"
+"core-js-compat@npm:^3.31.0, core-js-compat@npm:^3.32.2, core-js-compat@npm:^3.8.1":
+ version: 3.32.2
+ resolution: "core-js-compat@npm:3.32.2"
dependencies:
- browserslist: ^4.21.4
- checksum: 4574d4507de8cba9a75e37401b3ca6e5908ab066ec717e3b34866d25f623e1aa614fb886e10973be64a6250f325dcba6809e4fae4ed43375cc3e4276c5514c13
+ browserslist: ^4.21.10
+ checksum: efca146ad71a542e6f196db5ba5aed617e48c615bdf1fbb065471b3267f833ac545bd5fc5ad0642c3d3974b955f0684ff0863d7471d7050ee0284e0a1313942e
languageName: node
linkType: hard
@@ -10204,18 +10351,6 @@ __metadata:
languageName: node
linkType: hard
-"cosmiconfig@npm:^5.1.0":
- version: 5.2.1
- resolution: "cosmiconfig@npm:5.2.1"
- dependencies:
- import-fresh: ^2.0.0
- is-directory: ^0.3.1
- js-yaml: ^3.13.1
- parse-json: ^4.0.0
- checksum: 8b6f1d3c8a5ffdf663a952f17af0761adf210b7a5933d0fe8988f3ca3a1f0e1e5cbbb74d5b419c15933dd2fdcaec31dbc5cc85cb8259a822342b93b529eff89c
- languageName: node
- linkType: hard
-
"cosmiconfig@npm:^6.0.0":
version: 6.0.0
resolution: "cosmiconfig@npm:6.0.0"
@@ -10242,9 +10377,9 @@ __metadata:
languageName: node
linkType: hard
-"cosmiconfig@npm:^8.2.0":
- version: 8.3.4
- resolution: "cosmiconfig@npm:8.3.4"
+"cosmiconfig@npm:^8.0.0, cosmiconfig@npm:^8.2.0":
+ version: 8.3.6
+ resolution: "cosmiconfig@npm:8.3.6"
dependencies:
import-fresh: ^3.3.0
js-yaml: ^4.1.0
@@ -10255,7 +10390,7 @@ __metadata:
peerDependenciesMeta:
typescript:
optional: true
- checksum: 6e1d46d6f065d4abf6d237cbd60f7a8df2316541e1cd1edc1b742d00c64daf4e225813d14ad8fb8299852ca10ff8f3283978edce660e53906e7c85c5960088cb
+ checksum: dc339ebea427898c9e03bf01b56ba7afbac07fc7d2a2d5a15d6e9c14de98275a9565da949375aee1809591c152c0a3877bb86dbeaf74d5bd5aaa79955ad9e7a0
languageName: node
linkType: hard
@@ -11260,6 +11395,13 @@ __metadata:
languageName: node
linkType: hard
+"deepmerge@npm:^2.2.1":
+ version: 2.2.1
+ resolution: "deepmerge@npm:2.2.1"
+ checksum: 284b71065079e66096229f735a9a0222463c9ca9ee9dda7d5e9a0545bf254906dbc7377e3499ca3b2212073672b1a430d80587993b43b87d8de17edc6af649a8
+ languageName: node
+ linkType: hard
+
"deepmerge@npm:^4.2.2":
version: 4.2.2
resolution: "deepmerge@npm:4.2.2"
@@ -11834,10 +11976,10 @@ __metadata:
languageName: node
linkType: hard
-"electron-to-chromium@npm:^1.4.284":
- version: 1.4.286
- resolution: "electron-to-chromium@npm:1.4.286"
- checksum: 6b53e2aea63892cb4af85ea4ee5ed2b6d848713519987efcf4c1177a32e2fe6d04a7f591f5bcd1feab0b3c88890c6eaf65b6feb16c0e0319bf07e31de31930af
+"electron-to-chromium@npm:^1.4.526":
+ version: 1.4.528
+ resolution: "electron-to-chromium@npm:1.4.528"
+ checksum: e9b249929e012ce6c25f8d1e1965e7fb19a426cc72fdf72026a0ce010846ec1b0efe2730b1a1f3d1c98bd11200b94b73431bc5279211a9f4a28f2389e690c39c
languageName: node
linkType: hard
@@ -11934,7 +12076,7 @@ __metadata:
languageName: node
linkType: hard
-"enhanced-resolve@npm:^4.5.0":
+"enhanced-resolve@npm:^4.1.0, enhanced-resolve@npm:^4.5.0":
version: 4.5.0
resolution: "enhanced-resolve@npm:4.5.0"
dependencies:
@@ -11945,13 +12087,13 @@ __metadata:
languageName: node
linkType: hard
-"enhanced-resolve@npm:^5.0.0, enhanced-resolve@npm:^5.10.0, enhanced-resolve@npm:^5.7.0, enhanced-resolve@npm:^5.8.2":
- version: 5.12.0
- resolution: "enhanced-resolve@npm:5.12.0"
+"enhanced-resolve@npm:^5.0.0, enhanced-resolve@npm:^5.10.0, enhanced-resolve@npm:^5.3.1, enhanced-resolve@npm:^5.7.0":
+ version: 5.15.0
+ resolution: "enhanced-resolve@npm:5.15.0"
dependencies:
graceful-fs: ^4.2.4
tapable: ^2.2.0
- checksum: bf3f787facaf4ce3439bef59d148646344e372bef5557f0d37ea8aa02c51f50a925cd1f07b8d338f18992c29f544ec235a8c64bcdb56030196c48832a5494174
+ checksum: fbd8cdc9263be71cc737aa8a7d6c57b43d6aa38f6cc75dde6fcd3598a130cc465f979d2f4d01bb3bf475acb43817749c79f8eef9be048683602ca91ab52e4f11
languageName: node
linkType: hard
@@ -11978,10 +12120,10 @@ __metadata:
languageName: node
linkType: hard
-"entities@npm:^4.2.0, entities@npm:^4.3.0":
- version: 4.3.1
- resolution: "entities@npm:4.3.1"
- checksum: e8f6d2bac238494b2355e90551893882d2675142be7e7bdfcb15248ed0652a630678ba0e3a8dc750693e736cb6011f504c27dabeb4cd3330560092e88b105090
+"entities@npm:^4.2.0, entities@npm:^4.3.0, entities@npm:^4.5.0":
+ version: 4.5.0
+ resolution: "entities@npm:4.5.0"
+ checksum: 853f8ebd5b425d350bffa97dd6958143179a5938352ccae092c62d1267c4e392a039be1bae7d51b6e4ffad25f51f9617531fedf5237f15df302ccfb452cbf2d7
languageName: node
linkType: hard
@@ -14377,8 +14519,6 @@ __metadata:
"@babel/helper-plugin-utils": ^7.12.13
"@babel/preset-react": ^7.14.5
"@babel/preset-typescript": 7.12.13
- "@babel/template": ^7.12.13
- "@babel/traverse": ^7.12.13
"@codesandbox/sandpack-react": 1.18.4
"@codesandbox/sandpack-themes": 1.17.0
"@docusaurus/core": 2.3.1
@@ -14387,8 +14527,11 @@ __metadata:
"@docusaurus/theme-mermaid": 2.3.1
"@emotion/css": ^11.9.0
"@emotion/hash": ^0.9.0
- "@linaria/babel-preset": ^3.0.0-beta.24
- "@linaria/shaker": ^3.0.0-beta.22
+ "@linaria/babel-preset": ^5.0.2
+ "@linaria/shaker": ^5.0.1
+ "@linaria/tags": ^5.0.1
+ "@linaria/utils": ^5.0.1
+ "@linaria/webpack-loader": ^5.0.2
"@nrwl/cli": 15.3.3
"@nrwl/eslint-plugin-nx": 15.3.3
"@nrwl/jest": 15.3.3
@@ -14442,7 +14585,6 @@ __metadata:
csstype: ^3.1.2
d3-scale-chromatic: ^3.0.0
doctoc: 2.2.1
- enhanced-resolve: ^5.8.2
esbuild: ^0.14.43
esbuild-plugin-alias: ^0.2.1
esbuild-plugin-import-glob: ^0.1.1
@@ -14547,6 +14689,20 @@ __metadata:
languageName: node
linkType: hard
+"happy-dom@npm:10.8.0":
+ version: 10.8.0
+ resolution: "happy-dom@npm:10.8.0"
+ dependencies:
+ css.escape: ^1.5.1
+ entities: ^4.5.0
+ iconv-lite: ^0.6.3
+ webidl-conversions: ^7.0.0
+ whatwg-encoding: ^2.0.0
+ whatwg-mimetype: ^3.0.0
+ checksum: 81ae160f475cf5d6b3ed0685e2bac6042a548c07b445a031c2460df985a27e8ae88c7a7189fb4a63307439c8871ad392e4a1b19d2a1ef8b0a06d5babcdba5f13
+ languageName: node
+ linkType: hard
+
"hard-rejection@npm:^2.1.0":
version: 2.1.0
resolution: "hard-rejection@npm:2.1.0"
@@ -15302,16 +15458,6 @@ __metadata:
languageName: node
linkType: hard
-"import-fresh@npm:^2.0.0":
- version: 2.0.0
- resolution: "import-fresh@npm:2.0.0"
- dependencies:
- caller-path: ^2.0.0
- resolve-from: ^3.0.0
- checksum: 610255f9753cc6775df00be08e9f43691aa39f7703e3636c45afe22346b8b545e600ccfe100c554607546fc8e861fa149a0d1da078c8adedeea30fff326eef79
- languageName: node
- linkType: hard
-
"import-fresh@npm:^3.0.0, import-fresh@npm:^3.1.0, import-fresh@npm:^3.2.1, import-fresh@npm:^3.3.0":
version: 3.3.0
resolution: "import-fresh@npm:3.3.0"
@@ -15740,13 +15886,6 @@ __metadata:
languageName: node
linkType: hard
-"is-directory@npm:^0.3.1":
- version: 0.3.1
- resolution: "is-directory@npm:0.3.1"
- checksum: dce9a9d3981e38f2ded2a80848734824c50ee8680cd09aa477bef617949715cfc987197a2ca0176c58a9fb192a1a0d69b535c397140d241996a609d5906ae524
- languageName: node
- linkType: hard
-
"is-docker@npm:^2.0.0, is-docker@npm:^2.1.1":
version: 2.2.1
resolution: "is-docker@npm:2.2.1"
@@ -15782,7 +15921,7 @@ __metadata:
languageName: node
linkType: hard
-"is-extendable@npm:^1.0.1":
+"is-extendable@npm:^1.0.0, is-extendable@npm:^1.0.1":
version: 1.0.1
resolution: "is-extendable@npm:1.0.1"
dependencies:
@@ -17139,7 +17278,7 @@ __metadata:
languageName: node
linkType: hard
-"json-parse-better-errors@npm:^1.0.1, json-parse-better-errors@npm:^1.0.2":
+"json-parse-better-errors@npm:^1.0.2":
version: 1.0.2
resolution: "json-parse-better-errors@npm:1.0.2"
checksum: ff2b5ba2a70e88fd97a3cb28c1840144c5ce8fae9cbeeddba15afa333a5c407cf0e42300cd0a2885dbb055227fe68d405070faad941beeffbfde9cf3b2c78c5d
@@ -17185,7 +17324,7 @@ __metadata:
languageName: node
linkType: hard
-"json5@npm:^2.1.2, json5@npm:^2.1.3, json5@npm:^2.2.1, json5@npm:^2.2.2":
+"json5@npm:^2.1.2, json5@npm:^2.1.3, json5@npm:^2.2.1, json5@npm:^2.2.3":
version: 2.2.3
resolution: "json5@npm:2.2.3"
bin:
@@ -17510,7 +17649,7 @@ __metadata:
languageName: node
linkType: hard
-"loader-utils@npm:^1.2.3, loader-utils@npm:^1.4.0":
+"loader-utils@npm:^1.2.3, loader-utils@npm:^1.4.0, loader-utils@npm:^1.4.2":
version: 1.4.2
resolution: "loader-utils@npm:1.4.2"
dependencies:
@@ -18612,6 +18751,15 @@ __metadata:
languageName: node
linkType: hard
+"minimatch@npm:^9.0.3":
+ version: 9.0.3
+ resolution: "minimatch@npm:9.0.3"
+ dependencies:
+ brace-expansion: ^2.0.1
+ checksum: 253487976bf485b612f16bf57463520a14f512662e592e95c571afdab1442a6a6864b6c88f248ce6fc4ff0b6de04ac7aa6c8bb51e868e99d1d65eb0658a708b5
+ languageName: node
+ linkType: hard
+
"minimist-options@npm:4.1.0":
version: 4.1.0
resolution: "minimist-options@npm:4.1.0"
@@ -19174,10 +19322,10 @@ __metadata:
languageName: node
linkType: hard
-"node-releases@npm:^2.0.8":
- version: 2.0.9
- resolution: "node-releases@npm:2.0.9"
- checksum: 3ae6b1b300dc72c1a628861093d339a01aa017d3ad9017b0478384be29d6f9c93b9e26c91fce79728cecaadc04d0f16834b7ae1a018730e3e54962ec8c6aa86f
+"node-releases@npm:^2.0.13":
+ version: 2.0.13
+ resolution: "node-releases@npm:2.0.13"
+ checksum: 17ec8f315dba62710cae71a8dad3cd0288ba943d2ece43504b3b1aa8625bf138637798ab470b1d9035b0545996f63000a8a926e0f6d35d0996424f8b6d36dda3
languageName: node
linkType: hard
@@ -19490,6 +19638,15 @@ __metadata:
languageName: node
linkType: hard
+"object.omit@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "object.omit@npm:3.0.0"
+ dependencies:
+ is-extendable: ^1.0.0
+ checksum: 7444bcbd5e240bb933956b02450e61fe3c64670f6a99dd4b9fc26f4261afd629dd4f707770b2e8c399688358f90886d9ce9c31700486f58f1635aaf233d32931
+ languageName: node
+ linkType: hard
+
"object.pick@npm:^1.3.0":
version: 1.3.0
resolution: "object.pick@npm:1.3.0"
@@ -19917,16 +20074,6 @@ __metadata:
languageName: node
linkType: hard
-"parse-json@npm:^4.0.0":
- version: 4.0.0
- resolution: "parse-json@npm:4.0.0"
- dependencies:
- error-ex: ^1.3.1
- json-parse-better-errors: ^1.0.1
- checksum: 0fe227d410a61090c247e34fa210552b834613c006c2c64d9a05cfe9e89cf8b4246d1246b1a99524b53b313e9ac024438d0680f67e33eaed7e6f38db64cfe7b5
- languageName: node
- linkType: hard
-
"parse-json@npm:^5.0.0, parse-json@npm:^5.2.0":
version: 5.2.0
resolution: "parse-json@npm:5.2.0"
@@ -22048,12 +22195,12 @@ __metadata:
languageName: node
linkType: hard
-"regenerator-transform@npm:^0.15.0":
- version: 0.15.0
- resolution: "regenerator-transform@npm:0.15.0"
+"regenerator-transform@npm:^0.15.2":
+ version: 0.15.2
+ resolution: "regenerator-transform@npm:0.15.2"
dependencies:
"@babel/runtime": ^7.8.4
- checksum: 86e54849ab1167618d28bb56d214c52a983daf29b0d115c976d79840511420049b6b42c9ebdf187defa8e7129bdd74b6dd266420d0d3868c9fa7f793b5d15d49
+ checksum: 20b6f9377d65954980fe044cfdd160de98df415b4bff38fbade67b3337efaf078308c4fed943067cd759827cc8cfeca9cb28ccda1f08333b85d6a2acbd022c27
languageName: node
linkType: hard
@@ -22085,17 +22232,17 @@ __metadata:
languageName: node
linkType: hard
-"regexpu-core@npm:^5.2.1":
- version: 5.2.2
- resolution: "regexpu-core@npm:5.2.2"
+"regexpu-core@npm:^5.3.1":
+ version: 5.3.2
+ resolution: "regexpu-core@npm:5.3.2"
dependencies:
+ "@babel/regjsgen": ^0.8.0
regenerate: ^1.4.2
regenerate-unicode-properties: ^10.1.0
- regjsgen: ^0.7.1
regjsparser: ^0.9.1
unicode-match-property-ecmascript: ^2.0.0
unicode-match-property-value-ecmascript: ^2.1.0
- checksum: 87c56815e20d213848d38f6b047ba52f0d632f36e791b777f59327e8d350c0743b27cc25feab64c0eadc9fe9959dde6b1261af71108a9371b72c8c26beda05ef
+ checksum: 95bb97088419f5396e07769b7de96f995f58137ad75fac5811fb5fe53737766dfff35d66a0ee66babb1eb55386ef981feaef392f9df6d671f3c124812ba24da2
languageName: node
linkType: hard
@@ -22117,13 +22264,6 @@ __metadata:
languageName: node
linkType: hard
-"regjsgen@npm:^0.7.1":
- version: 0.7.1
- resolution: "regjsgen@npm:0.7.1"
- checksum: 7cac399921c58db8e16454869283ff66871531180218064fa938ac05c11c2976792a00706c3c78bbc625e1d793ca373065ea90564e06189a751a7b4ae33acadc
- languageName: node
- linkType: hard
-
"regjsparser@npm:^0.9.1":
version: 0.9.1
resolution: "regjsparser@npm:0.9.1"
@@ -22365,13 +22505,6 @@ __metadata:
languageName: node
linkType: hard
-"resolve-from@npm:^3.0.0":
- version: 3.0.0
- resolution: "resolve-from@npm:3.0.0"
- checksum: fff9819254d2d62b57f74e5c2ca9c0bdd425ca47287c4d801bc15f947533148d858229ded7793b0f59e61e49e782fffd6722048add12996e1bd4333c29669062
- languageName: node
- linkType: hard
-
"resolve-from@npm:^4.0.0":
version: 4.0.0
resolution: "resolve-from@npm:4.0.0"
@@ -23005,12 +23138,12 @@ __metadata:
languageName: node
linkType: hard
-"semver@npm:^6.0.0, semver@npm:^6.1.1, semver@npm:^6.1.2, semver@npm:^6.2.0, semver@npm:^6.3.0":
- version: 6.3.0
- resolution: "semver@npm:6.3.0"
+"semver@npm:^6.0.0, semver@npm:^6.1.2, semver@npm:^6.2.0, semver@npm:^6.3.0, semver@npm:^6.3.1":
+ version: 6.3.1
+ resolution: "semver@npm:6.3.1"
bin:
- semver: ./bin/semver.js
- checksum: 1b26ecf6db9e8292dd90df4e781d91875c0dcc1b1909e70f5d12959a23c7eebb8f01ea581c00783bbee72ceeaad9505797c381756326073850dc36ed284b21b9
+ semver: bin/semver.js
+ checksum: ae47d06de28836adb9d3e25f22a92943477371292d9b665fb023fae278d345d508ca1958232af086d85e0155aee22e313e100971898bbb8d5d89b8b1d4054ca2
languageName: node
linkType: hard
@@ -25477,17 +25610,17 @@ __metadata:
languageName: node
linkType: hard
-"update-browserslist-db@npm:^1.0.10":
- version: 1.0.10
- resolution: "update-browserslist-db@npm:1.0.10"
+"update-browserslist-db@npm:^1.0.13":
+ version: 1.0.13
+ resolution: "update-browserslist-db@npm:1.0.13"
dependencies:
escalade: ^3.1.1
picocolors: ^1.0.0
peerDependencies:
browserslist: ">= 4.21.0"
bin:
- browserslist-lint: cli.js
- checksum: 12db73b4f63029ac407b153732e7cd69a1ea8206c9100b482b7d12859cd3cd0bc59c602d7ae31e652706189f1acb90d42c53ab24a5ba563ed13aebdddc5561a0
+ update-browserslist-db: cli.js
+ checksum: 1e47d80182ab6e4ad35396ad8b61008ae2a1330221175d0abd37689658bdb61af9b705bfc41057fd16682474d79944fb2d86767c5ed5ae34b6276b9bed353322
languageName: node
linkType: hard