Browse Source

chore: mock

tall
wally 4 years ago
parent
commit
51c24a5ebf
  1. 35
      CHANGELOG.md
  2. 79
      package-lock.json
  3. 2
      package.json
  4. 5
      public/index.html
  5. 3
      src/main.js
  6. 38
      src/mock/mock.js
  7. 80
      src/pages.json
  8. 10
      src/pages/index/index.vue
  9. 21
      src/pages/test/test.vue
  10. 172
      src/utils/indexedDB.js
  11. 5
      vue.config.js
  12. 126
      yarn.lock

35
CHANGELOG.md

@ -1,56 +1,57 @@
# 0.1.0 (2021-07-19)
# 0.1.0 (2021-07-20)
### 🌟 新功能
范围|描述|commitId
--|--|--
- | 标题栏角色栏全局任务组件新建 | [0500cb4](https://dd.tall.wiki/gitea/wally/TALL-MUI-3/commits/0500cb4)
- | db store | [6414c4f](https://dd.tall.wiki/gitea/wally/TALL-MUI-3/commits/6414c4f)
- | indexedDB | [687394e](https://dd.tall.wiki/gitea/wally/TALL-MUI-3/commits/687394e)
富文本插件 | 富文本插件demo测试 | [ed3d644](https://dd.tall.wiki/gitea/wally/TALL-MUI-3/commits/ed3d644)
pinch | alloy finger实现图片的pinch放大缩小 | [de01343](https://dd.tall.wiki/gitea/wally/TALL-MUI-3/commits/de01343)
- | db store | [6414c4f](http://gitea@dd.tall.wiki:wally/TALL-MUI-3/commits/6414c4f)
- | indexedDB | [687394e](http://gitea@dd.tall.wiki:wally/TALL-MUI-3/commits/687394e)
- | 标题栏角色栏全局任务组件新建 | [0500cb4](http://gitea@dd.tall.wiki:wally/TALL-MUI-3/commits/0500cb4)
pinch | alloy finger实现图片的pinch放大缩小 | [de01343](http://gitea@dd.tall.wiki:wally/TALL-MUI-3/commits/de01343)
富文本插件 | 富文本插件demo测试 | [ed3d644](http://gitea@dd.tall.wiki:wally/TALL-MUI-3/commits/ed3d644)
### 🎨 代码样式
范围|描述|commitId
--|--|--
- | 组件新建 | [89c0035](https://dd.tall.wiki/gitea/wally/TALL-MUI-3/commits/89c0035)
- | 组件新建 | [89c0035](http://gitea@dd.tall.wiki:wally/TALL-MUI-3/commits/89c0035)
### 🐛 Bug 修复
范围|描述|commitId
--|--|--
- | 修改main | [749ae9a](https://dd.tall.wiki/gitea/wally/TALL-MUI-3/commits/749ae9a)
- | 修改main | [749ae9a](http://gitea@dd.tall.wiki:wally/TALL-MUI-3/commits/749ae9a)
### 📝 文档
范围|描述|commitId
--|--|--
- | README.md | [ab0eb05](https://dd.tall.wiki/gitea/wally/TALL-MUI-3/commits/ab0eb05)
- | README.md | [ab0eb05](http://gitea@dd.tall.wiki:wally/TALL-MUI-3/commits/ab0eb05)
### 🔨 代码重构
范围|描述|commitId
--|--|--
template | eslint prettier sass uview tailwindcss | [9c966a1](https://dd.tall.wiki/gitea/wally/TALL-MUI-3/commits/9c966a1)
template | eslint prettier sass uview tailwindcss | [9c966a1](http://gitea@dd.tall.wiki:wally/TALL-MUI-3/commits/9c966a1)
### 🚀 性能优化
范围|描述|commitId
--|--|--
- | 组件文件夹新建 | [17bb8c9](https://dd.tall.wiki/gitea/wally/TALL-MUI-3/commits/17bb8c9)
- | 组件文件夹新建 | [1421504](https://dd.tall.wiki/gitea/wally/TALL-MUI-3/commits/1421504)
- | 组件文件夹新建 | [22bfe7b](http://gitea@dd.tall.wiki:wally/TALL-MUI-3/commits/22bfe7b)
- | 组件文件夹新建 | [17bb8c9](http://gitea@dd.tall.wiki:wally/TALL-MUI-3/commits/17bb8c9)
- | 组件文件夹新建 | [1421504](http://gitea@dd.tall.wiki:wally/TALL-MUI-3/commits/1421504)
### chore
范围|描述|commitId
--|--|--
pwa 小程序 | 移除了pwa,alloyFinger添加平台判断 | [875fab4](https://dd.tall.wiki/gitea/wally/TALL-MUI-3/commits/875fab4)
- | uview-ui | [a9ea34b](https://dd.tall.wiki/gitea/wally/TALL-MUI-3/commits/a9ea34b)
信息配置 | 配置eslint等配置 | [7421443](https://dd.tall.wiki/gitea/wally/TALL-MUI-3/commits/7421443)
pwa 小程序 | 移除了pwa,alloyFinger添加平台判断 | [875fab4](http://gitea@dd.tall.wiki:wally/TALL-MUI-3/commits/875fab4)
- | uview-ui | [a9ea34b](http://gitea@dd.tall.wiki:wally/TALL-MUI-3/commits/a9ea34b)
信息配置 | 配置eslint等配置 | [7421443](http://gitea@dd.tall.wiki:wally/TALL-MUI-3/commits/7421443)
范围|描述|commitId
--|--|--
- | !2 基础模板v1.1.0 | [f5e61dd](https://dd.tall.wiki/gitea/wally/TALL-MUI-3/commits/f5e61dd)
- | init | [c0f1deb](https://dd.tall.wiki/gitea/wally/TALL-MUI-3/commits/c0f1deb)
- | !2 基础模板v1.1.0 | [f5e61dd](http://gitea@dd.tall.wiki:wally/TALL-MUI-3/commits/f5e61dd)
- | init | [c0f1deb](http://gitea@dd.tall.wiki:wally/TALL-MUI-3/commits/c0f1deb)

79
package-lock.json

@ -3248,17 +3248,6 @@
"postcss-value-parser": "^4.1.0"
}
},
"chalk": {
"version": "4.1.1",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz",
"integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==",
"dev": true,
"optional": true,
"requires": {
"ansi-styles": "^4.1.0",
"supports-color": "^7.1.0"
}
},
"default-gateway": {
"version": "5.0.5",
"resolved": "https://registry.npm.taobao.org/default-gateway/download/default-gateway-5.0.5.tgz?cache=0&sync_timestamp=1610365791284&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdefault-gateway%2Fdownload%2Fdefault-gateway-5.0.5.tgz",
@ -3361,18 +3350,6 @@
"resolve-from": "^3.0.0"
}
},
"loader-utils": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz",
"integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==",
"dev": true,
"optional": true,
"requires": {
"big.js": "^5.2.2",
"emojis-list": "^3.0.0",
"json5": "^2.1.2"
}
},
"micromatch": {
"version": "3.1.10",
"resolved": "https://registry.npm.taobao.org/micromatch/download/micromatch-3.1.10.tgz?cache=0&sync_timestamp=1618054885525&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmicromatch%2Fdownload%2Fmicromatch-3.1.10.tgz",
@ -3520,18 +3497,6 @@
"resolved": "https://registry.npm.taobao.org/slash/download/slash-2.0.0.tgz",
"integrity": "sha1-3lUoUaF1nfOo8gZTVEL17E3eq0Q=",
"dev": true
},
"vue-loader-v16": {
"version": "npm:vue-loader@16.3.1",
"resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-16.3.1.tgz",
"integrity": "sha512-QTtXgdqQ+4G3d8dmhnnfJSiKKHQtp53XiivSYAvAqNCOufL9aK0DYOc9MW9MSy7Xzj/1qdcghb28zKhOPvQYqQ==",
"dev": true,
"optional": true,
"requires": {
"chalk": "^4.1.0",
"hash-sum": "^2.0.0",
"loader-utils": "^2.0.0"
}
}
}
},
@ -19719,6 +19684,50 @@
"vue-style-loader": "^4.1.0"
}
},
"vue-loader-v16": {
"version": "npm:vue-loader@16.3.1",
"resolved": "https://registry.nlark.com/vue-loader/download/vue-loader-16.3.1.tgz",
"integrity": "sha1-W2da4orJcIARHpOybSKtyjbdV6o=",
"dev": true,
"optional": true,
"requires": {
"chalk": "^4.1.0",
"hash-sum": "^2.0.0",
"loader-utils": "^2.0.0"
},
"dependencies": {
"chalk": {
"version": "4.1.1",
"resolved": "https://registry.nlark.com/chalk/download/chalk-4.1.1.tgz?cache=0&sync_timestamp=1618995384030&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fchalk%2Fdownload%2Fchalk-4.1.1.tgz",
"integrity": "sha1-yAs/qyi/Y3HmhjMl7uZ+YYt35q0=",
"dev": true,
"optional": true,
"requires": {
"ansi-styles": "^4.1.0",
"supports-color": "^7.1.0"
}
},
"hash-sum": {
"version": "2.0.0",
"resolved": "https://registry.nlark.com/hash-sum/download/hash-sum-2.0.0.tgz",
"integrity": "sha1-gdAbtd6OpKIUrV1urRtSNGCwtFo=",
"dev": true,
"optional": true
},
"loader-utils": {
"version": "2.0.0",
"resolved": "https://registry.npm.taobao.org/loader-utils/download/loader-utils-2.0.0.tgz",
"integrity": "sha1-5MrOW4FtQloWa18JfhDNErNgZLA=",
"dev": true,
"optional": true,
"requires": {
"big.js": "^5.2.2",
"emojis-list": "^3.0.0",
"json5": "^2.1.2"
}
}
}
},
"vue-style-loader": {
"version": "4.1.3",
"resolved": "https://registry.npm.taobao.org/vue-style-loader/download/vue-style-loader-4.1.3.tgz",

2
package.json

@ -6,6 +6,7 @@
"serve": "npm run dev:h5",
"build": "npm run build:h5",
"lint": "vue-cli-service lint",
"fix": "vue-cli-service lint --fix",
"build:app-plus": "cross-env NODE_ENV=production UNI_PLATFORM=app-plus vue-cli-service uni-build",
"build:custom": "cross-env NODE_ENV=production uniapp-cli custom",
"build:h5": "cross-env NODE_ENV=production UNI_PLATFORM=h5 vue-cli-service uni-build",
@ -65,6 +66,7 @@
"alloyfinger": "^0.1.16",
"core-js": "^3.6.5",
"dayjs": "^1.10.5",
"lodash": "^4.17.21",
"postcss-loader": "^6.1.1",
"regenerator-runtime": "^0.12.1",
"register-service-worker": "^1.7.1",

5
public/index.html

@ -23,11 +23,6 @@
</noscript>
<div id="app"></div>
<!-- built files will be auto injected -->
<script src="https://unpkg.com/vconsole/dist/vconsole.min.js"></script>
<script>
// VConsole 默认会挂载到 `window.VConsole` 上
var vConsole = new window.VConsole();
</script>
</body>
</html>

3
src/main.js

@ -8,6 +8,9 @@ import './registerServiceWorker';
import AlloyFinger from 'alloyfinger';
import AlloyFingerPlugin from 'alloyfinger/vue/alloy_finger_vue';
Vue.use(AlloyFingerPlugin, { AlloyFinger });
// indexedDB
import indexedDB from '@/utils/indexedDB';
Vue.use(indexedDB);
//#endif
Vue.config.productionTip = false;

38
src/mock/rich-text.js → src/mock/mock.js

@ -30,4 +30,42 @@ export default [
});
},
},
{
path: '/users/userId',
handler: (req, res) => {
return res.json({
code: 200,
msg: 'ok',
success: true,
data: {
account: 'wally',
id: 123,
phone: '18603454788',
refresh_token: 'string',
token: 'string',
wxInfo: {
city: 'string',
country: 'string',
headImgUrl: 'string',
language: 'string',
nickname: 'string',
province: 'string',
sex: 0,
},
},
});
},
},
{
path: '/test1',
method: 'post',
handler: (req, res) => {
return res.json({
code: 200,
msg: 'ok',
success: true,
data: { account: 'wally' },
});
},
},
];

80
src/pages.json

@ -1,37 +1,43 @@
{
"pages": [
{
"path": "pages/index/index",
"style": {
"navigationBarTitleText": "uni-app"
}
},
{
"path": "pages/plugin-test/plugin-test",
"style": {
"navigationBarTitleText": "iframe-测试"
}
},
{
"path": "pages/rich-text/rich-text",
"style": {
"navigationBarTitleText": "rich-text 测试"
}
},
{
"path": "pages/pinch/pinch",
"style": {
"navigationBarTitleText": "pinch 测试"
}
}
],
"globalStyle": {
"navigationBarTextStyle": "black",
"navigationBarTitleText": "uni-app",
"navigationBarBackgroundColor": "#F8F8F8",
"backgroundColor": "#F8F8F8"
},
"easycom": {
"^u-(.*)": "uview-ui/components/u-$1/u-$1.vue"
}
}
{
"pages": [
{
"path": "pages/index/index",
"style": {
"navigationBarTitleText": "uni-app"
}
},
{
"path": "pages/plugin-test/plugin-test",
"style": {
"navigationBarTitleText": "iframe-测试"
}
},
{
"path": "pages/rich-text/rich-text",
"style": {
"navigationBarTitleText": "rich-text 测试"
}
},
{
"path": "pages/pinch/pinch",
"style": {
"navigationBarTitleText": "pinch 测试"
}
},
{
"path": "pages/test/test",
"style": {
"navigationBarTitleText": "test"
}
}
],
"globalStyle": {
"navigationBarTextStyle": "black",
"navigationBarTitleText": "uni-app",
"navigationBarBackgroundColor": "#F8F8F8",
"backgroundColor": "#F8F8F8"
},
"easycom": {
"^u-(.*)": "uview-ui/components/u-$1/u-$1.vue"
}
}

10
src/pages/index/index.vue

@ -1,13 +1,8 @@
<!--
* @Author: aBin
* @email: binbin0314@126.com
* @Date: 2021-07-19 10:09:22
* @LastEditors: aBin
* @LastEditTime: 2021-07-19 11:05:42
-->
<template>
<view class="container p-4 bg-gray-100">
<Globals />
<u-button @tap="$u.route('/pages/test/test')">打开test界面</u-button>
<!-- <view class="mt-5">
<u-button type="primary" size="default" @click="$u.route('/pages/plugin-test/plugin-test')">iframe 验证</u-button>
</view>
@ -22,6 +17,7 @@
<script>
import Globals from 'components/Globals/index.vue';
export default {
components: { Globals },
data() {

21
src/pages/test/test.vue

@ -0,0 +1,21 @@
<template>
<view class="container p-3">
<u-button type="primary" @click="add">add</u-button>
</view>
</template>
<script>
export default {
components: {},
data: () => ({}),
computed: {},
methods: {
add() {
this.$db.create('projects', { id: '123' });
},
},
watch: {},
};
</script>
<style></style>

172
src/utils/indexedDB.js

@ -1,33 +1,185 @@
import { name, version } from '@/config';
import { name } from '@/config/db';
import { curry } from 'lodash';
// 创建表
const createTable = (Vue, db) => {
const createCollection = (Vue, db) => {
// projects项目表
Vue.prototype.$db.projects = db.createObjectStore('projects', { keyPath: 'id' });
!db.objectStoreNames.contains('projects') && db.createObjectStore('projects', { keyPath: 'id' });
// roles 角色表
Vue.prototype.$db.roles = db.createObjectStore('roles', { keyPath: 'id' });
!db.objectStoreNames.contains('roles') && db.createObjectStore('roles', { keyPath: 'id' });
// plan_tasks 定期任务
Vue.prototype.$db.plan_tasks = db.createObjectStore('plan_tasks', { keyPath: 'id' });
!db.objectStoreNames.contains('plan_tasks') && db.createObjectStore('plan_tasks', { keyPath: 'id' });
// fixed_tasks 固定全局任务
Vue.prototype.$db.fixed_tasks = db.createObjectStore('fixed_tasks', { keyPath: 'id' });
Vue.prototype.$db.fixed_tasks = !db.objectStoreNames.contains('fixed_tasks') && db.createObjectStore('fixed_tasks', { keyPath: 'id' });
// variable_tasks 可变全局任务
Vue.prototype.$db.variable_tasks = db.createObjectStore('variable_tasks', { keyPath: 'id' });
Vue.prototype.$db.variable_tasks =
!db.objectStoreNames.contains('variable_tasks') && db.createObjectStore('variable_tasks', { keyPath: 'id' });
// plugins 插件表
Vue.prototype.$db.plugins = db.createObjectStore('plugins', { keyPath: 'id' });
Vue.prototype.$db.plugins = !db.objectStoreNames.contains('plugins') && db.createObjectStore('plugins', { keyPath: 'id' });
};
/**
* 新增数据
*
* @param {object} db 数据库database
* @param {string} collection 集合/
* @param {object} data 数据
*/
const create = (db, collection, data) => {
return new Promise((resolve, reject) => {
const request = db.transaction([collection], 'readwrite').objectStore(collection).add(data);
request.onsuccess = event => {
console.log(event);
// FIXME:
resolve(event);
};
request.onerror = event => {
console.log(event);
// FIXME:
reject(event);
};
});
};
/**
* 找到1条数据
*
* @param {object} db 数据库database
* @param {string} collection 集合/
* @param {string} key 索引关键字 一般是id
*/
const findOne = (db, collection, key) => {
return new Promise((resolve, reject) => {
const request = db.transaction([collection]).objectStore(collection).get(key);
request.onerror = event => {
console.log('indexedDB findOne error:', event);
// FIXME:
reject(event);
};
request.onsuccess = event => {
console.log('indexedDB findOne success:', event);
// FIXME:
resolve(event);
};
});
};
/**
* 找到所有数据
*
* @param {object} db 数据库database
* @param {string} collection 集合/
*/
const find = (db, collection) => {
return new Promise((resolve, reject) => {
const request = db.transaction(collection).objectStore(collection).openCursor();
request.onerror = event => {
console.log('indexedDB find error:', event);
reject(event);
};
request.onsuccess = event => {
const cursor = event.target.result;
if (cursor) {
console.log('indexedDB find success:', cursor);
cursor.continue();
// FIXME:
resolve(event.target.result);
} else {
console.log('没有更多数据了');
}
};
});
};
/**
* 更新数据
*
* @param {object} db 数据库database
* @param {string} collection 集合/
* @param {object} newData 新数据
*/
const update = (db, collection, newData) => {
return new Promise((resolve, reject) => {
const request = db.transaction([collection], 'readwrite').objectStore(collection).put(newData);
request.onerror = event => {
console.log('indexedDB UPDATE error:', event);
reject(event);
};
request.onsuccess = event => {
console.log('indexedDB UPDATE success:', event);
// FIXME:
resolve(event);
};
});
};
/**
* 移除数据 通过关键字
*
* @param {object} db 数据库database
* @param {string} collection 集合/
* @param {string} key 关键字
*/
const remove = (db, collection, key) => {
return new Promise((resolve, reject) => {
const request = db.transaction([collection], 'readwrite').objectStore(collection).delete(key);
request.onerror = event => {
console.log('indexedDB REMOVE error:', event);
reject(event);
};
request.onsuccess = event => {
console.log('indexedDB REMOVE success:', event);
resolve(event);
};
});
};
/**
* 创建索引
*
* @param {object} db 数据库database
* @param {string} collection 集合/
* @param {string} field 创建索引的字段名称
* @param {string} key 关键字
*/
const createIndexAndFind = (db, collection, field, key) => {
return new Promise((resolve, reject) => {
const index = db.transaction([collection], 'readonly').objectStore(collection).index(field);
const request = index.get(key);
// FIXME:
request.onerror = event => reject(event);
request.onsuccess = event => resolve(event);
});
};
const curriedCreate = curry(create);
export const curriedFindOne = curry(findOne);
export const curriedFind = curry(find);
export const curriedRemove = curry(remove);
export const curriedUpdate = curry(update);
export const curriedIndex = curry(createIndexAndFind);
const install = Vue => {
Vue.prototype.$db = {};
Vue.prototype.$db.indexedDB = window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB;
const request = window.indexedDB.open(name, version); // IDBRequest 对象
const request = Vue.prototype.$db.indexedDB.open(name, Date.now()); // IDBRequest 对象
request.onerror = error => console.error('打开数据库失败', error);
request.onsuccess = event => {
console.log('INDEXED_DB OPEN SUCCESS');
Vue.prototype.$db.db = event.target.result;
};
request.onupgradeneeded = event => {
console.log('INDEXED_DB OPEN onupgradeneeded');
Vue.prototype.$db.db = event.target.result;
// 创建表
createTable(Vue, Vue.prototype.$db.db);
createCollection(Vue, Vue.prototype.$db.db);
};
// create
console.log(curriedCreate(Vue.prototype.$db.db));
Vue.prototype.$db.create = curriedCreate(Vue.prototype.$db.db);
};
export default { install };

5
vue.config.js

@ -6,11 +6,12 @@ module.exports = {
productionSourceMap: false,
devServer: {
// open: true,
overlay: { warnings: true, errors: true },
overlay: { warnings: false, errors: true },
// proxy: {}
},
configureWebpack: { plugins: [] },
// , disable: true
pluginOptions: {
mock: { entry: './src/mock/rich-text.js', debug: true },
mock: { entry: './src/mock/mock.js', debug: true },
},
};

126
yarn.lock

@ -1306,6 +1306,13 @@
dependencies:
purgecss "^3.1.3"
"@fullhuman/postcss-purgecss@^4.0.3":
version "4.0.3"
resolved "https://registry.yarnpkg.com/@fullhuman/postcss-purgecss/-/postcss-purgecss-4.0.3.tgz#55d71712ec1c7a88e0d1ba5f10ce7fb6aa05beb4"
integrity sha512-/EnQ9UDWGGqHkn1UKAwSgh+gJHPKmD+Z+5dQ4gWT4qq2NUyez3zqAfZNwFH3eSgmgO+wjTXfhlLchx2M9/K+7Q==
dependencies:
purgecss "^4.0.3"
"@hap-toolkit/aaptjs@^1.0.0":
version "1.0.0"
resolved "https://registry.npm.taobao.org/@hap-toolkit/aaptjs/download/@hap-toolkit/aaptjs-1.0.0.tgz#460d45a846c0b786a421c82ce25fcd9fff0928e6"
@ -1729,7 +1736,7 @@
resolved "https://registry.npm.taobao.org/@soda/get-current-script/download/@soda/get-current-script-1.0.2.tgz#a53515db25d8038374381b73af20bb4f2e508d87"
integrity sha1-pTUV2yXYA4N0OBtzryC7Ty5QjYc=
"@tailwindcss/postcss7-compat@^2.2.0", "tailwindcss@npm:@tailwindcss/postcss7-compat":
"@tailwindcss/postcss7-compat@^2.2.0":
version "2.2.0"
resolved "https://registry.yarnpkg.com/@tailwindcss/postcss7-compat/-/postcss7-compat-2.2.0.tgz#adc5c301f5fd5ef0799f1d674999af12e8a5fd40"
integrity sha512-0OMFtc0+B+Gccg5DGfcv5aWjPFtGn6yyIpJvqEFdtk3O5t+H6Swe2R1VKN480Iwh6HE9kkvWA5ruFa+6gfJtWQ==
@ -2887,6 +2894,18 @@ atob@^2.1.2:
resolved "https://registry.npm.taobao.org/atob/download/atob-2.1.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fatob%2Fdownload%2Fatob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9"
integrity sha1-bZUX654DDSQ2ZmZR6GvZ9vE1M8k=
autoprefixer@^8.0.0:
version "8.6.5"
resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-8.6.5.tgz#343f3d193ed568b3208e00117a1b96eb691d4ee9"
integrity sha512-PLWJN3Xo/rycNkx+mp8iBDMTm3FeWe4VmYaZDSqL5QQB9sLsQkG5k8n+LNDFnhh9kdq2K+egL/icpctOmDHwig==
dependencies:
browserslist "^3.2.8"
caniuse-lite "^1.0.30000864"
normalize-range "^0.1.2"
num2fraction "^1.2.2"
postcss "^6.0.23"
postcss-value-parser "^3.2.3"
autoprefixer@^9, autoprefixer@^9.8.6:
version "9.8.6"
resolved "https://registry.nlark.com/autoprefixer/download/autoprefixer-9.8.6.tgz#3b73594ca1bf9266320c5acf1588d74dea74210f"
@ -3301,6 +3320,14 @@ browserify-zlib@^0.2.0:
dependencies:
pako "~1.0.5"
browserslist@^3.2.8:
version "3.2.8"
resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-3.2.8.tgz#b0005361d6471f0f5952797a76fc985f1f978fc6"
integrity sha512-WHVocJYavUwVgVViC0ORikPHQquXwVh939TaelZ4WDqpWgTX/FsGhl/+P4qBUAGcRvtOgDgC+xftNWWp2RUTAQ==
dependencies:
caniuse-lite "^1.0.30000844"
electron-to-chromium "^1.3.47"
browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.16.6:
version "4.16.6"
resolved "https://registry.nlark.com/browserslist/download/browserslist-4.16.6.tgz?cache=0&sync_timestamp=1619789101558&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fbrowserslist%2Fdownload%2Fbrowserslist-4.16.6.tgz#d7901277a5a88e554ed305b183ec9b0c08f66fa2"
@ -3535,6 +3562,11 @@ caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001219:
resolved "https://registry.nlark.com/caniuse-lite/download/caniuse-lite-1.0.30001237.tgz?cache=0&sync_timestamp=1623477021063&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fcaniuse-lite%2Fdownload%2Fcaniuse-lite-1.0.30001237.tgz#4b7783661515b8e7151fc6376cfd97f0e427b9e5"
integrity sha1-S3eDZhUVuOcVH8Y3bP2X8OQnueU=
caniuse-lite@^1.0.30000844, caniuse-lite@^1.0.30000864:
version "1.0.30001245"
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001245.tgz#45b941bbd833cb0fa53861ff2bae746b3c6ca5d4"
integrity sha512-768fM9j1PKXpOCKws6eTo3RHmvTUsG9UrpT4WoREFeZgJBTi4/X9g565azS/rVUGtqb8nt7FjLeF5u4kukERnA==
capture-exit@^2.0.0:
version "2.0.0"
resolved "https://registry.npm.taobao.org/capture-exit/download/capture-exit-2.0.0.tgz#fb953bfaebeb781f62898239dabb426d08a509a4"
@ -3603,7 +3635,7 @@ check-types@^8.0.3:
resolved "https://registry.nlark.com/check-types/download/check-types-8.0.3.tgz#3356cca19c889544f2d7a95ed49ce508a0ecf552"
integrity sha1-M1bMoZyIlUTy16le1JzlCKDs9VI=
"chokidar@>=3.0.0 <4.0.0", chokidar@^3.4.1, chokidar@^3.5.1:
"chokidar@>=3.0.0 <4.0.0", chokidar@^3.4.1, chokidar@^3.5.1, chokidar@^3.5.2:
version "3.5.2"
resolved "https://registry.nlark.com/chokidar/download/chokidar-3.5.2.tgz#dba3976fcadb016f66fd365021d91600d01c1e75"
integrity sha1-26OXb8rbAW9m/TZQIdkWANAcHnU=
@ -5163,6 +5195,11 @@ ejs@^2.6.1:
resolved "https://registry.npm.taobao.org/ejs/download/ejs-2.7.4.tgz?cache=0&sync_timestamp=1612644037163&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fejs%2Fdownload%2Fejs-2.7.4.tgz#48661287573dcc53e366c7a1ae52c3a120eec9ba"
integrity sha1-SGYSh1c9zFPjZsehrlLDoSDuybo=
electron-to-chromium@^1.3.47:
version "1.3.779"
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.779.tgz#de55492a756deec63424f89fbe62aec9776f0e6d"
integrity sha512-nreave0y/1Qhmo8XtO6C/LpawNyC6U26+q7d814/e+tIqUK073pM+4xW7WUXyqCRa5K4wdxHmNMBAi8ap9nEew==
electron-to-chromium@^1.3.723:
version "1.3.752"
resolved "https://registry.nlark.com/electron-to-chromium/download/electron-to-chromium-1.3.752.tgz?cache=0&sync_timestamp=1623290610685&other_urls=https%3A%2F%2Fregistry.nlark.com%2Felectron-to-chromium%2Fdownload%2Felectron-to-chromium-1.3.752.tgz#0728587f1b9b970ec9ffad932496429aef750d09"
@ -9991,6 +10028,14 @@ postcss-js@^2:
camelcase-css "^2.0.1"
postcss "^7.0.18"
postcss-js@^3.0.3:
version "3.0.3"
resolved "https://registry.yarnpkg.com/postcss-js/-/postcss-js-3.0.3.tgz#2f0bd370a2e8599d45439f6970403b5873abda33"
integrity sha512-gWnoWQXKFw65Hk/mi2+WTQTHdPD5UJdDXZmX073EY/B3BWnYjO4F4t0VneTCnCGQ5E5GsCdMkzPaTXwl3r5dJw==
dependencies:
camelcase-css "^2.0.1"
postcss "^8.1.6"
postcss-load-config@^2.0.0:
version "2.1.2"
resolved "https://registry.nlark.com/postcss-load-config/download/postcss-load-config-2.1.2.tgz#c5ea504f2c4aef33c7359a34de3573772ad7502a"
@ -9999,7 +10044,7 @@ postcss-load-config@^2.0.0:
cosmiconfig "^5.0.0"
import-cwd "^2.0.0"
postcss-load-config@^3.0.1:
postcss-load-config@^3.0.1, postcss-load-config@^3.1.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-3.1.0.tgz#d39c47091c4aec37f50272373a6a648ef5e97829"
integrity sha512-ipM8Ds01ZUophjDTQYSVP70slFSYg3T0/zyfII5vzhN6V57YSxMgG5syXuwi5VtS8wSf3iL30v0uBdoIVx4Q0g==
@ -10018,6 +10063,15 @@ postcss-loader@^3.0.0:
postcss-load-config "^2.0.0"
schema-utils "^1.0.0"
postcss-loader@^6.1.1:
version "6.1.1"
resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-6.1.1.tgz#58dd0a3accd9bc87cc52eff75244db578d11301a"
integrity sha512-lBmJMvRh1D40dqpWKr9Rpygwxn8M74U9uaCSeYGNKLGInbk9mXBt1ultHf2dH9Ghk6Ue4UXlXWwGMH9QdUJ5ug==
dependencies:
cosmiconfig "^7.0.0"
klona "^2.0.4"
semver "^7.3.5"
postcss-merge-longhand@^4.0.11:
version "4.0.11"
resolved "https://registry.nlark.com/postcss-merge-longhand/download/postcss-merge-longhand-4.0.11.tgz#62f49a13e4a0ee04e7b98f42bb16062ca2549e24"
@ -10130,6 +10184,13 @@ postcss-modules-values@^3.0.0:
icss-utils "^4.0.0"
postcss "^7.0.6"
postcss-nested@5.0.5:
version "5.0.5"
resolved "https://registry.yarnpkg.com/postcss-nested/-/postcss-nested-5.0.5.tgz#f0a107d33a9fab11d7637205f5321e27223e3603"
integrity sha512-GSRXYz5bccobpTzLQZXOnSOfKl6TwVr5CyAQJUPub4nuRJSOECK5AqurxVgmtxP48p0Kc/ndY/YyS1yqldX0Ew==
dependencies:
postcss-selector-parser "^6.0.4"
postcss-nested@^4:
version "4.2.3"
resolved "https://registry.yarnpkg.com/postcss-nested/-/postcss-nested-4.2.3.tgz#c6f255b0a720549776d220d00c4b70cd244136f6"
@ -10266,7 +10327,7 @@ postcss-selector-parser@^5.0.0:
indexes-of "^1.0.1"
uniq "^1.0.1"
postcss-selector-parser@^6.0.0, postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.6:
postcss-selector-parser@^6.0.0, postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4, postcss-selector-parser@^6.0.6:
version "6.0.6"
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"
integrity sha1-LFu6gXSsL2mBq2MaQqsO5UrzMuo=
@ -10309,7 +10370,7 @@ postcss-value-parser@^4.0.2, postcss-value-parser@^4.1.0:
resolved "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-4.1.0.tgz#443f6a20ced6481a2bda4fa8532a6e55d789a2cb"
integrity sha1-RD9qIM7WSBor2k+oUypuVdeJoss=
postcss@^6.0.0, postcss@^6.0.9:
postcss@^6.0.0, postcss@^6.0.23, postcss@^6.0.9:
version "6.0.23"
resolved "https://registry.nlark.com/postcss/download/postcss-6.0.23.tgz#61c82cc328ac60e677645f979054eb98bc0e3324"
integrity sha1-YcgswyisYOZ3ZF+XkFTrmLwOMyQ=
@ -10327,7 +10388,7 @@ postcss@^7, postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.18, po
source-map "^0.6.1"
supports-color "^6.1.0"
postcss@^8.2.1:
postcss@^8.1.6, postcss@^8.2.1, postcss@^8.3.5:
version "8.3.5"
resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.3.5.tgz#982216b113412bc20a86289e91eb994952a5b709"
integrity sha512-NxTuJocUhYGsMiMFHDUkmjSKT3EdH4/WbGF6GCi1NDGk+vbcUTun4fpbOqaPtD8IIsztA2ilZm2DhYCuyN58gA==
@ -10499,6 +10560,16 @@ purgecss@^3.1.3:
postcss "^8.2.1"
postcss-selector-parser "^6.0.2"
purgecss@^4.0.3:
version "4.0.3"
resolved "https://registry.yarnpkg.com/purgecss/-/purgecss-4.0.3.tgz#8147b429f9c09db719e05d64908ea8b672913742"
integrity sha512-PYOIn5ibRIP34PBU9zohUcCI09c7drPJJtTDAc0Q6QlRz2/CHQ8ywGLdE7ZhxU2VTqB7p5wkvj5Qcm05Rz3Jmw==
dependencies:
commander "^6.0.0"
glob "^7.0.0"
postcss "^8.2.1"
postcss-selector-parser "^6.0.2"
q@^1.1.2, q@^1.5.1:
version "1.5.1"
resolved "https://registry.nlark.com/q/download/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7"
@ -11322,10 +11393,10 @@ semver@7.0.0:
resolved "https://registry.nlark.com/semver/download/semver-7.0.0.tgz#5f3ca35761e47e05b206c6daff2cf814f0316b8e"
integrity sha1-XzyjV2HkfgWyBsba/yz4FPAxa44=
semver@^7.3.2, semver@^7.3.4:
semver@^7.3.2, semver@^7.3.4, semver@^7.3.5:
version "7.3.5"
resolved "https://registry.nlark.com/semver/download/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7"
integrity sha1-C2Ich5NI2JmOSw5L6Us/EuYBjvc=
resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7"
integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==
dependencies:
lru-cache "^6.0.0"
@ -12168,6 +12239,43 @@ table@^5.2.3:
slice-ansi "^2.1.0"
string-width "^3.0.0"
tailwindcss@^2.2.4:
version "2.2.4"
resolved "https://registry.yarnpkg.com/tailwindcss/-/tailwindcss-2.2.4.tgz#6a2e259b1e26125aeaa7cdc479963fd217c308b0"
integrity sha512-OdBCPgazNNsknSP+JfrPzkay9aqKjhKtFhbhgxHgvEFdHy/GuRPo2SCJ4w1SFTN8H6FPI4m6qD/Jj20NWY1GkA==
dependencies:
"@fullhuman/postcss-purgecss" "^4.0.3"
arg "^5.0.0"
bytes "^3.0.0"
chalk "^4.1.1"
chokidar "^3.5.2"
color "^3.1.3"
cosmiconfig "^7.0.0"
detective "^5.2.0"
didyoumean "^1.2.1"
dlv "^1.1.3"
fast-glob "^3.2.5"
fs-extra "^10.0.0"
glob-parent "^6.0.0"
html-tags "^3.1.0"
is-glob "^4.0.1"
lodash "^4.17.21"
lodash.topath "^4.5.2"
modern-normalize "^1.1.0"
node-emoji "^1.8.1"
normalize-path "^3.0.0"
object-hash "^2.2.0"
postcss-js "^3.0.3"
postcss-load-config "^3.1.0"
postcss-nested "5.0.5"
postcss-selector-parser "^6.0.6"
postcss-value-parser "^4.1.0"
pretty-hrtime "^1.0.3"
quick-lru "^5.1.1"
reduce-css-calc "^2.1.8"
resolve "^1.20.0"
tmp "^0.2.1"
tapable@^1.0.0, tapable@^1.1.3:
version "1.1.3"
resolved "https://registry.npm.taobao.org/tapable/download/tapable-1.1.3.tgz?cache=0&sync_timestamp=1607088891056&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ftapable%2Fdownload%2Ftapable-1.1.3.tgz#a1fccc06b58db61fd7a45da2da44f5f3a3e67ba2"

Loading…
Cancel
Save