diff --git a/package.json b/package.json
index 058510d5..deb95a5f 100644
--- a/package.json
+++ b/package.json
@@ -22,18 +22,19 @@
"@commitlint/cli": "^15.0.0",
"@iceworks/spec": "^1.6.0",
"eslint": "^8.19.0",
+ "fs-extra": "^10.0.0",
"ice-npm-utils": "workspace:^3.0.2",
"npm-run-all": "^4.1.5",
"rimraf": "^3.0.2",
"stylelint": "^13.13.1",
- "typescript": "^4.7.4"
+ "typescript": "^4.7.4",
+ "vitest": "^0.7.13"
},
"dependencies": {
"@types/node": "^17.0.45",
"axios": "^0.23.0",
"c8": "^7.11.3",
- "ts-node": "^10.8.2",
- "vitest": "^0.7.13"
+ "ts-node": "^10.8.2"
},
"pnpm": {
"overrides": {
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 36b3aa31..5de5dd74 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -13,6 +13,7 @@ importers:
axios: ^0.23.0
c8: ^7.11.3
eslint: ^8.19.0
+ fs-extra: ^10.0.0
ice-npm-utils: workspace:^3.0.2
npm-run-all: ^4.1.5
rimraf: ^3.0.2
@@ -25,16 +26,17 @@ importers:
axios: 0.23.0
c8: 7.11.3
ts-node: 10.8.2_x2utdhayajzrh747hktprshhby
- vitest: 0.7.13_c8@7.11.3
devDependencies:
'@commitlint/cli': 15.0.0
'@iceworks/spec': 1.6.0_boy655tvqsm6op45de6ax7jimi
eslint: 8.19.0
+ fs-extra: 10.1.0
ice-npm-utils: link:packages/ice-npm-utils
npm-run-all: 4.1.5
rimraf: 3.0.2
stylelint: 13.13.1
typescript: 4.7.4
+ vitest: 0.7.13_c8@7.11.3
examples/application:
specifiers:
@@ -270,6 +272,74 @@ importers:
'@ice/pkg': link:../pkg
typescript: 4.7.4
+ tests/fixtures/scenarios/node:
+ specifiers:
+ '@ice/pkg': ^1.0.0
+ '@iceworks/spec': ^1.0.0
+ eslint: ^7.0.0
+ stylelint: ^13.7.2
+ devDependencies:
+ '@ice/pkg': link:../../../../packages/pkg
+ '@iceworks/spec': 1.6.0_4v3jurpbcga7euorjuu2q7wmki
+ eslint: 7.32.0
+ stylelint: 13.13.1
+
+ tests/fixtures/scenarios/rax:
+ specifiers:
+ '@ice/pkg': ^1.0.0
+ '@ice/pkg-plugin-docusaurus': ^1.0.0
+ '@ice/pkg-plugin-rax-component': ^1.0.0
+ '@iceworks/spec': ^1.0.0
+ '@types/rax': ^1.0.0
+ eslint: ^7.0.0
+ rax: ^1.2.2
+ react: ^18.0.0
+ react-dom: ^18.0.0
+ style-unit: ^3.0.4
+ stylelint: ^13.7.2
+ devDependencies:
+ '@ice/pkg': link:../../../../packages/pkg
+ '@ice/pkg-plugin-docusaurus': link:../../../../packages/plugin-docusaurus
+ '@ice/pkg-plugin-rax-component': link:../../../../packages/plugin-rax-component
+ '@iceworks/spec': 1.6.0_4v3jurpbcga7euorjuu2q7wmki
+ '@types/rax': 1.0.9
+ eslint: 7.32.0
+ rax: 1.2.2
+ react: 18.2.0
+ react-dom: 18.2.0_react@18.2.0
+ style-unit: 3.0.4
+ stylelint: 13.13.1
+
+ tests/fixtures/scenarios/react:
+ specifiers:
+ '@ice/pkg': ^1.0.0
+ '@ice/pkg-plugin-docusaurus': ^1.0.0
+ '@iceworks/spec': ^1.0.0
+ '@types/react': ^18.0.0
+ '@types/react-dom': ^18.0.0
+ eslint: ^7.0.0
+ rax-compat: ^0.1.0-alpha.5
+ react: ^18.0.0
+ react-dom: ^18.0.0
+ style-unit: ^3.0.4
+ stylelint: ^13.7.2
+ dependencies:
+ rax-compat: 0.1.0-beta.4_biqbaboplfbrettd7655fr4n2y
+ devDependencies:
+ '@ice/pkg': link:../../../../packages/pkg
+ '@ice/pkg-plugin-docusaurus': link:../../../../packages/plugin-docusaurus
+ '@iceworks/spec': 1.6.0_4v3jurpbcga7euorjuu2q7wmki
+ '@types/react': 18.0.15
+ '@types/react-dom': 18.0.6
+ eslint: 7.32.0
+ react: 18.2.0
+ react-dom: 18.2.0_react@18.2.0
+ style-unit: 3.0.4
+ stylelint: 13.13.1
+
+ tests/fixtures/scenarios/web:
+ specifiers: {}
+
website:
specifiers:
'@docusaurus/core': ^2.0.1
@@ -426,6 +496,12 @@ packages:
js-base64: 3.7.2
dev: false
+ /@babel/code-frame/7.12.11:
+ resolution: {integrity: sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==}
+ dependencies:
+ '@babel/highlight': 7.18.6
+ dev: true
+
/@babel/code-frame/7.18.6:
resolution: {integrity: sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==}
engines: {node: '>=6.9.0'}
@@ -482,6 +558,20 @@ packages:
transitivePeerDependencies:
- supports-color
+ /@babel/eslint-parser/7.18.2_e47xv5ui6xrfmjzs5tdc45kbly:
+ resolution: {integrity: sha512-oFQYkE8SuH14+uR51JVAmdqwKYXGRjEXx7s+WiagVjqQ+HPE+nnwyF2qlVG8evUsUHmPcA+6YXMEDbIhEyQc5A==}
+ engines: {node: ^10.13.0 || ^12.13.0 || >=14.0.0}
+ peerDependencies:
+ '@babel/core': '>=7.11.0'
+ eslint: ^7.5.0 || ^8.0.0
+ dependencies:
+ '@babel/core': 7.18.6
+ eslint: 7.32.0
+ eslint-scope: 5.1.1
+ eslint-visitor-keys: 2.1.0
+ semver: 6.3.0
+ dev: true
+
/@babel/eslint-parser/7.18.2_ygqbvsyswrl2cmipz2mlfqys74:
resolution: {integrity: sha512-oFQYkE8SuH14+uR51JVAmdqwKYXGRjEXx7s+WiagVjqQ+HPE+nnwyF2qlVG8evUsUHmPcA+6YXMEDbIhEyQc5A==}
engines: {node: ^10.13.0 || ^12.13.0 || >=14.0.0}
@@ -1758,7 +1848,6 @@ packages:
/@bcoe/v8-coverage/0.2.3:
resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==}
- dev: false
/@colors/colors/1.5.0:
resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==}
@@ -3549,6 +3638,23 @@ packages:
- typescript
dev: true
+ /@eslint/eslintrc/0.4.3:
+ resolution: {integrity: sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==}
+ engines: {node: ^10.12.0 || >=12.0.0}
+ dependencies:
+ ajv: 6.12.6
+ debug: 4.3.4
+ espree: 7.3.1
+ globals: 13.16.0
+ ignore: 4.0.6
+ import-fresh: 3.3.0
+ js-yaml: 3.14.1
+ minimatch: 3.1.2
+ strip-json-comments: 3.1.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
/@eslint/eslintrc/1.3.0:
resolution: {integrity: sha512-UWW0TMTmk2d7hLcWD1/e2g5HDM/HQ3csaLSqXCfqwh4uNDuNqlaKWXmEsL4Cs41Z0KnILNvwbHAah3C2yt06kw==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
@@ -3574,6 +3680,17 @@ packages:
dependencies:
'@hapi/hoek': 9.3.0
+ /@humanwhocodes/config-array/0.5.0:
+ resolution: {integrity: sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==}
+ engines: {node: '>=10.10.0'}
+ dependencies:
+ '@humanwhocodes/object-schema': 1.2.1
+ debug: 4.3.4
+ minimatch: 3.1.2
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
/@humanwhocodes/config-array/0.9.5:
resolution: {integrity: sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw==}
engines: {node: '>=10.10.0'}
@@ -3632,6 +3749,26 @@ packages:
fs-extra: 10.1.0
dev: true
+ /@iceworks/eslint-plugin-best-practices/0.2.11_4v3jurpbcga7euorjuu2q7wmki:
+ resolution: {integrity: sha512-IsMqWijTyj1c8EBP8oZJhhghz01XUm8hh2AreUvQyi/eCgAcr0MgPXZ94NkXB+1OwCskkiVuXTa+fsooeP0IYA==}
+ dependencies:
+ '@iceworks/spec': 1.6.0_4v3jurpbcga7euorjuu2q7wmki
+ '@mdn/browser-compat-data': 4.2.1
+ fs-extra: 9.1.0
+ glob: 7.2.3
+ line-column: 1.0.2
+ path-to-regexp: 6.2.1
+ require-all: 3.0.0
+ semver: 7.3.7
+ transitivePeerDependencies:
+ - eslint
+ - eslint-import-resolver-typescript
+ - eslint-import-resolver-webpack
+ - stylelint
+ - supports-color
+ - typescript
+ dev: true
+
/@iceworks/eslint-plugin-best-practices/0.2.11_boy655tvqsm6op45de6ax7jimi:
resolution: {integrity: sha512-IsMqWijTyj1c8EBP8oZJhhghz01XUm8hh2AreUvQyi/eCgAcr0MgPXZ94NkXB+1OwCskkiVuXTa+fsooeP0IYA==}
dependencies:
@@ -3666,6 +3803,40 @@ packages:
- debug
dev: false
+ /@iceworks/spec/1.6.0_4v3jurpbcga7euorjuu2q7wmki:
+ resolution: {integrity: sha512-fnBjaWKxcY1vv9soBhti3tNDMxKfWYd0vd94f0fvPnVOn6F+4jpcQl2Levs3AfWDh5mZAbW6ieH4qNeE33Zd/g==}
+ peerDependencies:
+ eslint: '>=7.5.0'
+ stylelint: '>=8.3.0'
+ dependencies:
+ '@babel/core': 7.18.6
+ '@babel/eslint-parser': 7.18.2_e47xv5ui6xrfmjzs5tdc45kbly
+ '@babel/preset-react': 7.18.6_@babel+core@7.18.6
+ '@iceworks/eslint-plugin-best-practices': 0.2.11_4v3jurpbcga7euorjuu2q7wmki
+ '@typescript-eslint/eslint-plugin': 5.30.5_rd6cw2bkmgckqjtetyu3p3ss5i
+ '@typescript-eslint/parser': 5.30.5_eslint@7.32.0
+ commitlint-config-ali: 0.1.3
+ eslint: 7.32.0
+ eslint-config-ali: 13.1.0_eslint@7.32.0
+ eslint-plugin-import: 2.26.0_rd6cw2bkmgckqjtetyu3p3ss5i
+ eslint-plugin-jsx-plus: 0.1.0
+ eslint-plugin-rax-compile-time-miniapp: 1.0.0
+ eslint-plugin-react: 7.30.1_eslint@7.32.0
+ eslint-plugin-react-hooks: 4.6.0_eslint@7.32.0
+ eslint-plugin-vue: 7.20.0_eslint@7.32.0
+ json5: 2.2.1
+ require-all: 3.0.0
+ stylelint: 13.13.1
+ stylelint-config-ali: 0.3.4_2vkgt733dnumio3be4grtjqkwy
+ stylelint-scss: 3.21.0_stylelint@13.13.1
+ vue-eslint-parser: 7.11.0_eslint@7.32.0
+ transitivePeerDependencies:
+ - eslint-import-resolver-typescript
+ - eslint-import-resolver-webpack
+ - supports-color
+ - typescript
+ dev: true
+
/@iceworks/spec/1.6.0_boy655tvqsm6op45de6ax7jimi:
resolution: {integrity: sha512-fnBjaWKxcY1vv9soBhti3tNDMxKfWYd0vd94f0fvPnVOn6F+4jpcQl2Levs3AfWDh5mZAbW6ieH4qNeE33Zd/g==}
peerDependencies:
@@ -3703,7 +3874,6 @@ packages:
/@istanbuljs/schema/0.1.3:
resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==}
engines: {node: '>=8'}
- dev: false
/@jridgewell/gen-mapping/0.1.1:
resolution: {integrity: sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==}
@@ -4310,11 +4480,11 @@ packages:
resolution: {integrity: sha512-frBecisrNGz+F4T6bcc+NLeolfiojh5FxW2klu669+8BARtyQv2C/GkNW6FUodVe4BroGMP/wER/YDGc7rEllw==}
dependencies:
'@types/chai': 4.3.1
- dev: false
+ dev: true
/@types/chai/4.3.1:
resolution: {integrity: sha512-/zPMqDkzSZ8t3VtxOa4KPq7uzzW978M9Tvh+j7GHKuo6k6GTLxPJ4J5gE5cjfJ26pnXst0N5Hax8Sr0T2Mi9zQ==}
- dev: false
+ dev: true
/@types/connect-history-api-fallback/1.3.5:
resolution: {integrity: sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw==}
@@ -4394,7 +4564,6 @@ packages:
/@types/istanbul-lib-coverage/2.0.4:
resolution: {integrity: sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==}
- dev: false
/@types/json-schema/7.0.11:
resolution: {integrity: sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==}
@@ -4450,6 +4619,19 @@ packages:
resolution: {integrity: sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==}
dev: false
+ /@types/rax/1.0.9:
+ resolution: {integrity: sha512-ZCahLhWr39LnaiOtvFpTuk+ykL0L2sAWc6sG7karelzPh7NHQCuJpR/gNPu+pDwkgt+1N2nx4Fs3KNY2l+y05w==}
+ dependencies:
+ '@types/prop-types': 15.7.5
+ csstype: 3.1.0
+ dev: true
+
+ /@types/react-dom/18.0.6:
+ resolution: {integrity: sha512-/5OFZgfIPSwy+YuIBP/FgJnQnsxhZhjjrnxudMddeblOouIodEQ75X14Rr4wGSG/bknL+Omy9iWlLo1u/9GzAA==}
+ dependencies:
+ '@types/react': 18.0.15
+ dev: true
+
/@types/react-router-config/5.0.6:
resolution: {integrity: sha512-db1mx37a1EJDf1XeX8jJN7R3PZABmJQXR8r28yUjVMFSjkmnQo6X6pOEEmNl+Tp2gYQOGPdYbFIipBtdElZ3Yg==}
dependencies:
@@ -4556,6 +4738,32 @@ packages:
- supports-color
dev: true
+ /@typescript-eslint/eslint-plugin/5.30.5_rd6cw2bkmgckqjtetyu3p3ss5i:
+ resolution: {integrity: sha512-lftkqRoBvc28VFXEoRgyZuztyVUQ04JvUnATSPtIRFAccbXTWL6DEtXGYMcbg998kXw1NLUJm7rTQ9eUt+q6Ig==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ '@typescript-eslint/parser': ^5.0.0
+ eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+ dependencies:
+ '@typescript-eslint/parser': 5.30.5_eslint@7.32.0
+ '@typescript-eslint/scope-manager': 5.30.5
+ '@typescript-eslint/type-utils': 5.30.5_eslint@7.32.0
+ '@typescript-eslint/utils': 5.30.5_eslint@7.32.0
+ debug: 4.3.4
+ eslint: 7.32.0
+ functional-red-black-tree: 1.0.1
+ ignore: 5.2.0
+ regexpp: 3.2.0
+ semver: 7.3.7
+ tsutils: 3.21.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
/@typescript-eslint/parser/5.30.5_4x5o4skxv6sl53vpwefgt23khm:
resolution: {integrity: sha512-zj251pcPXI8GO9NDKWWmygP6+UjwWmrdf9qMW/L/uQJBM/0XbU2inxe5io/234y/RCvwpKEYjZ6c1YrXERkK4Q==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
@@ -4576,6 +4784,25 @@ packages:
- supports-color
dev: true
+ /@typescript-eslint/parser/5.30.5_eslint@7.32.0:
+ resolution: {integrity: sha512-zj251pcPXI8GO9NDKWWmygP6+UjwWmrdf9qMW/L/uQJBM/0XbU2inxe5io/234y/RCvwpKEYjZ6c1YrXERkK4Q==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+ dependencies:
+ '@typescript-eslint/scope-manager': 5.30.5
+ '@typescript-eslint/types': 5.30.5
+ '@typescript-eslint/typescript-estree': 5.30.5
+ debug: 4.3.4
+ eslint: 7.32.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
/@typescript-eslint/scope-manager/5.30.5:
resolution: {integrity: sha512-NJ6F+YHHFT/30isRe2UTmIGGAiXKckCyMnIV58cE3JkHmaD6e5zyEYm5hBDv0Wbin+IC0T1FWJpD3YqHUG/Ydg==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
@@ -4603,11 +4830,49 @@ packages:
- supports-color
dev: true
+ /@typescript-eslint/type-utils/5.30.5_eslint@7.32.0:
+ resolution: {integrity: sha512-k9+ejlv1GgwN1nN7XjVtyCgE0BTzhzT1YsQF0rv4Vfj2U9xnslBgMYYvcEYAFVdvhuEscELJsB7lDkN7WusErw==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: '*'
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+ dependencies:
+ '@typescript-eslint/utils': 5.30.5_eslint@7.32.0
+ debug: 4.3.4
+ eslint: 7.32.0
+ tsutils: 3.21.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
/@typescript-eslint/types/5.30.5:
resolution: {integrity: sha512-kZ80w/M2AvsbRvOr3PjaNh6qEW1LFqs2pLdo2s5R38B2HYXG8Z0PP48/4+j1QHJFL3ssHIbJ4odPRS8PlHrFfw==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
dev: true
+ /@typescript-eslint/typescript-estree/5.30.5:
+ resolution: {integrity: sha512-qGTc7QZC801kbYjAr4AgdOfnokpwStqyhSbiQvqGBLixniAKyH+ib2qXIVo4P9NgGzwyfD9I0nlJN7D91E1VpQ==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+ dependencies:
+ '@typescript-eslint/types': 5.30.5
+ '@typescript-eslint/visitor-keys': 5.30.5
+ debug: 4.3.4
+ globby: 11.1.0
+ is-glob: 4.0.3
+ semver: 7.3.7
+ tsutils: 3.21.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
/@typescript-eslint/typescript-estree/5.30.5_typescript@4.7.4:
resolution: {integrity: sha512-qGTc7QZC801kbYjAr4AgdOfnokpwStqyhSbiQvqGBLixniAKyH+ib2qXIVo4P9NgGzwyfD9I0nlJN7D91E1VpQ==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
@@ -4647,6 +4912,24 @@ packages:
- typescript
dev: true
+ /@typescript-eslint/utils/5.30.5_eslint@7.32.0:
+ resolution: {integrity: sha512-o4SSUH9IkuA7AYIfAvatldovurqTAHrfzPApOZvdUq01hHojZojCFXx06D/aFpKCgWbMPRdJBWAC3sWp3itwTA==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
+ dependencies:
+ '@types/json-schema': 7.0.11
+ '@typescript-eslint/scope-manager': 5.30.5
+ '@typescript-eslint/types': 5.30.5
+ '@typescript-eslint/typescript-estree': 5.30.5
+ eslint: 7.32.0
+ eslint-scope: 5.1.1
+ eslint-utils: 3.0.0_eslint@7.32.0
+ transitivePeerDependencies:
+ - supports-color
+ - typescript
+ dev: true
+
/@typescript-eslint/visitor-keys/5.30.5:
resolution: {integrity: sha512-D+xtGo9HUMELzWIUqcQc0p2PO4NyvTrgIOK/VnSH083+8sq0tiLozNRKuLarwHYGRuA6TVBQSuuLwJUDWd3aaA==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
@@ -4657,7 +4940,6 @@ packages:
/@uni/env/1.1.0:
resolution: {integrity: sha512-2GVgUzxIaO2vGElXEuc45+I7L6Jbw8inLDDFuC0K4htjKtPmYywKSE6oDhvmdAXb4GCOH8hmxECYtAh1rjsgoQ==}
- dev: false
/@webassemblyjs/ast/1.11.1:
resolution: {integrity: sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==}
@@ -4927,6 +5209,11 @@ packages:
string-width: 4.2.3
dev: false
+ /ansi-colors/4.1.3:
+ resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==}
+ engines: {node: '>=6'}
+ dev: true
+
/ansi-escapes/4.3.2:
resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==}
engines: {node: '>=8'}
@@ -5004,7 +5291,6 @@ packages:
resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==}
dependencies:
sprintf-js: 1.0.3
- dev: false
/argparse/2.0.1:
resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==}
@@ -5067,7 +5353,7 @@ packages:
/assertion-error/1.1.0:
resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==}
- dev: false
+ dev: true
/astral-regex/2.0.0:
resolution: {integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==}
@@ -5391,7 +5677,6 @@ packages:
v8-to-istanbul: 9.0.1
yargs: 16.2.0
yargs-parser: 20.2.9
- dev: false
/cac/6.7.12:
resolution: {integrity: sha512-rM7E2ygtMkJqD9c7WnFU6fruFcN3xe4FM5yUmgxhZzIKJk4uHl9U/fhwdajGFQbQuv43FAUo1Fe8gX/oIKDeSA==}
@@ -5476,7 +5761,7 @@ packages:
loupe: 2.3.4
pathval: 1.1.1
type-detect: 4.0.8
- dev: false
+ dev: true
/chalk/2.4.2:
resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==}
@@ -5516,7 +5801,7 @@ packages:
/check-error/1.0.2:
resolution: {integrity: sha512-BrgHpW9NURQgzoNyjfq0Wu6VFO6D7IZEmJNdtgNqpzGG8RuNFHt2jQxWlAs4HMe119chBnv+34syEZtc6IhLtA==}
- dev: false
+ dev: true
/cheerio-select/2.1.0:
resolution: {integrity: sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==}
@@ -6179,7 +6464,7 @@ packages:
engines: {node: '>=0.12'}
dependencies:
type-detect: 4.0.8
- dev: false
+ dev: true
/deep-extend/0.6.0:
resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==}
@@ -6437,6 +6722,10 @@ packages:
dependencies:
is-obj: 2.0.0
+ /driver-server/1.0.0:
+ resolution: {integrity: sha512-H5nhMzsSJYaug+PDPyXiVW2KvK5k7B7K+yVW3FuHESq494Soh1cfomquJ2pk5RiApQr1z0e+0tif11TVRlM+PQ==}
+ dev: true
+
/duplexer/0.1.2:
resolution: {integrity: sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==}
dev: false
@@ -6498,6 +6787,13 @@ packages:
graceful-fs: 4.2.10
tapable: 2.2.1
+ /enquirer/2.3.6:
+ resolution: {integrity: sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==}
+ engines: {node: '>=8.6'}
+ dependencies:
+ ansi-colors: 4.1.3
+ dev: true
+
/entities/1.1.2:
resolution: {integrity: sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==}
dev: true
@@ -6798,6 +7094,14 @@ packages:
engines: {node: '>=12'}
dev: false
+ /eslint-config-ali/13.1.0_eslint@7.32.0:
+ resolution: {integrity: sha512-ZjWrpiKADEmNhtfB64iVN3ejlDS5sS9OZx9+jN3mF+oqaroWqrTPvqQvY472M4ykL0JgT+AqsZdG+kWDqUw/6g==}
+ peerDependencies:
+ eslint: '>=6.8.0'
+ dependencies:
+ eslint: 7.32.0
+ dev: true
+
/eslint-config-ali/13.1.0_eslint@8.19.0:
resolution: {integrity: sha512-ZjWrpiKADEmNhtfB64iVN3ejlDS5sS9OZx9+jN3mF+oqaroWqrTPvqQvY472M4ykL0JgT+AqsZdG+kWDqUw/6g==}
peerDependencies:
@@ -6833,7 +7137,7 @@ packages:
eslint-import-resolver-webpack:
optional: true
dependencies:
- '@typescript-eslint/parser': 5.30.5_4x5o4skxv6sl53vpwefgt23khm
+ '@typescript-eslint/parser': 5.30.5_eslint@7.32.0
debug: 3.2.7
eslint-import-resolver-node: 0.3.6
find-up: 2.1.0
@@ -6872,6 +7176,37 @@ packages:
- supports-color
dev: true
+ /eslint-plugin-import/2.26.0_rd6cw2bkmgckqjtetyu3p3ss5i:
+ resolution: {integrity: sha512-hYfi3FXaM8WPLf4S1cikh/r4IxnO6zrhZbEGz2b660EJRbuxgpDS5gkCuYgGWg2xxh2rBuIr4Pvhve/7c31koA==}
+ engines: {node: '>=4'}
+ peerDependencies:
+ '@typescript-eslint/parser': '*'
+ eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8
+ peerDependenciesMeta:
+ '@typescript-eslint/parser':
+ optional: true
+ dependencies:
+ '@typescript-eslint/parser': 5.30.5_eslint@7.32.0
+ array-includes: 3.1.5
+ array.prototype.flat: 1.3.0
+ debug: 2.6.9
+ doctrine: 2.1.0
+ eslint: 7.32.0
+ eslint-import-resolver-node: 0.3.6
+ eslint-module-utils: 2.7.3_ea34krk32wbcqzxapvwr7rsjs4
+ has: 1.0.3
+ is-core-module: 2.9.0
+ is-glob: 4.0.3
+ minimatch: 3.1.2
+ object.values: 1.1.5
+ resolve: 1.22.1
+ tsconfig-paths: 3.14.1
+ transitivePeerDependencies:
+ - eslint-import-resolver-typescript
+ - eslint-import-resolver-webpack
+ - supports-color
+ dev: true
+
/eslint-plugin-jsx-plus/0.1.0:
resolution: {integrity: sha512-iANfZsPWwUWT2czz3A7Ti7B5Iun8YvIMDe6c7VYEZAVjCZyZkB+djflAxOv1XD/TwQeFoEYhCoqaBRWFk5/vIA==}
engines: {node: '>=0.10.0'}
@@ -6887,6 +7222,15 @@ packages:
requireindex: 1.1.0
dev: true
+ /eslint-plugin-react-hooks/4.6.0_eslint@7.32.0:
+ resolution: {integrity: sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==}
+ engines: {node: '>=10'}
+ peerDependencies:
+ eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0
+ dependencies:
+ eslint: 7.32.0
+ dev: true
+
/eslint-plugin-react-hooks/4.6.0_eslint@8.19.0:
resolution: {integrity: sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==}
engines: {node: '>=10'}
@@ -6896,6 +7240,29 @@ packages:
eslint: 8.19.0
dev: true
+ /eslint-plugin-react/7.30.1_eslint@7.32.0:
+ resolution: {integrity: sha512-NbEvI9jtqO46yJA3wcRF9Mo0lF9T/jhdHqhCHXiXtD+Zcb98812wvokjWpU7Q4QH5edo6dmqrukxVvWWXHlsUg==}
+ engines: {node: '>=4'}
+ peerDependencies:
+ eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8
+ dependencies:
+ array-includes: 3.1.5
+ array.prototype.flatmap: 1.3.0
+ doctrine: 2.1.0
+ eslint: 7.32.0
+ estraverse: 5.3.0
+ jsx-ast-utils: 3.3.2
+ minimatch: 3.1.2
+ object.entries: 1.1.5
+ object.fromentries: 2.0.5
+ object.hasown: 1.1.1
+ object.values: 1.1.5
+ prop-types: 15.8.1
+ resolve: 2.0.0-next.4
+ semver: 6.3.0
+ string.prototype.matchall: 4.0.7
+ dev: true
+
/eslint-plugin-react/7.30.1_eslint@8.19.0:
resolution: {integrity: sha512-NbEvI9jtqO46yJA3wcRF9Mo0lF9T/jhdHqhCHXiXtD+Zcb98812wvokjWpU7Q4QH5edo6dmqrukxVvWWXHlsUg==}
engines: {node: '>=4'}
@@ -6919,6 +7286,21 @@ packages:
string.prototype.matchall: 4.0.7
dev: true
+ /eslint-plugin-vue/7.20.0_eslint@7.32.0:
+ resolution: {integrity: sha512-oVNDqzBC9h3GO+NTgWeLMhhGigy6/bQaQbHS+0z7C4YEu/qK/yxHvca/2PTZtGNPsCrHwOTgKMrwu02A9iPBmw==}
+ engines: {node: '>=8.10'}
+ peerDependencies:
+ eslint: ^6.2.0 || ^7.0.0 || ^8.0.0
+ dependencies:
+ eslint: 7.32.0
+ eslint-utils: 2.1.0
+ natural-compare: 1.4.0
+ semver: 6.3.0
+ vue-eslint-parser: 7.11.0_eslint@7.32.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
/eslint-plugin-vue/7.20.0_eslint@8.19.0:
resolution: {integrity: sha512-oVNDqzBC9h3GO+NTgWeLMhhGigy6/bQaQbHS+0z7C4YEu/qK/yxHvca/2PTZtGNPsCrHwOTgKMrwu02A9iPBmw==}
engines: {node: '>=8.10'}
@@ -6956,6 +7338,16 @@ packages:
eslint-visitor-keys: 1.3.0
dev: true
+ /eslint-utils/3.0.0_eslint@7.32.0:
+ resolution: {integrity: sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==}
+ engines: {node: ^10.0.0 || ^12.0.0 || >= 14.0.0}
+ peerDependencies:
+ eslint: '>=5'
+ dependencies:
+ eslint: 7.32.0
+ eslint-visitor-keys: 2.1.0
+ dev: true
+
/eslint-utils/3.0.0_eslint@8.19.0:
resolution: {integrity: sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==}
engines: {node: ^10.0.0 || ^12.0.0 || >= 14.0.0}
@@ -6981,6 +7373,55 @@ packages:
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
dev: true
+ /eslint/7.32.0:
+ resolution: {integrity: sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==}
+ engines: {node: ^10.12.0 || >=12.0.0}
+ hasBin: true
+ dependencies:
+ '@babel/code-frame': 7.12.11
+ '@eslint/eslintrc': 0.4.3
+ '@humanwhocodes/config-array': 0.5.0
+ ajv: 6.12.6
+ chalk: 4.1.2
+ cross-spawn: 7.0.3
+ debug: 4.3.4
+ doctrine: 3.0.0
+ enquirer: 2.3.6
+ escape-string-regexp: 4.0.0
+ eslint-scope: 5.1.1
+ eslint-utils: 2.1.0
+ eslint-visitor-keys: 2.1.0
+ espree: 7.3.1
+ esquery: 1.4.0
+ esutils: 2.0.3
+ fast-deep-equal: 3.1.3
+ file-entry-cache: 6.0.1
+ functional-red-black-tree: 1.0.1
+ glob-parent: 5.1.2
+ globals: 13.16.0
+ ignore: 4.0.6
+ import-fresh: 3.3.0
+ imurmurhash: 0.1.4
+ is-glob: 4.0.3
+ js-yaml: 3.14.1
+ json-stable-stringify-without-jsonify: 1.0.1
+ levn: 0.4.1
+ lodash.merge: 4.6.2
+ minimatch: 3.1.2
+ natural-compare: 1.4.0
+ optionator: 0.9.1
+ progress: 2.0.3
+ regexpp: 3.2.0
+ semver: 7.3.7
+ strip-ansi: 6.0.1
+ strip-json-comments: 3.1.1
+ table: 6.8.0
+ text-table: 0.2.0
+ v8-compile-cache: 2.3.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
/eslint/8.19.0:
resolution: {integrity: sha512-SXOPj3x9VKvPe81TjjUJCYlV4oJjQw68Uek+AM0X4p+33dj2HY5bpTZOgnQHcG2eAm1mtCU9uNMnJi7exU/kYw==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
@@ -7034,6 +7475,15 @@ packages:
eslint-visitor-keys: 1.3.0
dev: true
+ /espree/7.3.1:
+ resolution: {integrity: sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==}
+ engines: {node: ^10.12.0 || >=12.0.0}
+ dependencies:
+ acorn: 7.4.1
+ acorn-jsx: 5.3.2_acorn@7.4.1
+ eslint-visitor-keys: 1.3.0
+ dev: true
+
/espree/9.3.2:
resolution: {integrity: sha512-D211tC7ZwouTIuY5x9XnS0E9sWNChB7IYKX/Xp5eQj3nFXhqmiUDB9q27y76oFl8jTg3pXcQx/bpxMfs3CIZbA==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
@@ -7047,7 +7497,6 @@ packages:
resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==}
engines: {node: '>=4'}
hasBin: true
- dev: false
/esquery/1.4.0:
resolution: {integrity: sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==}
@@ -7406,7 +7855,6 @@ packages:
dependencies:
cross-spawn: 7.0.3
signal-exit: 3.0.7
- dev: false
/fork-ts-checker-webpack-plugin/6.5.2_3o2jfq6vfqxns3sz6wn2nnc3ei:
resolution: {integrity: sha512-m5cUmF30xkZ7h4tWUgTAcEaKmUW7tfyUyTqNNOz7OxWJ0v1VWKTcOvH8FWHUwSjlW/356Ijc9vi3XfcPstpQKA==}
@@ -7576,7 +8024,7 @@ packages:
/get-func-name/2.0.0:
resolution: {integrity: sha512-Hm0ixYtaSZ/V7C8FJrtZIuBBI+iSgL+1Aq82zSu8VQNB4S3Gk8e7Qs3VwBDJAhmRZcFqkl3tQu36g/Foh5I5ig==}
- dev: false
+ dev: true
/get-intrinsic/1.1.2:
resolution: {integrity: sha512-Jfm3OyCxHh9DJyc28qGk+JmfkpO41A4XkneDSujN9MDXrm4oDKdHvndhZ2dN94+ERNfkYJWDclW6k2L/ZGHjXA==}
@@ -7966,7 +8414,6 @@ packages:
/html-escaper/2.0.2:
resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==}
- dev: false
/html-minifier-terser/6.1.0:
resolution: {integrity: sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw==}
@@ -8145,6 +8592,11 @@ packages:
resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==}
dev: false
+ /ignore/4.0.6:
+ resolution: {integrity: sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==}
+ engines: {node: '>= 4'}
+ dev: true
+
/ignore/5.2.0:
resolution: {integrity: sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==}
engines: {node: '>= 4'}
@@ -8605,7 +9057,6 @@ packages:
/istanbul-lib-coverage/3.2.0:
resolution: {integrity: sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==}
engines: {node: '>=8'}
- dev: false
/istanbul-lib-report/3.0.0:
resolution: {integrity: sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==}
@@ -8614,7 +9065,6 @@ packages:
istanbul-lib-coverage: 3.2.0
make-dir: 3.1.0
supports-color: 7.2.0
- dev: false
/istanbul-reports/3.1.4:
resolution: {integrity: sha512-r1/DshN4KSE7xWEknZLLLLDn5CJybV3nw01VTkp6D5jzLuELlcbudfj/eSQFvrKsJuTVCGnePO7ho82Nw9zzfw==}
@@ -8622,7 +9072,6 @@ packages:
dependencies:
html-escaper: 2.0.2
istanbul-lib-report: 3.0.0
- dev: false
/jake/10.8.5:
resolution: {integrity: sha512-sVpxYeuAhWt0OTWITwT98oyV0GsXyMlXCF+3L1SuafBVUIr/uILGRB+NqwkzhgXKvoJpDIpQvqkUALgdmQsQxw==}
@@ -8665,7 +9114,6 @@ packages:
dependencies:
argparse: 1.0.10
esprima: 4.0.1
- dev: false
/js-yaml/4.1.0:
resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==}
@@ -8875,7 +9323,7 @@ packages:
/local-pkg/0.4.1:
resolution: {integrity: sha512-lL87ytIGP2FU5PWwNDo0w3WhIo2gopIAxPg9RxDYF7m4rr5ahuZxP22xnJHIvaLTe4Z9P6uKKY2UHiwyB4pcrw==}
engines: {node: '>=14'}
- dev: false
+ dev: true
/locate-path/2.0.0:
resolution: {integrity: sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==}
@@ -8969,7 +9417,7 @@ packages:
resolution: {integrity: sha512-OvKfgCC2Ndby6aSTREl5aCCPTNIzlDfQZvZxNUrBrihDhL3xcrYegTblhmEiCrg2kKQz4XsFIaemE5BF4ybSaQ==}
dependencies:
get-func-name: 2.0.0
- dev: false
+ dev: true
/lower-case/2.0.2:
resolution: {integrity: sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==}
@@ -9013,7 +9461,6 @@ packages:
engines: {node: '>=8'}
dependencies:
semver: 6.3.0
- dev: false
/make-error/1.3.6:
resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==}
@@ -9875,7 +10322,7 @@ packages:
/pathval/1.1.1:
resolution: {integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==}
- dev: false
+ dev: true
/picocolors/0.2.1:
resolution: {integrity: sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==}
@@ -10457,6 +10904,11 @@ packages:
/process-nextick-args/2.0.1:
resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==}
+ /progress/2.0.3:
+ resolution: {integrity: sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==}
+ engines: {node: '>=0.4.0'}
+ dev: true
+
/promise.series/0.2.0:
resolution: {integrity: sha512-VWQJyU2bcDTgZw8kpfBpB/ejZASlCrzwz5f2hjb/zlujOEB4oeiAhHygAWq8ubsX2GVkD4kCU5V2dwOTaCY5EQ==}
engines: {node: '>=0.12'}
@@ -10578,6 +11030,25 @@ packages:
unpipe: 1.0.0
dev: false
+ /rax-children/1.0.0_rax@1.2.2:
+ resolution: {integrity: sha512-sBKEXAMj9ik6SsPfPGgcQnqggmbWFyBdvAV/Cz/0f04bRA86BtWgbMri/9Dce0k8nkEC/BGWiiTdyA8Q49zIiw==}
+ engines: {npm: '>=3.0.0'}
+ peerDependencies:
+ rax: ^1.0.0
+ dependencies:
+ rax: 1.2.2
+ dev: true
+
+ /rax-clone-element/1.0.0_rax@1.2.2:
+ resolution: {integrity: sha512-TaQMVuzoglvCTjbWATlvvwARmeWnG8kpENWNXrNDv0++x29GHNND/TBbx7sdtVs/QmYwYc8YmwRUhaBwKQi5eQ==}
+ engines: {npm: '>=3.0.0'}
+ peerDependencies:
+ rax: ^1.0.0
+ dependencies:
+ rax: 1.2.2
+ rax-is-valid-element: 1.0.0
+ dev: true
+
/rax-compat/0.1.0-beta.4:
resolution: {integrity: sha512-/i1TfZ0qsouajUfa9dPXUQ8sP/jCSygvpjCITCT8IrN6gVoW1eVTVbOn9qMaJkZPue6617aoPcJu+n2co3teOg==}
peerDependencies:
@@ -10591,6 +11062,48 @@ packages:
- rax
dev: false
+ /rax-compat/0.1.0-beta.4_biqbaboplfbrettd7655fr4n2y:
+ resolution: {integrity: sha512-/i1TfZ0qsouajUfa9dPXUQ8sP/jCSygvpjCITCT8IrN6gVoW1eVTVbOn9qMaJkZPue6617aoPcJu+n2co3teOg==}
+ peerDependencies:
+ react: ^18
+ react-dom: ^18
+ dependencies:
+ appear-polyfill: 0.1.2
+ create-react-class: 15.7.0
+ react: 18.2.0
+ react-dom: 18.2.0_react@18.2.0
+ style-unit: 3.0.4
+ transitivePeerDependencies:
+ - rax
+ dev: false
+
+ /rax-create-factory/1.0.0_rax@1.2.2:
+ resolution: {integrity: sha512-blBaVrurj/BOWelJhQWiuc0Kk8Ons1jsNsX78omaPBLkSOL7OkyJ3NC/0iKXHu425yWrGB6e5vho/qabROC7VQ==}
+ engines: {npm: '>=3.0.0'}
+ peerDependencies:
+ rax: ^1.0.0
+ dependencies:
+ rax: 1.2.2
+ dev: true
+
+ /rax-is-valid-element/1.0.0:
+ resolution: {integrity: sha512-MM3IUAQRKn3EJ0D2vjxgobOJLplLAw3YxE7/IRM6ytDYzlPq5iIZ8wsXoPAp/qW3Y+n23HLQUIljmLKywcCEIA==}
+ engines: {npm: '>=3.0.0'}
+ dev: true
+
+ /rax/1.2.2:
+ resolution: {integrity: sha512-SKUKSXoG2Dp+sFyiFyYzTGmhZlYGxusRSigcokAYTN3r4WTySreXs2WE+6nBBGg26aFyiCsBVHNeI86SQbVsQg==}
+ engines: {npm: '>=3.0.0'}
+ dependencies:
+ '@babel/runtime': 7.18.6
+ driver-server: 1.0.0
+ prop-types: 15.8.1
+ rax-children: 1.0.0_rax@1.2.2
+ rax-clone-element: 1.0.0_rax@1.2.2
+ rax-create-factory: 1.0.0_rax@1.2.2
+ rax-is-valid-element: 1.0.0
+ dev: true
+
/rc/1.2.8:
resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==}
hasBin: true
@@ -10692,6 +11205,15 @@ packages:
react: 17.0.2
scheduler: 0.20.2
+ /react-dom/18.2.0_react@18.2.0:
+ resolution: {integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==}
+ peerDependencies:
+ react: ^18.2.0
+ dependencies:
+ loose-envify: 1.4.0
+ react: 18.2.0
+ scheduler: 0.23.0
+
/react-error-overlay/6.0.11:
resolution: {integrity: sha512-/6UZ2qgEyH2aqzYZgQPxEnz33NJ2gNsnHA2o5+o4wW9bLM/JYQitNP9xPhsXwC08hMMovfGe/8retsdDsczPRg==}
dev: false
@@ -10907,6 +11429,12 @@ packages:
loose-envify: 1.4.0
object-assign: 4.1.1
+ /react/18.2.0:
+ resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==}
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ loose-envify: 1.4.0
+
/read-pkg-up/7.0.1:
resolution: {integrity: sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==}
engines: {node: '>=8'}
@@ -11406,6 +11934,11 @@ packages:
loose-envify: 1.4.0
object-assign: 4.1.1
+ /scheduler/0.23.0:
+ resolution: {integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==}
+ dependencies:
+ loose-envify: 1.4.0
+
/schema-utils/2.7.0:
resolution: {integrity: sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==}
engines: {node: '>= 8.9.0'}
@@ -11773,7 +12306,6 @@ packages:
/sprintf-js/1.0.3:
resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==}
- dev: false
/stable/0.1.8:
resolution: {integrity: sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==}
@@ -11958,7 +12490,6 @@ packages:
dependencies:
'@babel/runtime': 7.18.6
universal-env: 3.3.3
- dev: false
/stylehacks/5.1.0_postcss@8.4.14:
resolution: {integrity: sha512-SzLmvHQTrIWfSgljkQCw2++C9+Ne91d/6Sp92I8c5uHTcy/PgeHamwITIbBW9wnFTY/3ZfSXR9HIL6Ikqmcu6Q==}
@@ -12174,7 +12705,6 @@ packages:
'@istanbuljs/schema': 0.1.3
glob: 7.2.3
minimatch: 3.1.2
- dev: false
/text-extensions/1.9.0:
resolution: {integrity: sha512-wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ==}
@@ -12208,12 +12738,12 @@ packages:
/tinypool/0.1.3:
resolution: {integrity: sha512-2IfcQh7CP46XGWGGbdyO4pjcKqsmVqFAPcXfPxcPXmOWt9cYkTP9HcDmGgsfijYoAEc4z9qcpM/BaBz46Y9/CQ==}
engines: {node: '>=14.0.0'}
- dev: false
+ dev: true
/tinyspy/0.3.3:
resolution: {integrity: sha512-gRiUR8fuhUf0W9lzojPf1N1euJYA30ISebSfgca8z76FOvXtVXqd5ojEIaKLWbDQhAaC3ibxZIjqbyi4ybjcTw==}
engines: {node: '>=14.0.0'}
- dev: false
+ dev: true
/tmp/0.0.33:
resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==}
@@ -12330,6 +12860,15 @@ packages:
/tslib/2.4.0:
resolution: {integrity: sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==}
+ /tsutils/3.21.0:
+ resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==}
+ engines: {node: '>= 6'}
+ peerDependencies:
+ typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta'
+ dependencies:
+ tslib: 1.14.1
+ dev: true
+
/tsutils/3.21.0_typescript@4.7.4:
resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==}
engines: {node: '>= 6'}
@@ -12350,7 +12889,7 @@ packages:
/type-detect/4.0.8:
resolution: {integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==}
engines: {node: '>=4'}
- dev: false
+ dev: true
/type-fest/0.18.1:
resolution: {integrity: sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==}
@@ -12536,7 +13075,6 @@ packages:
engines: {npm: '>=3.0.0'}
dependencies:
'@uni/env': 1.1.0
- dev: false
/universalify/0.1.2:
resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==}
@@ -12716,7 +13254,6 @@ packages:
'@jridgewell/trace-mapping': 0.3.14
'@types/istanbul-lib-coverage': 2.0.4
convert-source-map: 1.8.0
- dev: false
/validate-npm-package-license/3.0.4:
resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==}
@@ -12780,7 +13317,7 @@ packages:
rollup: 2.76.0
optionalDependencies:
fsevents: 2.3.2
- dev: false
+ dev: true
/vitest/0.7.13_c8@7.11.3:
resolution: {integrity: sha512-UCHeJEOK+qCBa/e4UtkCfv0wIZ125T4Nf2R0J/46v/Wnv6bt9zGfAyKAI6siYFhvLvg20MgDIreROtVgedHFWw==}
@@ -12813,7 +13350,25 @@ packages:
- less
- sass
- stylus
- dev: false
+ dev: true
+
+ /vue-eslint-parser/7.11.0_eslint@7.32.0:
+ resolution: {integrity: sha512-qh3VhDLeh773wjgNTl7ss0VejY9bMMa0GoDG2fQVyDzRFdiU3L7fw74tWZDHNQXdZqxO3EveQroa9ct39D2nqg==}
+ engines: {node: '>=8.10'}
+ peerDependencies:
+ eslint: '>=5.0.0'
+ dependencies:
+ debug: 4.3.4
+ eslint: 7.32.0
+ eslint-scope: 5.1.1
+ eslint-visitor-keys: 1.3.0
+ espree: 6.2.1
+ esquery: 1.4.0
+ lodash: 4.17.21
+ semver: 6.3.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
/vue-eslint-parser/7.11.0_eslint@8.19.0:
resolution: {integrity: sha512-qh3VhDLeh773wjgNTl7ss0VejY9bMMa0GoDG2fQVyDzRFdiU3L7fw74tWZDHNQXdZqxO3EveQroa9ct39D2nqg==}
@@ -13269,7 +13824,6 @@ packages:
string-width: 4.2.3
y18n: 5.0.8
yargs-parser: 20.2.9
- dev: false
/yargs/17.5.1:
resolution: {integrity: sha512-t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA==}
diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml
index 3ed62560..d174a74c 100644
--- a/pnpm-workspace.yaml
+++ b/pnpm-workspace.yaml
@@ -1,4 +1,5 @@
packages:
- 'packages/*'
- 'examples/*'
+ - 'tests/fixtures/scenarios/*'
- 'website'
diff --git a/tests/fixtures/scenarios/node/.eslintignore b/tests/fixtures/scenarios/node/.eslintignore
new file mode 100644
index 00000000..c20f050d
--- /dev/null
+++ b/tests/fixtures/scenarios/node/.eslintignore
@@ -0,0 +1,12 @@
+# See https://eslint.org/docs/latest/user-guide/configuring/ignoring-code for more about ignoring files.
+.docusaurus/
+node_modules/
+**/*-min.js
+**/*.min.js
+coverage/
+cjs/
+esm/
+es2017/
+dist/
+build/
+tmp/
diff --git a/tests/fixtures/scenarios/node/.eslintrc.cjs b/tests/fixtures/scenarios/node/.eslintrc.cjs
new file mode 100644
index 00000000..cbcecd85
--- /dev/null
+++ b/tests/fixtures/scenarios/node/.eslintrc.cjs
@@ -0,0 +1,7 @@
+const { getESLintConfig } = require('@iceworks/spec');
+
+module.exports = getESLintConfig('react-ts', {
+ env: {
+ jest: true
+ },
+});
diff --git a/tests/fixtures/scenarios/node/.gitignore b/tests/fixtures/scenarios/node/.gitignore
new file mode 100644
index 00000000..3b4236cc
--- /dev/null
+++ b/tests/fixtures/scenarios/node/.gitignore
@@ -0,0 +1,24 @@
+# See https://help.github.com/ignore-files/ for more about ignoring files.
+
+# dependencies
+node_modules/
+
+# production
+.docusaurus/
+build/
+dist/
+tmp/
+cjs/
+esm/
+es2017/
+
+# misc
+.idea/
+.happypack
+.DS_Store
+*.swp
+*.dia~
+
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
diff --git a/tests/fixtures/scenarios/node/.stylelintignore b/tests/fixtures/scenarios/node/.stylelintignore
new file mode 100644
index 00000000..273d1719
--- /dev/null
+++ b/tests/fixtures/scenarios/node/.stylelintignore
@@ -0,0 +1,11 @@
+.docusaurus/
+node_modules/
+**/*-min.css
+**/*.min.css
+coverage/
+cjs/
+esm/
+es2017/
+dist/
+build/
+tmp/
diff --git a/tests/fixtures/scenarios/node/.stylelintrc.cjs b/tests/fixtures/scenarios/node/.stylelintrc.cjs
new file mode 100644
index 00000000..d9ecade5
--- /dev/null
+++ b/tests/fixtures/scenarios/node/.stylelintrc.cjs
@@ -0,0 +1,3 @@
+const { getStylelintConfig } = require('@iceworks/spec');
+
+module.exports = getStylelintConfig('react');
diff --git a/tests/fixtures/scenarios/node/README.md b/tests/fixtures/scenarios/node/README.md
new file mode 100644
index 00000000..c0386f1a
--- /dev/null
+++ b/tests/fixtures/scenarios/node/README.md
@@ -0,0 +1,15 @@
+# node
+
+组件功能描述
+
+## Install
+
+```bash
+$ npm i node --save
+```
+
+## Usage
+
+```js
+import Node from 'node';
+```
diff --git a/tests/fixtures/scenarios/node/abc.json b/tests/fixtures/scenarios/node/abc.json
new file mode 100644
index 00000000..942446b5
--- /dev/null
+++ b/tests/fixtures/scenarios/node/abc.json
@@ -0,0 +1,3 @@
+{
+ "builder": "@ali/builder-component"
+}
diff --git a/tests/fixtures/scenarios/node/build.config.mts b/tests/fixtures/scenarios/node/build.config.mts
new file mode 100644
index 00000000..c91fc6b4
--- /dev/null
+++ b/tests/fixtures/scenarios/node/build.config.mts
@@ -0,0 +1,8 @@
+import { defineConfig } from '@ice/pkg';
+
+// https://pkg.ice.work/reference/config-list/
+export default defineConfig({
+ transform: {
+ formats: ['es2017'],
+ },
+});
diff --git a/tests/fixtures/scenarios/node/package.json b/tests/fixtures/scenarios/node/package.json
new file mode 100644
index 00000000..9e3eb55e
--- /dev/null
+++ b/tests/fixtures/scenarios/node/package.json
@@ -0,0 +1,50 @@
+{
+ "name": "node",
+ "version": "0.1.0",
+ "description": "组件功能描述",
+ "type": "module",
+ "files": [
+ "esm",
+ "cjs",
+ "es2017",
+ "dist",
+ "build"
+ ],
+ "module": "es2017/index.js",
+ "exports": {
+ ".": {
+ "import": "./es2017/index.js"
+ },
+ "./*": "./*"
+ },
+ "sideEffects": [
+ "dist/*",
+ "*.scss",
+ "*.less",
+ "*.css"
+ ],
+ "scripts": {
+ "start": "ice-pkg start",
+ "build": "ice-pkg build",
+ "prepublishOnly": "npm run build",
+ "eslint": "eslint --cache --ext .js,.jsx,.ts,.tsx ./",
+ "eslint:fix": "npm run eslint -- --fix",
+ "stylelint": "stylelint \"**/*.{css,scss,less}\"",
+ "lint": "npm run eslint && npm run stylelint"
+ },
+ "keywords": [
+ "ice",
+ "js",
+ "library"
+ ],
+ "devDependencies": {
+ "@ice/pkg": "^1.0.0",
+ "@iceworks/spec": "^1.0.0",
+ "eslint": "^7.0.0",
+ "stylelint": "^13.7.2"
+ },
+ "publishConfig": {
+ "access": "public"
+ },
+ "license": "MIT"
+}
diff --git a/tests/fixtures/scenarios/node/src/index.ts b/tests/fixtures/scenarios/node/src/index.ts
new file mode 100644
index 00000000..4347921a
--- /dev/null
+++ b/tests/fixtures/scenarios/node/src/index.ts
@@ -0,0 +1,4 @@
+export function foo(options: any) {
+ console.log('options');
+ return true;
+}
diff --git a/tests/fixtures/scenarios/node/tsconfig.json b/tests/fixtures/scenarios/node/tsconfig.json
new file mode 100644
index 00000000..e624667b
--- /dev/null
+++ b/tests/fixtures/scenarios/node/tsconfig.json
@@ -0,0 +1,21 @@
+{
+ "compileOnSave": false,
+ "buildOnSave": false,
+ "compilerOptions": {
+ "outDir": "build",
+ "module": "esnext",
+ "target": "esnext",
+ "jsx": "react",
+ "moduleResolution": "node",
+ "lib": ["es6", "dom"],
+ "sourceMap": true,
+ "allowJs": true,
+ "noUnusedLocals": true,
+ "noImplicitReturns": true,
+ "noImplicitThis": true,
+ "noImplicitAny": true,
+ "skipLibCheck": true
+ },
+ "include": ["src/*.ts", "src/*.tsx"],
+ "exclude": ["node_modules", "build", "public"]
+}
diff --git a/tests/fixtures/scenarios/rax/.eslintignore b/tests/fixtures/scenarios/rax/.eslintignore
new file mode 100644
index 00000000..c20f050d
--- /dev/null
+++ b/tests/fixtures/scenarios/rax/.eslintignore
@@ -0,0 +1,12 @@
+# See https://eslint.org/docs/latest/user-guide/configuring/ignoring-code for more about ignoring files.
+.docusaurus/
+node_modules/
+**/*-min.js
+**/*.min.js
+coverage/
+cjs/
+esm/
+es2017/
+dist/
+build/
+tmp/
diff --git a/tests/fixtures/scenarios/rax/.eslintrc.cjs b/tests/fixtures/scenarios/rax/.eslintrc.cjs
new file mode 100644
index 00000000..cbcecd85
--- /dev/null
+++ b/tests/fixtures/scenarios/rax/.eslintrc.cjs
@@ -0,0 +1,7 @@
+const { getESLintConfig } = require('@iceworks/spec');
+
+module.exports = getESLintConfig('react-ts', {
+ env: {
+ jest: true
+ },
+});
diff --git a/tests/fixtures/scenarios/rax/.gitignore b/tests/fixtures/scenarios/rax/.gitignore
new file mode 100644
index 00000000..3b4236cc
--- /dev/null
+++ b/tests/fixtures/scenarios/rax/.gitignore
@@ -0,0 +1,24 @@
+# See https://help.github.com/ignore-files/ for more about ignoring files.
+
+# dependencies
+node_modules/
+
+# production
+.docusaurus/
+build/
+dist/
+tmp/
+cjs/
+esm/
+es2017/
+
+# misc
+.idea/
+.happypack
+.DS_Store
+*.swp
+*.dia~
+
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
diff --git a/tests/fixtures/scenarios/rax/.stylelintignore b/tests/fixtures/scenarios/rax/.stylelintignore
new file mode 100644
index 00000000..273d1719
--- /dev/null
+++ b/tests/fixtures/scenarios/rax/.stylelintignore
@@ -0,0 +1,11 @@
+.docusaurus/
+node_modules/
+**/*-min.css
+**/*.min.css
+coverage/
+cjs/
+esm/
+es2017/
+dist/
+build/
+tmp/
diff --git a/tests/fixtures/scenarios/rax/.stylelintrc.cjs b/tests/fixtures/scenarios/rax/.stylelintrc.cjs
new file mode 100644
index 00000000..d9ecade5
--- /dev/null
+++ b/tests/fixtures/scenarios/rax/.stylelintrc.cjs
@@ -0,0 +1,3 @@
+const { getStylelintConfig } = require('@iceworks/spec');
+
+module.exports = getStylelintConfig('react');
diff --git a/tests/fixtures/scenarios/rax/README.md b/tests/fixtures/scenarios/rax/README.md
new file mode 100644
index 00000000..d60f0035
--- /dev/null
+++ b/tests/fixtures/scenarios/rax/README.md
@@ -0,0 +1,15 @@
+# rax
+
+组件功能描述
+
+## Install
+
+```bash
+$ npm i rax --save
+```
+
+## Usage
+
+```jsx
+import Rax from 'rax';
+```
diff --git a/tests/fixtures/scenarios/rax/abc.json b/tests/fixtures/scenarios/rax/abc.json
new file mode 100644
index 00000000..942446b5
--- /dev/null
+++ b/tests/fixtures/scenarios/rax/abc.json
@@ -0,0 +1,3 @@
+{
+ "builder": "@ali/builder-component"
+}
diff --git a/tests/fixtures/scenarios/rax/build.config.mts b/tests/fixtures/scenarios/rax/build.config.mts
new file mode 100644
index 00000000..59e283fd
--- /dev/null
+++ b/tests/fixtures/scenarios/rax/build.config.mts
@@ -0,0 +1,9 @@
+import { defineConfig } from '@ice/pkg';
+
+// https://pkg.ice.work/reference/config-list/
+export default defineConfig({
+ plugins: [
+ '@ice/pkg-plugin-docusaurus',
+ '@ice/pkg-plugin-rax-component'
+ ],
+});
diff --git a/tests/fixtures/scenarios/rax/docs/index.md b/tests/fixtures/scenarios/rax/docs/index.md
new file mode 100644
index 00000000..7efe87ef
--- /dev/null
+++ b/tests/fixtures/scenarios/rax/docs/index.md
@@ -0,0 +1,8 @@
+---
+sidebar_label: 首页
+sidebar_position: 0
+---
+
+import Readme from '../README.md';
+
+