├── .eslintignore
├── .eslintrc.js
├── .gitignore
├── .prettierrc
├── CorePlugins.md
├── LICENSE
├── README.md
├── examples
├── .gitignore
├── native
│ ├── .editorconfig
│ ├── .eslintignore
│ ├── .eslintrc.js
│ ├── .prettierrc
│ ├── README.md
│ ├── package.json
│ ├── postcss.config.js
│ ├── project.config.json
│ ├── scripts
│ │ ├── assets
│ │ │ ├── copy.ts
│ │ │ ├── index.ts
│ │ │ ├── scss.ts
│ │ │ └── ts.ts
│ │ ├── build.ts
│ │ ├── clear.ts
│ │ ├── common.ts
│ │ └── preflight.ts
│ ├── src
│ │ ├── .gitignore
│ │ ├── app.json
│ │ ├── app.scss
│ │ ├── app.ts
│ │ ├── pages
│ │ │ ├── index
│ │ │ │ ├── index.json
│ │ │ │ ├── index.scss
│ │ │ │ ├── index.ts
│ │ │ │ └── index.wxml
│ │ │ └── logs
│ │ │ │ ├── logs.json
│ │ │ │ ├── logs.scss
│ │ │ │ ├── logs.ts
│ │ │ │ └── logs.wxml
│ │ ├── sitemap.json
│ │ └── utils
│ │ │ └── util.ts
│ ├── tailwind.config.js
│ ├── tsconfig.json
│ ├── vscode-tailwindcss-intellisense.png
│ └── yarn.lock
└── uni-app
│ └── README.md
├── jest.config.ts
├── jest.setup.ts
├── package.json
├── rollup.config.js
├── scripts
├── allCorePlugins.ts
├── gen-readme.ts
├── raw.js
└── template.md
├── src
├── config.ts
├── constant.ts
├── corePlugins.ts
├── defaultConfig.ts
├── index.ts
├── rem2rpx.ts
├── types.ts
└── util.ts
├── test
├── config.test.ts
├── rem2rpx.test.ts
└── util.test.ts
├── tsconfig.build.json
├── tsconfig.json
├── types
└── tailwindcss.defaultConfig.d.ts
└── yarn.lock
/.eslintignore:
--------------------------------------------------------------------------------
1 | dist/**
--------------------------------------------------------------------------------
/.eslintrc.js:
--------------------------------------------------------------------------------
1 | function getJestGlobals (flag = true) {
2 | return {
3 | afterAll: flag,
4 | afterEach: flag,
5 | beforeAll: flag,
6 | beforeEach: flag,
7 | describe: flag,
8 | expect: flag,
9 | fit: flag,
10 | it: flag,
11 | jest: flag,
12 | test: flag,
13 | xdescribe: flag,
14 | xit: flag,
15 | xtest: flag
16 | }
17 | }
18 |
19 | module.exports = {
20 | root: false,
21 | env: {
22 | es2021: true,
23 | node: true
24 | },
25 | extends: [
26 | 'standard'
27 | ],
28 | parser: '@typescript-eslint/parser',
29 | parserOptions: {
30 | ecmaVersion: 12,
31 | sourceType: 'module'
32 | },
33 | plugins: [
34 | '@typescript-eslint'
35 | ],
36 | rules: {
37 | },
38 | globals: {
39 | ...getJestGlobals()
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules/
2 | dist
3 | coverage
--------------------------------------------------------------------------------
/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "tabWidth": 2,
3 | "useTabs": false,
4 | "semi": false,
5 | "singleQuote": true,
6 | "trailingComma": "none"
7 | }
8 |
--------------------------------------------------------------------------------
/CorePlugins.md:
--------------------------------------------------------------------------------
1 | # tailwindcss corePlugins 启用状况
2 |
3 | |插件|是否启用|
4 | |---|---|
5 | |**preflight**|否|
6 | |**container**|否|
7 | |**space**|否|
8 | |**divideWidth**|否|
9 | |**divideColor**|否|
10 | |**divideStyle**|否|
11 | |**divideOpacity**|否|
12 | |**accessibility**|否|
13 | |**appearance**|是|
14 | |**backgroundAttachment**|是|
15 | |**backgroundClip**|是|
16 | |**backgroundColor**|是|
17 | |**backgroundImage**|是|
18 | |**gradientColorStops**|是|
19 | |**backgroundOpacity**|是|
20 | |**backgroundPosition**|是|
21 | |**backgroundRepeat**|是|
22 | |**backgroundSize**|是|
23 | |**borderCollapse**|是|
24 | |**borderColor**|是|
25 | |**borderOpacity**|是|
26 | |**borderRadius**|是|
27 | |**borderStyle**|是|
28 | |**borderWidth**|是|
29 | |**boxSizing**|是|
30 | |**cursor**|是|
31 | |**display**|是|
32 | |**flexDirection**|是|
33 | |**flexWrap**|是|
34 | |**placeItems**|否|
35 | |**placeContent**|否|
36 | |**placeSelf**|否|
37 | |**alignItems**|是|
38 | |**alignContent**|是|
39 | |**alignSelf**|是|
40 | |**justifyItems**|是|
41 | |**justifyContent**|是|
42 | |**justifySelf**|是|
43 | |**flex**|是|
44 | |**flexGrow**|是|
45 | |**flexShrink**|是|
46 | |**order**|是|
47 | |**float**|是|
48 | |**clear**|是|
49 | |**fontFamily**|否|
50 | |**fontWeight**|是|
51 | |**height**|否|
52 | |**fontSize**|是|
53 | |**lineHeight**|是|
54 | |**listStylePosition**|是|
55 | |**listStyleType**|是|
56 | |**margin**|否|
57 | |**maxHeight**|否|
58 | |**maxWidth**|是|
59 | |**minHeight**|是|
60 | |**minWidth**|是|
61 | |**objectFit**|是|
62 | |**objectPosition**|是|
63 | |**opacity**|是|
64 | |**outline**|是|
65 | |**overflow**|是|
66 | |**overscrollBehavior**|是|
67 | |**padding**|否|
68 | |**placeholderColor**|是|
69 | |**placeholderOpacity**|是|
70 | |**pointerEvents**|是|
71 | |**position**|是|
72 | |**inset**|否|
73 | |**resize**|是|
74 | |**boxShadow**|否|
75 | |**ringWidth**|否|
76 | |**ringOffsetColor**|否|
77 | |**ringOffsetWidth**|否|
78 | |**ringColor**|否|
79 | |**ringOpacity**|否|
80 | |**fill**|否|
81 | |**stroke**|否|
82 | |**strokeWidth**|否|
83 | |**tableLayout**|是|
84 | |**textAlign**|是|
85 | |**textColor**|是|
86 | |**textOpacity**|是|
87 | |**textOverflow**|是|
88 | |**fontStyle**|是|
89 | |**textTransform**|是|
90 | |**textDecoration**|是|
91 | |**fontSmoothing**|是|
92 | |**fontVariantNumeric**|是|
93 | |**letterSpacing**|是|
94 | |**userSelect**|是|
95 | |**verticalAlign**|是|
96 | |**visibility**|是|
97 | |**whitespace**|是|
98 | |**wordBreak**|是|
99 | |**width**|否|
100 | |**zIndex**|是|
101 | |**gap**|否|
102 | |**gridAutoFlow**|否|
103 | |**gridTemplateColumns**|否|
104 | |**gridAutoColumns**|否|
105 | |**gridColumn**|否|
106 | |**gridColumnStart**|否|
107 | |**gridColumnEnd**|否|
108 | |**gridTemplateRows**|否|
109 | |**gridAutoRows**|否|
110 | |**gridRow**|否|
111 | |**gridRowStart**|否|
112 | |**gridRowEnd**|否|
113 | |**transform**|是|
114 | |**transformOrigin**|是|
115 | |**scale**|是|
116 | |**rotate**|是|
117 | |**translate**|否|
118 | |**skew**|是|
119 | |**transitionProperty**|是|
120 | |**transitionTimingFunction**|是|
121 | |**transitionDuration**|是|
122 | |**transitionDelay**|是|
123 | |**animation**|是|
124 |
125 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2021 ice breaker
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | 👉👉👉 支持 `tailwindcss jit` 引擎的 [`weapp-tailwindcss-webpack-plugin`](https://github.com/sonofmagic/weapp-tailwindcss-webpack-plugin) 已经发布了,赶紧过来看看吧。
2 |
3 | 它能带给开发者最原汁原味的 `jit` 模式开发体验,无需抛弃 `[`,`]`,`/`,`#`,`.` 等特殊符号,都在代码编译打包时统一处理。相比 `tailwindcss-miniprogram-preset` 方案来说开发体验更好,也兼容更多的工具类。
4 |
5 | # tailwindcss-miniprogram-preset
6 |
7 | > tailwindcss-preset for miniprogram
8 | > tailwindcss 小程序版本预设
9 |
10 | 用 `tailwindcss` 来改善你的小程序开发体验吧
11 |
12 | ## 功能
13 |
14 | 大部分有用的 tailwindcss utilities 兼容小程序 + rem 转 rpx (默认 1rem = 32rpx)
15 |
16 | ## migration(From v1 -> v2)
17 |
18 | ```js
19 | // # v1
20 | // tailwind.config.js
21 | module.exports = {
22 | presets: [require('tailwindcss-miniprogram-preset')]
23 | // ...
24 | }
25 | // # v2
26 | // tailwind.config.js
27 | const {
28 | defaultPreset,
29 | createPreset
30 | } = require('tailwindcss-miniprogram-preset')
31 | module.exports = {
32 | presets: [defaultPreset]
33 | // ...
34 | }
35 | ```
36 |
37 | ## How to use it
38 |
39 | Installation
40 |
41 | ```sh
42 | npm i -D tailwindcss-miniprogram-preset
43 | # or
44 | yarn add -D tailwindcss-miniprogram-preset
45 | ```
46 |
47 | Then
48 |
49 | [Installing Tailwind CSS as a PostCSS plugin](https://tailwindcss.com/docs/installation)
50 |
51 | and `npx tailwindcss init`
52 |
53 | then add `tailwindcss-miniprogram-preset` into your `presets`:
54 |
55 | ```js
56 | // tailwind.config.js
57 | const {
58 | defaultPreset,
59 | createPreset
60 | } = require('tailwindcss-miniprogram-preset')
61 | module.exports = {
62 | presets: [defaultPreset]
63 | // ...
64 | }
65 | ```
66 |
67 | > createPreset 这个方法,可以根据配置创建自定义的预设,以及是否启用 rem2rpx,可配合其他 `postcss` 插件使用,如[postcss-rem-to-responsive-pixel](https://www.npmjs.com/package/postcss-rem-to-responsive-pixel)
68 |
69 | Then import tailwindcss
70 |
71 | ```css
72 | /* @tailwind base;
73 | @tailwind components; */
74 | @tailwind utilities;
75 | ```
76 |
77 | or Using with Preprocessors
78 |
79 | ```scss
80 | // uni-app App.vue 公共部分
81 | // 小程序不需要 'base' 'components'
82 | // @import 'tailwindcss/base';
83 | // @import 'tailwindcss/components';
84 | // 只需引入工具类
85 | @import 'tailwindcss/utilities';
86 | ```
87 |
88 | ## 最佳实践
89 |
90 | 建议配合 vscode 插件 [Tailwind CSS IntelliSense](https://marketplace.visualstudio.com/items?itemName=bradlc.vscode-tailwindcss) 使用
91 |
92 | 可以根据配置自动生成智能提示,可有效提升开发体验
93 |
94 | 使用 `uni-app` 的朋友可以直接使用提供的模板
95 |
96 | - [vue2](https://github.com/sonofmagic/uni-app-vue2-tailwind-vscode-template)
97 |
98 | - [vue3](https://github.com/sonofmagic/uni-app-vue3-tailwind-vscode-template)
99 |
100 | ## 默认配置
101 |
102 | > 默认配置都可通过 tailwind 自带的 merge 策略开启, 其中
103 |
104 | - `darkMode` 默认 `false`
105 | - `theme.screens` 默认 `false` , 英文它不需要 pc 那种自适应边界
106 | - `important` 默认 `true` , 需要用它去覆盖原生的样式
107 | - `purge.enabled` 默认 `process.env.NODE_ENV === 'production'` ,可通过 `NODE_ENV` 环境变量,避免打包出来的 `wxss` 过大的问题, 开发环境默认关闭.
108 | - 一些 `class` 的 `rename` 见下表
109 |
110 | ## 如何关闭 rem2rpx 转化?
111 |
112 | 将 `createPreset` 的 `rem2rpx` 设置为 `false` 即可
113 |
114 | ```js
115 | // tailwind.config.js
116 | presets: [
117 | createPreset({
118 | rem2rpx: false
119 | })
120 | ]
121 | ```
122 |
123 | 此时需要转化为 `rpx` ,可以使用 [`postcss-rem-to-responsive-pixel`](https://www.npmjs.com/package/postcss-rem-to-responsive-pixel)
124 |
125 | 可以达到同样效果的 `postcss` 配置 `demo`:
126 |
127 | ```js
128 | // postcss.config.js
129 | module.exports = {
130 | plugins: [
131 | require('autoprefixer'),
132 | require('tailwindcss'),
133 | require('postcss-rem-to-responsive-pixel')({
134 | rootValue: 32,
135 | propList: ['*'],
136 | transformUnit: 'rpx'
137 | })
138 | ]
139 | }
140 | ```
141 |
142 | ## 定制化兼容小程序的牺牲
143 |
144 | ### 小程序的 class 不支持除'-'和'\_'外的特殊符号
145 |
146 | 解决方案: 做 class rename 处理
147 |
148 | | form | to | sample |
149 | | ---- | ------- | ---------------------- |
150 | | `\/` | `-div-` | `w-1/4` -> `w-1-div-4` |
151 | | `\.` | `-dot-` | `w-1.5` -> `w-1-dot-5` |
152 |
153 | ### 小程序 wxss 只支持少量选择器
154 |
155 | [官方文档链接](https://developers.weixin.qq.com/miniprogram/dev/framework/view/wxss.html)
156 |
157 | 解决方案:
158 |
159 | - 去除基于 `:not` 选择器的 `corePlugins`
160 | - 去除不支持 `*` 选择器的 `corePlugins` , 例如默认添加 `'*, ::before, ::after'` 的插件
161 | - 清空 variants (`hover:` `focus:` 这些)
162 | - 不启用 `mode: 'jit'` 即时编译模式,因为 `wxml` 里写 `w-[762px]` ,`[` 和 `]`,会被默认转义为空格,导致即时编译无效。(小程序特殊符号只支持 '-' 和 '\_')
163 |
164 | ### 去除自适应和无用插件
165 |
166 | 解决方案:
167 |
168 | - 只使用 `utilities` , 不导入 `base` 和 `components`
169 |
170 | ## 如何覆盖此预设配置?
171 |
172 | 核心插件:
173 |
174 | `corePlugins` 选项根据您是将其配置为对象还是数组而表现不同。
175 |
176 | 如果您把 `corePlugins` 配置为一个对象,那么它就会被跨配置合并。
177 |
178 | 如果您把 `corePlugins` 配置为一个数组,它就会取代您配置的预设所提供的任何 `corePlugins` 配置。
179 |
180 | [官方参考文档](https://www.tailwindcss.cn/docs/presets)
181 |
182 | ## 注意事项
183 |
184 | 如果开发时,HMR 热更新不起作用,可以更改 `purge` 选项
185 |
186 | 也可以直接用自定义的 `purge` 选项, 覆盖当前 `preset`
187 |
188 | ```js
189 | // tailwind.config.js
190 | const { defaultPreset } = require('tailwindcss-miniprogram-preset')
191 | /** @type {import('@types/tailwindcss/tailwind-config').TailwindConfig} */
192 | module.exports = {
193 | purge: defaultPreset.purge.content,
194 | presets: [defaultPreset]
195 | }
196 | ```
197 |
198 | ## [corePlugins 启用状况](./CorePlugins.md)
199 |
--------------------------------------------------------------------------------
/examples/.gitignore:
--------------------------------------------------------------------------------
1 | native2/**/*
--------------------------------------------------------------------------------
/examples/native/.editorconfig:
--------------------------------------------------------------------------------
1 | # EditorConfig is awesome: https://EditorConfig.org
2 |
3 | # top-most EditorConfig file
4 | root = true
5 |
6 | [*]
7 | indent_style = space
8 | indent_size = 2
9 | end_of_line = lf
10 | charset = utf-8
11 | trim_trailing_whitespace = false
12 | insert_final_newline = false
--------------------------------------------------------------------------------
/examples/native/.eslintignore:
--------------------------------------------------------------------------------
1 | dist/**/*
--------------------------------------------------------------------------------
/examples/native/.eslintrc.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | root: true,
3 | env: {
4 | browser: true,
5 | es2021: true
6 | },
7 | extends: ['standard'],
8 | parser: '@typescript-eslint/parser',
9 | parserOptions: {
10 | ecmaVersion: 13,
11 | sourceType: 'module'
12 | },
13 | plugins: ['@typescript-eslint'],
14 | rules: {
15 | 'space-before-function-paren': 0
16 | },
17 | globals: {
18 | App: true,
19 | wx: true,
20 | getApp: true,
21 | Page: true
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/examples/native/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "tabWidth": 2,
3 | "useTabs": false,
4 | "singleQuote": true,
5 | "trailingComma": "none",
6 | "semi": false
7 | }
8 |
--------------------------------------------------------------------------------
/examples/native/README.md:
--------------------------------------------------------------------------------
1 | # 原生小程序 postcss tailwind 方案
2 |
3 | ## 直接实现的 scss + postcss 机制
4 |
5 | - 文件监控 + 实时编译
6 |
7 | ## 智能提示兼容 wxml 方案
8 |
9 | 
--------------------------------------------------------------------------------
/examples/native/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "miniprogram-ts-quickstart",
3 | "version": "1.0.0",
4 | "description": "",
5 | "scripts": {
6 | "dev": "node -r ts-node/register scripts/build.ts",
7 | "raw:ts": "tsc -w",
8 | "build": "cross-env NODE_ENV=production node scripts/build.ts",
9 | "clear": "node -r ts-node/register scripts/clear.ts"
10 | },
11 | "keywords": [],
12 | "author": "",
13 | "license": "",
14 | "devDependencies": {
15 | "@types/sass": "^1.43.1",
16 | "@types/tailwindcss": "^2.2.4",
17 | "@types/wechat-miniprogram": "^3.4.0",
18 | "@typescript-eslint/eslint-plugin": "^5.5.0",
19 | "@typescript-eslint/parser": "^5.5.0",
20 | "anymatch": "^3.1.2",
21 | "autoprefixer": "^10.4.0",
22 | "chokidar": "^3.5.2",
23 | "cross-env": "^7.0.3",
24 | "del": "^6.0.0",
25 | "esbuild": "^0.14.1",
26 | "eslint": "^7.12.1",
27 | "eslint-config-standard": "^16.0.3",
28 | "eslint-plugin-import": "^2.22.1",
29 | "eslint-plugin-node": "^11.1.0",
30 | "eslint-plugin-promise": "^5.2.0",
31 | "fibers": "^5.0.0",
32 | "miniprogram-api-typings": "^3.4.4",
33 | "postcss": "^8.4.4",
34 | "postcss-rem-to-responsive-pixel": "^5.0.2",
35 | "sass": "^1.44.0",
36 | "tailwindcss": "^2.2.19",
37 | "tailwindcss-miniprogram-preset": "^2.1.1",
38 | "ts-node": "^10.4.0",
39 | "typescript": "^4.5.2"
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/examples/native/postcss.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | plugins: [
3 | require('autoprefixer'),
4 | require('tailwindcss'),
5 | require('postcss-rem-to-responsive-pixel')({
6 | rootValue: 32,
7 | propList: ['*'],
8 | transformUnit: 'rpx'
9 | })
10 | ]
11 | }
12 |
--------------------------------------------------------------------------------
/examples/native/project.config.json:
--------------------------------------------------------------------------------
1 | {
2 | "description": "项目配置文件",
3 | "packOptions": {
4 | "ignore": []
5 | },
6 | "miniprogramRoot": "dist/",
7 | "compileType": "miniprogram",
8 | "libVersion": "2.15.0",
9 | "projectname": "native",
10 | "setting": {
11 | "urlCheck": true,
12 | "es6": true,
13 | "enhance": true,
14 | "postcss": false,
15 | "preloadBackgroundData": false,
16 | "minified": true,
17 | "newFeature": false,
18 | "coverView": true,
19 | "nodeModules": false,
20 | "autoAudits": false,
21 | "showShadowRootInWxmlPanel": true,
22 | "scopeDataCheck": false,
23 | "uglifyFileName": false,
24 | "checkInvalidKey": true,
25 | "checkSiteMap": true,
26 | "uploadWithSourceMap": true,
27 | "compileHotReLoad": false,
28 | "lazyloadPlaceholderEnable": false,
29 | "useMultiFrameRuntime": true,
30 | "useApiHook": true,
31 | "useApiHostProcess": true,
32 | "babelSetting": {
33 | "ignore": [],
34 | "disablePlugins": [],
35 | "outputPath": ""
36 | },
37 | "enableEngineNative": false,
38 | "useIsolateContext": true,
39 | "userConfirmedBundleSwitch": false,
40 | "packNpmManually": false,
41 | "packNpmRelationList": [],
42 | "minifyWXSS": true,
43 | "disableUseStrict": false,
44 | "minifyWXML": true,
45 | "showES6CompileOption": false,
46 | "useCompilerPlugins": false
47 | },
48 | "simulatorType": "wechat",
49 | "simulatorPluginLibVersion": {},
50 | "appid": "wxb3d842a4a7e3440d",
51 | "condition": {}
52 | }
--------------------------------------------------------------------------------
/examples/native/scripts/assets/copy.ts:
--------------------------------------------------------------------------------
1 | import { promises as fsp } from 'fs'
2 | import { join } from 'path'
3 | import { removePrefix } from '../common'
4 |
5 | export async function copy(src: string, dir: string) {
6 | const dest = join(dir, removePrefix(src))
7 | await fsp.copyFile(src, dest)
8 | }
9 |
--------------------------------------------------------------------------------
/examples/native/scripts/assets/index.ts:
--------------------------------------------------------------------------------
1 | export * from './scss'
2 | export * from './ts'
3 | export * from './copy'
4 |
--------------------------------------------------------------------------------
/examples/native/scripts/assets/scss.ts:
--------------------------------------------------------------------------------
1 | import postcss from 'postcss'
2 | import sass from 'sass'
3 | import fs from 'fs'
4 | import path from 'path'
5 | import { plugins } from '../../postcss.config'
6 | import { removePrefix } from '../common'
7 |
8 | export function handleScss(
9 | sourcePath: string,
10 | { cwd, dir }: { cwd: string; dir: string }
11 | ) {
12 | return new Promise((resolve, reject) => {
13 | sass.render(
14 | {
15 | file: sourcePath
16 | // fiber: Fiber
17 | },
18 | (err, result) => {
19 | if (err) {
20 | console.error(err)
21 | }
22 | const destPath = path.resolve(
23 | cwd,
24 | dir,
25 | removePrefix(sourcePath).replace(/\.scss$/, '.wxss')
26 | )
27 | postcss(plugins)
28 | .process(result.css, {
29 | from: sourcePath,
30 | to: destPath
31 | })
32 | .then((result) => {
33 | fs.writeFile(destPath, result.css, () => true)
34 | if (result.map) {
35 | fs.writeFile(destPath + '.map', result.map.toString(), () => true)
36 | }
37 | resolve(result)
38 | })
39 | .catch((err) => {
40 | reject(err)
41 | })
42 | }
43 | )
44 | })
45 | }
46 |
--------------------------------------------------------------------------------
/examples/native/scripts/assets/ts.ts:
--------------------------------------------------------------------------------
1 | import * as esbuild from 'esbuild'
2 | import path from 'path'
3 | import { removePrefix } from '../common'
4 |
5 | export async function handleTs(entryPoint: string, dir: string) {
6 | const outfile = path.join(
7 | dir,
8 | removePrefix(entryPoint).replace(/\.ts$/, '.js')
9 | )
10 |
11 | // const entrydir = path.dirname(entryPoint)
12 | // const outdir = path.resolve(entrydir, '..', dir) // sourcePath.replace(/\.scss$/, '.wxss')
13 | const res = await esbuild.build({
14 | entryPoints: [entryPoint],
15 | outfile,
16 | // entryNames: [],
17 | bundle: false,
18 | watch: false,
19 | absWorkingDir: process.cwd(),
20 | // outdir,
21 | tsconfig: './tsconfig.json',
22 | target: ['es2015']
23 | })
24 | return res
25 | }
26 |
--------------------------------------------------------------------------------
/examples/native/scripts/build.ts:
--------------------------------------------------------------------------------
1 | import fs from 'fs'
2 | import chokidar from 'chokidar'
3 | import internalPath from 'path'
4 | import { handleScss, handleTs, copy } from './assets'
5 | const log = console.log
6 |
7 | const { preflight } = require('./preflight')
8 | // purgecss
9 |
10 | const suffixArray = [
11 | // 'wxss'
12 | 'scss',
13 | // wxml 更改触发 css purge
14 | 'wxml',
15 | 'ts',
16 | 'json',
17 | 'wxs'
18 | // 'less'
19 | ]
20 |
21 | function getHolder(arr: string[]) {
22 | if (arr.length === 1) {
23 | return arr[0]
24 | } else if (arr.length > 1) {
25 | return `{${arr.join(',')}}`
26 | }
27 | return ''
28 | }
29 | const watcher = chokidar.watch(`./src/**/*.${getHolder(suffixArray)}`, {
30 | // eslint-disable-next-line no-useless-escape
31 | ignored: /(^|[\/\\])\../, // ignore dotfiles
32 | persistent: true
33 | })
34 | const cwd = process.cwd()
35 | const scssOptions = {
36 | dir: 'dist',
37 | cwd
38 | }
39 |
40 | function handleFile(path: string, isChange = false) {
41 | const extname = internalPath.extname(path)
42 | if (extname === '.scss') {
43 | handleScss(path, scssOptions)
44 | } else if (extname === '.ts') {
45 | handleTs(path, scssOptions.dir)
46 | } else if (isChange && extname === '.wxml') {
47 | const guessScssPath = path.replace('.wxml', '.scss')
48 | const exists = fs.existsSync(guessScssPath)
49 | if (exists) {
50 | handleScss(guessScssPath, scssOptions)
51 | }
52 | copy(path, scssOptions.dir)
53 | } else {
54 | // copy
55 | copy(path, scssOptions.dir)
56 | }
57 | }
58 |
59 | watcher
60 | .on('add', (path) => {
61 | log(`File ${path} has been added`)
62 | preflight(path).then(() => {
63 | handleFile(path)
64 | })
65 | })
66 | .on('change', (path) => {
67 | log(`File ${path} has been change`)
68 | handleFile(path, true)
69 | })
70 | .on('unlink', (path) => log(`File ${path} has been removed`))
71 | .on('error', (error) => log(`Watcher error: ${error}`))
72 | .on('ready', () => {
73 | log('Initial scan complete. Ready for changes')
74 | })
75 |
--------------------------------------------------------------------------------
/examples/native/scripts/clear.ts:
--------------------------------------------------------------------------------
1 | import del from 'del'
2 | ;(async () => {
3 | const deletedFilePaths = await del(['dist'])
4 | console.log(deletedFilePaths)
5 | })()
6 |
--------------------------------------------------------------------------------
/examples/native/scripts/common.ts:
--------------------------------------------------------------------------------
1 | export function removePrefix(p: string) {
2 | return p.replace(/src[\\/]/, '')
3 | }
4 |
--------------------------------------------------------------------------------
/examples/native/scripts/preflight.ts:
--------------------------------------------------------------------------------
1 | import { promises as fsp } from 'fs'
2 | import { removePrefix } from './common'
3 | import { resolve, dirname } from 'path'
4 |
5 | export async function mkdir(outdir: string) {
6 | await fsp.mkdir(outdir, {
7 | recursive: true
8 | })
9 | return true
10 | }
11 |
12 | export function createDefaults() {
13 | return {
14 | cwd: process.cwd(),
15 | outdir: 'dist'
16 | }
17 | }
18 |
19 | export function getDestFileStat(
20 | entryPoint: string,
21 | options = createDefaults()
22 | ) {
23 | const { cwd, outdir } = options
24 | const destPath = resolve(cwd, outdir, removePrefix(entryPoint))
25 | const destDir = dirname(destPath)
26 | return {
27 | path: destPath,
28 | dir: destDir
29 | }
30 | }
31 |
32 | export async function preflight(entryPoint: string) {
33 | const { dir } = getDestFileStat(entryPoint)
34 | return await mkdir(dir)
35 | }
36 |
--------------------------------------------------------------------------------
/examples/native/src/.gitignore:
--------------------------------------------------------------------------------
1 | *.js
2 | *.wxss
--------------------------------------------------------------------------------
/examples/native/src/app.json:
--------------------------------------------------------------------------------
1 | {
2 | "pages": [
3 | "pages/index/index",
4 | "pages/logs/logs"
5 | ],
6 | "window": {
7 | "backgroundTextStyle": "light",
8 | "navigationBarBackgroundColor": "#fff",
9 | "navigationBarTitleText": "Weixin",
10 | "navigationBarTextStyle": "black"
11 | },
12 | "style": "v2",
13 | "sitemapLocation": "sitemap.json"
14 | }
--------------------------------------------------------------------------------
/examples/native/src/app.scss:
--------------------------------------------------------------------------------
1 | @tailwind utilities;
--------------------------------------------------------------------------------
/examples/native/src/app.ts:
--------------------------------------------------------------------------------
1 | // app.ts
2 |
3 | App({
4 | globalData: {},
5 | onLaunch() {
6 | console.log('----------------------')
7 | // 展示本地存储能力
8 | const logs = wx.getStorageSync('logs') || []
9 | logs.unshift(Date.now())
10 | wx.setStorageSync('logs', logs)
11 |
12 | // 登录
13 | wx.login({
14 | success: res => {
15 | console.log(res.code)
16 | // 发送 res.code 到后台换取 openId, sessionKey, unionId
17 | }
18 | })
19 | }
20 | })
21 |
--------------------------------------------------------------------------------
/examples/native/src/pages/index/index.json:
--------------------------------------------------------------------------------
1 | {
2 | "usingComponents": {}
3 | }
--------------------------------------------------------------------------------
/examples/native/src/pages/index/index.scss:
--------------------------------------------------------------------------------
1 | ::placeholder {
2 | color: gray;
3 | }
4 |
5 | .image {
6 | background-image: url(image@1x.png);
7 | }
8 | @media (min-resolution: 2dppx) {
9 | .image {
10 | background-image: url(image@2x.png);
11 | }
12 | }
13 |
14 | .usermotto {
15 | .user-motto {
16 | margin-top: 10rem;
17 | font-size: 2rem;
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/examples/native/src/pages/index/index.ts:
--------------------------------------------------------------------------------
1 | // index.ts
2 | // 获取应用实例
3 | const app = getApp()
4 |
5 | Page({
6 | data: {
7 | motto: 'icebreaker 9',
8 | userInfo: {},
9 | hasUserInfo: false,
10 | canIUse: wx.canIUse('button.open-type.getUserInfo'),
11 | canIUseGetUserProfile: false,
12 | canIUseOpenData:
13 | wx.canIUse('open-data.type.userAvatarUrl') &&
14 | wx.canIUse('open-data.type.userNickName') // 如需尝试获取用户信息可改为false
15 | },
16 | // 事件处理函数
17 | bindViewTap() {
18 | wx.navigateTo({
19 | url: '../logs/logs'
20 | })
21 | },
22 | onLoad() {
23 | // @ts-ignore
24 | if (wx.getUserProfile) {
25 | this.setData({
26 | canIUseGetUserProfile: true
27 | })
28 | }
29 | },
30 | async getUserProfile() {
31 | // 推荐使用wx.getUserProfile获取用户信息,开发者每次通过该接口获取用户个人信息均需用户确认,开发者妥善保管用户快速填写的头像昵称,避免重复弹窗
32 | const res = await wx.getUserProfile({
33 | desc: '展示用户信息' // 声明获取用户个人信息后的用途,后续会展示在弹窗中,请谨慎填写
34 | })
35 | console.log(res)
36 | this.setData({
37 | userInfo: res.userInfo,
38 | hasUserInfo: true
39 | })
40 | },
41 | getUserInfo(e: any) {
42 | // 不推荐使用getUserInfo获取用户信息,预计自2021年4月13日起,getUserInfo将不再弹出弹窗,并直接返回匿名的用户个人信息
43 | console.log(e)
44 | this.setData({
45 | userInfo: e.detail.userInfo,
46 | hasUserInfo: true
47 | })
48 | }
49 | })
50 |
--------------------------------------------------------------------------------
/examples/native/src/pages/index/index.wxml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
15 | 请使用1.4.4及以上版本基础库
16 |
17 |
18 |
19 | {{userInfo.nickName}}
20 |
21 |
22 |
23 | {{motto}}
24 |
25 |
26 |
27 |
28 |
29 | zxcvbnm,./asdfghjkl;'qwertyuiop[]\1234567890-=?:{}|`~!@#$%^&*()_+>
30 |
31 | zxcvbnm asdfghjkl qwertyuiop 1234567890- _
32 |
33 |
--------------------------------------------------------------------------------
/examples/native/src/pages/logs/logs.json:
--------------------------------------------------------------------------------
1 | {
2 | "navigationBarTitleText": "查看启动日志",
3 | "usingComponents": {}
4 | }
--------------------------------------------------------------------------------
/examples/native/src/pages/logs/logs.scss:
--------------------------------------------------------------------------------
1 | .log-list {
2 | display: flex;
3 | flex-direction: column;
4 | padding: 40rpx;
5 | .log-item {
6 | margin: 10rpx;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/examples/native/src/pages/logs/logs.ts:
--------------------------------------------------------------------------------
1 | // logs.ts
2 | // const util = require('../../utils/util.js')
3 | import { formatTime } from '../../utils/util.js'
4 |
5 | Page({
6 | data: {
7 | logs: []
8 | },
9 | onLoad() {
10 | this.setData({
11 | logs: (wx.getStorageSync('logs') || []).map((log: string) => {
12 | return {
13 | date: formatTime(new Date(log)),
14 | timeStamp: log
15 | }
16 | })
17 | })
18 | }
19 | })
20 |
--------------------------------------------------------------------------------
/examples/native/src/pages/logs/logs.wxml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | {{index + 1}}. {{log.date}}
5 |
6 |
7 |
--------------------------------------------------------------------------------
/examples/native/src/sitemap.json:
--------------------------------------------------------------------------------
1 | {
2 | "desc": "关于本文件的更多信息,请参考文档 https://developers.weixin.qq.com/miniprogram/dev/framework/sitemap.html",
3 | "rules": [{
4 | "action": "allow",
5 | "page": "*"
6 | }]
7 | }
--------------------------------------------------------------------------------
/examples/native/src/utils/util.ts:
--------------------------------------------------------------------------------
1 | export const formatTime = (date: Date) => {
2 | const year = date.getFullYear()
3 | const month = date.getMonth() + 1
4 | const day = date.getDate()
5 | const hour = date.getHours()
6 | const minute = date.getMinutes()
7 | const second = date.getSeconds()
8 |
9 | return (
10 | [year, month, day].map(formatNumber).join('/') +
11 | ' ' +
12 | [hour, minute, second].map(formatNumber).join(':')
13 | )
14 | }
15 |
16 | const formatNumber = (n: number) => {
17 | const s = n.toString()
18 | return s[1] ? s : '0' + s
19 | }
20 |
--------------------------------------------------------------------------------
/examples/native/tailwind.config.js:
--------------------------------------------------------------------------------
1 | const { createPreset } = require('tailwindcss-miniprogram-preset')
2 |
3 | /** @type {import('@types/tailwindcss/tailwind-config').TailwindConfig} */
4 | module.exports = {
5 | // purge: [],
6 | // darkMode: false, // or 'media' or 'class'
7 | // theme: {
8 | // extend: {},
9 | // },
10 | // variants: {
11 | // extend: {},
12 | // },
13 | // plugins: [],
14 | purge: {
15 | // enabled: true,
16 | content: ['**/*.wxml']
17 | // css: ['**/*.wxss']
18 | },
19 | presets: [
20 | createPreset({
21 | rem2rpx: false
22 | })
23 | // defaultPreset
24 | ]
25 | }
26 |
--------------------------------------------------------------------------------
/examples/native/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "strictNullChecks": true,
4 | "noImplicitAny": true,
5 | "module": "CommonJS",
6 | "target": "ES5",
7 | "allowJs": true,
8 | "experimentalDecorators": true,
9 | "noImplicitThis": true,
10 | "noImplicitReturns": true,
11 | "alwaysStrict": true,
12 | "inlineSourceMap": true,
13 | "inlineSources": true,
14 | "noFallthroughCasesInSwitch": true,
15 | "esModuleInterop": true,
16 | "moduleResolution": "Node",
17 | "noUnusedLocals": true,
18 | "noUnusedParameters": true,
19 | "strict": true,
20 | "removeComments": true,
21 | "pretty": true,
22 | "strictPropertyInitialization": true,
23 | "lib": ["es6"],
24 | "allowSyntheticDefaultImports": true,
25 | "baseUrl": ".",
26 | "paths": {
27 | "@/*": ["src/*"]
28 | }
29 | },
30 | "include": ["./**/*.ts", "scripts/**/*"],
31 | "exclude": ["node_modules"]
32 | }
33 |
--------------------------------------------------------------------------------
/examples/native/vscode-tailwindcss-intellisense.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sonofmagic/tailwindcss-miniprogram-preset/f4af2ace2ebf98dc3863190850a6fb89d4340d9c/examples/native/vscode-tailwindcss-intellisense.png
--------------------------------------------------------------------------------
/examples/native/yarn.lock:
--------------------------------------------------------------------------------
1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
2 | # yarn lockfile v1
3 |
4 |
5 | "@babel/code-frame@7.12.11":
6 | version "7.12.11"
7 | resolved "https://registry.npmmirror.com/@babel/code-frame/download/@babel/code-frame-7.12.11.tgz#f4ad435aa263db935b8f10f2c552d23fb716a63f"
8 | integrity sha1-9K1DWqJj25NbjxDyxVLSP7cWpj8=
9 | dependencies:
10 | "@babel/highlight" "^7.10.4"
11 |
12 | "@babel/code-frame@^7.0.0":
13 | version "7.16.0"
14 | resolved "https://registry.npmmirror.com/@babel/code-frame/download/@babel/code-frame-7.16.0.tgz#0dfc80309beec8411e65e706461c408b0bb9b431"
15 | integrity sha1-DfyAMJvuyEEeZecGRhxAiwu5tDE=
16 | dependencies:
17 | "@babel/highlight" "^7.16.0"
18 |
19 | "@babel/helper-validator-identifier@^7.15.7":
20 | version "7.15.7"
21 | resolved "https://registry.nlark.com/@babel/helper-validator-identifier/download/@babel/helper-validator-identifier-7.15.7.tgz?cache=0&sync_timestamp=1631920110587&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40babel%2Fhelper-validator-identifier%2Fdownload%2F%40babel%2Fhelper-validator-identifier-7.15.7.tgz#220df993bfe904a4a6b02ab4f3385a5ebf6e2389"
22 | integrity sha1-Ig35k7/pBKSmsCq08zhaXr9uI4k=
23 |
24 | "@babel/highlight@^7.10.4", "@babel/highlight@^7.16.0":
25 | version "7.16.0"
26 | resolved "https://registry.npmmirror.com/@babel/highlight/download/@babel/highlight-7.16.0.tgz#6ceb32b2ca4b8f5f361fb7fd821e3fddf4a1725a"
27 | integrity sha1-bOsysspLj182H7f9gh4/3fShclo=
28 | dependencies:
29 | "@babel/helper-validator-identifier" "^7.15.7"
30 | chalk "^2.0.0"
31 | js-tokens "^4.0.0"
32 |
33 | "@cspotcode/source-map-consumer@0.8.0":
34 | version "0.8.0"
35 | resolved "https://registry.npmmirror.com/@cspotcode/source-map-consumer/download/@cspotcode/source-map-consumer-0.8.0.tgz#33bf4b7b39c178821606f669bbc447a6a629786b"
36 | integrity sha1-M79LeznBeIIWBvZpu8RHpqYpeGs=
37 |
38 | "@cspotcode/source-map-support@0.7.0":
39 | version "0.7.0"
40 | resolved "https://registry.npmmirror.com/@cspotcode/source-map-support/download/@cspotcode/source-map-support-0.7.0.tgz#4789840aa859e46d2f3173727ab707c66bf344f5"
41 | integrity sha1-R4mECqhZ5G0vMXNyercHxmvzRPU=
42 | dependencies:
43 | "@cspotcode/source-map-consumer" "0.8.0"
44 |
45 | "@eslint/eslintrc@^0.4.3":
46 | version "0.4.3"
47 | resolved "https://registry.npmmirror.com/@eslint/eslintrc/download/@eslint/eslintrc-0.4.3.tgz#9e42981ef035beb3dd49add17acb96e8ff6f394c"
48 | integrity sha1-nkKYHvA1vrPdSa3ResuW6P9vOUw=
49 | dependencies:
50 | ajv "^6.12.4"
51 | debug "^4.1.1"
52 | espree "^7.3.0"
53 | globals "^13.9.0"
54 | ignore "^4.0.6"
55 | import-fresh "^3.2.1"
56 | js-yaml "^3.13.1"
57 | minimatch "^3.0.4"
58 | strip-json-comments "^3.1.1"
59 |
60 | "@humanwhocodes/config-array@^0.5.0":
61 | version "0.5.0"
62 | resolved "https://registry.npmmirror.com/@humanwhocodes/config-array/download/@humanwhocodes/config-array-0.5.0.tgz#1407967d4c6eecd7388f83acf1eaf4d0c6e58ef9"
63 | integrity sha1-FAeWfUxu7Nc4j4Os8er00Mbljvk=
64 | dependencies:
65 | "@humanwhocodes/object-schema" "^1.2.0"
66 | debug "^4.1.1"
67 | minimatch "^3.0.4"
68 |
69 | "@humanwhocodes/object-schema@^1.2.0":
70 | version "1.2.1"
71 | resolved "https://registry.npmmirror.com/@humanwhocodes/object-schema/download/@humanwhocodes/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45"
72 | integrity sha1-tSBSnsIdjllFoYUd/Rwy6U45/0U=
73 |
74 | "@nodelib/fs.scandir@2.1.5":
75 | version "2.1.5"
76 | resolved "https://registry.nlark.com/@nodelib/fs.scandir/download/@nodelib/fs.scandir-2.1.5.tgz?cache=0&sync_timestamp=1622792718463&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40nodelib%2Ffs.scandir%2Fdownload%2F%40nodelib%2Ffs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5"
77 | integrity sha1-dhnC6yGyVIP20WdUi0z9WnSIw9U=
78 | dependencies:
79 | "@nodelib/fs.stat" "2.0.5"
80 | run-parallel "^1.1.9"
81 |
82 | "@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2":
83 | version "2.0.5"
84 | resolved "https://registry.nlark.com/@nodelib/fs.stat/download/@nodelib/fs.stat-2.0.5.tgz?cache=0&sync_timestamp=1622792655362&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40nodelib%2Ffs.stat%2Fdownload%2F%40nodelib%2Ffs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b"
85 | integrity sha1-W9Jir5Tp0lvR5xsF3u1Eh2oiLos=
86 |
87 | "@nodelib/fs.walk@^1.2.3":
88 | version "1.2.8"
89 | resolved "https://registry.nlark.com/@nodelib/fs.walk/download/@nodelib/fs.walk-1.2.8.tgz?cache=0&sync_timestamp=1625770050780&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40nodelib%2Ffs.walk%2Fdownload%2F%40nodelib%2Ffs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a"
90 | integrity sha1-6Vc36LtnRt3t9pxVaVNJTxlv5po=
91 | dependencies:
92 | "@nodelib/fs.scandir" "2.1.5"
93 | fastq "^1.6.0"
94 |
95 | "@tsconfig/node10@^1.0.7":
96 | version "1.0.8"
97 | resolved "https://registry.npmmirror.com/@tsconfig/node10/download/@tsconfig/node10-1.0.8.tgz#c1e4e80d6f964fbecb3359c43bd48b40f7cadad9"
98 | integrity sha1-weToDW+WT77LM1nEO9SLQPfK2tk=
99 |
100 | "@tsconfig/node12@^1.0.7":
101 | version "1.0.9"
102 | resolved "https://registry.nlark.com/@tsconfig/node12/download/@tsconfig/node12-1.0.9.tgz#62c1f6dee2ebd9aead80dc3afa56810e58e1a04c"
103 | integrity sha1-YsH23uLr2a6tgNw6+laBDljhoEw=
104 |
105 | "@tsconfig/node14@^1.0.0":
106 | version "1.0.1"
107 | resolved "https://registry.nlark.com/@tsconfig/node14/download/@tsconfig/node14-1.0.1.tgz?cache=0&sync_timestamp=1623230113946&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40tsconfig%2Fnode14%2Fdownload%2F%40tsconfig%2Fnode14-1.0.1.tgz#95f2d167ffb9b8d2068b0b235302fafd4df711f2"
108 | integrity sha1-lfLRZ/+5uNIGiwsjUwL6/U33EfI=
109 |
110 | "@tsconfig/node16@^1.0.2":
111 | version "1.0.2"
112 | resolved "https://registry.nlark.com/@tsconfig/node16/download/@tsconfig/node16-1.0.2.tgz?cache=0&sync_timestamp=1626840702633&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40tsconfig%2Fnode16%2Fdownload%2F%40tsconfig%2Fnode16-1.0.2.tgz#423c77877d0569db20e1fc80885ac4118314010e"
113 | integrity sha1-Qjx3h30Fadsg4fyAiFrEEYMUAQ4=
114 |
115 | "@types/json-schema@^7.0.9":
116 | version "7.0.9"
117 | resolved "https://registry.npmmirror.com/@types/json-schema/download/@types/json-schema-7.0.9.tgz?cache=0&sync_timestamp=1637265456183&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40types%2Fjson-schema%2Fdownload%2F%40types%2Fjson-schema-7.0.9.tgz#97edc9037ea0c38585320b28964dde3b39e4660d"
118 | integrity sha1-l+3JA36gw4WFMgsolk3eOznkZg0=
119 |
120 | "@types/json5@^0.0.29":
121 | version "0.0.29"
122 | resolved "https://registry.nlark.com/@types/json5/download/@types/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee"
123 | integrity sha1-7ihweulOEdK4J7y+UnC86n8+ce4=
124 |
125 | "@types/node@*":
126 | version "16.11.11"
127 | resolved "https://registry.npmmirror.com/@types/node/download/@types/node-16.11.11.tgz#6ea7342dfb379ea1210835bada87b3c512120234"
128 | integrity sha512-KB0sixD67CeecHC33MYn+eYARkqTheIRNuu97y2XMjR7Wu3XibO1vaY6VBV6O/a89SPI81cEUIYT87UqUWlZNw==
129 |
130 | "@types/parse-json@^4.0.0":
131 | version "4.0.0"
132 | resolved "https://registry.npmmirror.com/@types/parse-json/download/@types/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0"
133 | integrity sha1-L4u0QUNNFjs1+4/9zNcTiSf/uMA=
134 |
135 | "@types/sass@^1.43.1":
136 | version "1.43.1"
137 | resolved "https://registry.npmmirror.com/@types/sass/download/@types/sass-1.43.1.tgz#86bb0168e9e881d7dade6eba16c9ed6d25dc2f68"
138 | integrity sha512-BPdoIt1lfJ6B7rw35ncdwBZrAssjcwzI5LByIrYs+tpXlj/CAkuVdRsgZDdP4lq5EjyWzwxZCqAoFyHKFwp32g==
139 | dependencies:
140 | "@types/node" "*"
141 |
142 | "@types/tailwindcss@^2.2.4":
143 | version "2.2.4"
144 | resolved "https://registry.npmmirror.com/@types/tailwindcss/download/@types/tailwindcss-2.2.4.tgz#c3bca7d265e608ffc50a6d1a4932b5b53be14553"
145 | integrity sha1-w7yn0mXmCP/FCm0aSTK1tTvhRVM=
146 |
147 | "@types/wechat-miniprogram@^3.4.0":
148 | version "3.4.0"
149 | resolved "https://registry.npmmirror.com/@types/wechat-miniprogram/download/@types/wechat-miniprogram-3.4.0.tgz#d743d5b3c17bd531c2c178ea1fe9d92a0b23bcd0"
150 | integrity sha1-10PVs8F71THCwXjqH+nZKgsjvNA=
151 |
152 | "@typescript-eslint/eslint-plugin@^5.5.0":
153 | version "5.5.0"
154 | resolved "https://registry.npmmirror.com/@typescript-eslint/eslint-plugin/download/@typescript-eslint/eslint-plugin-5.5.0.tgz#12d5f47f127af089b985f3a205c0e34a812f8fce"
155 | integrity sha512-4bV6fulqbuaO9UMXU0Ia0o6z6if+kmMRW8rMRyfqXj/eGrZZRGedS4n0adeGNnjr8LKAM495hrQ7Tea52UWmQA==
156 | dependencies:
157 | "@typescript-eslint/experimental-utils" "5.5.0"
158 | "@typescript-eslint/scope-manager" "5.5.0"
159 | debug "^4.3.2"
160 | functional-red-black-tree "^1.0.1"
161 | ignore "^5.1.8"
162 | regexpp "^3.2.0"
163 | semver "^7.3.5"
164 | tsutils "^3.21.0"
165 |
166 | "@typescript-eslint/experimental-utils@5.5.0":
167 | version "5.5.0"
168 | resolved "https://registry.npmmirror.com/@typescript-eslint/experimental-utils/download/@typescript-eslint/experimental-utils-5.5.0.tgz#3fe2514dc2f3cd95562206e4058435ea51df609e"
169 | integrity sha512-kjWeeVU+4lQ1SLYErRKV5yDXbWDPkpbzTUUlfAUifPYvpX0qZlrcCZ96/6oWxt3QxtK5WVhXz+KsnwW9cIW+3A==
170 | dependencies:
171 | "@types/json-schema" "^7.0.9"
172 | "@typescript-eslint/scope-manager" "5.5.0"
173 | "@typescript-eslint/types" "5.5.0"
174 | "@typescript-eslint/typescript-estree" "5.5.0"
175 | eslint-scope "^5.1.1"
176 | eslint-utils "^3.0.0"
177 |
178 | "@typescript-eslint/parser@^5.5.0":
179 | version "5.5.0"
180 | resolved "https://registry.npmmirror.com/@typescript-eslint/parser/download/@typescript-eslint/parser-5.5.0.tgz#a38070e225330b771074daa659118238793f7fcd"
181 | integrity sha512-JsXBU+kgQOAgzUn2jPrLA+Rd0Y1dswOlX3hp8MuRO1hQDs6xgHtbCXEiAu7bz5hyVURxbXcA2draasMbNqrhmg==
182 | dependencies:
183 | "@typescript-eslint/scope-manager" "5.5.0"
184 | "@typescript-eslint/types" "5.5.0"
185 | "@typescript-eslint/typescript-estree" "5.5.0"
186 | debug "^4.3.2"
187 |
188 | "@typescript-eslint/scope-manager@5.5.0":
189 | version "5.5.0"
190 | resolved "https://registry.npmmirror.com/@typescript-eslint/scope-manager/download/@typescript-eslint/scope-manager-5.5.0.tgz#2b9f3672fa6cddcb4160e7e8b49ef1fd00f83c09"
191 | integrity sha512-0/r656RmRLo7CbN4Mdd+xZyPJ/fPCKhYdU6mnZx+8msAD8nJSP8EyCFkzbd6vNVZzZvWlMYrSNekqGrCBqFQhg==
192 | dependencies:
193 | "@typescript-eslint/types" "5.5.0"
194 | "@typescript-eslint/visitor-keys" "5.5.0"
195 |
196 | "@typescript-eslint/types@5.5.0":
197 | version "5.5.0"
198 | resolved "https://registry.npmmirror.com/@typescript-eslint/types/download/@typescript-eslint/types-5.5.0.tgz#fee61ae510e84ed950a53937a2b443e078107003"
199 | integrity sha512-OaYTqkW3GnuHxqsxxJ6KypIKd5Uw7bFiQJZRyNi1jbMJnK3Hc/DR4KwB6KJj6PBRkJJoaNwzMNv9vtTk87JhOg==
200 |
201 | "@typescript-eslint/typescript-estree@5.5.0":
202 | version "5.5.0"
203 | resolved "https://registry.npmmirror.com/@typescript-eslint/typescript-estree/download/@typescript-eslint/typescript-estree-5.5.0.tgz#12f422698c1636bd0206086bbec9844c54625ebc"
204 | integrity sha512-pVn8btYUiYrjonhMAO0yG8lm7RApzy2L4RC7Td/mC/qFkyf6vRbGyZozoA94+w6D2Y2GRqpMoCWcwx/EUOzyoQ==
205 | dependencies:
206 | "@typescript-eslint/types" "5.5.0"
207 | "@typescript-eslint/visitor-keys" "5.5.0"
208 | debug "^4.3.2"
209 | globby "^11.0.4"
210 | is-glob "^4.0.3"
211 | semver "^7.3.5"
212 | tsutils "^3.21.0"
213 |
214 | "@typescript-eslint/visitor-keys@5.5.0":
215 | version "5.5.0"
216 | resolved "https://registry.npmmirror.com/@typescript-eslint/visitor-keys/download/@typescript-eslint/visitor-keys-5.5.0.tgz#4787586897b61f26068a3db5c50b3f5d254f9083"
217 | integrity sha512-4GzJ1kRtsWzHhdM40tv0ZKHNSbkDhF0Woi/TDwVJX6UICwJItvP7ZTXbjTkCdrors7ww0sYe0t+cIKDAJwZ7Kw==
218 | dependencies:
219 | "@typescript-eslint/types" "5.5.0"
220 | eslint-visitor-keys "^3.0.0"
221 |
222 | acorn-jsx@^5.3.1:
223 | version "5.3.2"
224 | resolved "https://registry.nlark.com/acorn-jsx/download/acorn-jsx-5.3.2.tgz?cache=0&sync_timestamp=1625793240297&other_urls=https%3A%2F%2Fregistry.nlark.com%2Facorn-jsx%2Fdownload%2Facorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937"
225 | integrity sha1-ftW7VZCLOy8bxVxq8WU7rafweTc=
226 |
227 | acorn-node@^1.6.1:
228 | version "1.8.2"
229 | resolved "https://registry.npm.taobao.org/acorn-node/download/acorn-node-1.8.2.tgz#114c95d64539e53dede23de8b9d96df7c7ae2af8"
230 | integrity sha1-EUyV1kU55T3t4j3oudlt98euKvg=
231 | dependencies:
232 | acorn "^7.0.0"
233 | acorn-walk "^7.0.0"
234 | xtend "^4.0.2"
235 |
236 | acorn-walk@^7.0.0:
237 | version "7.2.0"
238 | resolved "https://registry.nlark.com/acorn-walk/download/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc"
239 | integrity sha1-DeiJpgEgOQmw++B7iTjcIdLpZ7w=
240 |
241 | acorn-walk@^8.1.1:
242 | version "8.2.0"
243 | resolved "https://registry.nlark.com/acorn-walk/download/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1"
244 | integrity sha1-dBIQ8uJCZFRQiFOi9E0KuDt/acE=
245 |
246 | acorn@^7.0.0, acorn@^7.4.0:
247 | version "7.4.1"
248 | resolved "https://registry.npmmirror.com/acorn/download/acorn-7.4.1.tgz?cache=0&sync_timestamp=1637225522161&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Facorn%2Fdownload%2Facorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa"
249 | integrity sha1-/q7SVZc9LndVW4PbwIhRpsY1IPo=
250 |
251 | acorn@^8.4.1:
252 | version "8.6.0"
253 | resolved "https://registry.npmmirror.com/acorn/download/acorn-8.6.0.tgz?cache=0&sync_timestamp=1637225522161&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Facorn%2Fdownload%2Facorn-8.6.0.tgz#e3692ba0eb1a0c83eaa4f37f5fa7368dd7142895"
254 | integrity sha512-U1riIR+lBSNi3IbxtaHOIKdH8sLFv3NYfNv8sg7ZsNhcfl4HF2++BfqqrNAxoCLQW1iiylOj76ecnaUxz+z9yw==
255 |
256 | aggregate-error@^3.0.0:
257 | version "3.1.0"
258 | resolved "https://registry.nlark.com/aggregate-error/download/aggregate-error-3.1.0.tgz?cache=0&sync_timestamp=1622604530325&other_urls=https%3A%2F%2Fregistry.nlark.com%2Faggregate-error%2Fdownload%2Faggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a"
259 | integrity sha1-kmcP9Q9TWb23o+DUDQ7DDFc3aHo=
260 | dependencies:
261 | clean-stack "^2.0.0"
262 | indent-string "^4.0.0"
263 |
264 | ajv@^6.10.0, ajv@^6.12.4:
265 | version "6.12.6"
266 | resolved "https://registry.npmmirror.com/ajv/download/ajv-6.12.6.tgz?cache=0&sync_timestamp=1637523362507&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fajv%2Fdownload%2Fajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4"
267 | integrity sha1-uvWmLoArB9l3A0WG+MO69a3ybfQ=
268 | dependencies:
269 | fast-deep-equal "^3.1.1"
270 | fast-json-stable-stringify "^2.0.0"
271 | json-schema-traverse "^0.4.1"
272 | uri-js "^4.2.2"
273 |
274 | ajv@^8.0.1:
275 | version "8.8.2"
276 | resolved "https://registry.npmmirror.com/ajv/download/ajv-8.8.2.tgz?cache=0&sync_timestamp=1637523362507&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fajv%2Fdownload%2Fajv-8.8.2.tgz#01b4fef2007a28bf75f0b7fc009f62679de4abbb"
277 | integrity sha512-x9VuX+R/jcFj1DHo/fCp99esgGDWiHENrKxaCENuCxpoMCmAt/COCGVDwA7kleEpEzJjDnvh3yGoOuLu0Dtllw==
278 | dependencies:
279 | fast-deep-equal "^3.1.1"
280 | json-schema-traverse "^1.0.0"
281 | require-from-string "^2.0.2"
282 | uri-js "^4.2.2"
283 |
284 | ansi-colors@^4.1.1:
285 | version "4.1.1"
286 | resolved "https://registry.nlark.com/ansi-colors/download/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348"
287 | integrity sha1-y7muJWv3UK8eqzRPIpqif+lLo0g=
288 |
289 | ansi-regex@^5.0.1:
290 | version "5.0.1"
291 | resolved "https://registry.nlark.com/ansi-regex/download/ansi-regex-5.0.1.tgz?cache=0&sync_timestamp=1631634988487&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fansi-regex%2Fdownload%2Fansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304"
292 | integrity sha1-CCyyyJyf6GWaMRpTvWpNxTAdswQ=
293 |
294 | ansi-styles@^3.2.1:
295 | version "3.2.1"
296 | resolved "https://registry.nlark.com/ansi-styles/download/ansi-styles-3.2.1.tgz?cache=0&sync_timestamp=1618995547052&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fansi-styles%2Fdownload%2Fansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d"
297 | integrity sha1-QfuyAkPlCxK+DwS43tvwdSDOhB0=
298 | dependencies:
299 | color-convert "^1.9.0"
300 |
301 | ansi-styles@^4.0.0, ansi-styles@^4.1.0:
302 | version "4.3.0"
303 | resolved "https://registry.nlark.com/ansi-styles/download/ansi-styles-4.3.0.tgz?cache=0&sync_timestamp=1618995547052&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fansi-styles%2Fdownload%2Fansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937"
304 | integrity sha1-7dgDYornHATIWuegkG7a00tkiTc=
305 | dependencies:
306 | color-convert "^2.0.1"
307 |
308 | anymatch@^3.1.2, anymatch@~3.1.2:
309 | version "3.1.2"
310 | resolved "https://registry.nlark.com/anymatch/download/anymatch-3.1.2.tgz#c0557c096af32f106198f4f4e2a383537e378716"
311 | integrity sha1-wFV8CWrzLxBhmPT04qODU343hxY=
312 | dependencies:
313 | normalize-path "^3.0.0"
314 | picomatch "^2.0.4"
315 |
316 | arg@^4.1.0:
317 | version "4.1.3"
318 | resolved "https://registry.nlark.com/arg/download/arg-4.1.3.tgz?cache=0&sync_timestamp=1629166537485&other_urls=https%3A%2F%2Fregistry.nlark.com%2Farg%2Fdownload%2Farg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089"
319 | integrity sha1-Jp/HrVuOQstjyJbVZmAXJhwUQIk=
320 |
321 | arg@^5.0.1:
322 | version "5.0.1"
323 | resolved "https://registry.nlark.com/arg/download/arg-5.0.1.tgz?cache=0&sync_timestamp=1629166537485&other_urls=https%3A%2F%2Fregistry.nlark.com%2Farg%2Fdownload%2Farg-5.0.1.tgz#eb0c9a8f77786cad2af8ff2b862899842d7b6adb"
324 | integrity sha1-6wyaj3d4bK0q+P8rhiiZhC17ats=
325 |
326 | argparse@^1.0.7:
327 | version "1.0.10"
328 | resolved "https://registry.nlark.com/argparse/download/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911"
329 | integrity sha1-vNZ5HqWuCXJeF+WtmIE0zUCz2RE=
330 | dependencies:
331 | sprintf-js "~1.0.2"
332 |
333 | array-includes@^3.1.4:
334 | version "3.1.4"
335 | resolved "https://registry.npmmirror.com/array-includes/download/array-includes-3.1.4.tgz#f5b493162c760f3539631f005ba2bb46acb45ba9"
336 | integrity sha1-9bSTFix2DzU5Yx8AW6K7Rqy0W6k=
337 | dependencies:
338 | call-bind "^1.0.2"
339 | define-properties "^1.1.3"
340 | es-abstract "^1.19.1"
341 | get-intrinsic "^1.1.1"
342 | is-string "^1.0.7"
343 |
344 | array-union@^2.1.0:
345 | version "2.1.0"
346 | resolved "https://registry.nlark.com/array-union/download/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d"
347 | integrity sha1-t5hCCtvrHego2ErNii4j0+/oXo0=
348 |
349 | array.prototype.flat@^1.2.5:
350 | version "1.2.5"
351 | resolved "https://registry.npmmirror.com/array.prototype.flat/download/array.prototype.flat-1.2.5.tgz?cache=0&sync_timestamp=1633109609894&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Farray.prototype.flat%2Fdownload%2Farray.prototype.flat-1.2.5.tgz#07e0975d84bbc7c48cd1879d609e682598d33e13"
352 | integrity sha1-B+CXXYS7x8SM0YedYJ5oJZjTPhM=
353 | dependencies:
354 | call-bind "^1.0.2"
355 | define-properties "^1.1.3"
356 | es-abstract "^1.19.0"
357 |
358 | astral-regex@^2.0.0:
359 | version "2.0.0"
360 | resolved "https://registry.nlark.com/astral-regex/download/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31"
361 | integrity sha1-SDFDxWeu7UeFdZwIZXhtx319LjE=
362 |
363 | autoprefixer@^10.4.0:
364 | version "10.4.0"
365 | resolved "https://registry.npmmirror.com/autoprefixer/download/autoprefixer-10.4.0.tgz?cache=0&sync_timestamp=1635421245353&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fautoprefixer%2Fdownload%2Fautoprefixer-10.4.0.tgz#c3577eb32a1079a440ec253e404eaf1eb21388c8"
366 | integrity sha1-w1d+syoQeaRA7CU+QE6vHrITiMg=
367 | dependencies:
368 | browserslist "^4.17.5"
369 | caniuse-lite "^1.0.30001272"
370 | fraction.js "^4.1.1"
371 | normalize-range "^0.1.2"
372 | picocolors "^1.0.0"
373 | postcss-value-parser "^4.1.0"
374 |
375 | balanced-match@^1.0.0:
376 | version "1.0.2"
377 | resolved "https://registry.npm.taobao.org/balanced-match/download/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee"
378 | integrity sha1-6D46fj8wCzTLnYf2FfoMvzV2kO4=
379 |
380 | binary-extensions@^2.0.0:
381 | version "2.2.0"
382 | resolved "https://registry.npm.taobao.org/binary-extensions/download/binary-extensions-2.2.0.tgz?cache=0&sync_timestamp=1610299293319&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbinary-extensions%2Fdownload%2Fbinary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d"
383 | integrity sha1-dfUC7q+f/eQvyYgpZFvk6na9ni0=
384 |
385 | brace-expansion@^1.1.7:
386 | version "1.1.11"
387 | resolved "https://registry.npm.taobao.org/brace-expansion/download/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd"
388 | integrity sha1-PH/L9SnYcibz0vUrlm/1Jx60Qd0=
389 | dependencies:
390 | balanced-match "^1.0.0"
391 | concat-map "0.0.1"
392 |
393 | braces@^3.0.1, braces@~3.0.2:
394 | version "3.0.2"
395 | resolved "https://registry.npm.taobao.org/braces/download/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107"
396 | integrity sha1-NFThpGLujVmeI23zNs2epPiv4Qc=
397 | dependencies:
398 | fill-range "^7.0.1"
399 |
400 | browserslist@^4.17.5:
401 | version "4.18.1"
402 | resolved "https://registry.npmmirror.com/browserslist/download/browserslist-4.18.1.tgz?cache=0&sync_timestamp=1636994462878&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fbrowserslist%2Fdownload%2Fbrowserslist-4.18.1.tgz#60d3920f25b6860eb917c6c7b185576f4d8b017f"
403 | integrity sha512-8ScCzdpPwR2wQh8IT82CA2VgDwjHyqMovPBZSNH54+tm4Jk2pCuv90gmAdH6J84OCRWi0b4gMe6O6XPXuJnjgQ==
404 | dependencies:
405 | caniuse-lite "^1.0.30001280"
406 | electron-to-chromium "^1.3.896"
407 | escalade "^3.1.1"
408 | node-releases "^2.0.1"
409 | picocolors "^1.0.0"
410 |
411 | bytes@^3.0.0:
412 | version "3.1.1"
413 | resolved "https://registry.npmmirror.com/bytes/download/bytes-3.1.1.tgz?cache=0&sync_timestamp=1637015259458&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fbytes%2Fdownload%2Fbytes-3.1.1.tgz#3f018291cb4cbad9accb6e6970bca9c8889e879a"
414 | integrity sha512-dWe4nWO/ruEOY7HkUJ5gFt1DCFV9zPRoJr8pV0/ASQermOZjtq8jMjOprC0Kd10GLN+l7xaUPvxzJFWtxGu8Fg==
415 |
416 | call-bind@^1.0.0, call-bind@^1.0.2:
417 | version "1.0.2"
418 | resolved "https://registry.nlark.com/call-bind/download/call-bind-1.0.2.tgz?cache=0&sync_timestamp=1622604538146&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fcall-bind%2Fdownload%2Fcall-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c"
419 | integrity sha1-sdTonmiBGcPJqQOtMKuy9qkZvjw=
420 | dependencies:
421 | function-bind "^1.1.1"
422 | get-intrinsic "^1.0.2"
423 |
424 | callsites@^3.0.0:
425 | version "3.1.0"
426 | resolved "https://registry.nlark.com/callsites/download/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73"
427 | integrity sha1-s2MKvYlDQy9Us/BRkjjjPNffL3M=
428 |
429 | camelcase-css@^2.0.1:
430 | version "2.0.1"
431 | resolved "https://registry.npm.taobao.org/camelcase-css/download/camelcase-css-2.0.1.tgz#ee978f6947914cc30c6b44741b6ed1df7f043fd5"
432 | integrity sha1-7pePaUeRTMMMa0R0G27R338EP9U=
433 |
434 | caniuse-lite@^1.0.30001272, caniuse-lite@^1.0.30001280:
435 | version "1.0.30001282"
436 | resolved "https://registry.npmmirror.com/caniuse-lite/download/caniuse-lite-1.0.30001282.tgz?cache=0&sync_timestamp=1637135357719&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fcaniuse-lite%2Fdownload%2Fcaniuse-lite-1.0.30001282.tgz#38c781ee0a90ccfe1fe7fefd00e43f5ffdcb96fd"
437 | integrity sha512-YhF/hG6nqBEllymSIjLtR2iWDDnChvhnVJqp+vloyt2tEHFG1yBR+ac2B/rOw0qOK0m0lEXU2dv4E/sMk5P9Kg==
438 |
439 | chalk@^2.0.0:
440 | version "2.4.2"
441 | resolved "https://registry.nlark.com/chalk/download/chalk-2.4.2.tgz?cache=0&sync_timestamp=1627646697260&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fchalk%2Fdownload%2Fchalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424"
442 | integrity sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=
443 | dependencies:
444 | ansi-styles "^3.2.1"
445 | escape-string-regexp "^1.0.5"
446 | supports-color "^5.3.0"
447 |
448 | chalk@^4.0.0, chalk@^4.1.2:
449 | version "4.1.2"
450 | resolved "https://registry.nlark.com/chalk/download/chalk-4.1.2.tgz?cache=0&sync_timestamp=1627646697260&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fchalk%2Fdownload%2Fchalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01"
451 | integrity sha1-qsTit3NKdAhnrrFr8CqtVWoeegE=
452 | dependencies:
453 | ansi-styles "^4.1.0"
454 | supports-color "^7.1.0"
455 |
456 | "chokidar@>=3.0.0 <4.0.0", chokidar@^3.5.2:
457 | version "3.5.2"
458 | resolved "https://registry.npmmirror.com/chokidar/download/chokidar-3.5.2.tgz#dba3976fcadb016f66fd365021d91600d01c1e75"
459 | integrity sha1-26OXb8rbAW9m/TZQIdkWANAcHnU=
460 | dependencies:
461 | anymatch "~3.1.2"
462 | braces "~3.0.2"
463 | glob-parent "~5.1.2"
464 | is-binary-path "~2.1.0"
465 | is-glob "~4.0.1"
466 | normalize-path "~3.0.0"
467 | readdirp "~3.6.0"
468 | optionalDependencies:
469 | fsevents "~2.3.2"
470 |
471 | clean-stack@^2.0.0:
472 | version "2.2.0"
473 | resolved "https://registry.nlark.com/clean-stack/download/clean-stack-2.2.0.tgz?cache=0&sync_timestamp=1622605328444&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fclean-stack%2Fdownload%2Fclean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b"
474 | integrity sha1-7oRy27Ep5yezHooQpCfe6d/kAIs=
475 |
476 | color-convert@^1.9.0:
477 | version "1.9.3"
478 | resolved "https://registry.npm.taobao.org/color-convert/download/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8"
479 | integrity sha1-u3GFBpDh8TZWfeYp0tVHHe2kweg=
480 | dependencies:
481 | color-name "1.1.3"
482 |
483 | color-convert@^2.0.1:
484 | version "2.0.1"
485 | resolved "https://registry.npm.taobao.org/color-convert/download/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3"
486 | integrity sha1-ctOmjVmMm9s68q0ehPIdiWq9TeM=
487 | dependencies:
488 | color-name "~1.1.4"
489 |
490 | color-name@1.1.3:
491 | version "1.1.3"
492 | resolved "https://registry.npm.taobao.org/color-name/download/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25"
493 | integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=
494 |
495 | color-name@^1.0.0, color-name@~1.1.4:
496 | version "1.1.4"
497 | resolved "https://registry.npm.taobao.org/color-name/download/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2"
498 | integrity sha1-wqCah6y95pVD3m9j+jmVyCbFNqI=
499 |
500 | color-string@^1.6.0:
501 | version "1.6.0"
502 | resolved "https://registry.nlark.com/color-string/download/color-string-1.6.0.tgz#c3915f61fe267672cb7e1e064c9d692219f6c312"
503 | integrity sha1-w5FfYf4mdnLLfh4GTJ1pIhn2wxI=
504 | dependencies:
505 | color-name "^1.0.0"
506 | simple-swizzle "^0.2.2"
507 |
508 | color@^4.0.1:
509 | version "4.0.1"
510 | resolved "https://registry.nlark.com/color/download/color-4.0.1.tgz#21df44cd10245a91b1ccf5ba031609b0e10e7d67"
511 | integrity sha1-Id9EzRAkWpGxzPW6AxYJsOEOfWc=
512 | dependencies:
513 | color-convert "^2.0.1"
514 | color-string "^1.6.0"
515 |
516 | commander@^6.0.0:
517 | version "6.2.1"
518 | resolved "https://registry.npmmirror.com/commander/download/commander-6.2.1.tgz#0792eb682dfbc325999bb2b84fddddba110ac73c"
519 | integrity sha1-B5LraC37wyWZm7K4T93duhEKxzw=
520 |
521 | concat-map@0.0.1:
522 | version "0.0.1"
523 | resolved "https://registry.npm.taobao.org/concat-map/download/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
524 | integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=
525 |
526 | cosmiconfig@^7.0.1:
527 | version "7.0.1"
528 | resolved "https://registry.nlark.com/cosmiconfig/download/cosmiconfig-7.0.1.tgz?cache=0&sync_timestamp=1629586699851&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fcosmiconfig%2Fdownload%2Fcosmiconfig-7.0.1.tgz#714d756522cace867867ccb4474c5d01bbae5d6d"
529 | integrity sha1-cU11ZSLKzoZ4Z8y0R0xdAbuuXW0=
530 | dependencies:
531 | "@types/parse-json" "^4.0.0"
532 | import-fresh "^3.2.1"
533 | parse-json "^5.0.0"
534 | path-type "^4.0.0"
535 | yaml "^1.10.0"
536 |
537 | create-require@^1.1.0:
538 | version "1.1.1"
539 | resolved "https://registry.nlark.com/create-require/download/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333"
540 | integrity sha1-wdfo8eX2z8n/ZfnNNS03NIdWwzM=
541 |
542 | cross-env@^7.0.3:
543 | version "7.0.3"
544 | resolved "https://registry.npm.taobao.org/cross-env/download/cross-env-7.0.3.tgz?cache=0&sync_timestamp=1606854449763&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcross-env%2Fdownload%2Fcross-env-7.0.3.tgz#865264b29677dc015ba8418918965dd232fc54cf"
545 | integrity sha1-hlJkspZ33AFbqEGJGJZd0jL8VM8=
546 | dependencies:
547 | cross-spawn "^7.0.1"
548 |
549 | cross-spawn@^7.0.1, cross-spawn@^7.0.2:
550 | version "7.0.3"
551 | resolved "https://registry.npm.taobao.org/cross-spawn/download/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6"
552 | integrity sha1-9zqFudXUHQRVUcF34ogtSshXKKY=
553 | dependencies:
554 | path-key "^3.1.0"
555 | shebang-command "^2.0.0"
556 | which "^2.0.1"
557 |
558 | css-color-names@^0.0.4:
559 | version "0.0.4"
560 | resolved "https://registry.npm.taobao.org/css-color-names/download/css-color-names-0.0.4.tgz#808adc2e79cf84738069b646cb20ec27beb629e0"
561 | integrity sha1-gIrcLnnPhHOAabZGyyDsJ762KeA=
562 |
563 | css-unit-converter@^1.1.1:
564 | version "1.1.2"
565 | resolved "https://registry.npm.taobao.org/css-unit-converter/download/css-unit-converter-1.1.2.tgz#4c77f5a1954e6dbff60695ecb214e3270436ab21"
566 | integrity sha1-THf1oZVObb/2BpXsshTjJwQ2qyE=
567 |
568 | cssesc@^3.0.0:
569 | version "3.0.0"
570 | resolved "https://registry.npm.taobao.org/cssesc/download/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee"
571 | integrity sha1-N3QZGZA7hoVl4cCep0dEXNGJg+4=
572 |
573 | debug@^2.6.9:
574 | version "2.6.9"
575 | resolved "https://registry.npmmirror.com/debug/download/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
576 | integrity sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=
577 | dependencies:
578 | ms "2.0.0"
579 |
580 | debug@^3.2.7:
581 | version "3.2.7"
582 | resolved "https://registry.npmmirror.com/debug/download/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a"
583 | integrity sha1-clgLfpFF+zm2Z2+cXl+xALk0F5o=
584 | dependencies:
585 | ms "^2.1.1"
586 |
587 | debug@^4.0.1, debug@^4.1.1, debug@^4.3.2:
588 | version "4.3.3"
589 | resolved "https://registry.npmmirror.com/debug/download/debug-4.3.3.tgz#04266e0b70a98d4462e6e288e38259213332b664"
590 | integrity sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==
591 | dependencies:
592 | ms "2.1.2"
593 |
594 | deep-is@^0.1.3:
595 | version "0.1.4"
596 | resolved "https://registry.nlark.com/deep-is/download/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831"
597 | integrity sha1-pvLc5hL63S7x9Rm3NVHxfoUZmDE=
598 |
599 | define-properties@^1.1.3:
600 | version "1.1.3"
601 | resolved "https://registry.nlark.com/define-properties/download/define-properties-1.1.3.tgz?cache=0&sync_timestamp=1622604538602&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fdefine-properties%2Fdownload%2Fdefine-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1"
602 | integrity sha1-z4jabL7ib+bbcJT2HYcMvYTO6fE=
603 | dependencies:
604 | object-keys "^1.0.12"
605 |
606 | defined@^1.0.0:
607 | version "1.0.0"
608 | resolved "https://registry.nlark.com/defined/download/defined-1.0.0.tgz#c98d9bcef75674188e110969151199e39b1fa693"
609 | integrity sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=
610 |
611 | del@^6.0.0:
612 | version "6.0.0"
613 | resolved "https://registry.nlark.com/del/download/del-6.0.0.tgz?cache=0&sync_timestamp=1622605333317&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fdel%2Fdownload%2Fdel-6.0.0.tgz#0b40d0332cea743f1614f818be4feb717714c952"
614 | integrity sha1-C0DQMyzqdD8WFPgYvk/rcXcUyVI=
615 | dependencies:
616 | globby "^11.0.1"
617 | graceful-fs "^4.2.4"
618 | is-glob "^4.0.1"
619 | is-path-cwd "^2.2.0"
620 | is-path-inside "^3.0.2"
621 | p-map "^4.0.0"
622 | rimraf "^3.0.2"
623 | slash "^3.0.0"
624 |
625 | detect-libc@^1.0.3:
626 | version "1.0.3"
627 | resolved "https://registry.nlark.com/detect-libc/download/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b"
628 | integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=
629 |
630 | detective@^5.2.0:
631 | version "5.2.0"
632 | resolved "https://registry.npm.taobao.org/detective/download/detective-5.2.0.tgz#feb2a77e85b904ecdea459ad897cc90a99bd2a7b"
633 | integrity sha1-/rKnfoW5BOzepFmtiXzJCpm9Kns=
634 | dependencies:
635 | acorn-node "^1.6.1"
636 | defined "^1.0.0"
637 | minimist "^1.1.1"
638 |
639 | didyoumean@^1.2.2:
640 | version "1.2.2"
641 | resolved "https://registry.nlark.com/didyoumean/download/didyoumean-1.2.2.tgz?cache=0&sync_timestamp=1624544640276&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fdidyoumean%2Fdownload%2Fdidyoumean-1.2.2.tgz#989346ffe9e839b4555ecf5666edea0d3e8ad037"
642 | integrity sha1-mJNG/+noObRVXs9WZu3qDT6K0Dc=
643 |
644 | diff@^4.0.1:
645 | version "4.0.2"
646 | resolved "https://registry.nlark.com/diff/download/diff-4.0.2.tgz?cache=0&sync_timestamp=1622605328812&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fdiff%2Fdownload%2Fdiff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d"
647 | integrity sha1-YPOuy4nV+uUgwRqhnvwruYKq3n0=
648 |
649 | dir-glob@^3.0.1:
650 | version "3.0.1"
651 | resolved "https://registry.nlark.com/dir-glob/download/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f"
652 | integrity sha1-Vtv3PZkqSpO6FYT0U0Bj/S5BcX8=
653 | dependencies:
654 | path-type "^4.0.0"
655 |
656 | dlv@^1.1.3:
657 | version "1.1.3"
658 | resolved "https://registry.nlark.com/dlv/download/dlv-1.1.3.tgz#5c198a8a11453596e751494d49874bc7732f2e79"
659 | integrity sha1-XBmKihFFNZbnUUlNSYdLx3MvLnk=
660 |
661 | doctrine@^2.1.0:
662 | version "2.1.0"
663 | resolved "https://registry.nlark.com/doctrine/download/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d"
664 | integrity sha1-XNAfwQFiG0LEzX9dGmYkNxbT850=
665 | dependencies:
666 | esutils "^2.0.2"
667 |
668 | doctrine@^3.0.0:
669 | version "3.0.0"
670 | resolved "https://registry.nlark.com/doctrine/download/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961"
671 | integrity sha1-rd6+rXKmV023g2OdyHoSF3OXOWE=
672 | dependencies:
673 | esutils "^2.0.2"
674 |
675 | electron-to-chromium@^1.3.896:
676 | version "1.3.907"
677 | resolved "https://registry.npmmirror.com/electron-to-chromium/download/electron-to-chromium-1.3.907.tgz#c8e155a17cb642a1023481c601aa3ad9ee61f402"
678 | integrity sha512-xoUPSkjimw51d9ryeH38XUwmR3HmCA+eky4hk0YEgsWeBWGyhb35OCvT3lWAdmvIkcGYCRNOB8LvtO00dJQpOA==
679 |
680 | emoji-regex@^8.0.0:
681 | version "8.0.0"
682 | resolved "https://registry.npmmirror.com/emoji-regex/download/emoji-regex-8.0.0.tgz?cache=0&sync_timestamp=1632811716250&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Femoji-regex%2Fdownload%2Femoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37"
683 | integrity sha1-6Bj9ac5cz8tARZT4QpY79TFkzDc=
684 |
685 | enquirer@^2.3.5:
686 | version "2.3.6"
687 | resolved "https://registry.nlark.com/enquirer/download/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d"
688 | integrity sha1-Kn/l3WNKHkElqXXsmU/1RW3Dc00=
689 | dependencies:
690 | ansi-colors "^4.1.1"
691 |
692 | error-ex@^1.3.1:
693 | version "1.3.2"
694 | resolved "https://registry.npm.taobao.org/error-ex/download/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf"
695 | integrity sha1-tKxAZIEH/c3PriQvQovqihTU8b8=
696 | dependencies:
697 | is-arrayish "^0.2.1"
698 |
699 | es-abstract@^1.19.0, es-abstract@^1.19.1:
700 | version "1.19.1"
701 | resolved "https://registry.npmmirror.com/es-abstract/download/es-abstract-1.19.1.tgz?cache=0&sync_timestamp=1633234313248&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fes-abstract%2Fdownload%2Fes-abstract-1.19.1.tgz#d4885796876916959de78edaa0df456627115ec3"
702 | integrity sha1-1IhXlodpFpWd547aoN9FZicRXsM=
703 | dependencies:
704 | call-bind "^1.0.2"
705 | es-to-primitive "^1.2.1"
706 | function-bind "^1.1.1"
707 | get-intrinsic "^1.1.1"
708 | get-symbol-description "^1.0.0"
709 | has "^1.0.3"
710 | has-symbols "^1.0.2"
711 | internal-slot "^1.0.3"
712 | is-callable "^1.2.4"
713 | is-negative-zero "^2.0.1"
714 | is-regex "^1.1.4"
715 | is-shared-array-buffer "^1.0.1"
716 | is-string "^1.0.7"
717 | is-weakref "^1.0.1"
718 | object-inspect "^1.11.0"
719 | object-keys "^1.1.1"
720 | object.assign "^4.1.2"
721 | string.prototype.trimend "^1.0.4"
722 | string.prototype.trimstart "^1.0.4"
723 | unbox-primitive "^1.0.1"
724 |
725 | es-to-primitive@^1.2.1:
726 | version "1.2.1"
727 | resolved "https://registry.nlark.com/es-to-primitive/download/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a"
728 | integrity sha1-5VzUyc3BiLzvsDs2bHNjI/xciYo=
729 | dependencies:
730 | is-callable "^1.1.4"
731 | is-date-object "^1.0.1"
732 | is-symbol "^1.0.2"
733 |
734 | esbuild-android-arm64@0.14.1:
735 | version "0.14.1"
736 | resolved "https://registry.npmmirror.com/esbuild-android-arm64/download/esbuild-android-arm64-0.14.1.tgz#470b99c1c4b49f33fd0a20ed153b15008173fd63"
737 | integrity sha512-elQd3hTg93nU2GQ5PPCDAFe5+utxZX96RG8RixqIPxf8pzmyIzcpKG76L/9FabPf3LT1z+nLF1sajCU8eVRDyg==
738 |
739 | esbuild-darwin-64@0.14.1:
740 | version "0.14.1"
741 | resolved "https://registry.npmmirror.com/esbuild-darwin-64/download/esbuild-darwin-64-0.14.1.tgz#135f48f299f2ce3eb3ca1b1f3ec03d81108ab79e"
742 | integrity sha512-PR3HZgbPRwsQbbOR1fJrfkt/Cs0JDyI3yzOKg2PPWk0H1AseZDBqPUY9b/0+BIjFwA5Jz/aAiq832hppsuJtNw==
743 |
744 | esbuild-darwin-arm64@0.14.1:
745 | version "0.14.1"
746 | resolved "https://registry.npmmirror.com/esbuild-darwin-arm64/download/esbuild-darwin-arm64-0.14.1.tgz#7117a857bac99ece28ebba859a47dce47f565f9f"
747 | integrity sha512-/fiSSOkOEa3co6yYtwgXouz8jZrG0qnXPEKiktFf2BQE8NON3ARTw43ZegaH+xMRFNgYBJEOOZIdzI3sIFEAxw==
748 |
749 | esbuild-freebsd-64@0.14.1:
750 | version "0.14.1"
751 | resolved "https://registry.npmmirror.com/esbuild-freebsd-64/download/esbuild-freebsd-64-0.14.1.tgz#2b7ca5ec572f2800b1ec88988affc4482c5ac4b7"
752 | integrity sha512-ZJV+nfa8E8PdXnRc05PO3YMfgSj7Ko+kdHyGDE6OaNo1cO8ZyfacqLaWkY35shDDaeacklhD8ZR4qq5nbJKX1A==
753 |
754 | esbuild-freebsd-arm64@0.14.1:
755 | version "0.14.1"
756 | resolved "https://registry.npmmirror.com/esbuild-freebsd-arm64/download/esbuild-freebsd-arm64-0.14.1.tgz#63e8b77643ea8270d878cfab7dd9201a114f20fb"
757 | integrity sha512-6N9zTD+SecJr2g9Ohl9C10WIk5FpQ+52bNamRy0sJoHwP31G5ObzKzq8jAtg1Jeggpu6P8auz3P/UL+3YioSwQ==
758 |
759 | esbuild-linux-32@0.14.1:
760 | version "0.14.1"
761 | resolved "https://registry.npmmirror.com/esbuild-linux-32/download/esbuild-linux-32-0.14.1.tgz#f00ae7f12d2abc0dc37e2a7e7c7c29764da87093"
762 | integrity sha512-RtPgE6e7WefbAxRjVryisKFJ0nUwR2DMjwmYW/a1a0F1+Ge6FR+RqvgiY0DrM9TtxSUU0eryDXNF4n3UfxX3mg==
763 |
764 | esbuild-linux-64@0.14.1:
765 | version "0.14.1"
766 | resolved "https://registry.npmmirror.com/esbuild-linux-64/download/esbuild-linux-64-0.14.1.tgz#2ee9dd76be1185abb1e967052e3b6ab16a1d3da4"
767 | integrity sha512-JpxM0ar6Z+2v3vfFrxP7bFb8Wzb6gcGL9MxRqAJplDfGnee8HbfPge6svaazXeX9XJceeEqwxwWGB0qyCcxo7A==
768 |
769 | esbuild-linux-arm64@0.14.1:
770 | version "0.14.1"
771 | resolved "https://registry.npmmirror.com/esbuild-linux-arm64/download/esbuild-linux-arm64-0.14.1.tgz#601e855b78e0636e120771296b43eb4f7d68a314"
772 | integrity sha512-cFbeZf171bIf+PPLlQDBzagK85lCCxxVdMV1IVUA96Y3kvEgqcy2n9mha+QE1M/T+lIOPDsmLRgH1XqMFwLTSg==
773 |
774 | esbuild-linux-arm@0.14.1:
775 | version "0.14.1"
776 | resolved "https://registry.npmmirror.com/esbuild-linux-arm/download/esbuild-linux-arm-0.14.1.tgz#c0d364a20f12a653bdd2f41436788b99502dc287"
777 | integrity sha512-eBRHexCijAYWzcvQLGHxyxIlYOkYhXvcb/O7HvzJfCAVWCnTx9TxxYJ3UppBC6dDFbAq4HwKhskvmesQdKMeBg==
778 |
779 | esbuild-linux-mips64le@0.14.1:
780 | version "0.14.1"
781 | resolved "https://registry.npmmirror.com/esbuild-linux-mips64le/download/esbuild-linux-mips64le-0.14.1.tgz#a5f6e9c6e7950a3fad08bb3653bc3f5d71b4e249"
782 | integrity sha512-UGb+sqHkL7wOQFLH0RoFhcRAlJNqbqs6GtJd1It5jJ2juOGqAkCv8V12aGDX9oRB6a+Om7cdHcH+6AMZ+qlaww==
783 |
784 | esbuild-linux-ppc64le@0.14.1:
785 | version "0.14.1"
786 | resolved "https://registry.npmmirror.com/esbuild-linux-ppc64le/download/esbuild-linux-ppc64le-0.14.1.tgz#762cec24cf5afeee3f805a4679a3f5e29702173a"
787 | integrity sha512-LIHGkGdy9wYlmkkoVHm6feWhkoi4VBXDiEVyNjXEhlzsBcP/CaRy+B8IJulzaU1ALLiGcsCQ2MC5UbFn/iTvmA==
788 |
789 | esbuild-netbsd-64@0.14.1:
790 | version "0.14.1"
791 | resolved "https://registry.npmmirror.com/esbuild-netbsd-64/download/esbuild-netbsd-64-0.14.1.tgz#66ec7ac0b3eeb84f8c1ac27eecf16f59d93706a8"
792 | integrity sha512-TWc1QIgtPwaK5nC1GT2ASTuy/CJhNKHN4h5PJRP1186VfI+k2uvXakS7bqO/M26F6jAMy8jDeCtilacqpwsvfA==
793 |
794 | esbuild-openbsd-64@0.14.1:
795 | version "0.14.1"
796 | resolved "https://registry.npmmirror.com/esbuild-openbsd-64/download/esbuild-openbsd-64-0.14.1.tgz#7515049bc7032ca2fb6811dc260f5ec9e1d9fe65"
797 | integrity sha512-Z9/Zb77K+pK9s7mAsvwS56K8tCbLvNZ9UI4QVJSYqDgOmmDJOBT4owWnCqZ5cJI+2y4/F9KwCpFFTNUdPglPKA==
798 |
799 | esbuild-sunos-64@0.14.1:
800 | version "0.14.1"
801 | resolved "https://registry.npmmirror.com/esbuild-sunos-64/download/esbuild-sunos-64-0.14.1.tgz#795f6bc7ce8c5177afb65f8d6c161a02f0c3e125"
802 | integrity sha512-c4sF8146kNW8529wfkB6vO0ZqPgokyS2hORqKa4p/QKZdp+xrF2NPmvX5aN+Zt14oe6wVZuhYo6LGv7V4Gg04g==
803 |
804 | esbuild-windows-32@0.14.1:
805 | version "0.14.1"
806 | resolved "https://registry.npmmirror.com/esbuild-windows-32/download/esbuild-windows-32-0.14.1.tgz#ffffa6378733eeaa23ed5cfe539e2fbe1e635ef6"
807 | integrity sha512-XP8yElaJtLGGjH7D72t5IWtP0jmc1Jqm4IjQARB17l0LTJO/n+N2X64rDWePJv6qimYxa5p2vTjkZc5v+YZTSQ==
808 |
809 | esbuild-windows-64@0.14.1:
810 | version "0.14.1"
811 | resolved "https://registry.npmmirror.com/esbuild-windows-64/download/esbuild-windows-64-0.14.1.tgz#46f3b4a90f937a8ad6456cd70478ebfc6771814f"
812 | integrity sha512-fe+ShdyfiuGcCEdVKW//6MaM4MwikiWBWSBn8mebNAbjRqicH0injDOFVI7aUovAfrEt7+FGkf402s//hi0BVg==
813 |
814 | esbuild-windows-arm64@0.14.1:
815 | version "0.14.1"
816 | resolved "https://registry.npmmirror.com/esbuild-windows-arm64/download/esbuild-windows-arm64-0.14.1.tgz#c7067389d28139e6a18db1996178c3a3e07a22b3"
817 | integrity sha512-wBVakhcIzQ3NZ33DFM6TjIObXPHaXOsqzvPwefXHvwBSC/N/e/g6fBeM7N/Moj3AmxLjKaB+vePvTGdxk6RPCg==
818 |
819 | esbuild@^0.14.1:
820 | version "0.14.1"
821 | resolved "https://registry.npmmirror.com/esbuild/download/esbuild-0.14.1.tgz#b834da3aa5858073205a6d4f948ffde0d650e4e3"
822 | integrity sha512-J/LhUwELcmz0+CJfiaKzu7Rnj9ffWFLvMx+dKvdOfg+fQmoP6q9glla26LCm9BxpnPUjXChHeubLiMlKab/PYg==
823 | optionalDependencies:
824 | esbuild-android-arm64 "0.14.1"
825 | esbuild-darwin-64 "0.14.1"
826 | esbuild-darwin-arm64 "0.14.1"
827 | esbuild-freebsd-64 "0.14.1"
828 | esbuild-freebsd-arm64 "0.14.1"
829 | esbuild-linux-32 "0.14.1"
830 | esbuild-linux-64 "0.14.1"
831 | esbuild-linux-arm "0.14.1"
832 | esbuild-linux-arm64 "0.14.1"
833 | esbuild-linux-mips64le "0.14.1"
834 | esbuild-linux-ppc64le "0.14.1"
835 | esbuild-netbsd-64 "0.14.1"
836 | esbuild-openbsd-64 "0.14.1"
837 | esbuild-sunos-64 "0.14.1"
838 | esbuild-windows-32 "0.14.1"
839 | esbuild-windows-64 "0.14.1"
840 | esbuild-windows-arm64 "0.14.1"
841 |
842 | escalade@^3.1.1:
843 | version "3.1.1"
844 | resolved "https://registry.npm.taobao.org/escalade/download/escalade-3.1.1.tgz?cache=0&sync_timestamp=1602567230854&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fescalade%2Fdownload%2Fescalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40"
845 | integrity sha1-2M/ccACWXFoBdLSoLqpcBVJ0LkA=
846 |
847 | escape-string-regexp@^1.0.5:
848 | version "1.0.5"
849 | resolved "https://registry.npm.taobao.org/escape-string-regexp/download/escape-string-regexp-1.0.5.tgz?cache=0&sync_timestamp=1618677243201&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fescape-string-regexp%2Fdownload%2Fescape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
850 | integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=
851 |
852 | escape-string-regexp@^4.0.0:
853 | version "4.0.0"
854 | resolved "https://registry.nlark.com/escape-string-regexp/download/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34"
855 | integrity sha1-FLqDpdNz49MR5a/KKc9b+tllvzQ=
856 |
857 | eslint-config-standard@^16.0.3:
858 | version "16.0.3"
859 | resolved "https://registry.nlark.com/eslint-config-standard/download/eslint-config-standard-16.0.3.tgz#6c8761e544e96c531ff92642eeb87842b8488516"
860 | integrity sha1-bIdh5UTpbFMf+SZC7rh4QrhIhRY=
861 |
862 | eslint-import-resolver-node@^0.3.6:
863 | version "0.3.6"
864 | resolved "https://registry.nlark.com/eslint-import-resolver-node/download/eslint-import-resolver-node-0.3.6.tgz?cache=0&sync_timestamp=1629046536777&other_urls=https%3A%2F%2Fregistry.nlark.com%2Feslint-import-resolver-node%2Fdownload%2Feslint-import-resolver-node-0.3.6.tgz#4048b958395da89668252001dbd9eca6b83bacbd"
865 | integrity sha1-QEi5WDldqJZoJSAB29nsprg7rL0=
866 | dependencies:
867 | debug "^3.2.7"
868 | resolve "^1.20.0"
869 |
870 | eslint-module-utils@^2.7.1:
871 | version "2.7.1"
872 | resolved "https://registry.npmmirror.com/eslint-module-utils/download/eslint-module-utils-2.7.1.tgz?cache=0&sync_timestamp=1634151608499&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Feslint-module-utils%2Fdownload%2Feslint-module-utils-2.7.1.tgz#b435001c9f8dd4ab7f6d0efcae4b9696d4c24b7c"
873 | integrity sha1-tDUAHJ+N1Kt/bQ78rkuWltTCS3w=
874 | dependencies:
875 | debug "^3.2.7"
876 | find-up "^2.1.0"
877 | pkg-dir "^2.0.0"
878 |
879 | eslint-plugin-es@^3.0.0:
880 | version "3.0.1"
881 | resolved "https://registry.nlark.com/eslint-plugin-es/download/eslint-plugin-es-3.0.1.tgz#75a7cdfdccddc0589934aeeb384175f221c57893"
882 | integrity sha1-dafN/czdwFiZNK7rOEF18iHFeJM=
883 | dependencies:
884 | eslint-utils "^2.0.0"
885 | regexpp "^3.0.0"
886 |
887 | eslint-plugin-import@^2.22.1:
888 | version "2.25.3"
889 | resolved "https://registry.npmmirror.com/eslint-plugin-import/download/eslint-plugin-import-2.25.3.tgz?cache=0&sync_timestamp=1636529251650&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Feslint-plugin-import%2Fdownload%2Feslint-plugin-import-2.25.3.tgz#a554b5f66e08fb4f6dc99221866e57cfff824766"
890 | integrity sha512-RzAVbby+72IB3iOEL8clzPLzL3wpDrlwjsTBAQXgyp5SeTqqY+0bFubwuo+y/HLhNZcXV4XqTBO4LGsfyHIDXg==
891 | dependencies:
892 | array-includes "^3.1.4"
893 | array.prototype.flat "^1.2.5"
894 | debug "^2.6.9"
895 | doctrine "^2.1.0"
896 | eslint-import-resolver-node "^0.3.6"
897 | eslint-module-utils "^2.7.1"
898 | has "^1.0.3"
899 | is-core-module "^2.8.0"
900 | is-glob "^4.0.3"
901 | minimatch "^3.0.4"
902 | object.values "^1.1.5"
903 | resolve "^1.20.0"
904 | tsconfig-paths "^3.11.0"
905 |
906 | eslint-plugin-node@^11.1.0:
907 | version "11.1.0"
908 | resolved "https://registry.nlark.com/eslint-plugin-node/download/eslint-plugin-node-11.1.0.tgz#c95544416ee4ada26740a30474eefc5402dc671d"
909 | integrity sha1-yVVEQW7kraJnQKMEdO78VALcZx0=
910 | dependencies:
911 | eslint-plugin-es "^3.0.0"
912 | eslint-utils "^2.0.0"
913 | ignore "^5.1.1"
914 | minimatch "^3.0.4"
915 | resolve "^1.10.1"
916 | semver "^6.1.0"
917 |
918 | eslint-plugin-promise@^5.2.0:
919 | version "5.2.0"
920 | resolved "https://registry.npmmirror.com/eslint-plugin-promise/download/eslint-plugin-promise-5.2.0.tgz#a596acc32981627eb36d9d75f9666ac1a4564971"
921 | integrity sha512-SftLb1pUG01QYq2A/hGAWfDRXqYD82zE7j7TopDOyNdU+7SvvoXREls/+PRTY17vUXzXnZA/zfnyKgRH6x4JJw==
922 |
923 | eslint-scope@^5.1.1:
924 | version "5.1.1"
925 | resolved "https://registry.npmmirror.com/eslint-scope/download/eslint-scope-5.1.1.tgz?cache=0&sync_timestamp=1637466831846&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Feslint-scope%2Fdownload%2Feslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c"
926 | integrity sha1-54blmmbLkrP2wfsNUIqrF0hI9Iw=
927 | dependencies:
928 | esrecurse "^4.3.0"
929 | estraverse "^4.1.1"
930 |
931 | eslint-utils@^2.0.0, eslint-utils@^2.1.0:
932 | version "2.1.0"
933 | resolved "https://registry.nlark.com/eslint-utils/download/eslint-utils-2.1.0.tgz?cache=0&sync_timestamp=1622605293603&other_urls=https%3A%2F%2Fregistry.nlark.com%2Feslint-utils%2Fdownload%2Feslint-utils-2.1.0.tgz#d2de5e03424e707dc10c74068ddedae708741b27"
934 | integrity sha1-0t5eA0JOcH3BDHQGjd7a5wh0Gyc=
935 | dependencies:
936 | eslint-visitor-keys "^1.1.0"
937 |
938 | eslint-utils@^3.0.0:
939 | version "3.0.0"
940 | resolved "https://registry.nlark.com/eslint-utils/download/eslint-utils-3.0.0.tgz?cache=0&sync_timestamp=1622605293603&other_urls=https%3A%2F%2Fregistry.nlark.com%2Feslint-utils%2Fdownload%2Feslint-utils-3.0.0.tgz#8aebaface7345bb33559db0a1f13a1d2d48c3672"
941 | integrity sha1-iuuvrOc0W7M1WdsKHxOh0tSMNnI=
942 | dependencies:
943 | eslint-visitor-keys "^2.0.0"
944 |
945 | eslint-visitor-keys@^1.1.0, eslint-visitor-keys@^1.3.0:
946 | version "1.3.0"
947 | resolved "https://registry.npmmirror.com/eslint-visitor-keys/download/eslint-visitor-keys-1.3.0.tgz?cache=0&sync_timestamp=1636378395014&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Feslint-visitor-keys%2Fdownload%2Feslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e"
948 | integrity sha1-MOvR73wv3/AcOk8VEESvJfqwUj4=
949 |
950 | eslint-visitor-keys@^2.0.0:
951 | version "2.1.0"
952 | resolved "https://registry.npmmirror.com/eslint-visitor-keys/download/eslint-visitor-keys-2.1.0.tgz?cache=0&sync_timestamp=1636378395014&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Feslint-visitor-keys%2Fdownload%2Feslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303"
953 | integrity sha1-9lMoJZMFknOSyTjtROsKXJsr0wM=
954 |
955 | eslint-visitor-keys@^3.0.0:
956 | version "3.1.0"
957 | resolved "https://registry.npmmirror.com/eslint-visitor-keys/download/eslint-visitor-keys-3.1.0.tgz?cache=0&sync_timestamp=1636378395014&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Feslint-visitor-keys%2Fdownload%2Feslint-visitor-keys-3.1.0.tgz#eee4acea891814cda67a7d8812d9647dd0179af2"
958 | integrity sha512-yWJFpu4DtjsWKkt5GeNBBuZMlNcYVs6vRCLoCVEJrTjaSB6LC98gFipNK/erM2Heg/E8mIK+hXG/pJMLK+eRZA==
959 |
960 | eslint@^7.12.1:
961 | version "7.32.0"
962 | resolved "https://registry.npmmirror.com/eslint/download/eslint-7.32.0.tgz#c6d328a14be3fb08c8d1d21e12c02fdb7a2a812d"
963 | integrity sha1-xtMooUvj+wjI0dIeEsAv23oqgS0=
964 | dependencies:
965 | "@babel/code-frame" "7.12.11"
966 | "@eslint/eslintrc" "^0.4.3"
967 | "@humanwhocodes/config-array" "^0.5.0"
968 | ajv "^6.10.0"
969 | chalk "^4.0.0"
970 | cross-spawn "^7.0.2"
971 | debug "^4.0.1"
972 | doctrine "^3.0.0"
973 | enquirer "^2.3.5"
974 | escape-string-regexp "^4.0.0"
975 | eslint-scope "^5.1.1"
976 | eslint-utils "^2.1.0"
977 | eslint-visitor-keys "^2.0.0"
978 | espree "^7.3.1"
979 | esquery "^1.4.0"
980 | esutils "^2.0.2"
981 | fast-deep-equal "^3.1.3"
982 | file-entry-cache "^6.0.1"
983 | functional-red-black-tree "^1.0.1"
984 | glob-parent "^5.1.2"
985 | globals "^13.6.0"
986 | ignore "^4.0.6"
987 | import-fresh "^3.0.0"
988 | imurmurhash "^0.1.4"
989 | is-glob "^4.0.0"
990 | js-yaml "^3.13.1"
991 | json-stable-stringify-without-jsonify "^1.0.1"
992 | levn "^0.4.1"
993 | lodash.merge "^4.6.2"
994 | minimatch "^3.0.4"
995 | natural-compare "^1.4.0"
996 | optionator "^0.9.1"
997 | progress "^2.0.0"
998 | regexpp "^3.1.0"
999 | semver "^7.2.1"
1000 | strip-ansi "^6.0.0"
1001 | strip-json-comments "^3.1.0"
1002 | table "^6.0.9"
1003 | text-table "^0.2.0"
1004 | v8-compile-cache "^2.0.3"
1005 |
1006 | espree@^7.3.0, espree@^7.3.1:
1007 | version "7.3.1"
1008 | resolved "https://registry.npmmirror.com/espree/download/espree-7.3.1.tgz?cache=0&sync_timestamp=1637466526998&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fespree%2Fdownload%2Fespree-7.3.1.tgz#f2df330b752c6f55019f8bd89b7660039c1bbbb6"
1009 | integrity sha1-8t8zC3Usb1UBn4vYm3ZgA5wbu7Y=
1010 | dependencies:
1011 | acorn "^7.4.0"
1012 | acorn-jsx "^5.3.1"
1013 | eslint-visitor-keys "^1.3.0"
1014 |
1015 | esprima@^4.0.0:
1016 | version "4.0.1"
1017 | resolved "https://registry.nlark.com/esprima/download/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71"
1018 | integrity sha1-E7BM2z5sXRnfkatph6hpVhmwqnE=
1019 |
1020 | esquery@^1.4.0:
1021 | version "1.4.0"
1022 | resolved "https://registry.nlark.com/esquery/download/esquery-1.4.0.tgz#2148ffc38b82e8c7057dfed48425b3e61f0f24a5"
1023 | integrity sha1-IUj/w4uC6McFff7UhCWz5h8PJKU=
1024 | dependencies:
1025 | estraverse "^5.1.0"
1026 |
1027 | esrecurse@^4.3.0:
1028 | version "4.3.0"
1029 | resolved "https://registry.nlark.com/esrecurse/download/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921"
1030 | integrity sha1-eteWTWeauyi+5yzsY3WLHF0smSE=
1031 | dependencies:
1032 | estraverse "^5.2.0"
1033 |
1034 | estraverse@^4.1.1:
1035 | version "4.3.0"
1036 | resolved "https://registry.npmmirror.com/estraverse/download/estraverse-4.3.0.tgz?cache=0&sync_timestamp=1635237716974&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Festraverse%2Fdownload%2Festraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d"
1037 | integrity sha1-OYrT88WiSUi+dyXoPRGn3ijNvR0=
1038 |
1039 | estraverse@^5.1.0, estraverse@^5.2.0:
1040 | version "5.3.0"
1041 | resolved "https://registry.npmmirror.com/estraverse/download/estraverse-5.3.0.tgz?cache=0&sync_timestamp=1635237716974&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Festraverse%2Fdownload%2Festraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123"
1042 | integrity sha1-LupSkHAvJquP5TcDcP+GyWXSESM=
1043 |
1044 | esutils@^2.0.2:
1045 | version "2.0.3"
1046 | resolved "https://registry.nlark.com/esutils/download/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64"
1047 | integrity sha1-dNLrTeC42hKTcRkQ1Qd1ubcQ72Q=
1048 |
1049 | fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3:
1050 | version "3.1.3"
1051 | resolved "https://registry.nlark.com/fast-deep-equal/download/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525"
1052 | integrity sha1-On1WtVnWy8PrUSMlJE5hmmXGxSU=
1053 |
1054 | fast-glob@^3.1.1, fast-glob@^3.2.7:
1055 | version "3.2.7"
1056 | resolved "https://registry.nlark.com/fast-glob/download/fast-glob-3.2.7.tgz#fd6cb7a2d7e9aa7a7846111e85a196d6b2f766a1"
1057 | integrity sha1-/Wy3otfpqnp4RhEehaGW1rL3ZqE=
1058 | dependencies:
1059 | "@nodelib/fs.stat" "^2.0.2"
1060 | "@nodelib/fs.walk" "^1.2.3"
1061 | glob-parent "^5.1.2"
1062 | merge2 "^1.3.0"
1063 | micromatch "^4.0.4"
1064 |
1065 | fast-json-stable-stringify@^2.0.0:
1066 | version "2.1.0"
1067 | resolved "https://registry.nlark.com/fast-json-stable-stringify/download/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633"
1068 | integrity sha1-h0v2nG9ATCtdmcSBNBOZ/VWJJjM=
1069 |
1070 | fast-levenshtein@^2.0.6:
1071 | version "2.0.6"
1072 | resolved "https://registry.nlark.com/fast-levenshtein/download/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917"
1073 | integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=
1074 |
1075 | fastq@^1.6.0:
1076 | version "1.13.0"
1077 | resolved "https://registry.nlark.com/fastq/download/fastq-1.13.0.tgz#616760f88a7526bdfc596b7cab8c18938c36b98c"
1078 | integrity sha1-YWdg+Ip1Jr38WWt8q4wYk4w2uYw=
1079 | dependencies:
1080 | reusify "^1.0.4"
1081 |
1082 | fibers@^5.0.0:
1083 | version "5.0.0"
1084 | resolved "https://registry.npmmirror.com/fibers/download/fibers-5.0.0.tgz#3a60e0695b3ee5f6db94e62726716fa7a59acc41"
1085 | integrity sha1-OmDgaVs+5fbblOYnJnFvp6WazEE=
1086 | dependencies:
1087 | detect-libc "^1.0.3"
1088 |
1089 | file-entry-cache@^6.0.1:
1090 | version "6.0.1"
1091 | resolved "https://registry.nlark.com/file-entry-cache/download/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027"
1092 | integrity sha1-IRst2WWcsDlLBz5zI6w8kz1SICc=
1093 | dependencies:
1094 | flat-cache "^3.0.4"
1095 |
1096 | fill-range@^7.0.1:
1097 | version "7.0.1"
1098 | resolved "https://registry.npm.taobao.org/fill-range/download/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40"
1099 | integrity sha1-GRmmp8df44ssfHflGYU12prN2kA=
1100 | dependencies:
1101 | to-regex-range "^5.0.1"
1102 |
1103 | find-up@^2.1.0:
1104 | version "2.1.0"
1105 | resolved "https://registry.npmmirror.com/find-up/download/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7"
1106 | integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c=
1107 | dependencies:
1108 | locate-path "^2.0.0"
1109 |
1110 | flat-cache@^3.0.4:
1111 | version "3.0.4"
1112 | resolved "https://registry.nlark.com/flat-cache/download/flat-cache-3.0.4.tgz?cache=0&sync_timestamp=1622604531509&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fflat-cache%2Fdownload%2Fflat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11"
1113 | integrity sha1-YbAzgwKy/p+Vfcwy/CqH8cMEixE=
1114 | dependencies:
1115 | flatted "^3.1.0"
1116 | rimraf "^3.0.2"
1117 |
1118 | flatted@^3.1.0:
1119 | version "3.2.4"
1120 | resolved "https://registry.npmmirror.com/flatted/download/flatted-3.2.4.tgz?cache=0&sync_timestamp=1636473813364&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fflatted%2Fdownload%2Fflatted-3.2.4.tgz#28d9969ea90661b5134259f312ab6aa7929ac5e2"
1121 | integrity sha512-8/sOawo8tJ4QOBX8YlQBMxL8+RLZfxMQOif9o0KUKTNTjMYElWPE0r/m5VNFxTRd0NSw8qSy8dajrwX4RYI1Hw==
1122 |
1123 | fraction.js@^4.1.1:
1124 | version "4.1.2"
1125 | resolved "https://registry.npmmirror.com/fraction.js/download/fraction.js-4.1.2.tgz#13e420a92422b6cf244dff8690ed89401029fbe8"
1126 | integrity sha512-o2RiJQ6DZaR/5+Si0qJUIy637QMRudSi9kU/FFzx9EZazrIdnBgpU+3sEWCxAVhH2RtxW2Oz+T4p2o8uOPVcgA==
1127 |
1128 | fs-extra@^10.0.0:
1129 | version "10.0.0"
1130 | resolved "https://registry.nlark.com/fs-extra/download/fs-extra-10.0.0.tgz#9ff61b655dde53fb34a82df84bb214ce802e17c1"
1131 | integrity sha1-n/YbZV3eU/s0qC34S7IUzoAuF8E=
1132 | dependencies:
1133 | graceful-fs "^4.2.0"
1134 | jsonfile "^6.0.1"
1135 | universalify "^2.0.0"
1136 |
1137 | fs.realpath@^1.0.0:
1138 | version "1.0.0"
1139 | resolved "https://registry.npm.taobao.org/fs.realpath/download/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
1140 | integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8=
1141 |
1142 | fsevents@~2.3.2:
1143 | version "2.3.2"
1144 | resolved "https://registry.npmmirror.com/fsevents/download/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a"
1145 | integrity sha1-ilJveLj99GI7cJ4Ll1xSwkwC/Ro=
1146 |
1147 | function-bind@^1.1.1:
1148 | version "1.1.1"
1149 | resolved "https://registry.npm.taobao.org/function-bind/download/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"
1150 | integrity sha1-pWiZ0+o8m6uHS7l3O3xe3pL0iV0=
1151 |
1152 | functional-red-black-tree@^1.0.1:
1153 | version "1.0.1"
1154 | resolved "https://registry.nlark.com/functional-red-black-tree/download/functional-red-black-tree-1.0.1.tgz?cache=0&sync_timestamp=1622605293770&other_urls=https%3A%2F%2Fregistry.nlark.com%2Ffunctional-red-black-tree%2Fdownload%2Ffunctional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327"
1155 | integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=
1156 |
1157 | get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1:
1158 | version "1.1.1"
1159 | resolved "https://registry.nlark.com/get-intrinsic/download/get-intrinsic-1.1.1.tgz?cache=0&sync_timestamp=1622604540833&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fget-intrinsic%2Fdownload%2Fget-intrinsic-1.1.1.tgz#15f59f376f855c446963948f0d24cd3637b4abc6"
1160 | integrity sha1-FfWfN2+FXERpY5SPDSTNNje0q8Y=
1161 | dependencies:
1162 | function-bind "^1.1.1"
1163 | has "^1.0.3"
1164 | has-symbols "^1.0.1"
1165 |
1166 | get-symbol-description@^1.0.0:
1167 | version "1.0.0"
1168 | resolved "https://registry.nlark.com/get-symbol-description/download/get-symbol-description-1.0.0.tgz#7fdb81c900101fbd564dd5f1a30af5aadc1e58d6"
1169 | integrity sha1-f9uByQAQH71WTdXxowr1qtweWNY=
1170 | dependencies:
1171 | call-bind "^1.0.2"
1172 | get-intrinsic "^1.1.1"
1173 |
1174 | glob-parent@^5.1.2, glob-parent@~5.1.2:
1175 | version "5.1.2"
1176 | resolved "https://registry.npmmirror.com/glob-parent/download/glob-parent-5.1.2.tgz?cache=0&sync_timestamp=1632953697891&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fglob-parent%2Fdownload%2Fglob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4"
1177 | integrity sha1-hpgyxYA0/mikCTwX3BXoNA2EAcQ=
1178 | dependencies:
1179 | is-glob "^4.0.1"
1180 |
1181 | glob-parent@^6.0.1:
1182 | version "6.0.2"
1183 | resolved "https://registry.npmmirror.com/glob-parent/download/glob-parent-6.0.2.tgz?cache=0&sync_timestamp=1632953697891&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fglob-parent%2Fdownload%2Fglob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3"
1184 | integrity sha1-bSN9mQg5UMeSkPJMdkKj3poo+eM=
1185 | dependencies:
1186 | is-glob "^4.0.3"
1187 |
1188 | glob@^7.0.0, glob@^7.1.3:
1189 | version "7.2.0"
1190 | resolved "https://registry.npmmirror.com/glob/download/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023"
1191 | integrity sha1-0VU1r3cy4C6Uj0xBYovZECk/YCM=
1192 | dependencies:
1193 | fs.realpath "^1.0.0"
1194 | inflight "^1.0.4"
1195 | inherits "2"
1196 | minimatch "^3.0.4"
1197 | once "^1.3.0"
1198 | path-is-absolute "^1.0.0"
1199 |
1200 | globals@^13.6.0, globals@^13.9.0:
1201 | version "13.12.0"
1202 | resolved "https://registry.npmmirror.com/globals/download/globals-13.12.0.tgz?cache=0&sync_timestamp=1635390798667&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fglobals%2Fdownload%2Fglobals-13.12.0.tgz#4d733760304230a0082ed96e21e5c565f898089e"
1203 | integrity sha1-TXM3YDBCMKAILtluIeXFZfiYCJ4=
1204 | dependencies:
1205 | type-fest "^0.20.2"
1206 |
1207 | globby@^11.0.1, globby@^11.0.4:
1208 | version "11.0.4"
1209 | resolved "https://registry.nlark.com/globby/download/globby-11.0.4.tgz#2cbaff77c2f2a62e71e9b2813a67b97a3a3001a5"
1210 | integrity sha1-LLr/d8Lypi5x6bKBOme5ejowAaU=
1211 | dependencies:
1212 | array-union "^2.1.0"
1213 | dir-glob "^3.0.1"
1214 | fast-glob "^3.1.1"
1215 | ignore "^5.1.4"
1216 | merge2 "^1.3.0"
1217 | slash "^3.0.0"
1218 |
1219 | graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4:
1220 | version "4.2.8"
1221 | resolved "https://registry.npmmirror.com/graceful-fs/download/graceful-fs-4.2.8.tgz#e412b8d33f5e006593cbd3cee6df9f2cebbe802a"
1222 | integrity sha1-5BK40z9eAGWTy9PO5t+fLOu+gCo=
1223 |
1224 | has-bigints@^1.0.1:
1225 | version "1.0.1"
1226 | resolved "https://registry.nlark.com/has-bigints/download/has-bigints-1.0.1.tgz#64fe6acb020673e3b78db035a5af69aa9d07b113"
1227 | integrity sha1-ZP5qywIGc+O3jbA1pa9pqp0HsRM=
1228 |
1229 | has-flag@^3.0.0:
1230 | version "3.0.0"
1231 | resolved "https://registry.nlark.com/has-flag/download/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd"
1232 | integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0=
1233 |
1234 | has-flag@^4.0.0:
1235 | version "4.0.0"
1236 | resolved "https://registry.nlark.com/has-flag/download/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b"
1237 | integrity sha1-lEdx/ZyByBJlxNaUGGDaBrtZR5s=
1238 |
1239 | has-symbols@^1.0.1, has-symbols@^1.0.2:
1240 | version "1.0.2"
1241 | resolved "https://registry.nlark.com/has-symbols/download/has-symbols-1.0.2.tgz#165d3070c00309752a1236a479331e3ac56f1423"
1242 | integrity sha1-Fl0wcMADCXUqEjakeTMeOsVvFCM=
1243 |
1244 | has-tostringtag@^1.0.0:
1245 | version "1.0.0"
1246 | resolved "https://registry.nlark.com/has-tostringtag/download/has-tostringtag-1.0.0.tgz#7e133818a7d394734f941e73c3d3f9291e658b25"
1247 | integrity sha1-fhM4GKfTlHNPlB5zw9P5KR5liyU=
1248 | dependencies:
1249 | has-symbols "^1.0.2"
1250 |
1251 | has@^1.0.3:
1252 | version "1.0.3"
1253 | resolved "https://registry.npm.taobao.org/has/download/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796"
1254 | integrity sha1-ci18v8H2qoJB8W3YFOAR4fQeh5Y=
1255 | dependencies:
1256 | function-bind "^1.1.1"
1257 |
1258 | hex-color-regex@^1.1.0:
1259 | version "1.1.0"
1260 | resolved "https://registry.npm.taobao.org/hex-color-regex/download/hex-color-regex-1.1.0.tgz#4c06fccb4602fe2602b3c93df82d7e7dbf1a8a8e"
1261 | integrity sha1-TAb8y0YC/iYCs8k9+C1+fb8aio4=
1262 |
1263 | hsl-regex@^1.0.0:
1264 | version "1.0.0"
1265 | resolved "https://registry.npm.taobao.org/hsl-regex/download/hsl-regex-1.0.0.tgz#d49330c789ed819e276a4c0d272dffa30b18fe6e"
1266 | integrity sha1-1JMwx4ntgZ4nakwNJy3/owsY/m4=
1267 |
1268 | hsla-regex@^1.0.0:
1269 | version "1.0.0"
1270 | resolved "https://registry.npm.taobao.org/hsla-regex/download/hsla-regex-1.0.0.tgz#c1ce7a3168c8c6614033a4b5f7877f3b225f9c38"
1271 | integrity sha1-wc56MWjIxmFAM6S194d/OyJfnDg=
1272 |
1273 | html-tags@^3.1.0:
1274 | version "3.1.0"
1275 | resolved "https://registry.npm.taobao.org/html-tags/download/html-tags-3.1.0.tgz#7b5e6f7e665e9fb41f30007ed9e0d41e97fb2140"
1276 | integrity sha1-e15vfmZen7QfMAB+2eDUHpf7IUA=
1277 |
1278 | ignore@^4.0.6:
1279 | version "4.0.6"
1280 | resolved "https://registry.npmmirror.com/ignore/download/ignore-4.0.6.tgz?cache=0&sync_timestamp=1635926632542&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fignore%2Fdownload%2Fignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc"
1281 | integrity sha1-dQ49tYYgh7RzfrrIIH/9HvJ7Jfw=
1282 |
1283 | ignore@^5.1.1, ignore@^5.1.4, ignore@^5.1.8:
1284 | version "5.1.9"
1285 | resolved "https://registry.npmmirror.com/ignore/download/ignore-5.1.9.tgz?cache=0&sync_timestamp=1635926632542&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fignore%2Fdownload%2Fignore-5.1.9.tgz#9ec1a5cbe8e1446ec60d4420060d43aa6e7382fb"
1286 | integrity sha1-nsGly+jhRG7GDUQgBg1Dqm5zgvs=
1287 |
1288 | immutable@^4.0.0:
1289 | version "4.0.0"
1290 | resolved "https://registry.npmmirror.com/immutable/download/immutable-4.0.0.tgz?cache=0&sync_timestamp=1633650938783&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fimmutable%2Fdownload%2Fimmutable-4.0.0.tgz#b86f78de6adef3608395efb269a91462797e2c23"
1291 | integrity sha1-uG943mre82CDle+yaakUYnl+LCM=
1292 |
1293 | import-cwd@^3.0.0:
1294 | version "3.0.0"
1295 | resolved "https://registry.npm.taobao.org/import-cwd/download/import-cwd-3.0.0.tgz#20845547718015126ea9b3676b7592fb8bd4cf92"
1296 | integrity sha1-IIRVR3GAFRJuqbNna3WS+4vUz5I=
1297 | dependencies:
1298 | import-from "^3.0.0"
1299 |
1300 | import-fresh@^3.0.0, import-fresh@^3.2.1:
1301 | version "3.3.0"
1302 | resolved "https://registry.npm.taobao.org/import-fresh/download/import-fresh-3.3.0.tgz?cache=0&sync_timestamp=1608469485280&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fimport-fresh%2Fdownload%2Fimport-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b"
1303 | integrity sha1-NxYsJfy566oublPVtNiM4X2eDCs=
1304 | dependencies:
1305 | parent-module "^1.0.0"
1306 | resolve-from "^4.0.0"
1307 |
1308 | import-from@^3.0.0:
1309 | version "3.0.0"
1310 | resolved "https://registry.nlark.com/import-from/download/import-from-3.0.0.tgz#055cfec38cd5a27d8057ca51376d7d3bf0891966"
1311 | integrity sha1-BVz+w4zVon2AV8pRN219O/CJGWY=
1312 | dependencies:
1313 | resolve-from "^5.0.0"
1314 |
1315 | imurmurhash@^0.1.4:
1316 | version "0.1.4"
1317 | resolved "https://registry.nlark.com/imurmurhash/download/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea"
1318 | integrity sha1-khi5srkoojixPcT7a21XbyMUU+o=
1319 |
1320 | indent-string@^4.0.0:
1321 | version "4.0.0"
1322 | resolved "https://registry.nlark.com/indent-string/download/indent-string-4.0.0.tgz?cache=0&sync_timestamp=1622604582006&other_urls=https%3A%2F%2Fregistry.nlark.com%2Findent-string%2Fdownload%2Findent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251"
1323 | integrity sha1-Yk+PRJfWGbLZdoUx1Y9BIoVNclE=
1324 |
1325 | inflight@^1.0.4:
1326 | version "1.0.6"
1327 | resolved "https://registry.npm.taobao.org/inflight/download/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"
1328 | integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=
1329 | dependencies:
1330 | once "^1.3.0"
1331 | wrappy "1"
1332 |
1333 | inherits@2:
1334 | version "2.0.4"
1335 | resolved "https://registry.npm.taobao.org/inherits/download/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
1336 | integrity sha1-D6LGT5MpF8NDOg3tVTY6rjdBa3w=
1337 |
1338 | internal-slot@^1.0.3:
1339 | version "1.0.3"
1340 | resolved "https://registry.nlark.com/internal-slot/download/internal-slot-1.0.3.tgz#7347e307deeea2faac2ac6205d4bc7d34967f59c"
1341 | integrity sha1-c0fjB97uovqsKsYgXUvH00ln9Zw=
1342 | dependencies:
1343 | get-intrinsic "^1.1.0"
1344 | has "^1.0.3"
1345 | side-channel "^1.0.4"
1346 |
1347 | is-arrayish@^0.2.1:
1348 | version "0.2.1"
1349 | resolved "https://registry.npm.taobao.org/is-arrayish/download/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d"
1350 | integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=
1351 |
1352 | is-arrayish@^0.3.1:
1353 | version "0.3.2"
1354 | resolved "https://registry.npm.taobao.org/is-arrayish/download/is-arrayish-0.3.2.tgz#4574a2ae56f7ab206896fb431eaeed066fdf8f03"
1355 | integrity sha1-RXSirlb3qyBolvtDHq7tBm/fjwM=
1356 |
1357 | is-bigint@^1.0.1:
1358 | version "1.0.4"
1359 | resolved "https://registry.nlark.com/is-bigint/download/is-bigint-1.0.4.tgz?cache=0&sync_timestamp=1628747504782&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fis-bigint%2Fdownload%2Fis-bigint-1.0.4.tgz#08147a1875bc2b32005d41ccd8291dffc6691df3"
1360 | integrity sha1-CBR6GHW8KzIAXUHM2Ckd/8ZpHfM=
1361 | dependencies:
1362 | has-bigints "^1.0.1"
1363 |
1364 | is-binary-path@~2.1.0:
1365 | version "2.1.0"
1366 | resolved "https://registry.npm.taobao.org/is-binary-path/download/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09"
1367 | integrity sha1-6h9/O4DwZCNug0cPhsCcJU+0Wwk=
1368 | dependencies:
1369 | binary-extensions "^2.0.0"
1370 |
1371 | is-boolean-object@^1.1.0:
1372 | version "1.1.2"
1373 | resolved "https://registry.nlark.com/is-boolean-object/download/is-boolean-object-1.1.2.tgz#5c6dc200246dd9321ae4b885a114bb1f75f63719"
1374 | integrity sha1-XG3CACRt2TIa5LiFoRS7H3X2Nxk=
1375 | dependencies:
1376 | call-bind "^1.0.2"
1377 | has-tostringtag "^1.0.0"
1378 |
1379 | is-callable@^1.1.4, is-callable@^1.2.4:
1380 | version "1.2.4"
1381 | resolved "https://registry.nlark.com/is-callable/download/is-callable-1.2.4.tgz#47301d58dd0259407865547853df6d61fe471945"
1382 | integrity sha1-RzAdWN0CWUB4ZVR4U99tYf5HGUU=
1383 |
1384 | is-color-stop@^1.1.0:
1385 | version "1.1.0"
1386 | resolved "https://registry.npm.taobao.org/is-color-stop/download/is-color-stop-1.1.0.tgz#cfff471aee4dd5c9e158598fbe12967b5cdad345"
1387 | integrity sha1-z/9HGu5N1cnhWFmPvhKWe1za00U=
1388 | dependencies:
1389 | css-color-names "^0.0.4"
1390 | hex-color-regex "^1.1.0"
1391 | hsl-regex "^1.0.0"
1392 | hsla-regex "^1.0.0"
1393 | rgb-regex "^1.0.1"
1394 | rgba-regex "^1.0.0"
1395 |
1396 | is-core-module@^2.2.0, is-core-module@^2.8.0:
1397 | version "2.8.0"
1398 | resolved "https://registry.npmmirror.com/is-core-module/download/is-core-module-2.8.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fis-core-module%2Fdownload%2Fis-core-module-2.8.0.tgz#0321336c3d0925e497fd97f5d95cb114a5ccd548"
1399 | integrity sha1-AyEzbD0JJeSX/Zf12VyxFKXM1Ug=
1400 | dependencies:
1401 | has "^1.0.3"
1402 |
1403 | is-date-object@^1.0.1:
1404 | version "1.0.5"
1405 | resolved "https://registry.nlark.com/is-date-object/download/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f"
1406 | integrity sha1-CEHVU25yTCVZe/bqYuG9OCmN8x8=
1407 | dependencies:
1408 | has-tostringtag "^1.0.0"
1409 |
1410 | is-extglob@^2.1.1:
1411 | version "2.1.1"
1412 | resolved "https://registry.npm.taobao.org/is-extglob/download/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2"
1413 | integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=
1414 |
1415 | is-fullwidth-code-point@^3.0.0:
1416 | version "3.0.0"
1417 | resolved "https://registry.nlark.com/is-fullwidth-code-point/download/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d"
1418 | integrity sha1-8Rb4Bk/pCz94RKOJl8C3UFEmnx0=
1419 |
1420 | is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1:
1421 | version "4.0.3"
1422 | resolved "https://registry.npmmirror.com/is-glob/download/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084"
1423 | integrity sha1-ZPYeQsu7LuwgcanawLKLoeZdUIQ=
1424 | dependencies:
1425 | is-extglob "^2.1.1"
1426 |
1427 | is-negative-zero@^2.0.1:
1428 | version "2.0.1"
1429 | resolved "https://registry.nlark.com/is-negative-zero/download/is-negative-zero-2.0.1.tgz#3de746c18dda2319241a53675908d8f766f11c24"
1430 | integrity sha1-PedGwY3aIxkkGlNnWQjY92bxHCQ=
1431 |
1432 | is-number-object@^1.0.4:
1433 | version "1.0.6"
1434 | resolved "https://registry.nlark.com/is-number-object/download/is-number-object-1.0.6.tgz#6a7aaf838c7f0686a50b4553f7e54a96494e89f0"
1435 | integrity sha1-anqvg4x/BoalC0VT9+VKlklOifA=
1436 | dependencies:
1437 | has-tostringtag "^1.0.0"
1438 |
1439 | is-number@^7.0.0:
1440 | version "7.0.0"
1441 | resolved "https://registry.npm.taobao.org/is-number/download/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b"
1442 | integrity sha1-dTU0W4lnNNX4DE0GxQlVUnoU8Ss=
1443 |
1444 | is-path-cwd@^2.2.0:
1445 | version "2.2.0"
1446 | resolved "https://registry.nlark.com/is-path-cwd/download/is-path-cwd-2.2.0.tgz?cache=0&sync_timestamp=1628686555851&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fis-path-cwd%2Fdownload%2Fis-path-cwd-2.2.0.tgz#67d43b82664a7b5191fd9119127eb300048a9fdb"
1447 | integrity sha1-Z9Q7gmZKe1GR/ZEZEn6zAASKn9s=
1448 |
1449 | is-path-inside@^3.0.2:
1450 | version "3.0.3"
1451 | resolved "https://registry.nlark.com/is-path-inside/download/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283"
1452 | integrity sha1-0jE2LlOgf/Kw4Op/7QSRYf/RYoM=
1453 |
1454 | is-regex@^1.1.4:
1455 | version "1.1.4"
1456 | resolved "https://registry.nlark.com/is-regex/download/is-regex-1.1.4.tgz?cache=0&sync_timestamp=1628221905423&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fis-regex%2Fdownload%2Fis-regex-1.1.4.tgz#eef5663cd59fa4c0ae339505323df6854bb15958"
1457 | integrity sha1-7vVmPNWfpMCuM5UFMj32hUuxWVg=
1458 | dependencies:
1459 | call-bind "^1.0.2"
1460 | has-tostringtag "^1.0.0"
1461 |
1462 | is-shared-array-buffer@^1.0.1:
1463 | version "1.0.1"
1464 | resolved "https://registry.npmmirror.com/is-shared-array-buffer/download/is-shared-array-buffer-1.0.1.tgz#97b0c85fbdacb59c9c446fe653b82cf2b5b7cfe6"
1465 | integrity sha1-l7DIX72stZycRG/mU7gs8rW3z+Y=
1466 |
1467 | is-string@^1.0.5, is-string@^1.0.7:
1468 | version "1.0.7"
1469 | resolved "https://registry.nlark.com/is-string/download/is-string-1.0.7.tgz#0dd12bf2006f255bb58f695110eff7491eebc0fd"
1470 | integrity sha1-DdEr8gBvJVu1j2lREO/3SR7rwP0=
1471 | dependencies:
1472 | has-tostringtag "^1.0.0"
1473 |
1474 | is-symbol@^1.0.2, is-symbol@^1.0.3:
1475 | version "1.0.4"
1476 | resolved "https://registry.nlark.com/is-symbol/download/is-symbol-1.0.4.tgz#a6dac93b635b063ca6872236de88910a57af139c"
1477 | integrity sha1-ptrJO2NbBjymhyI23oiRClevE5w=
1478 | dependencies:
1479 | has-symbols "^1.0.2"
1480 |
1481 | is-weakref@^1.0.1:
1482 | version "1.0.1"
1483 | resolved "https://registry.nlark.com/is-weakref/download/is-weakref-1.0.1.tgz#842dba4ec17fa9ac9850df2d6efbc1737274f2a2"
1484 | integrity sha1-hC26TsF/qayYUN8tbvvBc3J08qI=
1485 | dependencies:
1486 | call-bind "^1.0.0"
1487 |
1488 | isexe@^2.0.0:
1489 | version "2.0.0"
1490 | resolved "https://registry.npm.taobao.org/isexe/download/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
1491 | integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=
1492 |
1493 | js-tokens@^4.0.0:
1494 | version "4.0.0"
1495 | resolved "https://registry.nlark.com/js-tokens/download/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499"
1496 | integrity sha1-GSA/tZmR35jjoocFDUZHzerzJJk=
1497 |
1498 | js-yaml@^3.13.1:
1499 | version "3.14.1"
1500 | resolved "https://registry.nlark.com/js-yaml/download/js-yaml-3.14.1.tgz?cache=0&sync_timestamp=1622604474266&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fjs-yaml%2Fdownload%2Fjs-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537"
1501 | integrity sha1-2ugS/bOCX6MGYJqHFzg8UMNqBTc=
1502 | dependencies:
1503 | argparse "^1.0.7"
1504 | esprima "^4.0.0"
1505 |
1506 | json-parse-even-better-errors@^2.3.0:
1507 | version "2.3.1"
1508 | resolved "https://registry.npm.taobao.org/json-parse-even-better-errors/download/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d"
1509 | integrity sha1-fEeAWpQxmSjgV3dAXcEuH3pO4C0=
1510 |
1511 | json-schema-traverse@^0.4.1:
1512 | version "0.4.1"
1513 | resolved "https://registry.nlark.com/json-schema-traverse/download/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660"
1514 | integrity sha1-afaofZUTq4u4/mO9sJecRI5oRmA=
1515 |
1516 | json-schema-traverse@^1.0.0:
1517 | version "1.0.0"
1518 | resolved "https://registry.nlark.com/json-schema-traverse/download/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2"
1519 | integrity sha1-rnvLNlard6c7pcSb9lTzjmtoYOI=
1520 |
1521 | json-stable-stringify-without-jsonify@^1.0.1:
1522 | version "1.0.1"
1523 | resolved "https://registry.nlark.com/json-stable-stringify-without-jsonify/download/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651"
1524 | integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=
1525 |
1526 | json5@^1.0.1:
1527 | version "1.0.1"
1528 | resolved "https://registry.nlark.com/json5/download/json5-1.0.1.tgz?cache=0&sync_timestamp=1622604475200&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fjson5%2Fdownload%2Fjson5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe"
1529 | integrity sha1-d5+wAYYE+oVOrL9iUhgNg1Q+Pb4=
1530 | dependencies:
1531 | minimist "^1.2.0"
1532 |
1533 | jsonfile@^6.0.1:
1534 | version "6.1.0"
1535 | resolved "https://registry.npm.taobao.org/jsonfile/download/jsonfile-6.1.0.tgz?cache=0&sync_timestamp=1604161917513&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fjsonfile%2Fdownload%2Fjsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae"
1536 | integrity sha1-vFWyY0eTxnnsZAMJTrE2mKbsCq4=
1537 | dependencies:
1538 | universalify "^2.0.0"
1539 | optionalDependencies:
1540 | graceful-fs "^4.1.6"
1541 |
1542 | levn@^0.4.1:
1543 | version "0.4.1"
1544 | resolved "https://registry.nlark.com/levn/download/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade"
1545 | integrity sha1-rkViwAdHO5MqYgDUAyaN0v/8at4=
1546 | dependencies:
1547 | prelude-ls "^1.2.1"
1548 | type-check "~0.4.0"
1549 |
1550 | lilconfig@^2.0.3:
1551 | version "2.0.4"
1552 | resolved "https://registry.npmmirror.com/lilconfig/download/lilconfig-2.0.4.tgz#f4507d043d7058b380b6a8f5cb7bcd4b34cee082"
1553 | integrity sha1-9FB9BD1wWLOAtqj1y3vNSzTO4II=
1554 |
1555 | lines-and-columns@^1.1.6:
1556 | version "1.2.4"
1557 | resolved "https://registry.npmmirror.com/lines-and-columns/download/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632"
1558 | integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==
1559 |
1560 | locate-path@^2.0.0:
1561 | version "2.0.0"
1562 | resolved "https://registry.nlark.com/locate-path/download/locate-path-2.0.0.tgz?cache=0&sync_timestamp=1629895724478&other_urls=https%3A%2F%2Fregistry.nlark.com%2Flocate-path%2Fdownload%2Flocate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e"
1563 | integrity sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=
1564 | dependencies:
1565 | p-locate "^2.0.0"
1566 | path-exists "^3.0.0"
1567 |
1568 | lodash.merge@^4.6.2:
1569 | version "4.6.2"
1570 | resolved "https://registry.nlark.com/lodash.merge/download/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a"
1571 | integrity sha1-VYqlO0O2YeGSWgr9+japoQhf5Xo=
1572 |
1573 | lodash.topath@^4.5.2:
1574 | version "4.5.2"
1575 | resolved "https://registry.nlark.com/lodash.topath/download/lodash.topath-4.5.2.tgz#3616351f3bba61994a0931989660bd03254fd009"
1576 | integrity sha1-NhY1Hzu6YZlKCTGYlmC9AyVP0Ak=
1577 |
1578 | lodash.truncate@^4.4.2:
1579 | version "4.4.2"
1580 | resolved "https://registry.nlark.com/lodash.truncate/download/lodash.truncate-4.4.2.tgz#5a350da0b1113b837ecfffd5812cbe58d6eae193"
1581 | integrity sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=
1582 |
1583 | lodash@^4.17.21:
1584 | version "4.17.21"
1585 | resolved "https://registry.npm.taobao.org/lodash/download/lodash-4.17.21.tgz?cache=0&sync_timestamp=1613835860585&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Flodash%2Fdownload%2Flodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"
1586 | integrity sha1-Z5WRxWTDv/quhFTPCz3zcMPWkRw=
1587 |
1588 | lru-cache@^6.0.0:
1589 | version "6.0.0"
1590 | resolved "https://registry.nlark.com/lru-cache/download/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94"
1591 | integrity sha1-bW/mVw69lqr5D8rR2vo7JWbbOpQ=
1592 | dependencies:
1593 | yallist "^4.0.0"
1594 |
1595 | make-error@^1.1.1:
1596 | version "1.3.6"
1597 | resolved "https://registry.nlark.com/make-error/download/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2"
1598 | integrity sha1-LrLjfqm2fEiR9oShOUeZr0hM96I=
1599 |
1600 | merge2@^1.3.0:
1601 | version "1.4.1"
1602 | resolved "https://registry.npm.taobao.org/merge2/download/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae"
1603 | integrity sha1-Q2iJL4hekHRVpv19xVwMnUBJkK4=
1604 |
1605 | micromatch@^4.0.4:
1606 | version "4.0.4"
1607 | resolved "https://registry.npm.taobao.org/micromatch/download/micromatch-4.0.4.tgz?cache=0&sync_timestamp=1618054842871&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmicromatch%2Fdownload%2Fmicromatch-4.0.4.tgz#896d519dfe9db25fce94ceb7a500919bf881ebf9"
1608 | integrity sha1-iW1Rnf6dsl/OlM63pQCRm/iB6/k=
1609 | dependencies:
1610 | braces "^3.0.1"
1611 | picomatch "^2.2.3"
1612 |
1613 | minimatch@^3.0.4:
1614 | version "3.0.4"
1615 | resolved "https://registry.npm.taobao.org/minimatch/download/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083"
1616 | integrity sha1-UWbihkV/AzBgZL5Ul+jbsMPTIIM=
1617 | dependencies:
1618 | brace-expansion "^1.1.7"
1619 |
1620 | minimist@^1.1.1, minimist@^1.2.0:
1621 | version "1.2.5"
1622 | resolved "https://registry.npm.taobao.org/minimist/download/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602"
1623 | integrity sha1-Z9ZgFLZqaoqqDAg8X9WN9OTpdgI=
1624 |
1625 | miniprogram-api-typings@^3.4.4:
1626 | version "3.4.4"
1627 | resolved "https://registry.npmmirror.com/miniprogram-api-typings/download/miniprogram-api-typings-3.4.4.tgz#a68ce1f10ff2479b521cd4af276a23041b90f2f6"
1628 | integrity sha1-pozh8Q/yR5tSHNSvJ2ojBBuQ8vY=
1629 |
1630 | modern-normalize@^1.1.0:
1631 | version "1.1.0"
1632 | resolved "https://registry.nlark.com/modern-normalize/download/modern-normalize-1.1.0.tgz#da8e80140d9221426bd4f725c6e11283d34f90b7"
1633 | integrity sha1-2o6AFA2SIUJr1PclxuESg9NPkLc=
1634 |
1635 | ms@2.0.0:
1636 | version "2.0.0"
1637 | resolved "https://registry.npmmirror.com/ms/download/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
1638 | integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=
1639 |
1640 | ms@2.1.2:
1641 | version "2.1.2"
1642 | resolved "https://registry.npmmirror.com/ms/download/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"
1643 | integrity sha1-0J0fNXtEP0kzgqjrPM0YOHKuYAk=
1644 |
1645 | ms@^2.1.1:
1646 | version "2.1.3"
1647 | resolved "https://registry.npmmirror.com/ms/download/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2"
1648 | integrity sha1-V0yBOM4dK1hh8LRFedut1gxmFbI=
1649 |
1650 | nanoid@^3.1.30:
1651 | version "3.1.30"
1652 | resolved "https://registry.npmmirror.com/nanoid/download/nanoid-3.1.30.tgz?cache=0&sync_timestamp=1634166192601&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fnanoid%2Fdownload%2Fnanoid-3.1.30.tgz#63f93cc548d2a113dc5dfbc63bfa09e2b9b64362"
1653 | integrity sha1-Y/k8xUjSoRPcXfvGO/oJ4rm2Q2I=
1654 |
1655 | natural-compare@^1.4.0:
1656 | version "1.4.0"
1657 | resolved "https://registry.nlark.com/natural-compare/download/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7"
1658 | integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=
1659 |
1660 | node-emoji@^1.11.0:
1661 | version "1.11.0"
1662 | resolved "https://registry.nlark.com/node-emoji/download/node-emoji-1.11.0.tgz#69a0150e6946e2f115e9d7ea4df7971e2628301c"
1663 | integrity sha1-aaAVDmlG4vEV6dfqTfeXHiYoMBw=
1664 | dependencies:
1665 | lodash "^4.17.21"
1666 |
1667 | node-releases@^2.0.1:
1668 | version "2.0.1"
1669 | resolved "https://registry.npmmirror.com/node-releases/download/node-releases-2.0.1.tgz#3d1d395f204f1f2f29a54358b9fb678765ad2fc5"
1670 | integrity sha1-PR05XyBPHy8ppUNYuftnh2WtL8U=
1671 |
1672 | normalize-path@^3.0.0, normalize-path@~3.0.0:
1673 | version "3.0.0"
1674 | resolved "https://registry.npm.taobao.org/normalize-path/download/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65"
1675 | integrity sha1-Dc1p/yOhybEf0JeDFmRKA4ghamU=
1676 |
1677 | normalize-range@^0.1.2:
1678 | version "0.1.2"
1679 | resolved "https://registry.npm.taobao.org/normalize-range/download/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942"
1680 | integrity sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=
1681 |
1682 | object-hash@^2.2.0:
1683 | version "2.2.0"
1684 | resolved "https://registry.nlark.com/object-hash/download/object-hash-2.2.0.tgz#5ad518581eefc443bd763472b8ff2e9c2c0d54a5"
1685 | integrity sha1-WtUYWB7vxEO9djRyuP8unCwNVKU=
1686 |
1687 | object-inspect@^1.11.0, object-inspect@^1.9.0:
1688 | version "1.11.0"
1689 | resolved "https://registry.nlark.com/object-inspect/download/object-inspect-1.11.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fobject-inspect%2Fdownload%2Fobject-inspect-1.11.0.tgz#9dceb146cedd4148a0d9e51ab88d34cf509922b1"
1690 | integrity sha1-nc6xRs7dQUig2eUauI00z1CZIrE=
1691 |
1692 | object-keys@^1.0.12, object-keys@^1.1.1:
1693 | version "1.1.1"
1694 | resolved "https://registry.nlark.com/object-keys/download/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e"
1695 | integrity sha1-HEfyct8nfzsdrwYWd9nILiMixg4=
1696 |
1697 | object.assign@^4.1.2:
1698 | version "4.1.2"
1699 | resolved "https://registry.nlark.com/object.assign/download/object.assign-4.1.2.tgz#0ed54a342eceb37b38ff76eb831a0e788cb63940"
1700 | integrity sha1-DtVKNC7Os3s4/3brgxoOeIy2OUA=
1701 | dependencies:
1702 | call-bind "^1.0.0"
1703 | define-properties "^1.1.3"
1704 | has-symbols "^1.0.1"
1705 | object-keys "^1.1.1"
1706 |
1707 | object.values@^1.1.5:
1708 | version "1.1.5"
1709 | resolved "https://registry.npmmirror.com/object.values/download/object.values-1.1.5.tgz#959f63e3ce9ef108720333082131e4a459b716ac"
1710 | integrity sha1-lZ9j486e8QhyAzMIITHkpFm3Fqw=
1711 | dependencies:
1712 | call-bind "^1.0.2"
1713 | define-properties "^1.1.3"
1714 | es-abstract "^1.19.1"
1715 |
1716 | once@^1.3.0:
1717 | version "1.4.0"
1718 | resolved "https://registry.npm.taobao.org/once/download/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
1719 | integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E=
1720 | dependencies:
1721 | wrappy "1"
1722 |
1723 | optionator@^0.9.1:
1724 | version "0.9.1"
1725 | resolved "https://registry.nlark.com/optionator/download/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499"
1726 | integrity sha1-TyNqY3Pa4FZqbUPhMmZ09QwpFJk=
1727 | dependencies:
1728 | deep-is "^0.1.3"
1729 | fast-levenshtein "^2.0.6"
1730 | levn "^0.4.1"
1731 | prelude-ls "^1.2.1"
1732 | type-check "^0.4.0"
1733 | word-wrap "^1.2.3"
1734 |
1735 | p-limit@^1.1.0:
1736 | version "1.3.0"
1737 | resolved "https://registry.nlark.com/p-limit/download/p-limit-1.3.0.tgz?cache=0&sync_timestamp=1628812766275&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fp-limit%2Fdownload%2Fp-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8"
1738 | integrity sha1-uGvV8MJWkJEcdZD8v8IBDVSzzLg=
1739 | dependencies:
1740 | p-try "^1.0.0"
1741 |
1742 | p-locate@^2.0.0:
1743 | version "2.0.0"
1744 | resolved "https://registry.nlark.com/p-locate/download/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43"
1745 | integrity sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=
1746 | dependencies:
1747 | p-limit "^1.1.0"
1748 |
1749 | p-map@^4.0.0:
1750 | version "4.0.0"
1751 | resolved "https://registry.npmmirror.com/p-map/download/p-map-4.0.0.tgz?cache=0&sync_timestamp=1635931916150&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fp-map%2Fdownload%2Fp-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b"
1752 | integrity sha1-uy+Vpe2i7BaOySdOBqdHw+KQTSs=
1753 | dependencies:
1754 | aggregate-error "^3.0.0"
1755 |
1756 | p-try@^1.0.0:
1757 | version "1.0.0"
1758 | resolved "https://registry.npmmirror.com/p-try/download/p-try-1.0.0.tgz?cache=0&sync_timestamp=1633364462890&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fp-try%2Fdownload%2Fp-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3"
1759 | integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=
1760 |
1761 | parent-module@^1.0.0:
1762 | version "1.0.1"
1763 | resolved "https://registry.npmmirror.com/parent-module/download/parent-module-1.0.1.tgz?cache=0&sync_timestamp=1633337513286&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fparent-module%2Fdownload%2Fparent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2"
1764 | integrity sha1-aR0nCeeMefrjoVZiJFLQB2LKqqI=
1765 | dependencies:
1766 | callsites "^3.0.0"
1767 |
1768 | parse-json@^5.0.0:
1769 | version "5.2.0"
1770 | resolved "https://registry.npmmirror.com/parse-json/download/parse-json-5.2.0.tgz?cache=0&sync_timestamp=1637475717072&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fparse-json%2Fdownload%2Fparse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd"
1771 | integrity sha1-x2/Gbe5UIxyWKyK8yKcs8vmXU80=
1772 | dependencies:
1773 | "@babel/code-frame" "^7.0.0"
1774 | error-ex "^1.3.1"
1775 | json-parse-even-better-errors "^2.3.0"
1776 | lines-and-columns "^1.1.6"
1777 |
1778 | path-exists@^3.0.0:
1779 | version "3.0.0"
1780 | resolved "https://registry.nlark.com/path-exists/download/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515"
1781 | integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=
1782 |
1783 | path-is-absolute@^1.0.0:
1784 | version "1.0.1"
1785 | resolved "https://registry.npm.taobao.org/path-is-absolute/download/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
1786 | integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18=
1787 |
1788 | path-key@^3.1.0:
1789 | version "3.1.1"
1790 | resolved "https://registry.npm.taobao.org/path-key/download/path-key-3.1.1.tgz?cache=0&sync_timestamp=1617971675964&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpath-key%2Fdownload%2Fpath-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375"
1791 | integrity sha1-WB9q3mWMu6ZaDTOA3ndTKVBU83U=
1792 |
1793 | path-parse@^1.0.6:
1794 | version "1.0.7"
1795 | resolved "https://registry.nlark.com/path-parse/download/path-parse-1.0.7.tgz?cache=0&sync_timestamp=1622604541821&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpath-parse%2Fdownload%2Fpath-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735"
1796 | integrity sha1-+8EUtgykKzDZ2vWFjkvWi77bZzU=
1797 |
1798 | path-type@^4.0.0:
1799 | version "4.0.0"
1800 | resolved "https://registry.npm.taobao.org/path-type/download/path-type-4.0.0.tgz?cache=0&sync_timestamp=1611752107592&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpath-type%2Fdownload%2Fpath-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b"
1801 | integrity sha1-hO0BwKe6OAr+CdkKjBgNzZ0DBDs=
1802 |
1803 | picocolors@^1.0.0:
1804 | version "1.0.0"
1805 | resolved "https://registry.npmmirror.com/picocolors/download/picocolors-1.0.0.tgz?cache=0&sync_timestamp=1634093442271&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fpicocolors%2Fdownload%2Fpicocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c"
1806 | integrity sha1-y1vcdP8/UYkiNur3nWi8RFZKuBw=
1807 |
1808 | picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3:
1809 | version "2.3.0"
1810 | resolved "https://registry.nlark.com/picomatch/download/picomatch-2.3.0.tgz?cache=0&sync_timestamp=1621648246651&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpicomatch%2Fdownload%2Fpicomatch-2.3.0.tgz#f1f061de8f6a4bf022892e2d128234fb98302972"
1811 | integrity sha1-8fBh3o9qS/AiiS4tEoI0+5gwKXI=
1812 |
1813 | pkg-dir@^2.0.0:
1814 | version "2.0.0"
1815 | resolved "https://registry.npmmirror.com/pkg-dir/download/pkg-dir-2.0.0.tgz?cache=0&sync_timestamp=1633498133295&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fpkg-dir%2Fdownload%2Fpkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b"
1816 | integrity sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=
1817 | dependencies:
1818 | find-up "^2.1.0"
1819 |
1820 | postcss-js@^3.0.3:
1821 | version "3.0.3"
1822 | resolved "https://registry.npm.taobao.org/postcss-js/download/postcss-js-3.0.3.tgz#2f0bd370a2e8599d45439f6970403b5873abda33"
1823 | integrity sha1-LwvTcKLoWZ1FQ59pcEA7WHOr2jM=
1824 | dependencies:
1825 | camelcase-css "^2.0.1"
1826 | postcss "^8.1.6"
1827 |
1828 | postcss-load-config@^3.1.0:
1829 | version "3.1.0"
1830 | resolved "https://registry.npmmirror.com/postcss-load-config/download/postcss-load-config-3.1.0.tgz#d39c47091c4aec37f50272373a6a648ef5e97829"
1831 | integrity sha1-05xHCRxK7Df1AnI3OmpkjvXpeCk=
1832 | dependencies:
1833 | import-cwd "^3.0.0"
1834 | lilconfig "^2.0.3"
1835 | yaml "^1.10.2"
1836 |
1837 | postcss-nested@5.0.6:
1838 | version "5.0.6"
1839 | resolved "https://registry.nlark.com/postcss-nested/download/postcss-nested-5.0.6.tgz?cache=0&sync_timestamp=1627468102377&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-nested%2Fdownload%2Fpostcss-nested-5.0.6.tgz#466343f7fc8d3d46af3e7dba3fcd47d052a945bc"
1840 | integrity sha1-RmND9/yNPUavPn26P81H0FKpRbw=
1841 | dependencies:
1842 | postcss-selector-parser "^6.0.6"
1843 |
1844 | postcss-rem-to-responsive-pixel@^5.0.2:
1845 | version "5.0.2"
1846 | resolved "https://registry.npmmirror.com/postcss-rem-to-responsive-pixel/download/postcss-rem-to-responsive-pixel-5.0.2.tgz#8146110d1a94b6ea47c62606bb9187072ed6099c"
1847 | integrity sha512-+HKRI3Fwd/av9CUdsBjWFVivHvN4TDdWG8Tx1NIAF3bDAAug8k0LnGFMqkAbaHDbE6hknd2ogEh9kH69sN9++Q==
1848 |
1849 | postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.6:
1850 | version "6.0.6"
1851 | resolved "https://registry.nlark.com/postcss-selector-parser/download/postcss-selector-parser-6.0.6.tgz?cache=0&sync_timestamp=1620752924836&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-selector-parser%2Fdownload%2Fpostcss-selector-parser-6.0.6.tgz#2c5bba8174ac2f6981ab631a42ab0ee54af332ea"
1852 | integrity sha1-LFu6gXSsL2mBq2MaQqsO5UrzMuo=
1853 | dependencies:
1854 | cssesc "^3.0.0"
1855 | util-deprecate "^1.0.2"
1856 |
1857 | postcss-value-parser@^3.3.0:
1858 | version "3.3.1"
1859 | resolved "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&sync_timestamp=1588083303810&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz#9ff822547e2893213cf1c30efa51ac5fd1ba8281"
1860 | integrity sha1-n/giVH4okyE88cMO+lGsX9G6goE=
1861 |
1862 | postcss-value-parser@^4.1.0:
1863 | version "4.1.0"
1864 | resolved "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-4.1.0.tgz?cache=0&sync_timestamp=1588083303810&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-4.1.0.tgz#443f6a20ced6481a2bda4fa8532a6e55d789a2cb"
1865 | integrity sha1-RD9qIM7WSBor2k+oUypuVdeJoss=
1866 |
1867 | postcss@^8.1.6, postcss@^8.2.1:
1868 | version "8.3.11"
1869 | resolved "https://registry.npmmirror.com/postcss/download/postcss-8.3.11.tgz#c3beca7ea811cd5e1c4a3ec6d2e7599ef1f8f858"
1870 | integrity sha1-w77KfqgRzV4cSj7G0udZnvH4+Fg=
1871 | dependencies:
1872 | nanoid "^3.1.30"
1873 | picocolors "^1.0.0"
1874 | source-map-js "^0.6.2"
1875 |
1876 | postcss@^8.4.4:
1877 | version "8.4.4"
1878 | resolved "https://registry.npmmirror.com/postcss/download/postcss-8.4.4.tgz#d53d4ec6a75fd62557a66bb41978bf47ff0c2869"
1879 | integrity sha512-joU6fBsN6EIer28Lj6GDFoC/5yOZzLCfn0zHAn/MYXI7aPt4m4hK5KC5ovEZXy+lnCjmYIbQWngvju2ddyEr8Q==
1880 | dependencies:
1881 | nanoid "^3.1.30"
1882 | picocolors "^1.0.0"
1883 | source-map-js "^1.0.1"
1884 |
1885 | prelude-ls@^1.2.1:
1886 | version "1.2.1"
1887 | resolved "https://registry.nlark.com/prelude-ls/download/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396"
1888 | integrity sha1-3rxkidem5rDnYRiIzsiAM30xY5Y=
1889 |
1890 | pretty-hrtime@^1.0.3:
1891 | version "1.0.3"
1892 | resolved "https://registry.npm.taobao.org/pretty-hrtime/download/pretty-hrtime-1.0.3.tgz#b7e3ea42435a4c9b2759d99e0f201eb195802ee1"
1893 | integrity sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=
1894 |
1895 | progress@^2.0.0:
1896 | version "2.0.3"
1897 | resolved "https://registry.nlark.com/progress/download/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8"
1898 | integrity sha1-foz42PW48jnBvGi+tOt4Vn1XLvg=
1899 |
1900 | punycode@^2.1.0:
1901 | version "2.1.1"
1902 | resolved "https://registry.nlark.com/punycode/download/punycode-2.1.1.tgz?cache=0&sync_timestamp=1622604519710&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpunycode%2Fdownload%2Fpunycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec"
1903 | integrity sha1-tYsBCsQMIsVldhbI0sLALHv0eew=
1904 |
1905 | purgecss@^4.0.3:
1906 | version "4.0.3"
1907 | resolved "https://registry.npm.taobao.org/purgecss/download/purgecss-4.0.3.tgz#8147b429f9c09db719e05d64908ea8b672913742"
1908 | integrity sha1-gUe0KfnAnbcZ4F1kkI6otnKRN0I=
1909 | dependencies:
1910 | commander "^6.0.0"
1911 | glob "^7.0.0"
1912 | postcss "^8.2.1"
1913 | postcss-selector-parser "^6.0.2"
1914 |
1915 | queue-microtask@^1.2.2:
1916 | version "1.2.3"
1917 | resolved "https://registry.npm.taobao.org/queue-microtask/download/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243"
1918 | integrity sha1-SSkii7xyTfrEPg77BYyve2z7YkM=
1919 |
1920 | quick-lru@^5.1.1:
1921 | version "5.1.1"
1922 | resolved "https://registry.npmmirror.com/quick-lru/download/quick-lru-5.1.1.tgz#366493e6b3e42a3a6885e2e99d18f80fb7a8c932"
1923 | integrity sha1-NmST5rPkKjpoheLpnRj4D7eoyTI=
1924 |
1925 | readdirp@~3.6.0:
1926 | version "3.6.0"
1927 | resolved "https://registry.npm.taobao.org/readdirp/download/readdirp-3.6.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Freaddirp%2Fdownload%2Freaddirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7"
1928 | integrity sha1-dKNwvYVxFuJFspzJc0DNQxoCpsc=
1929 | dependencies:
1930 | picomatch "^2.2.1"
1931 |
1932 | reduce-css-calc@^2.1.8:
1933 | version "2.1.8"
1934 | resolved "https://registry.npm.taobao.org/reduce-css-calc/download/reduce-css-calc-2.1.8.tgz#7ef8761a28d614980dc0c982f772c93f7a99de03"
1935 | integrity sha1-fvh2GijWFJgNwMmC93LJP3qZ3gM=
1936 | dependencies:
1937 | css-unit-converter "^1.1.1"
1938 | postcss-value-parser "^3.3.0"
1939 |
1940 | regexpp@^3.0.0, regexpp@^3.1.0, regexpp@^3.2.0:
1941 | version "3.2.0"
1942 | resolved "https://registry.nlark.com/regexpp/download/regexpp-3.2.0.tgz?cache=0&sync_timestamp=1623669331185&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fregexpp%2Fdownload%2Fregexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2"
1943 | integrity sha1-BCWido2PI7rXDKS5BGH6LxIT4bI=
1944 |
1945 | require-from-string@^2.0.2:
1946 | version "2.0.2"
1947 | resolved "https://registry.nlark.com/require-from-string/download/require-from-string-2.0.2.tgz?cache=0&sync_timestamp=1622605305570&other_urls=https%3A%2F%2Fregistry.nlark.com%2Frequire-from-string%2Fdownload%2Frequire-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909"
1948 | integrity sha1-iaf92TgmEmcxjq/hT5wy5ZjDaQk=
1949 |
1950 | resolve-from@^4.0.0:
1951 | version "4.0.0"
1952 | resolved "https://registry.npm.taobao.org/resolve-from/download/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6"
1953 | integrity sha1-SrzYUq0y3Xuqv+m0DgCjbbXzkuY=
1954 |
1955 | resolve-from@^5.0.0:
1956 | version "5.0.0"
1957 | resolved "https://registry.npm.taobao.org/resolve-from/download/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69"
1958 | integrity sha1-w1IlhD3493bfIcV1V7wIfp39/Gk=
1959 |
1960 | resolve@^1.10.1, resolve@^1.20.0:
1961 | version "1.20.0"
1962 | resolved "https://registry.npm.taobao.org/resolve/download/resolve-1.20.0.tgz?cache=0&sync_timestamp=1613055280179&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fresolve%2Fdownload%2Fresolve-1.20.0.tgz#629a013fb3f70755d6f0b7935cc1c2c5378b1975"
1963 | integrity sha1-YpoBP7P3B1XW8LeTXMHCxTeLGXU=
1964 | dependencies:
1965 | is-core-module "^2.2.0"
1966 | path-parse "^1.0.6"
1967 |
1968 | reusify@^1.0.4:
1969 | version "1.0.4"
1970 | resolved "https://registry.npm.taobao.org/reusify/download/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76"
1971 | integrity sha1-kNo4Kx4SbvwCFG6QhFqI2xKSXXY=
1972 |
1973 | rgb-regex@^1.0.1:
1974 | version "1.0.1"
1975 | resolved "https://registry.npm.taobao.org/rgb-regex/download/rgb-regex-1.0.1.tgz#c0e0d6882df0e23be254a475e8edd41915feaeb1"
1976 | integrity sha1-wODWiC3w4jviVKR16O3UGRX+rrE=
1977 |
1978 | rgba-regex@^1.0.0:
1979 | version "1.0.0"
1980 | resolved "https://registry.npm.taobao.org/rgba-regex/download/rgba-regex-1.0.0.tgz#43374e2e2ca0968b0ef1523460b7d730ff22eeb3"
1981 | integrity sha1-QzdOLiyglosO8VI0YLfXMP8i7rM=
1982 |
1983 | rimraf@^3.0.0, rimraf@^3.0.2:
1984 | version "3.0.2"
1985 | resolved "https://registry.npm.taobao.org/rimraf/download/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a"
1986 | integrity sha1-8aVAK6YiCtUswSgrrBrjqkn9Bho=
1987 | dependencies:
1988 | glob "^7.1.3"
1989 |
1990 | run-parallel@^1.1.9:
1991 | version "1.2.0"
1992 | resolved "https://registry.npm.taobao.org/run-parallel/download/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee"
1993 | integrity sha1-ZtE2jae9+SHrnZW9GpIp5/IaQ+4=
1994 | dependencies:
1995 | queue-microtask "^1.2.2"
1996 |
1997 | sass@^1.44.0:
1998 | version "1.44.0"
1999 | resolved "https://registry.npmmirror.com/sass/download/sass-1.44.0.tgz#619aa0a2275c097f9af5e6b8fe8a95e3056430fb"
2000 | integrity sha512-0hLREbHFXGQqls/K8X+koeP+ogFRPF4ZqetVB19b7Cst9Er8cOR0rc6RU7MaI4W1JmUShd1BPgPoeqmmgMMYFw==
2001 | dependencies:
2002 | chokidar ">=3.0.0 <4.0.0"
2003 | immutable "^4.0.0"
2004 |
2005 | semver@^6.1.0:
2006 | version "6.3.0"
2007 | resolved "https://registry.nlark.com/semver/download/semver-6.3.0.tgz?cache=0&sync_timestamp=1622604551741&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsemver%2Fdownload%2Fsemver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d"
2008 | integrity sha1-7gpkyK9ejO6mdoexM3YeG+y9HT0=
2009 |
2010 | semver@^7.2.1, semver@^7.3.5:
2011 | version "7.3.5"
2012 | resolved "https://registry.nlark.com/semver/download/semver-7.3.5.tgz?cache=0&sync_timestamp=1622604551741&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsemver%2Fdownload%2Fsemver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7"
2013 | integrity sha1-C2Ich5NI2JmOSw5L6Us/EuYBjvc=
2014 | dependencies:
2015 | lru-cache "^6.0.0"
2016 |
2017 | shebang-command@^2.0.0:
2018 | version "2.0.0"
2019 | resolved "https://registry.npm.taobao.org/shebang-command/download/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea"
2020 | integrity sha1-zNCvT4g1+9wmW4JGGq8MNmY/NOo=
2021 | dependencies:
2022 | shebang-regex "^3.0.0"
2023 |
2024 | shebang-regex@^3.0.0:
2025 | version "3.0.0"
2026 | resolved "https://registry.nlark.com/shebang-regex/download/shebang-regex-3.0.0.tgz?cache=0&sync_timestamp=1628896405033&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fshebang-regex%2Fdownload%2Fshebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172"
2027 | integrity sha1-rhbxZE2HPsrYQ7AwexQzYtTEIXI=
2028 |
2029 | side-channel@^1.0.4:
2030 | version "1.0.4"
2031 | resolved "https://registry.nlark.com/side-channel/download/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf"
2032 | integrity sha1-785cj9wQTudRslxY1CkAEfpeos8=
2033 | dependencies:
2034 | call-bind "^1.0.0"
2035 | get-intrinsic "^1.0.2"
2036 | object-inspect "^1.9.0"
2037 |
2038 | simple-swizzle@^0.2.2:
2039 | version "0.2.2"
2040 | resolved "https://registry.npmmirror.com/simple-swizzle/download/simple-swizzle-0.2.2.tgz#a4da6b635ffcccca33f70d17cb92592de95e557a"
2041 | integrity sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo=
2042 | dependencies:
2043 | is-arrayish "^0.3.1"
2044 |
2045 | slash@^3.0.0:
2046 | version "3.0.0"
2047 | resolved "https://registry.nlark.com/slash/download/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634"
2048 | integrity sha1-ZTm+hwwWWtvVJAIg2+Nh8bxNRjQ=
2049 |
2050 | slice-ansi@^4.0.0:
2051 | version "4.0.0"
2052 | resolved "https://registry.nlark.com/slice-ansi/download/slice-ansi-4.0.0.tgz?cache=0&sync_timestamp=1622604533654&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fslice-ansi%2Fdownload%2Fslice-ansi-4.0.0.tgz#500e8dd0fd55b05815086255b3195adf2a45fe6b"
2053 | integrity sha1-UA6N0P1VsFgVCGJVsxla3ypF/ms=
2054 | dependencies:
2055 | ansi-styles "^4.0.0"
2056 | astral-regex "^2.0.0"
2057 | is-fullwidth-code-point "^3.0.0"
2058 |
2059 | source-map-js@^0.6.2:
2060 | version "0.6.2"
2061 | resolved "https://registry.npmmirror.com/source-map-js/download/source-map-js-0.6.2.tgz#0bb5de631b41cfbda6cfba8bd05a80efdfd2385e"
2062 | integrity sha1-C7XeYxtBz72mz7qL0FqA79/SOF4=
2063 |
2064 | source-map-js@^1.0.1:
2065 | version "1.0.1"
2066 | resolved "https://registry.npmmirror.com/source-map-js/download/source-map-js-1.0.1.tgz#a1741c131e3c77d048252adfa24e23b908670caf"
2067 | integrity sha512-4+TN2b3tqOCd/kaGRJ/sTYA0tR0mdXx26ipdolxcwtJVqEnqNYvlCAt1q3ypy4QMlYus+Zh34RNtYLoq2oQ4IA==
2068 |
2069 | sprintf-js@~1.0.2:
2070 | version "1.0.3"
2071 | resolved "https://registry.nlark.com/sprintf-js/download/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c"
2072 | integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=
2073 |
2074 | string-width@^4.2.3:
2075 | version "4.2.3"
2076 | resolved "https://registry.npmmirror.com/string-width/download/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
2077 | integrity sha1-JpxxF9J7Ba0uU2gwqOyJXvnG0BA=
2078 | dependencies:
2079 | emoji-regex "^8.0.0"
2080 | is-fullwidth-code-point "^3.0.0"
2081 | strip-ansi "^6.0.1"
2082 |
2083 | string.prototype.trimend@^1.0.4:
2084 | version "1.0.4"
2085 | resolved "https://registry.nlark.com/string.prototype.trimend/download/string.prototype.trimend-1.0.4.tgz#e75ae90c2942c63504686c18b287b4a0b1a45f80"
2086 | integrity sha1-51rpDClCxjUEaGwYsoe0oLGkX4A=
2087 | dependencies:
2088 | call-bind "^1.0.2"
2089 | define-properties "^1.1.3"
2090 |
2091 | string.prototype.trimstart@^1.0.4:
2092 | version "1.0.4"
2093 | resolved "https://registry.nlark.com/string.prototype.trimstart/download/string.prototype.trimstart-1.0.4.tgz#b36399af4ab2999b4c9c648bd7a3fb2bb26feeed"
2094 | integrity sha1-s2OZr0qymZtMnGSL16P7K7Jv7u0=
2095 | dependencies:
2096 | call-bind "^1.0.2"
2097 | define-properties "^1.1.3"
2098 |
2099 | strip-ansi@^6.0.0, strip-ansi@^6.0.1:
2100 | version "6.0.1"
2101 | resolved "https://registry.npmmirror.com/strip-ansi/download/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"
2102 | integrity sha1-nibGPTD1NEPpSJSVshBdN7Z6hdk=
2103 | dependencies:
2104 | ansi-regex "^5.0.1"
2105 |
2106 | strip-bom@^3.0.0:
2107 | version "3.0.0"
2108 | resolved "https://registry.nlark.com/strip-bom/download/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3"
2109 | integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=
2110 |
2111 | strip-json-comments@^3.1.0, strip-json-comments@^3.1.1:
2112 | version "3.1.1"
2113 | resolved "https://registry.nlark.com/strip-json-comments/download/strip-json-comments-3.1.1.tgz?cache=0&sync_timestamp=1629397119136&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fstrip-json-comments%2Fdownload%2Fstrip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006"
2114 | integrity sha1-MfEoGzgyYwQ0gxwxDAHMzajL4AY=
2115 |
2116 | supports-color@^5.3.0:
2117 | version "5.5.0"
2118 | resolved "https://registry.npmmirror.com/supports-color/download/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f"
2119 | integrity sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=
2120 | dependencies:
2121 | has-flag "^3.0.0"
2122 |
2123 | supports-color@^7.1.0:
2124 | version "7.2.0"
2125 | resolved "https://registry.npmmirror.com/supports-color/download/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da"
2126 | integrity sha1-G33NyzK4E4gBs+R4umpRyqiWSNo=
2127 | dependencies:
2128 | has-flag "^4.0.0"
2129 |
2130 | table@^6.0.9:
2131 | version "6.7.3"
2132 | resolved "https://registry.npmmirror.com/table/download/table-6.7.3.tgz?cache=0&sync_timestamp=1636037112686&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Ftable%2Fdownload%2Ftable-6.7.3.tgz#255388439715a738391bd2ee4cbca89a4d05a9b7"
2133 | integrity sha1-JVOIQ5cVpzg5G9LuTLyomk0Fqbc=
2134 | dependencies:
2135 | ajv "^8.0.1"
2136 | lodash.truncate "^4.4.2"
2137 | slice-ansi "^4.0.0"
2138 | string-width "^4.2.3"
2139 | strip-ansi "^6.0.1"
2140 |
2141 | tailwindcss-miniprogram-preset@^2.1.1:
2142 | version "2.1.1"
2143 | resolved "https://registry.npmmirror.com/tailwindcss-miniprogram-preset/download/tailwindcss-miniprogram-preset-2.1.1.tgz#0bad5f2668a9f9ffcf10b8643f0d7a9e8161a4bd"
2144 | integrity sha512-VxON6UFM5ixNa0BISQLsMCBFFkrf2Vu9/K9suuejufz+eEpCoRy1aFHLUlysCdgvCmg2qQkWPhUCt13nbSfMLQ==
2145 | dependencies:
2146 | "@types/tailwindcss" "^2.2.4"
2147 |
2148 | tailwindcss@^2.2.19:
2149 | version "2.2.19"
2150 | resolved "https://registry.npmmirror.com/tailwindcss/download/tailwindcss-2.2.19.tgz#540e464832cd462bb9649c1484b0a38315c2653c"
2151 | integrity sha1-VA5GSDLNRiu5ZJwUhLCjgxXCZTw=
2152 | dependencies:
2153 | arg "^5.0.1"
2154 | bytes "^3.0.0"
2155 | chalk "^4.1.2"
2156 | chokidar "^3.5.2"
2157 | color "^4.0.1"
2158 | cosmiconfig "^7.0.1"
2159 | detective "^5.2.0"
2160 | didyoumean "^1.2.2"
2161 | dlv "^1.1.3"
2162 | fast-glob "^3.2.7"
2163 | fs-extra "^10.0.0"
2164 | glob-parent "^6.0.1"
2165 | html-tags "^3.1.0"
2166 | is-color-stop "^1.1.0"
2167 | is-glob "^4.0.1"
2168 | lodash "^4.17.21"
2169 | lodash.topath "^4.5.2"
2170 | modern-normalize "^1.1.0"
2171 | node-emoji "^1.11.0"
2172 | normalize-path "^3.0.0"
2173 | object-hash "^2.2.0"
2174 | postcss-js "^3.0.3"
2175 | postcss-load-config "^3.1.0"
2176 | postcss-nested "5.0.6"
2177 | postcss-selector-parser "^6.0.6"
2178 | postcss-value-parser "^4.1.0"
2179 | pretty-hrtime "^1.0.3"
2180 | purgecss "^4.0.3"
2181 | quick-lru "^5.1.1"
2182 | reduce-css-calc "^2.1.8"
2183 | resolve "^1.20.0"
2184 | tmp "^0.2.1"
2185 |
2186 | text-table@^0.2.0:
2187 | version "0.2.0"
2188 | resolved "https://registry.nlark.com/text-table/download/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4"
2189 | integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=
2190 |
2191 | tmp@^0.2.1:
2192 | version "0.2.1"
2193 | resolved "https://registry.nlark.com/tmp/download/tmp-0.2.1.tgz#8457fc3037dcf4719c251367a1af6500ee1ccf14"
2194 | integrity sha1-hFf8MDfc9HGcJRNnoa9lAO4czxQ=
2195 | dependencies:
2196 | rimraf "^3.0.0"
2197 |
2198 | to-regex-range@^5.0.1:
2199 | version "5.0.1"
2200 | resolved "https://registry.npm.taobao.org/to-regex-range/download/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4"
2201 | integrity sha1-FkjESq58jZiKMmAY7XL1tN0DkuQ=
2202 | dependencies:
2203 | is-number "^7.0.0"
2204 |
2205 | ts-node@^10.4.0:
2206 | version "10.4.0"
2207 | resolved "https://registry.npmmirror.com/ts-node/download/ts-node-10.4.0.tgz#680f88945885f4e6cf450e7f0d6223dd404895f7"
2208 | integrity sha1-aA+IlFiF9ObPRQ5/DWIj3UBIlfc=
2209 | dependencies:
2210 | "@cspotcode/source-map-support" "0.7.0"
2211 | "@tsconfig/node10" "^1.0.7"
2212 | "@tsconfig/node12" "^1.0.7"
2213 | "@tsconfig/node14" "^1.0.0"
2214 | "@tsconfig/node16" "^1.0.2"
2215 | acorn "^8.4.1"
2216 | acorn-walk "^8.1.1"
2217 | arg "^4.1.0"
2218 | create-require "^1.1.0"
2219 | diff "^4.0.1"
2220 | make-error "^1.1.1"
2221 | yn "3.1.1"
2222 |
2223 | tsconfig-paths@^3.11.0:
2224 | version "3.12.0"
2225 | resolved "https://registry.npmmirror.com/tsconfig-paths/download/tsconfig-paths-3.12.0.tgz#19769aca6ee8f6a1a341e38c8fa45dd9fb18899b"
2226 | integrity sha512-e5adrnOYT6zqVnWqZu7i/BQ3BnhzvGbjEjejFXO20lKIKpwTaupkCPgEfv4GZK1IBciJUEhYs3J3p75FdaTFVg==
2227 | dependencies:
2228 | "@types/json5" "^0.0.29"
2229 | json5 "^1.0.1"
2230 | minimist "^1.2.0"
2231 | strip-bom "^3.0.0"
2232 |
2233 | tslib@^1.8.1:
2234 | version "1.14.1"
2235 | resolved "https://registry.nlark.com/tslib/download/tslib-1.14.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Ftslib%2Fdownload%2Ftslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00"
2236 | integrity sha1-zy04vcNKE0vK8QkcQfZhni9nLQA=
2237 |
2238 | tsutils@^3.21.0:
2239 | version "3.21.0"
2240 | resolved "https://registry.nlark.com/tsutils/download/tsutils-3.21.0.tgz?cache=0&sync_timestamp=1622604538827&other_urls=https%3A%2F%2Fregistry.nlark.com%2Ftsutils%2Fdownload%2Ftsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623"
2241 | integrity sha1-tIcX05TOpsHglpg+7Vjp1hcVtiM=
2242 | dependencies:
2243 | tslib "^1.8.1"
2244 |
2245 | type-check@^0.4.0, type-check@~0.4.0:
2246 | version "0.4.0"
2247 | resolved "https://registry.nlark.com/type-check/download/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1"
2248 | integrity sha1-B7ggO/pwVsBlcFDjzNLDdzC6uPE=
2249 | dependencies:
2250 | prelude-ls "^1.2.1"
2251 |
2252 | type-fest@^0.20.2:
2253 | version "0.20.2"
2254 | resolved "https://registry.npmmirror.com/type-fest/download/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4"
2255 | integrity sha1-G/IH9LKPkVg2ZstfvTJ4hzAc1fQ=
2256 |
2257 | typescript@^4.5.2:
2258 | version "4.5.2"
2259 | resolved "https://registry.npmmirror.com/typescript/download/typescript-4.5.2.tgz#8ac1fba9f52256fdb06fb89e4122fa6a346c2998"
2260 | integrity sha512-5BlMof9H1yGt0P8/WF+wPNw6GfctgGjXp5hkblpyT+8rkASSmkUKMXrxR0Xg8ThVCi/JnHQiKXeBaEwCeQwMFw==
2261 |
2262 | unbox-primitive@^1.0.1:
2263 | version "1.0.1"
2264 | resolved "https://registry.nlark.com/unbox-primitive/download/unbox-primitive-1.0.1.tgz#085e215625ec3162574dc8859abee78a59b14471"
2265 | integrity sha1-CF4hViXsMWJXTciFmr7nilmxRHE=
2266 | dependencies:
2267 | function-bind "^1.1.1"
2268 | has-bigints "^1.0.1"
2269 | has-symbols "^1.0.2"
2270 | which-boxed-primitive "^1.0.2"
2271 |
2272 | universalify@^2.0.0:
2273 | version "2.0.0"
2274 | resolved "https://registry.npm.taobao.org/universalify/download/universalify-2.0.0.tgz?cache=0&sync_timestamp=1603180080276&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Funiversalify%2Fdownload%2Funiversalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717"
2275 | integrity sha1-daSYTv7cSwiXXFrrc/Uw0C3yVxc=
2276 |
2277 | uri-js@^4.2.2:
2278 | version "4.4.1"
2279 | resolved "https://registry.nlark.com/uri-js/download/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e"
2280 | integrity sha1-mxpSWVIlhZ5V9mnZKPiMbFfyp34=
2281 | dependencies:
2282 | punycode "^2.1.0"
2283 |
2284 | util-deprecate@^1.0.2:
2285 | version "1.0.2"
2286 | resolved "https://registry.npm.taobao.org/util-deprecate/download/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
2287 | integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=
2288 |
2289 | v8-compile-cache@^2.0.3:
2290 | version "2.3.0"
2291 | resolved "https://registry.nlark.com/v8-compile-cache/download/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee"
2292 | integrity sha1-LeGWGMZtwkfc+2+ZM4A12CRaLO4=
2293 |
2294 | which-boxed-primitive@^1.0.2:
2295 | version "1.0.2"
2296 | resolved "https://registry.nlark.com/which-boxed-primitive/download/which-boxed-primitive-1.0.2.tgz#13757bc89b209b049fe5d86430e21cf40a89a8e6"
2297 | integrity sha1-E3V7yJsgmwSf5dhkMOIc9AqJqOY=
2298 | dependencies:
2299 | is-bigint "^1.0.1"
2300 | is-boolean-object "^1.1.0"
2301 | is-number-object "^1.0.4"
2302 | is-string "^1.0.5"
2303 | is-symbol "^1.0.3"
2304 |
2305 | which@^2.0.1:
2306 | version "2.0.2"
2307 | resolved "https://registry.npm.taobao.org/which/download/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1"
2308 | integrity sha1-fGqN0KY2oDJ+ELWckobu6T8/UbE=
2309 | dependencies:
2310 | isexe "^2.0.0"
2311 |
2312 | word-wrap@^1.2.3:
2313 | version "1.2.3"
2314 | resolved "https://registry.nlark.com/word-wrap/download/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c"
2315 | integrity sha1-YQY29rH3A4kb00dxzLF/uTtHB5w=
2316 |
2317 | wrappy@1:
2318 | version "1.0.2"
2319 | resolved "https://registry.nlark.com/wrappy/download/wrappy-1.0.2.tgz?cache=0&sync_timestamp=1619133505879&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fwrappy%2Fdownload%2Fwrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
2320 | integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=
2321 |
2322 | xtend@^4.0.2:
2323 | version "4.0.2"
2324 | resolved "https://registry.npm.taobao.org/xtend/download/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54"
2325 | integrity sha1-u3J3n1+kZRhrH0OPZ0+jR/2121Q=
2326 |
2327 | yallist@^4.0.0:
2328 | version "4.0.0"
2329 | resolved "https://registry.nlark.com/yallist/download/yallist-4.0.0.tgz?cache=0&sync_timestamp=1622604530774&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fyallist%2Fdownload%2Fyallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72"
2330 | integrity sha1-m7knkNnA7/7GO+c1GeEaNQGaOnI=
2331 |
2332 | yaml@^1.10.0, yaml@^1.10.2:
2333 | version "1.10.2"
2334 | resolved "https://registry.npmmirror.com/yaml/download/yaml-1.10.2.tgz?cache=0&sync_timestamp=1636797257089&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fyaml%2Fdownload%2Fyaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b"
2335 | integrity sha1-IwHF/78StGfejaIzOkWeKeeSDks=
2336 |
2337 | yn@3.1.1:
2338 | version "3.1.1"
2339 | resolved "https://registry.nlark.com/yn/download/yn-3.1.1.tgz?cache=0&sync_timestamp=1628974846240&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fyn%2Fdownload%2Fyn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50"
2340 | integrity sha1-HodAGgnXZ8HV6rJqbkwYUYLS61A=
2341 |
--------------------------------------------------------------------------------
/examples/uni-app/README.md:
--------------------------------------------------------------------------------
1 | ## Demo 地址:
2 |
3 | [uni-app-vue3-tailwind-vscode-template](https://github.com/sonofmagic/uni-app-vue3-tailwind-vscode-template)
--------------------------------------------------------------------------------
/jest.config.ts:
--------------------------------------------------------------------------------
1 | import type { InitialOptionsTsJest } from 'ts-jest/dist/types'
2 |
3 | const config: InitialOptionsTsJest = {
4 | preset: 'ts-jest',
5 | testEnvironment: 'node',
6 | clearMocks: true,
7 | collectCoverage: true,
8 | coverageDirectory: 'coverage',
9 | coverageProvider: 'v8',
10 | moduleNameMapper: {
11 | '^@/(.*)$': '/src/$1'
12 | },
13 | setupFilesAfterEnv: ['./jest.setup.ts']
14 | }
15 |
16 | export default config
17 |
--------------------------------------------------------------------------------
/jest.setup.ts:
--------------------------------------------------------------------------------
1 | jest.setTimeout(60000)
2 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "tailwindcss-miniprogram-preset",
3 | "version": "2.1.2",
4 | "description": "tailwindcss-miniprogram-preset 助力微信小程序开发者!",
5 | "main": "dist/index.js",
6 | "module": "dist/index.esm.js",
7 | "types": "dist/types/index.d.ts",
8 | "files": [
9 | "dist"
10 | ],
11 | "scripts": {
12 | "build": "rollup -c",
13 | "gen": "node --require ts-node/register scripts/gen-readme.ts",
14 | "test": "jest"
15 | },
16 | "repository": {
17 | "type": "git",
18 | "url": "git+https://github.com/sonofmagic/tailwindcss-miniprogram-preset.git"
19 | },
20 | "keywords": [
21 | "tailwindcss",
22 | "miniprogram",
23 | "preset",
24 | "tailwindcss-preset",
25 | "wechat",
26 | "uniapp",
27 | "uni-app",
28 | "HBuilderX",
29 | "微信",
30 | "支付宝",
31 | "小程序",
32 | "wxss"
33 | ],
34 | "author": "ice breaker <1324318532@qq.com>",
35 | "license": "MIT",
36 | "bugs": {
37 | "url": "https://github.com/sonofmagic/tailwindcss-miniprogram-preset/issues"
38 | },
39 | "publishConfig": {
40 | "access": "public",
41 | "registry": "https://registry.npmjs.org"
42 | },
43 | "homepage": "https://github.com/sonofmagic/tailwindcss-miniprogram-preset#readme",
44 | "devDependencies": {
45 | "@rollup/plugin-alias": "^3.1.9",
46 | "@rollup/plugin-commonjs": "^21.0.2",
47 | "@rollup/plugin-json": "^4.1.0",
48 | "@rollup/plugin-node-resolve": "^13.1.3",
49 | "@rollup/plugin-typescript": "^8.3.1",
50 | "@tsconfig/recommended": "^1.0.1",
51 | "@types/jest": "^27.4.1",
52 | "@types/node": "^17.0.21",
53 | "@typescript-eslint/eslint-plugin": "^5.14.0",
54 | "@typescript-eslint/parser": "^5.14.0",
55 | "eslint": "^8.10.0",
56 | "eslint-config-standard": "^16.0.3",
57 | "eslint-plugin-import": "^2.25.4",
58 | "eslint-plugin-node": "^11.1.0",
59 | "eslint-plugin-promise": "^6.0.0",
60 | "jest": "^27.5.1",
61 | "postcss": "^8.4.8",
62 | "postcss-rem-to-responsive-pixel": "^5.1.1",
63 | "rollup": "^2.70.0",
64 | "tailwindcss": "^2.2.19",
65 | "ts-jest": "^27.1.3",
66 | "ts-node": "^10.7.0",
67 | "tslib": "^2.3.1",
68 | "typescript": "^4.6.2"
69 | },
70 | "dependencies": {
71 | "@types/tailwindcss": "^2.2.4"
72 | }
73 | }
74 |
--------------------------------------------------------------------------------
/rollup.config.js:
--------------------------------------------------------------------------------
1 | import typescript from '@rollup/plugin-typescript'
2 | import { nodeResolve } from '@rollup/plugin-node-resolve'
3 | import commonjs from '@rollup/plugin-commonjs'
4 | import pkg from './package.json'
5 |
6 | /** @type {import('rollup').RollupOptions} */
7 | const config = {
8 | input: 'src/index.ts',
9 | output: [
10 | {
11 | file: pkg.main,
12 | format: 'cjs',
13 | exports: 'auto'
14 | },
15 | { format: 'esm', file: pkg.module }
16 | ],
17 |
18 | plugins: [
19 | nodeResolve({
20 | preferBuiltins: true
21 | }),
22 | commonjs(),
23 | typescript({ tsconfig: './tsconfig.build.json' })
24 | ]
25 | }
26 |
27 | export default config
28 |
--------------------------------------------------------------------------------
/scripts/allCorePlugins.ts:
--------------------------------------------------------------------------------
1 | import type { TailwindCorePlugin } from 'tailwindcss/tailwind-config'
2 |
3 | const AllCorePlugin: TailwindCorePlugin[] = [
4 | 'preflight',
5 | 'container',
6 | 'space',
7 | 'divideWidth',
8 | 'divideColor',
9 | 'divideStyle',
10 | 'divideOpacity',
11 | 'accessibility',
12 | 'appearance',
13 | 'backgroundAttachment',
14 | 'backgroundClip',
15 | 'backgroundColor',
16 | 'backgroundImage',
17 | 'gradientColorStops',
18 | 'backgroundOpacity',
19 | 'backgroundPosition',
20 | 'backgroundRepeat',
21 | 'backgroundSize',
22 | 'borderCollapse',
23 | 'borderColor',
24 | 'borderOpacity',
25 | 'borderRadius',
26 | 'borderStyle',
27 | 'borderWidth',
28 | 'boxSizing',
29 | 'cursor',
30 | 'display',
31 | 'flexDirection',
32 | 'flexWrap',
33 | 'placeItems',
34 | 'placeContent',
35 | 'placeSelf',
36 | 'alignItems',
37 | 'alignContent',
38 | 'alignSelf',
39 | 'justifyItems',
40 | 'justifyContent',
41 | 'justifySelf',
42 | 'flex',
43 | 'flexGrow',
44 | 'flexShrink',
45 | 'order',
46 | 'float',
47 | 'clear',
48 | 'fontFamily',
49 | 'fontWeight',
50 | 'height',
51 | 'fontSize',
52 | 'lineHeight',
53 | 'listStylePosition',
54 | 'listStyleType',
55 | 'margin',
56 | 'maxHeight',
57 | 'maxWidth',
58 | 'minHeight',
59 | 'minWidth',
60 | 'objectFit',
61 | 'objectPosition',
62 | 'opacity',
63 | 'outline',
64 | 'overflow',
65 | 'overscrollBehavior',
66 | 'padding',
67 | 'placeholderColor',
68 | 'placeholderOpacity',
69 | 'pointerEvents',
70 | 'position',
71 | 'inset',
72 | 'resize',
73 | 'boxShadow',
74 | 'ringWidth',
75 | 'ringOffsetColor',
76 | 'ringOffsetWidth',
77 | 'ringColor',
78 | 'ringOpacity',
79 | 'fill',
80 | 'stroke',
81 | 'strokeWidth',
82 | 'tableLayout',
83 | 'textAlign',
84 | 'textColor',
85 | 'textOpacity',
86 | 'textOverflow',
87 | 'fontStyle',
88 | 'textTransform',
89 | 'textDecoration',
90 | 'fontSmoothing',
91 | 'fontVariantNumeric',
92 | 'letterSpacing',
93 | 'userSelect',
94 | 'verticalAlign',
95 | 'visibility',
96 | 'whitespace',
97 | 'wordBreak',
98 | 'width',
99 | 'zIndex',
100 | 'gap',
101 | 'gridAutoFlow',
102 | 'gridTemplateColumns',
103 | 'gridAutoColumns',
104 | 'gridColumn',
105 | 'gridColumnStart',
106 | 'gridColumnEnd',
107 | 'gridTemplateRows',
108 | 'gridAutoRows',
109 | 'gridRow',
110 | 'gridRowStart',
111 | 'gridRowEnd',
112 | 'transform',
113 | 'transformOrigin',
114 | 'scale',
115 | 'rotate',
116 | 'translate',
117 | 'skew',
118 | 'transitionProperty',
119 | 'transitionTimingFunction',
120 | 'transitionDuration',
121 | 'transitionDelay',
122 | 'animation'
123 | ]
124 |
125 | export default AllCorePlugin
126 |
--------------------------------------------------------------------------------
/scripts/gen-readme.ts:
--------------------------------------------------------------------------------
1 | import * as fs from 'fs'
2 | import path from 'path'
3 | import allCorePlugins from './allCorePlugins'
4 | import selectedCorePlugins from '../src/corePlugins'
5 |
6 | const resolve = (p: string) => {
7 | return path.resolve(__dirname, p)
8 | }
9 | const mdTemplate = fs.readFileSync(resolve('./template.md'), {
10 | encoding: 'utf-8'
11 | })
12 | const pluginsTableHeader = '|插件|是否启用|\n|---|---|\n'
13 |
14 | const createSpan = (enable: boolean) => {
15 | return `${enable ? '是' : '否'}`
18 | }
19 | const pluginsTable = allCorePlugins.reduce((acc, cur) => {
20 | const enableFlag = selectedCorePlugins.includes(cur)
21 | acc += '|**' + cur + '**|' + createSpan(enableFlag) + '|\n'
22 | return acc
23 | }, pluginsTableHeader)
24 |
25 | fs.writeFileSync(
26 | resolve('../CorePlugins.md'),
27 | mdTemplate.replace('{{id:corePlugins}}', pluginsTable)
28 | )
29 | // ; (async () => {
30 |
31 | // })()
32 |
--------------------------------------------------------------------------------
/scripts/raw.js:
--------------------------------------------------------------------------------
1 | const { createPreset, defaultPreset } = require('../dist/index')
2 |
3 | // const { } = require('../dist/index')
4 |
--------------------------------------------------------------------------------
/scripts/template.md:
--------------------------------------------------------------------------------
1 | # tailwindcss corePlugins 启用状况
2 |
3 | {{id:corePlugins}}
4 |
--------------------------------------------------------------------------------
/src/config.ts:
--------------------------------------------------------------------------------
1 | import plugin from 'tailwindcss/plugin'
2 | import corePlugins from './corePlugins'
3 | import { escape } from './util'
4 | import { createExpandThemeConfig } from './defaultConfig'
5 | import type { TailwindConfig } from 'tailwindcss/tailwind-config'
6 | import type { IPresetOption } from './types'
7 | const emptyVariants = corePlugins.reduce>((acc, cur) => {
8 | acc[cur] = []
9 | return acc
10 | }, {})
11 |
12 | export function createPreset (option?: IPresetOption): TailwindConfig {
13 | const expandThemeConfig = createExpandThemeConfig(option)
14 |
15 | return {
16 | // 由于微信小程序会把 w-[750rpx] 中的中括号强制去除,所以不推荐开启此模式
17 | // mode: 'jit',
18 | purge: {
19 | // 如果 development 下,wxss过大,可以一直开启 enabled
20 | // 默认在 NODE_ENV=production 下开启
21 | // enabled: process.env.NODE_ENV === 'production',
22 | content: ['./public/index.html', './src/**/*.{vue,js,ts,jsx,tsx,wxml}']
23 | },
24 | darkMode: false, // 'class', // or 'media' or 'class'
25 | important: true,
26 | corePlugins,
27 | theme: {
28 | screens: {}, // false,
29 | ...expandThemeConfig,
30 | extend: {}
31 | },
32 | variants: {
33 | ...emptyVariants,
34 | extend: {}
35 | },
36 | plugins: [
37 | plugin(function ({ addUtilities, e, config }) {
38 | // delve(object, keypath, [default]) 类似于get,找不到 'theme.height' 会从 defaultConfig里面找
39 | function escapeUtilities (
40 | path: string,
41 | prefix: string,
42 | attrKey: string | ((value: string) => any)
43 | ) {
44 | const utilities = Object.entries(config(path)).reduce<
45 | Record[]
46 | >((acc, [key, value]) => {
47 | if (path === 'theme.margin' && key[0] === '-') {
48 | // do continue
49 | // ignore -m-x
50 | return acc
51 | }
52 | const str = escape(`${prefix}${key}`)
53 | if (typeof attrKey === 'function') {
54 | const fn = attrKey
55 | acc.push({
56 | [`.${e(str)}`]: fn(value as string)
57 | })
58 | } else {
59 | acc.push({
60 | [`.${e(str)}`]: {
61 | [attrKey]: `${value}`
62 | }
63 | })
64 | }
65 | return acc
66 | }, [])
67 |
68 | addUtilities(utilities)
69 | }
70 | escapeUtilities('theme.height', 'h-', 'height')
71 | escapeUtilities('theme.margin', 'm-', 'margin')
72 | escapeUtilities('theme.margin', 'my-', (value: string) => {
73 | return {
74 | 'margin-top': `${value}`,
75 | 'margin-bottom': `${value}`
76 | }
77 | })
78 | escapeUtilities('theme.margin', 'mx-', (value: string) => {
79 | return {
80 | 'margin-left': `${value}`,
81 | 'margin-right': `${value}`
82 | }
83 | })
84 | escapeUtilities('theme.margin', 'mt-', 'margin-top')
85 | escapeUtilities('theme.margin', 'mr-', 'margin-right')
86 | escapeUtilities('theme.margin', 'mb-', 'margin-bottom')
87 | escapeUtilities('theme.margin', 'ml-', 'margin-left')
88 | escapeUtilities('theme.maxHeight', 'max-h-', 'max-height')
89 | escapeUtilities('theme.padding', 'p-', 'padding')
90 |
91 | escapeUtilities('theme.padding', 'py-', (value: string) => {
92 | return {
93 | 'padding-top': `${value}`,
94 | 'padding-bottom': `${value}`
95 | }
96 | })
97 | escapeUtilities('theme.padding', 'px-', (value: string) => {
98 | return {
99 | 'padding-left': `${value}`,
100 | 'padding-right': `${value}`
101 | }
102 | })
103 | escapeUtilities('theme.padding', 'pt-', 'padding-top')
104 | escapeUtilities('theme.padding', 'pr-', 'padding-right')
105 | escapeUtilities('theme.padding', 'pb-', 'padding-bottom')
106 | escapeUtilities('theme.padding', 'pl-', 'padding-left')
107 |
108 | escapeUtilities('theme.width', 'w-', 'width')
109 | })
110 | ]
111 | }
112 | }
113 |
114 | // const config: TailwindConfig & { createPreset?: typeof createPreset } =
115 |
116 | // config.createPreset = createPreset
117 |
118 | export default createPreset()
119 |
--------------------------------------------------------------------------------
/src/constant.ts:
--------------------------------------------------------------------------------
1 | import type { IPresetOption } from './types'
2 |
3 | export const defaultOptions: IPresetOption = {
4 | rootValue: 32,
5 | unitPrecision: 5,
6 | minRemValue: 0,
7 | rem2rpx: true
8 | }
9 |
--------------------------------------------------------------------------------
/src/corePlugins.ts:
--------------------------------------------------------------------------------
1 | import type { TailwindCorePlugin } from 'tailwindcss/tailwind-config'
2 |
3 | const corePlugins: TailwindCorePlugin[] = [
4 | // #endregion 基础样式
5 | // 'preflight',
6 | // #endregion
7 | // #region 布局/容器
8 | // 'container',
9 | // #endregion
10 |
11 | // #region 不支持 :not 选择器
12 | // 参考 https://developers.weixin.qq.com/miniprogram/dev/framework/view/wxss.html
13 | // 'space',
14 | // 'divideWidth',
15 | // 'divideColor',
16 | // 'divideStyle',
17 | // 'divideOpacity',
18 | // #endregion
19 |
20 | // #region 可访问性 :屏幕阅读器
21 | // 'accessibility',
22 | // #endregion
23 | 'appearance',
24 | 'backgroundAttachment',
25 | 'backgroundClip',
26 | 'backgroundColor',
27 | 'backgroundImage',
28 | 'gradientColorStops',
29 | 'backgroundOpacity',
30 | 'backgroundPosition',
31 | 'backgroundRepeat',
32 | 'backgroundSize',
33 | 'borderCollapse',
34 | 'borderColor',
35 | 'borderOpacity',
36 | 'borderRadius',
37 | 'borderStyle',
38 | 'borderWidth',
39 | 'boxSizing',
40 | 'cursor',
41 | 'display',
42 | 'flexDirection',
43 | 'flexWrap',
44 | // #region 盒对齐/Grid相关
45 | // 'placeItems',
46 | // 'placeContent',
47 | // 'placeSelf',
48 | // #endregion
49 | 'alignItems',
50 | 'alignContent',
51 | 'alignSelf',
52 | 'justifyItems',
53 | 'justifyContent',
54 | 'justifySelf',
55 | 'flex',
56 | 'flexGrow',
57 | 'flexShrink',
58 | 'order',
59 | 'float',
60 | 'clear',
61 | // #region 小程序字体需要js额外加载,这里先不用 fontFamily
62 | // 'fontFamily',
63 | // #endregion
64 | 'fontWeight',
65 | // 'height',
66 | 'fontSize',
67 | 'lineHeight',
68 | 'listStylePosition',
69 | 'listStyleType',
70 | // 'margin',
71 | // 'maxHeight',
72 | 'maxWidth',
73 | 'minHeight',
74 | 'minWidth',
75 | 'objectFit',
76 | 'objectPosition',
77 | 'opacity',
78 | 'outline',
79 | 'overflow',
80 | 'overscrollBehavior',
81 | // 'padding',
82 | 'placeholderColor',
83 | 'placeholderOpacity',
84 | 'pointerEvents',
85 | 'position',
86 |
87 | // 'inset', // 用不着
88 | 'resize',
89 | // 'boxShadow', // *,::before,::after 限制
90 | // 'ringWidth', // *,::before,::after 限制
91 | // 'ringOffsetColor',
92 | // 'ringOffsetWidth',
93 | // 'ringColor',
94 | // 'ringOpacity',
95 | // #region SVG 相关
96 | // 'fill',
97 | // 'stroke',
98 | // 'strokeWidth',
99 | // #endregion
100 | 'tableLayout',
101 | 'textAlign',
102 | 'textColor',
103 | 'textOpacity',
104 | 'textOverflow',
105 | 'fontStyle',
106 | 'textTransform',
107 | 'textDecoration',
108 | 'fontSmoothing',
109 | 'fontVariantNumeric',
110 | 'letterSpacing',
111 | 'userSelect',
112 | 'verticalAlign',
113 | 'visibility',
114 | 'whitespace',
115 | 'wordBreak',
116 | // 'width',
117 | 'zIndex',
118 | // #region 网格布局(小程序自己的兼容问题还没搞定)
119 | // 'gap',
120 | // 'gridAutoFlow',
121 | // 'gridTemplateColumns',
122 | // 'gridAutoColumns',
123 | // 'gridColumn',
124 | // 'gridColumnStart',
125 | // 'gridColumnEnd',
126 | // 'gridTemplateRows',
127 | // 'gridAutoRows',
128 | // 'gridRow',
129 | // 'gridRowStart',
130 | // 'gridRowEnd',
131 | // #endregion
132 | 'transform',
133 | 'transformOrigin',
134 | 'scale',
135 | 'rotate',
136 | // 'translate', 没啥用
137 | 'skew',
138 | 'transitionProperty',
139 | 'transitionTimingFunction',
140 | 'transitionDuration',
141 | 'transitionDelay',
142 | 'animation'
143 | ]
144 |
145 | export default corePlugins
146 |
--------------------------------------------------------------------------------
/src/defaultConfig.ts:
--------------------------------------------------------------------------------
1 | // this is a deep clone object
2 |
3 | import deepCloneConfig from 'tailwindcss/defaultConfig'
4 | import { createRem2rpx } from './rem2rpx'
5 | import type {
6 | IPresetOption,
7 | TransformFunc,
8 | ConfigValue,
9 | ConfigArray
10 | } from './types'
11 | import type {
12 | TailwindThemeValue,
13 | TailwindTheme,
14 | TailwindThemeFontSizes
15 | } from 'tailwindcss/tailwind-config'
16 | import { defaultOptions } from './constant'
17 |
18 | export function ObjectValueMap (
19 | obj: T,
20 | fn: TransformFunc
21 | ) {
22 | return Object.entries(obj).reduce((acc, [key, value], idx) => {
23 | // @ts-ignore
24 | acc[key] = fn(value as string, idx)
25 | return acc
26 | }, {} as T)
27 | }
28 |
29 | export function createExpandThemeConfig (option?: IPresetOption): TailwindTheme {
30 | const opts = Object.assign({}, defaultOptions, option)
31 | if (opts.rem2rpx) {
32 | const rem2rpx = createRem2rpx(opts)
33 | const replacer = (value: ConfigValue) => {
34 | return rem2rpx(value as string)
35 | }
36 | return {
37 | // spacing
38 | spacing: ObjectValueMap(deepCloneConfig.theme.spacing, replacer),
39 | // borderRadius
40 | borderRadius: ObjectValueMap(deepCloneConfig.theme.borderRadius, replacer),
41 | // fontSize // xs: ['0.75rem', { lineHeight: '1rem' }],
42 | fontSize: ObjectValueMap(
43 | deepCloneConfig.theme.fontSize,
44 | (value) => {
45 | const [fontSize, { lineHeight }] = value as ConfigArray
46 | return [rem2rpx(fontSize), { lineHeight: rem2rpx(lineHeight) }]
47 | }
48 | ),
49 | // lineHeight
50 | lineHeight: ObjectValueMap(deepCloneConfig.theme.lineHeight, replacer),
51 | // maxWidth
52 | maxWidth: {
53 | none: 'none',
54 | 0: '0',
55 | full: '100%',
56 | min: 'min-content',
57 | max: 'max-content'
58 | }
59 | }
60 | } else {
61 | return {
62 | // spacing
63 | spacing: deepCloneConfig.theme.spacing,
64 | // borderRadius
65 | borderRadius: deepCloneConfig.theme.borderRadius,
66 | // fontSize // xs: ['0.75rem', { lineHeight: '1rem' }],
67 | fontSize: deepCloneConfig.theme.fontSize,
68 | // lineHeight
69 | lineHeight: deepCloneConfig.theme.lineHeight,
70 | // maxWidth
71 | maxWidth: {
72 | none: 'none',
73 | 0: '0',
74 | full: '100%',
75 | min: 'min-content',
76 | max: 'max-content'
77 | }
78 | }
79 | }
80 | }
81 |
82 | export const expandThemeConfig = createExpandThemeConfig()
83 |
--------------------------------------------------------------------------------
/src/index.ts:
--------------------------------------------------------------------------------
1 | export { default as defaultPreset, createPreset } from './config'
2 |
--------------------------------------------------------------------------------
/src/rem2rpx.ts:
--------------------------------------------------------------------------------
1 | import type { IPresetOption } from './types'
2 | import { defaultOptions } from './constant'
3 | export const remUnitRegex = /(\d*\.?\d+) *rem/g
4 |
5 | export function toFixed (number: number, precision: number) {
6 | const multiplier = Math.pow(10, precision + 1)
7 | const wholeNumber = Math.floor(number * multiplier)
8 | return (Math.round(wholeNumber / 10) * 10) / multiplier
9 | }
10 |
11 | export function createRemReplace (
12 | rootValue: number,
13 | unitPrecision: number,
14 | minRemValue: number
15 | ) {
16 | return (m: string, $1?: string) => {
17 | if (!$1) return m
18 | const rem = parseFloat($1)
19 | if (rem < minRemValue) return m
20 | const fixedVal = toFixed(rem * rootValue, unitPrecision)
21 | return fixedVal === 0 ? '0' : fixedVal + 'rpx'
22 | }
23 | }
24 |
25 | export function createRem2rpx (option: IPresetOption) {
26 | const remReplace = createRemReplace(
27 | option.rootValue,
28 | option.unitPrecision,
29 | option.minRemValue
30 | )
31 | return (str: string) => {
32 | const execArr = /(\d*\.?\d+) *rem/g.exec(str)
33 | return execArr ? remReplace(str, execArr[1]) : str
34 | }
35 | }
36 | export const rem2rpx = createRem2rpx(defaultOptions)
37 |
--------------------------------------------------------------------------------
/src/types.ts:
--------------------------------------------------------------------------------
1 | export interface IPresetOption {
2 | /**
3 | * @default '1rem=32rpx'
4 | */
5 | rootValue: number
6 | /**
7 | * @default 5(Number)
8 | */
9 | unitPrecision: number
10 | /**
11 | * 'Set the minimum pixel value to replace'
12 | * @default 2(Number)
13 | */
14 | minRemValue: number
15 | /**
16 | * default open rem -> rpx setting
17 | * @default true
18 | */
19 | rem2rpx: boolean
20 | }
21 |
22 | export type ConfigArray = [
23 | string,
24 | {
25 | lineHeight: string
26 | [key: string]: string
27 | }
28 | ]
29 | export type ConfigValue = string | ConfigArray
30 |
31 | // type Config = Record
32 |
33 | export type TransformFunc = (value: ConfigValue, ...args: any[]) => ConfigValue
34 |
--------------------------------------------------------------------------------
/src/util.ts:
--------------------------------------------------------------------------------
1 |
2 | const escapeMap = {
3 | '/': '-div-',
4 | '.': '-dot-'
5 | }
6 | /**
7 | * 转义工作
8 | */
9 | export function escape (str: string) {
10 | return Object.entries(escapeMap).reduce((acc, [key, value]) => {
11 | return acc.replace(key, value)
12 | }, str)
13 | }
14 |
--------------------------------------------------------------------------------
/test/config.test.ts:
--------------------------------------------------------------------------------
1 | import config from '@/config'
2 |
3 | describe('[Config]', () => {
4 | test('default config', () => {
5 | expect(config.important).toBe(true)
6 | })
7 | })
8 |
--------------------------------------------------------------------------------
/test/rem2rpx.test.ts:
--------------------------------------------------------------------------------
1 | import {
2 | // createRemReplace,
3 | // defaultOptions,
4 | rem2rpx
5 | // createRem2rpx
6 | // remReplace,
7 | // remUnitRegex,
8 | // toFixed
9 | } from '@/rem2rpx'
10 | import { ObjectValueMap } from '@/defaultConfig'
11 | import type { ConfigValue } from '@/types'
12 |
13 | describe('[rem2rpx]', () => {
14 | test('rem2rpx', () => {
15 | expect(rem2rpx('padding-bottom: 1px !important')).toBe(
16 | 'padding-bottom: 1px !important'
17 | )
18 | expect(rem2rpx('margin-top: 1rem !important')).toBe('32rpx')
19 | expect(rem2rpx('margin-top: 1 rem;')).toBe('32rpx')
20 | })
21 |
22 | test('create rem2rpx with default option', () => {
23 | const replacer = (value: ConfigValue) => {
24 | return rem2rpx(value as string)
25 | }
26 |
27 | const styleObj = {
28 | none: 'none',
29 | 0: '0',
30 | full: '100%',
31 | min: 'min-content',
32 | max: 'max-content'
33 | }
34 |
35 | expect(ObjectValueMap(styleObj, replacer)).toEqual(styleObj)
36 | })
37 | })
38 |
--------------------------------------------------------------------------------
/test/util.test.ts:
--------------------------------------------------------------------------------
1 | import { escape } from '@/util'
2 | describe('[util] test', () => {
3 | test('escape test ', () => {
4 | expect(escape('w-1.5')).toBe('w-1-dot-5')
5 | expect(escape('pb-3.5')).toBe('pb-3-dot-5')
6 | expect(escape('w-1/2')).toBe('w-1-div-2')
7 | })
8 | })
9 |
--------------------------------------------------------------------------------
/tsconfig.build.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "rootDir": "src",
5 | "rootDirs": ["src"]
6 | },
7 | "include": ["src/**/*", "types/**/*"]
8 | }
9 |
--------------------------------------------------------------------------------
/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "@tsconfig/recommended/tsconfig.json",
3 | "compilerOptions": {
4 | "rootDirs": ["src", "scripts"],
5 | "outDir": "dist",
6 | "declaration": true,
7 | "declarationDir": "types",
8 | "declarationMap": false,
9 | "allowSyntheticDefaultImports": true,
10 | "noEmit": true,
11 | "noEmitOnError": false,
12 | "noUnusedLocals": true,
13 | "noUnusedParameters": true,
14 | "pretty": true,
15 | "sourceMap": false,
16 | "importHelpers": false,
17 | "moduleResolution": "Node",
18 | "baseUrl": ".",
19 | "paths": {
20 | "@/*": ["src/*"]
21 | }
22 | },
23 | "exclude": ["dist", "node_modules", "test/types"],
24 | "include": ["src/**/*", "types/**/*", "test", "scripts"],
25 | "ts-node": {
26 | "compilerOptions": {
27 | "module": "CommonJS"
28 | }
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/types/tailwindcss.defaultConfig.d.ts:
--------------------------------------------------------------------------------
1 | declare module 'tailwindcss/defaultConfig' {
2 | import type { TailwindConfigDefault } from 'tailwindcss/tailwind-config-default'
3 | const _default: TailwindConfigDefault
4 | export default _default
5 | }
6 |
--------------------------------------------------------------------------------