Commit 7bd92143 authored by wildfirecode13's avatar wildfirecode13

1

parent d35b8615
File added
module.exports = {
"parser": "babel-eslint",
"env": {
"browser": true,
"es2021": true
},
"extends": [
"eslint:recommended",
"plugin:react/recommended"
],
"parserOptions": {
"ecmaFeatures": {
"jsx": true
},
"ecmaVersion": 12,
"sourceType": "module"
},
"plugins": [
"react"
],
"rules": {
"no-await-in-loop": "error", // Possible Errors
// "no-extra-parens": "error", // Possible Errors
"no-template-curly-in-string": "error", // Possible Errors
// "no-console": "error", // Possible Errors
"react/prop-types": "off", // react
"no-extra-semi": "off", // Possible Errors
"no-unused-vars": "off", // Variables 禁止出现未使用过的变量
// "no-useless-escape": "off", // Best Practices 禁用不必要的转义字符
"complexity": "off", // Best Practices
"no-param-reassign": "off", // Best Practices
"no-else-return": "off", // Best Practices
"no-useless-return": "off", // Best Practices
"no-magic-numbers": "off", // Best Practices
"prefer-const": "off", // ES6
"no-var": "off", // ES6
// "no-mixed-spaces-and-tabs": "off" // Stylistic Issues
}
};
\ No newline at end of file
node_modules
\ No newline at end of file
import {MD} from '@spark/utils';
let appId = CFG.appID;
const dcm = '202.' + CFG.projectId + '.0.0';
const domain = '//embedlog.duiba.com.cn';
let type = "";
if(window.navigator.userAgent.toLowerCase().indexOf("micromessenger") > -1){
type = "wx";
}else {
type = "app";
}
let MDList = [
{
ele: `.md1`,
data: {
dpm: `${appId}.110.1.1`,
dcm,
dom: `${type}.0.0.0`,
domain,
appId
},
once: false
},
{
ele: `.md2`,
data: {
dpm: `${appId}.110.2.1`,
dcm,
dom: `${type}.0.0.0`,
domain,
appId
},
once: false
},
{
ele: `.md3`,
data: {
dpm: `${appId}.110.3.1`,
dcm,
dom: `${type}.0.0.0`,
domain,
appId
},
once: false
},
{
ele: `.md4`,
data: {
dpm: `${appId}.110.4.1`,
dcm,
dom: `${type}.0.0.0`,
domain,
appId
},
once: false
},
{
ele: `.md5`,
data: {
dpm: `${appId}.110.5.1`,
dcm,
dom: `${type}.0.0.0`,
domain,
appId
},
once: false
},
{
ele: `.md6`,
data: {
dpm: `${appId}.110.6.1`,
dcm,
dom: `${type}.0.0.0`,
domain,
appId
},
once: false
},
{
ele: `.md7`,
data: {
dpm: `${appId}.110.7.1`,
dcm,
domain,
appId
},
once: false
},
{
ele: `.md8`,
data: {
dpm: `${appId}.110.8.1`,
dcm,
domain,
appId
},
once: false
},
{
ele: `.md9`,
data: {
dpm: `${appId}.110.9.1`,
dcm,
domain,
appId
},
once: false
},
{
ele: `.md10`,
data: {
dpm: `${appId}.110.10.1`,
dcm,
domain,
appId
},
once: false
},
{
ele: `.md11`,
data: {
dpm: `${appId}.110.11.1`,
dcm,
domain,
appId
},
once: false
},
{
ele: `.md12`,
data: {
dpm: `${appId}.110.12.1`,
dcm,
domain,
appId
},
once: false
},
];
export default () =>
MD({
show: MDList, // 曝光
click: MDList // 点击
});
# eslintdemo # playground
# 打包注意:
## 活动页
app.jsx
注释掉 分享落地页组件
utils/share.js
start().then() 方法里,需注释掉 wxShare(null,1)
public/index.html
注释掉 var isSharePage = true;
## 分享落地页
app.jsx
注释掉 首页组件
utils/share.js
start().then() 方法里,需注释掉 EventBus.emit("shareInit")
public/index.html
活动时间是写死的,定义在全局变量 CFG.activeTime 中
放开注释 var isSharePage = true;
/**
* Created by rockyl on 2021/1/13.
*/
module.exports = {
'GET /projectRule.query': {
success: true,
data: `活动规则: <br/>
<p>Mock出来的活动规则!!!</p>
<p>抵制不良游戏,拒绝盗版游戏。注意自我保护,谨防受骗上当。适度游戏益脑,沉迷游戏伤身。合理安排时间,享受健康生活。</p>
<h1>八荣八耻</h1>
<ul>
<li>以热爱祖国为荣,以危害祖国为耻。</li>
<li>以服务人民为荣,以背离人民为耻。</li>
<li>以崇尚科学为荣,以愚昧无知为耻。</li>
<li>以辛勤劳动为荣,以好逸恶劳为耻。</li>
<li>以团结互助为荣,以损人利己为耻。</li>
<li>以诚实守信为荣,以见利忘义为耻。</li>
<li>以遵纪守法为荣,以违法乱纪为耻。</li>
<li>以艰苦奋斗为荣,以骄奢淫逸为耻。</li>
</ul>`,
},
'POST /customActivity/duiba/imgUrl': {
success: true,
data: {
imgUrl: '//yun.duiba.com.cn/spark/assets/3f8175325f76e92087d64cb60936d23967656de6.png',
}
},
'POST /customActivity/duiba/imgUrlAndGreend': {
success: true,
data: {
imgUrl: '//yun.duiba.com.cn/spark/assets/3f8175325f76e92087d64cb60936d23967656de6.png',
}
},
'GET /customActivity/qrcode/getQrcode': {
success: true,
data: 'data:image/png;base64,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'
},
'GET /wechatShare/getShareInfo/v2': {
success: true,
},
'POST /wechat/transform/checkMobile': {
success: true,
data: true,
},
'POST /duibaUser/sendCode/v2': {
success: true,
data: 0,
},
'POST /wechat/transform/bind': {
success: true,
data: '',
},
'GET /ctool/getProjectUserInfo': {
success: true,
data: {
partnerUserId: 'aaaaa',
},
},
'GET /aaw/projectx/getAppInfo': {
"success": true,
"code": null,
"desc": null,
"data": {
"shareJs": "<script>window.requireShare = function(){alert('share from dev')}</script>",
"loginJs": "<script>window.requirelogin = function(success,error){console.log('我去登录啦')}</script>"
}
},
}
/**
* Created by rockyl on 2021/1/13.
*/
module.exports = Object.assign({},
require('./main'), //业务mock
require('./common'), //通用接口mock
);
/**
* Created by rockyl on 2021/1/13.
*/
module.exports = {
'POST /join.do': {
success: true,
data: {
imgUrl: '//yun.duiba.com.cn/spark/assets/3f8175325f76e92087d64cb60936d23967656de6.png',
}
},
}
{
"name": "sparkproject-1614590528477",
"version": "1.0.0",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
"@babel/code-frame": {
"version": "7.12.13",
"resolved": "http://npm.dui88.com:80/@babel%2fcode-frame/-/code-frame-7.12.13.tgz",
"integrity": "sha1-3PyCa+72XnXFDiHTg319lXmN1lg=",
"dev": true,
"requires": {
"@babel/highlight": "^7.12.13"
}
},
"@babel/generator": {
"version": "7.13.9",
"resolved": "http://npm.dui88.com:80/@babel%2fgenerator/-/generator-7.13.9.tgz",
"integrity": "sha1-Onqpb577jivkLTjYDizrTGTY3jk=",
"dev": true,
"requires": {
"@babel/types": "^7.13.0",
"jsesc": "^2.5.1",
"source-map": "^0.5.0"
},
"dependencies": {
"source-map": {
"version": "0.5.7",
"resolved": "http://npm.dui88.com:80/source-map/-/source-map-0.5.7.tgz",
"integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
"dev": true
}
}
},
"@babel/helper-function-name": {
"version": "7.12.13",
"resolved": "http://npm.dui88.com:80/@babel%2fhelper-function-name/-/helper-function-name-7.12.13.tgz",
"integrity": "sha1-k61lbbPDwiMlWf17LD29y+DrN3o=",
"dev": true,
"requires": {
"@babel/helper-get-function-arity": "^7.12.13",
"@babel/template": "^7.12.13",
"@babel/types": "^7.12.13"
}
},
"@babel/helper-get-function-arity": {
"version": "7.12.13",
"resolved": "http://npm.dui88.com:80/@babel%2fhelper-get-function-arity/-/helper-get-function-arity-7.12.13.tgz",
"integrity": "sha1-vGNFHUA6OzCCuX4diz/lvUCR5YM=",
"dev": true,
"requires": {
"@babel/types": "^7.12.13"
}
},
"@babel/helper-split-export-declaration": {
"version": "7.12.13",
"resolved": "http://npm.dui88.com:80/@babel%2fhelper-split-export-declaration/-/helper-split-export-declaration-7.12.13.tgz",
"integrity": "sha1-6UML4AuvPoiw4T5vnU6vITY3KwU=",
"dev": true,
"requires": {
"@babel/types": "^7.12.13"
}
},
"@babel/helper-validator-identifier": {
"version": "7.12.11",
"resolved": "http://npm.dui88.com:80/@babel%2fhelper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz",
"integrity": "sha1-yaHwIZF9y1zPDU5FPjmQIpgfye0=",
"dev": true
},
"@babel/highlight": {
"version": "7.13.10",
"resolved": "http://npm.dui88.com:80/@babel%2fhighlight/-/highlight-7.13.10.tgz",
"integrity": "sha1-qLKmYUj1sn1maxXYF3Q0enMdUtE=",
"dev": true,
"requires": {
"@babel/helper-validator-identifier": "^7.12.11",
"chalk": "^2.0.0",
"js-tokens": "^4.0.0"
}
},
"@babel/parser": {
"version": "7.13.12",
"resolved": "http://npm.dui88.com:80/@babel%2fparser/-/parser-7.13.12.tgz",
"integrity": "sha1-ujIAWUIHdDlNOwwCM7pA5CULgdE=",
"dev": true
},
"@babel/runtime": {
"version": "7.13.8",
"resolved": "http://npm.dui88.com:80/@babel%2fruntime/-/runtime-7.13.8.tgz",
"integrity": "sha1-zIhqhcBy3x3iNnDcGqWfwRbEAXw=",
"requires": {
"regenerator-runtime": "^0.13.4"
}
},
"@babel/template": {
"version": "7.12.13",
"resolved": "http://npm.dui88.com:80/@babel%2ftemplate/-/template-7.12.13.tgz",
"integrity": "sha1-UwJlvooliduzdSOETFvLVZR/syc=",
"dev": true,
"requires": {
"@babel/code-frame": "^7.12.13",
"@babel/parser": "^7.12.13",
"@babel/types": "^7.12.13"
}
},
"@babel/traverse": {
"version": "7.13.0",
"resolved": "http://npm.dui88.com:80/@babel%2ftraverse/-/traverse-7.13.0.tgz",
"integrity": "sha1-bZV1JHX4bufe0GU23jCaZfyJZsw=",
"dev": true,
"requires": {
"@babel/code-frame": "^7.12.13",
"@babel/generator": "^7.13.0",
"@babel/helper-function-name": "^7.12.13",
"@babel/helper-split-export-declaration": "^7.12.13",
"@babel/parser": "^7.13.0",
"@babel/types": "^7.13.0",
"debug": "^4.1.0",
"globals": "^11.1.0",
"lodash": "^4.17.19"
}
},
"@babel/types": {
"version": "7.13.12",
"resolved": "http://npm.dui88.com:80/@babel%2ftypes/-/types-7.13.12.tgz",
"integrity": "sha1-7b+ZII70iFKs3/HIpoGh5K3lgM0=",
"dev": true,
"requires": {
"@babel/helper-validator-identifier": "^7.12.11",
"lodash": "^4.17.19",
"to-fast-properties": "^2.0.0"
}
},
"@eslint/eslintrc": {
"version": "0.4.0",
"resolved": "http://npm.dui88.com:80/@eslint%2feslintrc/-/eslintrc-0.4.0.tgz",
"integrity": "sha1-mcwKBYTXLx3zi5APsGK6mV85VUc=",
"dev": true,
"requires": {
"ajv": "^6.12.4",
"debug": "^4.1.1",
"espree": "^7.3.0",
"globals": "^12.1.0",
"ignore": "^4.0.6",
"import-fresh": "^3.2.1",
"js-yaml": "^3.13.1",
"minimatch": "^3.0.4",
"strip-json-comments": "^3.1.1"
},
"dependencies": {
"globals": {
"version": "12.4.0",
"resolved": "http://npm.dui88.com:80/globals/-/globals-12.4.0.tgz",
"integrity": "sha1-oYgTV2pBsAokqX5/gVkYwuGZJfg=",
"dev": true,
"requires": {
"type-fest": "^0.8.1"
}
},
"import-fresh": {
"version": "3.3.0",
"resolved": "http://npm.dui88.com:80/import-fresh/-/import-fresh-3.3.0.tgz",
"integrity": "sha1-NxYsJfy566oublPVtNiM4X2eDCs=",
"dev": true,
"requires": {
"parent-module": "^1.0.0",
"resolve-from": "^4.0.0"
}
},
"resolve-from": {
"version": "4.0.0",
"resolved": "http://npm.dui88.com:80/resolve-from/-/resolve-from-4.0.0.tgz",
"integrity": "sha1-SrzYUq0y3Xuqv+m0DgCjbbXzkuY=",
"dev": true
}
}
},
"@spark/api-base": {
"version": "2.0.17",
"resolved": "http://npm.dui88.com:80/@spark%2fapi-base/-/api-base-2.0.17.tgz",
"integrity": "sha512-lDwGtxsWpdVLU+m+VmK5NZonuFrOsQsIve/XKSWm63b57hkz2kfvH3jlnVEIX1rSoiwDKJxPUbbhnCi6xzgaeg==",
"requires": {
"@spark/common-helpers": "^1.0.5",
"@spark/utils": "^2.0.3"
}
},
"@spark/api-common": {
"version": "2.0.12",
"resolved": "http://npm.dui88.com:80/@spark%2fapi-common/-/api-common-2.0.12.tgz",
"integrity": "sha512-LafrAh72q7Uf+nUY96Hqt0h7VxE4GRgyPkA2GW4/vVRDJIV4Ms8Inxfn0/Es1S8U4bmuvHxM5jk0DH72a3CXGw==",
"requires": {
"@spark/api-base": "^2.0.7",
"@spark/common-helpers": "^1.0.2",
"@spark/utils": "^2.0.22",
"duiba-utils": "^1.0.6"
}
},
"@spark/common-helpers": {
"version": "1.0.6",
"resolved": "http://npm.dui88.com:80/@spark%2fcommon-helpers/-/common-helpers-1.0.6.tgz",
"integrity": "sha512-/FXFRJLkQ0uhsUtMYSh/Z/071jO89sqYu4WXp1L7p9SZzYGVLoMYH959wXewHamY0v40Ff63WNyZWfv1GX1ZHA==",
"requires": {
"@babel/runtime": "^7.12.5",
"@spark/api-base": "^2.0.7",
"@spark/projectx": "^2.0.10",
"duiba-utils": "^1.0.6"
}
},
"@spark/projectx": {
"version": "2.0.10",
"resolved": "http://npm.dui88.com:80/@spark%2fprojectx/-/projectx-2.0.10.tgz",
"integrity": "sha512-Q7IEwMuTL+nxkf2y8c1W8Vqtj9g/QNM/hIbpKUMn+dIzUFSJ9ORbVJnopS+O/3I6GHosXwSWAL8amGP7cbPKTw==",
"requires": {
"@spark/api-base": "^2.0.9",
"@spark/common-helpers": "^1.0.1",
"@spark/utils": "^2.0.19"
}
},
"@spark/share": {
"version": "2.0.44",
"resolved": "http://npm.dui88.com:80/@spark%2fshare/-/share-2.0.44.tgz",
"integrity": "sha512-/5fQSmhlNBoPbOskB90aNm1eg9tlfQH37Pv+cWuI/hbBtF7OkeO8n0j4W91iLv6NDaniiOhmZ6gAfMfLNOYYow==",
"requires": {
"@spark/api-base": "^2.0.2",
"@spark/api-common": "^2.0.3",
"@spark/utils": "^2.0.4"
}
},
"@spark/ui": {
"version": "2.0.26",
"resolved": "http://npm.dui88.com:80/@spark%2fui/-/ui-2.0.26.tgz",
"integrity": "sha512-OM6681m0aN/jquieCGfSJXdAp16YALGG4Dgv0wc7HleLmiO8G1m0OUg3hVxf6r2eTAI3uvyJlE8wQb2/69r03A==",
"requires": {
"@spark/utils": "^2.0.20",
"classnames": "^2.2.6",
"hammerjs": "^2.0.8",
"history": "*",
"react-router-dom": "*",
"spark-wrapper-fyge": "^1.0.30"
}
},
"@spark/utils": {
"version": "2.0.31",
"resolved": "http://npm.dui88.com:80/@spark%2futils/-/utils-2.0.31.tgz",
"integrity": "sha512-vaOoHNZJG7GGlTz3ZNuSGSZhaUph7QeyrLAfbPQUR9+MZVk2cjA3XPRkllDH9y4aejCXP+4XiUTpz6vj5/riEg==",
"requires": {
"@spark/api-base": "^2.0.17",
"crypto-js": "^4.0.0",
"html-shot": "^1.0.13",
"intersection-observer": "^0.12.0"
}
},
"@types/json-schema": {
"version": "7.0.7",
"resolved": "http://npm.dui88.com:80/@types%2fjson-schema/-/json-schema-7.0.7.tgz",
"integrity": "sha1-mKmTUWyFnrDVxMjwmDF6nqaNua0="
},
"acorn": {
"version": "7.4.1",
"resolved": "http://npm.dui88.com:80/acorn/-/acorn-7.4.1.tgz",
"integrity": "sha1-/q7SVZc9LndVW4PbwIhRpsY1IPo=",
"dev": true
},
"acorn-jsx": {
"version": "5.3.1",
"resolved": "http://npm.dui88.com:80/acorn-jsx/-/acorn-jsx-5.3.1.tgz",
"integrity": "sha1-/IZh4Rt6wVOcR9v+oucrOvNNJns=",
"dev": true
},
"ajv": {
"version": "6.12.6",
"resolved": "http://npm.dui88.com:80/ajv/-/ajv-6.12.6.tgz",
"integrity": "sha1-uvWmLoArB9l3A0WG+MO69a3ybfQ=",
"requires": {
"fast-deep-equal": "^3.1.1",
"fast-json-stable-stringify": "^2.0.0",
"json-schema-traverse": "^0.4.1",
"uri-js": "^4.2.2"
}
},
"ajv-errors": {
"version": "1.0.1",
"resolved": "http://npm.dui88.com:80/ajv-errors/-/ajv-errors-1.0.1.tgz",
"integrity": "sha1-81mGrOuRr63sQQL72FAUlQzvpk0="
},
"ajv-keywords": {
"version": "3.5.2",
"resolved": "http://npm.dui88.com:80/ajv-keywords/-/ajv-keywords-3.5.2.tgz",
"integrity": "sha1-MfKdpatuANHC0yms97WSlhTVAU0="
},
"ansi-colors": {
"version": "4.1.1",
"resolved": "http://npm.dui88.com:80/ansi-colors/-/ansi-colors-4.1.1.tgz",
"integrity": "sha1-y7muJWv3UK8eqzRPIpqif+lLo0g=",
"dev": true
},
"ansi-regex": {
"version": "5.0.0",
"resolved": "http://npm.dui88.com:80/ansi-regex/-/ansi-regex-5.0.0.tgz",
"integrity": "sha1-OIU59VF5vzkznIGvMKZU1p+Hy3U=",
"dev": true
},
"ansi-styles": {
"version": "3.2.1",
"resolved": "http://npm.dui88.com:80/ansi-styles/-/ansi-styles-3.2.1.tgz",
"integrity": "sha1-QfuyAkPlCxK+DwS43tvwdSDOhB0=",
"requires": {
"color-convert": "^1.9.0"
}
},
"argparse": {
"version": "1.0.10",
"resolved": "http://npm.dui88.com:80/argparse/-/argparse-1.0.10.tgz",
"integrity": "sha1-vNZ5HqWuCXJeF+WtmIE0zUCz2RE=",
"requires": {
"sprintf-js": "~1.0.2"
}
},
"array-includes": {
"version": "3.1.3",
"resolved": "http://npm.dui88.com:80/array-includes/-/array-includes-3.1.3.tgz",
"integrity": "sha1-x/YZs4KtKvr1Mmzd/cCvxhr3aQo=",
"dev": true,
"requires": {
"call-bind": "^1.0.2",
"define-properties": "^1.1.3",
"es-abstract": "^1.18.0-next.2",
"get-intrinsic": "^1.1.1",
"is-string": "^1.0.5"
}
},
"array.prototype.flatmap": {
"version": "1.2.4",
"resolved": "http://npm.dui88.com:80/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz",
"integrity": "sha1-lM/UfMFVbsB0fZf3x3OMWBIgBMk=",
"dev": true,
"requires": {
"call-bind": "^1.0.0",
"define-properties": "^1.1.3",
"es-abstract": "^1.18.0-next.1",
"function-bind": "^1.1.1"
}
},
"astral-regex": {
"version": "2.0.0",
"resolved": "http://npm.dui88.com:80/astral-regex/-/astral-regex-2.0.0.tgz",
"integrity": "sha1-SDFDxWeu7UeFdZwIZXhtx319LjE=",
"dev": true
},
"at-least-node": {
"version": "1.0.0",
"resolved": "http://npm.dui88.com:80/at-least-node/-/at-least-node-1.0.0.tgz",
"integrity": "sha1-YCzUtG6EStTv/JKoARo8RuAjjcI="
},
"babel-eslint": {
"version": "10.1.0",
"resolved": "http://npm.dui88.com:80/babel-eslint/-/babel-eslint-10.1.0.tgz",
"integrity": "sha1-aWjlaKkQt4+zd5zdi2rC9HmUMjI=",
"dev": true,
"requires": {
"@babel/code-frame": "^7.0.0",
"@babel/parser": "^7.7.0",
"@babel/traverse": "^7.7.0",
"@babel/types": "^7.7.0",
"eslint-visitor-keys": "^1.0.0",
"resolve": "^1.12.0"
}
},
"balanced-match": {
"version": "1.0.0",
"resolved": "http://npm.dui88.com:80/balanced-match/-/balanced-match-1.0.0.tgz",
"integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c="
},
"big.js": {
"version": "5.2.2",
"resolved": "http://npm.dui88.com:80/big.js/-/big.js-5.2.2.tgz",
"integrity": "sha1-ZfCvOC9Xi83HQr2cKB6cstd2gyg="
},
"brace-expansion": {
"version": "1.1.11",
"resolved": "http://npm.dui88.com:80/brace-expansion/-/brace-expansion-1.1.11.tgz",
"integrity": "sha1-PH/L9SnYcibz0vUrlm/1Jx60Qd0=",
"requires": {
"balanced-match": "^1.0.0",
"concat-map": "0.0.1"
}
},
"call-bind": {
"version": "1.0.2",
"resolved": "http://npm.dui88.com:80/call-bind/-/call-bind-1.0.2.tgz",
"integrity": "sha1-sdTonmiBGcPJqQOtMKuy9qkZvjw=",
"dev": true,
"requires": {
"function-bind": "^1.1.1",
"get-intrinsic": "^1.0.2"
}
},
"caller-callsite": {
"version": "2.0.0",
"resolved": "http://npm.dui88.com:80/caller-callsite/-/caller-callsite-2.0.0.tgz",
"integrity": "sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ=",
"requires": {
"callsites": "^2.0.0"
}
},
"caller-path": {
"version": "2.0.0",
"resolved": "http://npm.dui88.com:80/caller-path/-/caller-path-2.0.0.tgz",
"integrity": "sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ=",
"requires": {
"caller-callsite": "^2.0.0"
}
},
"callsites": {
"version": "2.0.0",
"resolved": "http://npm.dui88.com:80/callsites/-/callsites-2.0.0.tgz",
"integrity": "sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA="
},
"camelcase": {
"version": "5.3.1",
"resolved": "http://npm.dui88.com:80/camelcase/-/camelcase-5.3.1.tgz",
"integrity": "sha1-48mzFWnhBoEd8kL3FXJaH0xJQyA="
},
"chalk": {
"version": "2.4.2",
"resolved": "http://npm.dui88.com:80/chalk/-/chalk-2.4.2.tgz",
"integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=",
"requires": {
"ansi-styles": "^3.2.1",
"escape-string-regexp": "^1.0.5",
"supports-color": "^5.3.0"
},
"dependencies": {
"supports-color": {
"version": "5.5.0",
"resolved": "http://npm.dui88.com:80/supports-color/-/supports-color-5.5.0.tgz",
"integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=",
"requires": {
"has-flag": "^3.0.0"
}
}
}
},
"classnames": {
"version": "2.2.6",
"resolved": "http://npm.dui88.com:80/classnames/-/classnames-2.2.6.tgz",
"integrity": "sha1-Q5Nb/90pHzJtrQogUwmzjQD2UM4="
},
"color-convert": {
"version": "1.9.3",
"resolved": "http://npm.dui88.com:80/color-convert/-/color-convert-1.9.3.tgz",
"integrity": "sha1-u3GFBpDh8TZWfeYp0tVHHe2kweg=",
"requires": {
"color-name": "1.1.3"
}
},
"color-name": {
"version": "1.1.3",
"resolved": "http://npm.dui88.com:80/color-name/-/color-name-1.1.3.tgz",
"integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU="
},
"colors": {
"version": "1.4.0",
"resolved": "http://npm.dui88.com:80/colors/-/colors-1.4.0.tgz",
"integrity": "sha1-xQSRR51MG9rtLJztMs98fcI2D3g="
},
"commander": {
"version": "7.1.0",
"resolved": "http://npm.dui88.com:80/commander/-/commander-7.1.0.tgz",
"integrity": "sha1-8urs8THxDjbgfYlGmCJuNq4Otf8=",
"dev": true
},
"concat-map": {
"version": "0.0.1",
"resolved": "http://npm.dui88.com:80/concat-map/-/concat-map-0.0.1.tgz",
"integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s="
},
"cosmiconfig": {
"version": "5.2.1",
"resolved": "http://npm.dui88.com:80/cosmiconfig/-/cosmiconfig-5.2.1.tgz",
"integrity": "sha1-BA9yaAnFked6F8CjYmykW08Wixo=",
"requires": {
"import-fresh": "^2.0.0",
"is-directory": "^0.3.1",
"js-yaml": "^3.13.1",
"parse-json": "^4.0.0"
}
},
"cross-spawn": {
"version": "7.0.3",
"resolved": "http://npm.dui88.com:80/cross-spawn/-/cross-spawn-7.0.3.tgz",
"integrity": "sha1-9zqFudXUHQRVUcF34ogtSshXKKY=",
"dev": true,
"requires": {
"path-key": "^3.1.0",
"shebang-command": "^2.0.0",
"which": "^2.0.1"
}
},
"crypto-js": {
"version": "4.0.0",
"resolved": "http://npm.dui88.com:80/crypto-js/-/crypto-js-4.0.0.tgz",
"integrity": "sha1-KQSrJnep0EKFai6i74DekuSjbcw="
},
"css-loader": {
"version": "3.6.0",
"resolved": "http://npm.dui88.com:80/css-loader/-/css-loader-3.6.0.tgz",
"integrity": "sha1-Lkssfm4tJ/jI8o9hv/zS5ske9kU=",
"requires": {
"camelcase": "^5.3.1",
"cssesc": "^3.0.0",
"icss-utils": "^4.1.1",
"loader-utils": "^1.2.3",
"normalize-path": "^3.0.0",
"postcss": "^7.0.32",
"postcss-modules-extract-imports": "^2.0.0",
"postcss-modules-local-by-default": "^3.0.2",
"postcss-modules-scope": "^2.2.0",
"postcss-modules-values": "^3.0.0",
"postcss-value-parser": "^4.1.0",
"schema-utils": "^2.7.0",
"semver": "^6.3.0"
}
},
"cssesc": {
"version": "3.0.0",
"resolved": "http://npm.dui88.com:80/cssesc/-/cssesc-3.0.0.tgz",
"integrity": "sha1-N3QZGZA7hoVl4cCep0dEXNGJg+4="
},
"debug": {
"version": "4.3.1",
"resolved": "http://npm.dui88.com:80/debug/-/debug-4.3.1.tgz",
"integrity": "sha1-8NIpxQXgxtjEmsVT0bE9wYP2su4=",
"dev": true,
"requires": {
"ms": "2.1.2"
}
},
"deep-is": {
"version": "0.1.3",
"resolved": "http://npm.dui88.com:80/deep-is/-/deep-is-0.1.3.tgz",
"integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
"dev": true
},
"define-properties": {
"version": "1.1.3",
"resolved": "http://npm.dui88.com:80/define-properties/-/define-properties-1.1.3.tgz",
"integrity": "sha1-z4jabL7ib+bbcJT2HYcMvYTO6fE=",
"dev": true,
"requires": {
"object-keys": "^1.0.12"
}
},
"doctrine": {
"version": "3.0.0",
"resolved": "http://npm.dui88.com:80/doctrine/-/doctrine-3.0.0.tgz",
"integrity": "sha1-rd6+rXKmV023g2OdyHoSF3OXOWE=",
"dev": true,
"requires": {
"esutils": "^2.0.2"
}
},
"duiba-utils": {
"version": "1.0.9",
"resolved": "http://npm.dui88.com:80/duiba-utils/-/duiba-utils-1.0.9.tgz",
"integrity": "sha512-3YB5w05gNruS4yyN0cx2Qktr0vG0AXYOumfV6WYlzlMx3kGX3AihBLT2/PouERtkLfFk2q4cIikSkgwramHTmg=="
},
"emoji-regex": {
"version": "8.0.0",
"resolved": "http://npm.dui88.com:80/emoji-regex/-/emoji-regex-8.0.0.tgz",
"integrity": "sha1-6Bj9ac5cz8tARZT4QpY79TFkzDc=",
"dev": true
},
"emojis-list": {
"version": "3.0.0",
"resolved": "http://npm.dui88.com:80/emojis-list/-/emojis-list-3.0.0.tgz",
"integrity": "sha1-VXBmIEatKeLpFucariYKvf9Pang="
},
"enquirer": {
"version": "2.3.6",
"resolved": "http://npm.dui88.com:80/enquirer/-/enquirer-2.3.6.tgz",
"integrity": "sha1-Kn/l3WNKHkElqXXsmU/1RW3Dc00=",
"dev": true,
"requires": {
"ansi-colors": "^4.1.1"
}
},
"error-ex": {
"version": "1.3.2",
"resolved": "http://npm.dui88.com:80/error-ex/-/error-ex-1.3.2.tgz",
"integrity": "sha1-tKxAZIEH/c3PriQvQovqihTU8b8=",
"requires": {
"is-arrayish": "^0.2.1"
}
},
"es-abstract": {
"version": "1.18.0",
"resolved": "http://npm.dui88.com:80/es-abstract/-/es-abstract-1.18.0.tgz",
"integrity": "sha1-q4CzWe7Lft5MKYAAOQvFrD7HtaQ=",
"dev": true,
"requires": {
"call-bind": "^1.0.2",
"es-to-primitive": "^1.2.1",
"function-bind": "^1.1.1",
"get-intrinsic": "^1.1.1",
"has": "^1.0.3",
"has-symbols": "^1.0.2",
"is-callable": "^1.2.3",
"is-negative-zero": "^2.0.1",
"is-regex": "^1.1.2",
"is-string": "^1.0.5",
"object-inspect": "^1.9.0",
"object-keys": "^1.1.1",
"object.assign": "^4.1.2",
"string.prototype.trimend": "^1.0.4",
"string.prototype.trimstart": "^1.0.4",
"unbox-primitive": "^1.0.0"
}
},
"es-to-primitive": {
"version": "1.2.1",
"resolved": "http://npm.dui88.com:80/es-to-primitive/-/es-to-primitive-1.2.1.tgz",
"integrity": "sha1-5VzUyc3BiLzvsDs2bHNjI/xciYo=",
"dev": true,
"requires": {
"is-callable": "^1.1.4",
"is-date-object": "^1.0.1",
"is-symbol": "^1.0.2"
}
},
"escape-string-regexp": {
"version": "1.0.5",
"resolved": "http://npm.dui88.com:80/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
"integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ="
},
"eslint": {
"version": "7.22.0",
"resolved": "http://npm.dui88.com:80/eslint/-/eslint-7.22.0.tgz",
"integrity": "sha1-B+zGEFL+xjZhosq2vVBxJ8B63G8=",
"dev": true,
"requires": {
"@babel/code-frame": "7.12.11",
"@eslint/eslintrc": "^0.4.0",
"ajv": "^6.10.0",
"chalk": "^4.0.0",
"cross-spawn": "^7.0.2",
"debug": "^4.0.1",
"doctrine": "^3.0.0",
"enquirer": "^2.3.5",
"eslint-scope": "^5.1.1",
"eslint-utils": "^2.1.0",
"eslint-visitor-keys": "^2.0.0",
"espree": "^7.3.1",
"esquery": "^1.4.0",
"esutils": "^2.0.2",
"file-entry-cache": "^6.0.1",
"functional-red-black-tree": "^1.0.1",
"glob-parent": "^5.0.0",
"globals": "^13.6.0",
"ignore": "^4.0.6",
"import-fresh": "^3.0.0",
"imurmurhash": "^0.1.4",
"is-glob": "^4.0.0",
"js-yaml": "^3.13.1",
"json-stable-stringify-without-jsonify": "^1.0.1",
"levn": "^0.4.1",
"lodash": "^4.17.21",
"minimatch": "^3.0.4",
"natural-compare": "^1.4.0",
"optionator": "^0.9.1",
"progress": "^2.0.0",
"regexpp": "^3.1.0",
"semver": "^7.2.1",
"strip-ansi": "^6.0.0",
"strip-json-comments": "^3.1.0",
"table": "^6.0.4",
"text-table": "^0.2.0",
"v8-compile-cache": "^2.0.3"
},
"dependencies": {
"@babel/code-frame": {
"version": "7.12.11",
"resolved": "http://npm.dui88.com:80/@babel%2fcode-frame/-/code-frame-7.12.11.tgz",
"integrity": "sha1-9K1DWqJj25NbjxDyxVLSP7cWpj8=",
"dev": true,
"requires": {
"@babel/highlight": "^7.10.4"
}
},
"ansi-styles": {
"version": "4.3.0",
"resolved": "http://npm.dui88.com:80/ansi-styles/-/ansi-styles-4.3.0.tgz",
"integrity": "sha1-7dgDYornHATIWuegkG7a00tkiTc=",
"dev": true,
"requires": {
"color-convert": "^2.0.1"
}
},
"chalk": {
"version": "4.1.0",
"resolved": "http://npm.dui88.com:80/chalk/-/chalk-4.1.0.tgz",
"integrity": "sha1-ThSHCmGNni7dl92DRf2dncMVZGo=",
"dev": true,
"requires": {
"ansi-styles": "^4.1.0",
"supports-color": "^7.1.0"
}
},
"color-convert": {
"version": "2.0.1",
"resolved": "http://npm.dui88.com:80/color-convert/-/color-convert-2.0.1.tgz",
"integrity": "sha1-ctOmjVmMm9s68q0ehPIdiWq9TeM=",
"dev": true,
"requires": {
"color-name": "~1.1.4"
}
},
"color-name": {
"version": "1.1.4",
"resolved": "http://npm.dui88.com:80/color-name/-/color-name-1.1.4.tgz",
"integrity": "sha1-wqCah6y95pVD3m9j+jmVyCbFNqI=",
"dev": true
},
"eslint-visitor-keys": {
"version": "2.0.0",
"resolved": "http://npm.dui88.com:80/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz",
"integrity": "sha1-If3I+82ceVzAMh8FY3AglXUVEag=",
"dev": true
},
"globals": {
"version": "13.7.0",
"resolved": "http://npm.dui88.com:80/globals/-/globals-13.7.0.tgz",
"integrity": "sha1-rtO879gK0+wPC+LPDIlREMBZF5U=",
"dev": true,
"requires": {
"type-fest": "^0.20.2"
}
},
"has-flag": {
"version": "4.0.0",
"resolved": "http://npm.dui88.com:80/has-flag/-/has-flag-4.0.0.tgz",
"integrity": "sha1-lEdx/ZyByBJlxNaUGGDaBrtZR5s=",
"dev": true
},
"import-fresh": {
"version": "3.3.0",
"resolved": "http://npm.dui88.com:80/import-fresh/-/import-fresh-3.3.0.tgz",
"integrity": "sha1-NxYsJfy566oublPVtNiM4X2eDCs=",
"dev": true,
"requires": {
"parent-module": "^1.0.0",
"resolve-from": "^4.0.0"
}
},
"lru-cache": {
"version": "6.0.0",
"resolved": "http://npm.dui88.com:80/lru-cache/-/lru-cache-6.0.0.tgz",
"integrity": "sha1-bW/mVw69lqr5D8rR2vo7JWbbOpQ=",
"dev": true,
"requires": {
"yallist": "^4.0.0"
}
},
"resolve-from": {
"version": "4.0.0",
"resolved": "http://npm.dui88.com:80/resolve-from/-/resolve-from-4.0.0.tgz",
"integrity": "sha1-SrzYUq0y3Xuqv+m0DgCjbbXzkuY=",
"dev": true
},
"semver": {
"version": "7.3.5",
"resolved": "http://npm.dui88.com:80/semver/-/semver-7.3.5.tgz",
"integrity": "sha1-C2Ich5NI2JmOSw5L6Us/EuYBjvc=",
"dev": true,
"requires": {
"lru-cache": "^6.0.0"
}
},
"supports-color": {
"version": "7.2.0",
"resolved": "http://npm.dui88.com:80/supports-color/-/supports-color-7.2.0.tgz",
"integrity": "sha1-G33NyzK4E4gBs+R4umpRyqiWSNo=",
"dev": true,
"requires": {
"has-flag": "^4.0.0"
}
},
"type-fest": {
"version": "0.20.2",
"resolved": "http://npm.dui88.com:80/type-fest/-/type-fest-0.20.2.tgz",
"integrity": "sha1-G/IH9LKPkVg2ZstfvTJ4hzAc1fQ=",
"dev": true
},
"yallist": {
"version": "4.0.0",
"resolved": "http://npm.dui88.com:80/yallist/-/yallist-4.0.0.tgz",
"integrity": "sha1-m7knkNnA7/7GO+c1GeEaNQGaOnI=",
"dev": true
}
}
},
"eslint-plugin-react": {
"version": "7.23.1",
"resolved": "http://npm.dui88.com:80/eslint-plugin-react/-/eslint-plugin-react-7.23.1.tgz",
"integrity": "sha1-8aLoRMDRlnyCI4ggSovE3uhBWxE=",
"dev": true,
"requires": {
"array-includes": "^3.1.3",
"array.prototype.flatmap": "^1.2.4",
"doctrine": "^2.1.0",
"has": "^1.0.3",
"jsx-ast-utils": "^2.4.1 || ^3.0.0",
"minimatch": "^3.0.4",
"object.entries": "^1.1.3",
"object.fromentries": "^2.0.4",
"object.values": "^1.1.3",
"prop-types": "^15.7.2",
"resolve": "^2.0.0-next.3",
"string.prototype.matchall": "^4.0.4"
},
"dependencies": {
"doctrine": {
"version": "2.1.0",
"resolved": "http://npm.dui88.com:80/doctrine/-/doctrine-2.1.0.tgz",
"integrity": "sha1-XNAfwQFiG0LEzX9dGmYkNxbT850=",
"dev": true,
"requires": {
"esutils": "^2.0.2"
}
},
"resolve": {
"version": "2.0.0-next.3",
"resolved": "http://npm.dui88.com:80/resolve/-/resolve-2.0.0-next.3.tgz",
"integrity": "sha1-1BAWKT1KhYajnKXZtfFcvqH1XkY=",
"dev": true,
"requires": {
"is-core-module": "^2.2.0",
"path-parse": "^1.0.6"
}
}
}
},
"eslint-scope": {
"version": "5.1.1",
"resolved": "http://npm.dui88.com:80/eslint-scope/-/eslint-scope-5.1.1.tgz",
"integrity": "sha1-54blmmbLkrP2wfsNUIqrF0hI9Iw=",
"dev": true,
"requires": {
"esrecurse": "^4.3.0",
"estraverse": "^4.1.1"
}
},
"eslint-utils": {
"version": "2.1.0",
"resolved": "http://npm.dui88.com:80/eslint-utils/-/eslint-utils-2.1.0.tgz",
"integrity": "sha1-0t5eA0JOcH3BDHQGjd7a5wh0Gyc=",
"dev": true,
"requires": {
"eslint-visitor-keys": "^1.1.0"
}
},
"eslint-visitor-keys": {
"version": "1.3.0",
"resolved": "http://npm.dui88.com:80/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz",
"integrity": "sha1-MOvR73wv3/AcOk8VEESvJfqwUj4=",
"dev": true
},
"espree": {
"version": "7.3.1",
"resolved": "http://npm.dui88.com:80/espree/-/espree-7.3.1.tgz",
"integrity": "sha1-8t8zC3Usb1UBn4vYm3ZgA5wbu7Y=",
"dev": true,
"requires": {
"acorn": "^7.4.0",
"acorn-jsx": "^5.3.1",
"eslint-visitor-keys": "^1.3.0"
}
},
"esprima": {
"version": "4.0.1",
"resolved": "http://npm.dui88.com:80/esprima/-/esprima-4.0.1.tgz",
"integrity": "sha1-E7BM2z5sXRnfkatph6hpVhmwqnE="
},
"esquery": {
"version": "1.4.0",
"resolved": "http://npm.dui88.com:80/esquery/-/esquery-1.4.0.tgz",
"integrity": "sha1-IUj/w4uC6McFff7UhCWz5h8PJKU=",
"dev": true,
"requires": {
"estraverse": "^5.1.0"
},
"dependencies": {
"estraverse": {
"version": "5.2.0",
"resolved": "http://npm.dui88.com:80/estraverse/-/estraverse-5.2.0.tgz",
"integrity": "sha1-MH30JUfmzHMk088DwVXVzbjFOIA=",
"dev": true
}
}
},
"esrecurse": {
"version": "4.3.0",
"resolved": "http://npm.dui88.com:80/esrecurse/-/esrecurse-4.3.0.tgz",
"integrity": "sha1-eteWTWeauyi+5yzsY3WLHF0smSE=",
"dev": true,
"requires": {
"estraverse": "^5.2.0"
},
"dependencies": {
"estraverse": {
"version": "5.2.0",
"resolved": "http://npm.dui88.com:80/estraverse/-/estraverse-5.2.0.tgz",
"integrity": "sha1-MH30JUfmzHMk088DwVXVzbjFOIA=",
"dev": true
}
}
},
"estraverse": {
"version": "4.3.0",
"resolved": "http://npm.dui88.com:80/estraverse/-/estraverse-4.3.0.tgz",
"integrity": "sha1-OYrT88WiSUi+dyXoPRGn3ijNvR0=",
"dev": true
},
"esutils": {
"version": "2.0.3",
"resolved": "http://npm.dui88.com:80/esutils/-/esutils-2.0.3.tgz",
"integrity": "sha1-dNLrTeC42hKTcRkQ1Qd1ubcQ72Q=",
"dev": true
},
"fast-deep-equal": {
"version": "3.1.3",
"resolved": "http://npm.dui88.com:80/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
"integrity": "sha1-On1WtVnWy8PrUSMlJE5hmmXGxSU="
},
"fast-json-stable-stringify": {
"version": "2.1.0",
"resolved": "http://npm.dui88.com:80/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
"integrity": "sha1-h0v2nG9ATCtdmcSBNBOZ/VWJJjM="
},
"fast-levenshtein": {
"version": "2.0.6",
"resolved": "http://npm.dui88.com:80/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
"integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=",
"dev": true
},
"file-entry-cache": {
"version": "6.0.1",
"resolved": "http://npm.dui88.com:80/file-entry-cache/-/file-entry-cache-6.0.1.tgz",
"integrity": "sha1-IRst2WWcsDlLBz5zI6w8kz1SICc=",
"dev": true,
"requires": {
"flat-cache": "^3.0.4"
}
},
"flat-cache": {
"version": "3.0.4",
"resolved": "http://npm.dui88.com:80/flat-cache/-/flat-cache-3.0.4.tgz",
"integrity": "sha1-YbAzgwKy/p+Vfcwy/CqH8cMEixE=",
"dev": true,
"requires": {
"flatted": "^3.1.0",
"rimraf": "^3.0.2"
}
},
"flatted": {
"version": "3.1.1",
"resolved": "http://npm.dui88.com:80/flatted/-/flatted-3.1.1.tgz",
"integrity": "sha1-xLSJ6ACW2d8d/JfHmHGup8YXxGk=",
"dev": true
},
"fs-extra": {
"version": "9.1.0",
"resolved": "http://npm.dui88.com:80/fs-extra/-/fs-extra-9.1.0.tgz",
"integrity": "sha1-WVRGDHZKjaIJS6NVS/g55rmnyG0=",
"requires": {
"at-least-node": "^1.0.0",
"graceful-fs": "^4.2.0",
"jsonfile": "^6.0.1",
"universalify": "^2.0.0"
}
},
"fs.realpath": {
"version": "1.0.0",
"resolved": "http://npm.dui88.com:80/fs.realpath/-/fs.realpath-1.0.0.tgz",
"integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8="
},
"function-bind": {
"version": "1.1.1",
"resolved": "http://npm.dui88.com:80/function-bind/-/function-bind-1.1.1.tgz",
"integrity": "sha1-pWiZ0+o8m6uHS7l3O3xe3pL0iV0="
},
"functional-red-black-tree": {
"version": "1.0.1",
"resolved": "http://npm.dui88.com:80/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz",
"integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=",
"dev": true
},
"fyge": {
"version": "2.0.18",
"resolved": "http://npm.dui88.com:80/fyge/-/fyge-2.0.18.tgz",
"integrity": "sha1-S5aUanOgmrx2qbDM+QFSazJSnis=",
"requires": {
"typedoc": "^0.20.20"
}
},
"get-intrinsic": {
"version": "1.1.1",
"resolved": "http://npm.dui88.com:80/get-intrinsic/-/get-intrinsic-1.1.1.tgz",
"integrity": "sha1-FfWfN2+FXERpY5SPDSTNNje0q8Y=",
"dev": true,
"requires": {
"function-bind": "^1.1.1",
"has": "^1.0.3",
"has-symbols": "^1.0.1"
}
},
"glob": {
"version": "7.1.6",
"resolved": "http://npm.dui88.com:80/glob/-/glob-7.1.6.tgz",
"integrity": "sha1-FB8zuBp8JJLhJVlDB0gMRmeSeKY=",
"requires": {
"fs.realpath": "^1.0.0",
"inflight": "^1.0.4",
"inherits": "2",
"minimatch": "^3.0.4",
"once": "^1.3.0",
"path-is-absolute": "^1.0.0"
}
},
"glob-parent": {
"version": "5.1.2",
"resolved": "http://npm.dui88.com:80/glob-parent/-/glob-parent-5.1.2.tgz",
"integrity": "sha1-hpgyxYA0/mikCTwX3BXoNA2EAcQ=",
"dev": true,
"requires": {
"is-glob": "^4.0.1"
}
},
"globals": {
"version": "11.12.0",
"resolved": "http://npm.dui88.com:80/globals/-/globals-11.12.0.tgz",
"integrity": "sha1-q4eVM4hooLq9hSV1gBjCp+uVxC4=",
"dev": true
},
"graceful-fs": {
"version": "4.2.6",
"resolved": "http://npm.dui88.com:80/graceful-fs/-/graceful-fs-4.2.6.tgz",
"integrity": "sha1-/wQLKwhTsjw9MQJ1I3BvGIXXa+4="
},
"hammerjs": {
"version": "2.0.8",
"resolved": "http://npm.dui88.com:80/hammerjs/-/hammerjs-2.0.8.tgz",
"integrity": "sha1-BO93hiz/K7edMPdpIJWTAiK/YPE="
},
"handlebars": {
"version": "4.7.7",
"resolved": "http://npm.dui88.com:80/handlebars/-/handlebars-4.7.7.tgz",
"integrity": "sha1-nOM0FqrQLb1sj6+oJA1dmABJRaE=",
"requires": {
"minimist": "^1.2.5",
"neo-async": "^2.6.0",
"source-map": "^0.6.1",
"uglify-js": "^3.1.4",
"wordwrap": "^1.0.0"
}
},
"has": {
"version": "1.0.3",
"resolved": "http://npm.dui88.com:80/has/-/has-1.0.3.tgz",
"integrity": "sha1-ci18v8H2qoJB8W3YFOAR4fQeh5Y=",
"requires": {
"function-bind": "^1.1.1"
}
},
"has-bigints": {
"version": "1.0.1",
"resolved": "http://npm.dui88.com:80/has-bigints/-/has-bigints-1.0.1.tgz",
"integrity": "sha1-ZP5qywIGc+O3jbA1pa9pqp0HsRM=",
"dev": true
},
"has-flag": {
"version": "3.0.0",
"resolved": "http://npm.dui88.com:80/has-flag/-/has-flag-3.0.0.tgz",
"integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0="
},
"has-symbols": {
"version": "1.0.2",
"resolved": "http://npm.dui88.com:80/has-symbols/-/has-symbols-1.0.2.tgz",
"integrity": "sha1-Fl0wcMADCXUqEjakeTMeOsVvFCM=",
"dev": true
},
"history": {
"version": "5.0.0",
"resolved": "http://npm.dui88.com:80/history/-/history-5.0.0.tgz",
"integrity": "sha1-DKu7bEu/g1rduHT4JZ9tJRAe/Qg=",
"requires": {
"@babel/runtime": "^7.7.6"
}
},
"hoist-non-react-statics": {
"version": "3.3.2",
"resolved": "http://npm.dui88.com:80/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz",
"integrity": "sha1-7OCsr3HWLClpwuxZ/v9CpLGoW0U=",
"requires": {
"react-is": "^16.7.0"
}
},
"html-shot": {
"version": "1.0.17",
"resolved": "http://npm.dui88.com:80/html-shot/-/html-shot-1.0.17.tgz",
"integrity": "sha512-sELX8du/SUMpsFpKHt6LF1JjGbUSRY0tmduIUGuarYbvDfayYkk7RqQmMRKnFUimwWaFvJGk58F0UTAFSedxxQ=="
},
"icss-utils": {
"version": "4.1.1",
"resolved": "http://npm.dui88.com:80/icss-utils/-/icss-utils-4.1.1.tgz",
"integrity": "sha1-IRcLU3ie4nRHwvR91oMIFAP5pGc=",
"requires": {
"postcss": "^7.0.14"
}
},
"ignore": {
"version": "4.0.6",
"resolved": "http://npm.dui88.com:80/ignore/-/ignore-4.0.6.tgz",
"integrity": "sha1-dQ49tYYgh7RzfrrIIH/9HvJ7Jfw=",
"dev": true
},
"import-cwd": {
"version": "2.1.0",
"resolved": "http://npm.dui88.com:80/import-cwd/-/import-cwd-2.1.0.tgz",
"integrity": "sha1-qmzzbnInYShcs3HsZRn1PiQ1sKk=",
"requires": {
"import-from": "^2.1.0"
}
},
"import-fresh": {
"version": "2.0.0",
"resolved": "http://npm.dui88.com:80/import-fresh/-/import-fresh-2.0.0.tgz",
"integrity": "sha1-2BNVwVYS04bGH53dOSLUMEgipUY=",
"requires": {
"caller-path": "^2.0.0",
"resolve-from": "^3.0.0"
}
},
"import-from": {
"version": "2.1.0",
"resolved": "http://npm.dui88.com:80/import-from/-/import-from-2.1.0.tgz",
"integrity": "sha1-M1238qev/VOqpHHUuAId7ja387E=",
"requires": {
"resolve-from": "^3.0.0"
}
},
"imurmurhash": {
"version": "0.1.4",
"resolved": "http://npm.dui88.com:80/imurmurhash/-/imurmurhash-0.1.4.tgz",
"integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=",
"dev": true
},
"indexes-of": {
"version": "1.0.1",
"resolved": "http://npm.dui88.com:80/indexes-of/-/indexes-of-1.0.1.tgz",
"integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc="
},
"inflight": {
"version": "1.0.6",
"resolved": "http://npm.dui88.com:80/inflight/-/inflight-1.0.6.tgz",
"integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
"requires": {
"once": "^1.3.0",
"wrappy": "1"
}
},
"inherits": {
"version": "2.0.4",
"resolved": "http://npm.dui88.com:80/inherits/-/inherits-2.0.4.tgz",
"integrity": "sha1-D6LGT5MpF8NDOg3tVTY6rjdBa3w="
},
"internal-slot": {
"version": "1.0.3",
"resolved": "http://npm.dui88.com:80/internal-slot/-/internal-slot-1.0.3.tgz",
"integrity": "sha1-c0fjB97uovqsKsYgXUvH00ln9Zw=",
"dev": true,
"requires": {
"get-intrinsic": "^1.1.0",
"has": "^1.0.3",
"side-channel": "^1.0.4"
}
},
"interpret": {
"version": "1.4.0",
"resolved": "http://npm.dui88.com:80/interpret/-/interpret-1.4.0.tgz",
"integrity": "sha1-Zlq4vE2iendKQFhOgS4+D6RbGh4="
},
"intersection-observer": {
"version": "0.12.0",
"resolved": "http://npm.dui88.com:80/intersection-observer/-/intersection-observer-0.12.0.tgz",
"integrity": "sha1-bIRij2fOhpjl+cz4V9l3GHRYN6o="
},
"invariant": {
"version": "2.2.4",
"resolved": "http://npm.dui88.com:80/invariant/-/invariant-2.2.4.tgz",
"integrity": "sha1-YQ88ksk1nOHbYW5TgAjSP/NRWOY=",
"requires": {
"loose-envify": "^1.0.0"
}
},
"is-arrayish": {
"version": "0.2.1",
"resolved": "http://npm.dui88.com:80/is-arrayish/-/is-arrayish-0.2.1.tgz",
"integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0="
},
"is-bigint": {
"version": "1.0.1",
"resolved": "http://npm.dui88.com:80/is-bigint/-/is-bigint-1.0.1.tgz",
"integrity": "sha1-aSMFHfy8dkJ4VAuc4OazITql68I=",
"dev": true
},
"is-boolean-object": {
"version": "1.1.0",
"resolved": "http://npm.dui88.com:80/is-boolean-object/-/is-boolean-object-1.1.0.tgz",
"integrity": "sha1-4qqtOjqPyjTCj27uE1sVbtJYf/A=",
"dev": true,
"requires": {
"call-bind": "^1.0.0"
}
},
"is-callable": {
"version": "1.2.3",
"resolved": "http://npm.dui88.com:80/is-callable/-/is-callable-1.2.3.tgz",
"integrity": "sha1-ix4FALc6HXbHBIdjbzaOUZ3o244=",
"dev": true
},
"is-core-module": {
"version": "2.2.0",
"resolved": "http://npm.dui88.com:80/is-core-module/-/is-core-module-2.2.0.tgz",
"integrity": "sha1-lwN+89UiJNhRY/VZeytj2a/tmBo=",
"requires": {
"has": "^1.0.3"
}
},
"is-date-object": {
"version": "1.0.2",
"resolved": "http://npm.dui88.com:80/is-date-object/-/is-date-object-1.0.2.tgz",
"integrity": "sha1-vac28s2P0G0yhE53Q7+nSUw7/X4=",
"dev": true
},
"is-directory": {
"version": "0.3.1",
"resolved": "http://npm.dui88.com:80/is-directory/-/is-directory-0.3.1.tgz",
"integrity": "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE="
},
"is-extglob": {
"version": "2.1.1",
"resolved": "http://npm.dui88.com:80/is-extglob/-/is-extglob-2.1.1.tgz",
"integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
"dev": true
},
"is-fullwidth-code-point": {
"version": "3.0.0",
"resolved": "http://npm.dui88.com:80/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
"integrity": "sha1-8Rb4Bk/pCz94RKOJl8C3UFEmnx0=",
"dev": true
},
"is-glob": {
"version": "4.0.1",
"resolved": "http://npm.dui88.com:80/is-glob/-/is-glob-4.0.1.tgz",
"integrity": "sha1-dWfb6fL14kZ7x3q4PEopSCQHpdw=",
"dev": true,
"requires": {
"is-extglob": "^2.1.1"
}
},
"is-negative-zero": {
"version": "2.0.1",
"resolved": "http://npm.dui88.com:80/is-negative-zero/-/is-negative-zero-2.0.1.tgz",
"integrity": "sha1-PedGwY3aIxkkGlNnWQjY92bxHCQ=",
"dev": true
},
"is-number-object": {
"version": "1.0.4",
"resolved": "http://npm.dui88.com:80/is-number-object/-/is-number-object-1.0.4.tgz",
"integrity": "sha1-NqyV50HPGLKD/B3fXoPaeY4+wZc=",
"dev": true
},
"is-regex": {
"version": "1.1.2",
"resolved": "http://npm.dui88.com:80/is-regex/-/is-regex-1.1.2.tgz",
"integrity": "sha1-gcjr3k2xQvLPHFP8htakV4gmYlE=",
"dev": true,
"requires": {
"call-bind": "^1.0.2",
"has-symbols": "^1.0.1"
}
},
"is-string": {
"version": "1.0.5",
"resolved": "http://npm.dui88.com:80/is-string/-/is-string-1.0.5.tgz",
"integrity": "sha1-QEk+0ZjvP/R3uMf5L2ROyCpc06Y=",
"dev": true
},
"is-symbol": {
"version": "1.0.3",
"resolved": "http://npm.dui88.com:80/is-symbol/-/is-symbol-1.0.3.tgz",
"integrity": "sha1-OOEBS55jKb4N6dJKQU/XRB7GGTc=",
"dev": true,
"requires": {
"has-symbols": "^1.0.1"
}
},
"isarray": {
"version": "0.0.1",
"resolved": "http://npm.dui88.com:80/isarray/-/isarray-0.0.1.tgz",
"integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8="
},
"isexe": {
"version": "2.0.0",
"resolved": "http://npm.dui88.com:80/isexe/-/isexe-2.0.0.tgz",
"integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
"dev": true
},
"js-tokens": {
"version": "4.0.0",
"resolved": "http://npm.dui88.com:80/js-tokens/-/js-tokens-4.0.0.tgz",
"integrity": "sha1-GSA/tZmR35jjoocFDUZHzerzJJk="
},
"js-yaml": {
"version": "3.14.1",
"resolved": "http://npm.dui88.com:80/js-yaml/-/js-yaml-3.14.1.tgz",
"integrity": "sha1-2ugS/bOCX6MGYJqHFzg8UMNqBTc=",
"requires": {
"argparse": "^1.0.7",
"esprima": "^4.0.0"
}
},
"jsesc": {
"version": "2.5.2",
"resolved": "http://npm.dui88.com:80/jsesc/-/jsesc-2.5.2.tgz",
"integrity": "sha1-gFZNLkg9rPbo7yCWUKZ98/DCg6Q=",
"dev": true
},
"json-parse-better-errors": {
"version": "1.0.2",
"resolved": "http://npm.dui88.com:80/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz",
"integrity": "sha1-u4Z8+zRQ5pEHwTHRxRS6s9yLyqk="
},
"json-schema-traverse": {
"version": "0.4.1",
"resolved": "http://npm.dui88.com:80/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
"integrity": "sha1-afaofZUTq4u4/mO9sJecRI5oRmA="
},
"json-stable-stringify-without-jsonify": {
"version": "1.0.1",
"resolved": "http://npm.dui88.com:80/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
"integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=",
"dev": true
},
"json5": {
"version": "1.0.1",
"resolved": "http://npm.dui88.com:80/json5/-/json5-1.0.1.tgz",
"integrity": "sha1-d5+wAYYE+oVOrL9iUhgNg1Q+Pb4=",
"requires": {
"minimist": "^1.2.0"
}
},
"jsonfile": {
"version": "6.1.0",
"resolved": "http://npm.dui88.com:80/jsonfile/-/jsonfile-6.1.0.tgz",
"integrity": "sha1-vFWyY0eTxnnsZAMJTrE2mKbsCq4=",
"requires": {
"graceful-fs": "^4.1.6",
"universalify": "^2.0.0"
}
},
"jsx-ast-utils": {
"version": "3.2.0",
"resolved": "http://npm.dui88.com:80/jsx-ast-utils/-/jsx-ast-utils-3.2.0.tgz",
"integrity": "sha1-QRCNLOxAjDRTwbvopKrp4eK9j4I=",
"dev": true,
"requires": {
"array-includes": "^3.1.2",
"object.assign": "^4.1.2"
}
},
"levn": {
"version": "0.4.1",
"resolved": "http://npm.dui88.com:80/levn/-/levn-0.4.1.tgz",
"integrity": "sha1-rkViwAdHO5MqYgDUAyaN0v/8at4=",
"dev": true,
"requires": {
"prelude-ls": "^1.2.1",
"type-check": "~0.4.0"
}
},
"loader-utils": {
"version": "1.4.0",
"resolved": "http://npm.dui88.com:80/loader-utils/-/loader-utils-1.4.0.tgz",
"integrity": "sha1-xXm140yzSxp07cbB+za/o3HVphM=",
"requires": {
"big.js": "^5.2.2",
"emojis-list": "^3.0.0",
"json5": "^1.0.1"
}
},
"lodash": {
"version": "4.17.21",
"resolved": "http://npm.dui88.com:80/lodash/-/lodash-4.17.21.tgz",
"integrity": "sha1-Z5WRxWTDv/quhFTPCz3zcMPWkRw="
},
"loose-envify": {
"version": "1.4.0",
"resolved": "http://npm.dui88.com:80/loose-envify/-/loose-envify-1.4.0.tgz",
"integrity": "sha1-ce5R+nvkyuwaY4OffmgtgTLTDK8=",
"requires": {
"js-tokens": "^3.0.0 || ^4.0.0"
}
},
"lru-cache": {
"version": "5.1.1",
"resolved": "http://npm.dui88.com:80/lru-cache/-/lru-cache-5.1.1.tgz",
"integrity": "sha1-HaJ+ZxAnGUdpXa9oSOhH8B2EuSA=",
"requires": {
"yallist": "^3.0.2"
}
},
"lunr": {
"version": "2.3.9",
"resolved": "http://npm.dui88.com:80/lunr/-/lunr-2.3.9.tgz",
"integrity": "sha1-GLEjFCgyM33W6WTfGlp3B7JdNeE="
},
"marked": {
"version": "2.0.1",
"resolved": "http://npm.dui88.com:80/marked/-/marked-2.0.1.tgz",
"integrity": "sha1-Xn7XAJv6XJUYLk62lvhelIzvzuM="
},
"mini-create-react-context": {
"version": "0.4.1",
"resolved": "http://npm.dui88.com:80/mini-create-react-context/-/mini-create-react-context-0.4.1.tgz",
"integrity": "sha1-ByFxVhv9ySLaCKYMIZekl8wtHV4=",
"requires": {
"@babel/runtime": "^7.12.1",
"tiny-warning": "^1.0.3"
}
},
"minimatch": {
"version": "3.0.4",
"resolved": "http://npm.dui88.com:80/minimatch/-/minimatch-3.0.4.tgz",
"integrity": "sha1-UWbihkV/AzBgZL5Ul+jbsMPTIIM=",
"requires": {
"brace-expansion": "^1.1.7"
}
},
"minimist": {
"version": "1.2.5",
"resolved": "http://npm.dui88.com:80/minimist/-/minimist-1.2.5.tgz",
"integrity": "sha1-Z9ZgFLZqaoqqDAg8X9WN9OTpdgI="
},
"mockjs": {
"version": "1.1.0",
"resolved": "http://npm.dui88.com:80/mockjs/-/mockjs-1.1.0.tgz",
"integrity": "sha1-5qDDeOkZBtuv8gkRzAJzs8fXWwY=",
"dev": true,
"requires": {
"commander": "*"
}
},
"ms": {
"version": "2.1.2",
"resolved": "http://npm.dui88.com:80/ms/-/ms-2.1.2.tgz",
"integrity": "sha1-0J0fNXtEP0kzgqjrPM0YOHKuYAk=",
"dev": true
},
"natural-compare": {
"version": "1.4.0",
"resolved": "http://npm.dui88.com:80/natural-compare/-/natural-compare-1.4.0.tgz",
"integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=",
"dev": true
},
"neo-async": {
"version": "2.6.2",
"resolved": "http://npm.dui88.com:80/neo-async/-/neo-async-2.6.2.tgz",
"integrity": "sha1-tKr7k+OustgXTKU88WOrfXMIMF8="
},
"normalize-path": {
"version": "3.0.0",
"resolved": "http://npm.dui88.com:80/normalize-path/-/normalize-path-3.0.0.tgz",
"integrity": "sha1-Dc1p/yOhybEf0JeDFmRKA4ghamU="
},
"object-assign": {
"version": "4.1.1",
"resolved": "http://npm.dui88.com:80/object-assign/-/object-assign-4.1.1.tgz",
"integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM="
},
"object-inspect": {
"version": "1.9.0",
"resolved": "http://npm.dui88.com:80/object-inspect/-/object-inspect-1.9.0.tgz",
"integrity": "sha1-yQUh104RJ7ZyZt7TOUrWEWmGUzo=",
"dev": true
},
"object-keys": {
"version": "1.1.1",
"resolved": "http://npm.dui88.com:80/object-keys/-/object-keys-1.1.1.tgz",
"integrity": "sha1-HEfyct8nfzsdrwYWd9nILiMixg4=",
"dev": true
},
"object.assign": {
"version": "4.1.2",
"resolved": "http://npm.dui88.com:80/object.assign/-/object.assign-4.1.2.tgz",
"integrity": "sha1-DtVKNC7Os3s4/3brgxoOeIy2OUA=",
"dev": true,
"requires": {
"call-bind": "^1.0.0",
"define-properties": "^1.1.3",
"has-symbols": "^1.0.1",
"object-keys": "^1.1.1"
}
},
"object.entries": {
"version": "1.1.3",
"resolved": "http://npm.dui88.com:80/object.entries/-/object.entries-1.1.3.tgz",
"integrity": "sha1-xgHH8Wi2I3RUGgfdvT4tXk93EaY=",
"dev": true,
"requires": {
"call-bind": "^1.0.0",
"define-properties": "^1.1.3",
"es-abstract": "^1.18.0-next.1",
"has": "^1.0.3"
}
},
"object.fromentries": {
"version": "2.0.4",
"resolved": "http://npm.dui88.com:80/object.fromentries/-/object.fromentries-2.0.4.tgz",
"integrity": "sha1-JuG6XEVxxcbwiQzvRHMGZFahILg=",
"dev": true,
"requires": {
"call-bind": "^1.0.2",
"define-properties": "^1.1.3",
"es-abstract": "^1.18.0-next.2",
"has": "^1.0.3"
}
},
"object.values": {
"version": "1.1.3",
"resolved": "http://npm.dui88.com:80/object.values/-/object.values-1.1.3.tgz",
"integrity": "sha1-6qix4XWJ8C9pjbCT98Yu4WmXQu4=",
"dev": true,
"requires": {
"call-bind": "^1.0.2",
"define-properties": "^1.1.3",
"es-abstract": "^1.18.0-next.2",
"has": "^1.0.3"
}
},
"once": {
"version": "1.4.0",
"resolved": "http://npm.dui88.com:80/once/-/once-1.4.0.tgz",
"integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
"requires": {
"wrappy": "1"
}
},
"onigasm": {
"version": "2.2.5",
"resolved": "http://npm.dui88.com:80/onigasm/-/onigasm-2.2.5.tgz",
"integrity": "sha1-zE0qeaD6C2TK7B9MfqNnWFpnaJI=",
"requires": {
"lru-cache": "^5.1.1"
}
},
"optionator": {
"version": "0.9.1",
"resolved": "http://npm.dui88.com:80/optionator/-/optionator-0.9.1.tgz",
"integrity": "sha1-TyNqY3Pa4FZqbUPhMmZ09QwpFJk=",
"dev": true,
"requires": {
"deep-is": "^0.1.3",
"fast-levenshtein": "^2.0.6",
"levn": "^0.4.1",
"prelude-ls": "^1.2.1",
"type-check": "^0.4.0",
"word-wrap": "^1.2.3"
}
},
"parent-module": {
"version": "1.0.1",
"resolved": "http://npm.dui88.com:80/parent-module/-/parent-module-1.0.1.tgz",
"integrity": "sha1-aR0nCeeMefrjoVZiJFLQB2LKqqI=",
"dev": true,
"requires": {
"callsites": "^3.0.0"
},
"dependencies": {
"callsites": {
"version": "3.1.0",
"resolved": "http://npm.dui88.com:80/callsites/-/callsites-3.1.0.tgz",
"integrity": "sha1-s2MKvYlDQy9Us/BRkjjjPNffL3M=",
"dev": true
}
}
},
"parse-json": {
"version": "4.0.0",
"resolved": "http://npm.dui88.com:80/parse-json/-/parse-json-4.0.0.tgz",
"integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=",
"requires": {
"error-ex": "^1.3.1",
"json-parse-better-errors": "^1.0.1"
}
},
"path-is-absolute": {
"version": "1.0.1",
"resolved": "http://npm.dui88.com:80/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
"integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18="
},
"path-key": {
"version": "3.1.1",
"resolved": "http://npm.dui88.com:80/path-key/-/path-key-3.1.1.tgz",
"integrity": "sha1-WB9q3mWMu6ZaDTOA3ndTKVBU83U=",
"dev": true
},
"path-parse": {
"version": "1.0.6",
"resolved": "http://npm.dui88.com:80/path-parse/-/path-parse-1.0.6.tgz",
"integrity": "sha1-1i27VnlAXXLEc37FhgDp3c8G0kw="
},
"path-to-regexp": {
"version": "1.8.0",
"resolved": "http://npm.dui88.com:80/path-to-regexp/-/path-to-regexp-1.8.0.tgz",
"integrity": "sha1-iHs7qdhDk+h6CgufTLdWGYtTVIo=",
"requires": {
"isarray": "0.0.1"
}
},
"postcss": {
"version": "7.0.35",
"resolved": "http://npm.dui88.com:80/postcss/-/postcss-7.0.35.tgz",
"integrity": "sha1-0r4AuZj38hHYonaXQHny6SuXDiQ=",
"requires": {
"chalk": "^2.4.2",
"source-map": "^0.6.1",
"supports-color": "^6.1.0"
}
},
"postcss-load-config": {
"version": "2.1.2",
"resolved": "http://npm.dui88.com:80/postcss-load-config/-/postcss-load-config-2.1.2.tgz",
"integrity": "sha1-xepQTyxK7zPHNZo03jVzdyrXUCo=",
"requires": {
"cosmiconfig": "^5.0.0",
"import-cwd": "^2.0.0"
}
},
"postcss-loader": {
"version": "3.0.0",
"resolved": "http://npm.dui88.com:80/postcss-loader/-/postcss-loader-3.0.0.tgz",
"integrity": "sha1-a5eUPkfHLYRfqeA/Jzdz1OjdbC0=",
"requires": {
"loader-utils": "^1.1.0",
"postcss": "^7.0.0",
"postcss-load-config": "^2.0.0",
"schema-utils": "^1.0.0"
},
"dependencies": {
"schema-utils": {
"version": "1.0.0",
"resolved": "http://npm.dui88.com:80/schema-utils/-/schema-utils-1.0.0.tgz",
"integrity": "sha1-C3mpMgTXtgDUsoUNH2bCo0lRx3A=",
"requires": {
"ajv": "^6.1.0",
"ajv-errors": "^1.0.0",
"ajv-keywords": "^3.1.0"
}
}
}
},
"postcss-modules-extract-imports": {
"version": "2.0.0",
"resolved": "http://npm.dui88.com:80/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz",
"integrity": "sha1-gYcZoa4doyX5gyRGsBE27rSTzX4=",
"requires": {
"postcss": "^7.0.5"
}
},
"postcss-modules-local-by-default": {
"version": "3.0.3",
"resolved": "http://npm.dui88.com:80/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz",
"integrity": "sha1-uxTgzHgnnVBNvcv9fgyiiZP/u7A=",
"requires": {
"icss-utils": "^4.1.1",
"postcss": "^7.0.32",
"postcss-selector-parser": "^6.0.2",
"postcss-value-parser": "^4.1.0"
}
},
"postcss-modules-scope": {
"version": "2.2.0",
"resolved": "http://npm.dui88.com:80/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz",
"integrity": "sha1-OFyuATzHdD9afXYC0Qc6iequYu4=",
"requires": {
"postcss": "^7.0.6",
"postcss-selector-parser": "^6.0.0"
}
},
"postcss-modules-values": {
"version": "3.0.0",
"resolved": "http://npm.dui88.com:80/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz",
"integrity": "sha1-W1AA1uuuKbQlUwG0o6VFdEI+fxA=",
"requires": {
"icss-utils": "^4.0.0",
"postcss": "^7.0.6"
}
},
"postcss-selector-parser": {
"version": "6.0.4",
"resolved": "http://npm.dui88.com:80/postcss-selector-parser/-/postcss-selector-parser-6.0.4.tgz",
"integrity": "sha1-VgdaE4CgRgTDiwY+p3Z6Epr1wrM=",
"requires": {
"cssesc": "^3.0.0",
"indexes-of": "^1.0.1",
"uniq": "^1.0.1",
"util-deprecate": "^1.0.2"
}
},
"postcss-value-parser": {
"version": "4.1.0",
"resolved": "http://npm.dui88.com:80/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz",
"integrity": "sha1-RD9qIM7WSBor2k+oUypuVdeJoss="
},
"prelude-ls": {
"version": "1.2.1",
"resolved": "http://npm.dui88.com:80/prelude-ls/-/prelude-ls-1.2.1.tgz",
"integrity": "sha1-3rxkidem5rDnYRiIzsiAM30xY5Y=",
"dev": true
},
"prettier": {
"version": "2.2.1",
"resolved": "http://npm.dui88.com:80/prettier/-/prettier-2.2.1.tgz",
"integrity": "sha1-eVoaeN1S8HPaDNQrIfnJE4GSP/U="
},
"progress": {
"version": "2.0.3",
"resolved": "http://npm.dui88.com:80/progress/-/progress-2.0.3.tgz",
"integrity": "sha1-foz42PW48jnBvGi+tOt4Vn1XLvg="
},
"prop-types": {
"version": "15.7.2",
"resolved": "http://npm.dui88.com:80/prop-types/-/prop-types-15.7.2.tgz",
"integrity": "sha1-UsQedbjIfnK52TYOAga5ncv/psU=",
"requires": {
"loose-envify": "^1.4.0",
"object-assign": "^4.1.1",
"react-is": "^16.8.1"
}
},
"punycode": {
"version": "2.1.1",
"resolved": "http://npm.dui88.com:80/punycode/-/punycode-2.1.1.tgz",
"integrity": "sha1-tYsBCsQMIsVldhbI0sLALHv0eew="
},
"qs": {
"version": "6.9.6",
"resolved": "http://npm.dui88.com:80/qs/-/qs-6.9.6.tgz",
"integrity": "sha1-Ju08gkOkMbKSSsqEzJBHHzXVoO4="
},
"react": {
"version": "16.14.0",
"resolved": "http://npm.dui88.com:80/react/-/react-16.14.0.tgz",
"integrity": "sha1-lNd23dCqo32j7aj8W2sYpMmjEU0=",
"requires": {
"loose-envify": "^1.1.0",
"object-assign": "^4.1.1",
"prop-types": "^15.6.2"
}
},
"react-dom": {
"version": "16.14.0",
"resolved": "http://npm.dui88.com:80/react-dom/-/react-dom-16.14.0.tgz",
"integrity": "sha1-etg47Cmnd/s8dcOhkPZhz5Kri4k=",
"requires": {
"loose-envify": "^1.1.0",
"object-assign": "^4.1.1",
"prop-types": "^15.6.2",
"scheduler": "^0.19.1"
}
},
"react-is": {
"version": "16.13.1",
"resolved": "http://npm.dui88.com:80/react-is/-/react-is-16.13.1.tgz",
"integrity": "sha1-eJcppNw23imZ3BVt1sHZwYzqVqQ="
},
"react-lifecycles-compat": {
"version": "3.0.4",
"resolved": "http://npm.dui88.com:80/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz",
"integrity": "sha1-TxonOv38jzSIqMUWv9p4+HI1I2I="
},
"react-redux": {
"version": "5.1.2",
"resolved": "http://npm.dui88.com:80/react-redux/-/react-redux-5.1.2.tgz",
"integrity": "sha1-sZz54h1pRCJye/eY6TSpFsQID1c=",
"requires": {
"@babel/runtime": "^7.1.2",
"hoist-non-react-statics": "^3.3.0",
"invariant": "^2.2.4",
"loose-envify": "^1.1.0",
"prop-types": "^15.6.1",
"react-is": "^16.6.0",
"react-lifecycles-compat": "^3.0.0"
}
},
"react-router": {
"version": "5.2.0",
"resolved": "http://npm.dui88.com:80/react-router/-/react-router-5.2.0.tgz",
"integrity": "sha1-Qk51ZByodH+/duXsyml4GqN+opM=",
"requires": {
"@babel/runtime": "^7.1.2",
"history": "^4.9.0",
"hoist-non-react-statics": "^3.1.0",
"loose-envify": "^1.3.1",
"mini-create-react-context": "^0.4.0",
"path-to-regexp": "^1.7.0",
"prop-types": "^15.6.2",
"react-is": "^16.6.0",
"tiny-invariant": "^1.0.2",
"tiny-warning": "^1.0.0"
},
"dependencies": {
"history": {
"version": "4.10.1",
"resolved": "http://npm.dui88.com:80/history/-/history-4.10.1.tgz",
"integrity": "sha1-MzcaZeOoOyZ0NOKz87G0xYqtTPM=",
"requires": {
"@babel/runtime": "^7.1.2",
"loose-envify": "^1.2.0",
"resolve-pathname": "^3.0.0",
"tiny-invariant": "^1.0.2",
"tiny-warning": "^1.0.0",
"value-equal": "^1.0.1"
}
}
}
},
"react-router-dom": {
"version": "5.2.0",
"resolved": "http://npm.dui88.com:80/react-router-dom/-/react-router-dom-5.2.0.tgz",
"integrity": "sha1-nmWk0MReEyieZsexfH4XXQ6hVmI=",
"requires": {
"@babel/runtime": "^7.1.2",
"history": "^4.9.0",
"loose-envify": "^1.3.1",
"prop-types": "^15.6.2",
"react-router": "5.2.0",
"tiny-invariant": "^1.0.2",
"tiny-warning": "^1.0.0"
},
"dependencies": {
"history": {
"version": "4.10.1",
"resolved": "http://npm.dui88.com:80/history/-/history-4.10.1.tgz",
"integrity": "sha1-MzcaZeOoOyZ0NOKz87G0xYqtTPM=",
"requires": {
"@babel/runtime": "^7.1.2",
"loose-envify": "^1.2.0",
"resolve-pathname": "^3.0.0",
"tiny-invariant": "^1.0.2",
"tiny-warning": "^1.0.0",
"value-equal": "^1.0.1"
}
}
}
},
"rechoir": {
"version": "0.6.2",
"resolved": "http://npm.dui88.com:80/rechoir/-/rechoir-0.6.2.tgz",
"integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=",
"requires": {
"resolve": "^1.1.6"
}
},
"redux": {
"version": "4.0.5",
"resolved": "http://npm.dui88.com:80/redux/-/redux-4.0.5.tgz",
"integrity": "sha1-TbXeWBbheJHeioDEJCMtBvBR2T8=",
"requires": {
"loose-envify": "^1.4.0",
"symbol-observable": "^1.2.0"
}
},
"redux-thunk": {
"version": "2.3.0",
"resolved": "http://npm.dui88.com:80/redux-thunk/-/redux-thunk-2.3.0.tgz",
"integrity": "sha1-UcLBmhhe1Rh6qpotCLZm0NZGdiI="
},
"regenerator-runtime": {
"version": "0.13.7",
"resolved": "http://npm.dui88.com:80/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz",
"integrity": "sha1-ysLazIoepnX+qrrriugziYrkb1U="
},
"regexp.prototype.flags": {
"version": "1.3.1",
"resolved": "http://npm.dui88.com:80/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz",
"integrity": "sha1-fvNSro0VnnWMDq3Kb4/LTu8HviY=",
"dev": true,
"requires": {
"call-bind": "^1.0.2",
"define-properties": "^1.1.3"
}
},
"regexpp": {
"version": "3.1.0",
"resolved": "http://npm.dui88.com:80/regexpp/-/regexpp-3.1.0.tgz",
"integrity": "sha1-IG0K0KVkjP+9uK5GQ489xRyfeOI=",
"dev": true
},
"require-from-string": {
"version": "2.0.2",
"resolved": "http://npm.dui88.com:80/require-from-string/-/require-from-string-2.0.2.tgz",
"integrity": "sha1-iaf92TgmEmcxjq/hT5wy5ZjDaQk=",
"dev": true
},
"resolve": {
"version": "1.20.0",
"resolved": "http://npm.dui88.com:80/resolve/-/resolve-1.20.0.tgz",
"integrity": "sha1-YpoBP7P3B1XW8LeTXMHCxTeLGXU=",
"requires": {
"is-core-module": "^2.2.0",
"path-parse": "^1.0.6"
}
},
"resolve-from": {
"version": "3.0.0",
"resolved": "http://npm.dui88.com:80/resolve-from/-/resolve-from-3.0.0.tgz",
"integrity": "sha1-six699nWiBvItuZTM17rywoYh0g="
},
"resolve-pathname": {
"version": "3.0.0",
"resolved": "http://npm.dui88.com:80/resolve-pathname/-/resolve-pathname-3.0.0.tgz",
"integrity": "sha1-mdAiJNPPJjaJvsuzk7xWAxMCXc0="
},
"rimraf": {
"version": "3.0.2",
"resolved": "http://npm.dui88.com:80/rimraf/-/rimraf-3.0.2.tgz",
"integrity": "sha1-8aVAK6YiCtUswSgrrBrjqkn9Bho=",
"dev": true,
"requires": {
"glob": "^7.1.3"
}
},
"scheduler": {
"version": "0.19.1",
"resolved": "http://npm.dui88.com:80/scheduler/-/scheduler-0.19.1.tgz",
"integrity": "sha1-Tz4u0sGn1laB9MhU+oxaHMtA8ZY=",
"requires": {
"loose-envify": "^1.1.0",
"object-assign": "^4.1.1"
}
},
"schema-utils": {
"version": "2.7.1",
"resolved": "http://npm.dui88.com:80/schema-utils/-/schema-utils-2.7.1.tgz",
"integrity": "sha1-HKTzLRskxZDCA7jnpQvw6kzTlNc=",
"requires": {
"@types/json-schema": "^7.0.5",
"ajv": "^6.12.4",
"ajv-keywords": "^3.5.2"
}
},
"semver": {
"version": "6.3.0",
"resolved": "http://npm.dui88.com:80/semver/-/semver-6.3.0.tgz",
"integrity": "sha1-7gpkyK9ejO6mdoexM3YeG+y9HT0="
},
"shebang-command": {
"version": "2.0.0",
"resolved": "http://npm.dui88.com:80/shebang-command/-/shebang-command-2.0.0.tgz",
"integrity": "sha1-zNCvT4g1+9wmW4JGGq8MNmY/NOo=",
"dev": true,
"requires": {
"shebang-regex": "^3.0.0"
}
},
"shebang-regex": {
"version": "3.0.0",
"resolved": "http://npm.dui88.com:80/shebang-regex/-/shebang-regex-3.0.0.tgz",
"integrity": "sha1-rhbxZE2HPsrYQ7AwexQzYtTEIXI=",
"dev": true
},
"shelljs": {
"version": "0.8.4",
"resolved": "http://npm.dui88.com:80/shelljs/-/shelljs-0.8.4.tgz",
"integrity": "sha1-3naE/ut2f4cWsyYHiooAh1iQ48I=",
"requires": {
"glob": "^7.0.0",
"interpret": "^1.0.0",
"rechoir": "^0.6.2"
}
},
"shiki": {
"version": "0.9.2",
"resolved": "http://npm.dui88.com:80/shiki/-/shiki-0.9.2.tgz",
"integrity": "sha1-ueZgt1DTiSMnV2XE3EySsjh3sRU=",
"requires": {
"onigasm": "^2.2.5",
"vscode-textmate": "^5.2.0"
}
},
"side-channel": {
"version": "1.0.4",
"resolved": "http://npm.dui88.com:80/side-channel/-/side-channel-1.0.4.tgz",
"integrity": "sha1-785cj9wQTudRslxY1CkAEfpeos8=",
"dev": true,
"requires": {
"call-bind": "^1.0.0",
"get-intrinsic": "^1.0.2",
"object-inspect": "^1.9.0"
}
},
"slice-ansi": {
"version": "4.0.0",
"resolved": "http://npm.dui88.com:80/slice-ansi/-/slice-ansi-4.0.0.tgz",
"integrity": "sha1-UA6N0P1VsFgVCGJVsxla3ypF/ms=",
"dev": true,
"requires": {
"ansi-styles": "^4.0.0",
"astral-regex": "^2.0.0",
"is-fullwidth-code-point": "^3.0.0"
},
"dependencies": {
"ansi-styles": {
"version": "4.3.0",
"resolved": "http://npm.dui88.com:80/ansi-styles/-/ansi-styles-4.3.0.tgz",
"integrity": "sha1-7dgDYornHATIWuegkG7a00tkiTc=",
"dev": true,
"requires": {
"color-convert": "^2.0.1"
}
},
"color-convert": {
"version": "2.0.1",
"resolved": "http://npm.dui88.com:80/color-convert/-/color-convert-2.0.1.tgz",
"integrity": "sha1-ctOmjVmMm9s68q0ehPIdiWq9TeM=",
"dev": true,
"requires": {
"color-name": "~1.1.4"
}
},
"color-name": {
"version": "1.1.4",
"resolved": "http://npm.dui88.com:80/color-name/-/color-name-1.1.4.tgz",
"integrity": "sha1-wqCah6y95pVD3m9j+jmVyCbFNqI=",
"dev": true
}
}
},
"source-map": {
"version": "0.6.1",
"resolved": "http://npm.dui88.com:80/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM="
},
"spark-wrapper-fyge": {
"version": "1.0.30",
"resolved": "http://npm.dui88.com:80/spark-wrapper-fyge/-/spark-wrapper-fyge-1.0.30.tgz",
"integrity": "sha512-tqcudqoweft5prr3MX4c6bTf4AuT8Ee/5y3DeU5ucWtP5ClHZIsiUddir+6qffRqo4smilOX/vVC8OFGjROcWA==",
"requires": {
"fyge": "^2.0.17"
}
},
"sprintf-js": {
"version": "1.0.3",
"resolved": "http://npm.dui88.com:80/sprintf-js/-/sprintf-js-1.0.3.tgz",
"integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw="
},
"string-width": {
"version": "4.2.2",
"resolved": "http://npm.dui88.com:80/string-width/-/string-width-4.2.2.tgz",
"integrity": "sha1-2v1PlVmnWFz7pSnGoKT3NIjr1MU=",
"dev": true,
"requires": {
"emoji-regex": "^8.0.0",
"is-fullwidth-code-point": "^3.0.0",
"strip-ansi": "^6.0.0"
}
},
"string.prototype.matchall": {
"version": "4.0.4",
"resolved": "http://npm.dui88.com:80/string.prototype.matchall/-/string.prototype.matchall-4.0.4.tgz",
"integrity": "sha1-YI8lXpPgchB/XeBm+Bot+3jPayk=",
"dev": true,
"requires": {
"call-bind": "^1.0.2",
"define-properties": "^1.1.3",
"es-abstract": "^1.18.0-next.2",
"has-symbols": "^1.0.1",
"internal-slot": "^1.0.3",
"regexp.prototype.flags": "^1.3.1",
"side-channel": "^1.0.4"
}
},
"string.prototype.trimend": {
"version": "1.0.4",
"resolved": "http://npm.dui88.com:80/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz",
"integrity": "sha1-51rpDClCxjUEaGwYsoe0oLGkX4A=",
"dev": true,
"requires": {
"call-bind": "^1.0.2",
"define-properties": "^1.1.3"
}
},
"string.prototype.trimstart": {
"version": "1.0.4",
"resolved": "http://npm.dui88.com:80/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz",
"integrity": "sha1-s2OZr0qymZtMnGSL16P7K7Jv7u0=",
"dev": true,
"requires": {
"call-bind": "^1.0.2",
"define-properties": "^1.1.3"
}
},
"strip-ansi": {
"version": "6.0.0",
"resolved": "http://npm.dui88.com:80/strip-ansi/-/strip-ansi-6.0.0.tgz",
"integrity": "sha1-CxVx3XZpzNTz4G4U7x7tJiJa5TI=",
"dev": true,
"requires": {
"ansi-regex": "^5.0.0"
}
},
"strip-json-comments": {
"version": "3.1.1",
"resolved": "http://npm.dui88.com:80/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
"integrity": "sha1-MfEoGzgyYwQ0gxwxDAHMzajL4AY=",
"dev": true
},
"style-loader": {
"version": "1.3.0",
"resolved": "http://npm.dui88.com:80/style-loader/-/style-loader-1.3.0.tgz",
"integrity": "sha1-gotKOzt+eqWEfOe66eh0USEUJJ4=",
"requires": {
"loader-utils": "^2.0.0",
"schema-utils": "^2.7.0"
},
"dependencies": {
"json5": {
"version": "2.2.0",
"resolved": "http://npm.dui88.com:80/json5/-/json5-2.2.0.tgz",
"integrity": "sha1-Lf7+cgxrpSXZ69kJlQ8FFTFsiaM=",
"requires": {
"minimist": "^1.2.5"
}
},
"loader-utils": {
"version": "2.0.0",
"resolved": "http://npm.dui88.com:80/loader-utils/-/loader-utils-2.0.0.tgz",
"integrity": "sha1-5MrOW4FtQloWa18JfhDNErNgZLA=",
"requires": {
"big.js": "^5.2.2",
"emojis-list": "^3.0.0",
"json5": "^2.1.2"
}
}
}
},
"supports-color": {
"version": "6.1.0",
"resolved": "http://npm.dui88.com:80/supports-color/-/supports-color-6.1.0.tgz",
"integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=",
"requires": {
"has-flag": "^3.0.0"
}
},
"svgaplayerweb": {
"version": "2.3.1",
"resolved": "http://npm.dui88.com:80/svgaplayerweb/-/svgaplayerweb-2.3.1.tgz",
"integrity": "sha1-Au3BavFiCvn1dKU254E/wlE55Hs="
},
"symbol-observable": {
"version": "1.2.0",
"resolved": "http://npm.dui88.com:80/symbol-observable/-/symbol-observable-1.2.0.tgz",
"integrity": "sha1-wiaIrtTqs83C3+rLtWFmBWCgCAQ="
},
"table": {
"version": "6.0.7",
"resolved": "http://npm.dui88.com:80/table/-/table-6.0.7.tgz",
"integrity": "sha1-5FiX/7zBvPnoqHv0IPLJ5aelKjQ=",
"dev": true,
"requires": {
"ajv": "^7.0.2",
"lodash": "^4.17.20",
"slice-ansi": "^4.0.0",
"string-width": "^4.2.0"
},
"dependencies": {
"ajv": {
"version": "7.2.3",
"resolved": "http://npm.dui88.com:80/ajv/-/ajv-7.2.3.tgz",
"integrity": "sha1-ynjRz0WNfTbRw/oHlN0UNAbbV3I=",
"dev": true,
"requires": {
"fast-deep-equal": "^3.1.1",
"json-schema-traverse": "^1.0.0",
"require-from-string": "^2.0.2",
"uri-js": "^4.2.2"
}
},
"json-schema-traverse": {
"version": "1.0.0",
"resolved": "http://npm.dui88.com:80/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
"integrity": "sha1-rnvLNlard6c7pcSb9lTzjmtoYOI=",
"dev": true
}
}
},
"text-table": {
"version": "0.2.0",
"resolved": "http://npm.dui88.com:80/text-table/-/text-table-0.2.0.tgz",
"integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=",
"dev": true
},
"tiny-invariant": {
"version": "1.1.0",
"resolved": "http://npm.dui88.com:80/tiny-invariant/-/tiny-invariant-1.1.0.tgz",
"integrity": "sha1-Y0xfjv3CdxS384bDXmdgmR0jCHU="
},
"tiny-warning": {
"version": "1.0.3",
"resolved": "http://npm.dui88.com:80/tiny-warning/-/tiny-warning-1.0.3.tgz",
"integrity": "sha1-lKMNtFPfTGQ9D9VmBg1gqHXYR1Q="
},
"to-fast-properties": {
"version": "2.0.0",
"resolved": "http://npm.dui88.com:80/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
"integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=",
"dev": true
},
"type-check": {
"version": "0.4.0",
"resolved": "http://npm.dui88.com:80/type-check/-/type-check-0.4.0.tgz",
"integrity": "sha1-B7ggO/pwVsBlcFDjzNLDdzC6uPE=",
"dev": true,
"requires": {
"prelude-ls": "^1.2.1"
}
},
"type-fest": {
"version": "0.8.1",
"resolved": "http://npm.dui88.com:80/type-fest/-/type-fest-0.8.1.tgz",
"integrity": "sha1-CeJJ696FHTseSNJ8EFREZn8XuD0=",
"dev": true
},
"typedoc": {
"version": "0.20.28",
"resolved": "http://npm.dui88.com:80/typedoc/-/typedoc-0.20.28.tgz",
"integrity": "sha1-bEVJBNhk3UOi3pIoxEuR48U9mM4=",
"requires": {
"colors": "^1.4.0",
"fs-extra": "^9.1.0",
"handlebars": "^4.7.7",
"lodash": "^4.17.21",
"lunr": "^2.3.9",
"marked": "^2.0.0",
"minimatch": "^3.0.0",
"progress": "^2.0.3",
"shelljs": "^0.8.4",
"shiki": "^0.9.2",
"typedoc-default-themes": "^0.12.7"
}
},
"typedoc-default-themes": {
"version": "0.12.7",
"resolved": "http://npm.dui88.com:80/typedoc-default-themes/-/typedoc-default-themes-0.12.7.tgz",
"integrity": "sha1-1E9o1Ao+kKGbXqe+TMbtlJr+do0="
},
"uglify-js": {
"version": "3.12.8",
"resolved": "http://npm.dui88.com:80/uglify-js/-/uglify-js-3.12.8.tgz",
"integrity": "sha1-qC5uU8m+FPc4LePQaO8eJufUqvg=",
"optional": true
},
"unbox-primitive": {
"version": "1.0.0",
"resolved": "http://npm.dui88.com:80/unbox-primitive/-/unbox-primitive-1.0.0.tgz",
"integrity": "sha1-7qy8Sv+ijps9NrXq7MxQsyUbHT8=",
"dev": true,
"requires": {
"function-bind": "^1.1.1",
"has-bigints": "^1.0.0",
"has-symbols": "^1.0.0",
"which-boxed-primitive": "^1.0.1"
}
},
"uniq": {
"version": "1.0.1",
"resolved": "http://npm.dui88.com:80/uniq/-/uniq-1.0.1.tgz",
"integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8="
},
"universalify": {
"version": "2.0.0",
"resolved": "http://npm.dui88.com:80/universalify/-/universalify-2.0.0.tgz",
"integrity": "sha1-daSYTv7cSwiXXFrrc/Uw0C3yVxc="
},
"uri-js": {
"version": "4.4.1",
"resolved": "http://npm.dui88.com:80/uri-js/-/uri-js-4.4.1.tgz",
"integrity": "sha1-mxpSWVIlhZ5V9mnZKPiMbFfyp34=",
"requires": {
"punycode": "^2.1.0"
}
},
"util-deprecate": {
"version": "1.0.2",
"resolved": "http://npm.dui88.com:80/util-deprecate/-/util-deprecate-1.0.2.tgz",
"integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8="
},
"v8-compile-cache": {
"version": "2.3.0",
"resolved": "http://npm.dui88.com:80/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz",
"integrity": "sha1-LeGWGMZtwkfc+2+ZM4A12CRaLO4=",
"dev": true
},
"value-equal": {
"version": "1.0.1",
"resolved": "http://npm.dui88.com:80/value-equal/-/value-equal-1.0.1.tgz",
"integrity": "sha1-Hgt5THNMXAyt4XnEN9NW2TGjTWw="
},
"vscode-textmate": {
"version": "5.2.0",
"resolved": "http://npm.dui88.com:80/vscode-textmate/-/vscode-textmate-5.2.0.tgz",
"integrity": "sha1-AfAXYKOR6CIv5PM/vMvRrXGu104="
},
"which": {
"version": "2.0.2",
"resolved": "http://npm.dui88.com:80/which/-/which-2.0.2.tgz",
"integrity": "sha1-fGqN0KY2oDJ+ELWckobu6T8/UbE=",
"dev": true,
"requires": {
"isexe": "^2.0.0"
}
},
"which-boxed-primitive": {
"version": "1.0.2",
"resolved": "http://npm.dui88.com:80/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz",
"integrity": "sha1-E3V7yJsgmwSf5dhkMOIc9AqJqOY=",
"dev": true,
"requires": {
"is-bigint": "^1.0.1",
"is-boolean-object": "^1.1.0",
"is-number-object": "^1.0.4",
"is-string": "^1.0.5",
"is-symbol": "^1.0.3"
}
},
"word-wrap": {
"version": "1.2.3",
"resolved": "http://npm.dui88.com:80/word-wrap/-/word-wrap-1.2.3.tgz",
"integrity": "sha1-YQY29rH3A4kb00dxzLF/uTtHB5w=",
"dev": true
},
"wordwrap": {
"version": "1.0.0",
"resolved": "http://npm.dui88.com:80/wordwrap/-/wordwrap-1.0.0.tgz",
"integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus="
},
"wrappy": {
"version": "1.0.2",
"resolved": "http://npm.dui88.com:80/wrappy/-/wrappy-1.0.2.tgz",
"integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8="
},
"yallist": {
"version": "3.1.1",
"resolved": "http://npm.dui88.com:80/yallist/-/yallist-3.1.1.tgz",
"integrity": "sha1-27fa+b/YusmrRev2ArjLrQ1dCP0="
}
}
}
{
"name": "sparkproject-1614590528477",
"version": "1.0.0",
"private": true,
"scripts": {
"dev": "spark dev --type h5",
"prod": "spark build --type h5 --env prod",
"build": "spark build --type h5 --env build",
"tb": "spark build --type taobao"
},
"dependencies": {
"@spark/api-base": "^2.0.7",
"@spark/projectx": "^2.0.5",
"@spark/share": "^2.0.41",
"@spark/ui": "^2.0.8",
"@spark/utils": "^2.0.17",
"css-loader": "^3.6.0",
"duiba-utils": "^1.0.2",
"postcss-loader": "^3.0.0",
"prettier": "^2.0.5",
"qs": "^6.9.4",
"react": "^16.4.1",
"react-dom": "^16.4.1",
"react-redux": "^5.0.7",
"redux": "^4.0.0",
"redux-thunk": "^2.3.0",
"style-loader": "^1.2.1",
"svgaplayerweb": "^2.3.1"
},
"eslintConfig": {
"parser": "babel-eslint"
},
"devDependencies": {
"babel-eslint": "^10.1.0",
"eslint": "^7.22.0",
"eslint-plugin-react": "^7.22.0",
"mockjs": "^1.1.0"
}
}
<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="theme-color" content="#000000">
<link rel="shortcut icon" type="image/x-icon" href="//yun.duiba.com.cn/editor/spark/favicon.ico">
<title>惊喜盲盒-赢壕礼</title>
<script src="//yun.duiba.com.cn/js-libs/rem/1.1.3/rem.min.js"></script>
<script src="//yun.duiba.com.cn/h5/lib/zepto.min.js"></script>
<script src="//res.wx.qq.com/open/js/jweixin-1.4.0.js"></script>
<script src="//rmrbyfb-statics.peopleapp.com/bridge/bridge.js"></script>
<script src="//yun.duiba.com.cn/js-libs/vConsole/3.3.4/vconsole.min.js"></script>
<script>
new VConsole();
function getApp() {
return {
cloud: {},
cloudName: "clientTemplate2C",
requestType: "mock"
}
}
// 落地页打包需要
// var isSharePage = true;
var CFG = CFG || {};
CFG.projectId = location.pathname.split('/')[2] || '1';
function getUrlParam(name) {
const search = window.location.search;
const matched = search
.slice(1)
.match(new RegExp('(^|&)' + name + '=([^&]*)(&|$)', 'i'));
return search.length ? matched && matched[2] : null;
}
CFG.appID = '${APPID}';
if (!getUrlParam("appID")) {
// alert("【警告】检测到活动url中没有appID参数\n缺少该参数会导致埋点、分享、app信息获取错误。")
}
CFG.activeTime="2021.3.5-2021.4.5";
// 测试地址
// CFG.homePageUrl = "http://activity.m.duibatest.com.cn/projectx/pe6e5cf94/index.html"; // 活动首页地址
// CFG.prizePageUrl = `http://activity.m.duibatest.com.cn/projectx/${CFG.projectId}/f286e6863.html`; // 我的奖品页面地址
// CFG.globalShareUrl = `http://activity.m.duibatest.com.cn/projectx/${CFG.projectId}/pageshare.html?appKey=NAP5tQvYdRhFHA29ysJZyHs9mua&openBs=openbs`;
// 线上测试或者正式
CFG.homePageUrl = "https://79476.activity-1.m.duiba.com.cn/projectx/" + CFG.projectId + "/index.html?appID=79476"; // 活动首页地址
CFG.prizePageUrl = "http://79476.activity-1.m.duiba.com.cn/projectx/" + CFG.projectId + "/f286e6863.html"; // 我的奖品页面地址
CFG.globalShareUrl = "http://79476.activity-1.m.duiba.com.cn/projectx/" + CFG.projectId + "/pageshare.html?appKey=2Qii11uUs7hDKeRchKmBeEB3y1zk&openBs=openbs";
CFG.isWx = false;
CFG.appShareType = 1; // 端内分享的类型,1--好友,2--朋友圈
CFG.isFromWx = false; // 是否从微信分享页进入
if(getUrlParam("isFromWx")==1){
CFG.isFromWx = true;
}
if(window.navigator.userAgent.toLowerCase().indexOf("micromessenger") > -1){
console.log("========>>> 微信内")
CFG.isWx = true;
}
// console.log(111,getLoginPageUrl())
function getLoginPageUrl(){
// 活动地址,需要拼上 分享召回的参数,以及isFromWx=1
var url = CFG.homePageUrl + "&isFromWx=1&is_from_share=0";
var redirect = encodeURIComponent(url);
var inviteCode = getUrlParam("inviteCode");
var timestamp = Date.now();
// var loginPage = "http://zhixiao.yhfund.com.cn/user/register/?redirect=" + redirect + "&inviteCode=" + inviteCode + "&timestamp=" + timestamp + "&source=duiba&activity=toybox";
// var loginPage = "http://dev-zhixiao.yhfund.com.cn/fund/detail/?fundCode=180012&redirect=" + redirect + "&inviteCode=" + inviteCode + "&timestamp=" + timestamp + "&source=duiba&activity=toybox";
var loginPage = "https://dev-zhixiao.yhfund.com.cn/user/register/?redirect=" + redirect + "&inviteCode=" + inviteCode + "&timestamp=" + timestamp + "&source=duiba&activity=toybox";
return loginPage;
}
</script>
</head>
<body>
<noscript>
You need to enable JavaScript to run this app.
</noscript>
<div id="root"></div>
<!--
This HTML file is a template.
If you open it directly in the browser, you will see an empty page.
You can add webfonts, meta tags, or analytics to this file.
The build step will place the bundled scripts into the <body> tag.
To begin the development, run `npm start` or `yarn start`.
To create a production bundle, use `npm run build` or `yarn build`.
-->
</body>
</html>
module.exports = {
OUTPUT_DIR: "dist",
SOURCE_DIR: "src",
TEMP_DIR: "./.temp",
ENTRY: "src/app.jsx",
TEMPLATE: "./public/index.html",
API_MOCK: true
};
const projectId = CFG.projectId
// const mockOrigin = `https://docs.dui88.com/mock/115/projectx/2`;
// const mockOrigin1= `https://docs.dui88.com/mock/110/projectx/2`;
const mockOrigin = `/projectx/${projectId}`;
const mockOrigin1 = `/projectx/${projectId}`;
const apiCfg = {
getRule: `${mockOrigin1}/projectRule.query`,
doJoin: {
uri: `join.do`,
method: "post",
withToken: true, //携带星速台token
secret: true, //开启接口加密
secretKey: 'duibaduiba123', //接口加密key
},
homeInfo: `${mockOrigin}/blindBox/homeInfo.do`,
join: {
uri: `${mockOrigin}/blindBox/join.do`,
withToken: true
},
getCode: `${mockOrigin}/fundBox/createItem.do`,
recordShareGuide: `${mockOrigin}/blindBox/recordShareGuide.do`,
buriedPoint: `${mockOrigin1}/buriedPoint`
}
export default apiCfg;
\ No newline at end of file
import apiCfg from './apicfg';
import {getPxToken} from "@spark/projectx";
import {callApi} from '@spark/api-base'
import {Toast} from '@spark/ui'
import {isFromShare, newUser} from 'duiba-utils';
let mergeData = {
user_type: newUser ? '0' : '1',
is_from_share: isFromShare ? '0' : '1',
}
const apiList = {
...apiCfg
}
const API = generateAPI(apiList);
export default API;
function getRequestParams(value) {
if (typeof value === 'string') {
return {
uri: value,
method: 'get'
}
} else if (typeof value === 'object') {
const {uri, method = 'get', headers, withToken, secret, secretKey, contentType = 'form'} = value;
return {
uri,
method,
headers,
withToken,
secret,
secretKey,
contentType,
}
} else {
console.error('getRequestParams: 传参有误');
}
}
function generateAPI(apiList) {
const api = {};
for (let key in apiList) {
let value = apiList[key];
const {method, uri, headers: mHeaders, withToken, secret, secretKey, contentType} = getRequestParams(value);
api[key] = async (params = {}, headers) => {
let token;
if (withToken) {
try {
token = await getPxToken();
} catch (e) {
Toast('星速台token获取失败,***请补全该处理逻辑***');
return;
}
}
let mergedHeaders = {...mHeaders, ...headers}
if (withToken && token) {
params.token = token;
}
params = {...params, ...mergeData};
const result = await callApi(uri, params, method, mergedHeaders, false, secret, secretKey, contentType)
.catch(e => {
//捕获网络异常
// Toast((e.message || '网络异常'));
});
if (result) {
//判断接口错误
if (!result.success) {
// Toast((result.message || '接口错误'));
}
//返回整个结果
return result;
}
}
}
return api;
}
import React, { Component } from "react";
import ReactDOM from "react-dom";
import "./app.less";
import MD from '../MD';
MD();
//此处为spark-cli动态生成
import Pagehome from "./pages/pagehome/pagehome.jsx";
import Pageshare from "./pages/pageshare/pageshare.jsx";
class App extends Component {
render() {
return (
<div>
<div id="diabox" ></div>
{/* 活动页 */}
<Pagehome></Pagehome>
{/* 分享落地页 */}
{/* <Pageshare></Pageshare> */}
</div>
);
}
}
ReactDOM.render(<App />, document.getElementById("root"));
* {
margin: 0;
padding: 0;
}
html,
body {
font-size: 24px;
width: 100%;
height: 100%;
}
#root{
width: 100%;
height: 100%;
overflow: hidden;
// background: rgb(255,215,154);
}
#diabox{
position: fixed;
top:0%;
left: 0%;
bottom: 0%;
right: 0%;
// background-color: rgba(0,0, 0, 0.7);
margin: auto;
z-index: 1; // js中动态控制z-index
}
#topbox{
// position: fixed;
// top:0%;
// left: 0%;
// bottom: 0%;
// right: 0%;
// margin: auto;
// overflow: hidden;
width: 750px;
height: 1624px;
position: absolute;
top: 50%;
margin-top: -812px;
overflow: hidden;
}
.popcontainer {
position: fixed;
width: calc(100%); //750px;
height: calc(100%); //1624px;
background: rgba(0, 0, 0, 0.7);
}
.comPop_zoom {
transform-origin: center center;
animation: zoom 0.24s linear 0s 1;
}
.comPop_zoom_from0 {
transform-origin: center center;
opacity: 0;
transform: scale(0);
animation: zoomfrom0 0.22s linear 0.44s 1 forwards;
}
@keyframes zoom {
0% {
transform: scale(0.75);
}
50% {
transform: scale(1.08)
}
100% {
transform: scale(1)
}
}
@keyframes zoomfrom0 {
0% {
opacity: 0;
transform: scale(0.2);
}
80% {
opacity: 1;
transform: scale(1.12)
}
100% {
opacity: 1;
transform: scale(1)
}
}
.paulse{
animation: 1s paulse linear 0s infinite;
}
@keyframes paulse{
from{
transform: scale(1);
transform-origin: center;
}
25%{
transform: scale(1.05);
transform-origin: center;
}
50%{
transform: scale(0.95);
transform-origin: center;
}
75%{
transform: scale(1.05);
transform-origin: center;
}
to{
transform: scale(1);
transform-origin: center;
}
}
.diacontmidpos{
position: fixed;
top:0%;
left: 0%;
bottom: 0%;
right: 0%;
margin: auto;
transform-origin: 50% 50%;
}
.blackmengceng{
background-color: rgba(0, 0, 0, 0.7);
}
.diacontbotpos{
position: fixed;
left: 0%;
bottom: 0%;
right: 0%;
margin: auto;
}
.modal-bg {
position: fixed;
top: 0;
bottom: 0;
right: 0;
left: 0;
background-color: rgba(0, 0, 0, 0.8);
}
.canvas-part{
width: 750px;
height: 1624px;
position: absolute;
top: 0;
left: 0;
overflow: hidden;
}
.canvasDiv{
width: 100%;
height: 1624px;
}
'use strict';
import React, { Component } from 'react';
import resList from '../../resconfig/resList';
import './comaddcount.less';
class Comaddcount extends Component {
constructor(props) {
super(props);
this.state = { resList: resList };
}
openBlindBox = () => {
this.closeDia();
this.props.call && this.props.call();
}
closeDia = () => {
const { closeWin } = this.props;
closeWin && closeWin();
}
render() {
const { addTimes } = this.props.data;
console.log(this.props.data)
return (
<div className="addcount ">
<div className="addcount_page ">
<img className="biao_ti " src={this.state.resList['f5d3c252-018e-4a01-9a05-37d021bac403'].url} />
<img className="an_niu md9" onClick={this.openBlindBox} src={this.state.resList['ca3a31f1-8f51-42cb-88db-b56e6721e086'].url} />
<img className="guan_bi " onClick={this.closeDia} src={this.state.resList['d3cb848a-92ec-40c3-9684-5edd63eae927'].url} />
<span className="text ">
{addTimes}位好友已将帮您赢得{addTimes}<br / >开盲盒机会
</span>
</div>
</div>
);
}
}
export default Comaddcount;
.addcount {
width: 750px;
height: 100%;
opacity: 1;
position: absolute;
transform-origin: 0px 0px 0px;
.addcount_page {
width: 678px;
height: 805px;
opacity: 1;
left: 36px;
top: 40%;
transform: translateY(-50%);
position: absolute;
transform-origin: 0px 0px 0px;
}
.biao_ti {
width: 678px;
height: 805px;
opacity: 1;
position: absolute;
transform-origin: 0px 0px 0px;
}
.an_niu {
width: 427px;
height: 112px;
opacity: 1;
left: 126px;
top: 631px;
position: absolute;
transform-origin: 0px 0px 0px;
}
.guan_bi {
width: 46px;
height: 47px;
opacity: 0.5019607843137255;
left: 575px;
top: 195px;
position: absolute;
transform-origin: 0px 0px 0px;
}
.text {
width: 100%;
opacity: 1;
top: 456px;
text-align: center;
position: absolute;
transform-origin: 0px 0px 0px;
font-size: 30px;
color: rgba(253, 235, 175, 1);
}
}
'use strict';
import React, { Component } from 'react';
import resList from '../../resconfig/resList';
import './comaddonechance.less';
class Comaddonechance extends Component {
constructor(props) {
super(props);
this.state = { resList: resList };
}
componentDidMount(){
}
openBlindBox = () => {
this.closeDia();
this.props.call && this.props.call();
}
closeDia = () => {
const { closeWin } = this.props;
closeWin && closeWin();
}
render() {
return (
<div className="addonechance ">
<img className="biao_ti " src={this.state.resList['9b9b55f0-87a8-4667-9067-12c346f1d948'].url} />
<img className="an_niu md8" onClick={this.openBlindBox} src={this.state.resList['cbefada8-024a-46dc-a319-e893cb64e790'].url} />
<img className="guan_bi " onClick={this.closeDia} src={this.state.resList['d3cb848a-92ec-40c3-9684-5edd63eae927'].url} />
<span className="text ">已经帮好友赢得1次<br />开盲盒机会</span>
</div>
);
}
}
export default Comaddonechance;
.addonechance {
width: 678px;
height: 794px;
opacity: 1;
left: 36px;
top: 40%;
transform: translateY(-50%);
position: absolute;
transform-origin: 0px 0px 0px;
.biao_ti {
width: 678px;
height: 794px;
opacity: 1;
position: absolute;
transform-origin: 0px 0px 0px;
}
.an_niu {
width: 427px;
height: 112px;
opacity: 1;
left: 126px;
top: 620px;
position: absolute;
transform-origin: 0px 0px 0px;
}
.guan_bi {
width: 46px;
height: 47px;
opacity: 0.5019607843137255;
left: 575px;
top: 184px;
position: absolute;
transform-origin: 0px 0px 0px;
}
.text {
width: 100%;
opacity: 1;
top: 445px;
text-align: center;
position: absolute;
transform-origin: 0px 0px 0px;
font-size: 30px;
color: rgba(253, 235, 175, 1);
}
}
'use strict';
import React, { Component } from 'react';
import resList from '../../resconfig/resList';
import './comgetprize.less';
import { getSVGA } from "../../utils/svga.js";
import { Toast, showLoading, hideLoading, configLoading, DefaultIcon, RainbowIcon, SlackIcon, WaveIcon } from '@spark/ui'
configLoading(RainbowIcon);
let flag = true;
class Comgetprize extends Component {
constructor(props) {
super(props);
this.state = {
resList: resList,
openPrizeStatus: true,
showAni: false
};
}
componentDidMount() {
this.initSvga()
}
goPrizePage = () => {
this.closeDia();
this.props.call && this.props.call();
}
initSvga = () => {
const boxUrl = '//yun.duiba.com.cn/spark/assets/9da04f37d08ba98d64a90699df596ce9476753d8.svga';
getSVGA(boxUrl, '.box-svga', this.showPrize);
}
showPrize = () => {
const diaUrl = '//yun.duiba.com.cn/aurora/assets/c58972678b52d74c97f7cd856d7934eba3d856cf.svga';
getSVGA(diaUrl, '.man-svga');
document.getElementsByClassName("prize_box_show")[0].style.animationName = "showAni"
}
closeDia = () => {
const { closeWin } = this.props;
closeWin && closeWin();
}
//去除防连点
removeEnabled = (time=2000) => {
setTimeout(() => {
flag = true;
}, time);
}
render() {
const { optionName, optionImg, url} = this.props.data;
return (
<div className="getprize ">
{/* */}
<div className="box-mc " >
<div className="box-svga " ></div>
</div>
<div className="man-mc " >
<div className="man-svga " ></div>
</div>
<div className="prize_box prize_box_show">
<img className="biao_ti " src={this.state.resList['221d2e2b-7c3f-46b3-8a0d-e437d8b5934b'].url} />
<img className="an_niu " onClick={this.goPrizePage} src={this.state.resList['b3b4b908-2332-4256-bf2e-e4d9977d85fe'].url} />
{/* <span className="text_tip ">可在【我的奖品】中查看</span> */}
<span className="text_prize ">开出{optionName}奖品!</span>
<img className="guan_bi " onClick={this.closeDia} src={this.state.resList['d3cb848a-92ec-40c3-9684-5edd63eae927'].url} />
<img className="prize_img " src={optionImg} />
</div>
</div>
);
}
}
export default Comgetprize;
.getprize {
width: 750px;
height: 100%;
opacity: 1;
position: absolute;
transform-origin: 0px 0px 0px;
.prize_box {
width: 678px;
height: 943px;
left: 36px;
opacity: 0;
top: calc(45% - 943px / 2);
position: absolute;
}
.prize_box_show {
animation-duration: .5s;
animation-fill-mode: forwards;
animation-timing-function: ease;
}
.qu_xian_3758 {
width: 678px;
height: 776px;
opacity: 1;
position: absolute;
transform-origin: 0px 0px 0px;
}
.biao_ti {
width: 566px;
height: 665px;
opacity: 1;
left: 56px;
top: 278px;
position: absolute;
transform-origin: 0px 0px 0px;
}
.an_niu {
width: 400px;
height: 112px;
opacity: 1;
left: 139px;
top: 771px;
position: absolute;
transform-origin: 0px 0px 0px;
}
.text_tip {
width: 100%;
height: 25px;
opacity: 1;
top: 454px;
text-align: center;
position: absolute;
transform-origin: 0px 0px 0px;
font-size: 14.22501px;
color: rgba(250, 200, 95, 1);
}
.text_prize {
width: 100%;
height: 34px;
opacity: 1;
top: 420px;
text-align: center;
position: absolute;
transform-origin: 0px 0px 0px;
font-size: 30px;
color: rgba(253, 235, 175, 1);
}
.guan_bi {
width: 46px;
height: 47px;
opacity: 0.5019607843137255;
left: 575px;
top: 193px;
position: absolute;
transform-origin: 0px 0px 0px;
}
.prize_img {
width: 223px;
height: 223px;
opacity: 1;
left: 227px;
top: 499px;
background-color: rgb(255, 240, 216);
border-radius: 20px;
position: absolute;
transform-origin: 0px 0px 0px;
}
.box-mc {
width: 750px;
height: 1624px;
top: calc(50% - 1624px / 2);
position: absolute;
.box-svga {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
}
}
.man-mc {
width: 750px;
height: 1624px;
top: calc(50% - 1624px / 2);
position: absolute;
.man-svga {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: -188px;
}
}
}
@keyframes showAni {
0% {
opacity: 1;
transform: scale(0.2);
}
100% {
opacity: 1;
transform: scale(1);
}
}
\ No newline at end of file
'use strict';
import React, { Component } from 'react';
import resList from '../../resconfig/resList';
import './commissprize.less';
import { getSVGA } from "../../utils/svga.js";
let flag = true;
class Commissprize extends Component {
constructor(props) {
super(props);
this.state = {
resList: resList,
show: ""
};
}
componentDidMount() {
this.initSvga();
}
initSvga = () => {
const boxUrl = '//yun.duiba.com.cn/spark/assets/9da04f37d08ba98d64a90699df596ce9476753d8.svga';
getSVGA(boxUrl, '.box-svga',this.showMain);
}
showMain = () => {
this.setState({
show: "show"
})
}
playAgain = () => {
if (!flag) return; flag = false;
this.removeEnabled(2000);
this.closeDia();
this.props.call && this.props.call();
}
closeDia = () => {
const { closeWin } = this.props;
closeWin && closeWin();
}
//去除防连点
removeEnabled = (time=2000) => {
setTimeout(() => {
flag = true;
}, time);
}
render() {
const { show } = this.state;
return (
<div className="miss_prize_page">
<div className="box-mc " >
<div className="box-svga " ></div>
</div>
<div className={"missprize " + show}>
<img className="biao_ti " src={this.state.resList['8e6023ae-a6ee-4f01-8041-e008a776321e'].url} />
<img className="an_niu md4" onClick={this.playAgain} src={this.state.resList['7ac99197-c1c9-47e3-a535-03bad2683578'].url} />
<span className="text ">未能开出奖品<br />下次继续努力~</span>
<img className="guan_bi " onClick={this.closeDia} src={this.state.resList['d3cb848a-92ec-40c3-9684-5edd63eae927'].url} />
</div>
</div>
);
}
}
export default Commissprize;
.miss_prize_page {
width: 750px;
height: 100%;
opacity: 1;
position: absolute;
transform-origin: 0px 0px 0px;
.missprize {
width: 678px;
height: 819px;
opacity: 1;
left: 36px;
top: 40%;
transform: translateY(-50%);
position: absolute;
transform-origin: 0px 0px 0px;
opacity: 0;
}
.show {
opacity:1
}
.box-mc {
width: 750px;
height: 1624px;
top: calc(50% - 1624px / 2);
position: absolute;
.box-svga {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
}
}
.biao_ti {
width: 677px;
height: 819px;
opacity: 1;
left: -18px;
position: absolute;
transform-origin: 0px 0px 0px;
}
.an_niu {
width: 427px;
height: 112px;
opacity: 1;
left: 125px;
top: 631px;
position: absolute;
transform-origin: 0px 0px 0px;
}
.text {
width: 100%;
height: 81px;
opacity: 1;
top: 487px;
text-align: center;
position: absolute;
transform-origin: 0px 0px 0px;
font-size: 30px;
color: rgba(253, 235, 175, 1);
}
.guan_bi {
width: 46px;
height: 47px;
opacity: 0.5019607843137255;
left: 592px;
top: 173px;
position: absolute;
transform-origin: 0px 0px 0px;
}
}
\ No newline at end of file
'use strict';
import React, { Component } from 'react';
import resList from '../../resconfig/resList';
import './comneedshare.less';
let flag = true;
class Comneedshare extends Component {
constructor(props) {
super(props);
this.state = { resList: resList };
}
componentDidMount(){
}
handleInvite = () => {
this.closeDia();
this.props.call && this.props.call();
}
closeDia = () => {
const { closeWin } = this.props;
closeWin && closeWin();
}
//去除防连点
removeEnabled = (time=2000) => {
setTimeout(() => {
flag = true;
}, time);
}
render() {
return (
<div className="needshare ">
<img
className="text "
src={this.state.resList['857df60f-9643-4706-84ac-baa97ff7cea0'].url}
/>
<img className="guan_bi " onClick={this.closeDia} src={this.state.resList['b2a0defc-96bb-4dd4-a593-8c6f06ec6ec2'].url} />
<img className="an_niu md5" onClick={this.handleInvite} src={this.state.resList['d5c736a3-be0e-4bdf-9271-707f875602cc'].url} />
<img className="biao_ti " src={this.state.resList['5313d9ca-26b4-4891-8266-8e9613fe0afc'].url} />
</div>
);
}
}
export default Comneedshare;
.needshare {
width: 678px;
height: 836px;
opacity: 1;
left: 36px;
top: 40%;
transform: translateY(-50%);
position: absolute;
transform-origin: 0px 0px 0px;
.text {
width: 678px;
height: 836px;
opacity: 1;
position: absolute;
transform-origin: 0px 0px 0px;
}
.guan_bi {
width: 46px;
height: 47px;
opacity: 0.5019607843137255;
left: 573px;
top: 190px;
position: absolute;
transform-origin: 0px 0px 0px;
}
.an_niu {
width: 427px;
height: 112px;
opacity: 1;
left: 124px;
top: 648px;
position: absolute;
transform-origin: 0px 0px 0px;
}
.biao_ti {
width: 357px;
height: 51px;
opacity: 1;
left: 158px;
top: 398px;
position: absolute;
transform-origin: 0px 0px 0px;
}
}
'use strict';
import React, { Component } from 'react';
import resList from '../../resconfig/resList';
import './comnocount.less';
class Comnocount extends Component {
constructor(props) {
super(props);
this.state = { resList: resList };
}
componentDidMount(){
}
closeDia = () => {
const { closeWin } = this.props;
closeWin && closeWin();
}
render() {
return (
<div className="nocount ">
<img className="biao_ti " src={this.state.resList['79a29530-8dee-4dab-93d8-5e87e344026e'].url} />
<img className="an_niu md6" onClick={this.closeDia} src={this.state.resList['ebffc693-1de6-4100-9e18-3eae5b11a712'].url} />
<span className="text ">明天再来吧~</span>
<img className="guan_bi " onClick={this.closeDia} src={this.state.resList['d3cb848a-92ec-40c3-9684-5edd63eae927'].url} />
</div>
);
}
}
export default Comnocount;
.nocount {
width: 678px;
height: 773px;
opacity: 1;
left: 36px;
top: 40%;
transform: translateY(-50%);
position: absolute;
transform-origin: 0px 0px 0px;
.biao_ti {
width: 677px;
height: 773px;
opacity: 1;
position: absolute;
transform-origin: 0px 0px 0px;
}
.an_niu {
width: 427px;
height: 112px;
opacity: 1;
left: 126px;
top: 592px;
position: absolute;
transform-origin: 0px 0px 0px;
}
.text {
width: 100%;
height: 30px;
opacity: 1;
top: 496px;
text-align: center;
position: absolute;
transform-origin: 0px 0px 0px;
font-size: 30px;
color: rgba(253, 235, 175, 1);
}
.guan_bi {
width: 46px;
height: 47px;
opacity: 0.5019607843137255;
left: 575px;
top: 192px;
position: absolute;
transform-origin: 0px 0px 0px;
}
}
'use strict';
import React, { Component } from 'react';
import resList from '../../resconfig/resList';
import './comnologin.less';
class Comnologin extends Component {
constructor(props) {
super(props);
this.state = { resList: resList };
}
// 强登,这个页面用不上
componentDidMount(){
}
closeDia = () => {
const { closeWin } = this.props;
closeWin && closeWin();
this.props.call && this.props.call();
}
render() {
return (
<div className="nologin ">
<img className="xing_zhuang_819 " src={this.state.resList['6193ef15-a5e0-4352-8640-fa5dbd8a5318'].url} />
<img className="an_niu " src={this.state.resList['45ee0280-1483-401d-9c5a-b0dd50bec188'].url} />
<img className="guan_bi " onClick={this.closeDia} src={this.state.resList['d3cb848a-92ec-40c3-9684-5edd63eae927'].url} />
</div>
);
}
}
export default Comnologin;
.nologin {
width: 678px;
height: 730px;
opacity: 1;
left: 36px;
top: 40%;
transform: translateY(-50%);
position: absolute;
transform-origin: 0px 0px 0px;
.xing_zhuang_819 {
width: 677px;
height: 730px;
opacity: 1;
position: absolute;
transform-origin: 0px 0px 0px;
}
.an_niu {
width: 427px;
height: 112px;
opacity: 1;
left: 128px;
top: 549px;
position: absolute;
transform-origin: 0px 0px 0px;
}
.guan_bi {
width: 46px;
height: 47px;
opacity: 0.5019607843137255;
left: 577px;
top: 149px;
position: absolute;
transform-origin: 0px 0px 0px;
}
}
'use strict';
import React, { Component } from 'react';
import resList from '../../resconfig/resList';
import './comrule.less';
class Comrule extends Component {
constructor(props) {
super(props);
this.state = { resList: resList };
}
componentDidMount(){
document.getElementById("text").innerHTML = this.props.data;
}
closeDia = () => {
const { closeWin } = this.props;
closeWin && closeWin();
this.props.call && this.props.call();
}
render() {
return (
<div className="rule ">
<img className="biao_ti " src={this.state.resList['8056bb59-f8b9-471f-bb6d-b91b5a9d6c03'].url} />
<div className="text " id="text">
</div>
<img className="guan_bi " onClick={this.closeDia} src={this.state.resList['d3cb848a-92ec-40c3-9684-5edd63eae927'].url} />
</div>
);
}
}
export default Comrule;
.rule {
width: 678px;
height: 1107px;
opacity: 1;
left: 36px;
top: 40%;
transform: translateY(-50%);
position: absolute;
transform-origin: 0px 0px 0px;
.biao_ti {
width: 678px;
height: 1107px;
opacity: 1;
position: absolute;
transform-origin: 0px 0px 0px;
}
.text {
width: 468px;
height: 675px;
opacity: 1;
left: 106px;
top: 338px;
position: absolute;
overflow: auto;
transform-origin: 0px 0px 0px;
font-size: 26px;
color: rgba(253, 235, 175, 1);
}
.guan_bi {
width: 46px;
height: 47px;
opacity: 0.5019607843137255;
left: 575px;
top: 132px;
position: absolute;
transform-origin: 0px 0px 0px;
}
}
'use strict';
import React, { Component } from 'react';
import resList from '../../resconfig/resList';
import './comsharebg.less';
class Comsharebg extends Component {
constructor(props) {
super(props);
this.state = { resList: resList };
}
componentDidMount(){
setTimeout(()=>{
this.closeDia();
},5000)
}
closeDia = () => {
const { closeWin } = this.props;
closeWin && closeWin();
this.props.call && this.props.call();
}
render() {
return (
<div className="sharebg " onClick={this.closeDia}>
<img className="xing_zhuang_819 " src="//yun.duiba.com.cn/spark/assets/c457e274c61e43e4c04b13452f73f1b27d46e1a1.png" />
</div>
);
}
}
export default Comsharebg;
.sharebg {
width: 750px;
height: 100%;
opacity: 1;
position: absolute;
transform-origin: 0px 0px 0px;
.xing_zhuang_819 {
width: 630px;
opacity: 1;
position: absolute;
right:40px;
top:20px;
transform-origin: 0px 0px 0px;
}
}
'use strict';
import React, { Component } from 'react';
import resList from '../../resconfig/resList';
import './comsharepanel.less';
import { appShare } from "../../utils/share.js"
class Comsharepanel extends Component {
constructor(props) {
super(props);
this.state = { resList: resList };
}
componentDidMount() {
console.log(this.props.data)
}
clickShare = (num) => {
appShare(this.props.data,num);
console.log("num",num)
setTimeout(()=>{
this.closeDia();
this.props.call && this.props.call();
},5000)
}
closeDia = () => {
const { closeWin } = this.props;
closeWin && closeWin();
}
render() {
return (
<div className="sharepanel ">
<div className="share_box">
<div className="left" onClick={(e)=>this.clickShare("0",e)}>
<div className="img_box">
<img className="share_1" src="//yun.duiba.com.cn/spark/assets/c8e44e6099ddf90ee60c0476e1f8c0a6bc2b82da.png" alt="" />
</div>
<div>微信</div>
</div>
<div className="right" onClick={(e)=>this.clickShare("1",e)}>
<div className="img_box">
<img className="share_2" src="//yun.duiba.com.cn/spark/assets/6b9820207e9e124317b2dc78cd104af792655d87.png" alt="" />
</div>
<div>朋友圈</div>
</div>
<div className="cancle" onClick={this.closeDia}>取消</div>
</div>
</div>
);
}
}
export default Comsharepanel;
.sharepanel {
width: 750px;
height: 100%;
opacity: 1;
top: 0;
position: absolute;
transform-origin: 0px 0px 0px;
.share_box{
width: 750px;
height:380px;
background: #fff;
position: absolute;
bottom:0;
left: 0;
// padding:20px 80px;
box-sizing: border-box;
.left {
margin-left: 80px;
}
.left,.right{
width:295px;
float:left;
text-align: center;
box-sizing: border-box;
margin-top:20px;
.img_box {
height:160px;
display: flex;
align-items: center;
justify-content: center;
}
}
img {
width:110px;
line-height: 110px;
}
.cancle{
width:100%;
height:100px;
font-size: 32px;
border-top:2px solid gray;
position: absolute;
bottom:0;
text-align: center;
line-height: 100px;
}
}
}
'use strict';
import React, { Component } from 'react';
import resList from '../../resconfig/resList';
import './comsharesuccess.less';
class Comsharesuccess extends Component {
constructor(props) {
super(props);
this.state = { resList: resList };
}
componentDidMount(){
// 这个组件不用
}
closeDia = () => {
const { closeWin } = this.props;
closeWin && closeWin();
this.props.call && this.props.call();
}
render() {
return (
<div className="sharesuccess ">
<img className="tu_ceng_831_kao_bei " src={this.state.resList['8b56a8b0-dd9b-4a2b-9222-46e9cb7b8870'].url} />
<img className="an_niu " src={this.state.resList['2ecfe067-cd86-4a2b-bdbe-5ca655b87914'].url} />
<img className="guan_bi " onClick={this.closeDia} src={this.state.resList['56136f76-f061-4138-9586-b67b5c14eb41'].url} />
<span className="text ">获得1次开盲盒机会</span>
</div>
);
}
}
export default Comsharesuccess;
.sharesuccess {
left: 0px;
width: 750px;
height: 1624px;
display: block;
top: 50%;
transform: translateY(-50%);
position: absolute;
.tu_ceng_831_kao_bei {
width: 678px;
height: 806px;
opacity: 1;
left: 36px;
top: 301px;
position: absolute;
transform-origin: 0px 0px 0px;
}
.an_niu {
width: 427px;
height: 112px;
opacity: 1;
left: 163px;
top: 933px;
position: absolute;
transform-origin: 0px 0px 0px;
}
.guan_bi {
width: 46px;
height: 47px;
opacity: 0.5019607843137255;
left: 612px;
top: 497px;
position: absolute;
transform-origin: 0px 0px 0px;
}
.text {
width: 100%;
height: 31px;
opacity: 1;
top: 780px;
text-align: center;
position: absolute;
transform-origin: 0px 0px 0px;
font-size: 30px;
color: rgba(253, 235, 175, 1);
}
}
'use strict';
import React, { Component } from 'react';
import resList from '../../resconfig/resList';
import API from '../../api';
import './pagehome.less';
import { ViewCtrl, Dia } from "../../utils/viewCtrl.js";
import { Toast } from '@spark/ui';
import { showToast } from "../../utils/toast.js"
import { wxShare, appShare } from "../../utils/share.js"
import EventBus from "../../utils/eventBus.js"
let flag = true;
class Pagehome extends Component {
constructor(props) {
super(props);
this.state = {
resList: resList,
todayRemainTimes: null,
sumTimes: null,
activityStartTime: "", //开始时间
activityEndTime: "", // 结束时间
byInvite: false, // 能否通过邀请获得次数
addPop: false, // 是否有新增助力人数
addTimes: null, // 新增助力数量
assistPop: null, // 是否助力他人成功
isNew: false,
openBtnNoClick: true,
inviteCode: "",
joinLimitFlag:false,
shareGuide:false,
shareBtnNoClick: true,
isFromWx: false,
afterShareToast: ""
};
}
componentDidMount() {
this.getRule();
this.getHomeInfo();
this.setState({
isFromWx: CFG.isFromWx
})
EventBus.on("shareInit",()=>{
this.shareInit();
})
}
getHomeInfo = () => {
API.homeInfo().then(res => {
if (res.success) {
this.setState({
todayRemainTimes: res.data.todayRemainTimes,
sumTimes: res.data.sumTimes,
activityStartTime: this.formatDate(res.data.activityStartTime),
activityEndTime: this.formatDate(res.data.activityEndTime),
byInvite: res.data.byInvite,
addPop: res.data.addPop,
addTimes: res.data.addTimes,
assistPop: res.data.assistPop,
isNew: res.data.isNew,
joinLimitFlag: res.data.joinLimitFlag,
shareGuide: res.data.shareGuide
})
// 助力他人弹框
if (res.data.assistPop === "1") {
ViewCtrl.showWin(Dia.comAddOneChance, null, () => {
this.doJoin();
})
}else if(res.data.assistPop === "2"){
Toast("您的好友已达助力上限");
}else{
// 其他情况,不弹
}
// 自己被助力弹框
if (res.data.addPop) {
ViewCtrl.showWin(Dia.comAddCount,res.data,()=>{
this.doJoin();
})
}
} else {
showToast(res.code)
}
})
}
shareInit = () => {
API.getCode().then(res => {
if(res.success){
this.setState({
inviteCode: res.data
})
wxShare(res.data)
}else {
showToast(res.code)
}
})
}
openBlindBox = () => {
if (!flag) return; flag = false;
this.removeEnabled(2000);
this.setState({
openBtnNoClick: false
})
const { joinLimitFlag, todayRemainTimes, byInvite} = this.state;
if(joinLimitFlag){
// 今日次数已达上限5次
ViewCtrl.showWin(Dia.comNoCount)
return;
}
if(todayRemainTimes){
this.doJoin();
}else{
if(byInvite){
// 可以通过邀请增加次数
ViewCtrl.showWin(Dia.comNeedShare,null,()=>{
// 邀请好友
flag = true;
this.handleShare();
})
}else{
Toast("今日次数用完,明天再来");
}
}
}
// 直接抽盲盒;差一点中奖弹框的【继续开盲盒】按钮;帮好友助力成功弹框的【我也要开盲盒】按钮;自己被助力成功的【去开盲盒】按钮
doJoin = () => {
API.join().then(res => {
if (res.success) {
this.setState({
todayRemainTimes: res.data.todayRemainTimes,
sumTimes: res.data.sumTimes,
byInvite: res.data.byInvite,
shareGuide: res.data.shareGuide,
joinLimitFlag: res.data.joinLimitFlag
})
if (res.data.optionId === "thanks") {
ViewCtrl.showWin(Dia.comMissPrize, null, () => {
this.doJoin();
})
} else {
ViewCtrl.showWin(Dia.comGetPrize, res.data, () => {
// 跳转奖品详情页
window.location.href = location.origin + res.data.url;
})
}
} else {
showToast(res.code)
}
})
}
// 分享
handleShare = async() => {
if (!flag) return; flag = false;
this.removeEnabled(2000);
this.setState({
shareBtnNoClick: false
})
this.recordShareGuide();
let res = await API.getCode().catch(()=>{showToast()})
if(res.success){
let inviteCode = res.data;
if(CFG.isWx){
// 如果是在微信内,调用微信的分享方法
wxShare(inviteCode);
ViewCtrl.showWin(Dia.comShareBg,null,()=>{
// 关闭蒙层
Toast(this.state.afterShareToast ? this.state.afterShareToast : "分享成功");
this.getHomeInfo();
});
}else{
// TODO 端内分享
ViewCtrl.showWin(Dia.comSharePanel,inviteCode,()=>{
// 关闭蒙层
Toast(this.state.afterShareToast ? this.state.afterShareToast : "分享成功");
this.getHomeInfo();
})
}
}else{
showToast(res.code);
}
}
// 记录点击了 邀请按钮
recordShareGuide = () => {
API.recordShareGuide().then(res => {
if(res.success){
if(res.data){
this.setState({
afterShareToast: "分享成功,增加一次抽盲盒机会"
})
}else{
this.setState({
afterShareToast: "分享成功"
})
}
}else{
}
})
}
showRule = () => {
ViewCtrl.showWin(Dia.comRule, this.state.rule)
}
goToMyPrize = () => {
window.location.href = CFG.prizePageUrl;
}
//去除防连点
removeEnabled = (time=2000) => {
setTimeout(() => {
flag = true;
}, time);
}
getRule = () => {
API.getRule().then(res => {
if (res.success) {
this.setState({
rule: res.data
})
} else {
// showToastres.code);
}
})
}
formatDate = (time) => {
if(!time) return;
time = time.substr(0,10).replace(/-/g,"/");
let date = new Date(time);
let year = date.getFullYear();
let month = date.getMonth() + 1;
let day = date.getDate();
return year + "." + month + "." + day;
}
render() {
const { activityStartTime, activityEndTime, todayRemainTimes, sumTimes, isNew, openBtnNoClick,shareGuide, shareBtnNoClick, isFromWx } = this.state;
let homePageClass = isFromWx ? "md10" : "";
let openBtnClass = isFromWx ? "md11" : "";
let shareBtnClass = isFromWx ? "md12" : "";
return (
<div className={"home md1 " + homePageClass}>
<div className="home_page ">
<img className="logo " src="//yun.duiba.com.cn/spark/assets/b57ef3caf52805b78a18b3d6c2c71483b59276c5.png" />
<img className="font_bg " src="//yun.duiba.com.cn/spark/assets/75eceb130da92def576abcfe553ffe67127b9d6e.png" />
<img className="rule " onClick={this.showRule} src="//yun.duiba.com.cn/spark/assets/ccad83d62dc0d3e19dbf16a63bf68712bd5915d2.png" />
<img className="myPrize " onClick={this.goToMyPrize} src="//yun.duiba.com.cn/spark/assets/f9e4929724068cf37b8492ff078577fe47e1b9e7.png" />
<div className="time"><span className="text">活动时间:</span><br />
<span>{activityStartTime}--{activityEndTime}</span></div>
<div className="btn_box ">
<div className={"open md2 " + openBtnClass} onClick={this.openBlindBox}>
<img className="open_bg " src="//yun.duiba.com.cn/spark/assets/8f03ae190954e5915c3db3e03f3f71254978cb2a.png" />
<div className="open_btn_ani">
<img className="open_btn " src="//yun.duiba.com.cn/spark/assets/f1ad64f578ec7c7765d7eb75170cf0895f093fb9.png" />
<div className="game_count">{sumTimes}</div>
</div>
</div>
<img className={"share md3 " + shareBtnClass} onClick={this.handleShare} src={this.state.resList['78ce50ed-9b59-4c17-8c1d-b2330b16b166'].url} />
{isNew && openBtnNoClick && <img className="hand hand_ani" src="//yun.duiba.com.cn/spark/assets/87d0490f20be697a436bb25bebad1323f01fe46a.png" />}
{shareGuide && shareBtnNoClick && <img className="share_hand hand_ani" src="//yun.duiba.com.cn/spark/assets/87d0490f20be697a436bb25bebad1323f01fe46a.png" />}
</div>
<div className="text_tip " >
<span className="num ">{todayRemainTimes}</span>
<img className="text_img" src={this.state.resList['08aab2d3-d617-401f-aea2-f5bf30bfcf4e'].url} />
</div>
</div>
</div>
);
}
}
export default Pagehome;
.home {
top: 0px;
left: 0px;
width: 750px;
height: 100%;
display: block;
position: absolute;
overflow: hidden;
z-index: 99;
.home_page {
width: 750px;
height: 1624px;
opacity: 1;
position: absolute;
transform-origin: 0px 0px 0px;
top:calc(50% - 1624px / 2);
.logo {
width: 750px;
height: 1624px;
opacity: 1;
position: absolute;
transform-origin: 0px 0px 0px;
}
.font_bg{
position: absolute;
bottom:0;
width:750px;
z-index: 98;
}
.rule {
width:120px;
height:45px;
position: absolute;
left:0;
top:290px;
}
.myPrize {
width:120px;
height:45px;
position: absolute;
right:0;
top:266px;
}
.time{
width:100%;
text-align: center;
position: absolute;
top:472px;
color:#fff;
font-size: 30px;
line-height: 30px;
.text{
font-size: 24px;
}
}
.btn_box {
width: 580px;
height: 89px;
opacity: 1;
left: 87px;
top: 1212px;
position: absolute;
transform-origin: 0px 0px 0px;
z-index: 98;
.open {
width: 225px;
height: 89px;
opacity: 1;
position: absolute;
transform-origin: 0px 0px 0px;
.open_bg {
width: 225px;
position: absolute;
bottom:0;
}
.open_btn_ani{
width: 225px;
height: 89px;
position: absolute;
animation: openBtnAni 1s ease infinite;
}
.open_btn{
width:211px;
position: absolute;
bottom: 7px;
left:7px;
}
.game_count{
width:50px;
height:45px;
position: absolute;
right:36px;
top:6px;
line-height: 45px;
text-align: center;
font-size:32px;
font-weight: 600;
color:rgb(179,39,26);
}
}
.share {
width: 317px;
height: 89px;
opacity: 1;
left: 263px;
position: absolute;
transform-origin: 0px 0px 0px;
}
.invite {
width: 317px;
height: 89px;
opacity: 1;
left: 263px;
position: absolute;
transform-origin: 0px 0px 0px;
}
.hand {
width: 90px;
height: 111px;
opacity: 1;
position: absolute;
transform-origin: 50% 50%;
left:140px;
top:40px;
z-index: 99;
}
.share_hand{
width: 90px;
height: 111px;
opacity: 1;
position: absolute;
transform-origin: 50% 50%;
right:20px;
top:40px;
z-index: 99;
}
.hand_ani{
animation: handAni 1s ease infinite;
}
}
.text_tip {
width: 201px;
height: 62px;
opacity: 1;
left: 70px;
top: 1140px;
position: absolute;
transform-origin: 0px 0px 0px;
.text_img{
width:100%;
}
.num {
position: absolute;
right: 20px;
font-size: 26px;
top:16px;
color: rgba(255, 255, 255, 1);
}
}
}
}
@keyframes openBtnAni {
0% {
transform: scale(1);
}
50% {
transform: scale(.95);
}
100% {
transform: scale(1);
}
}
@keyframes handAni {
0% {
transform: scale(1);
}
70% {
transform: scale(.9);
}
100% {
transform: scale(1);
}
}
\ No newline at end of file
'use strict';
import React, { Component } from 'react';
import API from '../../api';
import resList from '../../resconfig/resList';
//import API from '../../api';
import './pageshare.less';
class Pageshare extends Component {
constructor(props) {
super(props);
this.state = {
resList: resList,
time: ""
};
console.log(CFG.activeTime)
}
componentDidMount(){
// let pageBizId = 506;
// API.buriedPoint({pageBizId});
this.setState({
time: CFG.activeTime
})
}
openGame = () => {
console.log(getLoginPageUrl())
window.location.href = getLoginPageUrl();
}
render() {
const { time } = this.state;
return (
<div className="share ">
<div className="share_page ">
<img className="share_bg " src="//yun.duiba.com.cn/spark/assets/6458855ad7ca1f080589e4ada39455d333f6acdb.png" />
<img className="kai_mang_he md7" onClick={this.openGame} src={this.state.resList['73ede311-026c-4287-9f52-a991aa6a7cab'].url} />
<div className="time"><span className="text">活动时间:</span><br />{time}</div>
<div className="info_box ">
<img className="avatar " src="//yun.duiba.com.cn/spark/assets/0e7d553ede77a1f1a2724bd9aabf8e73660c09e1.png" />
<img
className="text "
src={this.state.resList['b11d34bb-46ab-4862-aeb8-888f9db6bf38'].url}
/>
</div>
</div>
</div>
);
}
}
export default Pageshare;
.share {
top: 0px;
left: 0px;
width: 750px;
height: 100%;
overflow: hidden;
display: block;
position: absolute;
z-index: 99;
.share_page {
width: 750px;
height: 1624px;
opacity: 1;
position: absolute;
transform-origin: 0px 0px 0px;
top:calc(50% - 1624px / 2);
.share_bg {
width: 750px;
height: 1624px;
opacity: 1;
position: absolute;
top:0;
transform-origin: 0px 0px 0px;
}
.kai_mang_he {
width: 278px;
height: 99px;
opacity: 1;
left: 236px;
top: 1216px;
position: absolute;
transform-origin: 0px 0px 0px;
}
.time{
width:100%;
text-align: center;
position: absolute;
top:486px;
color:#fff;
font-size: 30px;
line-height: 30px;
.text{
font-size: 24px;
}
}
.hand {
width: 90px;
height: 111px;
opacity: 1;
position: absolute;
transform-origin: 50% 50%;
left:410px;
top:1260px;
}
.hand_ani{
animation: handAni 1s ease infinite;
}
.info_box {
width: 445px;
height: 90px;
opacity: 1;
left: 152px;
top: 1020px;
position: absolute;
transform-origin: 0px 0px 0px;
.avatar {
width: 87px;
height: 87px;
opacity: 1;
top: 1px;
position: absolute;
transform-origin: 0px 0px 0px;
}
.text{
width: 334px;
height: 90px;
opacity: 1;
left: 111px;
position: absolute;
transform-origin: 0px 0px 0px;
}
}
}
}
@keyframes handAni {
0% {
transform: scale(1);
}
70% {
transform: scale(.9);
}
100% {
transform: scale(1);
}
}
/**
* 目前没有用到
* @param {*} resList
* @param {*} uuid
*/
const getSrcByUuid = (resList, uuid) => {
resList = resList || [];
for (let i = 0; i < resList.length; i++) {
if (resList[i].uuid == uuid) {
return resList[i].url
}
}
}
module.exports = {
getSrcByUuid
}
\ No newline at end of file
const resList = {
'cb23659b-d056-421d-a0f2-d71b68ed09df': {
name: 'logo',
ext: '.png',
uuid: 'cb23659b-d056-421d-a0f2-d71b68ed09df',
url: '//yun.duiba.com.cn/spark/assets/26fdce3e4fcfc4d0fc605421f6bc339100620f90.png',
},
'622e7e19-9868-4e98-88f5-5f64d594842d': {
name: 'open',
ext: '.png',
uuid: '622e7e19-9868-4e98-88f5-5f64d594842d',
url: '//yun.duiba.com.cn/spark/assets/d0e4376898259deb211478be60977dbdf94612d5.png',
},
'78ce50ed-9b59-4c17-8c1d-b2330b16b166': {
name: 'share',
ext: '.png',
uuid: '78ce50ed-9b59-4c17-8c1d-b2330b16b166',
url: '//yun.duiba.com.cn/spark/assets/aef0788fe248f5dde06f77d84d032008940c881a.png',
},
'ec4a57ef-4cc7-407f-8911-d3a253ab8b12': {
name: 'invite',
ext: '.png',
uuid: 'ec4a57ef-4cc7-407f-8911-d3a253ab8b12',
url: '//yun.duiba.com.cn/spark/assets/dbb08f1db9b32ab95e126c39f7a550f4511d1745.png',
},
'08aab2d3-d617-401f-aea2-f5bf30bfcf4e': {
name: '组 103',
ext: '.png',
uuid: '08aab2d3-d617-401f-aea2-f5bf30bfcf4e',
url: '//yun.duiba.com.cn/spark/assets/8aa92eef648ca71a141f4be2fc5b3c520359a0a3.png',
},
'6193ef15-a5e0-4352-8640-fa5dbd8a5318': {
name: '形状 819',
ext: '.png',
uuid: '6193ef15-a5e0-4352-8640-fa5dbd8a5318',
url: '//yun.duiba.com.cn/spark/assets/851e85168dba084099b435aec4a7cbf2207cbce5.png',
},
'45ee0280-1483-401d-9c5a-b0dd50bec188': {
name: '按钮',
ext: '.png',
uuid: '45ee0280-1483-401d-9c5a-b0dd50bec188',
url: '//yun.duiba.com.cn/spark/assets/c93cd1e352198c760c34ae971efa2812e49167ed.png',
},
'd3cb848a-92ec-40c3-9684-5edd63eae927': {
name: '关闭',
ext: '.png',
uuid: 'd3cb848a-92ec-40c3-9684-5edd63eae927',
url: '//yun.duiba.com.cn/spark/assets/98eb3617be7ad9af28817e755d34f4cd47871668.png',
},
'e6daf6e4-afda-4881-bbd0-a1078bdd88b0': {
name: '曲线 3758',
ext: '.png',
uuid: 'e6daf6e4-afda-4881-bbd0-a1078bdd88b0',
url: '//yun.duiba.com.cn/spark/assets/1cd93b40e86513c1deef695b900aee948a2b839f.png',
},
'221d2e2b-7c3f-46b3-8a0d-e437d8b5934b': {
name: '标题',
ext: '.png',
uuid: '221d2e2b-7c3f-46b3-8a0d-e437d8b5934b',
url: '//yun.duiba.com.cn/spark/assets/0e700331c6ffda694b768479682adbd7dd8a7404.png',
},
'b3b4b908-2332-4256-bf2e-e4d9977d85fe': {
name: '按钮',
ext: '.png',
uuid: 'b3b4b908-2332-4256-bf2e-e4d9977d85fe',
url: '//yun.duiba.com.cn/spark/assets/acf21cfcb89746a19e5e8a6beeb8d29d96e79d80.png',
},
'c17341a5-4f57-4cd2-b50a-e228f9a4970e': {
name: '奖品框 4',
ext: '.png',
uuid: 'c17341a5-4f57-4cd2-b50a-e228f9a4970e',
url: '//yun.duiba.com.cn/spark/assets/594ca8b2f0ad46718fe7f9337176b28f206e99bf.png',
},
'8e6023ae-a6ee-4f01-8041-e008a776321e': {
name: '标题',
ext: '.png',
uuid: '8e6023ae-a6ee-4f01-8041-e008a776321e',
url: '//yun.duiba.com.cn/spark/assets/ad90daff0b6d002adbff41753187d9e68210e2a0.png',
},
'7ac99197-c1c9-47e3-a535-03bad2683578': {
name: '按钮',
ext: '.png',
uuid: '7ac99197-c1c9-47e3-a535-03bad2683578',
url: '//yun.duiba.com.cn/spark/assets/7c1a32588def20ca4bdf07b7ab49c4bc965c26b5.png',
},
'984a841b-e1cf-4194-881b-48d63f819ca6': {
name: '30466aabba6511b72a45a0fa2a1611b0',
ext: '.png',
uuid: '984a841b-e1cf-4194-881b-48d63f819ca6',
url: '//yun.duiba.com.cn/spark/assets/e86ecd181b35b80d86077d498f410df1336c9070.png',
},
'79a29530-8dee-4dab-93d8-5e87e344026e': {
name: '标题',
ext: '.png',
uuid: '79a29530-8dee-4dab-93d8-5e87e344026e',
url: '//yun.duiba.com.cn/spark/assets/bbb80cc9f67d146dafaf9b8f84fd164d4fea9f08.png',
},
'ebffc693-1de6-4100-9e18-3eae5b11a712': {
name: '按钮',
ext: '.png',
uuid: 'ebffc693-1de6-4100-9e18-3eae5b11a712',
url: '//yun.duiba.com.cn/spark/assets/29c4030ec579fad882dd5e696b3fc6551151fc08.png',
},
'8056bb59-f8b9-471f-bb6d-b91b5a9d6c03': {
name: '标题',
ext: '.png',
uuid: '8056bb59-f8b9-471f-bb6d-b91b5a9d6c03',
url: '//yun.duiba.com.cn/spark/assets/f834fa33232e2d3c3123fea514bb24df6c4d6dde.png',
},
'39ec1947-8deb-4ef0-9285-c592976d5cb9': {
name: '图层 831',
ext: '.png',
uuid: '39ec1947-8deb-4ef0-9285-c592976d5cb9',
url: '//yun.duiba.com.cn/spark/assets/9420445052775f397d51800ce67b5de1877bcc7f.png',
},
'9b9b55f0-87a8-4667-9067-12c346f1d948': {
name: '标题',
ext: '.png',
uuid: '9b9b55f0-87a8-4667-9067-12c346f1d948',
url: '//yun.duiba.com.cn/spark/assets/e39bfcf8c0cc4f4666ec054a93c0f259380cf909.png',
},
'cbefada8-024a-46dc-a319-e893cb64e790': {
name: '按钮',
ext: '.png',
uuid: 'cbefada8-024a-46dc-a319-e893cb64e790',
url: '//yun.duiba.com.cn/spark/assets/8090ee2b3b1a55958255e76a2e7e939afbb9692f.png',
},
'f5d3c252-018e-4a01-9a05-37d021bac403': {
name: '标题',
ext: '.png',
uuid: 'f5d3c252-018e-4a01-9a05-37d021bac403',
url: '//yun.duiba.com.cn/spark/assets/1fc143a60a1e97165b99ff4b90d85aea1cab9ec9.png',
},
'ca3a31f1-8f51-42cb-88db-b56e6721e086': {
name: '按钮',
ext: '.png',
uuid: 'ca3a31f1-8f51-42cb-88db-b56e6721e086',
url: '//yun.duiba.com.cn/spark/assets/8af7bec80465572e93d105a92bb51f754984c988.png',
},
'8b1e521f-2f41-49b4-bbb7-716cb180ac7a': {
name: '组 103 拷贝 2',
ext: '.png',
uuid: '8b1e521f-2f41-49b4-bbb7-716cb180ac7a',
url: '//yun.duiba.com.cn/spark/assets/0d96d38a1c40633da59f334e7c6e1934deabb8cd.png',
},
'73ede311-026c-4287-9f52-a991aa6a7cab': {
name: '开盲盒',
ext: '.png',
uuid: '73ede311-026c-4287-9f52-a991aa6a7cab',
url: '//yun.duiba.com.cn/spark/assets/c8c2adecf9231f2c32bf1adbf2c2b61587586928.png',
},
'be24b9af-8c47-4c9a-957d-2aa72f63fe90': {
name: '图层 2005',
ext: '.png',
uuid: 'be24b9af-8c47-4c9a-957d-2aa72f63fe90',
url: '//yun.duiba.com.cn/spark/assets/01781e98c3c376ed010138b9baf7830e2897f342.png',
},
'c796a3f8-c2b9-4301-b900-d52e1d0c58e9': {
name: '681611665303_.pic',
ext: '.png',
uuid: 'c796a3f8-c2b9-4301-b900-d52e1d0c58e9',
url: '//yun.duiba.com.cn/spark/assets/ba4a6807b2279721d16fea6e321be40e9746b9cf.png',
},
'b11d34bb-46ab-4862-aeb8-888f9db6bf38': {
name: '我正在参与开盲盒活动 帮我开盲盒,一起开大奖!',
ext: '.png',
uuid: 'b11d34bb-46ab-4862-aeb8-888f9db6bf38',
url: '//yun.duiba.com.cn/spark/assets/a38890e09f0495ff28d9a8ec3e5ddb5beb586469.png',
},
'857df60f-9643-4706-84ac-baa97ff7cea0': {
name: '每邀请1位好友注册 即可获得1次机会',
ext: '.png',
uuid: '857df60f-9643-4706-84ac-baa97ff7cea0',
url: '//yun.duiba.com.cn/spark/assets/6a71bb4802e40db345b406825acffcab011412e9.png',
},
'b2a0defc-96bb-4dd4-a593-8c6f06ec6ec2': {
name: '关闭',
ext: '.png',
uuid: 'b2a0defc-96bb-4dd4-a593-8c6f06ec6ec2',
url: '//yun.duiba.com.cn/spark/assets/98eb3617be7ad9af28817e755d34f4cd47871668.png',
},
'd5c736a3-be0e-4bdf-9271-707f875602cc': {
name: '按钮',
ext: '.png',
uuid: 'd5c736a3-be0e-4bdf-9271-707f875602cc',
url: '//yun.duiba.com.cn/spark/assets/46e34ca9c6c051d1a6133217800e048503952b13.png',
},
'5313d9ca-26b4-4891-8266-8e9613fe0afc': {
name: '标题',
ext: '.png',
uuid: '5313d9ca-26b4-4891-8266-8e9613fe0afc',
url: '//yun.duiba.com.cn/spark/assets/d27adafca6eee32015c2337f7a9d0c1a4c412d9c.png',
},
'8b56a8b0-dd9b-4a2b-9222-46e9cb7b8870': {
name: '图层 831 拷贝',
ext: '.png',
uuid: '8b56a8b0-dd9b-4a2b-9222-46e9cb7b8870',
url: '//yun.duiba.com.cn/spark/assets/d89b83e3492931e2737e9e4f73aa1068813c160c.png',
},
'2ecfe067-cd86-4a2b-bdbe-5ca655b87914': {
name: '按钮',
ext: '.png',
uuid: '2ecfe067-cd86-4a2b-bdbe-5ca655b87914',
url: '//yun.duiba.com.cn/spark/assets/8ade610b68c3c27af8cce532412339c7ef3ee2d3.png',
},
'56136f76-f061-4138-9586-b67b5c14eb41': {
name: '关闭',
ext: '.png',
uuid: '56136f76-f061-4138-9586-b67b5c14eb41',
url: '//yun.duiba.com.cn/spark/assets/98eb3617be7ad9af28817e755d34f4cd47871668.png',
},
};
export default resList;
let eventMap = {};
const Bus = {
on(name, callbacl) {
eventMap[name] = callbacl;
},
emit(name,data) {
eventMap[name] && eventMap[name](data)
},
remove(name){
if(eventMap[name]){
delete eventMap[name]
}
}
};
export default Bus
import {start, updateShare, callShare, showShareGuide, hideShareGuide} from '@spark/share'
import {Weixin, notWeixin, Yinhuajijin} from '@spark/share'
import EventBus from "../utils/eventBus.js";
//直接使用非微信环境来处理
Yinhuajijin.testEnv = notWeixin;
start([Weixin,Yinhuajijin], (way, success, payload)=>{
console.log('分享' + success ? '成功' : '失败')
}).then(()=>{
console.log("start().then")
// TODO 首页需要
EventBus.emit("shareInit")
// TODO 分享落地页打包需要
// wxShare(null,1)
});
console.log(CFG.globalShareUrl)
// todo 需要修改地址
export const wxShare = (inviteCode,type) => {
//被动分享
console.log("进入init方法")
let url = "";
if(type && type === 1){
// 如果是落地页的二次分享
url = window.location.href;
}else{
url = CFG.globalShareUrl + "&inviteCode=" + inviteCode;
}
updateShare({
title: "银华基金-惊喜盲盒 赢壕礼", //分享标题
content: "银华基金-惊喜盲盒 赢壕礼", //分享内容
url: url, //分享链接
thumbnail: 'http://yun.duiba.com.cn/spark/assets/57fea324c2c3119d61a897a1c5f0a72d2dc45e40.png', //分享缩略图
});
}
export const appShare = (inviteCode,type) => {
//主动唤起分享功能,比如一些APP能唤起分享面板
let url = CFG.globalShareUrl + "&inviteCode=" + inviteCode;
callShare({
title: "银华基金-惊喜盲盒 赢壕礼", //分享标题
content: "银华基金-惊喜盲盒 赢壕礼", //分享内容
url: url, //分享链接
thumbnail: 'http://yun.duiba.com.cn/spark/assets/57fea324c2c3119d61a897a1c5f0a72d2dc45e40.png', //分享缩略图
},{
shareType: type
});
}
import { Toast, showLoading, hideLoading, configLoading, DefaultIcon, RainbowIcon, SlackIcon, WaveIcon } from '@spark/ui';
const SVGA = require("svgaplayerweb");
var svgaParser = new SVGA.Parser();
configLoading(RainbowIcon);
/**
* 快速加载svga资源,但不装载
* @param url 资源URL
*/
export const loadSVGA = (url) => {
return new Promise((resolve, reject) => {
svgaParser.load(url, (videoItem) => {
resolve(videoItem)
}, (err) => {
reject(err)
})
})
}
/**
* 快速装载一个svga动画
* @param url 资源URL
* @param className 挂载元素的class name
* @param loops 播放次数。默认为空,循环播放。
* @param clearsAfterStop
*/
export const getSVGA = async (url, className, callback) => {
showLoading("loading")
const videoItem = await loadSVGA(url);
hideLoading();
var svga = new SVGA.Player(className);
svga.loops = 1;
svga.clearsAfterStop = false;
svga.setVideoItem(videoItem);
svga.startAnimation();
svga.onFinished(()=>{
callback && callback();
})
return svga
}
\ No newline at end of file
import { Toast } from '@spark/ui';
export const showToast = (code) => {
switch (code) {
case "100101":
Toast("活动未开始")
break;
case "100102":
Toast("活动已结束")
break;
case "100103":
Toast("您当前没有开盲盒次数")
break;
case "100104":
// 用在三个弹框中的按钮开盲盒
Toast("您当前没有开盲盒次数")
break;
case "100110":
Toast("助力达到上限")
break;
case "100111":
Toast("已经给别人助力过了")
break;
default:
// 100036
Toast("网络开小差了,请稍后重试")
break;
}
}
\ No newline at end of file
import React, { Component } from 'react';
import ReactDOM from "react-dom";
import Comrule from "../components/comrule/comrule.jsx";
import Comaddcount from "../components/comaddcount/comaddcount.jsx";
import Comaddonechance from "../components/comaddonechance/comaddonechance.jsx";
import Comgetprize from "../components/comgetprize/comgetprize.jsx";
import Commissprize from "../components/commissprize/commissprize.jsx";
import Comneedshare from "../components/comneedshare/comneedshare.jsx";
import Comnocount from "../components/comnocount/comnocount.jsx";
import Comnologin from "../components/comnologin/comnologin.jsx";
import Comsharesuccess from "../components/comsharesuccess/comsharesuccess.jsx";
import Comsharebg from "../components/comsharebg/comsharebg.jsx";
import Comsharepanel from "../components/comsharepanel/comsharepanel.jsx"
export const Dia = {
// 游戏规则
comRule:'comRule',
comAddCount: "comAddCount",
comAddOneChance: "comAddOneChance",
comGetPrize: "comGetPrize",
comMissPrize: "comMissPrize",
comNeedShare: "comNeedShare",
comNoCount: "comNoCount",
comNoLogin: "comNoLogin",
comShareSuccess: "comShareSuccess",
comShareBg: "comShareBg",
comSharePanel: "comSharePanel"
}
export let popMap = new Map();
popMap.set(Dia.comRule, Comrule);
popMap.set(Dia.comAddCount, Comaddcount);
popMap.set(Dia.comAddOneChance, Comaddonechance);
popMap.set(Dia.comGetPrize, Comgetprize);
popMap.set(Dia.comMissPrize, Commissprize);
popMap.set(Dia.comNeedShare, Comneedshare);
popMap.set(Dia.comNoCount, Comnocount);
popMap.set(Dia.comNoLogin, Comnologin);
popMap.set(Dia.comShareSuccess, Comsharesuccess);
popMap.set(Dia.comShareBg, Comsharebg);
popMap.set(Dia.comSharePanel, Comsharepanel);
export const ViewCtrl = {
/**弹出弹窗 */
showWin: (enumComKey, data = {}, call, call1) => {
let T = popMap.get(enumComKey)
var m = document.createElement('div');
m.className = "popcontainer";
let diabox = document.getElementById("diabox");
diabox.appendChild(m);
document.getElementById("diabox").style.zIndex = 999;
document.getElementsByTagName("body")[0].style.overflow = "hidden";
document.getElementsByTagName("body")[0].style.position = "fixed";
/**
* @param {function} cb
*/
const closeWin = (cb) => {
diabox.removeChild(m);
document.getElementsByTagName("body")[0].style.overflow = "auto";
document.getElementsByTagName("body")[0].style.position = "static";
document.getElementById("diabox").style.zIndex = 1;
if (typeof cb == 'function') {
try {
cb()
} catch (error) {
console.log(error)
}
}
}
T = <T
closeWin={closeWin} data={data} call={call} call1={call1} />
ReactDOM.render(T, m);
},
changePage:(enumComKey,data) => {
console.log(enumComKey,data)
let event = new CustomEvent('changePage',{detail:{id:enumComKey,data}});
document.dispatchEvent(event);
}
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment