vue-persistedstate
Version:
state management
106 lines (98 loc) • 31 kB
JavaScript
(function webpackUniversalModuleDefinition(root, factory) {
if(typeof exports === 'object' && typeof module === 'object')
module.exports = factory();
else if(typeof define === 'function' && define.amd)
define("vue-persistedstate", [], factory);
else if(typeof exports === 'object')
exports["vue-persistedstate"] = factory();
else
root["vue-persistedstate"] = factory();
})(typeof self !== 'undefined' ? self : this, function() {
return /******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, {
/******/ configurable: false,
/******/ enumerable: true,
/******/ get: getter
/******/ });
/******/ }
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 0);
/******/ })
/************************************************************************/
/******/ ([
/* 0 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("Object.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__storage__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__vuex__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__pinia__ = __webpack_require__(3);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"Storage\", function() { return __WEBPACK_IMPORTED_MODULE_0__storage__[\"a\"]; });\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"createVuexPersistedState\", function() { return __WEBPACK_IMPORTED_MODULE_1__vuex__[\"a\"]; });\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"createPiniaPersistedState\", function() { return __WEBPACK_IMPORTED_MODULE_2__pinia__[\"a\"]; });\n/*\n * @Author: zhang_gen_yuan\n * @Date: 2022-04-15 18:08:34\n * @LastEditTime: 2022-04-16 23:15:17\n * @Descripttion: \n */\n\n\n\n\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvbWFpbi5qcz8zNDc5Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7Ozs7Ozs7QUFPQTtBQUNBO0FBQ0EiLCJmaWxlIjoiMC5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBAQXV0aG9yOiB6aGFuZ19nZW5feXVhblxuICogQERhdGU6IDIwMjItMDQtMTUgMTg6MDg6MzRcbiAqIEBMYXN0RWRpdFRpbWU6IDIwMjItMDQtMTYgMjM6MTU6MTdcbiAqIEBEZXNjcmlwdHRpb246IFxuICovXG5cbmltcG9ydCBTdG9yYWdlIGZyb20gJy4vc3RvcmFnZSc7XG5pbXBvcnQgY3JlYXRlVnVleFBlcnNpc3RlZFN0YXRlIGZyb20gJy4vdnVleCc7XG5pbXBvcnQgY3JlYXRlUGluaWFQZXJzaXN0ZWRTdGF0ZSBmcm9tICcuL3BpbmlhJztcbmV4cG9ydCB7XG4gICAgU3RvcmFnZSxcbiAgICBjcmVhdGVWdWV4UGVyc2lzdGVkU3RhdGUsXG4gICAgY3JlYXRlUGluaWFQZXJzaXN0ZWRTdGF0ZVxufVxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyAuL3NyYy9tYWluLmpzIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///0\n");
/***/ }),
/* 1 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n/*\n * @Author: zhang_gen_yuan\n * @Date: 2022-04-15 15:41:54\n * @LastEditTime: 2022-04-16 22:34:05\n * @Descripttion: \n */\nvar Storage = function () {\n function Storage(props) {\n _classCallCheck(this, Storage);\n\n this.props = props || {};\n this.source = this.props.source || window.localStorage;\n this.initRun();\n }\n\n _createClass(Storage, [{\n key: \"initRun\",\n value: function initRun() {\n var _this = this;\n\n /*\n * set 存储方法\n * @ param {String} key 键\n * @ param {String} value 值,存储的值可能是数组/对象,不能直接存储,需要转换 JSON.stringify\n * @ param {String} expired 过期时间,以分钟为单位\n */\n var reg = new RegExp(\"__expires__\");\n var data = this.source;\n var list = Object.keys(data);\n if (list.length > 0) {\n list.map(function (key, v) {\n if (!reg.test(key)) {\n var now = Date.now();\n var expires = data[key + \"__expires__\"] || Date.now + 1;\n if (now >= expires) {\n _this.remove(key);\n }\n }\n return key;\n });\n }\n }\n }, {\n key: \"set\",\n value: function set(key, value, expired) {\n /*\n * set 存储方法\n * @ param {String} key 键\n * @ param {String} value 值,\n * @ param {String} expired 过期时间,以毫秒为单位,非必须\n */\n var source = this.source;\n source[key] = JSON.stringify(value);\n if (expired && expired !== null) {\n source[key + \"__expires__\"] = Date.now() + expired;\n }\n return value;\n }\n }, {\n key: \"get\",\n value: function get(key) {\n /*\n * get 获取方法\n * @ param {String} key 键\n * @ param {String} expired 存储时为非必须字段,所以有可能取不到,默认为 Date.now+1\n */\n var source = this.source,\n expired = source[key + \"__expires__\"] || Date.now + 1;\n var now = Date.now();\n\n if (now >= expired) {\n this.remove(key);\n return;\n }\n var value = source[key] ? JSON.parse(source[key]) : source[key];\n return value;\n }\n }, {\n key: \"remove\",\n value: function remove(key) {\n var data = this.source,\n value = data[key];\n delete data[key];\n delete data[key + \"__expires__\"];\n return value;\n }\n }]);\n\n return Storage;\n}();\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Storage);\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvc3RvcmFnZS5qcz80ZWMyIl0sIm5hbWVzIjpbIlN0b3JhZ2UiLCJwcm9wcyIsInNvdXJjZSIsIndpbmRvdyIsImxvY2FsU3RvcmFnZSIsImluaXRSdW4iLCJyZWciLCJSZWdFeHAiLCJkYXRhIiwibGlzdCIsIk9iamVjdCIsImtleXMiLCJsZW5ndGgiLCJtYXAiLCJrZXkiLCJ2IiwidGVzdCIsIm5vdyIsIkRhdGUiLCJleHBpcmVzIiwicmVtb3ZlIiwidmFsdWUiLCJleHBpcmVkIiwiSlNPTiIsInN0cmluZ2lmeSIsInBhcnNlIl0sIm1hcHBpbmdzIjoiOzs7O0FBQUE7Ozs7OztJQU1NQSxPO0FBQ0osbUJBQVlDLEtBQVosRUFBbUI7QUFBQTs7QUFDakIsU0FBS0EsS0FBTCxHQUFhQSxTQUFTLEVBQXRCO0FBQ0EsU0FBS0MsTUFBTCxHQUFjLEtBQUtELEtBQUwsQ0FBV0MsTUFBWCxJQUFxQkMsT0FBT0MsWUFBMUM7QUFDQSxTQUFLQyxPQUFMO0FBQ0Q7Ozs7OEJBQ1M7QUFBQTs7QUFDUjs7Ozs7O0FBTUEsVUFBTUMsTUFBTSxJQUFJQyxNQUFKLENBQVcsYUFBWCxDQUFaO0FBQ0EsVUFBSUMsT0FBTyxLQUFLTixNQUFoQjtBQUNBLFVBQUlPLE9BQU9DLE9BQU9DLElBQVAsQ0FBWUgsSUFBWixDQUFYO0FBQ0EsVUFBSUMsS0FBS0csTUFBTCxHQUFjLENBQWxCLEVBQXFCO0FBQ25CSCxhQUFLSSxHQUFMLENBQVMsVUFBQ0MsR0FBRCxFQUFNQyxDQUFOLEVBQVk7QUFDbkIsY0FBSSxDQUFDVCxJQUFJVSxJQUFKLENBQVNGLEdBQVQsQ0FBTCxFQUFvQjtBQUNsQixnQkFBSUcsTUFBTUMsS0FBS0QsR0FBTCxFQUFWO0FBQ0EsZ0JBQUlFLFVBQVVYLEtBQVFNLEdBQVIscUJBQTZCSSxLQUFLRCxHQUFMLEdBQVcsQ0FBdEQ7QUFDQSxnQkFBSUEsT0FBT0UsT0FBWCxFQUFvQjtBQUNsQixvQkFBS0MsTUFBTCxDQUFZTixHQUFaO0FBQ0Q7QUFDRjtBQUNELGlCQUFPQSxHQUFQO0FBQ0QsU0FURDtBQVVEO0FBQ0Y7Ozt3QkFFR0EsRyxFQUFLTyxLLEVBQU9DLE8sRUFBUztBQUN2Qjs7Ozs7O0FBTUEsVUFBSXBCLFNBQVMsS0FBS0EsTUFBbEI7QUFDQUEsYUFBT1ksR0FBUCxJQUFjUyxLQUFLQyxTQUFMLENBQWVILEtBQWYsQ0FBZDtBQUNBLFVBQUlDLFdBQVdBLFlBQVksSUFBM0IsRUFBaUM7QUFDL0JwQixlQUFVWSxHQUFWLG9CQUE4QkksS0FBS0QsR0FBTCxLQUFhSyxPQUEzQztBQUNEO0FBQ0QsYUFBT0QsS0FBUDtBQUNEOzs7d0JBRUdQLEcsRUFBSztBQUNQOzs7OztBQUtBLFVBQU1aLFNBQVMsS0FBS0EsTUFBcEI7QUFBQSxVQUNFb0IsVUFBVXBCLE9BQVVZLEdBQVYscUJBQStCSSxLQUFLRCxHQUFMLEdBQVcsQ0FEdEQ7QUFFQSxVQUFNQSxNQUFNQyxLQUFLRCxHQUFMLEVBQVo7O0FBRUEsVUFBSUEsT0FBT0ssT0FBWCxFQUFvQjtBQUNsQixhQUFLRixNQUFMLENBQVlOLEdBQVo7QUFDQTtBQUNEO0FBQ0QsVUFBTU8sUUFBUW5CLE9BQU9ZLEdBQVAsSUFBY1MsS0FBS0UsS0FBTCxDQUFXdkIsT0FBT1ksR0FBUCxDQUFYLENBQWQsR0FBd0NaLE9BQU9ZLEdBQVAsQ0FBdEQ7QUFDQSxhQUFPTyxLQUFQO0FBQ0Q7OzsyQkFFTVAsRyxFQUFLO0FBQ1YsVUFBTU4sT0FBTyxLQUFLTixNQUFsQjtBQUFBLFVBQ0VtQixRQUFRYixLQUFLTSxHQUFMLENBRFY7QUFFQSxhQUFPTixLQUFLTSxHQUFMLENBQVA7QUFDQSxhQUFPTixLQUFRTSxHQUFSLGlCQUFQO0FBQ0EsYUFBT08sS0FBUDtBQUNEOzs7Ozs7QUFHWXJCLGdFQUFmIiwiZmlsZSI6IjEuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQEF1dGhvcjogemhhbmdfZ2VuX3l1YW5cbiAqIEBEYXRlOiAyMDIyLTA0LTE1IDE1OjQxOjU0XG4gKiBATGFzdEVkaXRUaW1lOiAyMDIyLTA0LTE2IDIyOjM0OjA1XG4gKiBARGVzY3JpcHR0aW9uOiBcbiAqL1xuY2xhc3MgU3RvcmFnZSB7XG4gIGNvbnN0cnVjdG9yKHByb3BzKSB7XG4gICAgdGhpcy5wcm9wcyA9IHByb3BzIHx8IHt9O1xuICAgIHRoaXMuc291cmNlID0gdGhpcy5wcm9wcy5zb3VyY2UgfHwgd2luZG93LmxvY2FsU3RvcmFnZTtcbiAgICB0aGlzLmluaXRSdW4oKTtcbiAgfVxuICBpbml0UnVuKCkge1xuICAgIC8qXG4gICAgICogc2V0IOWtmOWCqOaWueazlVxuICAgICAqIEAgcGFyYW0ge1N0cmluZ30gICAgIGtleSDplK5cbiAgICAgKiBAIHBhcmFtIHtTdHJpbmd9ICAgICB2YWx1ZSDlgLzvvIzlrZjlgqjnmoTlgLzlj6/og73mmK/mlbDnu4Qv5a+56LGh77yM5LiN6IO955u05o6l5a2Y5YKo77yM6ZyA6KaB6L2s5o2iIEpTT04uc3RyaW5naWZ5XG4gICAgICogQCBwYXJhbSB7U3RyaW5nfSAgICAgZXhwaXJlZCDov4fmnJ/ml7bpl7TvvIzku6XliIbpkp/kuLrljZXkvY1cbiAgICAgKi9cbiAgICBjb25zdCByZWcgPSBuZXcgUmVnRXhwKFwiX19leHBpcmVzX19cIik7XG4gICAgbGV0IGRhdGEgPSB0aGlzLnNvdXJjZTtcbiAgICBsZXQgbGlzdCA9IE9iamVjdC5rZXlzKGRhdGEpO1xuICAgIGlmIChsaXN0Lmxlbmd0aCA+IDApIHtcbiAgICAgIGxpc3QubWFwKChrZXksIHYpID0+IHtcbiAgICAgICAgaWYgKCFyZWcudGVzdChrZXkpKSB7XG4gICAgICAgICAgbGV0IG5vdyA9IERhdGUubm93KCk7XG4gICAgICAgICAgbGV0IGV4cGlyZXMgPSBkYXRhW2Ake2tleX1fX2V4cGlyZXNfX2BdIHx8IERhdGUubm93ICsgMTtcbiAgICAgICAgICBpZiAobm93ID49IGV4cGlyZXMpIHtcbiAgICAgICAgICAgIHRoaXMucmVtb3ZlKGtleSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBrZXk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBzZXQoa2V5LCB2YWx1ZSwgZXhwaXJlZCkge1xuICAgIC8qXG4gICAgICogc2V0IOWtmOWCqOaWueazlVxuICAgICAqIEAgcGFyYW0ge1N0cmluZ30gICAgIGtleSDplK5cbiAgICAgKiBAIHBhcmFtIHtTdHJpbmd9ICAgICB2YWx1ZSDlgLzvvIxcbiAgICAgKiBAIHBhcmFtIHtTdHJpbmd9ICAgICBleHBpcmVkIOi/h+acn+aXtumXtO+8jOS7peavq+enkuS4uuWNleS9je+8jOmdnuW/hemhu1xuICAgICAqL1xuICAgIGxldCBzb3VyY2UgPSB0aGlzLnNvdXJjZTtcbiAgICBzb3VyY2Vba2V5XSA9IEpTT04uc3RyaW5naWZ5KHZhbHVlKTtcbiAgICBpZiAoZXhwaXJlZCAmJiBleHBpcmVkICE9PSBudWxsKSB7XG4gICAgICBzb3VyY2VbYCR7a2V5fV9fZXhwaXJlc19fYF0gPSBEYXRlLm5vdygpICsgZXhwaXJlZDtcbiAgICB9XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG5cbiAgZ2V0KGtleSkge1xuICAgIC8qXG4gICAgICogZ2V0IOiOt+WPluaWueazlVxuICAgICAqIEAgcGFyYW0ge1N0cmluZ30gICAgIGtleSDplK5cbiAgICAgKiBAIHBhcmFtIHtTdHJpbmd9ICAgICBleHBpcmVkIOWtmOWCqOaXtuS4uumdnuW/hemhu+Wtl+aute+8jOaJgOS7peacieWPr+iDveWPluS4jeWIsO+8jOm7mOiupOS4uiBEYXRlLm5vdysxXG4gICAgICovXG4gICAgY29uc3Qgc291cmNlID0gdGhpcy5zb3VyY2UsXG4gICAgICBleHBpcmVkID0gc291cmNlW2Ake2tleX1fX2V4cGlyZXNfX2BdIHx8IERhdGUubm93ICsgMTtcbiAgICBjb25zdCBub3cgPSBEYXRlLm5vdygpO1xuXG4gICAgaWYgKG5vdyA+PSBleHBpcmVkKSB7XG4gICAgICB0aGlzLnJlbW92ZShrZXkpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCB2YWx1ZSA9IHNvdXJjZVtrZXldID8gSlNPTi5wYXJzZShzb3VyY2Vba2V5XSkgOiBzb3VyY2Vba2V5XTtcbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cblxuICByZW1vdmUoa2V5KSB7XG4gICAgY29uc3QgZGF0YSA9IHRoaXMuc291cmNlLFxuICAgICAgdmFsdWUgPSBkYXRhW2tleV07XG4gICAgZGVsZXRlIGRhdGFba2V5XTtcbiAgICBkZWxldGUgZGF0YVtgJHtrZXl9X19leHBpcmVzX19gXTtcbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgU3RvcmFnZTtcblxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyAuL3NyYy9zdG9yYWdlLmpzIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///1\n");
/***/ }),
/* 2 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\n/*\n * @Author: zhang_gen_yuan\n * @Date: 2022-04-15 15:51:42\n * @LastEditTime: 2022-04-16 23:03:10\n * @Descripttion:\n */\nvar createVuexPersistedState = function createVuexPersistedState() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n var storage = options.storage || window && window.localStorage;\n var key = options.key || \"vuex\";\n var whiteList = options.whiteList || [];\n var blackList = options.blackList || [];\n\n var isWhiteList = function isWhiteList() {\n return !!(whiteList && whiteList.length);\n };\n var isBlackList = function isBlackList() {\n return !!(blackList && blackList.length);\n };\n\n var handlerList = function handlerList(state, list, type) {\n var newState = _extends({}, state);\n var wObj = {};\n switch (type) {\n case \"whiteList\":\n for (var i = 0; i < list.length; i++) {\n if (newState.hasOwnProperty(list[i])) {\n wObj[list[i]] = newState[list[i]];\n }\n }\n return wObj;\n\n case \"blackList\":\n for (var _i = 0; _i < list.length; _i++) {\n if (newState.hasOwnProperty(list[_i])) {\n delete newState[list[_i]];\n }\n }\n return newState;\n\n default:\n return state;\n }\n };\n var whiteState = function whiteState(state) {\n var wState = JSON.parse(JSON.stringify(state));\n return handlerList(wState, whiteList, \"whiteList\");\n };\n\n var blackState = function blackState(state) {\n var bState = JSON.parse(JSON.stringify(state));\n return handlerList(bState, blackList, \"blackList\");\n };\n\n var getState = function getState(key, storage) {\n var value = storage.getItem(key);\n try {\n return typeof value !== \"undefined\" ? JSON.parse(value) : undefined;\n } catch (err) {\n console.warn(err);\n }\n return undefined;\n };\n\n // 设置state的值\n var setState = function setState(key, state) {\n return storage.setItem(key, JSON.stringify(state));\n };\n\n return function (store) {\n var data = Object.assign(store.state, getState(key, storage));\n if (data) {\n store.replaceState(data);\n }\n store.subscribe(function (mutation, state) {\n var newState = JSON.parse(JSON.stringify(state));\n // 处理名单\n if (isWhiteList() || isBlackList()) {\n if (isWhiteList()) {\n var isState = whiteState(state);\n setState(key, isState);\n }\n if (isBlackList()) {\n var _isState = blackState(state);\n setState(key, _isState);\n }\n } else {\n setState(key, newState);\n }\n });\n };\n};\n/* harmony default export */ __webpack_exports__[\"a\"] = (createVuexPersistedState);\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvdnVleC5qcz9hZGM1Il0sIm5hbWVzIjpbImNyZWF0ZVZ1ZXhQZXJzaXN0ZWRTdGF0ZSIsIm9wdGlvbnMiLCJzdG9yYWdlIiwid2luZG93IiwibG9jYWxTdG9yYWdlIiwia2V5Iiwid2hpdGVMaXN0IiwiYmxhY2tMaXN0IiwiaXNXaGl0ZUxpc3QiLCJsZW5ndGgiLCJpc0JsYWNrTGlzdCIsImhhbmRsZXJMaXN0Iiwic3RhdGUiLCJsaXN0IiwidHlwZSIsIm5ld1N0YXRlIiwid09iaiIsImkiLCJoYXNPd25Qcm9wZXJ0eSIsIndoaXRlU3RhdGUiLCJ3U3RhdGUiLCJKU09OIiwicGFyc2UiLCJzdHJpbmdpZnkiLCJibGFja1N0YXRlIiwiYlN0YXRlIiwiZ2V0U3RhdGUiLCJ2YWx1ZSIsImdldEl0ZW0iLCJ1bmRlZmluZWQiLCJlcnIiLCJjb25zb2xlIiwid2FybiIsInNldFN0YXRlIiwic2V0SXRlbSIsInN0b3JlIiwiZGF0YSIsIk9iamVjdCIsImFzc2lnbiIsInJlcGxhY2VTdGF0ZSIsInN1YnNjcmliZSIsIm11dGF0aW9uIiwiaXNTdGF0ZSJdLCJtYXBwaW5ncyI6Ijs7QUFBQTs7Ozs7O0FBTUEsSUFBTUEsMkJBQTJCLFNBQTNCQSx3QkFBMkIsR0FBa0I7QUFBQSxNQUFqQkMsT0FBaUIsdUVBQVAsRUFBTzs7QUFDakQsTUFBTUMsVUFBVUQsUUFBUUMsT0FBUixJQUFvQkMsVUFBVUEsT0FBT0MsWUFBckQ7QUFDQSxNQUFNQyxNQUFNSixRQUFRSSxHQUFSLElBQWUsTUFBM0I7QUFDQSxNQUFNQyxZQUFZTCxRQUFRSyxTQUFSLElBQXFCLEVBQXZDO0FBQ0EsTUFBTUMsWUFBWU4sUUFBUU0sU0FBUixJQUFxQixFQUF2Qzs7QUFFQSxNQUFNQyxjQUFjLFNBQWRBLFdBQWM7QUFBQSxXQUFNLENBQUMsRUFBRUYsYUFBYUEsVUFBVUcsTUFBekIsQ0FBUDtBQUFBLEdBQXBCO0FBQ0EsTUFBTUMsY0FBYyxTQUFkQSxXQUFjO0FBQUEsV0FB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QW1CO0FBQ2pCLGNBQUlrQyxVQUFVdkIsV0FBV1AsS0FBWCxDQUFkO0FBQ0FxQixtQkFBUzVCLEdBQVQsRUFBY3FDLE9BQWQ7QUFDRDtBQUNELFlBQUloQyxhQUFKLEVBQW1CO0FBQ2pCLGNBQUlnQyxXQUFVbEIsV0FBV1osS0FBWCxDQUFkO0FBQ0FxQixtQkFBUzVCLEdBQVQsRUFBY3FDLFFBQWQ7QUFDRDtBQUNGLE9BVEQsTUFTTztBQUNMVCxpQkFBUzVCLEdBQVQsRUFBY1UsUUFBZDtBQUNEO0FBQ0YsS0FmRDtBQWdCRCxHQXJCRDtBQXNCRCxDQTlFRDtBQStFZWYsaUZBQWYiLCJmaWxlIjoiMi5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBAQXV0aG9yOiB6aGFuZ19nZW5feXVhblxuICogQERhdGU6IDIwMjItMDQtMTUgMTU6NTE6NDJcbiAqIEBMYXN0RWRpdFRpbWU6IDIwMjItMDQtMTYgMjM6MDM6MTBcbiAqIEBEZXNjcmlwdHRpb246XG4gKi9cbmNvbnN0IGNyZWF0ZVZ1ZXhQZXJzaXN0ZWRTdGF0ZSA9IChvcHRpb25zID0ge30pID0+IHtcbiAgY29uc3Qgc3RvcmFnZSA9IG9wdGlvbnMuc3RvcmFnZSB8fCAod2luZG93ICYmIHdpbmRvdy5sb2NhbFN0b3JhZ2UpO1xuICBjb25zdCBrZXkgPSBvcHRpb25zLmtleSB8fCBcInZ1ZXhcIjtcbiAgY29uc3Qgd2hpdGVMaXN0ID0gb3B0aW9ucy53aGl0ZUxpc3QgfHwgW107XG4gIGNvbnN0IGJsYWNrTGlzdCA9IG9wdGlvbnMuYmxhY2tMaXN0IHx8IFtdO1xuXG4gIGNvbnN0IGlzV2hpdGVMaXN0ID0gKCkgPT4gISEod2hpdGVMaXN0ICYmIHdoaXRlTGlzdC5sZW5ndGgpO1xuICBjb25zdCBpc0JsYWNrTGlzdCA9ICgpID0+ICEhKGJsYWNrTGlzdCAmJiBibGFja0xpc3QubGVuZ3RoKTtcblxuICBjb25zdCBoYW5kbGVyTGlzdCA9IChzdGF0ZSwgbGlzdCwgdHlwZSkgPT4ge1xuICAgIGxldCBuZXdTdGF0ZSA9IHsgLi4uc3RhdGUgfTtcbiAgICBsZXQgd09iaiA9IHt9O1xuICAgIHN3aXRjaCAodHlwZSkge1xuICAgICAgY2FzZSBcIndoaXRlTGlzdFwiOlxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGxpc3QubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICBpZiAobmV3U3RhdGUuaGFzT3duUHJvcGVydHkobGlzdFtpXSkpIHtcbiAgICAgICAgICAgIHdPYmpbbGlzdFtpXV0gPSBuZXdTdGF0ZVtsaXN0W2ldXTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHdPYmo7XG5cbiAgICAgIGNhc2UgXCJibGFja0xpc3RcIjpcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsaXN0Lmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgaWYgKG5ld1N0YXRlLmhhc093blByb3BlcnR5KGxpc3RbaV0pKSB7XG4gICAgICAgICAgICBkZWxldGUgbmV3U3RhdGVbbGlzdFtpXV07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBuZXdTdGF0ZTtcblxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIHN0YXRlO1xuICAgIH1cbiAgfTtcbiAgY29uc3Qgd2hpdGVTdGF0ZSA9IChzdGF0ZSkgPT4ge1xuICAgIGxldCB3U3RhdGUgPSBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KHN0YXRlKSk7XG4gICAgcmV0dXJuIGhhbmRsZXJMaXN0KHdTdGF0ZSwgd2hpdGVMaXN0LCBcIndoaXRlTGlzdFwiKTtcbiAgfTtcblxuICBjb25zdCBibGFja1N0YXRlID0gKHN0YXRlKSA9PiB7XG4gICAgbGV0IGJTdGF0ZSA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoc3RhdGUpKTtcbiAgICByZXR1cm4gaGFuZGxlckxpc3QoYlN0YXRlLCBibGFja0xpc3QsIFwiYmxhY2tMaXN0XCIpO1xuICB9O1xuXG4gIGNvbnN0IGdldFN0YXRlID0gKGtleSwgc3RvcmFnZSkgPT4ge1xuICAgIGNvbnN0IHZhbHVlID0gc3RvcmFnZS5nZXRJdGVtKGtleSk7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiB0eXBlb2YgdmFsdWUgIT09IFwidW5kZWZpbmVkXCIgPyBKU09OLnBhcnNlKHZhbHVlKSA6IHVuZGVmaW5lZDtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGNvbnNvbGUud2FybihlcnIpO1xuICAgIH1cbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9O1xuXG4gIC8vIOiuvue9rnN0YXRl55qE5YC8XG4gIGNvbnN0IHNldFN0YXRlID0gKGtleSwgc3RhdGUpID0+IHN0b3JhZ2Uuc2V0SXRlbShrZXksIEpTT04uc3RyaW5naWZ5KHN0YXRlKSk7XG5cbiAgcmV0dXJuIChzdG9yZSkgPT4ge1xuICAgIGNvbnN0IGRhdGEgPSBPYmplY3QuYXNzaWduKHN0b3JlLnN0YXRlLCBnZXRTdGF0ZShrZXksIHN0b3JhZ2UpKTtcbiAgICBpZiAoZGF0YSkge1xuICAgICAgc3RvcmUucmVwbGFjZVN0YXRlKGRhdGEpO1xuICAgIH1cbiAgICBzdG9yZS5zdWJzY3JpYmUoKG11dGF0aW9uLCBzdGF0ZSkgPT4ge1xuICAgICAgbGV0IG5ld1N0YXRlID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShzdGF0ZSkpO1xuICAgICAgLy8gIOWkhOeQhuWQjeWNlVxuICAgICAgaWYgKGlzV2hpdGVMaXN0KCkgfHwgaXNCbGFja0xpc3QoKSkge1xuICAgICAgICBpZiAoaXNXaGl0ZUxpc3QoKSkge1xuICAgICAgICAgIGxldCBpc1N0YXRlID0gd2hpdGVTdGF0ZShzdGF0ZSk7XG4gICAgICAgICAgc2V0U3RhdGUoa2V5LCBpc1N0YXRlKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoaXNCbGFja0xpc3QoKSkge1xuICAgICAgICAgIGxldCBpc1N0YXRlID0gYmxhY2tTdGF0ZShzdGF0ZSk7XG4gICAgICAgICAgc2V0U3RhdGUoa2V5LCBpc1N0YXRlKTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgc2V0U3RhdGUoa2V5LCBuZXdTdGF0ZSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH07XG59O1xuZXhwb3J0IGRlZmF1bHQgY3JlYXRlVnVleFBlcnNpc3RlZFN0YXRlO1xuXG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vc3JjL3Z1ZXguanMiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///2\n");
/***/ }),
/* 3 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\n/*\n * @Author: zhang_gen_yuan\n * @Date: 2022-04-15 18:07:32\n * @LastEditTime: 2022-04-16 23:02:31\n * @Descripttion:\n */\nvar setStorage = function setStorage(key, value, storage) {\n storage.setItem(key, JSON.stringify(value));\n};\n\nvar getStorage = function getStorage(key, storage) {\n // return storage.getItem(key) ? JSON.parse(storage.getItem(key)) : {};\n var value = storage.getItem(key);\n try {\n return typeof value !== \"undefined\" ? JSON.parse(value) : undefined;\n } catch (err) {\n console.warn(err);\n }\n return undefined;\n};\n\nvar createPiniaPersistedState = function createPiniaPersistedState(options) {\n var key = options && options.key || \"pinia\";\n var storage = options && options.storage || window.localStorage;\n return function (context) {\n var store = context.store,\n options = context.options;\n\n var whiteList = options.whiteList || [];\n var data = getStorage(key + \"-\" + store.$id, storage);\n store.$subscribe(function (patch, state) {\n if (whiteList && whiteList.length !== 0) {\n var newState = JSON.parse(JSON.stringify(state));\n var whiteState = {};\n for (var i = 0; i < whiteList.length; i++) {\n whiteState[whiteList[i]] ? \"\" : whiteState[whiteList[i]] = newState[whiteList[i]];\n setStorage(key + \"-\" + store.$id, whiteState, storage);\n }\n } else {\n setStorage(key + \"-\" + store.$id, state, storage);\n }\n });\n return _extends({}, data);\n };\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (createPiniaPersistedState);\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvcGluaWEuanM/MmQ5NyJdLCJuYW1lcyI6WyJzZXRTdG9yYWdlIiwia2V5IiwidmFsdWUiLCJzdG9yYWdlIiwic2V0SXRlbSIsIkpTT04iLCJzdHJpbmdpZnkiLCJnZXRTdG9yYWdlIiwiZ2V0SXRlbSIsInBhcnNlIiwidW5kZWZpbmVkIiwiZXJyIiwiY29uc29sZSIsIndhcm4iLCJjcmVhdGVQaW5pYVBlcnNpc3RlZFN0YXRlIiwib3B0aW9ucyIsIndpbmRvdyIsImxvY2FsU3RvcmFnZSIsImNvbnRleHQiLCJzdG9yZSIsIndoaXRlTGlzdCIsImRhdGEiLCIkaWQiLCIkc3Vic2NyaWJlIiwicGF0Y2giLCJzdGF0ZSIsImxlbmd0aCIsIm5ld1N0YXRlIiwid2hpdGVTdGF0ZSIsImkiXSwibWFwcGluZ3MiOiI7O0FBQUE7Ozs7OztBQU1BLElBQU1BLGFBQWEsU0FBYkEsVUFBYSxDQUFDQyxHQUFELEVBQU1DLEtBQU4sRUFBYUMsT0FBYixFQUF5QjtBQUMxQ0EsVUFBUUMsT0FBUixDQUFnQkgsR0FBaEIsRUFBcUJJLEtBQUtDLFNBQUwsQ0FBZUosS0FBZixDQUFyQjtBQUNELENBRkQ7O0FBSUEsSUFBTUssYUFBYSxTQUFiQSxVQUFhLENBQUNOLEdBQUQsRUFBTUUsT0FBTixFQUFrQjtBQUNuQztBQUNBLE1BQU1ELFFBQVFDLFFBQVFLLE9BQVIsQ0FBZ0JQLEdBQWhCLENBQWQ7QUFDQSxNQUFJO0FBQ0YsV0FBTyxPQUFPQyxLQUFQLEtBQWlCLFdBQWpCLEdBQStCRyxLQUFLSSxLQUFMLENBQVdQLEtBQVgsQ0FBL0IsR0FBbURRLFNBQTFEO0FBQ0QsR0FGRCxDQUVFLE9BQU9DLEdBQVAsRUFBWTtBQUNaQyxZQUFRQyxJQUFSLENBQWFGLEdBQWI7QUFDRDtBQUNELFNBQU9ELFNBQVA7QUFDRCxDQVREOztBQVdBLElBQU1JLDRCQUE0QixTQUE1QkEseUJBQTRCLENBQUNDLE9BQUQsRUFBYTtBQUM3QyxNQUFNZCxNQUFNYyxXQUFXQSxRQUFRZCxHQUFuQixJQUEwQixPQUF0QztBQUNBLE1BQU1FLFVBQVVZLFdBQVdBLFFBQVFaLE9BQW5CLElBQThCYSxPQUFPQyxZQUFyRDtBQUNBLFNBQU8sVUFBQ0MsT0FBRCxFQUFhO0FBQUEsUUFDVkMsS0FEVSxHQUNTRCxPQURULENBQ1ZDLEtBRFU7QUFBQSxRQUNISixPQURHLEdBQ1NHLE9BRFQsQ0FDSEgsT0FERzs7QUFFbEIsUUFBTUssWUFBWUwsUUFBUUssU0FBUixJQUFxQixFQUF2QztBQUNBLFFBQU1DLE9BQU9kLFdBQWNOLEdBQWQsU0FBcUJrQixNQUFNRyxHQUEzQixFQUFrQ25CLE9BQWxDLENBQWI7QUFDQWdCLFVBQU1JLFVBQU4sQ0FBaUIsVUFBQ0MsS0FBRCxFQUFRQyxLQUFSLEVBQWtCO0FBQ2pDLFVBQUlMLGFBQWFBLFVBQVVNLE1BQVYsS0FBcUIsQ0FBdEMsRUFBeUM7QUFDdkMsWUFBSUMsV0FBV3RCLEtBQUtJLEtBQUwsQ0FBV0osS0FBS0MsU0FBTCxDQUFlbUIsS0FBZixDQUFYLENBQWY7QUFDQSxZQUFJRyxhQUFhLEVBQWpCO0FBQ0EsYUFBSyxJQUFJQyxJQUFJLENBQWIsRUFBZ0JBLElBQUlULFVBQVVNLE1BQTlCLEVBQXNDRyxHQUF0QyxFQUEyQztBQUN6Q0QscUJBQVdSLFVBQVVTLENBQVYsQ0FBWCxJQUNJLEVBREosR0FFS0QsV0FBV1IsVUFBVVMsQ0FBVixDQUFYLElBQTJCRixTQUFTUCxVQUFVUyxDQUFWLENBQVQsQ0FGaEM7QUFHQTdCLHFCQUFjQyxHQUFkLFNBQXFCa0IsTUFBTUcsR0FBM0IsRUFBa0NNLFVBQWxDLEVBQThDekIsT0FBOUM7QUFDRDtBQUNGLE9BVEQsTUFTTztBQUNMSCxtQkFBY0MsR0FBZCxTQUFxQmtCLE1BQU1HLEdBQTNCLEVBQWtDRyxLQUFsQyxFQUF5Q3RCLE9BQXpDO0FBQ0Q7QUFDRixLQWJEO0FBY0Esd0JBQ0trQixJQURMO0FBR0QsR0FyQkQ7QUFzQkQsQ0F6QkQ7O0FBMkJlUCxrRkFBZiIsImZpbGUiOiIzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIEBBdXRob3I6IHpoYW5nX2dlbl95dWFuXG4gKiBARGF0ZTogMjAyMi0wNC0xNSAxODowNzozMlxuICogQExhc3RFZGl0VGltZTogMjAyMi0wNC0xNiAyMzowMjozMVxuICogQERlc2NyaXB0dGlvbjpcbiAqL1xuY29uc3Qgc2V0U3RvcmFnZSA9IChrZXksIHZhbHVlLCBzdG9yYWdlKSA9PiB7XG4gIHN0b3JhZ2Uuc2V0SXRlbShrZXksIEpTT04uc3RyaW5naWZ5KHZhbHVlKSk7XG59O1xuXG5jb25zdCBnZXRTdG9yYWdlID0gKGtleSwgc3RvcmFnZSkgPT4ge1xuICAvLyAgIHJldHVybiBzdG9yYWdlLmdldEl0ZW0oa2V5KSA/IEpTT04ucGFyc2Uoc3RvcmFnZS5nZXRJdGVtKGtleSkpIDoge307XG4gIGNvbnN0IHZhbHVlID0gc3RvcmFnZS5nZXRJdGVtKGtleSk7XG4gIHRyeSB7XG4gICAgcmV0dXJuIHR5cGVvZiB2YWx1ZSAhPT0gXCJ1bmRlZmluZWRcIiA/IEpTT04ucGFyc2UodmFsdWUpIDogdW5kZWZpbmVkO1xuICB9IGNhdGNoIChlcnIpIHtcbiAgICBjb25zb2xlLndhcm4oZXJyKTtcbiAgfVxuICByZXR1cm4gdW5kZWZpbmVkO1xufTtcblxuY29uc3QgY3JlYXRlUGluaWFQZXJzaXN0ZWRTdGF0ZSA9IChvcHRpb25zKSA9PiB7XG4gIGNvbnN0IGtleSA9IG9wdGlvbnMgJiYgb3B0aW9ucy5rZXkgfHwgXCJwaW5pYVwiO1xuICBjb25zdCBzdG9yYWdlID0gb3B0aW9ucyAmJiBvcHRpb25zLnN0b3JhZ2UgfHwgd2luZG93LmxvY2FsU3RvcmFnZTtcbiAgcmV0dXJuIChjb250ZXh0KSA9PiB7XG4gICAgY29uc3QgeyBzdG9yZSwgb3B0aW9ucyB9ID0gY29udGV4dDtcbiAgICBjb25zdCB3aGl0ZUxpc3QgPSBvcHRpb25zLndoaXRlTGlzdCB8fCBbXTtcbiAgICBjb25zdCBkYXRhID0gZ2V0U3RvcmFnZShgJHtrZXl9LSR7c3RvcmUuJGlkfWAsIHN0b3JhZ2UpO1xuICAgIHN0b3JlLiRzdWJzY3JpYmUoKHBhdGNoLCBzdGF0ZSkgPT4ge1xuICAgICAgaWYgKHdoaXRlTGlzdCAmJiB3aGl0ZUxpc3QubGVuZ3RoICE9PSAwKSB7XG4gICAgICAgIGxldCBuZXdTdGF0ZSA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoc3RhdGUpKTtcbiAgICAgICAgbGV0IHdoaXRlU3RhdGUgPSB7fTtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB3aGl0ZUxpc3QubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICB3aGl0ZVN0YXRlW3doaXRlTGlzdFtpXV1cbiAgICAgICAgICAgID8gXCJcIlxuICAgICAgICAgICAgOiAod2hpdGVTdGF0ZVt3aGl0ZUxpc3RbaV1dID0gbmV3U3RhdGVbd2hpdGVMaXN0W2ldXSk7XG4gICAgICAgICAgc2V0U3RvcmFnZShgJHtrZXl9LSR7c3RvcmUuJGlkfWAsIHdoaXRlU3RhdGUsIHN0b3JhZ2UpO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzZXRTdG9yYWdlKGAke2tleX0tJHtzdG9yZS4kaWR9YCwgc3RhdGUsIHN0b3JhZ2UpO1xuICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiB7XG4gICAgICAuLi5kYXRhLFxuICAgIH07XG4gIH07XG59O1xuXG5leHBvcnQgZGVmYXVsdCBjcmVhdGVQaW5pYVBlcnNpc3RlZFN0YXRlO1xuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyAuL3NyYy9waW5pYS5qcyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///3\n");
/***/ })
/******/ ]);
});