Commit 055f9ecb authored by wildfirecode13's avatar wildfirecode13

1

parent 53484277
No preview for this file type
No preview for this file type
{
"name": "sparkproject-1608173731754",
"version": "1.0.0",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
"@babel/runtime": {
"version": "7.12.5",
"resolved": "http://npm.dui88.com:80/@babel%2fruntime/-/runtime-7.12.5.tgz",
"integrity": "sha1-QQ5+SHRB4bNgwpvnFdhw2bmFiC4=",
"requires": {
"regenerator-runtime": "^0.13.4"
}
},
"@spark/api-base": {
"version": "1.0.29",
"resolved": "http://npm.dui88.com:80/@spark%2fapi-base/-/api-base-1.0.29.tgz",
"integrity": "sha512-77vW+RXqd8+R/PlqHMfuOv6jg43rl2/5lQr373tvWqmTTWh6TpMspmzQyRd401HC5vujYiWV5kIZiipzL7XNlA==",
"requires": {
"@spark/utils": "^1.0.22",
"@types/react": "^16.9.56",
"add": "^2.0.6",
"crypto-js": "^4.0.0",
"spark-wrapper-fyge": "^1.0.4",
"yarn": "^1.22.10"
}
},
"@spark/guideact": {
"version": "1.0.10",
"resolved": "http://npm.dui88.com:80/@spark%2fguideact/-/guideact-1.0.10.tgz",
"integrity": "sha512-+0YCOFzFnCYGPunAxMerrNbYrSD1STFLpbrzV4xxcr53ftlHOPJKNvWswDn3a3WcA49V2zhk7KxS4V0jLqW3Gg==",
"requires": {
"@types/react": "^16.9.56",
"spark-wrapper-fyge": "^1.0.16"
}
},
"@spark/projectx": {
"version": "1.0.7",
"resolved": "http://npm.dui88.com:80/@spark%2fprojectx/-/projectx-1.0.7.tgz",
"integrity": "sha512-mG5hJTophuuiebTyhfCjtJdFjzYQF580twDknDpgdBIMRSyn6oTgf+FDeGMYmhA3upZHm4W2xTqlIq1FbrGDhA==",
"requires": {
"@types/react": "^16.9.56",
"spark-wrapper-fyge": "^1.0.4"
}
},
"@spark/share": {
"version": "1.0.29",
"resolved": "http://npm.dui88.com:80/@spark%2fshare/-/share-1.0.29.tgz",
"integrity": "sha512-7nc1DtNcl8n73T1p97GL2M/Da8v16x4PywgEbgdk28LylLJNYZog93M8dA41f2EMvDyXVgf4JcJKVYmwFoilRg==",
"requires": {
"@spark/api-base": "^1.0.12",
"@spark/utils": "^1.0.34",
"@types/react": "^16.9.56",
"spark-wrapper-fyge": "^1.0.4"
}
},
"@spark/ui": {
"version": "1.0.41",
"resolved": "http://npm.dui88.com:80/@spark%2fui/-/ui-1.0.41.tgz",
"integrity": "sha512-ZO0EcY4+zwALzp0aetwHVX7NNWmfVFL7rnCPoLYJ+1oU3neFQJw9fzRNOidwO0jkE0UTAEPadmyoFOvfL8N61A==",
"requires": {
"@types/classnames": "^2.2.11",
"@types/hammerjs": "^2.0.36",
"@types/react": "^16.9.56",
"classnames": "^2.2.6",
"hammerjs": "^2.0.8",
"spark-wrapper-fyge": "^1.0.4"
}
},
"@spark/utils": {
"version": "1.0.37",
"resolved": "http://npm.dui88.com:80/@spark%2futils/-/utils-1.0.37.tgz",
"integrity": "sha512-kMMhg2hhwRSil51nwL89OT6td998ZQiaRbUsRMO5CRqlTpkm5mKvqL/fhpglw+Sl0tbRlDEq9CP1kCj4lMRlXw==",
"requires": {
"@types/crypto-js": "^4.0.1",
"@types/react": "^16.9.56",
"crypto-js": "^4.0.0",
"html2canvas": "^1.0.0-rc.7",
"spark-wrapper-fyge": "^1.0.4"
}
},
"@types/classnames": {
"version": "2.2.11",
"resolved": "http://npm.dui88.com:80/@types%2fclassnames/-/classnames-2.2.11.tgz",
"integrity": "sha1-JSHMhvadFcW5BmTkgp2EVmBSwc8="
},
"@types/crypto-js": {
"version": "4.0.1",
"resolved": "http://npm.dui88.com:80/@types%2fcrypto-js/-/crypto-js-4.0.1.tgz",
"integrity": "sha1-OkvSRRiw5sWUDaTiZZ7rLvCAaWM="
},
"@types/hammerjs": {
"version": "2.0.36",
"resolved": "http://npm.dui88.com:80/@types%2fhammerjs/-/hammerjs-2.0.36.tgz",
"integrity": "sha1-F84KI16f+83N9QlWRrN0wr9hWkw="
},
"@types/json-schema": {
"version": "7.0.6",
"resolved": "http://npm.dui88.com:80/@types%2fjson-schema/-/json-schema-7.0.6.tgz",
"integrity": "sha1-9MfsQ+gbMZqYFRFQMXCfJph4kfA="
},
"@types/prop-types": {
"version": "15.7.3",
"resolved": "http://npm.dui88.com:80/@types%2fprop-types/-/prop-types-15.7.3.tgz",
"integrity": "sha1-KrDV2i5YFflLC51LldHl8kOrLKc="
},
"@types/react": {
"version": "16.14.2",
"resolved": "http://npm.dui88.com:80/@types%2freact/-/react-16.14.2.tgz",
"integrity": "sha1-hdzAlH0GRTSZI8BMzvYBihq3U4w=",
"requires": {
"@types/prop-types": "*",
"csstype": "^3.0.2"
}
},
"add": {
"version": "2.0.6",
"resolved": "http://npm.dui88.com:80/add/-/add-2.0.6.tgz",
"integrity": "sha1-JI8Kn25aUo7yKV2+7DBTITCuIjU="
},
"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-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"
}
},
"axios": {
"version": "0.19.2",
"resolved": "http://npm.dui88.com:80/axios/-/axios-0.19.2.tgz",
"integrity": "sha1-PqNsXYgY0NX4qKl6bTa4bNwAyyc=",
"requires": {
"follow-redirects": "1.5.10"
}
},
"base64-arraybuffer": {
"version": "0.2.0",
"resolved": "http://npm.dui88.com:80/base64-arraybuffer/-/base64-arraybuffer-0.2.0.tgz",
"integrity": "sha1-S5RPrAGRqlkHr+LYyZnMxXzoD0U="
},
"big.js": {
"version": "5.2.2",
"resolved": "http://npm.dui88.com:80/big.js/-/big.js-5.2.2.tgz",
"integrity": "sha1-ZfCvOC9Xi83HQr2cKB6cstd2gyg="
},
"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="
},
"commander": {
"version": "6.2.1",
"resolved": "http://npm.dui88.com:80/commander/-/commander-6.2.1.tgz",
"integrity": "sha1-B5LraC37wyWZm7K4T93duhEKxzw=",
"dev": true
},
"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"
}
},
"crypto-js": {
"version": "4.0.0",
"resolved": "http://npm.dui88.com:80/crypto-js/-/crypto-js-4.0.0.tgz",
"integrity": "sha1-KQSrJnep0EKFai6i74DekuSjbcw="
},
"css-line-break": {
"version": "1.1.1",
"resolved": "http://npm.dui88.com:80/css-line-break/-/css-line-break-1.1.1.tgz",
"integrity": "sha1-1em90peEAJnrBQPHMQ/TSSegJu8=",
"requires": {
"base64-arraybuffer": "^0.2.0"
}
},
"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="
},
"csstype": {
"version": "3.0.5",
"resolved": "http://npm.dui88.com:80/csstype/-/csstype-3.0.5.tgz",
"integrity": "sha1-f97GoopnrhhkfFFmip/5W7L6e7g="
},
"debug": {
"version": "3.1.0",
"resolved": "http://npm.dui88.com:80/debug/-/debug-3.1.0.tgz",
"integrity": "sha1-W7WgZyYotkFJVmuhaBnmFRjGcmE=",
"requires": {
"ms": "2.0.0"
}
},
"duiba-utils": {
"version": "1.0.4",
"resolved": "http://npm.dui88.com:80/duiba-utils/-/duiba-utils-1.0.4.tgz",
"integrity": "sha512-l3l5qW1I+qJfBiJ5Fttyl7VRyd1Q0m0K9ujoCg0mteFsVAqjCqwDwipj+ABeemOoR1QvVA3F/Aqi9az9pmYuSg=="
},
"emojis-list": {
"version": "3.0.0",
"resolved": "http://npm.dui88.com:80/emojis-list/-/emojis-list-3.0.0.tgz",
"integrity": "sha1-VXBmIEatKeLpFucariYKvf9Pang="
},
"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"
}
},
"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="
},
"esprima": {
"version": "4.0.1",
"resolved": "http://npm.dui88.com:80/esprima/-/esprima-4.0.1.tgz",
"integrity": "sha1-E7BM2z5sXRnfkatph6hpVhmwqnE="
},
"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="
},
"follow-redirects": {
"version": "1.5.10",
"resolved": "http://npm.dui88.com:80/follow-redirects/-/follow-redirects-1.5.10.tgz",
"integrity": "sha1-e3qfmuov3/NnhqlP9kPtB/T/Xio=",
"requires": {
"debug": "=3.1.0"
}
},
"fyge": {
"version": "2.0.14",
"resolved": "http://npm.dui88.com:80/fyge/-/fyge-2.0.14.tgz",
"integrity": "sha512-MI7a8iXesHhxFzOv3QQrNyXdGeCrq7J3N3MeH6QZ1g0+5LCuAfq8DLT8gjXHPxg7/V9Th8ahX2HOuzGClohI8w==",
"requires": {
"duiba-utils": "^1.0.0"
}
},
"fyge-tbmini": {
"version": "1.4.8",
"resolved": "http://npm.dui88.com:80/fyge-tbmini/-/fyge-tbmini-1.4.8.tgz",
"integrity": "sha1-4qC9decrE6N7dWJPcB3BYJ7b7G8="
},
"hammerjs": {
"version": "2.0.8",
"resolved": "http://npm.dui88.com:80/hammerjs/-/hammerjs-2.0.8.tgz",
"integrity": "sha1-BO93hiz/K7edMPdpIJWTAiK/YPE="
},
"has-flag": {
"version": "3.0.0",
"resolved": "http://npm.dui88.com:80/has-flag/-/has-flag-3.0.0.tgz",
"integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0="
},
"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"
}
},
"html2canvas": {
"version": "1.0.0-rc.7",
"resolved": "http://npm.dui88.com:80/html2canvas/-/html2canvas-1.0.0-rc.7.tgz",
"integrity": "sha1-cMFZzg5jlUqRFpUxiU0IrVYnrJg=",
"requires": {
"css-line-break": "1.1.1"
}
},
"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"
}
},
"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"
}
},
"indexes-of": {
"version": "1.0.1",
"resolved": "http://npm.dui88.com:80/indexes-of/-/indexes-of-1.0.1.tgz",
"integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc="
},
"intersection-observer": {
"version": "0.11.0",
"resolved": "http://npm.dui88.com:80/intersection-observer/-/intersection-observer-0.11.0.tgz",
"integrity": "sha1-9OoGcHAyb2g5PuFhzAospMAEDG8="
},
"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-directory": {
"version": "0.3.1",
"resolved": "http://npm.dui88.com:80/is-directory/-/is-directory-0.3.1.tgz",
"integrity": "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE="
},
"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"
}
},
"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="
},
"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"
}
},
"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"
}
},
"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"
}
},
"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.0.0",
"resolved": "http://npm.dui88.com:80/ms/-/ms-2.0.0.tgz",
"integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
},
"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="
},
"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"
}
},
"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="
},
"prettier": {
"version": "2.2.1",
"resolved": "http://npm.dui88.com:80/prettier/-/prettier-2.2.1.tgz",
"integrity": "sha1-eVoaeN1S8HPaDNQrIfnJE4GSP/U="
},
"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.4",
"resolved": "http://npm.dui88.com:80/qs/-/qs-6.9.4.tgz",
"integrity": "sha1-kJCykNH5FyjTwi5UhDykSupatoc="
},
"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"
}
},
"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="
},
"resolve-from": {
"version": "3.0.0",
"resolved": "http://npm.dui88.com:80/resolve-from/-/resolve-from-3.0.0.tgz",
"integrity": "sha1-six699nWiBvItuZTM17rywoYh0g="
},
"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="
},
"source-map": {
"version": "0.6.1",
"resolved": "http://npm.dui88.com:80/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM="
},
"spark-utils": {
"version": "0.0.12",
"resolved": "http://npm.dui88.com:80/spark-utils/-/spark-utils-0.0.12.tgz",
"integrity": "sha512-30/JxohR2DlgT0cyBWvt+3w2Zz9JLHh8uMQd2q/Ufjhtb+QXHT0x0meuwUh7s6pHwHovI+ZqzepCcKs2OxR7LA==",
"requires": {
"intersection-observer": "^0.11.0",
"spark-wrapper-fyge": "^1.0.2"
}
},
"spark-wrapper-fyge": {
"version": "1.0.24",
"resolved": "http://npm.dui88.com:80/spark-wrapper-fyge/-/spark-wrapper-fyge-1.0.24.tgz",
"integrity": "sha512-1nI6oh4+G1vdKR+pwRqJ2vYAzc5SZAI8RIVzmec3n70Vu9XdBvVi6HoKOff6KIaeg5ETlHZn5afzTOcRE7O1Cw==",
"requires": {
"fyge": "^2.0.13"
}
},
"sprintf-js": {
"version": "1.0.3",
"resolved": "http://npm.dui88.com:80/sprintf-js/-/sprintf-js-1.0.3.tgz",
"integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw="
},
"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.1.3",
"resolved": "http://npm.dui88.com:80/json5/-/json5-2.1.3.tgz",
"integrity": "sha1-ybD3+pIzv+WAf+ZvzzpWF+1ZfUM=",
"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="
},
"uniq": {
"version": "1.0.1",
"resolved": "http://npm.dui88.com:80/uniq/-/uniq-1.0.1.tgz",
"integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8="
},
"uri-js": {
"version": "4.4.0",
"resolved": "http://npm.dui88.com:80/uri-js/-/uri-js-4.4.0.tgz",
"integrity": "sha1-qnFCYd55PoqCNHp7zJznTobyhgI=",
"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="
},
"yarn": {
"version": "1.22.10",
"resolved": "http://npm.dui88.com:80/yarn/-/yarn-1.22.10.tgz",
"integrity": "sha1-yZ2qBiV8gPj6LD8UkHJOOUwmsYw="
}
}
}
......@@ -18,6 +18,8 @@
"css-loader": "^3.6.0",
"duiba-utils": "^1.0.2",
"fyge-tbmini": "^1.3.1",
"mobx": "^6.0.4",
"mobx-react-lite": "^3.1.6",
"postcss-loader": "^3.0.0",
"prettier": "^2.0.5",
"qs": "^6.9.4",
......@@ -28,7 +30,8 @@
"redux-thunk": "^2.3.0",
"spark-utils": "^0.0.12",
"style-loader": "^1.2.1",
"svgaplayerweb": "^2.3.1"
"svgaplayerweb": "^2.3.1",
"teddi": "git+ssh://git@gitlab2.dui88.com:wildfirecode13/teddi.git"
},
"devDependencies": {
"mockjs": "^1.1.0"
......
File mode changed from 100644 to 100755
......@@ -7,6 +7,7 @@ import Detail2 from "./pages/detail2/detail2.jsx";
//此处为spark-cli动态生成
import Loading from "./pages/loading/loading.jsx";
import Main3 from "./pages/main3/main3.jsx";
import { AUPOP, AUP_MBX_STATE } from './pop';
MOCK_STATUS && (require('../mock/index'));
MD();
......@@ -20,6 +21,9 @@ class App extends Component {
}
componentDidMount() {
// setTime`out(() => {
// Aup.show('PopRule', {}, this)
// }, 1000);`
}
eventHandler=()=>{
......@@ -37,6 +41,7 @@ class App extends Component {
{page == 'loading' && <Loading data={pagedata} navigateTo={this.navigateTo}></Loading>}
{page == 'mainpage' && <Main3 data={pagedata} navigateTo={this.navigateTo}></Main3>}
{page == 'detail' && <Detail2 data={pagedata} navigateTo={this.navigateTo}></Detail2>}
<AUPOP eventHandler={this.eventHandler} AUPopState={AUP_MBX_STATE} ></AUPOP>
</>
);
}
......
......@@ -2,6 +2,7 @@
import React, { Component } from 'react';
import resList2 from '../../resconfig/resList2';
import { Aup } from '../../pop';
import './prize.less';
class Comprize extends Component {
constructor(props) {
......@@ -13,7 +14,7 @@ class Comprize extends Component {
}
onCloseCustom = () => {
// Aup.clear()
Aup.clear()
}
render() {
......
File mode changed from 100644 to 100755
......@@ -4,7 +4,7 @@ import { Toast } from '@spark/ui';
import React, { Component } from 'react';
import dataCenter, { getAPIdata, getHomeInfo, netErrMsg, Role, Store } from '../../dataCenter';
import resList from '../../resconfig/resList'; //import API from '../../api';
import { debounce } from '../../ui';
import { debounce, Countdown } from "teddi";
import './select.less';
const startselidx = 1;
......
......@@ -4,9 +4,10 @@ import { Toast } from '@spark/ui';
import React, { Component } from 'react';
import API from '../../api';
import { getHomeInfo } from '../../dataCenter';
import { Aup } from '../../pop';
import resList from '../../resconfig/resList'; //import API from '../../api';
import { debounce } from '../../ui';
import './sign.less';
import { debounce, Countdown } from "teddi";
class Sign extends Component {
constructor(props) {
......@@ -34,7 +35,7 @@ class Sign extends Component {
getHomeInfo();
if (res.data.type !== 'joyBean') {
// Aup.show('PrizeRule', res.data, this);
Aup.show('PrizeRule', res.data, this);
} else {
this.props.onClose();
Toast(`恭喜你成功领取${res.data.awardName}`)
......
......@@ -5,8 +5,8 @@ import React, { Component } from 'react';
import API from '../../api';
import { getHomeInfo } from '../../dataCenter';
import resList from '../../resconfig/resList';
import { debounce } from '../../ui';
import './userinfo.less';
import { debounce, Countdown } from "teddi";
class Userinfo extends Component {
constructor(props) {
super(props);
......
'use strict';
import { appID } from 'duiba-utils';
import React, { Component } from 'react';
import React, { Component } from 'react'; // import { Timer } from 'teddi';
import resList from '../../resconfig/resList'; //import API from '../../api';
import API from '../../api';
import './loading.less';
import { Aup } from '../../pop';
import dataCenter, { getAPIdata, getHomeInfo, Store } from '../../dataCenter';
class Loading extends Component {
......@@ -107,7 +108,7 @@ class Loading extends Component {
if (newUser) {
//新用户,走选择,然后再走引导,引导结束后,走签到
// Aup.show('Select', {}, this);
Aup.show('Select', {}, this);
isnewUser = 1;
}
}
......
......@@ -3,6 +3,7 @@
import React, { Component } from 'react';
import resList from '../../resconfig/resList'; //import API from '../../api';
import API from '../../api';
import { Aup, AUPOP, AUP_MBX_STATE } from '../../pop';
import './main3.less';
import { CanvasWidget } from 'spark-utils';
import { Guideact } from '@spark/guideact';//'./bundle';//
......@@ -11,8 +12,6 @@ import { GDispatcher } from "spark-wrapper-fyge"
import dataCenter, { Store } from '../../dataCenter';
import { getSVGA } from '../../svga';
import { Toast } from '@spark/ui';
import ViewCtrl from "../../util/viewCtrl";
import Enum from '../../util/enum';
let _widget;
class Main3 extends Component {
......@@ -33,7 +32,6 @@ class Main3 extends Component {
setTimeout(() => {
this.setState({rolepop:0})
}, 3000);
}
gotoURL=(type)=>{
......@@ -53,13 +51,12 @@ class Main3 extends Component {
}
onClick_userinfo = () => {
// Aup.show('Userinfo', {figureId:this.state.figureId}, this);
ViewCtrl.showWin(Enum.Com.Userinfo, {figureId:this.state.figureId});
Aup.show('Userinfo', {figureId:this.state.figureId}, this);
}
onClick_signBtn = () => {
API.signInfo().then((res) => {
// Aup.show('Sign', res.data, this);
Aup.show('Sign', res.data, this);
})
}
......@@ -73,7 +70,7 @@ class Main3 extends Component {
onClick_rulebtn = () => {
// console.log('onClick_rulebtn')
// Aup.show('PopRule', {}, this)
Aup.show('PopRule', {}, this)
}
onclick_jingcai = () => {
......@@ -91,13 +88,11 @@ class Main3 extends Component {
if( this.props.data &&!this.props.data.isnewUser) { //不是新用户
API.signInfo().then((res)=>{
const {needPopup} =res.data;
if(needPopup) {
// Aup.show('Sign', res.data, this);
}
if(needPopup)
Aup.show('Sign', res.data, this);
});
}
}
initEvent() {
GDispatcher.addEventListener(Store.homeinfo, this.freshHomeInfo, this);
GDispatcher.addEventListener(Store.needguide, this.changeGuideShow, this);
......@@ -150,9 +145,8 @@ class Main3 extends Component {
dataCenter.setData(Store.needguide, false);
API.signInfo().then((res) => {
const { needPopup } = res.data;
if (needPopup){
// Aup.show('Sign', res.data, this);
}
if (needPopup)
Aup.show('Sign', res.data, this);
})
break;
......
import React, { Component } from 'react';
import popMap from '../PopMap.js'
import { observer } from 'mobx-react-lite'
import { toJS } from "mobx";
import { Aup } from "../index.js"
import { ConsoleStyleComponents, ConsoleStyleFlagColor } from '../api/tools.js';
import './AUPopMobx.less'
class AUPopMobx extends Component {
constructor (props) {
super(props)
this.state = this.state || {
popArr: []
}
this.auPopRef = React.createRef()
this.closeFlagRef = React.createRef()
}
static getDerivedStateFromProps(nextProprs, preState) {
console.log(`%c AUPopMobx nextProprs is: \n`, ConsoleStyleComponents, nextProprs)
if (nextProprs.popArr.length === 0) {
allowScroll()
} else if (nextProprs.popArr.length && preState.popArr.length == 0) {
disableScroll()
}
return {
popArr: nextProprs.popArr
}
}
closePop = (index) => {
// TODO: not complete
// TODO: inject some animation function in there:
if (!this.state.popArr.length) return
else if (this.state.popArr.length == 1) {
if (this.auPopRef.current) {
this.auPopRef.current.style.transition = `opacity 350ms`
this.auPopRef.current.style.opacity = '0'
this.closeFlagRef.current && (this.closeFlagRef.current.style.display = 'block')
setTimeout(() => {
Aup.close()
this.closeFlagRef.current && (this.closeFlagRef.current.style.display = 'none')
}, 400);
} else {
Aup.close()
this.closeFlagRef.current.style.display = 'none'
}
}
else if (this.state.popArr.length > 1) {
this.closeFlagRef.current && (this.closeFlagRef.current.style.display = 'block')
setTimeout(() => {
Aup.close()
this.closeFlagRef.current && (this.closeFlagRef.current.style.display = 'none')
}, 400);
}
}
render() {
console.log('%c ----------------- AUtest - RENDER RUN FLAG ----------------- ----------------- ----------------- -----------------', ConsoleStyleFlagColor)
const { popArr } = this.state
let Pop = []
popArr.forEach((item, index) => {
const { showPop, popData, fn, ctx } = item
let PItem = popMap.get(showPop)
if(!PItem)console.error(`没有类型为${showPop}的弹窗`)
Pop.push(
<div className={showPop === 'PopLightCard' ? 'compop_content comPop_zoom_from0' : 'compop_content comPop_zoom'}>
<PItem onClose={this.closePop} data={popData} fn={fn} ctx={ctx} type='spot'/>
</div>
)
})
const Com = (popArr.length && popArr[0].showPop) ? (
<div className='compop_back' ref={this.auPopRef}>
<div className='compop_mask'></div>
{/* 关闭-禁止点击 */}
<div ref={this.closeFlagRef} className='compop_transparent'></div>
{Pop.map((It, index) => {
return (
<React.Fragment key={index}>
<div className={(index !== Pop.length - 1) ? 'Fragment-wrapper Fragment-small-opacity' : 'Fragment-wrapper'}>
{(index !== Pop.length - 1) ? <div className="Fragment-wrapper-mask"></div> : null }
{It}
</div>
</React.Fragment>)
})}
</div>
) : null
return (
Com
);
}
}
export const AUPOP = observer(({ AUPopState }) => {
console.log(AUPopState)
return <AUPopMobx popArr={toJS(AUPopState.popArr)}/>
})
const debounce = (fn, wait, immediate = false) => {
let timer
return function () {
if (timer) clearTimeout(timer)
if (immediate) {
// 如果已经执行过,不再执行
var callNow = !timer
timer = setTimeout(() => {
timer = null
}, wait)
if (callNow) {
fn()
}
} else {
timer = setTimeout(() => {
fn()
}, wait)
}
}
}
let top = 0
const disableScroll = debounce(() => {
var top_ = window.scrollY;
// console.log('ScrollScroll disableScroll', top_)
document.body.style.position = "fixed";
document.body.style.overflow = "hidden";
top = top_
document.body.style.top = -top + "px";
}, 300, 1)
const allowScroll = debounce(() => {
// console.log('ScrollScroll allowScroll', top)
document.body.style.top = "0px";
document.body.style.position = "relative";
document.body.style.overflow = "auto";
window.scrollTo(0, top);
}, 300, 1)
.compop_back {
position: fixed;
top: 0;
left: 0;
bottom: 0;
right: 0;
z-index: 99;
touch-action: none;
.compop_mask {
width: 100%;
height: 100%;
background-color: rgba(0, 0, 0, .7);
position: absolute;
top: 0;
left: 0;
z-index: -1;
touch-action: none;
}
.compop_transparent {
width: 100%;
height: 100%;
background-color: rgba(255, 255, 255, 0);
position: absolute;
top: 0;
left: 0;
z-index: 9;
touch-action: none;
display: none;
}
}
.pop_mask {
top: 0;
left: 0;
right: 0;
bottom: 0;
z-index: 100;
position: fixed;
background: transparent;
}
.compop_content {
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
right: 0;
left: 0;
z-index: 2;
}
.comPop_close_btn {
position: absolute;
display: block;
z-index: 1;
width: 102px;
height: 102px;
left: calc(49% - (102px / 2));
bottom: -160px;
z-index: 3;
}
.comPop_back_light {
position: absolute;
display: block;
z-index: -1;
width: 883px;
height: 883px;
left: calc(50% - (883px / 2));
top: -200px;
bottom: -144px;
}
.comPop_back_head {
position: absolute;
display: block;
z-index: 2;
width: 567px;
height: 140px;
left: 5px;
top: 20px;
animation: floatAni 3000ms infinite linear;
transform-origin: center center center;
position: relative;
}
@keyframes floatAni {
0% {
transform: skewX(-1deg) skewY(0.8deg) scaleX(1.05) translateY(-30px) rotate(-3deg);
}
25% {
transform: skewX(-0.5deg) skewY(0.3deg) scaleX(1.02) translateY(-20px) rotate(-2deg);
}
50% {
transform: skewX(0deg) skewY(0deg) scaleX(1) translateY(-15px) rotate(-2deg);
}
75% {
transform: skewX(-0.5deg) skewY(0.3deg) scaleX(1.02) translateY(-20px) rotate(-2deg);
}
100% {
transform: skewX(-1deg) skewY(0.8deg) scaleX(1.05) translateY(-30px) rotate(-3deg);
}
}
.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;
}
.Fragment-wrapper-mask {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: transparent;
z-index: 99;
touch-action: none;
}
.Fragment-small-opacity {
transition: transform 300ms ease-in, opacity 200ms linear !important;
transform: scale(0.5) !important;
opacity: 0 !important;
}
.Fragment-wrapper {
opacity: 1;
transition: transform 200ms ease-out, opacity 200ms linear;
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
transform: scale(1);
transform-origin: center center;
}
@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)
}
}
.comPop_fadeout {
opacity: 0;
transition: opacity 300ms linear;
}
\ No newline at end of file
'use strict';
import { makeAutoObservable, observable, computed, action, runInAction, autorun, reaction, configure, toJS } from 'mobx'
import { CONSO_START_mark, ConsoleStyleTitle, ConsoFunc } from './api/tools'
// configure({
// useProxies: "never"
// })
class PopState {
nowShow
popArr
constructor() {
this.popArr = []
this.nowShow = arguments[0]
// makeAutoObservable(this)
makeAutoObservable(this, {
nowShow: observable,
popArr: observable,
addPop: action.bound,
changePop: action.bound,
popArrLength: computed
})
}
// 添加一个弹窗
addPop = (data) => {
this.nowShow = data.type
this.popArr.push(data)
// console.log(`${CONSO_START_mark}\n addPop:`, ConsoleStyleTitle, toJS(this.popArr))
}
// 改变数组中的第一个弹窗
changePop = (data) => {
this.nowShow = data.type
this.popArr.push(data)
// console.log(`${CONSO_START_mark}\n changePop:`, ConsoleStyleTitle, toJS(this.popArr))
// this.popArr = [data]
}
// 删除弹窗
delePop = (long) => {
this.popArr.splice(this.popArr.length - long, long)
if (this.popArr.length) this.nowShow = this.popArr[this.popArr.length - 1].type
}
// 清空 弹窗
clearPop = () => {
this.popArr = []
}
get popArrLength () {
// console.log(`${CONSO_START_mark}\n this.popArr:`, ConsoleStyleTitle, toJS(this.popArr))
return this.popArr.length
}
}
export const AUP_MBX_STATE = new PopState('init')
autorun(() => {
let tempLastComPop = toJS(AUP_MBX_STATE.popArr)
let last = tempLastComPop.length ? tempLastComPop[tempLastComPop.length - 1] : undefined
console.log(`${CONSO_START_mark}\n AUTORUN::: the last Pop`, ConsoleStyleTitle, last)
return last
})
// ready code for mobx can't use
// author: 沈阳楠
// export const EventDispatcher = (function () {
// function EventDispatcher() {
// this._events = {}
// }
// EventDispatcher.ins = function () {
// if (EventDispatcher.ins == null) {
// EventDispatcher.ins = new EventDispatcher()
// }
// return EventDispatcher.ins
// }()
// EventDispatcher.prototype.dispatch = function (eventName, data) {
// for (let i in this._events[eventName]) {
// var _event = this._events[eventName][i]
// _event.callback.call(_event.target.context, data)
// }
// }
// EventDispatcher.prototype.addEventListener = function (eventName, callback, target) {
// var _events = this._events[eventName]
// if (_events) {
// _events.push({
// callback: callback,
// target: target
// })
// } else {
// this._events[eventName] = [{
// callback: callback,
// target: target
// }]
// }
// }
// EventDispatcher.prototype.removeEventListener = function (eventName, callback, target) {
// for (let i = this._events[eventName].length - 1; i >= 0; i--) {
// var _event = this._events[eventName][i]
// if (_event.callback == callback && _event.target == target) {
// this._events[eventName].splice(i, 1)
// }
// }
// }
// EventDispatcher.prototype.removeAllEventListener = function (eventName) {
// this._events[eventName] = null
// }
// return EventDispatcher
// }())
// EventDispatcher.ins.addEventListener("aaaa", this.isStart, this)
// EventDispatcher.ins.addEventListener("aaaa", () => {
// EventDispatcher.ins.removeEventListener("aaaa", this.isStart, this)
// }, this)
// EventDispatcher.ins.dispatch("aaaa", 3213123)
\ No newline at end of file
'use strict';
import { AUP_MBX_STATE } from '../AUState'
import { CONSO_START_mark, ConsoleStyleTitle } from './tools'
/**
* 清空页面弹窗
*/
export const clear = () => {
if (AUP_MBX_STATE.popArrLength === 0) return
else AUP_MBX_STATE.clearPop()
}
'use strict';
import { AUP_MBX_STATE } from '../AUState'
import { CONSO_START_mark, ConsoleStyleTitle } from './tools'
/**
* 关闭弹窗
* @param {Number} length 关闭的数量
*/
export const close = (length = 1) => {
if (AUP_MBX_STATE.popArrLength === 0) {
console.warn(`弹窗数组无储存的弹窗, \n 勿重复调用 close()`)
return
}
else if (AUP_MBX_STATE.popArrLength >= length) {
AUP_MBX_STATE.delePop(length)
}
else {
console.warn(`传入的关闭弹窗数量 ${length},大于弹窗数组所储存的数量 ${AUP_MBX_STATE.popArrLength}, \n 执行清空操作`)
AUP_MBX_STATE.clearPop()
}
}
'use strict';
import { AUP_MBX_STATE } from '../AUState'
import { CONSO_START_mark, ConsoleStyleTitle } from './tools'
/**
* 显示弹窗
* @param {String} type 弹窗类型
* @param {Object} data 传递数据
* @param {Fucntion} fn 定义更多 需要执行的方法 (context 来自父组件)
* @param {Context} ctx 传递 父组件 Context
*/
export const cover = (type, data = {}, option = null) => {
const pData = {
showPop: type,
popData: data || null,
fn: fn || null,
ctx: ctx || null
}
// console.log(`${CONSO_START_mark}\n AupopShow data is:`, ConsoleStyleTitle, data)
// 覆盖弹窗
if (type && AUP_MBX_STATE.popArrLength) AUP_MBX_STATE.addPop(pData)
// 出现弹窗 - ps: 首个弹窗
else AUP_MBX_STATE.addPop(pData)
}
'use strict';
import { AUP_MBX_STATE } from '../AUState'
import { CONSO_START_mark, ConsoleStyleTitle } from './tools'
/**
* 获取弹窗数组
*/
export const getArr = () => {
return new Promise((resolve, reject) => {
let popArrTmp = deepCopy(AUP_MBX_STATE.popArr)
resolve(popArrTmp)
})
}
function deepCopy(source){
if (typeof source != "object") {
return source
}
if (source == null) {
return source
}
var newObj = source.constructor === Array ? [] : {} //开辟一块新的内存空间
for (var i in source) {
newObj[i] = deepCopy(source[i])
}
return newObj
}
// IntersectionObserver
\ No newline at end of file
export { show } from './show'
export { cover } from './cover'
export { close } from './close'
export { clear } from './clear'
export { getArr } from './getArr'
\ No newline at end of file
'use strict';
import { AUP_MBX_STATE } from '../AUState'
import { CONSO_START_mark, ConsoleStyleTitle } from './tools'
/**
* 显示弹窗
* @param {String} type 弹窗类型
* @param {Object} data 传递数据
* @param {Fucntion} fn 定义更多 需要执行的方法 (context 来自父组件)
* @param {Context} ctx 传递 父组件 Context
*/
export const show = (type, data = {}, ctx, fn) => {
const pData = {
showPop: type,
popData: data || null,
fn: fn || null,
ctx: ctx || null
}
// console.log(`${CONSO_START_mark}\n AupopShow data is:`, ConsoleStyleTitle, data)
// 添加弹窗 没有弹窗
if (type && !AUP_MBX_STATE.popArrLength) AUP_MBX_STATE.addPop(pData)
// 替换弹窗
else if (type && AUP_MBX_STATE.popArrLength) AUP_MBX_STATE.changePop(pData)
}
export function ConsoFunc() {
console.log(
CONSO_START_mark, ConsoleStyleTitle,
...arguments
)
// console.log(END_mark, ConsoleStyleDetail)
}
export const ConsoleStyleTitle = [
'color: #94c902',
'font-size: 12px',
'font-weight: 500',
'text-shadow: 1px 1px rgba(200, 200, 200, 0.2)',
].join(';')
export const ConsoleStyleDetail = [
'color: #94c902',
'font-size: 8px',
'font-weight: 200'
].join(';')
export const ConsoleStyleComponents = [
'color: #a591ff',
'font-size: 12px',
'font-weight: 400'
].join(';')
export const ConsoleStyleFlagColor = [
'color: #fda300',
'font-size: 6px',
'font-weight: 900'
].join(';')
export const CONSO_END_mark = `%c end --------\n`
export const CONSO_START_mark = `%c------- ~ (๑• . •๑) ~ ------- AUPOP -------- \n`
\ No newline at end of file
export * as Aup from './api'
export { AUP_MBX_STATE } from './AUState'
export { AUPOP } from './AUPopMobx/AUPopMobx.jsx'
\ No newline at end of file
File mode changed from 100644 to 100755
/**
* 防连点
* @param fn 点击处理方法
* @param wait 等待时间,单位毫秒,默认2000
*/
export const debounce = (fn, wait=2000, immediate = true) => {
let timer;
return function () {
if (timer) clearTimeout(timer)
if (immediate) {
// 如果已经执行过,不再执行
var callNow = !timer
timer = setTimeout(() => {
timer = null
}, wait)
if (callNow) {
fn()
}
} else {
timer = setTimeout(() => {
fn()
}, wait)
}
}
}
\ No newline at end of file
import Userinfo from "../components/userinfo/userinfo.jsx";
// import Comtask from '../components/comtask/comtask.jsx';
// import ComconfirmExchange from '../components/comconfirmExcahnge/comconfirmExcahnge.jsx';
// import ComExchangesuccess from '../components/comexchangesuccess/comexchangesuccess.jsx';
const { default: Enum } = require("./enum");
let comMap = new Map();
comMap.set(Enum.Com.Userinfo, Userinfo);
// comMap.set(Enum.Com.comtask, Comtask);
// comMap.set(Enum.Com.comconfirmExchange, ComconfirmExchange);
// comMap.set(Enum.Com.comExchangesuccess, ComExchangesuccess);
const config = {
comMap:comMap,
netError:"网络异常,请稍后重试"
}
export default config
\ No newline at end of file
const Enum = {
//页面
Page: {
// 宠物详情页
Pagepet: 1001,
// 活动页
PageIndex:1002,
// loading页面
PageLoading:1003,
// 宠物选择页
PageChoose:1004,
// 兑换订单页
Pageexchangeorder:1005,
//兑换列表页
Pageexchangegoodslist:1006
},
//弹窗
Com: {
//toast
toast: 2000,
comshopmall:2001,
comtask:2002,
comconfirmExchange:2003,
comExchangesuccess:2004,
Userinfo:2005,
},
Store:{
}
}
export default Enum;
import React from 'react';
import ReactDOM from "react-dom";
import config from './config';
const ViewCtrl = {
/**控制显示隐藏,name:节点的类名,value为布尔值 */
changeVisible: (name, value) => {
let node;
node = document.getElementsByClassName(name)[0]
if (value == true) {
node.style.display = ''
} else if (value == false) {
node.style.display = 'none'
}
},
// clickZoom:(className)=>{
// let node;
// node = document.getElementsByClassName(className)[0];
// if(node){
// node.style = "transform-origin:50% 50% 0px";
// new TWEEN.Tween(node)
// // .to({node.})
// }
// },
/**弹出弹窗 */
showWin: (enumComKey, data = {},call) => {
let T = config.comMap.get(enumComKey)
var m = document.createElement('div');
m.className = "popcontainer"
// m.addEventListener()
document.body.appendChild(m);
m.addEventListener('click',(e)=>{
// console.log(e.target.className,'mengceng e');
if(e.target.className.trim() == 'popcontainer'){
document.body.removeChild(m);
}
},false);
/**
* @param {function} cb
*/
const closeWin = (cb) => {
document.body.removeChild(m);
if (typeof cb == 'function') {
try {
cb()
} catch (error) {
console.log(error)
}
}
}
T = <T closeWin={closeWin} data={data} call={call} />
ReactDOM.render(T, m);
},
/**刷新页面 */
flushPage: () => {
let event = new Event("flushPage");
document.dispatchEvent(event)
},
/**切换页面 */
// changePage: (enumPageKey = -1) => {
// // if(enumPageKey == Enum.Page.Pageindex){
// // document.dispatchEvent(new Event("remove"))
// // }
// let event = new CustomEvent("changePage", { detail: { id: enumPageKey } });
// document.dispatchEvent(event)
// }
changePage: (enumPageKey = -1,data) => {
let event = new CustomEvent("changePage", { detail: { id: enumPageKey,data:data } });
document.dispatchEvent(event)
}
}
export default ViewCtrl
\ 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