diff --git a/.vscode/settings.json b/.vscode/settings.json index 0e44f1cb9cb..67c80d44453 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,5 +1,6 @@ { "diffEditor.wordWrap": "on", "editor.rename.enablePreview": false, - "nxConsole.generateAiAgentRules": true + "nxConsole.generateAiAgentRules": true, + "eslint.validate": ["json"] } diff --git a/nx.json b/nx.json index 4d62dbd7190..b54c167ddc2 100644 --- a/nx.json +++ b/nx.json @@ -48,6 +48,15 @@ }, "@module-federation/3002-checkout:build:production": { "cache": false + }, + "@nx/js:tsc": { + "cache": true, + "dependsOn": ["^build"], + "inputs": ["production", "^production"] + }, + "@nx/vite:test": { + "cache": true, + "inputs": ["default", "^production"] } }, "namedInputs": { diff --git a/package.json b/package.json index d0110b108a9..a96ef6377a9 100644 --- a/package.json +++ b/package.json @@ -117,6 +117,7 @@ "@nx/module-federation": "21.0.3", "@nx/next": "21.0.3", "@nx/node": "21.0.3", + "@nx/plugin": "21.0.3", "@nx/react": "21.0.3", "@nx/rollup": "21.0.3", "@nx/rspack": "21.0.3", @@ -198,6 +199,8 @@ "jest-environment-node": "29.7.0", "jiti": "2.4.2", "js-yaml": "4.1.0", + "jsdom": "~22.1.0", + "jsonc-eslint-parser": "^2.1.0", "kill-port": "^2.0.1", "mime-types": "2.1.35", "msw": "^1.2.1", diff --git a/packages/error-codes/project.json b/packages/error-codes/project.json index 322be8e8734..c173d1f168f 100644 --- a/packages/error-codes/project.json +++ b/packages/error-codes/project.json @@ -66,6 +66,12 @@ } ] } + }, + "echo": { + "executor": "rslib:echo", + "options": { + "textToEcho": "Hello World" + } } } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 090cac6322d..2b76122fa66 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -149,6 +149,9 @@ importers: '@nx/node': specifier: 21.0.3 version: 21.0.3(@swc-node/register@1.10.10)(@swc/core@1.7.26)(@types/node@18.16.9)(eslint@8.57.1)(nx@21.0.3)(typescript@5.7.3)(verdaccio@6.1.2) + '@nx/plugin': + specifier: 21.0.3 + version: 21.0.3(@swc-node/register@1.10.10)(@swc/core@1.7.26)(@types/node@18.16.9)(eslint@8.57.1)(nx@21.0.3)(typescript@5.7.3)(verdaccio@6.1.2) '@nx/react': specifier: 21.0.3 version: 21.0.3(@swc-node/register@1.10.10)(@swc/core@1.7.26)(@swc/helpers@0.5.13)(esbuild@0.25.0)(eslint@8.57.1)(next@14.2.16)(nx@21.0.3)(react-dom@18.3.1)(react@18.3.1)(typescript@5.7.3)(verdaccio@6.1.2)(vue-tsc@2.2.10)(webpack-cli@5.1.4)(webpack@5.98.0) @@ -392,6 +395,12 @@ importers: js-yaml: specifier: 4.1.0 version: 4.1.0 + jsdom: + specifier: ~22.1.0 + version: 22.1.0 + jsonc-eslint-parser: + specifier: ^2.1.0 + version: 2.4.0 kill-port: specifier: ^2.0.1 version: 2.0.1 @@ -481,7 +490,7 @@ importers: version: 4.2.3(typescript@5.7.3)(vite@6.3.5) vitest: specifier: 1.6.0 - version: 1.6.0(@types/node@18.16.9)(@vitest/ui@1.6.0)(less@4.3.0)(stylus@0.64.0) + version: 1.6.0(@types/node@18.16.9)(@vitest/ui@1.6.0)(jsdom@22.1.0)(less@4.3.0)(stylus@0.64.0) vitest-fetch-mock: specifier: ^0.2.2 version: 0.2.2(encoding@0.1.13)(vitest@1.6.0) @@ -2291,7 +2300,7 @@ importers: version: 5.0.4 vitest: specifier: 1.2.2 - version: 1.2.2(@types/node@20.12.14)(@vitest/ui@1.6.0)(less@4.3.0)(stylus@0.64.0) + version: 1.2.2(@types/node@20.12.14)(@vitest/ui@1.6.0)(jsdom@22.1.0)(less@4.3.0)(stylus@0.64.0) packages/cli: dependencies: @@ -3378,7 +3387,7 @@ packages: '@babel/traverse': 7.27.0 '@babel/types': 7.27.0 convert-source-map: 1.9.0 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) gensync: 1.0.0-beta.2 json5: 2.2.3 lodash: 4.17.21 @@ -3423,10 +3432,10 @@ packages: '@babel/helpers': 7.26.0 '@babel/parser': 7.27.0 '@babel/template': 7.25.9 - '@babel/traverse': 7.26.9(supports-color@5.5.0) + '@babel/traverse': 7.26.9 '@babel/types': 7.26.9 convert-source-map: 2.0.0 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) gensync: 1.0.0-beta.2 json5: 2.2.3 semver: 6.3.1 @@ -3449,7 +3458,7 @@ packages: '@babel/traverse': 7.25.9 '@babel/types': 7.26.0 convert-source-map: 2.0.0 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) gensync: 1.0.0-beta.2 json5: 2.2.3 semver: 6.3.1 @@ -3469,10 +3478,10 @@ packages: '@babel/helpers': 7.26.0 '@babel/parser': 7.26.9 '@babel/template': 7.25.9 - '@babel/traverse': 7.26.9(supports-color@5.5.0) + '@babel/traverse': 7.26.9 '@babel/types': 7.26.9 convert-source-map: 2.0.0 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) gensync: 1.0.0-beta.2 json5: 2.2.3 semver: 6.3.1 @@ -3494,7 +3503,7 @@ packages: '@babel/traverse': 7.27.0 '@babel/types': 7.27.0 convert-source-map: 2.0.0 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) gensync: 1.0.0-beta.2 json5: 2.2.3 semver: 6.3.1 @@ -3513,10 +3522,10 @@ packages: '@babel/helpers': 7.26.9 '@babel/parser': 7.27.0 '@babel/template': 7.26.9 - '@babel/traverse': 7.26.9(supports-color@5.5.0) + '@babel/traverse': 7.26.9 '@babel/types': 7.26.9 convert-source-map: 2.0.0 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) gensync: 1.0.0-beta.2 json5: 2.2.3 semver: 6.3.1 @@ -3634,7 +3643,7 @@ packages: resolution: {integrity: sha512-C47lC7LIDCnz0h4vai/tpNOI95tCd5ZT3iBt/DBH5lXKHZsyNQv18yf1wIIg2ntiQNgmAvA+DgZ82iW8Qdym8g==} engines: {node: '>=6.9.0'} dependencies: - '@babel/traverse': 7.26.9(supports-color@5.5.0) + '@babel/traverse': 7.26.9 '@babel/types': 7.26.9 transitivePeerDependencies: - supports-color @@ -3691,7 +3700,7 @@ packages: '@babel/helper-optimise-call-expression': 7.25.7 '@babel/helper-replace-supers': 7.25.7(@babel/core@7.25.2) '@babel/helper-skip-transparent-expression-wrappers': 7.25.7 - '@babel/traverse': 7.26.9(supports-color@5.5.0) + '@babel/traverse': 7.26.9 semver: 6.3.1 transitivePeerDependencies: - supports-color @@ -3709,7 +3718,7 @@ packages: '@babel/helper-optimise-call-expression': 7.25.7 '@babel/helper-replace-supers': 7.25.7(@babel/core@7.26.9) '@babel/helper-skip-transparent-expression-wrappers': 7.25.7 - '@babel/traverse': 7.26.9(supports-color@5.5.0) + '@babel/traverse': 7.26.9 semver: 6.3.1 transitivePeerDependencies: - supports-color @@ -3727,7 +3736,7 @@ packages: '@babel/helper-optimise-call-expression': 7.25.9 '@babel/helper-replace-supers': 7.25.9(@babel/core@7.25.2) '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 - '@babel/traverse': 7.26.9(supports-color@5.5.0) + '@babel/traverse': 7.26.9 semver: 6.3.1 transitivePeerDependencies: - supports-color @@ -3745,7 +3754,7 @@ packages: '@babel/helper-optimise-call-expression': 7.25.9 '@babel/helper-replace-supers': 7.25.9(@babel/core@7.26.10) '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 - '@babel/traverse': 7.26.9(supports-color@5.5.0) + '@babel/traverse': 7.26.9 semver: 6.3.1 transitivePeerDependencies: - supports-color @@ -3763,7 +3772,7 @@ packages: '@babel/helper-optimise-call-expression': 7.25.9 '@babel/helper-replace-supers': 7.25.9(@babel/core@7.26.9) '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 - '@babel/traverse': 7.26.9(supports-color@5.5.0) + '@babel/traverse': 7.26.9 semver: 6.3.1 transitivePeerDependencies: - supports-color @@ -3822,7 +3831,7 @@ packages: '@babel/core': 7.26.10 '@babel/helper-compilation-targets': 7.25.9 '@babel/helper-plugin-utils': 7.25.9 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) lodash.debounce: 4.0.8 resolve: 1.22.8 transitivePeerDependencies: @@ -3837,7 +3846,7 @@ packages: '@babel/core': 7.26.9 '@babel/helper-compilation-targets': 7.25.9 '@babel/helper-plugin-utils': 7.25.9 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) lodash.debounce: 4.0.8 resolve: 1.22.8 transitivePeerDependencies: @@ -3870,6 +3879,15 @@ packages: transitivePeerDependencies: - supports-color + /@babel/helper-module-imports@7.25.9: + resolution: {integrity: sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/traverse': 7.26.9 + '@babel/types': 7.26.9 + transitivePeerDependencies: + - supports-color + /@babel/helper-module-imports@7.25.9(supports-color@5.5.0): resolution: {integrity: sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==} engines: {node: '>=6.9.0'} @@ -3889,7 +3907,7 @@ packages: '@babel/helper-module-imports': 7.25.7 '@babel/helper-simple-access': 7.24.7 '@babel/helper-validator-identifier': 7.24.7 - '@babel/traverse': 7.26.9(supports-color@5.5.0) + '@babel/traverse': 7.26.9 transitivePeerDependencies: - supports-color @@ -3900,7 +3918,7 @@ packages: '@babel/core': ^7.0.0 dependencies: '@babel/core': 7.12.9 - '@babel/helper-module-imports': 7.25.9(supports-color@5.5.0) + '@babel/helper-module-imports': 7.25.9 '@babel/helper-validator-identifier': 7.25.9 '@babel/traverse': 7.27.0 transitivePeerDependencies: @@ -3914,7 +3932,7 @@ packages: '@babel/core': ^7.0.0 dependencies: '@babel/core': 7.25.7 - '@babel/helper-module-imports': 7.25.9(supports-color@5.5.0) + '@babel/helper-module-imports': 7.25.9 '@babel/helper-validator-identifier': 7.25.9 '@babel/traverse': 7.27.0 transitivePeerDependencies: @@ -3928,7 +3946,7 @@ packages: '@babel/core': ^7.0.0 dependencies: '@babel/core': 7.25.8 - '@babel/helper-module-imports': 7.25.9(supports-color@5.5.0) + '@babel/helper-module-imports': 7.25.9 '@babel/helper-validator-identifier': 7.25.9 '@babel/traverse': 7.27.0 transitivePeerDependencies: @@ -3942,7 +3960,7 @@ packages: '@babel/core': ^7.0.0 dependencies: '@babel/core': 7.26.0 - '@babel/helper-module-imports': 7.25.9(supports-color@5.5.0) + '@babel/helper-module-imports': 7.25.9 '@babel/helper-validator-identifier': 7.25.9 '@babel/traverse': 7.27.0 transitivePeerDependencies: @@ -3955,7 +3973,7 @@ packages: '@babel/core': ^7.0.0 dependencies: '@babel/core': 7.26.10 - '@babel/helper-module-imports': 7.25.9(supports-color@5.5.0) + '@babel/helper-module-imports': 7.25.9 '@babel/helper-validator-identifier': 7.25.9 '@babel/traverse': 7.27.0 transitivePeerDependencies: @@ -3968,7 +3986,7 @@ packages: '@babel/core': ^7.0.0 dependencies: '@babel/core': 7.26.9 - '@babel/helper-module-imports': 7.25.9(supports-color@5.5.0) + '@babel/helper-module-imports': 7.25.9 '@babel/helper-validator-identifier': 7.25.9 '@babel/traverse': 7.27.0 transitivePeerDependencies: @@ -4094,7 +4112,7 @@ packages: resolution: {integrity: sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg==} engines: {node: '>=6.9.0'} dependencies: - '@babel/traverse': 7.26.9(supports-color@5.5.0) + '@babel/traverse': 7.26.9 '@babel/types': 7.26.9 transitivePeerDependencies: - supports-color @@ -4103,7 +4121,7 @@ packages: resolution: {integrity: sha512-FPGAkJmyoChQeM+ruBGIDyrT2tKfZJO8NcxdC+CWNJi7N8/rZpSxK7yvBJ5O/nF1gfu5KzN7VKG3YVSLFfRSxQ==} engines: {node: '>=6.9.0'} dependencies: - '@babel/traverse': 7.26.9(supports-color@5.5.0) + '@babel/traverse': 7.26.9 '@babel/types': 7.26.9 transitivePeerDependencies: - supports-color @@ -4113,7 +4131,7 @@ packages: resolution: {integrity: sha512-c6WHXuiaRsJTyHYLJV75t9IqsmTbItYfdj99PnzYGQZkYKvan5/2jKJ7gu31J3/BJ/A18grImSPModuyG/Eo0Q==} engines: {node: '>=6.9.0'} dependencies: - '@babel/traverse': 7.26.9(supports-color@5.5.0) + '@babel/traverse': 7.26.9 '@babel/types': 7.26.9 transitivePeerDependencies: - supports-color @@ -4131,7 +4149,7 @@ packages: resolution: {integrity: sha512-K4Du3BFa3gvyhzgPcntrkDgZzQaq6uozzcpGbOO1OEJaI+EJdqWIMTLgFgQf6lrfiDFo5FU+BxKepI9RmZqahA==} engines: {node: '>=6.9.0'} dependencies: - '@babel/traverse': 7.26.9(supports-color@5.5.0) + '@babel/traverse': 7.26.9 '@babel/types': 7.26.9 transitivePeerDependencies: - supports-color @@ -4169,7 +4187,7 @@ packages: engines: {node: '>=6.9.0'} dependencies: '@babel/template': 7.26.9 - '@babel/traverse': 7.26.9(supports-color@5.5.0) + '@babel/traverse': 7.26.9 '@babel/types': 7.26.9 transitivePeerDependencies: - supports-color @@ -5126,7 +5144,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.26.10 - '@babel/helper-module-imports': 7.25.9(supports-color@5.5.0) + '@babel/helper-module-imports': 7.25.9 '@babel/helper-plugin-utils': 7.25.9 '@babel/helper-remap-async-to-generator': 7.25.9(@babel/core@7.26.10) transitivePeerDependencies: @@ -5140,7 +5158,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.26.9 - '@babel/helper-module-imports': 7.25.9(supports-color@5.5.0) + '@babel/helper-module-imports': 7.25.9 '@babel/helper-plugin-utils': 7.25.9 '@babel/helper-remap-async-to-generator': 7.25.9(@babel/core@7.26.9) transitivePeerDependencies: @@ -6105,7 +6123,7 @@ packages: dependencies: '@babel/core': 7.25.2 '@babel/helper-annotate-as-pure': 7.25.9 - '@babel/helper-module-imports': 7.25.9(supports-color@5.5.0) + '@babel/helper-module-imports': 7.25.9 '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-syntax-jsx': 7.25.9(@babel/core@7.25.2) '@babel/types': 7.26.0 @@ -6121,7 +6139,7 @@ packages: dependencies: '@babel/core': 7.25.8 '@babel/helper-annotate-as-pure': 7.25.9 - '@babel/helper-module-imports': 7.25.9(supports-color@5.5.0) + '@babel/helper-module-imports': 7.25.9 '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-syntax-jsx': 7.25.9(@babel/core@7.25.8) '@babel/types': 7.26.0 @@ -6137,7 +6155,7 @@ packages: dependencies: '@babel/core': 7.26.10 '@babel/helper-annotate-as-pure': 7.25.9 - '@babel/helper-module-imports': 7.25.9(supports-color@5.5.0) + '@babel/helper-module-imports': 7.25.9 '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-syntax-jsx': 7.25.9(@babel/core@7.26.10) '@babel/types': 7.26.0 @@ -6153,7 +6171,7 @@ packages: dependencies: '@babel/core': 7.26.9 '@babel/helper-annotate-as-pure': 7.25.9 - '@babel/helper-module-imports': 7.25.9(supports-color@5.5.0) + '@babel/helper-module-imports': 7.25.9 '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-syntax-jsx': 7.25.9(@babel/core@7.26.9) '@babel/types': 7.26.0 @@ -6282,7 +6300,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.26.10 - '@babel/helper-module-imports': 7.25.9(supports-color@5.5.0) + '@babel/helper-module-imports': 7.25.9 '@babel/helper-plugin-utils': 7.25.9 babel-plugin-polyfill-corejs2: 0.4.11(@babel/core@7.26.10) babel-plugin-polyfill-corejs3: 0.10.6(@babel/core@7.26.10) @@ -6299,7 +6317,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.26.9 - '@babel/helper-module-imports': 7.25.9(supports-color@5.5.0) + '@babel/helper-module-imports': 7.25.9 '@babel/helper-plugin-utils': 7.25.9 babel-plugin-polyfill-corejs2: 0.4.11(@babel/core@7.26.9) babel-plugin-polyfill-corejs3: 0.10.6(@babel/core@7.26.9) @@ -6941,7 +6959,7 @@ packages: '@babel/parser': 7.26.9 '@babel/template': 7.25.9 '@babel/types': 7.26.9 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) globals: 11.12.0 transitivePeerDependencies: - supports-color @@ -6955,7 +6973,7 @@ packages: '@babel/parser': 7.27.0 '@babel/template': 7.25.9 '@babel/types': 7.26.9 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) globals: 11.12.0 transitivePeerDependencies: - supports-color @@ -6969,7 +6987,21 @@ packages: '@babel/parser': 7.27.0 '@babel/template': 7.26.9 '@babel/types': 7.26.10 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) + globals: 11.12.0 + transitivePeerDependencies: + - supports-color + + /@babel/traverse@7.26.9: + resolution: {integrity: sha512-ZYW7L+pL8ahU5fXmNbPF+iZFHCv5scFak7MZ9bwaRPLUhHh7QQEMjZUg0HevihoqCM5iSYHN61EyCoZvqC+bxg==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/code-frame': 7.26.2 + '@babel/generator': 7.26.9 + '@babel/parser': 7.26.9 + '@babel/template': 7.26.9 + '@babel/types': 7.26.9 + debug: 4.4.0(supports-color@8.1.1) globals: 11.12.0 transitivePeerDependencies: - supports-color @@ -6997,7 +7029,7 @@ packages: '@babel/parser': 7.27.0 '@babel/template': 7.27.0 '@babel/types': 7.27.0 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) globals: 11.12.0 transitivePeerDependencies: - supports-color @@ -7725,7 +7757,7 @@ packages: /@emotion/babel-plugin@11.12.0: resolution: {integrity: sha512-y2WQb+oP8Jqvvclh8Q55gLUyb7UFvgv7eJfsj7td5TToBrIUtPay2kMrZi4xjq9qw2vD0ZR5fSho0yqoFgX7Rw==} dependencies: - '@babel/helper-module-imports': 7.25.9(supports-color@5.5.0) + '@babel/helper-module-imports': 7.25.9 '@babel/runtime': 7.26.0 '@emotion/hash': 0.9.2 '@emotion/memoize': 0.9.0 @@ -9320,7 +9352,7 @@ packages: engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: ajv: 6.12.6 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) espree: 9.6.1 globals: 13.24.0 ignore: 5.3.2 @@ -9337,7 +9369,7 @@ packages: engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} dependencies: ajv: 6.12.6 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) espree: 10.3.0 globals: 14.0.0 ignore: 5.3.2 @@ -9426,7 +9458,7 @@ packages: deprecated: Use @eslint/config-array instead dependencies: '@humanwhocodes/object-schema': 2.0.3 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) minimatch: 3.1.2 transitivePeerDependencies: - supports-color @@ -9437,7 +9469,7 @@ packages: deprecated: Use @eslint/config-array instead dependencies: '@humanwhocodes/object-schema': 2.0.3 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) minimatch: 3.1.2 transitivePeerDependencies: - supports-color @@ -10388,7 +10420,7 @@ packages: optional: true dependencies: '@babel/parser': 7.26.9 - '@babel/traverse': 7.26.9(supports-color@5.5.0) + '@babel/traverse': 7.26.9 '@babel/types': 7.26.9 '@modern-js/core': 2.65.1 '@modern-js/node-bundle-require': 2.65.1 @@ -10458,7 +10490,7 @@ packages: optional: true dependencies: '@babel/parser': 7.26.9 - '@babel/traverse': 7.26.9(supports-color@5.5.0) + '@babel/traverse': 7.26.9 '@babel/types': 7.26.9 '@modern-js/core': 2.65.1 '@modern-js/node-bundle-require': 2.65.1 @@ -12450,7 +12482,7 @@ packages: '@open-draft/until': 1.0.3 '@types/debug': 4.1.12 '@xmldom/xmldom': 0.8.10 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) headers-polyfill: 3.2.5 outvariant: 1.4.3 strict-event-emitter: 0.2.8 @@ -13684,6 +13716,31 @@ packages: requiresBuild: true optional: true + /@nx/plugin@21.0.3(@swc-node/register@1.10.10)(@swc/core@1.7.26)(@types/node@18.16.9)(eslint@8.57.1)(nx@21.0.3)(typescript@5.7.3)(verdaccio@6.1.2): + resolution: {integrity: sha512-lyAlWFSufnAeN7J4Nc1nNIPWPtvLaTrt6NVhRAH9vE220gWkmoPg+aSHlLRPEZmPTNpwCqqUGXk86s6HWB5zbg==} + dependencies: + '@nx/devkit': 21.0.3(nx@21.0.3) + '@nx/eslint': 21.0.3(@swc-node/register@1.10.10)(@swc/core@1.7.26)(eslint@8.57.1)(nx@21.0.3)(verdaccio@6.1.2) + '@nx/jest': 21.0.3(@swc-node/register@1.10.10)(@swc/core@1.7.26)(@types/node@18.16.9)(nx@21.0.3)(typescript@5.7.3)(verdaccio@6.1.2) + '@nx/js': 21.0.3(@swc-node/register@1.10.10)(@swc/core@1.7.26)(nx@21.0.3)(verdaccio@6.1.2) + tslib: 2.8.1 + transitivePeerDependencies: + - '@babel/traverse' + - '@swc-node/register' + - '@swc/core' + - '@types/node' + - '@zkochan/js-yaml' + - babel-plugin-macros + - debug + - eslint + - node-notifier + - nx + - supports-color + - ts-node + - typescript + - verdaccio + dev: true + /@nx/react@20.1.1(@swc-node/register@1.10.10)(@swc/core@1.7.26)(@types/node@20.12.14)(eslint@9.0.0)(nx@21.0.3)(react-dom@18.3.1)(react@18.3.1)(typescript@5.7.3)(verdaccio@6.1.2)(vue-tsc@2.2.10)(webpack@5.94.0): resolution: {integrity: sha512-1oXMAgedERHn8LV5FQ4IE3PxmqZLq0fkJXiDjUmL6Lv0alJVDtUWPa+Fr/KIfx9OOw1oGu3ZPPWYGipcSwGeIQ==} dependencies: @@ -13899,7 +13956,7 @@ packages: semver: 7.6.3 tsconfig-paths: 4.2.0 vite: 6.3.5(@types/node@18.16.9)(jiti@2.4.2)(less@4.3.0)(stylus@0.64.0) - vitest: 1.6.0(@types/node@18.16.9)(@vitest/ui@1.6.0)(less@4.3.0)(stylus@0.64.0) + vitest: 1.6.0(@types/node@18.16.9)(@vitest/ui@1.6.0)(jsdom@22.1.0)(less@4.3.0)(stylus@0.64.0) transitivePeerDependencies: - '@babel/traverse' - '@swc-node/register' @@ -15752,7 +15809,7 @@ packages: optional: true dependencies: '@babel/core': 7.25.2 - '@babel/helper-module-imports': 7.25.9(supports-color@5.5.0) + '@babel/helper-module-imports': 7.25.9 '@rollup/pluginutils': 5.1.3(rollup@4.40.0) rollup: 4.40.0 transitivePeerDependencies: @@ -18508,7 +18565,7 @@ packages: conventional-changelog-writer: 8.0.1 conventional-commits-filter: 5.0.0 conventional-commits-parser: 6.1.0 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) import-from-esm: 2.0.0 lodash-es: 4.17.21 micromatch: 4.0.8 @@ -18575,7 +18632,7 @@ packages: '@octokit/plugin-throttling': 9.4.0(@octokit/core@6.1.4) '@semantic-release/error': 4.0.0 aggregate-error: 5.0.0 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) dir-glob: 3.0.1 globby: 14.1.0 http-proxy-agent: 7.0.2 @@ -18644,7 +18701,7 @@ packages: conventional-changelog-writer: 8.0.1 conventional-commits-filter: 5.0.0 conventional-commits-parser: 6.1.0 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) get-stream: 7.0.1 import-from-esm: 2.0.0 into-stream: 7.0.0 @@ -19847,7 +19904,7 @@ packages: typescript: '>= 3.x' webpack: '>= 4' dependencies: - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) endent: 2.1.0 find-cache-dir: 3.3.2 flat-cache: 3.2.0 @@ -19866,7 +19923,7 @@ packages: typescript: '>= 4.x' webpack: '>= 4' dependencies: - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) endent: 2.1.0 find-cache-dir: 3.3.2 flat-cache: 3.2.0 @@ -19885,7 +19942,7 @@ packages: typescript: '>= 4.x' webpack: '>= 4' dependencies: - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) endent: 2.1.0 find-cache-dir: 3.3.2 flat-cache: 3.2.0 @@ -20461,7 +20518,7 @@ packages: '@swc-node/sourcemap-support': 0.5.1 '@swc/core': 1.7.26(@swc/helpers@0.5.13) colorette: 2.0.20 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) oxc-resolver: 5.2.0 pirates: 4.0.7 tslib: 2.8.1 @@ -21884,7 +21941,7 @@ packages: '@typescript-eslint/scope-manager': 5.62.0 '@typescript-eslint/type-utils': 5.62.0(eslint@8.57.1)(typescript@5.0.4) '@typescript-eslint/utils': 5.62.0(eslint@8.57.1)(typescript@5.0.4) - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) eslint: 8.57.1 graphemer: 1.4.0 ignore: 5.3.2 @@ -21936,7 +21993,7 @@ packages: '@typescript-eslint/scope-manager': 5.62.0 '@typescript-eslint/types': 5.62.0 '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.0.4) - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) eslint: 8.57.1 typescript: 5.0.4 transitivePeerDependencies: @@ -21957,7 +22014,7 @@ packages: '@typescript-eslint/types': 6.21.0 '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.7.3) '@typescript-eslint/visitor-keys': 6.21.0 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) eslint: 8.57.1 typescript: 5.7.3 transitivePeerDependencies: @@ -21978,7 +22035,7 @@ packages: '@typescript-eslint/types': 6.21.0 '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.4.5) '@typescript-eslint/visitor-keys': 6.21.0 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) eslint: 9.0.0 typescript: 5.4.5 transitivePeerDependencies: @@ -22058,7 +22115,7 @@ packages: dependencies: '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.0.4) '@typescript-eslint/utils': 5.62.0(eslint@8.57.1)(typescript@5.0.4) - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) eslint: 8.57.1 tsutils: 3.21.0(typescript@5.0.4) typescript: 5.0.4 @@ -22078,7 +22135,7 @@ packages: dependencies: '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.7.3) '@typescript-eslint/utils': 7.18.0(eslint@8.57.1)(typescript@5.7.3) - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) eslint: 8.57.1 ts-api-utils: 1.3.0(typescript@5.7.3) typescript: 5.7.3 @@ -22097,7 +22154,7 @@ packages: dependencies: '@typescript-eslint/typescript-estree': 8.8.0(typescript@5.7.3) '@typescript-eslint/utils': 8.8.0(eslint@8.57.1)(typescript@5.7.3) - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) ts-api-utils: 1.3.0(typescript@5.7.3) typescript: 5.7.3 transitivePeerDependencies: @@ -22141,7 +22198,7 @@ packages: dependencies: '@typescript-eslint/types': 5.62.0 '@typescript-eslint/visitor-keys': 5.62.0 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) globby: 11.1.0 is-glob: 4.0.3 semver: 7.6.3 @@ -22162,7 +22219,7 @@ packages: dependencies: '@typescript-eslint/types': 6.21.0 '@typescript-eslint/visitor-keys': 6.21.0 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) globby: 11.1.0 is-glob: 4.0.3 minimatch: 9.0.3 @@ -22184,7 +22241,7 @@ packages: dependencies: '@typescript-eslint/types': 6.21.0 '@typescript-eslint/visitor-keys': 6.21.0 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) globby: 11.1.0 is-glob: 4.0.3 minimatch: 9.0.3 @@ -22206,7 +22263,7 @@ packages: dependencies: '@typescript-eslint/types': 7.18.0 '@typescript-eslint/visitor-keys': 7.18.0 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) globby: 11.1.0 is-glob: 4.0.3 minimatch: 9.0.5 @@ -22228,7 +22285,7 @@ packages: dependencies: '@typescript-eslint/types': 8.14.0 '@typescript-eslint/visitor-keys': 8.14.0 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) fast-glob: 3.3.2 is-glob: 4.0.3 minimatch: 9.0.5 @@ -22250,7 +22307,7 @@ packages: dependencies: '@typescript-eslint/types': 8.8.0 '@typescript-eslint/visitor-keys': 8.8.0 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) fast-glob: 3.3.2 is-glob: 4.0.3 minimatch: 9.0.5 @@ -22591,7 +22648,7 @@ packages: '@verdaccio/loaders': 8.0.0-next-8.6 '@verdaccio/signature': 8.0.0-next-8.7 '@verdaccio/utils': 8.1.0-next-8.15 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) lodash: 4.17.21 verdaccio-htpasswd: 13.0.0-next-8.15 transitivePeerDependencies: @@ -22610,7 +22667,7 @@ packages: dependencies: '@verdaccio/core': 8.0.0-next-8.15 '@verdaccio/utils': 8.1.0-next-8.15 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) js-yaml: 4.1.0 lodash: 4.17.21 minimatch: 7.4.6 @@ -22644,7 +22701,7 @@ packages: resolution: {integrity: sha512-yuqD8uAZJcgzuNHjV6C438UNT5r2Ai9+SnUlO34AHZdWSYcluO3Zj5R3p5uf+C7YPCE31pUD27wBU74xVbUoBw==} engines: {node: '>=18'} dependencies: - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) lodash: 4.17.21 transitivePeerDependencies: - supports-color @@ -22671,7 +22728,7 @@ packages: '@verdaccio/core': 8.0.0-next-8.15 '@verdaccio/logger-prettify': 8.0.0-next-8.2 colorette: 2.0.20 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) transitivePeerDependencies: - supports-color @@ -22702,7 +22759,7 @@ packages: '@verdaccio/core': 8.0.0-next-8.15 '@verdaccio/url': 13.0.0-next-8.15 '@verdaccio/utils': 8.1.0-next-8.15 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) express: 4.21.2 express-rate-limit: 5.5.1 lodash: 4.17.21 @@ -22720,7 +22777,7 @@ packages: engines: {node: '>=18'} dependencies: '@verdaccio/config': 8.0.0-next-8.15 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) jsonwebtoken: 9.0.2 transitivePeerDependencies: - supports-color @@ -22736,7 +22793,7 @@ packages: '@verdaccio/core': 8.0.0-next-8.15 '@verdaccio/url': 13.0.0-next-8.15 '@verdaccio/utils': 8.1.0-next-8.15 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) gunzip-maybe: 1.4.2 lodash: 4.17.21 tar-stream: 3.1.7 @@ -22751,7 +22808,7 @@ packages: engines: {node: '>=18'} dependencies: '@verdaccio/core': 8.0.0-next-8.15 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) lodash: 4.17.21 validator: 13.12.0 transitivePeerDependencies: @@ -22850,7 +22907,7 @@ packages: magicast: 0.3.5 picocolors: 1.1.0 test-exclude: 6.0.0 - vitest: 1.6.0(@types/node@18.16.9)(@vitest/ui@1.6.0)(less@4.3.0)(stylus@0.64.0) + vitest: 1.6.0(@types/node@18.16.9)(@vitest/ui@1.6.0)(jsdom@22.1.0)(less@4.3.0)(stylus@0.64.0) transitivePeerDependencies: - supports-color dev: true @@ -22873,7 +22930,7 @@ packages: std-env: 3.7.0 strip-literal: 2.1.0 test-exclude: 6.0.0 - vitest: 1.6.0(@types/node@18.16.9)(@vitest/ui@1.6.0)(less@4.3.0)(stylus@0.64.0) + vitest: 1.6.0(@types/node@18.16.9)(@vitest/ui@1.6.0)(jsdom@22.1.0)(less@4.3.0)(stylus@0.64.0) transitivePeerDependencies: - supports-color dev: true @@ -22973,7 +23030,7 @@ packages: pathe: 1.1.2 picocolors: 1.1.0 sirv: 2.0.4 - vitest: 1.6.0(@types/node@18.16.9)(@vitest/ui@1.6.0)(less@4.3.0)(stylus@0.64.0) + vitest: 1.6.0(@types/node@18.16.9)(@vitest/ui@1.6.0)(jsdom@22.1.0)(less@4.3.0)(stylus@0.64.0) dev: true /@vitest/utils@1.2.2: @@ -23071,11 +23128,11 @@ packages: optional: true dependencies: '@babel/core': 7.25.2 - '@babel/helper-module-imports': 7.25.9(supports-color@5.5.0) + '@babel/helper-module-imports': 7.25.9 '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-syntax-jsx': 7.25.7(@babel/core@7.25.2) '@babel/template': 7.25.9 - '@babel/traverse': 7.26.9(supports-color@5.5.0) + '@babel/traverse': 7.26.9 '@babel/types': 7.26.9 '@vue/babel-helper-vue-transform-on': 1.2.5 '@vue/babel-plugin-resolve-type': 1.2.5(@babel/core@7.25.2) @@ -23092,7 +23149,7 @@ packages: dependencies: '@babel/code-frame': 7.26.2 '@babel/core': 7.25.2 - '@babel/helper-module-imports': 7.25.9(supports-color@5.5.0) + '@babel/helper-module-imports': 7.25.9 '@babel/helper-plugin-utils': 7.25.9 '@babel/parser': 7.27.0 '@vue/compiler-sfc': 3.5.13 @@ -23984,7 +24041,7 @@ packages: resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} engines: {node: '>= 6.0.0'} dependencies: - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) transitivePeerDependencies: - supports-color @@ -23992,7 +24049,7 @@ packages: resolution: {integrity: sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==} engines: {node: '>= 14'} dependencies: - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) transitivePeerDependencies: - supports-color dev: true @@ -25051,7 +25108,7 @@ packages: /babel-plugin-import@1.13.5: resolution: {integrity: sha512-IkqnoV+ov1hdJVofly9pXRJmeDm9EtROfrc5i6eII0Hix2xMs5FEm8FG3ExMvazbnZBbgHIt6qdO8And6lCloQ==} dependencies: - '@babel/helper-module-imports': 7.25.9(supports-color@5.5.0) + '@babel/helper-module-imports': 7.25.9 transitivePeerDependencies: - supports-color dev: true @@ -25059,7 +25116,7 @@ packages: /babel-plugin-import@1.13.8: resolution: {integrity: sha512-36babpjra5m3gca44V6tSTomeBlPA7cHUynrE2WiQIm3rEGD9xy28MKsx5IdO45EbnpJY7Jrgd00C6Dwt/l/2Q==} dependencies: - '@babel/helper-module-imports': 7.25.9(supports-color@5.5.0) + '@babel/helper-module-imports': 7.25.9 transitivePeerDependencies: - supports-color dev: true @@ -25178,7 +25235,7 @@ packages: styled-components: '>= 2' dependencies: '@babel/helper-annotate-as-pure': 7.25.9 - '@babel/helper-module-imports': 7.25.9(supports-color@5.5.0) + '@babel/helper-module-imports': 7.25.9 babel-plugin-syntax-jsx: 6.18.0 lodash: 4.17.21 styled-components: 6.1.8(react-dom@18.3.1)(react@18.3.1) @@ -25233,7 +25290,7 @@ packages: dependencies: '@babel/core': 7.26.9 '@babel/helper-plugin-utils': 7.25.9 - '@babel/traverse': 7.26.9(supports-color@5.5.0) + '@babel/traverse': 7.26.9 /babel-preset-current-node-syntax@1.1.0(@babel/core@7.25.2): resolution: {integrity: sha512-ldYss8SbBlWva1bs28q78Ju5Zq1F+8BrqBZZ0VFhLBvhh6lCpC2o3gDJi/5DRLs9FgYZCnmPYIVFU4lRXCkyUw==} @@ -27605,6 +27662,13 @@ packages: cssom: 0.3.8 dev: true + /cssstyle@3.0.0: + resolution: {integrity: sha512-N4u2ABATi3Qplzf0hWbVCdjenim8F3ojEXpBDF5hBpjzW182MjNGLqfmQ0SkSPeQ+V86ZXgeH8aXj6kayd4jgg==} + engines: {node: '>=14'} + dependencies: + rrweb-cssom: 0.6.0 + dev: true + /cssstyle@4.1.0: resolution: {integrity: sha512-h66W1URKpBS5YMI/V8PyXvTMFT8SupJ1IzoIV8IeBC/ji8WVmrO8dGlTi+2dh6whmdk6BiKJLD/ZBkhWbcg6nA==} engines: {node: '>=18'} @@ -27809,6 +27873,15 @@ packages: whatwg-url: 11.0.0 dev: true + /data-urls@4.0.0: + resolution: {integrity: sha512-/mMTei/JXPqvFqQtfyTowxmJVwr2PVAeCcDxyFf6LhoOu/09TX2OX3kb2wzi4DMXcfj4OItwDOnhl5oziPnT6g==} + engines: {node: '>=14'} + dependencies: + abab: 2.0.6 + whatwg-mimetype: 3.0.0 + whatwg-url: 12.0.1 + dev: true + /data-urls@5.0.0: resolution: {integrity: sha512-ZYP5VBHshaDAiVZxjbRVcFJpc+4xGgT0bK3vzy1HLN8jTO975HEbuYzZJcHoQEY5K1a0z8YayJkyVETa08eNTg==} engines: {node: '>=18'} @@ -27959,7 +28032,6 @@ packages: dependencies: ms: 2.1.3 supports-color: 8.1.1 - dev: true /decimal.js@10.4.3: resolution: {integrity: sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==} @@ -28204,7 +28276,7 @@ packages: hasBin: true dependencies: address: 1.2.2 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) transitivePeerDependencies: - supports-color @@ -28938,7 +29010,7 @@ packages: peerDependencies: esbuild: '>=0.12 <1' dependencies: - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) esbuild: 0.17.19 transitivePeerDependencies: - supports-color @@ -28949,7 +29021,7 @@ packages: peerDependencies: esbuild: '>=0.12 <1' dependencies: - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) esbuild: 0.18.20 transitivePeerDependencies: - supports-color @@ -28960,7 +29032,7 @@ packages: peerDependencies: esbuild: '>=0.12 <1' dependencies: - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) esbuild: 0.23.0 transitivePeerDependencies: - supports-color @@ -28970,7 +29042,7 @@ packages: peerDependencies: esbuild: '>=0.12 <1' dependencies: - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) esbuild: 0.24.0 transitivePeerDependencies: - supports-color @@ -28981,7 +29053,7 @@ packages: peerDependencies: esbuild: '>=0.12 <1' dependencies: - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) esbuild: 0.25.0 transitivePeerDependencies: - supports-color @@ -29369,7 +29441,7 @@ packages: optional: true dependencies: '@nolyfill/is-core-module': 1.0.39 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) enhanced-resolve: 5.17.1 eslint: 9.0.0 eslint-module-utils: 2.12.0(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3)(eslint@9.0.0) @@ -29938,7 +30010,7 @@ packages: ajv: 6.12.6 chalk: 4.1.2 cross-spawn: 7.0.6 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) doctrine: 3.0.0 escape-string-regexp: 4.0.0 eslint-scope: 7.2.2 @@ -29984,7 +30056,7 @@ packages: ajv: 6.12.6 chalk: 4.1.2 cross-spawn: 7.0.6 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) escape-string-regexp: 4.0.0 eslint-scope: 8.3.0 eslint-visitor-keys: 4.2.0 @@ -30971,7 +31043,7 @@ packages: debug: optional: true dependencies: - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) /for-each@0.3.3: resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} @@ -32642,7 +32714,7 @@ packages: dependencies: '@tootallnate/once': 2.0.0 agent-base: 6.0.2 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) transitivePeerDependencies: - supports-color dev: true @@ -32652,7 +32724,7 @@ packages: engines: {node: '>= 14'} dependencies: agent-base: 7.1.1 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) transitivePeerDependencies: - supports-color dev: true @@ -32680,7 +32752,7 @@ packages: engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: '@types/http-proxy': 1.17.15 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) http-proxy: 1.18.1(debug@4.4.0) is-glob: 4.0.3 is-plain-object: 5.0.0 @@ -32751,7 +32823,7 @@ packages: engines: {node: '>= 6.0.0'} dependencies: agent-base: 5.1.1 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) transitivePeerDependencies: - supports-color dev: true @@ -32761,7 +32833,7 @@ packages: engines: {node: '>= 6'} dependencies: agent-base: 6.0.2 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) transitivePeerDependencies: - supports-color @@ -32770,7 +32842,7 @@ packages: engines: {node: '>= 14'} dependencies: agent-base: 7.1.1 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) transitivePeerDependencies: - supports-color dev: true @@ -32780,7 +32852,7 @@ packages: engines: {node: '>= 14'} dependencies: agent-base: 7.1.3 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) transitivePeerDependencies: - supports-color dev: true @@ -32944,7 +33016,7 @@ packages: resolution: {integrity: sha512-YVt14UZCgsX1vZQ3gKjkWVdBdHQ6eu3MPU1TBgL1H5orXe2+jWD006WCPPtOuwlQm10NuzOW5WawiF1Q9veW8g==} engines: {node: '>=18.20'} dependencies: - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) import-meta-resolve: 4.1.0 transitivePeerDependencies: - supports-color @@ -33799,7 +33871,7 @@ packages: resolution: {integrity: sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==} engines: {node: '>=10'} dependencies: - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) istanbul-lib-coverage: 3.2.2 source-map: 0.6.1 transitivePeerDependencies: @@ -33811,7 +33883,7 @@ packages: engines: {node: '>=10'} dependencies: '@jridgewell/trace-mapping': 0.3.25 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) istanbul-lib-coverage: 3.2.2 transitivePeerDependencies: - supports-color @@ -34612,6 +34684,44 @@ packages: - utf-8-validate dev: true + /jsdom@22.1.0: + resolution: {integrity: sha512-/9AVW7xNbsBv6GfWho4TTNjEo9fe6Zhf9O7s0Fhhr3u+awPwAJMKwAMXnkk5vBxflqLW9hTHX/0cs+P3gW+cQw==} + engines: {node: '>=16'} + peerDependencies: + canvas: ^2.5.0 + peerDependenciesMeta: + canvas: + optional: true + dependencies: + abab: 2.0.6 + cssstyle: 3.0.0 + data-urls: 4.0.0 + decimal.js: 10.4.3 + domexception: 4.0.0 + form-data: 4.0.2 + html-encoding-sniffer: 3.0.0 + http-proxy-agent: 5.0.0 + https-proxy-agent: 5.0.1 + is-potential-custom-element-name: 1.0.1 + nwsapi: 2.2.13 + parse5: 7.1.2 + rrweb-cssom: 0.6.0 + saxes: 6.0.0 + symbol-tree: 3.2.4 + tough-cookie: 4.1.4 + w3c-xmlserializer: 4.0.0 + webidl-conversions: 7.0.0 + whatwg-encoding: 2.0.0 + whatwg-mimetype: 3.0.0 + whatwg-url: 12.0.1 + ws: 8.18.0 + xml-name-validator: 4.0.0 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + dev: true + /jsdom@24.1.3: resolution: {integrity: sha512-MyL55p3Ut3cXbeBEG7Hcv0mVM8pp8PBNWxRqchZnSfAiES1v1mRnMeFfaHWIPULpwsYfvO+ZmMZz5tGCnjzDUQ==} engines: {node: '>=18'} @@ -34889,7 +34999,7 @@ packages: content-disposition: 0.5.4 content-type: 1.0.5 cookies: 0.9.1 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) delegates: 1.0.0 depd: 2.0.0 destroy: 1.2.0 @@ -34920,7 +35030,7 @@ packages: content-disposition: 0.5.4 content-type: 1.0.5 cookies: 0.9.1 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) delegates: 1.0.0 depd: 2.0.0 destroy: 1.2.0 @@ -34951,7 +35061,7 @@ packages: content-disposition: 0.5.4 content-type: 1.0.5 cookies: 0.9.1 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) delegates: 1.0.0 depd: 2.0.0 destroy: 1.2.0 @@ -36360,7 +36470,7 @@ packages: resolution: {integrity: sha512-uD66tJj54JLYq0De10AhWycZWGQNUvDI55xPgk2sQM5kn1JYlhbCMTtEeT27+vAhW2FBQxLlOmS3pmA7/2z4aA==} dependencies: '@types/debug': 4.1.12 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) decode-named-character-reference: 1.0.2 micromark-core-commonmark: 1.1.0 micromark-factory-space: 1.1.0 @@ -36857,7 +36967,7 @@ packages: resolution: {integrity: sha512-E2Rxk6ADpyaGeuFJQ/x9HHW+pS8Vn/0KLbXpiDkoZXcOSToW+/dz1WPHFaZFUnyoe+JRbj8PvxAhcfKbQOw7UQ==} dependencies: '@vercel/nft': 0.27.3(encoding@0.1.13) - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) fs-extra: 11.3.0 mlly: 1.6.1 pkg-types: 1.2.1 @@ -40292,7 +40402,7 @@ packages: engines: {node: '>=8.16.0'} dependencies: '@types/mime-types': 2.1.4 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) extract-zip: 1.7.0 https-proxy-agent: 4.0.0 mime: 2.6.0 @@ -41990,7 +42100,7 @@ packages: engines: {node: '>=16.14.0'} dependencies: '@babel/core': 7.26.9 - '@babel/traverse': 7.26.9(supports-color@5.5.0) + '@babel/traverse': 7.26.9 '@babel/types': 7.26.9 '@types/babel__core': 7.20.5 '@types/babel__traverse': 7.20.6 @@ -43319,6 +43429,10 @@ packages: fsevents: 2.3.3 dev: true + /rrweb-cssom@0.6.0: + resolution: {integrity: sha512-APM0Gt1KoXBz0iIkkdB/kfvGOwC4UuJFeG/c+yV7wSc7q96cG/kJ0HiYCnzivD9SB53cLV1MlHFNfOuPaadYSw==} + dev: true + /rrweb-cssom@0.7.1: resolution: {integrity: sha512-TrEMa7JGdVm0UThDJSx7ddw5nVm3UJS9o9CCIZ72B1vSyEZoziDqBYP3XIoi/12lKrJR8rE3jeFHMok2F/Mnsg==} dev: true @@ -44166,7 +44280,7 @@ packages: '@semantic-release/release-notes-generator': 14.0.3(semantic-release@24.2.3) aggregate-error: 5.0.0 cosmiconfig: 9.0.0(typescript@5.7.3) - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) env-ci: 11.1.0 execa: 9.5.2 figures: 6.1.0 @@ -44277,7 +44391,7 @@ packages: resolution: {integrity: sha512-uaW0WwXKpL9blXE2o0bRhoL2EGXIrZxQ2ZQ4mgcfoBxdFmQold+qWsD2jLrfZ0trjKL6vOw0j//eAwcALFjKSw==} engines: {node: '>= 18'} dependencies: - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) encodeurl: 2.0.0 escape-html: 1.0.3 etag: 1.8.1 @@ -44815,7 +44929,7 @@ packages: /spdy-transport@3.0.0: resolution: {integrity: sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==} dependencies: - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) detect-node: 2.1.0 hpack.js: 2.1.6 obuf: 1.1.2 @@ -44828,7 +44942,7 @@ packages: resolution: {integrity: sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==} engines: {node: '>=6.0.0'} dependencies: - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) handle-thing: 2.0.1 http-deceiver: 1.2.7 select-hose: 2.0.0 @@ -45164,7 +45278,7 @@ packages: engines: {node: '>=8.0'} dependencies: date-format: 4.0.14 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) fs-extra: 8.1.0 transitivePeerDependencies: - supports-color @@ -45663,7 +45777,7 @@ packages: hasBin: true dependencies: '@adobe/css-tools': 4.3.3 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) glob: 10.4.5 sax: 1.4.1 source-map: 0.7.4 @@ -46650,6 +46764,13 @@ packages: punycode: 2.3.1 dev: true + /tr46@4.1.1: + resolution: {integrity: sha512-2lv/66T7e5yNyhAAC4NaKe5nVavzuGJQVVtRYLyQ2OI8tsJ61PMLlelehb0wi2Hx6+hT/OJUWZcw8MjlSRnxvw==} + engines: {node: '>=14'} + dependencies: + punycode: 2.3.1 + dev: true + /tr46@5.0.0: resolution: {integrity: sha512-tk2G5R2KRwBd+ZN0zaEXpmzdKyOYksXwywulIX95MBODjSzMIuQnQ3m8JxgbhnL1LeVo7lqQKsYa1O3Htl7K5g==} engines: {node: '>=18'} @@ -47135,7 +47256,7 @@ packages: bundle-require: 4.2.1(esbuild@0.19.2) cac: 6.7.14 chokidar: 3.6.0 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) esbuild: 0.19.2 execa: 5.1.1 globby: 11.1.0 @@ -47177,7 +47298,7 @@ packages: cac: 6.7.14 chokidar: 4.0.1 consola: 3.2.3 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) esbuild: 0.24.0 joycon: 3.1.1 picocolors: 1.1.1 @@ -48056,7 +48177,7 @@ packages: apache-md5: 1.1.8 bcryptjs: 2.4.3 core-js: 3.40.0 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) http-errors: 2.0.0 unix-crypt-td-js: 1.1.4 transitivePeerDependencies: @@ -48087,7 +48208,7 @@ packages: clipanion: 4.0.0-rc.4(typanion@3.14.0) compression: 1.8.0 cors: 2.8.5 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) envinfo: 7.14.0 express: 4.21.2 handlebars: 4.7.8 @@ -48195,7 +48316,7 @@ packages: hasBin: true dependencies: cac: 6.7.14 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) pathe: 1.1.2 picocolors: 1.1.1 vite: 5.4.18(@types/node@20.12.14)(less@4.3.0)(stylus@0.64.0) @@ -48217,7 +48338,7 @@ packages: hasBin: true dependencies: cac: 6.7.14 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) pathe: 1.1.2 picocolors: 1.1.1 vite: 5.4.18(@types/node@18.16.9)(less@4.3.0)(stylus@0.64.0) @@ -48488,12 +48609,12 @@ packages: vitest: '>=0.16.0' dependencies: cross-fetch: 3.1.8(encoding@0.1.13) - vitest: 1.6.0(@types/node@18.16.9)(@vitest/ui@1.6.0)(less@4.3.0)(stylus@0.64.0) + vitest: 1.6.0(@types/node@18.16.9)(@vitest/ui@1.6.0)(jsdom@22.1.0)(less@4.3.0)(stylus@0.64.0) transitivePeerDependencies: - encoding dev: true - /vitest@1.2.2(@types/node@20.12.14)(@vitest/ui@1.6.0)(less@4.3.0)(stylus@0.64.0): + /vitest@1.2.2(@types/node@20.12.14)(@vitest/ui@1.6.0)(jsdom@22.1.0)(less@4.3.0)(stylus@0.64.0): resolution: {integrity: sha512-d5Ouvrnms3GD9USIK36KG8OZ5bEvKEkITFtnGv56HFaSlbItJuYr7hv2Lkn903+AvRAgSixiamozUVfORUekjw==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true @@ -48530,6 +48651,7 @@ packages: chai: 4.5.0 debug: 4.3.7(supports-color@9.3.1) execa: 8.0.1 + jsdom: 22.1.0 local-pkg: 0.5.0 magic-string: 0.30.11 pathe: 1.1.2 @@ -48552,7 +48674,7 @@ packages: - terser dev: true - /vitest@1.6.0(@types/node@18.16.9)(@vitest/ui@1.6.0)(less@4.3.0)(stylus@0.64.0): + /vitest@1.6.0(@types/node@18.16.9)(@vitest/ui@1.6.0)(jsdom@22.1.0)(less@4.3.0)(stylus@0.64.0): resolution: {integrity: sha512-H5r/dN06swuFnzNFhq/dnz37bPXnq8xB2xB5JOVk8K09rUtoeNN+LHWkoQ0A/i3hvbUKKcCei9KpbxqHMLhLLA==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true @@ -48588,6 +48710,7 @@ packages: chai: 4.5.0 debug: 4.3.7(supports-color@9.3.1) execa: 8.0.1 + jsdom: 22.1.0 local-pkg: 0.5.0 magic-string: 0.30.11 pathe: 1.1.2 @@ -48636,7 +48759,7 @@ packages: peerDependencies: eslint: '>=6.0.0' dependencies: - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0(supports-color@8.1.1) eslint: 8.57.1 eslint-scope: 7.2.2 eslint-visitor-keys: 3.4.3 @@ -49660,6 +49783,14 @@ packages: webidl-conversions: 7.0.0 dev: true + /whatwg-url@12.0.1: + resolution: {integrity: sha512-Ed/LrqB8EPlGxjS+TrsXcpUond1mhccS3pchLhzSgPCnTimUCKj3IZE75pAs5m6heB2U2TMerKFUXheyHY+VDQ==} + engines: {node: '>=14'} + dependencies: + tr46: 4.1.1 + webidl-conversions: 7.0.0 + dev: true + /whatwg-url@14.0.0: resolution: {integrity: sha512-1lfMEm2IEr7RIV+f4lUNPOqfFL+pO+Xw3fJSqmjX9AbXcXcYOkCe1P6+9VBZB6n94af16NfZf+sSk0JCBZC9aw==} engines: {node: '>=18'} diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 2eff72e239b..d00bb1aa98a 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -1,6 +1,7 @@ packages: - '!**/dist/**' - 'packages/*' + - 'tools/rslib' - 'packages/bridge/*' - 'packages/enhance' - 'apps/runtime-demo/*' diff --git a/rslib-project/.gitignore b/rslib-project/.gitignore new file mode 100644 index 00000000000..38d7344c8ca --- /dev/null +++ b/rslib-project/.gitignore @@ -0,0 +1,13 @@ +# Local +.DS_Store +*.local +*.log* + +# Dist +node_modules +dist/ + +# IDE +.vscode/* +!.vscode/extensions.json +.idea diff --git a/rslib-project/README.md b/rslib-project/README.md new file mode 100644 index 00000000000..ae4f5bbed5f --- /dev/null +++ b/rslib-project/README.md @@ -0,0 +1,23 @@ +# Rslib project + +## Setup + +Install the dependencies: + +```bash +pnpm install +``` + +## Get started + +Build the library: + +```bash +pnpm build +``` + +Build the library in watch mode: + +```bash +pnpm dev +``` diff --git a/rslib-project/eslint.config.mjs b/rslib-project/eslint.config.mjs new file mode 100644 index 00000000000..84a10c6e2b0 --- /dev/null +++ b/rslib-project/eslint.config.mjs @@ -0,0 +1,10 @@ +import js from '@eslint/js'; +import globals from 'globals'; +import ts from 'typescript-eslint'; + +export default [ + { languageOptions: { globals: globals.browser } }, + js.configs.recommended, + ...ts.configs.recommended, + { ignores: ['dist/'] }, +]; diff --git a/rslib-project/package.json b/rslib-project/package.json new file mode 100644 index 00000000000..5f8a92130e2 --- /dev/null +++ b/rslib-project/package.json @@ -0,0 +1,34 @@ +{ + "name": "rslib-project", + "version": "1.0.0", + "type": "module", + "exports": { + ".": { + "types": "./dist/index.d.ts", + "import": "./dist/index.js", + "require": "./dist/index.cjs" + } + }, + "main": "./dist/index.cjs", + "types": "./dist/index.d.ts", + "files": [ + "dist" + ], + "scripts": { + "build": "rslib build", + "dev": "rslib build --watch", + "lint": "eslint .", + "test": "vitest run" + }, + "devDependencies": { + "@eslint/js": "^9.25.1", + "@rslib/core": "^0.7.1", + "@types/node": "^22.8.1", + "eslint": "^9.25.1", + "globals": "^16.0.0", + "typescript": "^5.8.3", + "typescript-eslint": "^8.31.1", + "vitest": "^3.1.3" + }, + "private": true +} diff --git a/rslib-project/rslib.config.ts b/rslib-project/rslib.config.ts new file mode 100644 index 00000000000..922f44d976d --- /dev/null +++ b/rslib-project/rslib.config.ts @@ -0,0 +1,15 @@ +import { defineConfig } from '@rslib/core'; + +export default defineConfig({ + lib: [ + { + format: 'esm', + syntax: ['node 18'], + dts: true, + }, + { + format: 'cjs', + syntax: ['node 18'], + }, + ], +}); diff --git a/rslib-project/src/index.ts b/rslib-project/src/index.ts new file mode 100644 index 00000000000..fdf0e11640f --- /dev/null +++ b/rslib-project/src/index.ts @@ -0,0 +1 @@ +export const squared = (n: number): number => n * n; diff --git a/rslib-project/tests/index.test.ts b/rslib-project/tests/index.test.ts new file mode 100644 index 00000000000..9d50ebb6443 --- /dev/null +++ b/rslib-project/tests/index.test.ts @@ -0,0 +1,7 @@ +import { expect, test } from 'vitest'; +import { squared } from '../src/index'; + +test('squared', () => { + expect(squared(2)).toBe(4); + expect(squared(12)).toBe(144); +}); diff --git a/rslib-project/tests/tsconfig.json b/rslib-project/tests/tsconfig.json new file mode 100644 index 00000000000..64654a13580 --- /dev/null +++ b/rslib-project/tests/tsconfig.json @@ -0,0 +1,4 @@ +{ + "extends": "../tsconfig.json", + "include": [".", "../vitest.setup.ts"] +} diff --git a/rslib-project/tsconfig.json b/rslib-project/tsconfig.json new file mode 100644 index 00000000000..8c5c4d6d02b --- /dev/null +++ b/rslib-project/tsconfig.json @@ -0,0 +1,15 @@ +{ + "compilerOptions": { + "lib": ["ES2021"], + "module": "ESNext", + "noEmit": true, + "strict": true, + "skipLibCheck": true, + "isolatedModules": true, + "resolveJsonModule": true, + "moduleResolution": "bundler", + "useDefineForClassFields": true, + "allowImportingTsExtensions": true + }, + "include": ["src"] +} diff --git a/rslib-project/vitest.config.ts b/rslib-project/vitest.config.ts new file mode 100644 index 00000000000..e83eaf4c5da --- /dev/null +++ b/rslib-project/vitest.config.ts @@ -0,0 +1,6 @@ +import { defineConfig } from 'vitest/config'; + +export default defineConfig({ + // Configure Vitest (https://vitest.dev/config/) + test: {}, +}); diff --git a/tools/rslib/.eslintrc.json b/tools/rslib/.eslintrc.json new file mode 100644 index 00000000000..084dd1b7583 --- /dev/null +++ b/tools/rslib/.eslintrc.json @@ -0,0 +1,44 @@ +{ + "extends": ["../../.eslintrc.json"], + "ignorePatterns": [ + "!**/*", + "**/vite.config.*.timestamp*", + "**/vitest.config.*.timestamp*" + ], + "overrides": [ + { + "files": ["*.ts", "*.tsx", "*.js", "*.jsx"], + "rules": {} + }, + { + "files": ["*.ts", "*.tsx"], + "rules": {} + }, + { + "files": ["*.js", "*.jsx"], + "rules": {} + }, + { + "files": ["*.json"], + "parser": "jsonc-eslint-parser", + "rules": { + "@nx/dependency-checks": [ + "error", + { + "ignoredFiles": [ + "{projectRoot}/eslint.config.{js,cjs,mjs}", + "{projectRoot}/vite.config.{js,ts,mjs,mts}" + ] + } + ] + } + }, + { + "files": ["./package.json", "./executors.json"], + "parser": "jsonc-eslint-parser", + "rules": { + "@nx/nx-plugin-checks": "error" + } + } + ] +} diff --git a/tools/rslib/README.md b/tools/rslib/README.md new file mode 100644 index 00000000000..97429a1c1df --- /dev/null +++ b/tools/rslib/README.md @@ -0,0 +1,11 @@ +# rslib + +This library was generated with [Nx](https://nx.dev). + +## Building + +Run `nx build rslib` to build the library. + +## Running unit tests + +Run `nx test rslib` to execute the unit tests via [Vitest](https://vitest.dev/). diff --git a/tools/rslib/executors.json b/tools/rslib/executors.json new file mode 100644 index 00000000000..c6ba887045c --- /dev/null +++ b/tools/rslib/executors.json @@ -0,0 +1,9 @@ +{ + "executors": { + "echo": { + "implementation": "./src/executors/echo", + "schema": "./src/executors/schema.json", + "description": "echo executor" + } + } +} diff --git a/tools/rslib/package.json b/tools/rslib/package.json new file mode 100644 index 00000000000..50e634e3e6b --- /dev/null +++ b/tools/rslib/package.json @@ -0,0 +1,13 @@ +{ + "name": "rslib", + "version": "0.0.1", + "private": true, + "type": "commonjs", + "main": "./src/index.js", + "types": "./src/index.d.ts", + "dependencies": { + "@nx/devkit": "21.0.3", + "tslib": "^2.3.0" + }, + "executors": "./executors.json" +} diff --git a/tools/rslib/project.json b/tools/rslib/project.json new file mode 100644 index 00000000000..981b568fff4 --- /dev/null +++ b/tools/rslib/project.json @@ -0,0 +1,51 @@ +{ + "name": "rslib", + "$schema": "../../node_modules/nx/schemas/project-schema.json", + "sourceRoot": "tools/rslib/src", + "projectType": "library", + "tags": [], + "targets": { + "build": { + "executor": "@nx/js:tsc", + "outputs": ["{options.outputPath}"], + "options": { + "outputPath": "dist/tools/rslib", + "main": "tools/rslib/src/index.ts", + "tsConfig": "tools/rslib/tsconfig.lib.json", + "assets": [ + "tools/rslib/*.md", + { + "input": "./tools/rslib/src", + "glob": "**/!(*.ts)", + "output": "./src" + }, + { + "input": "./tools/rslib/src", + "glob": "**/*.d.ts", + "output": "./src" + }, + { + "input": "./tools/rslib", + "glob": "generators.json", + "output": "." + }, + { + "input": "./tools/rslib", + "glob": "executors.json", + "output": "." + } + ] + } + }, + "lint": { + "executor": "@nx/eslint:lint" + }, + "test": { + "executor": "@nx/vite:test", + "outputs": ["{options.reportsDirectory}"], + "options": { + "reportsDirectory": "../../coverage/tools/rslib" + } + } + } +} diff --git a/tools/rslib/src/executors/echo.spec.ts b/tools/rslib/src/executors/echo.spec.ts new file mode 100644 index 00000000000..bc49cf9533e --- /dev/null +++ b/tools/rslib/src/executors/echo.spec.ts @@ -0,0 +1,27 @@ +import { ExecutorContext } from '@nx/devkit'; + +import { EchoExecutorSchema } from './schema'; +import executor from './echo'; + +const options: EchoExecutorSchema = {}; +const context: ExecutorContext = { + root: '', + cwd: process.cwd(), + isVerbose: false, + projectGraph: { + nodes: {}, + dependencies: {}, + }, + projectsConfigurations: { + projects: {}, + version: 2, + }, + nxJsonConfiguration: {}, +}; + +describe('Echo Executor', () => { + it('can run', async () => { + const output = await executor(options, context); + expect(output.success).toBe(true); + }); +}); diff --git a/tools/rslib/src/executors/echo.ts b/tools/rslib/src/executors/echo.ts new file mode 100644 index 00000000000..15ef7dc1d99 --- /dev/null +++ b/tools/rslib/src/executors/echo.ts @@ -0,0 +1,11 @@ +import { PromiseExecutor } from '@nx/devkit'; +import { EchoExecutorSchema } from './schema'; + +const runExecutor: PromiseExecutor = async (options) => { + console.log('Executor ran for Echo', options); + return { + success: true, + }; +}; + +export default runExecutor; diff --git a/tools/rslib/src/executors/schema.d.ts b/tools/rslib/src/executors/schema.d.ts new file mode 100644 index 00000000000..b845654ea8b --- /dev/null +++ b/tools/rslib/src/executors/schema.d.ts @@ -0,0 +1 @@ +export interface EchoExecutorSchema {} // eslint-disable-line diff --git a/tools/rslib/src/executors/schema.json b/tools/rslib/src/executors/schema.json new file mode 100644 index 00000000000..7f53ae39f94 --- /dev/null +++ b/tools/rslib/src/executors/schema.json @@ -0,0 +1,9 @@ +{ + "$schema": "https://json-schema.org/schema", + "version": 2, + "title": "Echo executor", + "description": "", + "type": "object", + "properties": {}, + "required": [] +} diff --git a/tools/rslib/src/index.ts b/tools/rslib/src/index.ts new file mode 100644 index 00000000000..e69de29bb2d diff --git a/tools/rslib/tsconfig.json b/tools/rslib/tsconfig.json new file mode 100644 index 00000000000..19b9eece4df --- /dev/null +++ b/tools/rslib/tsconfig.json @@ -0,0 +1,16 @@ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "module": "commonjs" + }, + "files": [], + "include": [], + "references": [ + { + "path": "./tsconfig.lib.json" + }, + { + "path": "./tsconfig.spec.json" + } + ] +} diff --git a/tools/rslib/tsconfig.lib.json b/tools/rslib/tsconfig.lib.json new file mode 100644 index 00000000000..54b671b603c --- /dev/null +++ b/tools/rslib/tsconfig.lib.json @@ -0,0 +1,23 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "declaration": true, + "types": ["node"] + }, + "include": ["src/**/*.ts"], + "exclude": [ + "vite.config.ts", + "vite.config.mts", + "vitest.config.ts", + "vitest.config.mts", + "src/**/*.test.ts", + "src/**/*.spec.ts", + "src/**/*.test.tsx", + "src/**/*.spec.tsx", + "src/**/*.test.js", + "src/**/*.spec.js", + "src/**/*.test.jsx", + "src/**/*.spec.jsx" + ] +} diff --git a/tools/rslib/tsconfig.spec.json b/tools/rslib/tsconfig.spec.json new file mode 100644 index 00000000000..56b74888796 --- /dev/null +++ b/tools/rslib/tsconfig.spec.json @@ -0,0 +1,28 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "types": [ + "vitest/globals", + "vitest/importMeta", + "vite/client", + "node", + "vitest" + ] + }, + "include": [ + "vite.config.ts", + "vite.config.mts", + "vitest.config.ts", + "vitest.config.mts", + "src/**/*.test.ts", + "src/**/*.spec.ts", + "src/**/*.test.tsx", + "src/**/*.spec.tsx", + "src/**/*.test.js", + "src/**/*.spec.js", + "src/**/*.test.jsx", + "src/**/*.spec.jsx", + "src/**/*.d.ts" + ] +} diff --git a/tools/rslib/vite.config.ts b/tools/rslib/vite.config.ts new file mode 100644 index 00000000000..f3b55c3e9b4 --- /dev/null +++ b/tools/rslib/vite.config.ts @@ -0,0 +1,24 @@ +import { defineConfig } from 'vite'; +import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin'; +import { nxCopyAssetsPlugin } from '@nx/vite/plugins/nx-copy-assets.plugin'; + +export default defineConfig(() => ({ + root: __dirname, + cacheDir: '../../node_modules/.vite/tools/rslib', + plugins: [nxViteTsPaths(), nxCopyAssetsPlugin(['*.md'])], + // Uncomment this if you are using workers. + // worker: { + // plugins: [ nxViteTsPaths() ], + // }, + test: { + watch: false, + globals: true, + environment: 'jsdom', + include: ['src/**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'], + reporters: ['default'], + coverage: { + reportsDirectory: '../../coverage/tools/rslib', + provider: 'v8' as const, + }, + }, +})); diff --git a/tsconfig.base.json b/tsconfig.base.json index ee9bafae480..0c1593293fc 100644 --- a/tsconfig.base.json +++ b/tsconfig.base.json @@ -15,7 +15,10 @@ "lib": ["es2021", "dom"], "skipLibCheck": true, "skipDefaultLibCheck": true, - "baseUrl": "." + "baseUrl": ".", + "paths": { + "rslib": ["tools/rslib/src/index.ts"] + } }, "exclude": [ "node_modules/**", diff --git a/vitest.workspace.ts b/vitest.workspace.ts new file mode 100644 index 00000000000..883c608f133 --- /dev/null +++ b/vitest.workspace.ts @@ -0,0 +1,4 @@ +export default [ + '**/vite.config.{mjs,js,ts,mts}', + '**/vitest.config.{mjs,js,ts,mts}', +];