Commit d493c440 by wangshuo

Merge branch 'master' of gitlab.julyedu.com:baiguangyao/mr-julyedu

parents 0dde8785 9544334e
{ {
"coupons.css": "/static/css/coupons.9ece7350.chunk.css", "coupons.css": "/static/css/coupons.9ece7350.chunk.css",
"coupons.js": "/static/js/coupons.07cb8020.chunk.js", "coupons.js": "/static/js/coupons.74915af0.chunk.js",
"coupons.js.map": "/static/js/coupons.07cb8020.chunk.js.map", "coupons.js.map": "/static/js/coupons.74915af0.chunk.js.map",
"main.css": "/static/css/main.8b34cfea.chunk.css", "main.css": "/static/css/main.d3ac9955.chunk.css",
"main.js": "/static/js/main.12aacf75.chunk.js", "main.js": "/static/js/main.4b1b9f32.chunk.js",
"main.js.map": "/static/js/main.12aacf75.chunk.js.map", "main.js.map": "/static/js/main.4b1b9f32.chunk.js.map",
"myorders.css": "/static/css/myorders.3ab93c8e.chunk.css", "myorders.css": "/static/css/myorders.3ab93c8e.chunk.css",
"myorders.js": "/static/js/myorders.25e0b3a3.chunk.js", "myorders.js": "/static/js/myorders.e8bbccd7.chunk.js",
"myorders.js.map": "/static/js/myorders.25e0b3a3.chunk.js.map", "myorders.js.map": "/static/js/myorders.e8bbccd7.chunk.js.map",
"purchased.css": "/static/css/purchased.72c55bd6.chunk.css", "purchased.css": "/static/css/purchased.72c55bd6.chunk.css",
"purchased.js": "/static/js/purchased.1680cbec.chunk.js", "purchased.js": "/static/js/purchased.587ba463.chunk.js",
"purchased.js.map": "/static/js/purchased.1680cbec.chunk.js.map", "purchased.js.map": "/static/js/purchased.587ba463.chunk.js.map",
"runtime~main.js": "/static/js/runtime~main.2579bab4.js", "runtime~main.js": "/static/js/runtime~main.d131bbb8.js",
"runtime~main.js.map": "/static/js/runtime~main.2579bab4.js.map", "runtime~main.js.map": "/static/js/runtime~main.d131bbb8.js.map",
"shareposter.css": "/static/css/shareposter.82081d02.chunk.css", "shareposter.css": "/static/css/shareposter.82081d02.chunk.css",
"shareposter.js": "/static/js/shareposter.a9c1ccb0.chunk.js", "shareposter.js": "/static/js/shareposter.03babfdf.chunk.js",
"shareposter.js.map": "/static/js/shareposter.a9c1ccb0.chunk.js.map", "shareposter.js.map": "/static/js/shareposter.03babfdf.chunk.js.map",
"study.css": "/static/css/study.50a142e7.chunk.css", "study.css": "/static/css/study.50a142e7.chunk.css",
"study.js": "/static/js/study.58204291.chunk.js", "study.js": "/static/js/study.863458b0.chunk.js",
"study.js.map": "/static/js/study.58204291.chunk.js.map", "study.js.map": "/static/js/study.863458b0.chunk.js.map",
"togroup.css": "/static/css/togroup.49988cae.chunk.css", "togroup.css": "/static/css/togroup.49988cae.chunk.css",
"togroup.js": "/static/js/togroup.0bcd07e3.chunk.js", "togroup.js": "/static/js/togroup.d6b233f8.chunk.js",
"togroup.js.map": "/static/js/togroup.0bcd07e3.chunk.js.map", "togroup.js.map": "/static/js/togroup.d6b233f8.chunk.js.map",
"video.css": "/static/css/video.10e4a7e1.chunk.css", "video.css": "/static/css/video.10e4a7e1.chunk.css",
"video.js": "/static/js/video.1f3d951b.chunk.js", "video.js": "/static/js/video.6b23c829.chunk.js",
"video.js.map": "/static/js/video.1f3d951b.chunk.js.map", "video.js.map": "/static/js/video.6b23c829.chunk.js.map",
"static/css/9.7c331155.chunk.css": "/static/css/9.7c331155.chunk.css", "static/css/9.7c331155.chunk.css": "/static/css/9.7c331155.chunk.css",
"static/js/9.5d33e3c0.chunk.js": "/static/js/9.5d33e3c0.chunk.js", "static/js/9.48749c42.chunk.js": "/static/js/9.48749c42.chunk.js",
"static/js/9.5d33e3c0.chunk.js.map": "/static/js/9.5d33e3c0.chunk.js.map", "static/js/9.48749c42.chunk.js.map": "/static/js/9.48749c42.chunk.js.map",
"static/css/10.1597b3e9.chunk.css": "/static/css/10.1597b3e9.chunk.css", "static/css/10.1597b3e9.chunk.css": "/static/css/10.1597b3e9.chunk.css",
"static/js/10.e9ff1ae6.chunk.js": "/static/js/10.e9ff1ae6.chunk.js", "static/js/10.98079aa4.chunk.js": "/static/js/10.98079aa4.chunk.js",
"static/js/10.e9ff1ae6.chunk.js.map": "/static/js/10.e9ff1ae6.chunk.js.map", "static/js/10.98079aa4.chunk.js.map": "/static/js/10.98079aa4.chunk.js.map",
"static/js/11.611881c2.chunk.js": "/static/js/11.611881c2.chunk.js", "static/js/11.2e343155.chunk.js": "/static/js/11.2e343155.chunk.js",
"static/js/11.611881c2.chunk.js.map": "/static/js/11.611881c2.chunk.js.map", "static/js/11.2e343155.chunk.js.map": "/static/js/11.2e343155.chunk.js.map",
"index.html": "/index.html", "index.html": "/index.html",
"precache-manifest.63d80c9f9914e4071513638cc48d12de.js": "/precache-manifest.63d80c9f9914e4071513638cc48d12de.js", "precache-manifest.8b296873bb1f275954348e537d354035.js": "/precache-manifest.8b296873bb1f275954348e537d354035.js",
"service-worker.js": "/service-worker.js", "service-worker.js": "/service-worker.js",
"static/css/10.1597b3e9.chunk.css.map": "/static/css/10.1597b3e9.chunk.css.map", "static/css/10.1597b3e9.chunk.css.map": "/static/css/10.1597b3e9.chunk.css.map",
"static/css/9.7c331155.chunk.css.map": "/static/css/9.7c331155.chunk.css.map", "static/css/9.7c331155.chunk.css.map": "/static/css/9.7c331155.chunk.css.map",
"static/css/coupons.9ece7350.chunk.css.map": "/static/css/coupons.9ece7350.chunk.css.map", "static/css/coupons.9ece7350.chunk.css.map": "/static/css/coupons.9ece7350.chunk.css.map",
"static/css/main.8b34cfea.chunk.css.map": "/static/css/main.8b34cfea.chunk.css.map", "static/css/main.d3ac9955.chunk.css.map": "/static/css/main.d3ac9955.chunk.css.map",
"static/css/myorders.3ab93c8e.chunk.css.map": "/static/css/myorders.3ab93c8e.chunk.css.map", "static/css/myorders.3ab93c8e.chunk.css.map": "/static/css/myorders.3ab93c8e.chunk.css.map",
"static/css/purchased.72c55bd6.chunk.css.map": "/static/css/purchased.72c55bd6.chunk.css.map", "static/css/purchased.72c55bd6.chunk.css.map": "/static/css/purchased.72c55bd6.chunk.css.map",
"static/css/shareposter.82081d02.chunk.css.map": "/static/css/shareposter.82081d02.chunk.css.map", "static/css/shareposter.82081d02.chunk.css.map": "/static/css/shareposter.82081d02.chunk.css.map",
......
<!doctype html><html lang="en"><head><meta charset="utf-8"/><link rel="shortcut icon" href="/favicon.ico"/><meta name="viewport" content="width=device-width,initial-scale=1,shrink-to-fit=no,user-scalable=no"/><meta name="theme-color" content="#000000"/><link rel="manifest" href="/manifest.json"/><title>React App</title><link href="/static/css/9.7c331155.chunk.css" rel="stylesheet"><link href="/static/css/main.8b34cfea.chunk.css" rel="stylesheet"></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div><script>!function(i){function e(e){for(var t,r,n=e[0],o=e[1],a=e[2],u=0,c=[];u<n.length;u++)r=n[u],d[r]&&c.push(d[r][0]),d[r]=0;for(t in o)Object.prototype.hasOwnProperty.call(o,t)&&(i[t]=o[t]);for(h&&h(e);c.length;)c.shift()();return l.push.apply(l,a||[]),s()}function s(){for(var e,t=0;t<l.length;t++){for(var r=l[t],n=!0,o=1;o<r.length;o++){var a=r[o];0!==d[a]&&(n=!1)}n&&(l.splice(t--,1),e=p(p.s=r[0]))}return e}var r={},f={4:0},d={4:0},l=[];function p(e){if(r[e])return r[e].exports;var t=r[e]={i:e,l:!1,exports:{}};return i[e].call(t.exports,t,t.exports,p),t.l=!0,t.exports}p.e=function(l){var e=[];f[l]?e.push(f[l]):0!==f[l]&&{0:1,2:1,3:1,5:1,6:1,7:1,8:1,10:1}[l]&&e.push(f[l]=new Promise(function(e,n){for(var t="static/css/"+({0:"coupons",2:"myorders",3:"purchased",5:"shareposter",6:"study",7:"togroup",8:"video"}[l]||l)+"."+{0:"9ece7350",2:"3ab93c8e",3:"72c55bd6",5:"82081d02",6:"50a142e7",7:"49988cae",8:"10e4a7e1",10:"1597b3e9",11:"31d6cfe0"}[l]+".chunk.css",o=p.p+t,r=document.getElementsByTagName("link"),a=0;a<r.length;a++){var u=(i=r[a]).getAttribute("data-href")||i.getAttribute("href");if("stylesheet"===i.rel&&(u===t||u===o))return e()}var c=document.getElementsByTagName("style");for(a=0;a<c.length;a++){var i;if((u=(i=c[a]).getAttribute("data-href"))===t||u===o)return e()}var s=document.createElement("link");s.rel="stylesheet",s.type="text/css",s.onload=e,s.onerror=function(e){var t=e&&e.target&&e.target.src||o,r=new Error("Loading CSS chunk "+l+" failed.\n("+t+")");r.request=t,delete f[l],s.parentNode.removeChild(s),n(r)},s.href=o,document.getElementsByTagName("head")[0].appendChild(s)}).then(function(){f[l]=0}));var r=d[l];if(0!==r)if(r)e.push(r[2]);else{var t=new Promise(function(e,t){r=d[l]=[e,t]});e.push(r[2]=t);var n,a=document.createElement("script");a.charset="utf-8",a.timeout=120,p.nc&&a.setAttribute("nonce",p.nc),a.src=p.p+"static/js/"+({0:"coupons",2:"myorders",3:"purchased",5:"shareposter",6:"study",7:"togroup",8:"video"}[l]||l)+"."+{0:"07cb8020",2:"25e0b3a3",3:"1680cbec",5:"a9c1ccb0",6:"58204291",7:"0bcd07e3",8:"1f3d951b",10:"e9ff1ae6",11:"611881c2"}[l]+".chunk.js",n=function(e){a.onerror=a.onload=null,clearTimeout(u);var t=d[l];if(0!==t){if(t){var r=e&&("load"===e.type?"missing":e.type),n=e&&e.target&&e.target.src,o=new Error("Loading chunk "+l+" failed.\n("+r+": "+n+")");o.type=r,o.request=n,t[1](o)}d[l]=void 0}};var u=setTimeout(function(){n({type:"timeout",target:a})},12e4);a.onerror=a.onload=n,document.head.appendChild(a)}return Promise.all(e)},p.m=i,p.c=r,p.d=function(e,t,r){p.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},p.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},p.t=function(t,e){if(1&e&&(t=p(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var r=Object.create(null);if(p.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var n in t)p.d(r,n,function(e){return t[e]}.bind(null,n));return r},p.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return p.d(t,"a",t),t},p.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},p.p="/",p.oe=function(e){throw console.error(e),e};var t=window.webpackJsonp=window.webpackJsonp||[],n=t.push.bind(t);t.push=e,t=t.slice();for(var o=0;o<t.length;o++)e(t[o]);var h=n;s()}([])</script><script src="/static/js/9.5d33e3c0.chunk.js"></script><script src="/static/js/main.12aacf75.chunk.js"></script></body></html> <!doctype html><html lang="en"><head><meta charset="utf-8"/><link rel="shortcut icon" href="/favicon.ico"/><meta name="viewport" content="width=device-width,initial-scale=1,shrink-to-fit=no,user-scalable=no"/><meta name="theme-color" content="#000000"/><link rel="manifest" href="/manifest.json"/><title>React App</title><link href="/static/css/9.7c331155.chunk.css" rel="stylesheet"><link href="/static/css/main.d3ac9955.chunk.css" rel="stylesheet"></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div><script>!function(i){function e(e){for(var t,r,n=e[0],o=e[1],a=e[2],u=0,c=[];u<n.length;u++)r=n[u],d[r]&&c.push(d[r][0]),d[r]=0;for(t in o)Object.prototype.hasOwnProperty.call(o,t)&&(i[t]=o[t]);for(h&&h(e);c.length;)c.shift()();return l.push.apply(l,a||[]),s()}function s(){for(var e,t=0;t<l.length;t++){for(var r=l[t],n=!0,o=1;o<r.length;o++){var a=r[o];0!==d[a]&&(n=!1)}n&&(l.splice(t--,1),e=p(p.s=r[0]))}return e}var r={},f={4:0},d={4:0},l=[];function p(e){if(r[e])return r[e].exports;var t=r[e]={i:e,l:!1,exports:{}};return i[e].call(t.exports,t,t.exports,p),t.l=!0,t.exports}p.e=function(l){var e=[];f[l]?e.push(f[l]):0!==f[l]&&{0:1,2:1,3:1,5:1,6:1,7:1,8:1,10:1}[l]&&e.push(f[l]=new Promise(function(e,n){for(var t="static/css/"+({0:"coupons",2:"myorders",3:"purchased",5:"shareposter",6:"study",7:"togroup",8:"video"}[l]||l)+"."+{0:"9ece7350",2:"3ab93c8e",3:"72c55bd6",5:"82081d02",6:"50a142e7",7:"49988cae",8:"10e4a7e1",10:"1597b3e9",11:"31d6cfe0"}[l]+".chunk.css",o=p.p+t,r=document.getElementsByTagName("link"),a=0;a<r.length;a++){var u=(i=r[a]).getAttribute("data-href")||i.getAttribute("href");if("stylesheet"===i.rel&&(u===t||u===o))return e()}var c=document.getElementsByTagName("style");for(a=0;a<c.length;a++){var i;if((u=(i=c[a]).getAttribute("data-href"))===t||u===o)return e()}var s=document.createElement("link");s.rel="stylesheet",s.type="text/css",s.onload=e,s.onerror=function(e){var t=e&&e.target&&e.target.src||o,r=new Error("Loading CSS chunk "+l+" failed.\n("+t+")");r.request=t,delete f[l],s.parentNode.removeChild(s),n(r)},s.href=o,document.getElementsByTagName("head")[0].appendChild(s)}).then(function(){f[l]=0}));var r=d[l];if(0!==r)if(r)e.push(r[2]);else{var t=new Promise(function(e,t){r=d[l]=[e,t]});e.push(r[2]=t);var n,a=document.createElement("script");a.charset="utf-8",a.timeout=120,p.nc&&a.setAttribute("nonce",p.nc),a.src=p.p+"static/js/"+({0:"coupons",2:"myorders",3:"purchased",5:"shareposter",6:"study",7:"togroup",8:"video"}[l]||l)+"."+{0:"74915af0",2:"e8bbccd7",3:"587ba463",5:"03babfdf",6:"863458b0",7:"d6b233f8",8:"6b23c829",10:"98079aa4",11:"2e343155"}[l]+".chunk.js",n=function(e){a.onerror=a.onload=null,clearTimeout(u);var t=d[l];if(0!==t){if(t){var r=e&&("load"===e.type?"missing":e.type),n=e&&e.target&&e.target.src,o=new Error("Loading chunk "+l+" failed.\n("+r+": "+n+")");o.type=r,o.request=n,t[1](o)}d[l]=void 0}};var u=setTimeout(function(){n({type:"timeout",target:a})},12e4);a.onerror=a.onload=n,document.head.appendChild(a)}return Promise.all(e)},p.m=i,p.c=r,p.d=function(e,t,r){p.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},p.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},p.t=function(t,e){if(1&e&&(t=p(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var r=Object.create(null);if(p.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var n in t)p.d(r,n,function(e){return t[e]}.bind(null,n));return r},p.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return p.d(t,"a",t),t},p.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},p.p="/",p.oe=function(e){throw console.error(e),e};var t=window.webpackJsonp=window.webpackJsonp||[],n=t.push.bind(t);t.push=e,t=t.slice();for(var o=0;o<t.length;o++)e(t[o]);var h=n;s()}([])</script><script src="/static/js/9.48749c42.chunk.js"></script><script src="/static/js/main.4b1b9f32.chunk.js"></script></body></html>
\ No newline at end of file \ No newline at end of file
self.__precacheManifest = [ self.__precacheManifest = [
{ {
"revision": "df0197d9d8dcf341676b", "revision": "f1ad74439a14b6bafe5d",
"url": "/static/js/togroup.0bcd07e3.chunk.js" "url": "/static/js/togroup.d6b233f8.chunk.js"
}, },
{ {
"revision": "f9239f829cb282c3cdbc", "revision": "c6194015e9ea2c0fa0b5",
"url": "/static/css/coupons.9ece7350.chunk.css" "url": "/static/css/coupons.9ece7350.chunk.css"
}, },
{ {
"revision": "c498380b4f6c4c04b921", "revision": "7eca233380b0f7850c13",
"url": "/static/css/main.8b34cfea.chunk.css" "url": "/static/css/main.d3ac9955.chunk.css"
}, },
{ {
"revision": "c498380b4f6c4c04b921", "revision": "7eca233380b0f7850c13",
"url": "/static/js/main.12aacf75.chunk.js" "url": "/static/js/main.4b1b9f32.chunk.js"
}, },
{ {
"revision": "62cc16597f120fd8334e", "revision": "c7a66c555c8894f90d45",
"url": "/static/css/myorders.3ab93c8e.chunk.css" "url": "/static/css/myorders.3ab93c8e.chunk.css"
}, },
{ {
"revision": "62cc16597f120fd8334e", "revision": "c7a66c555c8894f90d45",
"url": "/static/js/myorders.25e0b3a3.chunk.js" "url": "/static/js/myorders.e8bbccd7.chunk.js"
}, },
{ {
"revision": "51958e6ea7f39287a343", "revision": "2180f0bff1355369e911",
"url": "/static/css/purchased.72c55bd6.chunk.css" "url": "/static/css/purchased.72c55bd6.chunk.css"
}, },
{ {
"revision": "51958e6ea7f39287a343", "revision": "2180f0bff1355369e911",
"url": "/static/js/purchased.1680cbec.chunk.js" "url": "/static/js/purchased.587ba463.chunk.js"
}, },
{ {
"revision": "5c44d2893cb842986b6b", "revision": "c85ba53d01ed65cdc98b",
"url": "/static/js/runtime~main.2579bab4.js" "url": "/static/js/runtime~main.d131bbb8.js"
}, },
{ {
"revision": "1977cd5f1462be98334c", "revision": "5c9b1afb07310fd05c68",
"url": "/static/css/shareposter.82081d02.chunk.css" "url": "/static/css/shareposter.82081d02.chunk.css"
}, },
{ {
"revision": "1977cd5f1462be98334c", "revision": "5c9b1afb07310fd05c68",
"url": "/static/js/shareposter.a9c1ccb0.chunk.js" "url": "/static/js/shareposter.03babfdf.chunk.js"
}, },
{ {
"revision": "b1d86d61bba4d600219b", "revision": "2663c93d3c42749299c6",
"url": "/static/css/study.50a142e7.chunk.css" "url": "/static/css/study.50a142e7.chunk.css"
}, },
{ {
"revision": "b1d86d61bba4d600219b", "revision": "2663c93d3c42749299c6",
"url": "/static/js/study.58204291.chunk.js" "url": "/static/js/study.863458b0.chunk.js"
}, },
{ {
"revision": "df0197d9d8dcf341676b", "revision": "f1ad74439a14b6bafe5d",
"url": "/static/css/togroup.49988cae.chunk.css" "url": "/static/css/togroup.49988cae.chunk.css"
}, },
{ {
"revision": "f9239f829cb282c3cdbc", "revision": "c6194015e9ea2c0fa0b5",
"url": "/static/js/coupons.07cb8020.chunk.js" "url": "/static/js/coupons.74915af0.chunk.js"
}, },
{ {
"revision": "ae5fbb84422df5e08741", "revision": "5d750ac97c676e26044c",
"url": "/static/css/video.10e4a7e1.chunk.css" "url": "/static/css/video.10e4a7e1.chunk.css"
}, },
{ {
"revision": "ae5fbb84422df5e08741", "revision": "5d750ac97c676e26044c",
"url": "/static/js/video.1f3d951b.chunk.js" "url": "/static/js/video.6b23c829.chunk.js"
}, },
{ {
"revision": "d46cd6ebd635706289b02b7defcfb46b", "revision": "d46cd6ebd635706289b02b7defcfb46b",
"url": "/static/media/iconfont.d46cd6eb.svg" "url": "/static/media/iconfont.d46cd6eb.svg"
}, },
{ {
"revision": "0d5583ba6d4e533d167c", "revision": "95c920ee60d416e0b9d0",
"url": "/static/js/9.5d33e3c0.chunk.js" "url": "/static/js/9.48749c42.chunk.js"
}, },
{ {
"revision": "68ab3b59f74192e13342be84b375b0d0", "revision": "68ab3b59f74192e13342be84b375b0d0",
"url": "/static/media/iconfont.68ab3b59.ttf" "url": "/static/media/iconfont.68ab3b59.ttf"
}, },
{ {
"revision": "3db712eedf9201f5b3b1", "revision": "d29ed2193e2219228fae",
"url": "/static/js/10.e9ff1ae6.chunk.js" "url": "/static/js/10.98079aa4.chunk.js"
}, },
{ {
"revision": "f19b88ddd7bcce5eccca", "revision": "6ca9c42a2f5783095d20",
"url": "/static/js/11.611881c2.chunk.js" "url": "/static/js/11.2e343155.chunk.js"
}, },
{ {
"revision": "81a489ac63f2f2df5ab412e0782bd54c", "revision": "81a489ac63f2f2df5ab412e0782bd54c",
...@@ -100,15 +100,15 @@ self.__precacheManifest = [ ...@@ -100,15 +100,15 @@ self.__precacheManifest = [
"url": "/static/media/iconfont.258c8d5d.eot" "url": "/static/media/iconfont.258c8d5d.eot"
}, },
{ {
"revision": "0d5583ba6d4e533d167c", "revision": "95c920ee60d416e0b9d0",
"url": "/static/css/9.7c331155.chunk.css" "url": "/static/css/9.7c331155.chunk.css"
}, },
{ {
"revision": "3db712eedf9201f5b3b1", "revision": "d29ed2193e2219228fae",
"url": "/static/css/10.1597b3e9.chunk.css" "url": "/static/css/10.1597b3e9.chunk.css"
}, },
{ {
"revision": "b022555d676826d650d52a2efca5ba32", "revision": "7cf447eb978841841a669eb3c753da3a",
"url": "/index.html" "url": "/index.html"
} }
]; ];
\ No newline at end of file
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
importScripts("https://storage.googleapis.com/workbox-cdn/releases/3.6.3/workbox-sw.js"); importScripts("https://storage.googleapis.com/workbox-cdn/releases/3.6.3/workbox-sw.js");
importScripts( importScripts(
"/precache-manifest.63d80c9f9914e4071513638cc48d12de.js" "/precache-manifest.8b296873bb1f275954348e537d354035.js"
); );
workbox.clientsClaim(); workbox.clientsClaim();
......
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
(window.webpackJsonp=window.webpackJsonp||[]).push([[11],{646:function(t,e){var r,n=[0,26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706];e.getSymbolSize=function(t){if(!t)throw new Error('"version" cannot be null or undefined');if(t<1||t>40)throw new Error('"version" should be in range from 1 to 40');return 4*t+17},e.getSymbolTotalCodewords=function(t){return n[t]},e.getBCHDigit=function(t){for(var e=0;0!==t;)e++,t>>>=1;return e},e.setToSJISFunction=function(t){if("function"!==typeof t)throw new Error('"toSJISFunc" is not a valid function.');r=t},e.isKanjiModeEnabled=function(){return"undefined"!==typeof r},e.toSJIS=function(t){return r(t)}},647:function(t,e,r){var n=r(671),o=r(672);e.NUMERIC={id:"Numeric",bit:1,ccBits:[10,12,14]},e.ALPHANUMERIC={id:"Alphanumeric",bit:2,ccBits:[9,11,13]},e.BYTE={id:"Byte",bit:4,ccBits:[8,16,16]},e.KANJI={id:"Kanji",bit:8,ccBits:[8,10,12]},e.MIXED={bit:-1},e.getCharCountIndicator=function(t,e){if(!t.ccBits)throw new Error("Invalid mode: "+t);if(!n.isValid(e))throw new Error("Invalid version: "+e);return e>=1&&e<10?t.ccBits[0]:e<27?t.ccBits[1]:t.ccBits[2]},e.getBestModeForData=function(t){return o.testNumeric(t)?e.NUMERIC:o.testAlphanumeric(t)?e.ALPHANUMERIC:o.testKanji(t)?e.KANJI:e.BYTE},e.toString=function(t){if(t&&t.id)return t.id;throw new Error("Invalid mode")},e.isValid=function(t){return t&&t.bit&&t.ccBits},e.from=function(t,r){if(e.isValid(t))return t;try{return function(t){if("string"!==typeof t)throw new Error("Param is not a string");switch(t.toLowerCase()){case"numeric":return e.NUMERIC;case"alphanumeric":return e.ALPHANUMERIC;case"kanji":return e.KANJI;case"byte":return e.BYTE;default:throw new Error("Unknown mode: "+t)}}(t)}catch(n){return r}}},648:function(t,e,r){"use strict";var n=r(658);i.TYPED_ARRAY_SUPPORT=function(){try{var t=new Uint8Array(1);return t.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===t.foo()}catch(e){return!1}}();var o=i.TYPED_ARRAY_SUPPORT?2147483647:1073741823;function i(t,e,r){return i.TYPED_ARRAY_SUPPORT||this instanceof i?"number"===typeof t?s(this,t):function(t,e,r,n){if("number"===typeof e)throw new TypeError('"value" argument must not be a number');if("undefined"!==typeof ArrayBuffer&&e instanceof ArrayBuffer)return function(t,e,r,n){if(r<0||e.byteLength<r)throw new RangeError("'offset' is out of bounds");if(e.byteLength<r+(n||0))throw new RangeError("'length' is out of bounds");var o;o=void 0===r&&void 0===n?new Uint8Array(e):void 0===n?new Uint8Array(e,r):new Uint8Array(e,r,n);i.TYPED_ARRAY_SUPPORT?o.__proto__=i.prototype:o=f(t,o);return o}(t,e,r,n);if("string"===typeof e)return function(t,e){var r=0|c(e),n=u(t,r),o=n.write(e);o!==r&&(n=n.slice(0,o));return n}(t,e);return function(t,e){if(i.isBuffer(e)){var r=0|a(e.length),n=u(t,r);return 0===n.length?n:(e.copy(n,0,0,r),n)}if(e){if("undefined"!==typeof ArrayBuffer&&e.buffer instanceof ArrayBuffer||"length"in e)return"number"!==typeof e.length||(o=e.length)!==o?u(t,0):f(t,e);if("Buffer"===e.type&&Array.isArray(e.data))return f(t,e.data)}var o;throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}(t,e)}(this,t,e,r):new i(t,e,r)}function a(t){if(t>=o)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+o.toString(16)+" bytes");return 0|t}function u(t,e){var r;return i.TYPED_ARRAY_SUPPORT?(r=new Uint8Array(e)).__proto__=i.prototype:(null===(r=t)&&(r=new i(e)),r.length=e),r}function s(t,e){var r=u(t,e<0?0:0|a(e));if(!i.TYPED_ARRAY_SUPPORT)for(var n=0;n<e;++n)r[n]=0;return r}function f(t,e){for(var r=e.length<0?0:0|a(e.length),n=u(t,r),o=0;o<r;o+=1)n[o]=255&e[o];return n}function h(t,e){var r;e=e||1/0;for(var n=t.length,o=null,i=[],a=0;a<n;++a){if((r=t.charCodeAt(a))>55295&&r<57344){if(!o){if(r>56319){(e-=3)>-1&&i.push(239,191,189);continue}if(a+1===n){(e-=3)>-1&&i.push(239,191,189);continue}o=r;continue}if(r<56320){(e-=3)>-1&&i.push(239,191,189),o=r;continue}r=65536+(o-55296<<10|r-56320)}else o&&(e-=3)>-1&&i.push(239,191,189);if(o=null,r<128){if((e-=1)<0)break;i.push(r)}else if(r<2048){if((e-=2)<0)break;i.push(r>>6|192,63&r|128)}else if(r<65536){if((e-=3)<0)break;i.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;i.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return i}function c(t){return i.isBuffer(t)?t.length:"undefined"!==typeof ArrayBuffer&&"function"===typeof ArrayBuffer.isView&&(ArrayBuffer.isView(t)||t instanceof ArrayBuffer)?t.byteLength:("string"!==typeof t&&(t=""+t),0===t.length?0:h(t).length)}i.TYPED_ARRAY_SUPPORT&&(i.prototype.__proto__=Uint8Array.prototype,i.__proto__=Uint8Array,"undefined"!==typeof Symbol&&Symbol.species&&i[Symbol.species]===i&&Object.defineProperty(i,Symbol.species,{value:null,configurable:!0,enumerable:!1,writable:!1})),i.prototype.write=function(t,e,r){void 0===e?(r=this.length,e=0):void 0===r&&"string"===typeof e?(r=this.length,e=0):isFinite(e)&&(e|=0,isFinite(r)?r|=0:r=void 0);var n=this.length-e;if((void 0===r||r>n)&&(r=n),t.length>0&&(r<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");return function(t,e,r,n){return function(t,e,r,n){for(var o=0;o<n&&!(o+r>=e.length||o>=t.length);++o)e[o+r]=t[o];return o}(h(e,t.length-r),t,r,n)}(this,t,e,r)},i.prototype.slice=function(t,e){var r,n=this.length;if((t=~~t)<0?(t+=n)<0&&(t=0):t>n&&(t=n),(e=void 0===e?n:~~e)<0?(e+=n)<0&&(e=0):e>n&&(e=n),e<t&&(e=t),i.TYPED_ARRAY_SUPPORT)(r=this.subarray(t,e)).__proto__=i.prototype;else{var o=e-t;r=new i(o,void 0);for(var a=0;a<o;++a)r[a]=this[a+t]}return r},i.prototype.copy=function(t,e,r,n){if(r||(r=0),n||0===n||(n=this.length),e>=t.length&&(e=t.length),e||(e=0),n>0&&n<r&&(n=r),n===r)return 0;if(0===t.length||0===this.length)return 0;if(e<0)throw new RangeError("targetStart out of bounds");if(r<0||r>=this.length)throw new RangeError("sourceStart out of bounds");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),t.length-e<n-r&&(n=t.length-e+r);var o,a=n-r;if(this===t&&r<e&&e<n)for(o=a-1;o>=0;--o)t[o+e]=this[o+r];else if(a<1e3||!i.TYPED_ARRAY_SUPPORT)for(o=0;o<a;++o)t[o+e]=this[o+r];else Uint8Array.prototype.set.call(t,this.subarray(r,r+a),e);return a},i.prototype.fill=function(t,e,r){if("string"===typeof t){if("string"===typeof e?(e=0,r=this.length):"string"===typeof r&&(r=this.length),1===t.length){var n=t.charCodeAt(0);n<256&&(t=n)}}else"number"===typeof t&&(t&=255);if(e<0||this.length<e||this.length<r)throw new RangeError("Out of range index");if(r<=e)return this;var o;if(e>>>=0,r=void 0===r?this.length:r>>>0,t||(t=0),"number"===typeof t)for(o=e;o<r;++o)this[o]=t;else{var a=i.isBuffer(t)?t:new i(t),u=a.length;for(o=0;o<r-e;++o)this[o+e]=a[o%u]}return this},i.concat=function(t,e){if(!n(t))throw new TypeError('"list" argument must be an Array of Buffers');if(0===t.length)return u(null,0);var r;if(void 0===e)for(e=0,r=0;r<t.length;++r)e+=t[r].length;var o=s(null,e),a=0;for(r=0;r<t.length;++r){var f=t[r];if(!i.isBuffer(f))throw new TypeError('"list" argument must be an Array of Buffers');f.copy(o,a),a+=f.length}return o},i.byteLength=c,i.prototype._isBuffer=!0,i.isBuffer=function(t){return!(null==t||!t._isBuffer)},t.exports=i},658:function(t,e){var r={}.toString;t.exports=Array.isArray||function(t){return"[object Array]"==r.call(t)}},659:function(t,e){e.L={bit:1},e.M={bit:0},e.Q={bit:3},e.H={bit:2},e.isValid=function(t){return t&&"undefined"!==typeof t.bit&&t.bit>=0&&t.bit<4},e.from=function(t,r){if(e.isValid(t))return t;try{return function(t){if("string"!==typeof t)throw new Error("Param is not a string");switch(t.toLowerCase()){case"l":case"low":return e.L;case"m":case"medium":return e.M;case"q":case"quartile":return e.Q;case"h":case"high":return e.H;default:throw new Error("Unknown EC Level: "+t)}}(t)}catch(n){return r}}},670:function(t,e,r){var n=r(659),o=[1,1,1,1,1,1,1,1,1,1,2,2,1,2,2,4,1,2,4,4,2,4,4,4,2,4,6,5,2,4,6,6,2,5,8,8,4,5,8,8,4,5,8,11,4,8,10,11,4,9,12,16,4,9,16,16,6,10,12,18,6,10,17,16,6,11,16,19,6,13,18,21,7,14,21,25,8,16,20,25,8,17,23,25,9,17,23,34,9,18,25,30,10,20,27,32,12,21,29,35,12,23,34,37,12,25,34,40,13,26,35,42,14,28,38,45,15,29,40,48,16,31,43,51,17,33,45,54,18,35,48,57,19,37,51,60,19,38,53,63,20,40,56,66,21,43,59,70,22,45,62,74,24,47,65,77,25,49,68,81],i=[7,10,13,17,10,16,22,28,15,26,36,44,20,36,52,64,26,48,72,88,36,64,96,112,40,72,108,130,48,88,132,156,60,110,160,192,72,130,192,224,80,150,224,264,96,176,260,308,104,198,288,352,120,216,320,384,132,240,360,432,144,280,408,480,168,308,448,532,180,338,504,588,196,364,546,650,224,416,600,700,224,442,644,750,252,476,690,816,270,504,750,900,300,560,810,960,312,588,870,1050,336,644,952,1110,360,700,1020,1200,390,728,1050,1260,420,784,1140,1350,450,812,1200,1440,480,868,1290,1530,510,924,1350,1620,540,980,1440,1710,570,1036,1530,1800,570,1064,1590,1890,600,1120,1680,1980,630,1204,1770,2100,660,1260,1860,2220,720,1316,1950,2310,750,1372,2040,2430];e.getBlocksCount=function(t,e){switch(e){case n.L:return o[4*(t-1)+0];case n.M:return o[4*(t-1)+1];case n.Q:return o[4*(t-1)+2];case n.H:return o[4*(t-1)+3];default:return}},e.getTotalCodewordsCount=function(t,e){switch(e){case n.L:return i[4*(t-1)+0];case n.M:return i[4*(t-1)+1];case n.Q:return i[4*(t-1)+2];case n.H:return i[4*(t-1)+3];default:return}}},671:function(t,e){e.isValid=function(t){return!isNaN(t)&&t>=1&&t<=40}},672:function(t,e){var r="(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+",n="(?:(?![A-Z0-9 $%*+\\-./:]|"+(r=r.replace(/u/g,"\\u"))+")(?:.|[\r\n]))+";e.KANJI=new RegExp(r,"g"),e.BYTE_KANJI=new RegExp("[^A-Z0-9 $%*+\\-./:]+","g"),e.BYTE=new RegExp(n,"g"),e.NUMERIC=new RegExp("[0-9]+","g"),e.ALPHANUMERIC=new RegExp("[A-Z $%*+\\-./:]+","g");var o=new RegExp("^"+r+"$"),i=new RegExp("^[0-9]+$"),a=new RegExp("^[A-Z0-9 $%*+\\-./:]+$");e.testKanji=function(t){return o.test(t)},e.testNumeric=function(t){return i.test(t)},e.testAlphanumeric=function(t){return a.test(t)}},673:function(t,e){function r(t){if("string"!==typeof t)throw new Error("Color should be defined as hex string");var e=t.slice().replace("#","").split("");if(e.length<3||5===e.length||e.length>8)throw new Error("Invalid hex color: "+t);3!==e.length&&4!==e.length||(e=Array.prototype.concat.apply([],e.map(function(t){return[t,t]}))),6===e.length&&e.push("F","F");var r=parseInt(e.join(""),16);return{r:r>>24&255,g:r>>16&255,b:r>>8&255,a:255&r,hex:"#"+e.slice(0,6).join("")}}e.getOptions=function(t){t||(t={}),t.color||(t.color={});var e="undefined"===typeof t.margin||null===t.margin||t.margin<0?4:t.margin,n=t.width&&t.width>=21?t.width:void 0,o=t.scale||4;return{width:n,scale:n?4:o,margin:e,color:{dark:r(t.color.dark||"#000000ff"),light:r(t.color.light||"#ffffffff")},type:t.type,rendererOpts:t.rendererOpts||{}}},e.getScale=function(t,e){return e.width&&e.width>=t+2*e.margin?e.width/(t+2*e.margin):e.scale},e.getImageWidth=function(t,r){var n=e.getScale(t,r);return Math.floor((t+2*r.margin)*n)},e.qrToImageData=function(t,r,n){for(var o=r.modules.size,i=r.modules.data,a=e.getScale(o,n),u=Math.floor((o+2*n.margin)*a),s=n.margin*a,f=[n.color.light,n.color.dark],h=0;h<u;h++)for(var c=0;c<u;c++){var l=4*(h*u+c),g=n.color.light;if(h>=s&&c>=s&&h<u-s&&c<u-s)g=f[i[Math.floor((h-s)/a)*o+Math.floor((c-s)/a)]?1:0];t[l++]=g.r,t[l++]=g.g,t[l++]=g.b,t[l]=g.a}}},740:function(t,e,r){var n=r(741),o=r(742),i=r(759),a=r(760);function u(t,e,r,i,a){var u=[].slice.call(arguments,1),s=u.length,f="function"===typeof u[s-1];if(!f&&!n())throw new Error("Callback required as last argument");if(!f){if(s<1)throw new Error("Too few arguments provided");return 1===s?(r=e,e=i=void 0):2!==s||e.getContext||(i=r,r=e,e=void 0),new Promise(function(n,a){try{var u=o.create(r,i);n(t(u,e,i))}catch(s){a(s)}})}if(s<2)throw new Error("Too few arguments provided");2===s?(a=r,r=e,e=i=void 0):3===s&&(e.getContext&&"undefined"===typeof a?(a=i,i=void 0):(a=i,i=r,r=e,e=void 0));try{var h=o.create(r,i);a(null,t(h,e,i))}catch(c){a(c)}}e.create=o.create,e.toCanvas=u.bind(null,i.render),e.toDataURL=u.bind(null,i.renderToDataURL),e.toString=u.bind(null,function(t,e,r){return a.render(t,r)})},741:function(t,e){t.exports=function(){return"function"===typeof Promise&&Promise.prototype&&Promise.prototype.then}},742:function(t,e,r){var n=r(648),o=r(646),i=r(659),a=r(743),u=r(744),s=r(745),f=r(746),h=r(747),c=r(670),l=r(748),g=r(751),d=r(752),p=r(647),v=r(753),w=r(658);function y(t,e,r){var n,o,i=t.size,a=d.getEncodedBits(e,r);for(n=0;n<15;n++)o=1===(a>>n&1),n<6?t.set(n,8,o,!0):n<8?t.set(n+1,8,o,!0):t.set(i-15+n,8,o,!0),n<8?t.set(8,i-n-1,o,!0):n<9?t.set(8,15-n-1+1,o,!0):t.set(8,15-n-1,o,!0);t.set(i-8,8,1,!0)}function m(t,e,r){var i=new a;r.forEach(function(e){i.put(e.mode.bit,4),i.put(e.getLength(),p.getCharCountIndicator(e.mode,t)),e.write(i)});var u=8*(o.getSymbolTotalCodewords(t)-c.getTotalCodewordsCount(t,e));for(i.getLengthInBits()+4<=u&&i.put(0,4);i.getLengthInBits()%8!==0;)i.putBit(0);for(var s=(u-i.getLengthInBits())/8,f=0;f<s;f++)i.put(f%2?17:236,8);return function(t,e,r){for(var i=o.getSymbolTotalCodewords(e),a=c.getTotalCodewordsCount(e,r),u=i-a,s=c.getBlocksCount(e,r),f=s-i%s,h=Math.floor(i/s),g=Math.floor(u/s),d=g+1,p=h-g,v=new l(p),w=0,y=new Array(s),m=new Array(s),E=0,A=new n(t.buffer),B=0;B<s;B++){var b=B<f?g:d;y[B]=A.slice(w,w+b),m[B]=v.encode(y[B]),w+=b,E=Math.max(E,b)}var P,R,T=new n(i),C=0;for(P=0;P<E;P++)for(R=0;R<s;R++)P<y[R].length&&(T[C++]=y[R][P]);for(P=0;P<p;P++)for(R=0;R<s;R++)T[C++]=m[R][P];return T}(i,t,e)}function E(t,e,r,n){var i;if(w(t))i=v.fromArray(t);else{if("string"!==typeof t)throw new Error("Invalid data");var a=e;if(!a){var c=v.rawSplit(t);a=g.getBestVersionForData(c,r)}i=v.fromString(t,a||40)}var l=g.getBestVersionForData(i,r);if(!l)throw new Error("The amount of data is too big to be stored in a QR Code");if(e){if(e<l)throw new Error("\nThe chosen QR Code version cannot contain this amount of data.\nMinimum version required to store current data is: "+l+".\n")}else e=l;var d=m(e,r,i),p=o.getSymbolSize(e),E=new u(p);return function(t,e){for(var r=t.size,n=f.getPositions(e),o=0;o<n.length;o++)for(var i=n[o][0],a=n[o][1],u=-1;u<=7;u++)if(!(i+u<=-1||r<=i+u))for(var s=-1;s<=7;s++)a+s<=-1||r<=a+s||(u>=0&&u<=6&&(0===s||6===s)||s>=0&&s<=6&&(0===u||6===u)||u>=2&&u<=4&&s>=2&&s<=4?t.set(i+u,a+s,!0,!0):t.set(i+u,a+s,!1,!0))}(E,e),function(t){for(var e=t.size,r=8;r<e-8;r++){var n=r%2===0;t.set(r,6,n,!0),t.set(6,r,n,!0)}}(E),function(t,e){for(var r=s.getPositions(e),n=0;n<r.length;n++)for(var o=r[n][0],i=r[n][1],a=-2;a<=2;a++)for(var u=-2;u<=2;u++)-2===a||2===a||-2===u||2===u||0===a&&0===u?t.set(o+a,i+u,!0,!0):t.set(o+a,i+u,!1,!0)}(E,e),y(E,r,0),e>=7&&function(t,e){for(var r,n,o,i=t.size,a=g.getEncodedBits(e),u=0;u<18;u++)r=Math.floor(u/3),n=u%3+i-8-3,o=1===(a>>u&1),t.set(r,n,o,!0),t.set(n,r,o,!0)}(E,e),function(t,e){for(var r=t.size,n=-1,o=r-1,i=7,a=0,u=r-1;u>0;u-=2)for(6===u&&u--;;){for(var s=0;s<2;s++)if(!t.isReserved(o,u-s)){var f=!1;a<e.length&&(f=1===(e[a]>>>i&1)),t.set(o,u-s,f),-1===--i&&(a++,i=7)}if((o+=n)<0||r<=o){o-=n,n=-n;break}}}(E,d),isNaN(n)&&(n=h.getBestMask(E,y.bind(null,E,r))),h.applyMask(n,E),y(E,r,n),{modules:E,version:e,errorCorrectionLevel:r,maskPattern:n,segments:i}}e.create=function(t,e){if("undefined"===typeof t||""===t)throw new Error("No input text");var r,n,a=i.M;return"undefined"!==typeof e&&(a=i.from(e.errorCorrectionLevel,i.M),r=g.from(e.version),n=h.from(e.maskPattern),e.toSJISFunc&&o.setToSJISFunction(e.toSJISFunc)),E(t,r,a,n)}},743:function(t,e){function r(){this.buffer=[],this.length=0}r.prototype={get:function(t){var e=Math.floor(t/8);return 1===(this.buffer[e]>>>7-t%8&1)},put:function(t,e){for(var r=0;r<e;r++)this.putBit(1===(t>>>e-r-1&1))},getLengthInBits:function(){return this.length},putBit:function(t){var e=Math.floor(this.length/8);this.buffer.length<=e&&this.buffer.push(0),t&&(this.buffer[e]|=128>>>this.length%8),this.length++}},t.exports=r},744:function(t,e,r){var n=r(648);function o(t){if(!t||t<1)throw new Error("BitMatrix size must be defined and greater than 0");this.size=t,this.data=new n(t*t),this.data.fill(0),this.reservedBit=new n(t*t),this.reservedBit.fill(0)}o.prototype.set=function(t,e,r,n){var o=t*this.size+e;this.data[o]=r,n&&(this.reservedBit[o]=!0)},o.prototype.get=function(t,e){return this.data[t*this.size+e]},o.prototype.xor=function(t,e,r){this.data[t*this.size+e]^=r},o.prototype.isReserved=function(t,e){return this.reservedBit[t*this.size+e]},t.exports=o},745:function(t,e,r){var n=r(646).getSymbolSize;e.getRowColCoords=function(t){if(1===t)return[];for(var e=Math.floor(t/7)+2,r=n(t),o=145===r?26:2*Math.ceil((r-13)/(2*e-2)),i=[r-7],a=1;a<e-1;a++)i[a]=i[a-1]-o;return i.push(6),i.reverse()},e.getPositions=function(t){for(var r=[],n=e.getRowColCoords(t),o=n.length,i=0;i<o;i++)for(var a=0;a<o;a++)0===i&&0===a||0===i&&a===o-1||i===o-1&&0===a||r.push([n[i],n[a]]);return r}},746:function(t,e,r){var n=r(646).getSymbolSize;e.getPositions=function(t){var e=n(t);return[[0,0],[e-7,0],[0,e-7]]}},747:function(t,e){e.Patterns={PATTERN000:0,PATTERN001:1,PATTERN010:2,PATTERN011:3,PATTERN100:4,PATTERN101:5,PATTERN110:6,PATTERN111:7};var r=3,n=3,o=40,i=10;function a(t,r,n){switch(t){case e.Patterns.PATTERN000:return(r+n)%2===0;case e.Patterns.PATTERN001:return r%2===0;case e.Patterns.PATTERN010:return n%3===0;case e.Patterns.PATTERN011:return(r+n)%3===0;case e.Patterns.PATTERN100:return(Math.floor(r/2)+Math.floor(n/3))%2===0;case e.Patterns.PATTERN101:return r*n%2+r*n%3===0;case e.Patterns.PATTERN110:return(r*n%2+r*n%3)%2===0;case e.Patterns.PATTERN111:return(r*n%3+(r+n)%2)%2===0;default:throw new Error("bad maskPattern:"+t)}}e.isValid=function(t){return null!=t&&""!==t&&!isNaN(t)&&t>=0&&t<=7},e.from=function(t){return e.isValid(t)?parseInt(t,10):void 0},e.getPenaltyN1=function(t){for(var e=t.size,n=0,o=0,i=0,a=null,u=null,s=0;s<e;s++){o=i=0,a=u=null;for(var f=0;f<e;f++){var h=t.get(s,f);h===a?o++:(o>=5&&(n+=r+(o-5)),a=h,o=1),(h=t.get(f,s))===u?i++:(i>=5&&(n+=r+(i-5)),u=h,i=1)}o>=5&&(n+=r+(o-5)),i>=5&&(n+=r+(i-5))}return n},e.getPenaltyN2=function(t){for(var e=t.size,r=0,o=0;o<e-1;o++)for(var i=0;i<e-1;i++){var a=t.get(o,i)+t.get(o,i+1)+t.get(o+1,i)+t.get(o+1,i+1);4!==a&&0!==a||r++}return r*n},e.getPenaltyN3=function(t){for(var e=t.size,r=0,n=0,i=0,a=0;a<e;a++){n=i=0;for(var u=0;u<e;u++)n=n<<1&2047|t.get(a,u),u>=10&&(1488===n||93===n)&&r++,i=i<<1&2047|t.get(u,a),u>=10&&(1488===i||93===i)&&r++}return r*o},e.getPenaltyN4=function(t){for(var e=0,r=t.data.length,n=0;n<r;n++)e+=t.data[n];return Math.abs(Math.ceil(100*e/r/5)-10)*i},e.applyMask=function(t,e){for(var r=e.size,n=0;n<r;n++)for(var o=0;o<r;o++)e.isReserved(o,n)||e.xor(o,n,a(t,o,n))},e.getBestMask=function(t,r){for(var n=Object.keys(e.Patterns).length,o=0,i=1/0,a=0;a<n;a++){r(a),e.applyMask(a,t);var u=e.getPenaltyN1(t)+e.getPenaltyN2(t)+e.getPenaltyN3(t)+e.getPenaltyN4(t);e.applyMask(a,t),u<i&&(i=u,o=a)}return o}},748:function(t,e,r){var n=r(648),o=r(749);function i(t){this.genPoly=void 0,this.degree=t,this.degree&&this.initialize(this.degree)}i.prototype.initialize=function(t){this.degree=t,this.genPoly=o.generateECPolynomial(this.degree)},i.prototype.encode=function(t){if(!this.genPoly)throw new Error("Encoder not initialized");var e=new n(this.degree);e.fill(0);var r=n.concat([t,e],t.length+this.degree),i=o.mod(r,this.genPoly),a=this.degree-i.length;if(a>0){var u=new n(this.degree);return u.fill(0),i.copy(u,a),u}return i},t.exports=i},749:function(t,e,r){var n=r(648),o=r(750);e.mul=function(t,e){var r=new n(t.length+e.length-1);r.fill(0);for(var i=0;i<t.length;i++)for(var a=0;a<e.length;a++)r[i+a]^=o.mul(t[i],e[a]);return r},e.mod=function(t,e){for(var r=new n(t);r.length-e.length>=0;){for(var i=r[0],a=0;a<e.length;a++)r[a]^=o.mul(e[a],i);for(var u=0;u<r.length&&0===r[u];)u++;r=r.slice(u)}return r},e.generateECPolynomial=function(t){for(var r=new n([1]),i=0;i<t;i++)r=e.mul(r,[1,o.exp(i)]);return r}},750:function(t,e,r){var n=r(648);if(n.alloc)var o=n.alloc(512),i=n.alloc(256);else o=new n(512),i=new n(256);!function(){for(var t=1,e=0;e<255;e++)o[e]=t,i[t]=e,256&(t<<=1)&&(t^=285);for(e=255;e<512;e++)o[e]=o[e-255]}(),e.log=function(t){if(t<1)throw new Error("log("+t+")");return i[t]},e.exp=function(t){return o[t]},e.mul=function(t,e){return 0===t||0===e?0:o[i[t]+i[e]]}},751:function(t,e,r){var n=r(646),o=r(670),i=r(659),a=r(647),u=r(671),s=r(658),f=n.getBCHDigit(7973);function h(t,e){return a.getCharCountIndicator(t,e)+4}function c(t,e){var r=0;return t.forEach(function(t){var n=h(t.mode,e);r+=n+t.getBitsLength()}),r}e.from=function(t,e){return u.isValid(t)?parseInt(t,10):e},e.getCapacity=function(t,e,r){if(!u.isValid(t))throw new Error("Invalid QR Code version");"undefined"===typeof r&&(r=a.BYTE);var i=8*(n.getSymbolTotalCodewords(t)-o.getTotalCodewordsCount(t,e));if(r===a.MIXED)return i;var s=i-h(r,t);switch(r){case a.NUMERIC:return Math.floor(s/10*3);case a.ALPHANUMERIC:return Math.floor(s/11*2);case a.KANJI:return Math.floor(s/13);case a.BYTE:default:return Math.floor(s/8)}},e.getBestVersionForData=function(t,r){var n,o=i.from(r,i.M);if(s(t)){if(t.length>1)return function(t,r){for(var n=1;n<=40;n++)if(c(t,n)<=e.getCapacity(n,r,a.MIXED))return n}(t,o);if(0===t.length)return 1;n=t[0]}else n=t;return function(t,r,n){for(var o=1;o<=40;o++)if(r<=e.getCapacity(o,n,t))return o}(n.mode,n.getLength(),o)},e.getEncodedBits=function(t){if(!u.isValid(t)||t<7)throw new Error("Invalid QR Code version");for(var e=t<<12;n.getBCHDigit(e)-f>=0;)e^=7973<<n.getBCHDigit(e)-f;return t<<12|e}},752:function(t,e,r){var n=r(646),o=n.getBCHDigit(1335);e.getEncodedBits=function(t,e){for(var r=t.bit<<3|e,i=r<<10;n.getBCHDigit(i)-o>=0;)i^=1335<<n.getBCHDigit(i)-o;return 21522^(r<<10|i)}},753:function(t,e,r){var n=r(647),o=r(754),i=r(755),a=r(756),u=r(757),s=r(672),f=r(646),h=r(758);function c(t){return unescape(encodeURIComponent(t)).length}function l(t,e,r){for(var n,o=[];null!==(n=t.exec(r));)o.push({data:n[0],index:n.index,mode:e,length:n[0].length});return o}function g(t){var e,r,o=l(s.NUMERIC,n.NUMERIC,t),i=l(s.ALPHANUMERIC,n.ALPHANUMERIC,t);return f.isKanjiModeEnabled()?(e=l(s.BYTE,n.BYTE,t),r=l(s.KANJI,n.KANJI,t)):(e=l(s.BYTE_KANJI,n.BYTE,t),r=[]),o.concat(i,e,r).sort(function(t,e){return t.index-e.index}).map(function(t){return{data:t.data,mode:t.mode,length:t.length}})}function d(t,e){switch(e){case n.NUMERIC:return o.getBitsLength(t);case n.ALPHANUMERIC:return i.getBitsLength(t);case n.KANJI:return u.getBitsLength(t);case n.BYTE:return a.getBitsLength(t)}}function p(t,e){var r,s=n.getBestModeForData(t);if((r=n.from(e,s))!==n.BYTE&&r.bit<s.bit)throw new Error('"'+t+'" cannot be encoded with mode '+n.toString(r)+".\n Suggested mode is: "+n.toString(s));switch(r!==n.KANJI||f.isKanjiModeEnabled()||(r=n.BYTE),r){case n.NUMERIC:return new o(t);case n.ALPHANUMERIC:return new i(t);case n.KANJI:return new u(t);case n.BYTE:return new a(t)}}e.fromArray=function(t){return t.reduce(function(t,e){return"string"===typeof e?t.push(p(e,null)):e.data&&t.push(p(e.data,e.mode)),t},[])},e.fromString=function(t,r){for(var o=function(t,e){for(var r={},o={start:{}},i=["start"],a=0;a<t.length;a++){for(var u=t[a],s=[],f=0;f<u.length;f++){var h=u[f],c=""+a+f;s.push(c),r[c]={node:h,lastCount:0},o[c]={};for(var l=0;l<i.length;l++){var g=i[l];r[g]&&r[g].node.mode===h.mode?(o[g][c]=d(r[g].lastCount+h.length,h.mode)-d(r[g].lastCount,h.mode),r[g].lastCount+=h.length):(r[g]&&(r[g].lastCount=h.length),o[g][c]=d(h.length,h.mode)+4+n.getCharCountIndicator(h.mode,e))}}i=s}for(l=0;l<i.length;l++)o[i[l]].end=0;return{map:o,table:r}}(function(t){for(var e=[],r=0;r<t.length;r++){var o=t[r];switch(o.mode){case n.NUMERIC:e.push([o,{data:o.data,mode:n.ALPHANUMERIC,length:o.length},{data:o.data,mode:n.BYTE,length:o.length}]);break;case n.ALPHANUMERIC:e.push([o,{data:o.data,mode:n.BYTE,length:o.length}]);break;case n.KANJI:e.push([o,{data:o.data,mode:n.BYTE,length:c(o.data)}]);break;case n.BYTE:e.push([{data:o.data,mode:n.BYTE,length:c(o.data)}])}}return e}(g(t,f.isKanjiModeEnabled())),r),i=h.find_path(o.map,"start","end"),a=[],u=1;u<i.length-1;u++)a.push(o.table[i[u]].node);return e.fromArray(function(t){return t.reduce(function(t,e){var r=t.length-1>=0?t[t.length-1]:null;return r&&r.mode===e.mode?(t[t.length-1].data+=e.data,t):(t.push(e),t)},[])}(a))},e.rawSplit=function(t){return e.fromArray(g(t,f.isKanjiModeEnabled()))}},754:function(t,e,r){var n=r(647);function o(t){this.mode=n.NUMERIC,this.data=t.toString()}o.getBitsLength=function(t){return 10*Math.floor(t/3)+(t%3?t%3*3+1:0)},o.prototype.getLength=function(){return this.data.length},o.prototype.getBitsLength=function(){return o.getBitsLength(this.data.length)},o.prototype.write=function(t){var e,r,n;for(e=0;e+3<=this.data.length;e+=3)r=this.data.substr(e,3),n=parseInt(r,10),t.put(n,10);var o=this.data.length-e;o>0&&(r=this.data.substr(e),n=parseInt(r,10),t.put(n,3*o+1))},t.exports=o},755:function(t,e,r){var n=r(647),o=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"," ","$","%","*","+","-",".","/",":"];function i(t){this.mode=n.ALPHANUMERIC,this.data=t}i.getBitsLength=function(t){return 11*Math.floor(t/2)+t%2*6},i.prototype.getLength=function(){return this.data.length},i.prototype.getBitsLength=function(){return i.getBitsLength(this.data.length)},i.prototype.write=function(t){var e;for(e=0;e+2<=this.data.length;e+=2){var r=45*o.indexOf(this.data[e]);r+=o.indexOf(this.data[e+1]),t.put(r,11)}this.data.length%2&&t.put(o.indexOf(this.data[e]),6)},t.exports=i},756:function(t,e,r){var n=r(648),o=r(647);function i(t){this.mode=o.BYTE,this.data=new n(t)}i.getBitsLength=function(t){return 8*t},i.prototype.getLength=function(){return this.data.length},i.prototype.getBitsLength=function(){return i.getBitsLength(this.data.length)},i.prototype.write=function(t){for(var e=0,r=this.data.length;e<r;e++)t.put(this.data[e],8)},t.exports=i},757:function(t,e,r){var n=r(647),o=r(646);function i(t){this.mode=n.KANJI,this.data=t}i.getBitsLength=function(t){return 13*t},i.prototype.getLength=function(){return this.data.length},i.prototype.getBitsLength=function(){return i.getBitsLength(this.data.length)},i.prototype.write=function(t){var e;for(e=0;e<this.data.length;e++){var r=o.toSJIS(this.data[e]);if(r>=33088&&r<=40956)r-=33088;else{if(!(r>=57408&&r<=60351))throw new Error("Invalid SJIS character: "+this.data[e]+"\nMake sure your charset is UTF-8");r-=49472}r=192*(r>>>8&255)+(255&r),t.put(r,13)}},t.exports=i},758:function(t,e,r){"use strict";var n={single_source_shortest_paths:function(t,e,r){var o={},i={};i[e]=0;var a,u,s,f,h,c,l,g=n.PriorityQueue.make();for(g.push(e,0);!g.empty();)for(s in u=(a=g.pop()).value,f=a.cost,h=t[u]||{})h.hasOwnProperty(s)&&(c=f+h[s],l=i[s],("undefined"===typeof i[s]||l>c)&&(i[s]=c,g.push(s,c),o[s]=u));if("undefined"!==typeof r&&"undefined"===typeof i[r]){var d=["Could not find a path from ",e," to ",r,"."].join("");throw new Error(d)}return o},extract_shortest_path_from_predecessor_list:function(t,e){for(var r=[],n=e;n;)r.push(n),t[n],n=t[n];return r.reverse(),r},find_path:function(t,e,r){var o=n.single_source_shortest_paths(t,e,r);return n.extract_shortest_path_from_predecessor_list(o,r)},PriorityQueue:{make:function(t){var e,r=n.PriorityQueue,o={};for(e in t=t||{},r)r.hasOwnProperty(e)&&(o[e]=r[e]);return o.queue=[],o.sorter=t.sorter||r.default_sorter,o},default_sorter:function(t,e){return t.cost-e.cost},push:function(t,e){var r={value:t,cost:e};this.queue.push(r),this.queue.sort(this.sorter)},pop:function(){return this.queue.shift()},empty:function(){return 0===this.queue.length}}};t.exports=n},759:function(t,e,r){var n=r(673);e.render=function(t,e,r){var o=r,i=e;"undefined"!==typeof o||e&&e.getContext||(o=e,e=void 0),e||(i=function(){try{return document.createElement("canvas")}catch(t){throw new Error("You need to specify a canvas element")}}()),o=n.getOptions(o);var a=n.getImageWidth(t.modules.size,o),u=i.getContext("2d"),s=u.createImageData(a,a);return n.qrToImageData(s.data,t,o),function(t,e,r){t.clearRect(0,0,e.width,e.height),e.style||(e.style={}),e.height=r,e.width=r,e.style.height=r+"px",e.style.width=r+"px"}(u,i,a),u.putImageData(s,0,0),i},e.renderToDataURL=function(t,r,n){var o=n;"undefined"!==typeof o||r&&r.getContext||(o=r,r=void 0),o||(o={});var i=e.render(t,r,o),a=o.type||"image/png",u=o.rendererOpts||{};return i.toDataURL(a,u.quality)}},760:function(t,e,r){var n=r(673);function o(t,e){var r=t.a/255,n=e+'="'+t.hex+'"';return r<1?n+" "+e+'-opacity="'+r.toFixed(2).slice(1)+'"':n}function i(t,e,r){var n=t+e;return"undefined"!==typeof r&&(n+=" "+r),n}e.render=function(t,e,r){var a=n.getOptions(e),u=t.modules.size,s=t.modules.data,f=u+2*a.margin,h=a.color.light.a?"<path "+o(a.color.light,"fill")+' d="M0 0h'+f+"v"+f+'H0z"/>':"",c="<path "+o(a.color.dark,"stroke")+' d="'+function(t,e,r){for(var n="",o=0,a=!1,u=0,s=0;s<t.length;s++){var f=Math.floor(s%e),h=Math.floor(s/e);f||a||(a=!0),t[s]?(u++,s>0&&f>0&&t[s-1]||(n+=a?i("M",f+r,.5+h+r):i("m",o,0),o=0,a=!1),f+1<e&&t[s+1]||(n+=i("h",u),u=0)):o++}return n}(s,u,a.margin)+'"/>',l='viewBox="0 0 '+f+" "+f+'"',g='<svg xmlns="http://www.w3.org/2000/svg" '+(a.width?'width="'+a.width+'" height="'+a.width+'" ':"")+l+' shape-rendering="crispEdges">'+h+c+"</svg>\n";return"function"===typeof r&&r(null,g),g}}}]); (window.webpackJsonp=window.webpackJsonp||[]).push([[11],{647:function(t,e){var r,n=[0,26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706];e.getSymbolSize=function(t){if(!t)throw new Error('"version" cannot be null or undefined');if(t<1||t>40)throw new Error('"version" should be in range from 1 to 40');return 4*t+17},e.getSymbolTotalCodewords=function(t){return n[t]},e.getBCHDigit=function(t){for(var e=0;0!==t;)e++,t>>>=1;return e},e.setToSJISFunction=function(t){if("function"!==typeof t)throw new Error('"toSJISFunc" is not a valid function.');r=t},e.isKanjiModeEnabled=function(){return"undefined"!==typeof r},e.toSJIS=function(t){return r(t)}},648:function(t,e,r){var n=r(672),o=r(673);e.NUMERIC={id:"Numeric",bit:1,ccBits:[10,12,14]},e.ALPHANUMERIC={id:"Alphanumeric",bit:2,ccBits:[9,11,13]},e.BYTE={id:"Byte",bit:4,ccBits:[8,16,16]},e.KANJI={id:"Kanji",bit:8,ccBits:[8,10,12]},e.MIXED={bit:-1},e.getCharCountIndicator=function(t,e){if(!t.ccBits)throw new Error("Invalid mode: "+t);if(!n.isValid(e))throw new Error("Invalid version: "+e);return e>=1&&e<10?t.ccBits[0]:e<27?t.ccBits[1]:t.ccBits[2]},e.getBestModeForData=function(t){return o.testNumeric(t)?e.NUMERIC:o.testAlphanumeric(t)?e.ALPHANUMERIC:o.testKanji(t)?e.KANJI:e.BYTE},e.toString=function(t){if(t&&t.id)return t.id;throw new Error("Invalid mode")},e.isValid=function(t){return t&&t.bit&&t.ccBits},e.from=function(t,r){if(e.isValid(t))return t;try{return function(t){if("string"!==typeof t)throw new Error("Param is not a string");switch(t.toLowerCase()){case"numeric":return e.NUMERIC;case"alphanumeric":return e.ALPHANUMERIC;case"kanji":return e.KANJI;case"byte":return e.BYTE;default:throw new Error("Unknown mode: "+t)}}(t)}catch(n){return r}}},649:function(t,e,r){"use strict";var n=r(659);i.TYPED_ARRAY_SUPPORT=function(){try{var t=new Uint8Array(1);return t.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===t.foo()}catch(e){return!1}}();var o=i.TYPED_ARRAY_SUPPORT?2147483647:1073741823;function i(t,e,r){return i.TYPED_ARRAY_SUPPORT||this instanceof i?"number"===typeof t?s(this,t):function(t,e,r,n){if("number"===typeof e)throw new TypeError('"value" argument must not be a number');if("undefined"!==typeof ArrayBuffer&&e instanceof ArrayBuffer)return function(t,e,r,n){if(r<0||e.byteLength<r)throw new RangeError("'offset' is out of bounds");if(e.byteLength<r+(n||0))throw new RangeError("'length' is out of bounds");var o;o=void 0===r&&void 0===n?new Uint8Array(e):void 0===n?new Uint8Array(e,r):new Uint8Array(e,r,n);i.TYPED_ARRAY_SUPPORT?o.__proto__=i.prototype:o=f(t,o);return o}(t,e,r,n);if("string"===typeof e)return function(t,e){var r=0|c(e),n=u(t,r),o=n.write(e);o!==r&&(n=n.slice(0,o));return n}(t,e);return function(t,e){if(i.isBuffer(e)){var r=0|a(e.length),n=u(t,r);return 0===n.length?n:(e.copy(n,0,0,r),n)}if(e){if("undefined"!==typeof ArrayBuffer&&e.buffer instanceof ArrayBuffer||"length"in e)return"number"!==typeof e.length||(o=e.length)!==o?u(t,0):f(t,e);if("Buffer"===e.type&&Array.isArray(e.data))return f(t,e.data)}var o;throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}(t,e)}(this,t,e,r):new i(t,e,r)}function a(t){if(t>=o)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+o.toString(16)+" bytes");return 0|t}function u(t,e){var r;return i.TYPED_ARRAY_SUPPORT?(r=new Uint8Array(e)).__proto__=i.prototype:(null===(r=t)&&(r=new i(e)),r.length=e),r}function s(t,e){var r=u(t,e<0?0:0|a(e));if(!i.TYPED_ARRAY_SUPPORT)for(var n=0;n<e;++n)r[n]=0;return r}function f(t,e){for(var r=e.length<0?0:0|a(e.length),n=u(t,r),o=0;o<r;o+=1)n[o]=255&e[o];return n}function h(t,e){var r;e=e||1/0;for(var n=t.length,o=null,i=[],a=0;a<n;++a){if((r=t.charCodeAt(a))>55295&&r<57344){if(!o){if(r>56319){(e-=3)>-1&&i.push(239,191,189);continue}if(a+1===n){(e-=3)>-1&&i.push(239,191,189);continue}o=r;continue}if(r<56320){(e-=3)>-1&&i.push(239,191,189),o=r;continue}r=65536+(o-55296<<10|r-56320)}else o&&(e-=3)>-1&&i.push(239,191,189);if(o=null,r<128){if((e-=1)<0)break;i.push(r)}else if(r<2048){if((e-=2)<0)break;i.push(r>>6|192,63&r|128)}else if(r<65536){if((e-=3)<0)break;i.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;i.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return i}function c(t){return i.isBuffer(t)?t.length:"undefined"!==typeof ArrayBuffer&&"function"===typeof ArrayBuffer.isView&&(ArrayBuffer.isView(t)||t instanceof ArrayBuffer)?t.byteLength:("string"!==typeof t&&(t=""+t),0===t.length?0:h(t).length)}i.TYPED_ARRAY_SUPPORT&&(i.prototype.__proto__=Uint8Array.prototype,i.__proto__=Uint8Array,"undefined"!==typeof Symbol&&Symbol.species&&i[Symbol.species]===i&&Object.defineProperty(i,Symbol.species,{value:null,configurable:!0,enumerable:!1,writable:!1})),i.prototype.write=function(t,e,r){void 0===e?(r=this.length,e=0):void 0===r&&"string"===typeof e?(r=this.length,e=0):isFinite(e)&&(e|=0,isFinite(r)?r|=0:r=void 0);var n=this.length-e;if((void 0===r||r>n)&&(r=n),t.length>0&&(r<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");return function(t,e,r,n){return function(t,e,r,n){for(var o=0;o<n&&!(o+r>=e.length||o>=t.length);++o)e[o+r]=t[o];return o}(h(e,t.length-r),t,r,n)}(this,t,e,r)},i.prototype.slice=function(t,e){var r,n=this.length;if((t=~~t)<0?(t+=n)<0&&(t=0):t>n&&(t=n),(e=void 0===e?n:~~e)<0?(e+=n)<0&&(e=0):e>n&&(e=n),e<t&&(e=t),i.TYPED_ARRAY_SUPPORT)(r=this.subarray(t,e)).__proto__=i.prototype;else{var o=e-t;r=new i(o,void 0);for(var a=0;a<o;++a)r[a]=this[a+t]}return r},i.prototype.copy=function(t,e,r,n){if(r||(r=0),n||0===n||(n=this.length),e>=t.length&&(e=t.length),e||(e=0),n>0&&n<r&&(n=r),n===r)return 0;if(0===t.length||0===this.length)return 0;if(e<0)throw new RangeError("targetStart out of bounds");if(r<0||r>=this.length)throw new RangeError("sourceStart out of bounds");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),t.length-e<n-r&&(n=t.length-e+r);var o,a=n-r;if(this===t&&r<e&&e<n)for(o=a-1;o>=0;--o)t[o+e]=this[o+r];else if(a<1e3||!i.TYPED_ARRAY_SUPPORT)for(o=0;o<a;++o)t[o+e]=this[o+r];else Uint8Array.prototype.set.call(t,this.subarray(r,r+a),e);return a},i.prototype.fill=function(t,e,r){if("string"===typeof t){if("string"===typeof e?(e=0,r=this.length):"string"===typeof r&&(r=this.length),1===t.length){var n=t.charCodeAt(0);n<256&&(t=n)}}else"number"===typeof t&&(t&=255);if(e<0||this.length<e||this.length<r)throw new RangeError("Out of range index");if(r<=e)return this;var o;if(e>>>=0,r=void 0===r?this.length:r>>>0,t||(t=0),"number"===typeof t)for(o=e;o<r;++o)this[o]=t;else{var a=i.isBuffer(t)?t:new i(t),u=a.length;for(o=0;o<r-e;++o)this[o+e]=a[o%u]}return this},i.concat=function(t,e){if(!n(t))throw new TypeError('"list" argument must be an Array of Buffers');if(0===t.length)return u(null,0);var r;if(void 0===e)for(e=0,r=0;r<t.length;++r)e+=t[r].length;var o=s(null,e),a=0;for(r=0;r<t.length;++r){var f=t[r];if(!i.isBuffer(f))throw new TypeError('"list" argument must be an Array of Buffers');f.copy(o,a),a+=f.length}return o},i.byteLength=c,i.prototype._isBuffer=!0,i.isBuffer=function(t){return!(null==t||!t._isBuffer)},t.exports=i},659:function(t,e){var r={}.toString;t.exports=Array.isArray||function(t){return"[object Array]"==r.call(t)}},660:function(t,e){e.L={bit:1},e.M={bit:0},e.Q={bit:3},e.H={bit:2},e.isValid=function(t){return t&&"undefined"!==typeof t.bit&&t.bit>=0&&t.bit<4},e.from=function(t,r){if(e.isValid(t))return t;try{return function(t){if("string"!==typeof t)throw new Error("Param is not a string");switch(t.toLowerCase()){case"l":case"low":return e.L;case"m":case"medium":return e.M;case"q":case"quartile":return e.Q;case"h":case"high":return e.H;default:throw new Error("Unknown EC Level: "+t)}}(t)}catch(n){return r}}},671:function(t,e,r){var n=r(660),o=[1,1,1,1,1,1,1,1,1,1,2,2,1,2,2,4,1,2,4,4,2,4,4,4,2,4,6,5,2,4,6,6,2,5,8,8,4,5,8,8,4,5,8,11,4,8,10,11,4,9,12,16,4,9,16,16,6,10,12,18,6,10,17,16,6,11,16,19,6,13,18,21,7,14,21,25,8,16,20,25,8,17,23,25,9,17,23,34,9,18,25,30,10,20,27,32,12,21,29,35,12,23,34,37,12,25,34,40,13,26,35,42,14,28,38,45,15,29,40,48,16,31,43,51,17,33,45,54,18,35,48,57,19,37,51,60,19,38,53,63,20,40,56,66,21,43,59,70,22,45,62,74,24,47,65,77,25,49,68,81],i=[7,10,13,17,10,16,22,28,15,26,36,44,20,36,52,64,26,48,72,88,36,64,96,112,40,72,108,130,48,88,132,156,60,110,160,192,72,130,192,224,80,150,224,264,96,176,260,308,104,198,288,352,120,216,320,384,132,240,360,432,144,280,408,480,168,308,448,532,180,338,504,588,196,364,546,650,224,416,600,700,224,442,644,750,252,476,690,816,270,504,750,900,300,560,810,960,312,588,870,1050,336,644,952,1110,360,700,1020,1200,390,728,1050,1260,420,784,1140,1350,450,812,1200,1440,480,868,1290,1530,510,924,1350,1620,540,980,1440,1710,570,1036,1530,1800,570,1064,1590,1890,600,1120,1680,1980,630,1204,1770,2100,660,1260,1860,2220,720,1316,1950,2310,750,1372,2040,2430];e.getBlocksCount=function(t,e){switch(e){case n.L:return o[4*(t-1)+0];case n.M:return o[4*(t-1)+1];case n.Q:return o[4*(t-1)+2];case n.H:return o[4*(t-1)+3];default:return}},e.getTotalCodewordsCount=function(t,e){switch(e){case n.L:return i[4*(t-1)+0];case n.M:return i[4*(t-1)+1];case n.Q:return i[4*(t-1)+2];case n.H:return i[4*(t-1)+3];default:return}}},672:function(t,e){e.isValid=function(t){return!isNaN(t)&&t>=1&&t<=40}},673:function(t,e){var r="(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+",n="(?:(?![A-Z0-9 $%*+\\-./:]|"+(r=r.replace(/u/g,"\\u"))+")(?:.|[\r\n]))+";e.KANJI=new RegExp(r,"g"),e.BYTE_KANJI=new RegExp("[^A-Z0-9 $%*+\\-./:]+","g"),e.BYTE=new RegExp(n,"g"),e.NUMERIC=new RegExp("[0-9]+","g"),e.ALPHANUMERIC=new RegExp("[A-Z $%*+\\-./:]+","g");var o=new RegExp("^"+r+"$"),i=new RegExp("^[0-9]+$"),a=new RegExp("^[A-Z0-9 $%*+\\-./:]+$");e.testKanji=function(t){return o.test(t)},e.testNumeric=function(t){return i.test(t)},e.testAlphanumeric=function(t){return a.test(t)}},674:function(t,e){function r(t){if("string"!==typeof t)throw new Error("Color should be defined as hex string");var e=t.slice().replace("#","").split("");if(e.length<3||5===e.length||e.length>8)throw new Error("Invalid hex color: "+t);3!==e.length&&4!==e.length||(e=Array.prototype.concat.apply([],e.map(function(t){return[t,t]}))),6===e.length&&e.push("F","F");var r=parseInt(e.join(""),16);return{r:r>>24&255,g:r>>16&255,b:r>>8&255,a:255&r,hex:"#"+e.slice(0,6).join("")}}e.getOptions=function(t){t||(t={}),t.color||(t.color={});var e="undefined"===typeof t.margin||null===t.margin||t.margin<0?4:t.margin,n=t.width&&t.width>=21?t.width:void 0,o=t.scale||4;return{width:n,scale:n?4:o,margin:e,color:{dark:r(t.color.dark||"#000000ff"),light:r(t.color.light||"#ffffffff")},type:t.type,rendererOpts:t.rendererOpts||{}}},e.getScale=function(t,e){return e.width&&e.width>=t+2*e.margin?e.width/(t+2*e.margin):e.scale},e.getImageWidth=function(t,r){var n=e.getScale(t,r);return Math.floor((t+2*r.margin)*n)},e.qrToImageData=function(t,r,n){for(var o=r.modules.size,i=r.modules.data,a=e.getScale(o,n),u=Math.floor((o+2*n.margin)*a),s=n.margin*a,f=[n.color.light,n.color.dark],h=0;h<u;h++)for(var c=0;c<u;c++){var l=4*(h*u+c),g=n.color.light;if(h>=s&&c>=s&&h<u-s&&c<u-s)g=f[i[Math.floor((h-s)/a)*o+Math.floor((c-s)/a)]?1:0];t[l++]=g.r,t[l++]=g.g,t[l++]=g.b,t[l]=g.a}}},741:function(t,e,r){var n=r(742),o=r(743),i=r(760),a=r(761);function u(t,e,r,i,a){var u=[].slice.call(arguments,1),s=u.length,f="function"===typeof u[s-1];if(!f&&!n())throw new Error("Callback required as last argument");if(!f){if(s<1)throw new Error("Too few arguments provided");return 1===s?(r=e,e=i=void 0):2!==s||e.getContext||(i=r,r=e,e=void 0),new Promise(function(n,a){try{var u=o.create(r,i);n(t(u,e,i))}catch(s){a(s)}})}if(s<2)throw new Error("Too few arguments provided");2===s?(a=r,r=e,e=i=void 0):3===s&&(e.getContext&&"undefined"===typeof a?(a=i,i=void 0):(a=i,i=r,r=e,e=void 0));try{var h=o.create(r,i);a(null,t(h,e,i))}catch(c){a(c)}}e.create=o.create,e.toCanvas=u.bind(null,i.render),e.toDataURL=u.bind(null,i.renderToDataURL),e.toString=u.bind(null,function(t,e,r){return a.render(t,r)})},742:function(t,e){t.exports=function(){return"function"===typeof Promise&&Promise.prototype&&Promise.prototype.then}},743:function(t,e,r){var n=r(649),o=r(647),i=r(660),a=r(744),u=r(745),s=r(746),f=r(747),h=r(748),c=r(671),l=r(749),g=r(752),d=r(753),p=r(648),v=r(754),w=r(659);function y(t,e,r){var n,o,i=t.size,a=d.getEncodedBits(e,r);for(n=0;n<15;n++)o=1===(a>>n&1),n<6?t.set(n,8,o,!0):n<8?t.set(n+1,8,o,!0):t.set(i-15+n,8,o,!0),n<8?t.set(8,i-n-1,o,!0):n<9?t.set(8,15-n-1+1,o,!0):t.set(8,15-n-1,o,!0);t.set(i-8,8,1,!0)}function m(t,e,r){var i=new a;r.forEach(function(e){i.put(e.mode.bit,4),i.put(e.getLength(),p.getCharCountIndicator(e.mode,t)),e.write(i)});var u=8*(o.getSymbolTotalCodewords(t)-c.getTotalCodewordsCount(t,e));for(i.getLengthInBits()+4<=u&&i.put(0,4);i.getLengthInBits()%8!==0;)i.putBit(0);for(var s=(u-i.getLengthInBits())/8,f=0;f<s;f++)i.put(f%2?17:236,8);return function(t,e,r){for(var i=o.getSymbolTotalCodewords(e),a=c.getTotalCodewordsCount(e,r),u=i-a,s=c.getBlocksCount(e,r),f=s-i%s,h=Math.floor(i/s),g=Math.floor(u/s),d=g+1,p=h-g,v=new l(p),w=0,y=new Array(s),m=new Array(s),E=0,A=new n(t.buffer),B=0;B<s;B++){var b=B<f?g:d;y[B]=A.slice(w,w+b),m[B]=v.encode(y[B]),w+=b,E=Math.max(E,b)}var P,R,T=new n(i),C=0;for(P=0;P<E;P++)for(R=0;R<s;R++)P<y[R].length&&(T[C++]=y[R][P]);for(P=0;P<p;P++)for(R=0;R<s;R++)T[C++]=m[R][P];return T}(i,t,e)}function E(t,e,r,n){var i;if(w(t))i=v.fromArray(t);else{if("string"!==typeof t)throw new Error("Invalid data");var a=e;if(!a){var c=v.rawSplit(t);a=g.getBestVersionForData(c,r)}i=v.fromString(t,a||40)}var l=g.getBestVersionForData(i,r);if(!l)throw new Error("The amount of data is too big to be stored in a QR Code");if(e){if(e<l)throw new Error("\nThe chosen QR Code version cannot contain this amount of data.\nMinimum version required to store current data is: "+l+".\n")}else e=l;var d=m(e,r,i),p=o.getSymbolSize(e),E=new u(p);return function(t,e){for(var r=t.size,n=f.getPositions(e),o=0;o<n.length;o++)for(var i=n[o][0],a=n[o][1],u=-1;u<=7;u++)if(!(i+u<=-1||r<=i+u))for(var s=-1;s<=7;s++)a+s<=-1||r<=a+s||(u>=0&&u<=6&&(0===s||6===s)||s>=0&&s<=6&&(0===u||6===u)||u>=2&&u<=4&&s>=2&&s<=4?t.set(i+u,a+s,!0,!0):t.set(i+u,a+s,!1,!0))}(E,e),function(t){for(var e=t.size,r=8;r<e-8;r++){var n=r%2===0;t.set(r,6,n,!0),t.set(6,r,n,!0)}}(E),function(t,e){for(var r=s.getPositions(e),n=0;n<r.length;n++)for(var o=r[n][0],i=r[n][1],a=-2;a<=2;a++)for(var u=-2;u<=2;u++)-2===a||2===a||-2===u||2===u||0===a&&0===u?t.set(o+a,i+u,!0,!0):t.set(o+a,i+u,!1,!0)}(E,e),y(E,r,0),e>=7&&function(t,e){for(var r,n,o,i=t.size,a=g.getEncodedBits(e),u=0;u<18;u++)r=Math.floor(u/3),n=u%3+i-8-3,o=1===(a>>u&1),t.set(r,n,o,!0),t.set(n,r,o,!0)}(E,e),function(t,e){for(var r=t.size,n=-1,o=r-1,i=7,a=0,u=r-1;u>0;u-=2)for(6===u&&u--;;){for(var s=0;s<2;s++)if(!t.isReserved(o,u-s)){var f=!1;a<e.length&&(f=1===(e[a]>>>i&1)),t.set(o,u-s,f),-1===--i&&(a++,i=7)}if((o+=n)<0||r<=o){o-=n,n=-n;break}}}(E,d),isNaN(n)&&(n=h.getBestMask(E,y.bind(null,E,r))),h.applyMask(n,E),y(E,r,n),{modules:E,version:e,errorCorrectionLevel:r,maskPattern:n,segments:i}}e.create=function(t,e){if("undefined"===typeof t||""===t)throw new Error("No input text");var r,n,a=i.M;return"undefined"!==typeof e&&(a=i.from(e.errorCorrectionLevel,i.M),r=g.from(e.version),n=h.from(e.maskPattern),e.toSJISFunc&&o.setToSJISFunction(e.toSJISFunc)),E(t,r,a,n)}},744:function(t,e){function r(){this.buffer=[],this.length=0}r.prototype={get:function(t){var e=Math.floor(t/8);return 1===(this.buffer[e]>>>7-t%8&1)},put:function(t,e){for(var r=0;r<e;r++)this.putBit(1===(t>>>e-r-1&1))},getLengthInBits:function(){return this.length},putBit:function(t){var e=Math.floor(this.length/8);this.buffer.length<=e&&this.buffer.push(0),t&&(this.buffer[e]|=128>>>this.length%8),this.length++}},t.exports=r},745:function(t,e,r){var n=r(649);function o(t){if(!t||t<1)throw new Error("BitMatrix size must be defined and greater than 0");this.size=t,this.data=new n(t*t),this.data.fill(0),this.reservedBit=new n(t*t),this.reservedBit.fill(0)}o.prototype.set=function(t,e,r,n){var o=t*this.size+e;this.data[o]=r,n&&(this.reservedBit[o]=!0)},o.prototype.get=function(t,e){return this.data[t*this.size+e]},o.prototype.xor=function(t,e,r){this.data[t*this.size+e]^=r},o.prototype.isReserved=function(t,e){return this.reservedBit[t*this.size+e]},t.exports=o},746:function(t,e,r){var n=r(647).getSymbolSize;e.getRowColCoords=function(t){if(1===t)return[];for(var e=Math.floor(t/7)+2,r=n(t),o=145===r?26:2*Math.ceil((r-13)/(2*e-2)),i=[r-7],a=1;a<e-1;a++)i[a]=i[a-1]-o;return i.push(6),i.reverse()},e.getPositions=function(t){for(var r=[],n=e.getRowColCoords(t),o=n.length,i=0;i<o;i++)for(var a=0;a<o;a++)0===i&&0===a||0===i&&a===o-1||i===o-1&&0===a||r.push([n[i],n[a]]);return r}},747:function(t,e,r){var n=r(647).getSymbolSize;e.getPositions=function(t){var e=n(t);return[[0,0],[e-7,0],[0,e-7]]}},748:function(t,e){e.Patterns={PATTERN000:0,PATTERN001:1,PATTERN010:2,PATTERN011:3,PATTERN100:4,PATTERN101:5,PATTERN110:6,PATTERN111:7};var r=3,n=3,o=40,i=10;function a(t,r,n){switch(t){case e.Patterns.PATTERN000:return(r+n)%2===0;case e.Patterns.PATTERN001:return r%2===0;case e.Patterns.PATTERN010:return n%3===0;case e.Patterns.PATTERN011:return(r+n)%3===0;case e.Patterns.PATTERN100:return(Math.floor(r/2)+Math.floor(n/3))%2===0;case e.Patterns.PATTERN101:return r*n%2+r*n%3===0;case e.Patterns.PATTERN110:return(r*n%2+r*n%3)%2===0;case e.Patterns.PATTERN111:return(r*n%3+(r+n)%2)%2===0;default:throw new Error("bad maskPattern:"+t)}}e.isValid=function(t){return null!=t&&""!==t&&!isNaN(t)&&t>=0&&t<=7},e.from=function(t){return e.isValid(t)?parseInt(t,10):void 0},e.getPenaltyN1=function(t){for(var e=t.size,n=0,o=0,i=0,a=null,u=null,s=0;s<e;s++){o=i=0,a=u=null;for(var f=0;f<e;f++){var h=t.get(s,f);h===a?o++:(o>=5&&(n+=r+(o-5)),a=h,o=1),(h=t.get(f,s))===u?i++:(i>=5&&(n+=r+(i-5)),u=h,i=1)}o>=5&&(n+=r+(o-5)),i>=5&&(n+=r+(i-5))}return n},e.getPenaltyN2=function(t){for(var e=t.size,r=0,o=0;o<e-1;o++)for(var i=0;i<e-1;i++){var a=t.get(o,i)+t.get(o,i+1)+t.get(o+1,i)+t.get(o+1,i+1);4!==a&&0!==a||r++}return r*n},e.getPenaltyN3=function(t){for(var e=t.size,r=0,n=0,i=0,a=0;a<e;a++){n=i=0;for(var u=0;u<e;u++)n=n<<1&2047|t.get(a,u),u>=10&&(1488===n||93===n)&&r++,i=i<<1&2047|t.get(u,a),u>=10&&(1488===i||93===i)&&r++}return r*o},e.getPenaltyN4=function(t){for(var e=0,r=t.data.length,n=0;n<r;n++)e+=t.data[n];return Math.abs(Math.ceil(100*e/r/5)-10)*i},e.applyMask=function(t,e){for(var r=e.size,n=0;n<r;n++)for(var o=0;o<r;o++)e.isReserved(o,n)||e.xor(o,n,a(t,o,n))},e.getBestMask=function(t,r){for(var n=Object.keys(e.Patterns).length,o=0,i=1/0,a=0;a<n;a++){r(a),e.applyMask(a,t);var u=e.getPenaltyN1(t)+e.getPenaltyN2(t)+e.getPenaltyN3(t)+e.getPenaltyN4(t);e.applyMask(a,t),u<i&&(i=u,o=a)}return o}},749:function(t,e,r){var n=r(649),o=r(750);function i(t){this.genPoly=void 0,this.degree=t,this.degree&&this.initialize(this.degree)}i.prototype.initialize=function(t){this.degree=t,this.genPoly=o.generateECPolynomial(this.degree)},i.prototype.encode=function(t){if(!this.genPoly)throw new Error("Encoder not initialized");var e=new n(this.degree);e.fill(0);var r=n.concat([t,e],t.length+this.degree),i=o.mod(r,this.genPoly),a=this.degree-i.length;if(a>0){var u=new n(this.degree);return u.fill(0),i.copy(u,a),u}return i},t.exports=i},750:function(t,e,r){var n=r(649),o=r(751);e.mul=function(t,e){var r=new n(t.length+e.length-1);r.fill(0);for(var i=0;i<t.length;i++)for(var a=0;a<e.length;a++)r[i+a]^=o.mul(t[i],e[a]);return r},e.mod=function(t,e){for(var r=new n(t);r.length-e.length>=0;){for(var i=r[0],a=0;a<e.length;a++)r[a]^=o.mul(e[a],i);for(var u=0;u<r.length&&0===r[u];)u++;r=r.slice(u)}return r},e.generateECPolynomial=function(t){for(var r=new n([1]),i=0;i<t;i++)r=e.mul(r,[1,o.exp(i)]);return r}},751:function(t,e,r){var n=r(649);if(n.alloc)var o=n.alloc(512),i=n.alloc(256);else o=new n(512),i=new n(256);!function(){for(var t=1,e=0;e<255;e++)o[e]=t,i[t]=e,256&(t<<=1)&&(t^=285);for(e=255;e<512;e++)o[e]=o[e-255]}(),e.log=function(t){if(t<1)throw new Error("log("+t+")");return i[t]},e.exp=function(t){return o[t]},e.mul=function(t,e){return 0===t||0===e?0:o[i[t]+i[e]]}},752:function(t,e,r){var n=r(647),o=r(671),i=r(660),a=r(648),u=r(672),s=r(659),f=n.getBCHDigit(7973);function h(t,e){return a.getCharCountIndicator(t,e)+4}function c(t,e){var r=0;return t.forEach(function(t){var n=h(t.mode,e);r+=n+t.getBitsLength()}),r}e.from=function(t,e){return u.isValid(t)?parseInt(t,10):e},e.getCapacity=function(t,e,r){if(!u.isValid(t))throw new Error("Invalid QR Code version");"undefined"===typeof r&&(r=a.BYTE);var i=8*(n.getSymbolTotalCodewords(t)-o.getTotalCodewordsCount(t,e));if(r===a.MIXED)return i;var s=i-h(r,t);switch(r){case a.NUMERIC:return Math.floor(s/10*3);case a.ALPHANUMERIC:return Math.floor(s/11*2);case a.KANJI:return Math.floor(s/13);case a.BYTE:default:return Math.floor(s/8)}},e.getBestVersionForData=function(t,r){var n,o=i.from(r,i.M);if(s(t)){if(t.length>1)return function(t,r){for(var n=1;n<=40;n++)if(c(t,n)<=e.getCapacity(n,r,a.MIXED))return n}(t,o);if(0===t.length)return 1;n=t[0]}else n=t;return function(t,r,n){for(var o=1;o<=40;o++)if(r<=e.getCapacity(o,n,t))return o}(n.mode,n.getLength(),o)},e.getEncodedBits=function(t){if(!u.isValid(t)||t<7)throw new Error("Invalid QR Code version");for(var e=t<<12;n.getBCHDigit(e)-f>=0;)e^=7973<<n.getBCHDigit(e)-f;return t<<12|e}},753:function(t,e,r){var n=r(647),o=n.getBCHDigit(1335);e.getEncodedBits=function(t,e){for(var r=t.bit<<3|e,i=r<<10;n.getBCHDigit(i)-o>=0;)i^=1335<<n.getBCHDigit(i)-o;return 21522^(r<<10|i)}},754:function(t,e,r){var n=r(648),o=r(755),i=r(756),a=r(757),u=r(758),s=r(673),f=r(647),h=r(759);function c(t){return unescape(encodeURIComponent(t)).length}function l(t,e,r){for(var n,o=[];null!==(n=t.exec(r));)o.push({data:n[0],index:n.index,mode:e,length:n[0].length});return o}function g(t){var e,r,o=l(s.NUMERIC,n.NUMERIC,t),i=l(s.ALPHANUMERIC,n.ALPHANUMERIC,t);return f.isKanjiModeEnabled()?(e=l(s.BYTE,n.BYTE,t),r=l(s.KANJI,n.KANJI,t)):(e=l(s.BYTE_KANJI,n.BYTE,t),r=[]),o.concat(i,e,r).sort(function(t,e){return t.index-e.index}).map(function(t){return{data:t.data,mode:t.mode,length:t.length}})}function d(t,e){switch(e){case n.NUMERIC:return o.getBitsLength(t);case n.ALPHANUMERIC:return i.getBitsLength(t);case n.KANJI:return u.getBitsLength(t);case n.BYTE:return a.getBitsLength(t)}}function p(t,e){var r,s=n.getBestModeForData(t);if((r=n.from(e,s))!==n.BYTE&&r.bit<s.bit)throw new Error('"'+t+'" cannot be encoded with mode '+n.toString(r)+".\n Suggested mode is: "+n.toString(s));switch(r!==n.KANJI||f.isKanjiModeEnabled()||(r=n.BYTE),r){case n.NUMERIC:return new o(t);case n.ALPHANUMERIC:return new i(t);case n.KANJI:return new u(t);case n.BYTE:return new a(t)}}e.fromArray=function(t){return t.reduce(function(t,e){return"string"===typeof e?t.push(p(e,null)):e.data&&t.push(p(e.data,e.mode)),t},[])},e.fromString=function(t,r){for(var o=function(t,e){for(var r={},o={start:{}},i=["start"],a=0;a<t.length;a++){for(var u=t[a],s=[],f=0;f<u.length;f++){var h=u[f],c=""+a+f;s.push(c),r[c]={node:h,lastCount:0},o[c]={};for(var l=0;l<i.length;l++){var g=i[l];r[g]&&r[g].node.mode===h.mode?(o[g][c]=d(r[g].lastCount+h.length,h.mode)-d(r[g].lastCount,h.mode),r[g].lastCount+=h.length):(r[g]&&(r[g].lastCount=h.length),o[g][c]=d(h.length,h.mode)+4+n.getCharCountIndicator(h.mode,e))}}i=s}for(l=0;l<i.length;l++)o[i[l]].end=0;return{map:o,table:r}}(function(t){for(var e=[],r=0;r<t.length;r++){var o=t[r];switch(o.mode){case n.NUMERIC:e.push([o,{data:o.data,mode:n.ALPHANUMERIC,length:o.length},{data:o.data,mode:n.BYTE,length:o.length}]);break;case n.ALPHANUMERIC:e.push([o,{data:o.data,mode:n.BYTE,length:o.length}]);break;case n.KANJI:e.push([o,{data:o.data,mode:n.BYTE,length:c(o.data)}]);break;case n.BYTE:e.push([{data:o.data,mode:n.BYTE,length:c(o.data)}])}}return e}(g(t,f.isKanjiModeEnabled())),r),i=h.find_path(o.map,"start","end"),a=[],u=1;u<i.length-1;u++)a.push(o.table[i[u]].node);return e.fromArray(function(t){return t.reduce(function(t,e){var r=t.length-1>=0?t[t.length-1]:null;return r&&r.mode===e.mode?(t[t.length-1].data+=e.data,t):(t.push(e),t)},[])}(a))},e.rawSplit=function(t){return e.fromArray(g(t,f.isKanjiModeEnabled()))}},755:function(t,e,r){var n=r(648);function o(t){this.mode=n.NUMERIC,this.data=t.toString()}o.getBitsLength=function(t){return 10*Math.floor(t/3)+(t%3?t%3*3+1:0)},o.prototype.getLength=function(){return this.data.length},o.prototype.getBitsLength=function(){return o.getBitsLength(this.data.length)},o.prototype.write=function(t){var e,r,n;for(e=0;e+3<=this.data.length;e+=3)r=this.data.substr(e,3),n=parseInt(r,10),t.put(n,10);var o=this.data.length-e;o>0&&(r=this.data.substr(e),n=parseInt(r,10),t.put(n,3*o+1))},t.exports=o},756:function(t,e,r){var n=r(648),o=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"," ","$","%","*","+","-",".","/",":"];function i(t){this.mode=n.ALPHANUMERIC,this.data=t}i.getBitsLength=function(t){return 11*Math.floor(t/2)+t%2*6},i.prototype.getLength=function(){return this.data.length},i.prototype.getBitsLength=function(){return i.getBitsLength(this.data.length)},i.prototype.write=function(t){var e;for(e=0;e+2<=this.data.length;e+=2){var r=45*o.indexOf(this.data[e]);r+=o.indexOf(this.data[e+1]),t.put(r,11)}this.data.length%2&&t.put(o.indexOf(this.data[e]),6)},t.exports=i},757:function(t,e,r){var n=r(649),o=r(648);function i(t){this.mode=o.BYTE,this.data=new n(t)}i.getBitsLength=function(t){return 8*t},i.prototype.getLength=function(){return this.data.length},i.prototype.getBitsLength=function(){return i.getBitsLength(this.data.length)},i.prototype.write=function(t){for(var e=0,r=this.data.length;e<r;e++)t.put(this.data[e],8)},t.exports=i},758:function(t,e,r){var n=r(648),o=r(647);function i(t){this.mode=n.KANJI,this.data=t}i.getBitsLength=function(t){return 13*t},i.prototype.getLength=function(){return this.data.length},i.prototype.getBitsLength=function(){return i.getBitsLength(this.data.length)},i.prototype.write=function(t){var e;for(e=0;e<this.data.length;e++){var r=o.toSJIS(this.data[e]);if(r>=33088&&r<=40956)r-=33088;else{if(!(r>=57408&&r<=60351))throw new Error("Invalid SJIS character: "+this.data[e]+"\nMake sure your charset is UTF-8");r-=49472}r=192*(r>>>8&255)+(255&r),t.put(r,13)}},t.exports=i},759:function(t,e,r){"use strict";var n={single_source_shortest_paths:function(t,e,r){var o={},i={};i[e]=0;var a,u,s,f,h,c,l,g=n.PriorityQueue.make();for(g.push(e,0);!g.empty();)for(s in u=(a=g.pop()).value,f=a.cost,h=t[u]||{})h.hasOwnProperty(s)&&(c=f+h[s],l=i[s],("undefined"===typeof i[s]||l>c)&&(i[s]=c,g.push(s,c),o[s]=u));if("undefined"!==typeof r&&"undefined"===typeof i[r]){var d=["Could not find a path from ",e," to ",r,"."].join("");throw new Error(d)}return o},extract_shortest_path_from_predecessor_list:function(t,e){for(var r=[],n=e;n;)r.push(n),t[n],n=t[n];return r.reverse(),r},find_path:function(t,e,r){var o=n.single_source_shortest_paths(t,e,r);return n.extract_shortest_path_from_predecessor_list(o,r)},PriorityQueue:{make:function(t){var e,r=n.PriorityQueue,o={};for(e in t=t||{},r)r.hasOwnProperty(e)&&(o[e]=r[e]);return o.queue=[],o.sorter=t.sorter||r.default_sorter,o},default_sorter:function(t,e){return t.cost-e.cost},push:function(t,e){var r={value:t,cost:e};this.queue.push(r),this.queue.sort(this.sorter)},pop:function(){return this.queue.shift()},empty:function(){return 0===this.queue.length}}};t.exports=n},760:function(t,e,r){var n=r(674);e.render=function(t,e,r){var o=r,i=e;"undefined"!==typeof o||e&&e.getContext||(o=e,e=void 0),e||(i=function(){try{return document.createElement("canvas")}catch(t){throw new Error("You need to specify a canvas element")}}()),o=n.getOptions(o);var a=n.getImageWidth(t.modules.size,o),u=i.getContext("2d"),s=u.createImageData(a,a);return n.qrToImageData(s.data,t,o),function(t,e,r){t.clearRect(0,0,e.width,e.height),e.style||(e.style={}),e.height=r,e.width=r,e.style.height=r+"px",e.style.width=r+"px"}(u,i,a),u.putImageData(s,0,0),i},e.renderToDataURL=function(t,r,n){var o=n;"undefined"!==typeof o||r&&r.getContext||(o=r,r=void 0),o||(o={});var i=e.render(t,r,o),a=o.type||"image/png",u=o.rendererOpts||{};return i.toDataURL(a,u.quality)}},761:function(t,e,r){var n=r(674);function o(t,e){var r=t.a/255,n=e+'="'+t.hex+'"';return r<1?n+" "+e+'-opacity="'+r.toFixed(2).slice(1)+'"':n}function i(t,e,r){var n=t+e;return"undefined"!==typeof r&&(n+=" "+r),n}e.render=function(t,e,r){var a=n.getOptions(e),u=t.modules.size,s=t.modules.data,f=u+2*a.margin,h=a.color.light.a?"<path "+o(a.color.light,"fill")+' d="M0 0h'+f+"v"+f+'H0z"/>':"",c="<path "+o(a.color.dark,"stroke")+' d="'+function(t,e,r){for(var n="",o=0,a=!1,u=0,s=0;s<t.length;s++){var f=Math.floor(s%e),h=Math.floor(s/e);f||a||(a=!0),t[s]?(u++,s>0&&f>0&&t[s-1]||(n+=a?i("M",f+r,.5+h+r):i("m",o,0),o=0,a=!1),f+1<e&&t[s+1]||(n+=i("h",u),u=0)):o++}return n}(s,u,a.margin)+'"/>',l='viewBox="0 0 '+f+" "+f+'"',g='<svg xmlns="http://www.w3.org/2000/svg" '+(a.width?'width="'+a.width+'" height="'+a.width+'" ':"")+l+' shape-rendering="crispEdges">'+h+c+"</svg>\n";return"function"===typeof r&&r(null,g),g}}}]);
//# sourceMappingURL=11.611881c2.chunk.js.map //# sourceMappingURL=11.2e343155.chunk.js.map
\ No newline at end of file \ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
(window.webpackJsonp=window.webpackJsonp||[]).push([[0],{674:function(e,t,a){},675:function(e,t,a){},676:function(e,t,a){},677:function(e,t,a){},772:function(e,t,a){"use strict";a.r(t);var n=a(29),o=(a(26),a(2)),c=a.n(o),s=a(72),i=a(4),r=a(5),l=a(7),u=a(6),p=a(8),d=a(0),m=a.n(d),h=(a(674),a(675),a(676),a(16)),f=a.n(h),v=function(e){function t(){var e,a;Object(i.a)(this,t);for(var n=arguments.length,o=new Array(n),c=0;c<n;c++)o[c]=arguments[c];return(a=Object(l.a)(this,(e=Object(u.a)(t)).call.apply(e,[this].concat(o)))).clearInput=function(){a.props.onChange("")},a}return Object(p.a)(t,e),Object(r.a)(t,[{key:"render",value:function(){var e=this.props,t=e.type,a=e.placeholder;return m.a.createElement("div",{className:"custom-input-wrapper"},m.a.createElement("input",{type:t,className:f()("custom-input"),placeholder:a,onChange:this.props.onChange,value:this.props.value}),m.a.createElement("i",{className:f()("iconfont icondanseshixintubiao-3",{hide:0===this.props.value.length}),onClick:this.clearInput}))}}]),t}(d.Component);v.defaultProps={type:"text",placeholder:""};var C=v,g=function(e){function t(){var e,a;Object(i.a)(this,t);for(var n=arguments.length,o=new Array(n),c=0;c<n;c++)o[c]=arguments[c];return(a=Object(l.a)(this,(e=Object(u.a)(t)).call.apply(e,[this].concat(o)))).state={},a}return Object(p.a)(t,e),Object(r.a)(t,[{key:"render",value:function(){var e=this.props,t=e.onChange,a=e.redeemCode,n=e.exchange;return m.a.createElement("div",{className:"exchange-bar"},m.a.createElement(C,{placeholder:"\u8bf7\u8f93\u5165\u4f18\u60e0\u7801",onChange:t,value:a}),m.a.createElement("button",{className:f()({active:a&&a.length>0}),onClick:n},"\u5151\u6362"))}}]),t}(d.Component),b=(a(677),function(e){function t(){var e,a;Object(i.a)(this,t);for(var n=arguments.length,o=new Array(n),c=0;c<n;c++)o[c]=arguments[c];return(a=Object(l.a)(this,(e=Object(u.a)(t)).call.apply(e,[this].concat(o)))).pick=function(){var e=a.props,t=e.useCoupon;!e.invalid&&t&&t(a.props.id)},a.GoToUse=function(){a.props.useCoupon(a.props.id)},a}return Object(p.a)(t,e),Object(r.a)(t,[{key:"render",value:function(){var e=this.props,t=e.ctype,a=e.amount,n=e.format_expire_time,o=e.limit_course,c=e.invalid,s=e.course_title,i=e.id,r=e.selectedCouponId,l=e.showUseButton;return m.a.createElement("li",{className:"coupon",onClick:this.pick},m.a.createElement("div",{className:f()("coupon-info",c?"invalid":"coupon-type".concat(t))},m.a.createElement("p",{className:"type"},1===t?"\u4ee3\u91d1\u5238":"\u8bfe\u7a0b\u5238"),1===t?m.a.createElement("p",{className:"denomination"},a," ",m.a.createElement("span",null,"\u5143")):m.a.createElement("p",{className:"course-title"},s),m.a.createElement("p",{className:"expire"},"\u6709\u6548\u671f\u81f3\uff1a",n),r===i&&m.a.createElement("i",{className:f()("iconfont icondanseshixintubiao-5",{check:!c})}),m.a.createElement("ul",null,new Array(19).fill("a").map(function(e,t){return m.a.createElement("li",{key:t})}))),m.a.createElement("div",{className:"coupon-des"},m.a.createElement("span",{className:"limit"},0===o?"\u53ef\u7528\u4e8e\u5927\u4e8e\u4ee3\u91d1\u5238\u91d1\u989d\u7684\u8bfe\u7a0b":"\u4ec5\u9002\u7528\u4e8e\u300a".concat(s,"\u300b")),l&&m.a.createElement("button",{className:"use",onClick:this.GoToUse},"\u7acb\u5373\u4f7f\u7528")))}}]),t}(d.PureComponent)),y=a(1),E=a(55),j=a(37),O=a(18),_=function(e){function t(){var e,a;Object(i.a)(this,t);for(var n=arguments.length,o=new Array(n),r=0;r<n;r++)o[r]=arguments[r];return(a=Object(l.a)(this,(e=Object(u.a)(t)).call.apply(e,[this].concat(o)))).state={selectedCouponId:0,redeemCode:"",couponList:[],valid_coupons:[],invalid_coupons:[],courseId:Object(y.c)("id"),showUseButton:!1},a.handleChange=function(e){var t=e?e.target.value:"";a.setState({redeemCode:t})},a.exchange=function(){""!==a.state.redeemCode?y.d.post("".concat(y.a.home,"/m/coupon/exchange"),{code:a.state.redeemCode}).then(function(e){var t=e.data;if(200===t.code){var n=t.data;if(a.state.showUseButton)a.setState({couponList:[].concat(Object(s.a)(state.couponList),[n]),redeemCode:""});else{var o=t.data;2==o.ctype&&o.limit_course!=a.state.courseId?a.setState({invalid_coupons:[].concat(Object(s.a)(a.state.invalid_coupons),[o]),showUseButton:null}):a.setState({valid_coupons:[].concat(Object(s.a)(a.state.valid_coupons),[o]),redeemCode:""})}c.a.info("\u5151\u6362\u6210\u529f")}else c.a.info(t.msg)}):c.a.info("\u8bf7\u8f93\u5165\u5151\u6362\u7801")},a.getMyCoupons=function(){y.d.get("".concat(y.a.home,"/m/coupon/all")).then(function(e){var t=e.data;200===t.code?a.setState({couponList:Object(j.isEmpty)(t.data)?[]:t.data}):c.a.info(t.msg)})},a.getAllCoupons=function(){y.d.post("".concat(y.a.home,"/m/coupon/select"),{course_id:a.state.courseId}).then(function(e){var t=e.data;if(200===t.code){var n=t.data.inuse_coupon;a.setState({valid_coupons:n?[].concat(Object(s.a)(n),Object(s.a)(t.data.valid_coupons)):t.data.valid_coupons,invalid_coupons:t.data.invalid_coupons,selectedCouponId:n.length?n[0].id:0})}else c.a.info(t.msg)})},a.useCoupon=function(e){var t=a.props.history,n=a.state.couponList.find(function(t){return t.id===e});if(e)if(a.state.showUseButton)1===n.ctype?t.push("/classify"):t.push("/detail?id=".concat(n.limit_course));else{var o=a.state,s=o.courseId;o.selectedCouponId===e?y.d.post("".concat(y.a.home,"/m/coupon/cancel"),{course_id:s}).then(function(e){var t=e.data;200===t.code?a.setState({selectedCouponId:0}):c.a.info(t.msg)}):y.d.post("".concat(y.a.home,"/m/coupon/use"),{course_id:a.state.courseId,coupon_id:e}).then(function(t){var n=t&&t.data;200===n.code?(a.setState({selectedCouponId:e}),a.props.history.goBack()):c.a.info(n.msg)})}else c.a.info("\u672a\u77e5\u9519\u8bef"),location.reload()},a}return Object(p.a)(t,e),Object(r.a)(t,[{key:"componentDidMount",value:function(){var e=this.props,t=e.history,a=e.location,n=this.props.location.state;n&&n.from&&("/my"===n.from?(this.getMyCoupons(),this.setState({showUseButton:!0})):(this.state.courseId||(a.state&&a.state.from?t.replace(a.state.from):t.goBack()),this.getAllCoupons()))}},{key:"render",value:function(){var e=this.props.location.state,t=this.state,a=t.showUseButton,n=t.selectedCouponId;return m.a.createElement("div",{className:"use-coupon"},m.a.createElement(O.e,{title:"\u4f18\u60e0\u5238",arrow:!0}),m.a.createElement(g,{onChange:this.handleChange,exchange:this.exchange,redeemCode:this.state.redeemCode}),m.a.createElement("div",{className:"coupons-area"},m.a.createElement(w,{coupons:e&&e.from&&"/my"===e.from?this.state.couponList:this.state.valid_coupons,showUseButton:a,selectedCouponId:n,select:this.select,useCoupon:this.useCoupon}),this.state.invalid_coupons.length>0&&m.a.createElement(m.a.Fragment,null,m.a.createElement("div",{className:"invalid-title"},"- \u4e0d\u53ef\u4f7f\u7528\u7684\u4f18\u60e0\u5238 -"),m.a.createElement(w,{coupons:this.state.invalid_coupons,selectedCouponId:n,select:this.select,purpose:"use",invalid:"invalid"}))))}}]),t}(d.PureComponent);function w(e){var t=e.coupons,a=Object(n.a)(e,["coupons"]);return 0===t.length?m.a.createElement("div",{className:"empty"},m.a.createElement("p",null,"\u6682\u65e0\u53ef\u4f7f\u7528\u7684\u4f18\u60e0\u5238")):m.a.createElement("ul",null,t.map(function(e){return m.a.createElement(b,Object.assign({key:e.id},e,{id:e.id},a))}))}t.default=Object(E.a)(_)}}]); (window.webpackJsonp=window.webpackJsonp||[]).push([[0],{675:function(e,t,a){},676:function(e,t,a){},677:function(e,t,a){},678:function(e,t,a){},772:function(e,t,a){"use strict";a.r(t);var n=a(29),o=(a(26),a(2)),c=a.n(o),s=a(72),i=a(4),r=a(5),l=a(8),u=a(6),p=a(7),d=a(0),m=a.n(d),h=(a(675),a(676),a(677),a(16)),f=a.n(h),v=function(e){function t(){var e,a;Object(i.a)(this,t);for(var n=arguments.length,o=new Array(n),c=0;c<n;c++)o[c]=arguments[c];return(a=Object(l.a)(this,(e=Object(u.a)(t)).call.apply(e,[this].concat(o)))).clearInput=function(){a.props.onChange("")},a}return Object(p.a)(t,e),Object(r.a)(t,[{key:"render",value:function(){var e=this.props,t=e.type,a=e.placeholder;return m.a.createElement("div",{className:"custom-input-wrapper"},m.a.createElement("input",{type:t,className:f()("custom-input"),placeholder:a,onChange:this.props.onChange,value:this.props.value}),m.a.createElement("i",{className:f()("iconfont icondanseshixintubiao-3",{hide:0===this.props.value.length}),onClick:this.clearInput}))}}]),t}(d.Component);v.defaultProps={type:"text",placeholder:""};var C=v,g=function(e){function t(){var e,a;Object(i.a)(this,t);for(var n=arguments.length,o=new Array(n),c=0;c<n;c++)o[c]=arguments[c];return(a=Object(l.a)(this,(e=Object(u.a)(t)).call.apply(e,[this].concat(o)))).state={},a}return Object(p.a)(t,e),Object(r.a)(t,[{key:"render",value:function(){var e=this.props,t=e.onChange,a=e.redeemCode,n=e.exchange;return m.a.createElement("div",{className:"exchange-bar"},m.a.createElement(C,{placeholder:"\u8bf7\u8f93\u5165\u4f18\u60e0\u7801",onChange:t,value:a}),m.a.createElement("button",{className:f()({active:a&&a.length>0}),onClick:n},"\u5151\u6362"))}}]),t}(d.Component),b=(a(678),function(e){function t(){var e,a;Object(i.a)(this,t);for(var n=arguments.length,o=new Array(n),c=0;c<n;c++)o[c]=arguments[c];return(a=Object(l.a)(this,(e=Object(u.a)(t)).call.apply(e,[this].concat(o)))).pick=function(){var e=a.props,t=e.useCoupon;!e.invalid&&t&&t(a.props.id)},a.GoToUse=function(){a.props.useCoupon(a.props.id)},a}return Object(p.a)(t,e),Object(r.a)(t,[{key:"render",value:function(){var e=this.props,t=e.ctype,a=e.amount,n=e.format_expire_time,o=e.limit_course,c=e.invalid,s=e.course_title,i=e.id,r=e.selectedCouponId,l=e.showUseButton;return m.a.createElement("li",{className:"coupon",onClick:this.pick},m.a.createElement("div",{className:f()("coupon-info",c?"invalid":"coupon-type".concat(t))},m.a.createElement("p",{className:"type"},1===t?"\u4ee3\u91d1\u5238":"\u8bfe\u7a0b\u5238"),1===t?m.a.createElement("p",{className:"denomination"},a," ",m.a.createElement("span",null,"\u5143")):m.a.createElement("p",{className:"course-title"},s),m.a.createElement("p",{className:"expire"},"\u6709\u6548\u671f\u81f3\uff1a",n),r===i&&m.a.createElement("i",{className:f()("iconfont icondanseshixintubiao-5",{check:!c})}),m.a.createElement("ul",null,new Array(19).fill("a").map(function(e,t){return m.a.createElement("li",{key:t})}))),m.a.createElement("div",{className:"coupon-des"},m.a.createElement("span",{className:"limit"},0===o?"\u53ef\u7528\u4e8e\u5927\u4e8e\u4ee3\u91d1\u5238\u91d1\u989d\u7684\u8bfe\u7a0b":"\u4ec5\u9002\u7528\u4e8e\u300a".concat(s,"\u300b")),l&&m.a.createElement("button",{className:"use",onClick:this.GoToUse},"\u7acb\u5373\u4f7f\u7528")))}}]),t}(d.PureComponent)),y=a(1),E=a(55),j=a(37),O=a(18),_=function(e){function t(){var e,a;Object(i.a)(this,t);for(var n=arguments.length,o=new Array(n),r=0;r<n;r++)o[r]=arguments[r];return(a=Object(l.a)(this,(e=Object(u.a)(t)).call.apply(e,[this].concat(o)))).state={selectedCouponId:0,redeemCode:"",couponList:[],valid_coupons:[],invalid_coupons:[],courseId:Object(y.c)("id"),showUseButton:!1},a.handleChange=function(e){var t=e?e.target.value:"";a.setState({redeemCode:t})},a.exchange=function(){""!==a.state.redeemCode?y.d.post("".concat(y.a.home,"/m/coupon/exchange"),{code:a.state.redeemCode}).then(function(e){var t=e.data;if(200===t.code){var n=t.data;if(a.state.showUseButton)a.setState({couponList:[].concat(Object(s.a)(state.couponList),[n]),redeemCode:""});else{var o=t.data;2==o.ctype&&o.limit_course!=a.state.courseId?a.setState({invalid_coupons:[].concat(Object(s.a)(a.state.invalid_coupons),[o]),showUseButton:null}):a.setState({valid_coupons:[].concat(Object(s.a)(a.state.valid_coupons),[o]),redeemCode:""})}c.a.info("\u5151\u6362\u6210\u529f")}else c.a.info(t.msg)}):c.a.info("\u8bf7\u8f93\u5165\u5151\u6362\u7801")},a.getMyCoupons=function(){y.d.get("".concat(y.a.home,"/m/coupon/all")).then(function(e){var t=e.data;200===t.code?a.setState({couponList:Object(j.isEmpty)(t.data)?[]:t.data}):c.a.info(t.msg)})},a.getAllCoupons=function(){y.d.post("".concat(y.a.home,"/m/coupon/select"),{course_id:a.state.courseId}).then(function(e){var t=e.data;if(200===t.code){var n=t.data.inuse_coupon;a.setState({valid_coupons:n?[].concat(Object(s.a)(n),Object(s.a)(t.data.valid_coupons)):t.data.valid_coupons,invalid_coupons:t.data.invalid_coupons,selectedCouponId:n.length?n[0].id:0})}else c.a.info(t.msg)})},a.useCoupon=function(e){var t=a.props.history,n=a.state.couponList.find(function(t){return t.id===e});if(e)if(a.state.showUseButton)1===n.ctype?t.push("/classify"):t.push("/detail?id=".concat(n.limit_course));else{var o=a.state,s=o.courseId;o.selectedCouponId===e?y.d.post("".concat(y.a.home,"/m/coupon/cancel"),{course_id:s}).then(function(e){var t=e.data;200===t.code?a.setState({selectedCouponId:0}):c.a.info(t.msg)}):y.d.post("".concat(y.a.home,"/m/coupon/use"),{course_id:a.state.courseId,coupon_id:e}).then(function(t){var n=t&&t.data;200===n.code?(a.setState({selectedCouponId:e}),a.props.history.goBack()):c.a.info(n.msg)})}else c.a.info("\u672a\u77e5\u9519\u8bef"),location.reload()},a}return Object(p.a)(t,e),Object(r.a)(t,[{key:"componentDidMount",value:function(){var e=this.props,t=e.history,a=e.location,n=this.props.location.state;n&&n.from&&("/my"===n.from?(this.getMyCoupons(),this.setState({showUseButton:!0})):(this.state.courseId||(a.state&&a.state.from?t.replace(a.state.from):t.goBack()),this.getAllCoupons()))}},{key:"render",value:function(){var e=this.props.location.state,t=this.state,a=t.showUseButton,n=t.selectedCouponId;return m.a.createElement("div",{className:"use-coupon"},m.a.createElement(O.e,{title:"\u4f18\u60e0\u5238",arrow:!0}),m.a.createElement(g,{onChange:this.handleChange,exchange:this.exchange,redeemCode:this.state.redeemCode}),m.a.createElement("div",{className:"coupons-area"},m.a.createElement(w,{coupons:e&&e.from&&"/my"===e.from?this.state.couponList:this.state.valid_coupons,showUseButton:a,selectedCouponId:n,select:this.select,useCoupon:this.useCoupon}),this.state.invalid_coupons.length>0&&m.a.createElement(m.a.Fragment,null,m.a.createElement("div",{className:"invalid-title"},"- \u4e0d\u53ef\u4f7f\u7528\u7684\u4f18\u60e0\u5238 -"),m.a.createElement(w,{coupons:this.state.invalid_coupons,selectedCouponId:n,select:this.select,purpose:"use",invalid:"invalid"}))))}}]),t}(d.PureComponent);function w(e){var t=e.coupons,a=Object(n.a)(e,["coupons"]);return 0===t.length?m.a.createElement("div",{className:"empty"},m.a.createElement("p",null,"\u6682\u65e0\u53ef\u4f7f\u7528\u7684\u4f18\u60e0\u5238")):m.a.createElement("ul",null,t.map(function(e){return m.a.createElement(b,Object.assign({key:e.id},e,{id:e.id},a))}))}t.default=Object(E.a)(_)}}]);
//# sourceMappingURL=coupons.07cb8020.chunk.js.map //# sourceMappingURL=coupons.74915af0.chunk.js.map
\ No newline at end of file \ No newline at end of file
{"version":3,"sources":["components/coupons/Input/index.js","components/coupons/RedeemBar/index.js","components/coupons/Coupon/index.js","components/coupons/index.js"],"names":["Input","clearInput","_this","props","onChange","_this$props","this","type","placeholder","react_default","a","createElement","className","classnames","value","hide","length","onClick","Component","defaultProps","RedeemBar","state","redeemCode","exchange","coupons_Input","active","Coupon","pick","useCoupon","invalid","id","GoToUse","_this$props2","ctype","amount","format_expire_time","limit_course","course_title","selectedCouponId","showUseButton","concat","check","Array","fill","map","item","index","key","PureComponent","UseCoupon","couponList","valid_coupons","invalid_coupons","courseId","getParam","handleChange","e","target","setState","http","post","api","home","code","then","res","data","coupon","Object","toConsumableArray","toast_default","info","msg","getMyCoupons","get","isEmpty","getAllCoupons","course_id","inuse_coupon","val","history","find","push","_this$state","coupon_id","goBack","location","reload","from","replace","_this$state2","common","title","arrow","coupons_RedeemBar","Content","coupons","select","Fragment","purpose","_ref","rest","objectWithoutProperties","coupons_Coupon","assign","WithFullSize"],"mappings":"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","file":"static/js/coupons.07cb8020.chunk.js","sourcesContent":["import React, { Component } from 'react';\nimport './input.scss'\n\nimport classnames from 'classnames'\n\nclass Input extends Component {\n clearInput = () => {\n this.props.onChange('')\n }\n\n render() {\n let {type, placeholder} = this.props\n return (\n <div className='custom-input-wrapper'>\n <input\n type={type}\n className={classnames('custom-input')}\n placeholder={placeholder}\n onChange={this.props.onChange}\n value={this.props.value}\n />\n <i\n className={classnames('iconfont icondanseshixintubiao-3', {\n hide: this.props.value.length === 0\n })}\n onClick={this.clearInput}\n />\n </div>\n );\n }\n}\n\n\nInput.defaultProps = {type: 'text', placeholder: ''}\n\nexport default Input;","import React, { Component } from 'react';\nimport './exchange-bar.scss'\nimport Input from '../Input'\nimport classnames from 'classnames'\n\nclass RedeemBar extends Component {\n state = {}\n\n render() {\n const {onChange, redeemCode, exchange} = this.props\n return (\n <div className=\"exchange-bar\">\n <Input\n placeholder={'请输入优惠码'}\n onChange={onChange}\n value={redeemCode}\n />\n <button className={classnames({\n active: redeemCode && redeemCode.length > 0\n })} onClick={exchange}>兑换\n </button>\n </div>\n );\n }\n}\n\nexport default RedeemBar;","import React, { PureComponent } from 'react'\nimport './coupon.scss'\nimport classnames from 'classnames'\n\nclass Coupon extends PureComponent {\n\n pick = () => {\n let {useCoupon, invalid} = this.props\n !invalid && useCoupon && useCoupon(this.props.id)\n }\n\n GoToUse = () => {\n this.props.useCoupon(this.props.id)\n }\n\n render() {\n let {\n ctype,\n amount,\n format_expire_time,\n limit_course,\n invalid,\n course_title,\n id,\n selectedCouponId,\n showUseButton\n } = this.props\n\n return (\n <li className='coupon' onClick={this.pick}>\n <div className={classnames('coupon-info', invalid ? 'invalid' : `coupon-type${ctype}`)}>\n <p className='type'>{ctype === 1 ? '代金券' : '课程券'}</p>\n {\n ctype === 1 ? <p className='denomination'>{amount} <span>元</span></p>\n : <p className='course-title'>{course_title}</p>\n\n }\n <p className='expire'>有效期至:{format_expire_time}</p>\n {\n selectedCouponId === id &&\n <i className={classnames('iconfont icondanseshixintubiao-5', {\n check: !invalid\n })}\n />\n }\n <ul>\n {\n new Array(19).fill('a').map((item, index) => {\n return <li key={index}/>\n })\n }\n </ul>\n </div>\n <div className=\"coupon-des\">\n <span className='limit'>{\n limit_course === 0 ? '可用于大于代金券金额的课程' : `仅适用于《${course_title}》`\n }</span>\n {\n showUseButton &&\n <button\n className='use'\n onClick={this.GoToUse}\n >立即使用\n </button>\n }\n\n </div>\n </li>\n );\n }\n}\n\nexport default Coupon","import React, { PureComponent } from 'react';\nimport './coupons.scss'\n\nimport RedeemBar from \"./RedeemBar\";\nimport Coupon from './Coupon'\nimport { http, api, getParam } from '@/utils'\nimport { WithFullSize } from '@/HOCs'\nimport { Toast } from 'antd-mobile'\nimport { isEmpty } from 'lodash'\nimport { HeaderBar } from \"@/common\";\n\n\nclass UseCoupon extends PureComponent {\n\n state = {\n selectedCouponId: 0,\n redeemCode: '',\n couponList: [],\n valid_coupons: [],\n invalid_coupons: [],\n courseId: getParam('id'),\n showUseButton: false\n }\n\n componentDidMount() {\n\n const {history, location} = this.props\n\n const {state} = this.props.location\n\n\n if (state && state.from) {\n if (state.from === '/my') {\n this.getMyCoupons();\n this.setState({\n showUseButton: true\n })\n } else {\n if (!this.state.courseId) {\n location.state && location.state.from ? history.replace(location.state.from) : history.goBack()\n }\n this.getAllCoupons();\n }\n }\n }\n\n handleChange = e => {\n let value = e ? e.target.value : ''\n this.setState({redeemCode: value})\n }\n\n exchange = () => {\n if (this.state.redeemCode !== '') {\n http.post(`${api.home}/m/coupon/exchange`, {\n code: this.state.redeemCode\n })\n .then(res => {\n const data = res.data\n if (data.code === 200) {\n\n const coupon = data.data\n\n if (this.state.showUseButton) {\n this.setState({\n couponList: [...state.couponList, coupon],\n redeemCode: ''\n })\n } else {\n\n const coupon = data.data\n\n if (coupon['ctype'] == 2\n && coupon['limit_course'] != this.state.courseId) {\n this.setState({\n invalid_coupons: [...this.state.invalid_coupons, coupon],\n showUseButton: null\n });\n } else {\n this.setState({\n valid_coupons: [...this.state.valid_coupons, coupon],\n redeemCode: ''\n })\n }\n\n\n }\n\n Toast.info('兑换成功')\n } else {\n Toast.info(data.msg)\n }\n })\n } else {\n Toast.info('请输入兑换码')\n }\n }\n\n getMyCoupons = () => {\n http.get(`${api.home}/m/coupon/all`)\n .then(res => {\n const data = res.data\n if (data.code === 200) {\n this.setState({\n couponList: isEmpty(data.data) ? [] : data.data\n })\n } else {\n Toast.info(data.msg)\n }\n })\n }\n\n getAllCoupons = () => {\n http.post(`${api.home}/m/coupon/select`, {course_id: this.state.courseId})\n .then(res => {\n const data = res.data\n if (data.code === 200) {\n\n const inuse_coupon = data.data['inuse_coupon'];\n\n\n this.setState({\n valid_coupons: inuse_coupon\n ? [...inuse_coupon, ...data.data.valid_coupons]\n : data.data.valid_coupons,\n invalid_coupons: data.data.invalid_coupons,\n selectedCouponId: inuse_coupon.length ? inuse_coupon[0].id : 0\n })\n\n } else {\n Toast.info(data.msg)\n }\n })\n }\n\n useCoupon = val => {\n const {history} = this.props\n const coupon = this.state.couponList.find(item => item.id === val)\n\n if (val) {\n if (this.state.showUseButton) {\n\n if (coupon['ctype'] === 1) {\n history.push(`/classify`)\n } else {\n history.push(`/detail?id=${coupon['limit_course']}`)\n }\n\n } else {\n\n const {courseId, selectedCouponId} = this.state\n\n if (selectedCouponId === val) {\n\n\n http.post(`${api.home}/m/coupon/cancel`, {\n course_id: courseId\n }).then(res => {\n const data = res.data\n if (data.code === 200) {\n\n\n this.setState({\n selectedCouponId: 0\n })\n\n\n } else {\n Toast.info(data.msg)\n }\n })\n\n\n } else {\n http.post(`${api.home}/m/coupon/use`, {\n course_id: this.state.courseId,\n coupon_id: val\n })\n .then(res => {\n const data = res && res.data\n if (data.code === 200) {\n\n this.setState({selectedCouponId: val})\n this.props.history.goBack()\n\n\n } else {\n Toast.info(data.msg)\n }\n })\n\n }\n\n\n }\n\n } else {\n Toast.info('未知错误')\n location.reload()\n }\n\n }\n\n render() {\n const {state} = this.props.location\n const {showUseButton, selectedCouponId} = this.state\n return (\n <div className='use-coupon'>\n <HeaderBar title='优惠券' arrow={true}/>\n <RedeemBar onChange={this.handleChange}\n exchange={this.exchange}\n redeemCode={this.state.redeemCode}/>\n <div className=\"coupons-area\">\n <Content\n coupons={\n state\n && state.from\n && state.from === '/my'\n ? this.state.couponList\n : this.state.valid_coupons\n }\n showUseButton={showUseButton}\n selectedCouponId={selectedCouponId}\n select={this.select}\n useCoupon={this.useCoupon}\n />\n {\n this.state.invalid_coupons.length > 0 &&\n (\n <>\n <div className='invalid-title'>- 不可使用的优惠券 -</div>\n <Content\n coupons={this.state.invalid_coupons}\n selectedCouponId={selectedCouponId}\n select={this.select}\n purpose={'use'}\n invalid={'invalid'}\n />\n </>\n )\n }\n </div>\n </div>\n );\n }\n}\n\nfunction Content({coupons, ...rest}) {\n if (coupons.length === 0) {\n return (\n <div className='empty'>\n <p>暂无可使用的优惠券</p>\n </div>\n )\n }\n return (\n <ul>\n {\n coupons.map(item => {\n return (\n <Coupon\n key={item.id}\n {...item}\n id={item.id}\n {...rest}\n />\n )\n })\n }\n </ul>\n )\n}\n\nexport default WithFullSize(UseCoupon);"],"sourceRoot":""} {"version":3,"sources":["components/coupons/Input/index.js","components/coupons/RedeemBar/index.js","components/coupons/Coupon/index.js","components/coupons/index.js"],"names":["Input","clearInput","_this","props","onChange","_this$props","this","type","placeholder","react_default","a","createElement","className","classnames","value","hide","length","onClick","Component","defaultProps","RedeemBar","state","redeemCode","exchange","coupons_Input","active","Coupon","pick","useCoupon","invalid","id","GoToUse","_this$props2","ctype","amount","format_expire_time","limit_course","course_title","selectedCouponId","showUseButton","concat","check","Array","fill","map","item","index","key","PureComponent","UseCoupon","couponList","valid_coupons","invalid_coupons","courseId","getParam","handleChange","e","target","setState","http","post","api","home","code","then","res","data","coupon","Object","toConsumableArray","toast_default","info","msg","getMyCoupons","get","isEmpty","getAllCoupons","course_id","inuse_coupon","val","history","find","push","_this$state","coupon_id","goBack","location","reload","from","replace","_this$state2","common","title","arrow","coupons_RedeemBar","Content","coupons","select","Fragment","purpose","_ref","rest","objectWithoutProperties","coupons_Coupon","assign","WithFullSize"],"mappings":"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","file":"static/js/coupons.74915af0.chunk.js","sourcesContent":["import React, { Component } from 'react';\nimport './input.scss'\n\nimport classnames from 'classnames'\n\nclass Input extends Component {\n clearInput = () => {\n this.props.onChange('')\n }\n\n render() {\n let {type, placeholder} = this.props\n return (\n <div className='custom-input-wrapper'>\n <input\n type={type}\n className={classnames('custom-input')}\n placeholder={placeholder}\n onChange={this.props.onChange}\n value={this.props.value}\n />\n <i\n className={classnames('iconfont icondanseshixintubiao-3', {\n hide: this.props.value.length === 0\n })}\n onClick={this.clearInput}\n />\n </div>\n );\n }\n}\n\n\nInput.defaultProps = {type: 'text', placeholder: ''}\n\nexport default Input;","import React, { Component } from 'react';\nimport './exchange-bar.scss'\nimport Input from '../Input'\nimport classnames from 'classnames'\n\nclass RedeemBar extends Component {\n state = {}\n\n render() {\n const {onChange, redeemCode, exchange} = this.props\n return (\n <div className=\"exchange-bar\">\n <Input\n placeholder={'请输入优惠码'}\n onChange={onChange}\n value={redeemCode}\n />\n <button className={classnames({\n active: redeemCode && redeemCode.length > 0\n })} onClick={exchange}>兑换\n </button>\n </div>\n );\n }\n}\n\nexport default RedeemBar;","import React, { PureComponent } from 'react'\nimport './coupon.scss'\nimport classnames from 'classnames'\n\nclass Coupon extends PureComponent {\n\n pick = () => {\n let {useCoupon, invalid} = this.props\n !invalid && useCoupon && useCoupon(this.props.id)\n }\n\n GoToUse = () => {\n this.props.useCoupon(this.props.id)\n }\n\n render() {\n let {\n ctype,\n amount,\n format_expire_time,\n limit_course,\n invalid,\n course_title,\n id,\n selectedCouponId,\n showUseButton\n } = this.props\n\n return (\n <li className='coupon' onClick={this.pick}>\n <div className={classnames('coupon-info', invalid ? 'invalid' : `coupon-type${ctype}`)}>\n <p className='type'>{ctype === 1 ? '代金券' : '课程券'}</p>\n {\n ctype === 1 ? <p className='denomination'>{amount} <span>元</span></p>\n : <p className='course-title'>{course_title}</p>\n\n }\n <p className='expire'>有效期至:{format_expire_time}</p>\n {\n selectedCouponId === id &&\n <i className={classnames('iconfont icondanseshixintubiao-5', {\n check: !invalid\n })}\n />\n }\n <ul>\n {\n new Array(19).fill('a').map((item, index) => {\n return <li key={index}/>\n })\n }\n </ul>\n </div>\n <div className=\"coupon-des\">\n <span className='limit'>{\n limit_course === 0 ? '可用于大于代金券金额的课程' : `仅适用于《${course_title}》`\n }</span>\n {\n showUseButton &&\n <button\n className='use'\n onClick={this.GoToUse}\n >立即使用\n </button>\n }\n\n </div>\n </li>\n );\n }\n}\n\nexport default Coupon","import React, { PureComponent } from 'react';\nimport './coupons.scss'\n\nimport RedeemBar from \"./RedeemBar\";\nimport Coupon from './Coupon'\nimport { http, api, getParam } from '@/utils'\nimport { WithFullSize } from '@/HOCs'\nimport { Toast } from 'antd-mobile'\nimport { isEmpty } from 'lodash'\nimport { HeaderBar } from \"@/common\";\n\n\nclass UseCoupon extends PureComponent {\n\n state = {\n selectedCouponId: 0,\n redeemCode: '',\n couponList: [],\n valid_coupons: [],\n invalid_coupons: [],\n courseId: getParam('id'),\n showUseButton: false\n }\n\n componentDidMount() {\n\n const {history, location} = this.props\n\n const {state} = this.props.location\n\n\n if (state && state.from) {\n if (state.from === '/my') {\n this.getMyCoupons();\n this.setState({\n showUseButton: true\n })\n } else {\n if (!this.state.courseId) {\n location.state && location.state.from ? history.replace(location.state.from) : history.goBack()\n }\n this.getAllCoupons();\n }\n }\n }\n\n handleChange = e => {\n let value = e ? e.target.value : ''\n this.setState({redeemCode: value})\n }\n\n exchange = () => {\n if (this.state.redeemCode !== '') {\n http.post(`${api.home}/m/coupon/exchange`, {\n code: this.state.redeemCode\n })\n .then(res => {\n const data = res.data\n if (data.code === 200) {\n\n const coupon = data.data\n\n if (this.state.showUseButton) {\n this.setState({\n couponList: [...state.couponList, coupon],\n redeemCode: ''\n })\n } else {\n\n const coupon = data.data\n\n if (coupon['ctype'] == 2\n && coupon['limit_course'] != this.state.courseId) {\n this.setState({\n invalid_coupons: [...this.state.invalid_coupons, coupon],\n showUseButton: null\n });\n } else {\n this.setState({\n valid_coupons: [...this.state.valid_coupons, coupon],\n redeemCode: ''\n })\n }\n\n\n }\n\n Toast.info('兑换成功')\n } else {\n Toast.info(data.msg)\n }\n })\n } else {\n Toast.info('请输入兑换码')\n }\n }\n\n getMyCoupons = () => {\n http.get(`${api.home}/m/coupon/all`)\n .then(res => {\n const data = res.data\n if (data.code === 200) {\n this.setState({\n couponList: isEmpty(data.data) ? [] : data.data\n })\n } else {\n Toast.info(data.msg)\n }\n })\n }\n\n getAllCoupons = () => {\n http.post(`${api.home}/m/coupon/select`, {course_id: this.state.courseId})\n .then(res => {\n const data = res.data\n if (data.code === 200) {\n\n const inuse_coupon = data.data['inuse_coupon'];\n\n\n this.setState({\n valid_coupons: inuse_coupon\n ? [...inuse_coupon, ...data.data.valid_coupons]\n : data.data.valid_coupons,\n invalid_coupons: data.data.invalid_coupons,\n selectedCouponId: inuse_coupon.length ? inuse_coupon[0].id : 0\n })\n\n } else {\n Toast.info(data.msg)\n }\n })\n }\n\n useCoupon = val => {\n const {history} = this.props\n const coupon = this.state.couponList.find(item => item.id === val)\n\n if (val) {\n if (this.state.showUseButton) {\n\n if (coupon['ctype'] === 1) {\n history.push(`/classify`)\n } else {\n history.push(`/detail?id=${coupon['limit_course']}`)\n }\n\n } else {\n\n const {courseId, selectedCouponId} = this.state\n\n if (selectedCouponId === val) {\n\n\n http.post(`${api.home}/m/coupon/cancel`, {\n course_id: courseId\n }).then(res => {\n const data = res.data\n if (data.code === 200) {\n\n\n this.setState({\n selectedCouponId: 0\n })\n\n\n } else {\n Toast.info(data.msg)\n }\n })\n\n\n } else {\n http.post(`${api.home}/m/coupon/use`, {\n course_id: this.state.courseId,\n coupon_id: val\n })\n .then(res => {\n const data = res && res.data\n if (data.code === 200) {\n\n this.setState({selectedCouponId: val})\n this.props.history.goBack()\n\n\n } else {\n Toast.info(data.msg)\n }\n })\n\n }\n\n\n }\n\n } else {\n Toast.info('未知错误')\n location.reload()\n }\n\n }\n\n render() {\n const {state} = this.props.location\n const {showUseButton, selectedCouponId} = this.state\n return (\n <div className='use-coupon'>\n <HeaderBar title='优惠券' arrow={true}/>\n <RedeemBar onChange={this.handleChange}\n exchange={this.exchange}\n redeemCode={this.state.redeemCode}/>\n <div className=\"coupons-area\">\n <Content\n coupons={\n state\n && state.from\n && state.from === '/my'\n ? this.state.couponList\n : this.state.valid_coupons\n }\n showUseButton={showUseButton}\n selectedCouponId={selectedCouponId}\n select={this.select}\n useCoupon={this.useCoupon}\n />\n {\n this.state.invalid_coupons.length > 0 &&\n (\n <>\n <div className='invalid-title'>- 不可使用的优惠券 -</div>\n <Content\n coupons={this.state.invalid_coupons}\n selectedCouponId={selectedCouponId}\n select={this.select}\n purpose={'use'}\n invalid={'invalid'}\n />\n </>\n )\n }\n </div>\n </div>\n );\n }\n}\n\nfunction Content({coupons, ...rest}) {\n if (coupons.length === 0) {\n return (\n <div className='empty'>\n <p>暂无可使用的优惠券</p>\n </div>\n )\n }\n return (\n <ul>\n {\n coupons.map(item => {\n return (\n <Coupon\n key={item.id}\n {...item}\n id={item.id}\n {...rest}\n />\n )\n })\n }\n </ul>\n )\n}\n\nexport default WithFullSize(UseCoupon);"],"sourceRoot":""}
\ No newline at end of file \ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
(window.webpackJsonp=window.webpackJsonp||[]).push([[2],{761:function(e,a,t){},767:function(e,a,t){"use strict";t.r(a);t(26);var n=t(2),c=t.n(n),r=t(4),s=t(5),m=t(7),i=t(6),o=t(8),l=(t(163),t(83)),d=t.n(l),u=t(0),p=t.n(u),E=(t(761),t(18)),f=t(103),N=t(1),b=t(13),v=d.a.alert,_=function(e){function a(e){var t;return Object(r.a)(this,a),(t=Object(m.a)(this,Object(i.a)(a).call(this,e))).getList=function(){N.d.get("".concat(N.a.home,"/m/my/orders/1/1")).then(function(e){200===e.data.code?t.setState({data:e.data.data}):c.a.info(e.data.msg,2)})},t.cancel=function(e){v("\u786e\u8ba4\u53d6\u6d88\u8ba2\u5355\uff1f","\u8ba2\u5355\u53d6\u6d88\u540e\uff0c\u4f18\u60e0\u5238\u548c\u62b5\u6263\u7684\u4f59\u989d\u4f1a\u8fd4\u56de\u5230\u60a8\u7684\u8d26\u6237\u3002",[{text:"\u53d6\u6d88",onPress:function(){return console.log("cancel")}},{text:"\u786e\u8ba4",onPress:function(){var a={order_id:e};N.d.post("".concat(N.a.home,"/m/cancel_order"),a).then(function(e){200===e.data.code?t.getList():c.a.info(e.data.msg,2)})}}])},t.state={data:[]},t}return Object(o.a)(a,e),Object(s.a)(a,[{key:"componentDidMount",value:function(){this.getList()}},{key:"render",value:function(){var e=this;return p.a.createElement("div",{className:"myorders-box"},p.a.createElement(E.e,{title:"\u6211\u7684\u8ba2\u5355",arrow:!0,cart:!1}),this.state.data&&this.state.data.length>0?this.state.data.map(function(a,t){return p.a.createElement("div",{className:"order-body",key:t},p.a.createElement(h,{item:a}),a.course&&a.course.length>0&&a.course.map(function(e,a){var t=p.a.createElement("div",{className:"order-info"},p.a.createElement("p",{className:"order-title text-overflow-one"},p.a.createElement(b.b,{to:"/detail?id=".concat(e.course_id)},e.course_title)),p.a.createElement("p",{className:"order-content text-overflow-2"},e.description),p.a.createElement("p",{className:"order-des"},p.a.createElement("span",{className:"order-newprice"},"\xa5",e.pay_amount),p.a.createElement("span",{className:"order-price"},"\xa5",e.price0)));return p.a.createElement("div",{className:"order-wrap",key:a},p.a.createElement(f.a,{info:t,src:e.image_name,id:e.course_id}))}),p.a.createElement(g,{item:a,cancel:e.cancel}))}):p.a.createElement("div",{className:"cart-tip"},p.a.createElement("p",{className:"cart-mess"},"\u60a8\u8fd8\u6ca1\u6709\u8ba2\u5355\u54e6\uff0c\u5feb\u53bb\u901b\u901b\u5427~"),p.a.createElement(b.b,{to:"/classify"},"\u53bb\u901b\u901b")))}}]),a}(u.Component);function h(e){var a;return a="0"===e.item.pay_time&&0===e.item.member_num?p.a.createElement("span",{className:"oid-status"},"\u7b49\u5f85\u652f\u4ed8"):e.item.member_num===e.item.pdd_info.length&&0!==e.item.member_num?p.a.createElement("span",{className:"oid-success"},"\u62fc\u56e2\u6210\u529f"):p.a.createElement("span",{className:"oid-success"},"\u652f\u4ed8\u6210\u529f"),p.a.createElement("div",{className:"order-head"},p.a.createElement("span",{className:"oid-num"},"\u8ba2\u5355\u53f7\uff1a",e.item.oid),a)}function g(e){return p.a.createElement("div",{className:"order-btm"},p.a.createElement("div",{className:"price-info"},p.a.createElement("p",null,p.a.createElement("span",{className:"payable"},"\u5e94\u4ed8\uff1a"),p.a.createElement("span",{className:"price"},"\xa5",e.item.pay_amount)),p.a.createElement("p",null,p.a.createElement("span",{className:"payable"},"\u5df2\u4f18\u60e0\uff1a"),p.a.createElement("span",{className:"price"},"\xa5",e.item.coupon_amount))),"0"===e.item.pay_time&&0===e.item.member_num&&p.a.createElement("div",{className:"btm-right"},p.a.createElement("button",{className:"cancel",onClick:function(a){return e.cancel(e.item.oid)}},"\u53d6\u6d88\u8ba2\u5355"),p.a.createElement(b.b,{to:"/payorder?oid=".concat(e.item.oid)},"\u53bb\u652f\u4ed8")),0!==e.item.member_num&&p.a.createElement("div",{className:"btm-right"},p.a.createElement("div",{className:"group"},e.item.pdd_info&&e.item.pdd_info.length>0&&e.item.pdd_info.map(function(e,a){return p.a.createElement("img",{src:""===e.user_avatar?"https://julyedu-cdn.oss-cn-beijing.aliyuncs.com/tinypng-spreadtrain8/ellipsis.png":e.user_avatar,key:a,alt:""})}))))}a.default=_}}]); (window.webpackJsonp=window.webpackJsonp||[]).push([[2],{762:function(e,a,t){},768:function(e,a,t){"use strict";t.r(a);t(26);var n=t(2),c=t.n(n),r=t(4),s=t(5),m=t(8),i=t(6),o=t(7),l=(t(165),t(84)),d=t.n(l),u=t(0),p=t.n(u),E=(t(762),t(18)),f=t(105),N=t(1),b=t(13),v=d.a.alert,_=function(e){function a(e){var t;return Object(r.a)(this,a),(t=Object(m.a)(this,Object(i.a)(a).call(this,e))).getList=function(){N.d.get("".concat(N.a.home,"/m/my/orders/1/1")).then(function(e){200===e.data.code?t.setState({data:e.data.data}):c.a.info(e.data.msg,2)})},t.cancel=function(e){v("\u786e\u8ba4\u53d6\u6d88\u8ba2\u5355\uff1f","\u8ba2\u5355\u53d6\u6d88\u540e\uff0c\u4f18\u60e0\u5238\u548c\u62b5\u6263\u7684\u4f59\u989d\u4f1a\u8fd4\u56de\u5230\u60a8\u7684\u8d26\u6237\u3002",[{text:"\u53d6\u6d88",onPress:function(){return console.log("cancel")}},{text:"\u786e\u8ba4",onPress:function(){var a={order_id:e};N.d.post("".concat(N.a.home,"/m/cancel_order"),a).then(function(e){200===e.data.code?t.getList():c.a.info(e.data.msg,2)})}}])},t.state={data:[]},t}return Object(o.a)(a,e),Object(s.a)(a,[{key:"componentDidMount",value:function(){this.getList()}},{key:"render",value:function(){var e=this;return p.a.createElement("div",{className:"myorders-box"},p.a.createElement(E.e,{title:"\u6211\u7684\u8ba2\u5355",arrow:!0,cart:!1}),this.state.data&&this.state.data.length>0?this.state.data.map(function(a,t){return p.a.createElement("div",{className:"order-body",key:t},p.a.createElement(h,{item:a}),a.course&&a.course.length>0&&a.course.map(function(e,a){var t=p.a.createElement("div",{className:"order-info"},p.a.createElement("p",{className:"order-title text-overflow-one"},p.a.createElement(b.b,{to:"/detail?id=".concat(e.course_id)},e.course_title)),p.a.createElement("p",{className:"order-content text-overflow-2"},e.description),p.a.createElement("p",{className:"order-des"},p.a.createElement("span",{className:"order-newprice"},"\xa5",e.pay_amount),p.a.createElement("span",{className:"order-price"},"\xa5",e.price0)));return p.a.createElement("div",{className:"order-wrap",key:a},p.a.createElement(f.a,{info:t,src:e.image_name,id:e.course_id}))}),p.a.createElement(g,{item:a,cancel:e.cancel}))}):p.a.createElement("div",{className:"cart-tip"},p.a.createElement("p",{className:"cart-mess"},"\u60a8\u8fd8\u6ca1\u6709\u8ba2\u5355\u54e6\uff0c\u5feb\u53bb\u901b\u901b\u5427~"),p.a.createElement(b.b,{to:"/classify"},"\u53bb\u901b\u901b")))}}]),a}(u.Component);function h(e){var a;return a="0"===e.item.pay_time&&0===e.item.member_num?p.a.createElement("span",{className:"oid-status"},"\u7b49\u5f85\u652f\u4ed8"):e.item.member_num===e.item.pdd_info.length&&0!==e.item.member_num?p.a.createElement("span",{className:"oid-success"},"\u62fc\u56e2\u6210\u529f"):p.a.createElement("span",{className:"oid-success"},"\u652f\u4ed8\u6210\u529f"),p.a.createElement("div",{className:"order-head"},p.a.createElement("span",{className:"oid-num"},"\u8ba2\u5355\u53f7\uff1a",e.item.oid),a)}function g(e){return p.a.createElement("div",{className:"order-btm"},p.a.createElement("div",{className:"price-info"},p.a.createElement("p",null,p.a.createElement("span",{className:"payable"},"\u5e94\u4ed8\uff1a"),p.a.createElement("span",{className:"price"},"\xa5",e.item.pay_amount)),p.a.createElement("p",null,p.a.createElement("span",{className:"payable"},"\u5df2\u4f18\u60e0\uff1a"),p.a.createElement("span",{className:"price"},"\xa5",e.item.coupon_amount))),"0"===e.item.pay_time&&0===e.item.member_num&&p.a.createElement("div",{className:"btm-right"},p.a.createElement("button",{className:"cancel",onClick:function(a){return e.cancel(e.item.oid)}},"\u53d6\u6d88\u8ba2\u5355"),p.a.createElement(b.b,{to:"/payorder?oid=".concat(e.item.oid)},"\u53bb\u652f\u4ed8")),0!==e.item.member_num&&p.a.createElement("div",{className:"btm-right"},p.a.createElement("div",{className:"group"},e.item.pdd_info&&e.item.pdd_info.length>0&&e.item.pdd_info.map(function(e,a){return p.a.createElement("img",{src:""===e.user_avatar?"https://julyedu-cdn.oss-cn-beijing.aliyuncs.com/tinypng-spreadtrain8/ellipsis.png":e.user_avatar,key:a,alt:""})}))))}a.default=_}}]);
//# sourceMappingURL=myorders.25e0b3a3.chunk.js.map //# sourceMappingURL=myorders.e8bbccd7.chunk.js.map
\ No newline at end of file \ No newline at end of file
{"version":3,"sources":["components/myOrders/index.js"],"names":["alert","antd_mobile_lib_modal__WEBPACK_IMPORTED_MODULE_8___default","a","MyOrders","props","_this","Object","_Users_zhanghaozhe_server_mr_julyedu_node_modules_babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_2__","this","_Users_zhanghaozhe_server_mr_julyedu_node_modules_babel_runtime_helpers_esm_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_4__","_Users_zhanghaozhe_server_mr_julyedu_node_modules_babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_5__","call","getList","http","get","concat","api","home","then","res","data","code","setState","antd_mobile_lib_toast__WEBPACK_IMPORTED_MODULE_1___default","info","msg","cancel","oid","text","onPress","console","log","order_id","post","state","_this2","react__WEBPACK_IMPORTED_MODULE_9___default","createElement","className","_common__WEBPACK_IMPORTED_MODULE_11__","title","arrow","cart","length","map","item","index","key","OrderInfo","course","Info","react_router_dom__WEBPACK_IMPORTED_MODULE_14__","to","course_id","course_title","description","pay_amount","price0","_common_OrderList__WEBPACK_IMPORTED_MODULE_12__","src","image_name","id","PayInfo","Component","btn","pay_time","member_num","pdd_info","coupon_amount","onClick","event","user_avatar","alt"],"mappings":"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","file":"static/js/myorders.25e0b3a3.chunk.js","sourcesContent":["import React, {Component} from 'react'\nimport './index.scss'\nimport {HeaderBar} from '../../common'\nimport OrderList from '@/common/OrderList'\nimport {http, api} from \"@/utils\"\nimport {Link} from 'react-router-dom'\nimport {Modal, Toast} from 'antd-mobile'\n\nconst alert = Modal.alert;\n\n\nclass MyOrders extends Component {\n constructor(props) {\n super(props)\n this.state = {\n data: []\n }\n }\n\n componentDidMount() {\n this.getList()\n }\n\n // 获取订单\n getList = () => {\n http.get(`${api.home}/m/my/orders/1/1`,).then((res) => {\n if (res.data.code === 200) {\n this.setState({\n data: res.data.data\n })\n } else {\n Toast.info(res.data.msg, 2);\n }\n })\n }\n\n // 取消订单\n cancel = (oid) => {\n alert('确认取消订单?', '订单取消后,优惠券和抵扣的余额会返回到您的账户。', [\n {text: '取消', onPress: () => console.log('cancel')},\n {\n text: '确认',\n onPress: () => {\n let data = {\n order_id: oid\n }\n http.post(`${api.home}/m/cancel_order`, data).then((res) => {\n if (res.data.code === 200) {\n this.getList()\n } else {\n Toast.info(res.data.msg, 2);\n }\n })\n }\n }\n ])\n }\n\n\n render() {\n\n return (\n <div className='myorders-box'>\n <HeaderBar title='我的订单' arrow={true} cart={false}></HeaderBar>\n {\n this.state.data && this.state.data.length > 0 ?\n this.state.data.map((item, index) => {\n return (\n <div className=\"order-body\" key={index}>\n <OrderInfo item={item}/>\n {\n item.course && item.course.length > 0 && item.course.map((item, index) => {\n const Info = (\n <div className=\"order-info\">\n <p className='order-title text-overflow-one'>\n <Link\n to={`/detail?id=${item.course_id}`}>{item.course_title}</Link>\n </p>\n <p className='order-content text-overflow-2'>{item.description}</p>\n <p className='order-des'>\n <span className='order-newprice'>¥{item.pay_amount}</span>\n <span className='order-price'>¥{item.price0}</span>\n </p>\n </div>\n )\n return (\n <div className=\"order-wrap\" key={index}>\n <OrderList info={Info} src={item.image_name}\n id={item.course_id}></OrderList>\n </div>\n )\n })\n }\n\n <PayInfo item={item} cancel={this.cancel}/>\n </div>\n )\n }) : <div className=\"cart-tip\">\n <p className='cart-mess'>您还没有订单哦,快去逛逛吧~</p>\n <Link to='/classify'>去逛逛</Link>\n </div>\n }\n\n </div>\n )\n }\n}\n\n\nfunction OrderInfo(props) {\n let btn\n if (props.item.pay_time === '0' && props.item.member_num === 0) {\n btn = <span className='oid-status'>等待支付</span>\n } else if ((props.item.member_num === props.item.pdd_info.length) && props.item.member_num !== 0) {\n btn = <span className='oid-success'>拼团成功</span>\n } else {\n btn = <span className='oid-success'>支付成功</span>\n }\n return (\n <div className='order-head'>\n <span className='oid-num'>订单号:{props.item.oid}</span>\n {btn}\n </div>\n )\n}\n\nfunction PayInfo(props) {\n return (\n <div className='order-btm'>\n <div className='price-info'>\n <p>\n <span className='payable'>应付:</span>\n <span className='price'>¥{props.item.pay_amount}</span>\n </p>\n <p>\n <span className='payable'>已优惠:</span>\n <span className='price'>¥{props.item.coupon_amount}</span>\n </p>\n </div>\n\n {\n props.item.pay_time === '0' && props.item.member_num === 0 &&\n <div className='btm-right'>\n <button className='cancel' onClick={event => props.cancel(props.item.oid)}>取消订单</button>\n <Link to={`/payorder?oid=${props.item.oid}`}>去支付</Link>\n </div>\n }\n\n {\n props.item.member_num !== 0 &&\n <div className='btm-right'>\n <div className=\"group\">\n {\n props.item.pdd_info && props.item.pdd_info.length > 0 && props.item.pdd_info.map((item, index) => {\n return (\n <img\n src={item.user_avatar === '' ? 'https://julyedu-cdn.oss-cn-beijing.aliyuncs.com/tinypng-spreadtrain8/ellipsis.png' : item.user_avatar}\n key={index} alt=\"\"/>\n )\n })\n }\n </div>\n </div>\n }\n </div>\n )\n}\n\nexport default MyOrders\n"],"sourceRoot":""} {"version":3,"sources":["components/myOrders/index.js"],"names":["alert","antd_mobile_lib_modal__WEBPACK_IMPORTED_MODULE_8___default","a","MyOrders","props","_this","Object","_Users_zhanghaozhe_server_mr_julyedu_node_modules_babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_2__","this","_Users_zhanghaozhe_server_mr_julyedu_node_modules_babel_runtime_helpers_esm_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_4__","_Users_zhanghaozhe_server_mr_julyedu_node_modules_babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_5__","call","getList","http","get","concat","api","home","then","res","data","code","setState","antd_mobile_lib_toast__WEBPACK_IMPORTED_MODULE_1___default","info","msg","cancel","oid","text","onPress","console","log","order_id","post","state","_this2","react__WEBPACK_IMPORTED_MODULE_9___default","createElement","className","_common__WEBPACK_IMPORTED_MODULE_11__","title","arrow","cart","length","map","item","index","key","OrderInfo","course","Info","react_router_dom__WEBPACK_IMPORTED_MODULE_14__","to","course_id","course_title","description","pay_amount","price0","_common_OrderList__WEBPACK_IMPORTED_MODULE_12__","src","image_name","id","PayInfo","Component","btn","pay_time","member_num","pdd_info","coupon_amount","onClick","event","user_avatar","alt"],"mappings":"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","file":"static/js/myorders.e8bbccd7.chunk.js","sourcesContent":["import React, {Component} from 'react'\nimport './index.scss'\nimport {HeaderBar} from '../../common'\nimport OrderList from '@/common/OrderList'\nimport {http, api} from \"@/utils\"\nimport {Link} from 'react-router-dom'\nimport {Modal, Toast} from 'antd-mobile'\n\nconst alert = Modal.alert;\n\n\nclass MyOrders extends Component {\n constructor(props) {\n super(props)\n this.state = {\n data: []\n }\n }\n\n componentDidMount() {\n this.getList()\n }\n\n // 获取订单\n getList = () => {\n http.get(`${api.home}/m/my/orders/1/1`,).then((res) => {\n if (res.data.code === 200) {\n this.setState({\n data: res.data.data\n })\n } else {\n Toast.info(res.data.msg, 2);\n }\n })\n }\n\n // 取消订单\n cancel = (oid) => {\n alert('确认取消订单?', '订单取消后,优惠券和抵扣的余额会返回到您的账户。', [\n {text: '取消', onPress: () => console.log('cancel')},\n {\n text: '确认',\n onPress: () => {\n let data = {\n order_id: oid\n }\n http.post(`${api.home}/m/cancel_order`, data).then((res) => {\n if (res.data.code === 200) {\n this.getList()\n } else {\n Toast.info(res.data.msg, 2);\n }\n })\n }\n }\n ])\n }\n\n\n render() {\n\n return (\n <div className='myorders-box'>\n <HeaderBar title='我的订单' arrow={true} cart={false}></HeaderBar>\n {\n this.state.data && this.state.data.length > 0 ?\n this.state.data.map((item, index) => {\n return (\n <div className=\"order-body\" key={index}>\n <OrderInfo item={item}/>\n {\n item.course && item.course.length > 0 && item.course.map((item, index) => {\n const Info = (\n <div className=\"order-info\">\n <p className='order-title text-overflow-one'>\n <Link\n to={`/detail?id=${item.course_id}`}>{item.course_title}</Link>\n </p>\n <p className='order-content text-overflow-2'>{item.description}</p>\n <p className='order-des'>\n <span className='order-newprice'>¥{item.pay_amount}</span>\n <span className='order-price'>¥{item.price0}</span>\n </p>\n </div>\n )\n return (\n <div className=\"order-wrap\" key={index}>\n <OrderList info={Info} src={item.image_name}\n id={item.course_id}></OrderList>\n </div>\n )\n })\n }\n\n <PayInfo item={item} cancel={this.cancel}/>\n </div>\n )\n }) : <div className=\"cart-tip\">\n <p className='cart-mess'>您还没有订单哦,快去逛逛吧~</p>\n <Link to='/classify'>去逛逛</Link>\n </div>\n }\n\n </div>\n )\n }\n}\n\n\nfunction OrderInfo(props) {\n let btn\n if (props.item.pay_time === '0' && props.item.member_num === 0) {\n btn = <span className='oid-status'>等待支付</span>\n } else if ((props.item.member_num === props.item.pdd_info.length) && props.item.member_num !== 0) {\n btn = <span className='oid-success'>拼团成功</span>\n } else {\n btn = <span className='oid-success'>支付成功</span>\n }\n return (\n <div className='order-head'>\n <span className='oid-num'>订单号:{props.item.oid}</span>\n {btn}\n </div>\n )\n}\n\nfunction PayInfo(props) {\n return (\n <div className='order-btm'>\n <div className='price-info'>\n <p>\n <span className='payable'>应付:</span>\n <span className='price'>¥{props.item.pay_amount}</span>\n </p>\n <p>\n <span className='payable'>已优惠:</span>\n <span className='price'>¥{props.item.coupon_amount}</span>\n </p>\n </div>\n\n {\n props.item.pay_time === '0' && props.item.member_num === 0 &&\n <div className='btm-right'>\n <button className='cancel' onClick={event => props.cancel(props.item.oid)}>取消订单</button>\n <Link to={`/payorder?oid=${props.item.oid}`}>去支付</Link>\n </div>\n }\n\n {\n props.item.member_num !== 0 &&\n <div className='btm-right'>\n <div className=\"group\">\n {\n props.item.pdd_info && props.item.pdd_info.length > 0 && props.item.pdd_info.map((item, index) => {\n return (\n <img\n src={item.user_avatar === '' ? 'https://julyedu-cdn.oss-cn-beijing.aliyuncs.com/tinypng-spreadtrain8/ellipsis.png' : item.user_avatar}\n key={index} alt=\"\"/>\n )\n })\n }\n </div>\n </div>\n }\n </div>\n )\n}\n\nexport default MyOrders\n"],"sourceRoot":""}
\ No newline at end of file \ No newline at end of file
(window.webpackJsonp=window.webpackJsonp||[]).push([[3],{762:function(e,t,a){},768:function(e,t,a){"use strict";a.r(t);a(26);var c=a(2),n=a.n(c),s=a(4),i=a(5),r=a(7),o=a(6),l=a(8),d=a(0),m=a.n(d),u=(a(762),a(18)),p=a(1),f=a(13),h=a(20),b=function(e){function t(e){var a;return Object(s.a)(this,t),(a=Object(r.a)(this,Object(o.a)(t).call(this,e))).getList=function(){p.d.get("".concat(p.a.home,"/m/my/courses")).then(function(e){200===e.data.code?a.setState({data:e.data.data}):n.a.info(e.data.msg,2)})},a.state={data:[]},a}return Object(l.a)(t,e),Object(i.a)(t,[{key:"componentDidMount",value:function(){this.getList()}},{key:"render",value:function(){var e=this.props.user,t=e&&e.data&&e.data.uid;return m.a.createElement("div",{className:"purchased-box"},m.a.createElement(u.e,{title:"\u5df2\u8d2d\u8bfe\u7a0b",arrow:!0,cart:!1}),this.state.data&&this.state.data.length>0?m.a.createElement("div",{className:"purchased-body"},m.a.createElement("div",{className:"tip"},"\u52a0\u7fa4\u8bf7\u5907\u6ce8\u60a8\u7684\u5b66\u53f7\uff1a",t),this.state.data.map(function(e,t){var a=m.a.createElement("div",{className:"info"},m.a.createElement("p",{className:"title"},m.a.createElement(f.b,{to:"/detail?id=".concat(e.course_id)},e.course_title)),m.a.createElement("p",{className:"contact text-overflow-2"},e.simpledescription),m.a.createElement("div",{className:"des"},"QQ\u7fa4\uff1a",e.course_qq));return m.a.createElement(u.h,{key:t,img:e.image_name,id:e.course_id,info:a})})):m.a.createElement("div",{className:"cart-tip"},m.a.createElement("p",{className:"cart-mess"},"\u60a8\u8fd8\u6ca1\u6709\u8bfe\u7a0b\u54e6\uff0c\u5feb\u53bb\u901b\u901b\u5427~"),m.a.createElement(f.b,{to:"/classify"},"\u53bb\u901b\u901b")))}}]),t}(d.Component);t.default=Object(h.b)(function(e){return{user:e.user}},null)(b)}}]); (window.webpackJsonp=window.webpackJsonp||[]).push([[3],{763:function(e,t,a){},769:function(e,t,a){"use strict";a.r(t);a(26);var c=a(2),n=a.n(c),s=a(4),i=a(5),r=a(8),o=a(6),l=a(7),d=a(0),m=a.n(d),u=(a(763),a(18)),p=a(1),f=a(13),h=a(20),b=function(e){function t(e){var a;return Object(s.a)(this,t),(a=Object(r.a)(this,Object(o.a)(t).call(this,e))).getList=function(){p.d.get("".concat(p.a.home,"/m/my/courses")).then(function(e){200===e.data.code?a.setState({data:e.data.data}):n.a.info(e.data.msg,2)})},a.state={data:[]},a}return Object(l.a)(t,e),Object(i.a)(t,[{key:"componentDidMount",value:function(){this.getList()}},{key:"render",value:function(){var e=this.props.user,t=e&&e.data&&e.data.uid;return m.a.createElement("div",{className:"purchased-box"},m.a.createElement(u.e,{title:"\u5df2\u8d2d\u8bfe\u7a0b",arrow:!0,cart:!1}),this.state.data&&this.state.data.length>0?m.a.createElement("div",{className:"purchased-body"},m.a.createElement("div",{className:"tip"},"\u52a0\u7fa4\u8bf7\u5907\u6ce8\u60a8\u7684\u5b66\u53f7\uff1a",t),this.state.data.map(function(e,t){var a=m.a.createElement("div",{className:"info"},m.a.createElement("p",{className:"title"},m.a.createElement(f.b,{to:"/detail?id=".concat(e.course_id)},e.course_title)),m.a.createElement("p",{className:"contact text-overflow-2"},e.simpledescription),m.a.createElement("div",{className:"des"},"QQ\u7fa4\uff1a",e.course_qq));return m.a.createElement(u.i,{key:t,img:e.image_name,id:e.course_id,info:a})})):m.a.createElement("div",{className:"cart-tip"},m.a.createElement("p",{className:"cart-mess"},"\u60a8\u8fd8\u6ca1\u6709\u8bfe\u7a0b\u54e6\uff0c\u5feb\u53bb\u901b\u901b\u5427~"),m.a.createElement(f.b,{to:"/classify"},"\u53bb\u901b\u901b")))}}]),t}(d.Component);t.default=Object(h.b)(function(e){return{user:e.user}},null)(b)}}]);
//# sourceMappingURL=purchased.1680cbec.chunk.js.map //# sourceMappingURL=purchased.587ba463.chunk.js.map
\ No newline at end of file \ No newline at end of file
{"version":3,"sources":["components/purchased/index.js"],"names":["Purchased","props","_this","Object","_Users_zhanghaozhe_server_mr_julyedu_node_modules_babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_2__","this","_Users_zhanghaozhe_server_mr_julyedu_node_modules_babel_runtime_helpers_esm_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_4__","_Users_zhanghaozhe_server_mr_julyedu_node_modules_babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_5__","call","getList","http","get","concat","api","home","then","res","data","code","setState","antd_mobile_lib_toast__WEBPACK_IMPORTED_MODULE_1___default","a","info","msg","state","user","uid","react__WEBPACK_IMPORTED_MODULE_7___default","createElement","className","_common__WEBPACK_IMPORTED_MODULE_9__","title","arrow","cart","length","map","item","index","Info","react_router_dom__WEBPACK_IMPORTED_MODULE_11__","to","course_id","course_title","simpledescription","course_qq","key","img","image_name","id","Component","connect"],"mappings":"4OASMA,cACF,SAAAA,EAAYC,GAAO,IAAAC,EAAA,OAAAC,OAAAC,EAAA,EAAAD,CAAAE,KAAAL,IACfE,EAAAC,OAAAG,EAAA,EAAAH,CAAAE,KAAAF,OAAAI,EAAA,EAAAJ,CAAAH,GAAAQ,KAAAH,KAAMJ,KAWVQ,QAAU,WACNC,IAAKC,IAAL,GAAAC,OAAYC,IAAIC,KAAhB,kBAAsCC,KAAK,SAACC,GAClB,MAAlBA,EAAIC,KAAKC,KACThB,EAAKiB,SAAS,CACVF,KAAMD,EAAIC,KAAKA,OAGnBG,EAAAC,EAAMC,KAAKN,EAAIC,KAAKM,IAAK,MAjBjCrB,EAAKsB,MAAQ,CACTP,KAAM,IAHKf,mFAQfG,KAAKI,2CAiBA,IACEgB,EAAQpB,KAAKJ,MAAbwB,KACDC,EAAMD,GAAQA,EAAKR,MAAQQ,EAAKR,KAAKS,IAC3C,OACIC,EAAAN,EAAAO,cAAA,OAAKC,UAAU,iBACXF,EAAAN,EAAAO,cAACE,EAAA,EAAD,CAAWC,MAAM,2BAAOC,OAAO,EAAMC,MAAM,IAEvC5B,KAAKmB,MAAMP,MAAQZ,KAAKmB,MAAMP,KAAKiB,OAAS,EACxCP,EAAAN,EAAAO,cAAA,OAAKC,UAAU,kBACXF,EAAAN,EAAAO,cAAA,OAAKC,UAAU,OAAf,+DAAgCH,GAE5BrB,KAAKmB,MAAMP,KAAKkB,IAAI,SAACC,EAAMC,GACvB,IAAMC,EACFX,EAAAN,EAAAO,cAAA,OAAKC,UAAU,QACXF,EAAAN,EAAAO,cAAA,KAAGC,UAAU,SACTF,EAAAN,EAAAO,cAACW,EAAA,EAAD,CAAMC,GAAE,cAAA5B,OAAgBwB,EAAKK,YACxBL,EAAKM,eAGdf,EAAAN,EAAAO,cAAA,KAAGC,UAAU,2BAA2BO,EAAKO,mBAC7ChB,EAAAN,EAAAO,cAAA,OAAKC,UAAU,OAAf,iBACSO,EAAKQ,YAItB,OACIjB,EAAAN,EAAAO,cAACE,EAAA,EAAD,CAAOe,IAAKR,EAAOS,IAAKV,EAAKW,WACtBC,GAAIZ,EAAKK,UACTnB,KAAMgB,OAK3BX,EAAAN,EAAAO,cAAA,OAAKC,UAAU,YACbF,EAAAN,EAAAO,cAAA,KAAGC,UAAU,aAAb,mFACAF,EAAAN,EAAAO,cAACW,EAAA,EAAD,CAAMC,GAAG,aAAT,+BA7DJS,aAsETC,sBACX,SAAA1B,GAAK,MAAK,CAACC,KAAMD,EAAMC,OACvB,KAFWyB,CAGblD","file":"static/js/purchased.1680cbec.chunk.js","sourcesContent":["import React, {Component} from 'react';\nimport './index.scss';\nimport {HeaderBar} from '../../common'\nimport {VList} from '../../common'\nimport {http, api} from \"@/utils\";\nimport {Link} from 'react-router-dom'\nimport {Toast} from 'antd-mobile'\nimport {connect} from \"react-redux\"\n\nclass Purchased extends Component {\n constructor(props) {\n super(props)\n this.state = {\n data: []\n }\n }\n\n componentDidMount() {\n this.getList()\n }\n\n // 获取订单\n getList = () => {\n http.get(`${api.home}/m/my/courses`,).then((res) => {\n if (res.data.code === 200) {\n this.setState({\n data: res.data.data\n })\n } else {\n Toast.info(res.data.msg, 2);\n }\n })\n }\n\n\n render() {\n const {user} = this.props\n const uid = user && user.data && user.data.uid\n return (\n <div className='purchased-box'>\n <HeaderBar title='已购课程' arrow={true} cart={false}></HeaderBar>\n {\n this.state.data && this.state.data.length > 0 ?\n <div className=\"purchased-body\">\n <div className='tip'>加群请备注您的学号:{uid}</div>\n {\n this.state.data.map((item, index) => {\n const Info = (\n <div className=\"info\">\n <p className='title'>\n <Link to={`/detail?id=${item.course_id}`}>\n {item.course_title}\n </Link>\n </p>\n <p className='contact text-overflow-2'>{item.simpledescription}</p>\n <div className='des'>\n QQ群:{item.course_qq}\n </div>\n </div>\n )\n return (\n <VList key={index} img={item.image_name}\n id={item.course_id}\n info={Info}></VList>\n )\n })\n }\n </div>\n : <div className=\"cart-tip\">\n <p className='cart-mess'>您还没有课程哦,快去逛逛吧~</p>\n <Link to='/classify'>去逛逛</Link>\n </div>\n }\n\n </div>\n )\n }\n}\n\nexport default connect(\n state => ({user: state.user}),\n null\n)(Purchased)\n"],"sourceRoot":""} {"version":3,"sources":["components/purchased/index.js"],"names":["Purchased","props","_this","Object","_Users_zhanghaozhe_server_mr_julyedu_node_modules_babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_2__","this","_Users_zhanghaozhe_server_mr_julyedu_node_modules_babel_runtime_helpers_esm_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_4__","_Users_zhanghaozhe_server_mr_julyedu_node_modules_babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_5__","call","getList","http","get","concat","api","home","then","res","data","code","setState","antd_mobile_lib_toast__WEBPACK_IMPORTED_MODULE_1___default","a","info","msg","state","user","uid","react__WEBPACK_IMPORTED_MODULE_7___default","createElement","className","_common__WEBPACK_IMPORTED_MODULE_9__","title","arrow","cart","length","map","item","index","Info","react_router_dom__WEBPACK_IMPORTED_MODULE_11__","to","course_id","course_title","simpledescription","course_qq","key","img","image_name","id","Component","connect"],"mappings":"4OASMA,cACF,SAAAA,EAAYC,GAAO,IAAAC,EAAA,OAAAC,OAAAC,EAAA,EAAAD,CAAAE,KAAAL,IACfE,EAAAC,OAAAG,EAAA,EAAAH,CAAAE,KAAAF,OAAAI,EAAA,EAAAJ,CAAAH,GAAAQ,KAAAH,KAAMJ,KAWVQ,QAAU,WACNC,IAAKC,IAAL,GAAAC,OAAYC,IAAIC,KAAhB,kBAAsCC,KAAK,SAACC,GAClB,MAAlBA,EAAIC,KAAKC,KACThB,EAAKiB,SAAS,CACVF,KAAMD,EAAIC,KAAKA,OAGnBG,EAAAC,EAAMC,KAAKN,EAAIC,KAAKM,IAAK,MAjBjCrB,EAAKsB,MAAQ,CACTP,KAAM,IAHKf,mFAQfG,KAAKI,2CAiBA,IACEgB,EAAQpB,KAAKJ,MAAbwB,KACDC,EAAMD,GAAQA,EAAKR,MAAQQ,EAAKR,KAAKS,IAC3C,OACIC,EAAAN,EAAAO,cAAA,OAAKC,UAAU,iBACXF,EAAAN,EAAAO,cAACE,EAAA,EAAD,CAAWC,MAAM,2BAAOC,OAAO,EAAMC,MAAM,IAEvC5B,KAAKmB,MAAMP,MAAQZ,KAAKmB,MAAMP,KAAKiB,OAAS,EACxCP,EAAAN,EAAAO,cAAA,OAAKC,UAAU,kBACXF,EAAAN,EAAAO,cAAA,OAAKC,UAAU,OAAf,+DAAgCH,GAE5BrB,KAAKmB,MAAMP,KAAKkB,IAAI,SAACC,EAAMC,GACvB,IAAMC,EACFX,EAAAN,EAAAO,cAAA,OAAKC,UAAU,QACXF,EAAAN,EAAAO,cAAA,KAAGC,UAAU,SACTF,EAAAN,EAAAO,cAACW,EAAA,EAAD,CAAMC,GAAE,cAAA5B,OAAgBwB,EAAKK,YACxBL,EAAKM,eAGdf,EAAAN,EAAAO,cAAA,KAAGC,UAAU,2BAA2BO,EAAKO,mBAC7ChB,EAAAN,EAAAO,cAAA,OAAKC,UAAU,OAAf,iBACSO,EAAKQ,YAItB,OACIjB,EAAAN,EAAAO,cAACE,EAAA,EAAD,CAAOe,IAAKR,EAAOS,IAAKV,EAAKW,WACtBC,GAAIZ,EAAKK,UACTnB,KAAMgB,OAK3BX,EAAAN,EAAAO,cAAA,OAAKC,UAAU,YACbF,EAAAN,EAAAO,cAAA,KAAGC,UAAU,aAAb,mFACAF,EAAAN,EAAAO,cAACW,EAAA,EAAD,CAAMC,GAAG,aAAT,+BA7DJS,aAsETC,sBACX,SAAA1B,GAAK,MAAK,CAACC,KAAMD,EAAMC,OACvB,KAFWyB,CAGblD","file":"static/js/purchased.587ba463.chunk.js","sourcesContent":["import React, {Component} from 'react';\nimport './index.scss';\nimport {HeaderBar} from '../../common'\nimport {VList} from '../../common'\nimport {http, api} from \"@/utils\";\nimport {Link} from 'react-router-dom'\nimport {Toast} from 'antd-mobile'\nimport {connect} from \"react-redux\"\n\nclass Purchased extends Component {\n constructor(props) {\n super(props)\n this.state = {\n data: []\n }\n }\n\n componentDidMount() {\n this.getList()\n }\n\n // 获取订单\n getList = () => {\n http.get(`${api.home}/m/my/courses`,).then((res) => {\n if (res.data.code === 200) {\n this.setState({\n data: res.data.data\n })\n } else {\n Toast.info(res.data.msg, 2);\n }\n })\n }\n\n\n render() {\n const {user} = this.props\n const uid = user && user.data && user.data.uid\n return (\n <div className='purchased-box'>\n <HeaderBar title='已购课程' arrow={true} cart={false}></HeaderBar>\n {\n this.state.data && this.state.data.length > 0 ?\n <div className=\"purchased-body\">\n <div className='tip'>加群请备注您的学号:{uid}</div>\n {\n this.state.data.map((item, index) => {\n const Info = (\n <div className=\"info\">\n <p className='title'>\n <Link to={`/detail?id=${item.course_id}`}>\n {item.course_title}\n </Link>\n </p>\n <p className='contact text-overflow-2'>{item.simpledescription}</p>\n <div className='des'>\n QQ群:{item.course_qq}\n </div>\n </div>\n )\n return (\n <VList key={index} img={item.image_name}\n id={item.course_id}\n info={Info}></VList>\n )\n })\n }\n </div>\n : <div className=\"cart-tip\">\n <p className='cart-mess'>您还没有课程哦,快去逛逛吧~</p>\n <Link to='/classify'>去逛逛</Link>\n </div>\n }\n\n </div>\n )\n }\n}\n\nexport default connect(\n state => ({user: state.user}),\n null\n)(Purchased)\n"],"sourceRoot":""}
\ No newline at end of file \ No newline at end of file
!function(e){function t(t){for(var n,o,c=t[0],i=t[1],s=t[2],l=0,d=[];l<c.length;l++)o=c[l],a[o]&&d.push(a[o][0]),a[o]=0;for(n in i)Object.prototype.hasOwnProperty.call(i,n)&&(e[n]=i[n]);for(f&&f(t);d.length;)d.shift()();return u.push.apply(u,s||[]),r()}function r(){for(var e,t=0;t<u.length;t++){for(var r=u[t],n=!0,o=1;o<r.length;o++){var i=r[o];0!==a[i]&&(n=!1)}n&&(u.splice(t--,1),e=c(c.s=r[0]))}return e}var n={},o={4:0},a={4:0},u=[];function c(t){if(n[t])return n[t].exports;var r=n[t]={i:t,l:!1,exports:{}};return e[t].call(r.exports,r,r.exports,c),r.l=!0,r.exports}c.e=function(e){var t=[];o[e]?t.push(o[e]):0!==o[e]&&{0:1,2:1,3:1,5:1,6:1,7:1,8:1,10:1}[e]&&t.push(o[e]=new Promise(function(t,r){for(var n="static/css/"+({0:"coupons",2:"myorders",3:"purchased",5:"shareposter",6:"study",7:"togroup",8:"video"}[e]||e)+"."+{0:"9ece7350",2:"3ab93c8e",3:"72c55bd6",5:"82081d02",6:"50a142e7",7:"49988cae",8:"10e4a7e1",10:"1597b3e9",11:"31d6cfe0"}[e]+".chunk.css",a=c.p+n,u=document.getElementsByTagName("link"),i=0;i<u.length;i++){var s=(f=u[i]).getAttribute("data-href")||f.getAttribute("href");if("stylesheet"===f.rel&&(s===n||s===a))return t()}var l=document.getElementsByTagName("style");for(i=0;i<l.length;i++){var f;if((s=(f=l[i]).getAttribute("data-href"))===n||s===a)return t()}var d=document.createElement("link");d.rel="stylesheet",d.type="text/css",d.onload=t,d.onerror=function(t){var n=t&&t.target&&t.target.src||a,u=new Error("Loading CSS chunk "+e+" failed.\n("+n+")");u.request=n,delete o[e],d.parentNode.removeChild(d),r(u)},d.href=a,document.getElementsByTagName("head")[0].appendChild(d)}).then(function(){o[e]=0}));var r=a[e];if(0!==r)if(r)t.push(r[2]);else{var n=new Promise(function(t,n){r=a[e]=[t,n]});t.push(r[2]=n);var u,i=document.createElement("script");i.charset="utf-8",i.timeout=120,c.nc&&i.setAttribute("nonce",c.nc),i.src=function(e){return c.p+"static/js/"+({0:"coupons",2:"myorders",3:"purchased",5:"shareposter",6:"study",7:"togroup",8:"video"}[e]||e)+"."+{0:"07cb8020",2:"25e0b3a3",3:"1680cbec",5:"a9c1ccb0",6:"58204291",7:"0bcd07e3",8:"1f3d951b",10:"e9ff1ae6",11:"611881c2"}[e]+".chunk.js"}(e),u=function(t){i.onerror=i.onload=null,clearTimeout(s);var r=a[e];if(0!==r){if(r){var n=t&&("load"===t.type?"missing":t.type),o=t&&t.target&&t.target.src,u=new Error("Loading chunk "+e+" failed.\n("+n+": "+o+")");u.type=n,u.request=o,r[1](u)}a[e]=void 0}};var s=setTimeout(function(){u({type:"timeout",target:i})},12e4);i.onerror=i.onload=u,document.head.appendChild(i)}return Promise.all(t)},c.m=e,c.c=n,c.d=function(e,t,r){c.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},c.r=function(e){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},c.t=function(e,t){if(1&t&&(e=c(e)),8&t)return e;if(4&t&&"object"===typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(c.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)c.d(r,n,function(t){return e[t]}.bind(null,n));return r},c.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return c.d(t,"a",t),t},c.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},c.p="/",c.oe=function(e){throw console.error(e),e};var i=window.webpackJsonp=window.webpackJsonp||[],s=i.push.bind(i);i.push=t,i=i.slice();for(var l=0;l<i.length;l++)t(i[l]);var f=s;r()}([]); !function(e){function t(t){for(var n,o,c=t[0],i=t[1],s=t[2],l=0,d=[];l<c.length;l++)o=c[l],a[o]&&d.push(a[o][0]),a[o]=0;for(n in i)Object.prototype.hasOwnProperty.call(i,n)&&(e[n]=i[n]);for(f&&f(t);d.length;)d.shift()();return u.push.apply(u,s||[]),r()}function r(){for(var e,t=0;t<u.length;t++){for(var r=u[t],n=!0,o=1;o<r.length;o++){var i=r[o];0!==a[i]&&(n=!1)}n&&(u.splice(t--,1),e=c(c.s=r[0]))}return e}var n={},o={4:0},a={4:0},u=[];function c(t){if(n[t])return n[t].exports;var r=n[t]={i:t,l:!1,exports:{}};return e[t].call(r.exports,r,r.exports,c),r.l=!0,r.exports}c.e=function(e){var t=[];o[e]?t.push(o[e]):0!==o[e]&&{0:1,2:1,3:1,5:1,6:1,7:1,8:1,10:1}[e]&&t.push(o[e]=new Promise(function(t,r){for(var n="static/css/"+({0:"coupons",2:"myorders",3:"purchased",5:"shareposter",6:"study",7:"togroup",8:"video"}[e]||e)+"."+{0:"9ece7350",2:"3ab93c8e",3:"72c55bd6",5:"82081d02",6:"50a142e7",7:"49988cae",8:"10e4a7e1",10:"1597b3e9",11:"31d6cfe0"}[e]+".chunk.css",a=c.p+n,u=document.getElementsByTagName("link"),i=0;i<u.length;i++){var s=(f=u[i]).getAttribute("data-href")||f.getAttribute("href");if("stylesheet"===f.rel&&(s===n||s===a))return t()}var l=document.getElementsByTagName("style");for(i=0;i<l.length;i++){var f;if((s=(f=l[i]).getAttribute("data-href"))===n||s===a)return t()}var d=document.createElement("link");d.rel="stylesheet",d.type="text/css",d.onload=t,d.onerror=function(t){var n=t&&t.target&&t.target.src||a,u=new Error("Loading CSS chunk "+e+" failed.\n("+n+")");u.request=n,delete o[e],d.parentNode.removeChild(d),r(u)},d.href=a,document.getElementsByTagName("head")[0].appendChild(d)}).then(function(){o[e]=0}));var r=a[e];if(0!==r)if(r)t.push(r[2]);else{var n=new Promise(function(t,n){r=a[e]=[t,n]});t.push(r[2]=n);var u,i=document.createElement("script");i.charset="utf-8",i.timeout=120,c.nc&&i.setAttribute("nonce",c.nc),i.src=function(e){return c.p+"static/js/"+({0:"coupons",2:"myorders",3:"purchased",5:"shareposter",6:"study",7:"togroup",8:"video"}[e]||e)+"."+{0:"74915af0",2:"e8bbccd7",3:"587ba463",5:"03babfdf",6:"863458b0",7:"d6b233f8",8:"6b23c829",10:"98079aa4",11:"2e343155"}[e]+".chunk.js"}(e),u=function(t){i.onerror=i.onload=null,clearTimeout(s);var r=a[e];if(0!==r){if(r){var n=t&&("load"===t.type?"missing":t.type),o=t&&t.target&&t.target.src,u=new Error("Loading chunk "+e+" failed.\n("+n+": "+o+")");u.type=n,u.request=o,r[1](u)}a[e]=void 0}};var s=setTimeout(function(){u({type:"timeout",target:i})},12e4);i.onerror=i.onload=u,document.head.appendChild(i)}return Promise.all(t)},c.m=e,c.c=n,c.d=function(e,t,r){c.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},c.r=function(e){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},c.t=function(e,t){if(1&t&&(e=c(e)),8&t)return e;if(4&t&&"object"===typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(c.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)c.d(r,n,function(t){return e[t]}.bind(null,n));return r},c.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return c.d(t,"a",t),t},c.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},c.p="/",c.oe=function(e){throw console.error(e),e};var i=window.webpackJsonp=window.webpackJsonp||[],s=i.push.bind(i);i.push=t,i=i.slice();for(var l=0;l<i.length;l++)t(i[l]);var f=s;r()}([]);
//# sourceMappingURL=runtime~main.2579bab4.js.map //# sourceMappingURL=runtime~main.d131bbb8.js.map
\ No newline at end of file \ No newline at end of file
{"version":3,"sources":["../webpack/bootstrap"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","installedChunks","push","Object","prototype","hasOwnProperty","call","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","installedCssChunks","4","exports","module","l","e","promises","0","2","3","5","6","7","8","10","Promise","resolve","reject","href","11","fullhref","p","existingLinkTags","document","getElementsByTagName","dataHref","tag","getAttribute","rel","existingStyleTags","linkTag","createElement","type","onload","onerror","event","request","target","src","err","Error","parentNode","removeChild","appendChild","then","installedChunkData","promise","onScriptComplete","script","charset","timeout","nc","setAttribute","jsonpScriptSrc","clearTimeout","chunk","errorType","realSrc","error","undefined","setTimeout","head","all","m","c","d","name","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","console","jsonpArray","window","oldJsonpFunction","slice"],"mappings":"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","file":"static/js/runtime~main.2579bab4.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t4: 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t4: 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"static/js/\" + ({\"0\":\"coupons\",\"2\":\"myorders\",\"3\":\"purchased\",\"5\":\"shareposter\",\"6\":\"study\",\"7\":\"togroup\",\"8\":\"video\"}[chunkId]||chunkId) + \".\" + {\"0\":\"07cb8020\",\"2\":\"25e0b3a3\",\"3\":\"1680cbec\",\"5\":\"a9c1ccb0\",\"6\":\"58204291\",\"7\":\"0bcd07e3\",\"8\":\"1f3d951b\",\"10\":\"e9ff1ae6\",\"11\":\"611881c2\"}[chunkId] + \".chunk.js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"0\":1,\"2\":1,\"3\":1,\"5\":1,\"6\":1,\"7\":1,\"8\":1,\"10\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"static/css/\" + ({\"0\":\"coupons\",\"2\":\"myorders\",\"3\":\"purchased\",\"5\":\"shareposter\",\"6\":\"study\",\"7\":\"togroup\",\"8\":\"video\"}[chunkId]||chunkId) + \".\" + {\"0\":\"9ece7350\",\"2\":\"3ab93c8e\",\"3\":\"72c55bd6\",\"5\":\"82081d02\",\"6\":\"50a142e7\",\"7\":\"49988cae\",\"8\":\"10e4a7e1\",\"10\":\"1597b3e9\",\"11\":\"31d6cfe0\"}[chunkId] + \".chunk.css\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tlinkTag.onload = resolve;\n \t\t\t\tlinkTag.onerror = function(event) {\n \t\t\t\t\tvar request = event && event.target && event.target.src || fullhref;\n \t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + request + \")\");\n \t\t\t\t\terr.request = request;\n \t\t\t\t\tdelete installedCssChunks[chunkId]\n \t\t\t\t\tlinkTag.parentNode.removeChild(linkTag)\n \t\t\t\t\treject(err);\n \t\t\t\t};\n \t\t\t\tlinkTag.href = fullhref;\n\n \t\t\t\tvar head = document.getElementsByTagName(\"head\")[0];\n \t\t\t\thead.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\tvar error = new Error('Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')');\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// run deferred modules from other chunks\n \tcheckDeferredModules();\n"],"sourceRoot":""} {"version":3,"sources":["../webpack/bootstrap"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","installedChunks","push","Object","prototype","hasOwnProperty","call","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","installedCssChunks","4","exports","module","l","e","promises","0","2","3","5","6","7","8","10","Promise","resolve","reject","href","11","fullhref","p","existingLinkTags","document","getElementsByTagName","dataHref","tag","getAttribute","rel","existingStyleTags","linkTag","createElement","type","onload","onerror","event","request","target","src","err","Error","parentNode","removeChild","appendChild","then","installedChunkData","promise","onScriptComplete","script","charset","timeout","nc","setAttribute","jsonpScriptSrc","clearTimeout","chunk","errorType","realSrc","error","undefined","setTimeout","head","all","m","c","d","name","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","console","jsonpArray","window","oldJsonpFunction","slice"],"mappings":"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","file":"static/js/runtime~main.d131bbb8.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t4: 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t4: 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"static/js/\" + ({\"0\":\"coupons\",\"2\":\"myorders\",\"3\":\"purchased\",\"5\":\"shareposter\",\"6\":\"study\",\"7\":\"togroup\",\"8\":\"video\"}[chunkId]||chunkId) + \".\" + {\"0\":\"74915af0\",\"2\":\"e8bbccd7\",\"3\":\"587ba463\",\"5\":\"03babfdf\",\"6\":\"863458b0\",\"7\":\"d6b233f8\",\"8\":\"6b23c829\",\"10\":\"98079aa4\",\"11\":\"2e343155\"}[chunkId] + \".chunk.js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"0\":1,\"2\":1,\"3\":1,\"5\":1,\"6\":1,\"7\":1,\"8\":1,\"10\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"static/css/\" + ({\"0\":\"coupons\",\"2\":\"myorders\",\"3\":\"purchased\",\"5\":\"shareposter\",\"6\":\"study\",\"7\":\"togroup\",\"8\":\"video\"}[chunkId]||chunkId) + \".\" + {\"0\":\"9ece7350\",\"2\":\"3ab93c8e\",\"3\":\"72c55bd6\",\"5\":\"82081d02\",\"6\":\"50a142e7\",\"7\":\"49988cae\",\"8\":\"10e4a7e1\",\"10\":\"1597b3e9\",\"11\":\"31d6cfe0\"}[chunkId] + \".chunk.css\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tlinkTag.onload = resolve;\n \t\t\t\tlinkTag.onerror = function(event) {\n \t\t\t\t\tvar request = event && event.target && event.target.src || fullhref;\n \t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + request + \")\");\n \t\t\t\t\terr.request = request;\n \t\t\t\t\tdelete installedCssChunks[chunkId]\n \t\t\t\t\tlinkTag.parentNode.removeChild(linkTag)\n \t\t\t\t\treject(err);\n \t\t\t\t};\n \t\t\t\tlinkTag.href = fullhref;\n\n \t\t\t\tvar head = document.getElementsByTagName(\"head\")[0];\n \t\t\t\thead.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\tvar error = new Error('Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')');\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// run deferred modules from other chunks\n \tcheckDeferredModules();\n"],"sourceRoot":""}
\ No newline at end of file \ No newline at end of file
(window.webpackJsonp=window.webpackJsonp||[]).push([[5],{739:function(e,t,a){},766:function(e,t,a){"use strict";a.r(t);a(26);var n=a(2),i=a.n(n),s=a(4),r=a(5),c=a(7),o=a(6),l=a(8),d=a(90),m=a(0),g=a.n(m),u=(a(739),a(18)),h=a(1),v=a(740),f=a.n(v),p=function(e){function t(e){var a;return Object(s.a)(this,t),(a=Object(c.a)(this,Object(o.a)(t).call(this,e))).initCanvas=function(e,t){var n=Object(d.a)(Object(d.a)(a)),i=e[t].poster,s=450*e[t].header_position_x,r=800*e[t].header_position_y,c=(e[t].qr_code_x,e[t].qr_code_y,e[t].qr_code_width,e[t].qr_code_height,"/detail/".concat(Object(h.c)("courseId"),"/").concat(Object(h.c)("dist_code")),document.getElementById("canvas")),o=c.getContext("2d");n.getBase64(i).then(function(a){var i=new Image;i.src=a;var c=document.getElementById("qrcode"),l=navigator.userAgent.toLowerCase();l.indexOf("Android")>-1||l.indexOf("Adr"),l.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/);/(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent)?c=document.getElementById("qrcode"):/(Android)/i.test(navigator.userAgent)&&(c=document.getElementById("qrcode")),i.setAttribute("crossOrigin","anonymous"),i.onload=function(){o.drawImage(i,0,0,450,800),o.drawImage(c,320,685,100,100),o.fillStyle=e[t].username_color,o.font="16px serif",o.fillText("@"+n.name,s+50+20,r+25),o.font="14px serif",o.fillText("\u6b63\u5728\u5b66\u4e60\u8be5\u8bfe\u7a0b",s+50+20,r+25+20),o.restore()}}).then(function(){n.getBase64(n.state.imgUrl).then(function(e){var t=new Image;t.src=e,t.setAttribute("crossOrigin","anonymous"),t.setAttribute("border-Radius","50%"),t.onload=function(){n.imgPosition(o,t,s,r,24),o.drawImage(t,s,r,48,48),o.restore(),n.setState({billSrc:n.convertCanvasToImage(c)})}})})},a.children=function(e,t){var a=e.childNodes,n=[];if(/MSIE(6|7|8)/.test(navigator.userAgent))for(var i=0;i<a.length;i++){var s=a[i];1===s.nodeType&&(n[n.length]=s)}else n=Array.prototype.slice.call(e.children);if("string"===typeof t)for(var r=0;r<n.length;r++)(e=n[r]).nodeName.toLowerCase()!==t.toLowerCase()&&(n.splice(r,1),r--);return n},a.imgPosition=function(e,t,a,n,i){e.save();var s=a+i,r=n+i;e.beginPath(),e.arc(s,r,i,0,2*Math.PI),e.clip()},a.getBase64Image=function(e){var t=document.createElement("canvas");t.width=e.width,t.height=e.height,t.getContext("2d").drawImage(e,0,0,e.width,e.height);var a=e.src.substring(e.src.lastIndexOf(".")+1).toLowerCase();return t.toDataURL("image/"+a)},a.convertCanvasToImage=function(e){var t=new Image;return t.src=e.toDataURL("image/png"),t},a.squareClick=function(e){a.setState({smallactive:e}),a.initCanvas(a.state.bgImage,e)},a.state={codeSrc:"",billSrc:"",imgUrl:"",smallListImg:[],smallactive:0,distPrice:"",name:"",bgImage:[]},a}return Object(l.a)(t,e),Object(r.a)(t,[{key:"componentDidMount",value:function(){var e=this;this.getCodeWe(),h.d.get("".concat(h.a.home,"/m/dist/posters/").concat(Object(h.c)("courseId"),"/").concat(Object(h.c)("uid"))).then(function(t){200===t.data.code?(e.setState({imgUrl:t.data.data.avatar,smallListImg:t.data.data.list,distPrice:t.data.data.dist_course,bgImage:t.data.data.list,name:t.data.data.username}),e.initCanvas(e.state.bgImage,0)):i.a.info(t.data.msg,2)})}},{key:"getCodeWe",value:function(){var e=this,t="/detail/".concat(Object(h.c)("courseId"),"/").concat(Object(h.c)("dist_code"));return new Promise(function(a){f.a.toDataURL(t,{},function(t,a){e.setState({codeSrc:a})}),a()})}},{key:"getBase64",value:function(e){var t=this;return new Promise(function(a){var n=null,i=new Image,s=+new Date;i.setAttribute("crossOrigin","anonymous"),i.src=e+"?"+s,i.onload=function(){n=t.getBase64Image(i),a(n)},i.onerror=function(){var a=+new Date;t.getBase64(e+"?"+a)}})}},{key:"render",value:function(){var e=this;return g.a.createElement("div",{className:"share-poster"},g.a.createElement(u.e,{title:"\u751f\u6210\u4e13\u5c5e\u6d77\u62a5",arrow:!0,cart:!1}),g.a.createElement("div",{className:"total-container"},g.a.createElement("div",{className:"placard-img-container",id:"imgWrapper"},g.a.createElement("img",{src:this.state.billSrc.src,alt:""})),g.a.createElement("img",{src:this.state.codeSrc,alt:"",id:"qrcode",className:"placard-code"}),g.a.createElement("canvas",{id:"canvas",width:"450",height:"800",className:""===this.state.billSrc?"":"hide"})),g.a.createElement("div",{className:"placard-desc"},g.a.createElement("span",{className:"placard-sharetxt"},"\u957f\u6309\u4fdd\u5b58\u6d77\u62a5\u5206\u4eab\u7ed9\u597d\u53cb\uff0c\u6bcf\u6709\u4e00\u4eba\u901a\u8fc7\u60a8\u7684\u5206\u4eab\u8d2d\u4e70\u8be5\u8bfe\u7a0b\uff0c\u60a8\u53ef\u4ee5",0===this.state.distPrice.count_type&&g.a.createElement("span",{className:"placard-price"},"\u83b7\u5f97",this.state.distPrice.first_level_tip,"\u5143\u7684\u4f63\u91d1\u5956\u52b1\u3002"),1===this.state.distPrice.count_type&&g.a.createElement("span",{className:"placard-price"},"\u83b7\u5f97\u6210\u4ea4\u91d1\u989d\u7684",this.state.distPrice.first_level_scale,"%\u4f5c\u4e3a\u4f63\u91d1\u5956\u52b1\u3002"))),g.a.createElement("div",{className:"placard-swiper"},g.a.createElement("ul",{className:"placard-list"},this.state.smallListImg&&this.state.smallListImg.length>0&&this.state.smallListImg.map(function(t,a){return g.a.createElement("li",{onClick:e.squareClick.bind(e,a),key:a,className:e.state.smallactive===a?"active":""},g.a.createElement("img",{src:t.square,alt:""}))}))))}}]),t}(m.Component);t.default=p}}]); (window.webpackJsonp=window.webpackJsonp||[]).push([[5],{740:function(e,t,a){},767:function(e,t,a){"use strict";a.r(t);a(26);var n=a(2),i=a.n(n),s=a(4),r=a(5),c=a(8),o=a(6),l=a(7),d=a(92),m=a(0),g=a.n(m),u=(a(740),a(18)),h=a(1),v=a(741),f=a.n(v),p=function(e){function t(e){var a;return Object(s.a)(this,t),(a=Object(c.a)(this,Object(o.a)(t).call(this,e))).initCanvas=function(e,t){var n=Object(d.a)(Object(d.a)(a)),i=e[t].poster,s=450*e[t].header_position_x,r=800*e[t].header_position_y,c=(e[t].qr_code_x,e[t].qr_code_y,e[t].qr_code_width,e[t].qr_code_height,"/detail/".concat(Object(h.c)("courseId"),"/").concat(Object(h.c)("dist_code")),document.getElementById("canvas")),o=c.getContext("2d");n.getBase64(i).then(function(a){var i=new Image;i.src=a;var c=document.getElementById("qrcode"),l=navigator.userAgent.toLowerCase();l.indexOf("Android")>-1||l.indexOf("Adr"),l.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/);/(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent)?c=document.getElementById("qrcode"):/(Android)/i.test(navigator.userAgent)&&(c=document.getElementById("qrcode")),i.setAttribute("crossOrigin","anonymous"),i.onload=function(){o.drawImage(i,0,0,450,800),o.drawImage(c,320,685,100,100),o.fillStyle=e[t].username_color,o.font="16px serif",o.fillText("@"+n.name,s+50+20,r+25),o.font="14px serif",o.fillText("\u6b63\u5728\u5b66\u4e60\u8be5\u8bfe\u7a0b",s+50+20,r+25+20),o.restore()}}).then(function(){n.getBase64(n.state.imgUrl).then(function(e){var t=new Image;t.src=e,t.setAttribute("crossOrigin","anonymous"),t.setAttribute("border-Radius","50%"),t.onload=function(){n.imgPosition(o,t,s,r,24),o.drawImage(t,s,r,48,48),o.restore(),n.setState({billSrc:n.convertCanvasToImage(c)})}})})},a.children=function(e,t){var a=e.childNodes,n=[];if(/MSIE(6|7|8)/.test(navigator.userAgent))for(var i=0;i<a.length;i++){var s=a[i];1===s.nodeType&&(n[n.length]=s)}else n=Array.prototype.slice.call(e.children);if("string"===typeof t)for(var r=0;r<n.length;r++)(e=n[r]).nodeName.toLowerCase()!==t.toLowerCase()&&(n.splice(r,1),r--);return n},a.imgPosition=function(e,t,a,n,i){e.save();var s=a+i,r=n+i;e.beginPath(),e.arc(s,r,i,0,2*Math.PI),e.clip()},a.getBase64Image=function(e){var t=document.createElement("canvas");t.width=e.width,t.height=e.height,t.getContext("2d").drawImage(e,0,0,e.width,e.height);var a=e.src.substring(e.src.lastIndexOf(".")+1).toLowerCase();return t.toDataURL("image/"+a)},a.convertCanvasToImage=function(e){var t=new Image;return t.src=e.toDataURL("image/png"),t},a.squareClick=function(e){a.setState({smallactive:e}),a.initCanvas(a.state.bgImage,e)},a.state={codeSrc:"",billSrc:"",imgUrl:"",smallListImg:[],smallactive:0,distPrice:"",name:"",bgImage:[]},a}return Object(l.a)(t,e),Object(r.a)(t,[{key:"componentDidMount",value:function(){var e=this;this.getCodeWe(),h.d.get("".concat(h.a.home,"/m/dist/posters/").concat(Object(h.c)("courseId"),"/").concat(Object(h.c)("uid"))).then(function(t){200===t.data.code?(e.setState({imgUrl:t.data.data.avatar,smallListImg:t.data.data.list,distPrice:t.data.data.dist_course,bgImage:t.data.data.list,name:t.data.data.username}),e.initCanvas(e.state.bgImage,0)):i.a.info(t.data.msg,2)})}},{key:"getCodeWe",value:function(){var e=this,t="/detail/".concat(Object(h.c)("courseId"),"/").concat(Object(h.c)("dist_code"));return new Promise(function(a){f.a.toDataURL(t,{},function(t,a){e.setState({codeSrc:a})}),a()})}},{key:"getBase64",value:function(e){var t=this;return new Promise(function(a){var n=null,i=new Image,s=+new Date;i.setAttribute("crossOrigin","anonymous"),i.src=e+"?"+s,i.onload=function(){n=t.getBase64Image(i),a(n)},i.onerror=function(){var a=+new Date;t.getBase64(e+"?"+a)}})}},{key:"render",value:function(){var e=this;return g.a.createElement("div",{className:"share-poster"},g.a.createElement(u.e,{title:"\u751f\u6210\u4e13\u5c5e\u6d77\u62a5",arrow:!0,cart:!1}),g.a.createElement("div",{className:"total-container"},g.a.createElement("div",{className:"placard-img-container",id:"imgWrapper"},g.a.createElement("img",{src:this.state.billSrc.src,alt:""})),g.a.createElement("img",{src:this.state.codeSrc,alt:"",id:"qrcode",className:"placard-code"}),g.a.createElement("canvas",{id:"canvas",width:"450",height:"800",className:""===this.state.billSrc?"":"hide"})),g.a.createElement("div",{className:"placard-desc"},g.a.createElement("span",{className:"placard-sharetxt"},"\u957f\u6309\u4fdd\u5b58\u6d77\u62a5\u5206\u4eab\u7ed9\u597d\u53cb\uff0c\u6bcf\u6709\u4e00\u4eba\u901a\u8fc7\u60a8\u7684\u5206\u4eab\u8d2d\u4e70\u8be5\u8bfe\u7a0b\uff0c\u60a8\u53ef\u4ee5",0===this.state.distPrice.count_type&&g.a.createElement("span",{className:"placard-price"},"\u83b7\u5f97",this.state.distPrice.first_level_tip,"\u5143\u7684\u4f63\u91d1\u5956\u52b1\u3002"),1===this.state.distPrice.count_type&&g.a.createElement("span",{className:"placard-price"},"\u83b7\u5f97\u6210\u4ea4\u91d1\u989d\u7684",this.state.distPrice.first_level_scale,"%\u4f5c\u4e3a\u4f63\u91d1\u5956\u52b1\u3002"))),g.a.createElement("div",{className:"placard-swiper"},g.a.createElement("ul",{className:"placard-list"},this.state.smallListImg&&this.state.smallListImg.length>0&&this.state.smallListImg.map(function(t,a){return g.a.createElement("li",{onClick:e.squareClick.bind(e,a),key:a,className:e.state.smallactive===a?"active":""},g.a.createElement("img",{src:t.square,alt:""}))}))))}}]),t}(m.Component);t.default=p}}]);
//# sourceMappingURL=shareposter.a9c1ccb0.chunk.js.map //# sourceMappingURL=shareposter.03babfdf.chunk.js.map
\ No newline at end of file \ No newline at end of file
{"version":3,"sources":["components/sharePoster/index.js"],"names":["SharePoster","props","_this2","Object","_Users_zhanghaozhe_server_mr_julyedu_node_modules_babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_2__","this","_Users_zhanghaozhe_server_mr_julyedu_node_modules_babel_runtime_helpers_esm_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_4__","_Users_zhanghaozhe_server_mr_julyedu_node_modules_babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_5__","call","initCanvas","imgList","index","_this","_Users_zhanghaozhe_server_mr_julyedu_node_modules_babel_runtime_helpers_esm_assertThisInitialized__WEBPACK_IMPORTED_MODULE_7__","imgSrc1","poster","avatarPositionX","header_position_x","avatarPositionY","header_position_y","canvas","qr_code_x","qr_code_y","qr_code_width","qr_code_height","concat","getParam","document","getElementById","context","getContext","getBase64","then","img","bgImage","Image","src","qrCodeImg","ua","navigator","userAgent","toLowerCase","indexOf","match","test","setAttribute","onload","drawImage","fillStyle","username_color","font","fillText","name","avatarHeight","restore","state","imgUrl","imgPosition","setState","billSrc","convertCanvasToImage","children","curEle","tagName","nodeList","childNodes","ary","i","length","curNode","nodeType","Array","prototype","slice","k","nodeName","splice","ctx","x","y","r","save","cx","cy","beginPath","arc","Math","PI","clip","getBase64Image","createElement","width","height","ext","substring","lastIndexOf","toDataURL","image","squareClick","smallactive","codeSrc","smallListImg","distPrice","_this3","getCodeWe","http","get","api","home","res","data","code","avatar","list","dist_course","username","antd_mobile_lib_toast__WEBPACK_IMPORTED_MODULE_1___default","a","info","msg","qrCodeLink","Promise","resolve","QRCode","err","url","base64","timeStamp","Date","onerror","_this4","react__WEBPACK_IMPORTED_MODULE_8___default","className","_common__WEBPACK_IMPORTED_MODULE_10__","title","arrow","cart","id","alt","count_type","first_level_tip","first_level_scale","map","item","onClick","bind","key","square","Component"],"mappings":"sPASMA,cACF,SAAAA,EAAYC,GAAO,IAAAC,EAAA,OAAAC,OAAAC,EAAA,EAAAD,CAAAE,KAAAL,IACfE,EAAAC,OAAAG,EAAA,EAAAH,CAAAE,KAAAF,OAAAI,EAAA,EAAAJ,CAAAH,GAAAQ,KAAAH,KAAMJ,KAgCVQ,WAAa,SAACC,EAASC,GACnB,IAAIC,EAAKT,OAAAU,EAAA,EAAAV,QAAAU,EAAA,EAAAV,CAAAD,IACLY,EAAUJ,EAAQC,GAAOI,OAKzBC,EAJS,IAIUN,EAAQC,GAAOM,kBAClCC,EAJU,IAISR,EAAQC,GAAOQ,kBASlCC,GAPkBV,EAAQC,GAAOU,UACfX,EAAQC,GAAOW,UAClBZ,EAAQC,GAAOY,cACdb,EAAQC,GAAOa,eAErB,WAAAC,OAAcC,YAAS,YAAvB,KAAAD,OAAsCC,YAAS,cAEhDC,SAASC,eAAe,WACjCC,EAAUT,EAAOU,WAAW,MAEhClB,EAAMmB,UAAUjB,GAEXkB,KAAK,SAACC,GACH,IAAIC,EAAU,IAAIC,MAClBD,EAAQE,IAAMH,EACd,IAAII,EAAYV,SAASC,eAAe,UACpCU,EAAKC,UAAUC,UAAUC,cAEbH,EAAGI,QAAQ,YAAc,GAAKJ,EAAGI,QAAQ,OAE3CJ,EAAGK,MAAM,iCACnB,0BAA0BC,KAAKL,UAAUC,WACzCH,EAAYV,SAASC,eAAe,UAC7B,aAAagB,KAAKL,UAAUC,aAEnCH,EAAYV,SAASC,eAAe,WAIxCM,EAAQW,aAAa,cAAe,aACpCX,EAAQY,OAAS,WACbjB,EAAQkB,UAAUb,EAAS,EAAG,EAAG,IAAK,KACtCL,EAAQkB,UAAUV,EAAW,IAAK,IAAK,IAAK,KAC5CR,EAAQmB,UAAYtC,EAAQC,GAAOsC,eACnCpB,EAAQqB,KAAO,aACfrB,EAAQsB,SAAS,IAAMvC,EAAMwC,KAAOpC,EAxC9B,GAwC+D,GAAKE,EAAkBmC,IAC5FxB,EAAQqB,KAAO,aACfrB,EAAQsB,SAAS,6CAAYnC,EA1CvB,GA0CwD,GAAKE,EAAkBmC,GAAoB,IACzGxB,EAAQyB,aAKftB,KAAK,WACFpB,EAAMmB,UAAUnB,EAAM2C,MAAMC,QACvBxB,KAAK,SAACC,GACH,IAAIC,EAAU,IAAIC,MAClBD,EAAQE,IAAMH,EACdC,EAAQW,aAAa,cAAe,aACpCX,EAAQW,aAAa,gBAAiB,OACtCX,EAAQY,OAAS,WACblC,EAAM6C,YAAY5B,EAASK,EAASlB,EAAiBE,EAAiB,IACtEW,EAAQkB,UAAUb,EAASlB,EAAiBE,EAAiB,GAAI,IACjEW,EAAQyB,UACR1C,EAAM8C,SAAS,CACXC,QAAS/C,EAAMgD,qBAAqBxC,WAlG7ClB,EA0GnB2D,SAAW,SAACC,EAAQC,GAChB,IAAIC,EAAWF,EAAOG,WAClBC,EAAM,GACV,GAAI,cAActB,KAAKL,UAAUC,WAC7B,IAAK,IAAI2B,EAAI,EAAGA,EAAIH,EAASI,OAAQD,IAAK,CACtC,IAAIE,EAAUL,EAASG,GACE,IAArBE,EAAQC,WACRJ,EAAIA,EAAIE,QAAUC,QAI1BH,EAAMK,MAAMC,UAAUC,MAAMjE,KAAKsD,EAAOD,UAI5C,GAAuB,kBAAZE,EACP,IAAK,IAAIW,EAAI,EAAGA,EAAIR,EAAIE,OAAQM,KAC5BZ,EAASI,EAAIQ,IACFC,SAASlC,gBAAkBsB,EAAQtB,gBAC1CyB,EAAIU,OAAOF,EAAG,GACdA,KAKZ,OAAOR,GAnIQhE,EAuInBuD,YAAc,SAACoB,EAAK5C,EAAK6C,EAAGC,EAAGC,GAC3BH,EAAII,OACJ,IACIC,EAAKJ,EAAIE,EACTG,EAAKJ,EAAIC,EACbH,EAAIO,YACJP,EAAIQ,IAAIH,EAAIC,EAAIH,EAAG,EAAG,EAAIM,KAAKC,IAC/BV,EAAIW,QA9IWtF,EA8LnBuF,eAAiB,SAACxD,GACd,IAAIb,EAASO,SAAS+D,cAAc,UACpCtE,EAAOuE,MAAQ1D,EAAI0D,MACnBvE,EAAOwE,OAAS3D,EAAI2D,OAEVxE,EAAOU,WAAW,MACxBiB,UAAUd,EAAK,EAAG,EAAGA,EAAI0D,MAAO1D,EAAI2D,QACxC,IAAIC,EAAM5D,EAAIG,IAAI0D,UAAU7D,EAAIG,IAAI2D,YAAY,KAAO,GAAGtD,cAE1D,OADcrB,EAAO4E,UAAU,SAAWH,IAtM3B3F,EA2MnB0D,qBAAuB,SAACxC,GACpB,IAAI6E,EAAQ,IAAI9D,MAEhB,OADA8D,EAAM7D,IAAMhB,EAAO4E,UAAU,aACtBC,GA9MQ/F,EAkNnBgG,YAAc,SAACvF,GACXT,EAAKwD,SAAS,CACVyC,YAAaxF,IAEjBT,EAAKO,WAAWP,EAAKqD,MAAMrB,QAASvB,IApNpCT,EAAKqD,MAAQ,CACT6C,QAAS,GACTzC,QAAS,GACTH,OAAQ,GACR6C,aAAc,GACdF,YAAa,EACbG,UAAW,GACXlD,KAAM,GACNlB,QAAS,IAVEhC,mFAcC,IAAAqG,EAAAlG,KAChBA,KAAKmG,YACLC,IAAKC,IAAL,GAAAjF,OAAYkF,IAAIC,KAAhB,oBAAAnF,OAAuCC,YAAS,YAAhD,KAAAD,OAA+DC,YAAS,SAAUM,KAAK,SAAC6E,GAC9D,MAAlBA,EAAIC,KAAKC,MACTR,EAAK7C,SAAS,CACVF,OAAQqD,EAAIC,KAAKA,KAAKE,OACtBX,aAAcQ,EAAIC,KAAKA,KAAKG,KAC5BX,UAAWO,EAAIC,KAAKA,KAAKI,YACzBhF,QAAS2E,EAAIC,KAAKA,KAAKG,KACvB7D,KAAMyD,EAAIC,KAAKA,KAAKK,WAExBZ,EAAK9F,WAAW8F,EAAKhD,MAAMrB,QAAS,IAEpCkF,EAAAC,EAAMC,KAAKT,EAAIC,KAAKS,IAAK,yCAwHjC,IAAI3G,EAAQP,KACRmH,EAAU,WAAA/F,OAAcC,YAAS,YAAvB,KAAAD,OAAsCC,YAAS,cAC7D,OAAO,IAAI+F,QAAQ,SAAAC,GACfC,IAAO3B,UAAUwB,EAAY,GAAI,SAAUI,EAAKC,GAC5CjH,EAAM8C,SAAS,CACX0C,QAASyB,MAYjBH,wCAKEzF,GACN,IAAIrB,EAAQP,KACZ,OAAO,IAAIoH,QAAQ,SAAAC,GACf,IAAII,EAAS,KACT7B,EAAQ,IAAI9D,MACZ4F,GAAa,IAAIC,KACrB/B,EAAMpD,aAAa,cAAe,aAClCoD,EAAM7D,IAAMH,EAAM,IAAM8F,EACxB9B,EAAMnD,OAAS,WACXgF,EAASlH,EAAM6E,eAAeQ,GAC9ByB,EAAQI,IAEZ7B,EAAMgC,QAAU,WACZ,IAAIF,GAAa,IAAIC,KACrBpH,EAAMmB,UAAUE,EAAM,IAAM8F,uCAmC/B,IAAAG,EAAA7H,KACL,OACI8H,EAAAd,EAAA3B,cAAA,OAAK0C,UAAU,gBACXD,EAAAd,EAAA3B,cAAC2C,EAAA,EAAD,CAAWC,MAAM,uCAASC,OAAO,EAAMC,MAAM,IAC7CL,EAAAd,EAAA3B,cAAA,OAAK0C,UAAU,mBACXD,EAAAd,EAAA3B,cAAA,OAAK0C,UAAU,wBAAwBK,GAAG,cACtCN,EAAAd,EAAA3B,cAAA,OAAKtD,IAAK/B,KAAKkD,MAAMI,QAAQvB,IAAKsG,IAAI,MAE1CP,EAAAd,EAAA3B,cAAA,OAAKtD,IAAK/B,KAAKkD,MAAM6C,QAASsC,IAAI,GAAGD,GAAG,SAASL,UAAU,iBAC3DD,EAAAd,EAAA3B,cAAA,UAAQ+C,GAAG,SAAS9C,MAAM,MAAMC,OAAO,MAC/BwC,UAAkC,KAAvB/H,KAAKkD,MAAMI,QAAiB,GAAK,UAExDwE,EAAAd,EAAA3B,cAAA,OAAK0C,UAAU,gBACXD,EAAAd,EAAA3B,cAAA,QAAM0C,UAAU,oBAAhB,6LAG4C,IAApC/H,KAAKkD,MAAM+C,UAAUqC,YACrBR,EAAAd,EAAA3B,cAAA,QAAM0C,UAAU,iBAAhB,eAAmC/H,KAAKkD,MAAM+C,UAAUsC,gBAAxD,8CAGoC,IAApCvI,KAAKkD,MAAM+C,UAAUqC,YACrBR,EAAAd,EAAA3B,cAAA,QACI0C,UAAU,iBADd,6CACsC/H,KAAKkD,MAAM+C,UAAUuC,kBAD3D,iDAMZV,EAAAd,EAAA3B,cAAA,OAAK0C,UAAU,kBACXD,EAAAd,EAAA3B,cAAA,MAAI0C,UAAU,gBAEN/H,KAAKkD,MAAM8C,cAAgBhG,KAAKkD,MAAM8C,aAAajC,OAAS,GAAK/D,KAAKkD,MAAM8C,aAAayC,IAAI,SAACC,EAAMpI,GAChG,OACIwH,EAAAd,EAAA3B,cAAA,MAAIsD,QAASd,EAAKhC,YAAY+C,KAAKf,EAAMvH,GAAQuI,IAAKvI,EAClDyH,UAAWF,EAAK3E,MAAM4C,cAAgBxF,EAAQ,SAAW,IACzDwH,EAAAd,EAAA3B,cAAA,OAAKtD,IAAK2G,EAAKI,OAAQT,IAAI,kBA7PzCU,aA0QXpJ","file":"static/js/shareposter.a9c1ccb0.chunk.js","sourcesContent":["import React, {Component} from 'react'\nimport './index.scss'\nimport {HeaderBar} from '../../common'\nimport {http, api, getParam} from '@/utils'\nimport QRCode from 'qrcode'\nimport { Toast} from 'antd-mobile'\n\n\n\nclass SharePoster extends Component {\n constructor(props) {\n super(props)\n this.state = {\n codeSrc: '',\n billSrc: '', // 图片链接\n imgUrl: '',\n smallListImg: [], // 小图片地址\n smallactive: 0, // 小图选中标记\n distPrice: '', // 分销价格\n name: '', // 用户姓名\n bgImage: [] // 背景图\n }\n }\n\n componentDidMount() {\n this.getCodeWe()\n http.get(`${api.home}/m/dist/posters/${getParam('courseId')}/${getParam('uid')}`).then((res) => {\n if (res.data.code === 200) {\n this.setState({\n imgUrl: res.data.data.avatar,\n smallListImg: res.data.data.list,\n distPrice: res.data.data.dist_course,\n bgImage: res.data.data.list,\n name: res.data.data.username\n })\n this.initCanvas(this.state.bgImage, 0)\n } else {\n Toast.info(res.data.msg, 2)\n }\n })\n }\n\n // 初始化海报\n initCanvas = (imgList, index) => {\n let _this = this;\n let imgSrc1 = imgList[index].poster;\n let $width = 450;\n let $height = 800;\n let avatarWidth = 50 // imgList[index].poster_width // 头像宽度\n let avatarHeight = 50 // imgList[index].poster_height // 头像高度\n let avatarPositionX = (imgList[index].header_position_x * $width) // 头像x轴位置\n let avatarPositionY = (imgList[index].header_position_y * $height) // 头像Y轴位置\n\n let qrCodePositionX = imgList[index].qr_code_x * $width // 二维码x轴位置\n let qrCodePositionY = imgList[index].qr_code_y * $height // 二维码y轴位置\n let qrCodeWidth = (imgList[index].qr_code_width * $width) // 二维码宽度\n let qrCodeHeight = (imgList[index].qr_code_height * $height) - avatarHeight / 2 // 二维码高度\n\n let qrCodeLink = `/detail/${getParam('courseId')}/${getParam('dist_code')}`\n\n var canvas = document.getElementById(\"canvas\"),\n context = canvas.getContext(\"2d\");\n\n _this.getBase64(imgSrc1)\n // 背景图片合成\n .then((img) => {\n let bgImage = new Image();\n bgImage.src = img;\n let qrCodeImg = document.getElementById('qrcode');\n let ua = navigator.userAgent.toLowerCase();\n // Android终端\n let isAndroid = ua.indexOf('Android') > -1 || ua.indexOf('Adr') > -1;\n // Ios终端\n let isiOS = !!ua.match(/\\(i[^;]+;( U;)? CPU.+Mac OS X/);\n if (/(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent)) {\n qrCodeImg = document.getElementById('qrcode');\n } else if (/(Android)/i.test(navigator.userAgent)) {\n //Android终端\n qrCodeImg = document.getElementById('qrcode');\n\n }\n\n bgImage.setAttribute('crossOrigin', 'anonymous');\n bgImage.onload = function () {\n context.drawImage(bgImage, 0, 0, 450, 800);\n context.drawImage(qrCodeImg, 320, 685, 100, 100);\n context.fillStyle = imgList[index].username_color;\n context.font = \"16px serif\";\n context.fillText('@' + _this.name, (avatarPositionX + avatarWidth) + 20, (avatarPositionY + avatarHeight / 2));\n context.font = \"14px serif\";\n context.fillText('正在学习该课程', (avatarPositionX + avatarWidth) + 20, (avatarPositionY + avatarHeight / 2) + 20);\n context.restore();\n }\n\n })\n // 头像生成\n .then(() => {\n _this.getBase64(_this.state.imgUrl)\n .then((img) => {\n let bgImage = new Image();\n bgImage.src = img;\n bgImage.setAttribute('crossOrigin', 'anonymous');\n bgImage.setAttribute('border-Radius', '50%');\n bgImage.onload = function () {\n _this.imgPosition(context, bgImage, avatarPositionX, avatarPositionY, 24);\n context.drawImage(bgImage, avatarPositionX, avatarPositionY, 48, 48);\n context.restore();\n _this.setState({\n billSrc: _this.convertCanvasToImage(canvas)\n })\n\n }\n })\n\n })\n }\n children = (curEle, tagName) => {\n var nodeList = curEle.childNodes;\n var ary = [];\n if (/MSIE(6|7|8)/.test(navigator.userAgent)) {\n for (var i = 0; i < nodeList.length; i++) {\n var curNode = nodeList[i];\n if (curNode.nodeType === 1) {\n ary[ary.length] = curNode;\n }\n }\n } else {\n ary = Array.prototype.slice.call(curEle.children);\n }\n\n // 获取指定子元素\n if (typeof tagName === \"string\") {\n for (var k = 0; k < ary.length; k++) {\n curEle = ary[k];\n if (curEle.nodeName.toLowerCase() !== tagName.toLowerCase()) {\n ary.splice(k, 1);\n k--;\n }\n }\n }\n\n return ary;\n }\n\n // 合成图片位置\n imgPosition = (ctx, img, x, y, r) => {\n ctx.save();\n var d = 2 * r;\n var cx = x + r;\n var cy = y + r;\n ctx.beginPath();\n ctx.arc(cx, cy, r, 0, 2 * Math.PI);\n ctx.clip();\n }\n\n // 获取二维码\n getCodeWe() {\n let _this = this\n let qrCodeLink = `/detail/${getParam('courseId')}/${getParam('dist_code')}`\n return new Promise(resolve => {\n QRCode.toDataURL(qrCodeLink, {}, function (err, url) {\n _this.setState({\n codeSrc: url\n })\n })\n /*\n let qrcode = new QRCode(document.getElementById('qrcode'), {\n text: qrCodeLink,\n width: 160,\n height: 160,\n colorDark: \"#000000\", // 生成的二维码的深色部分\n colorLight: \"#ffffff\", //生成二维码的浅色部分\n })\n */\n resolve()\n })\n }\n\n // 图片路径转成base64\n getBase64(img) {\n let _this = this;\n return new Promise(resolve => {\n let base64 = null;\n let image = new Image();\n let timeStamp = +new Date();\n image.setAttribute('crossOrigin', 'anonymous');\n image.src = img + '?' + timeStamp;\n image.onload = () => {\n base64 = _this.getBase64Image(image)\n resolve(base64)\n }\n image.onerror = function () {\n let timeStamp = +new Date();\n _this.getBase64(img + '?' + timeStamp);\n }\n })\n\n }\n\n // 图片路径放入canvas转成base64\n getBase64Image = (img) => {\n let canvas = document.createElement(\"canvas\");\n canvas.width = img.width;\n canvas.height = img.height;\n\n let ctx = canvas.getContext(\"2d\");\n ctx.drawImage(img, 0, 0, img.width, img.height);\n let ext = img.src.substring(img.src.lastIndexOf(\".\") + 1).toLowerCase();\n let dataURL = canvas.toDataURL(\"image/\" + ext);\n return dataURL;\n }\n\n // canvas转换成img图片\n convertCanvasToImage = (canvas) => {\n let image = new Image();\n image.src = canvas.toDataURL(\"image/png\");\n return image;\n }\n\n // 小图切换\n squareClick = (index) => {\n this.setState({\n smallactive: index\n })\n this.initCanvas(this.state.bgImage, index);\n\n }\n\n render() {\n return (\n <div className='share-poster'>\n <HeaderBar title='生成专属海报' arrow={true} cart={false}></HeaderBar>\n <div className=\"total-container\">\n <div className='placard-img-container' id='imgWrapper'>\n <img src={this.state.billSrc.src} alt=\"\"/>\n </div>\n <img src={this.state.codeSrc} alt=\"\" id='qrcode' className='placard-code'/>\n <canvas id='canvas' width='450' height='800'\n className={this.state.billSrc === '' ? '' : 'hide'}></canvas>\n </div>\n <div className='placard-desc'>\n <span className='placard-sharetxt'>\n 长按保存海报分享给好友,每有一人通过您的分享购买该课程,您可以\n {\n this.state.distPrice.count_type === 0 &&\n <span className='placard-price'>获得{this.state.distPrice.first_level_tip}元的佣金奖励。</span>\n }\n {\n this.state.distPrice.count_type === 1 &&\n <span\n className='placard-price'>获得成交金额的{this.state.distPrice.first_level_scale}%作为佣金奖励。</span>\n }\n </span>\n </div>\n\n <div className='placard-swiper'>\n <ul className='placard-list'>\n {\n this.state.smallListImg && this.state.smallListImg.length > 0 && this.state.smallListImg.map((item, index) => {\n return (\n <li onClick={this.squareClick.bind(this, index)} key={index}\n className={this.state.smallactive === index ? 'active' : ''}>\n <img src={item.square} alt=\"\"/>\n </li>\n )\n })\n }\n </ul>\n </div>\n\n </div>\n )\n }\n}\n\nexport default SharePoster\n"],"sourceRoot":""} {"version":3,"sources":["components/sharePoster/index.js"],"names":["SharePoster","props","_this2","Object","_Users_zhanghaozhe_server_mr_julyedu_node_modules_babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_2__","this","_Users_zhanghaozhe_server_mr_julyedu_node_modules_babel_runtime_helpers_esm_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_4__","_Users_zhanghaozhe_server_mr_julyedu_node_modules_babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_5__","call","initCanvas","imgList","index","_this","_Users_zhanghaozhe_server_mr_julyedu_node_modules_babel_runtime_helpers_esm_assertThisInitialized__WEBPACK_IMPORTED_MODULE_7__","imgSrc1","poster","avatarPositionX","header_position_x","avatarPositionY","header_position_y","canvas","qr_code_x","qr_code_y","qr_code_width","qr_code_height","concat","getParam","document","getElementById","context","getContext","getBase64","then","img","bgImage","Image","src","qrCodeImg","ua","navigator","userAgent","toLowerCase","indexOf","match","test","setAttribute","onload","drawImage","fillStyle","username_color","font","fillText","name","avatarHeight","restore","state","imgUrl","imgPosition","setState","billSrc","convertCanvasToImage","children","curEle","tagName","nodeList","childNodes","ary","i","length","curNode","nodeType","Array","prototype","slice","k","nodeName","splice","ctx","x","y","r","save","cx","cy","beginPath","arc","Math","PI","clip","getBase64Image","createElement","width","height","ext","substring","lastIndexOf","toDataURL","image","squareClick","smallactive","codeSrc","smallListImg","distPrice","_this3","getCodeWe","http","get","api","home","res","data","code","avatar","list","dist_course","username","antd_mobile_lib_toast__WEBPACK_IMPORTED_MODULE_1___default","a","info","msg","qrCodeLink","Promise","resolve","QRCode","err","url","base64","timeStamp","Date","onerror","_this4","react__WEBPACK_IMPORTED_MODULE_8___default","className","_common__WEBPACK_IMPORTED_MODULE_10__","title","arrow","cart","id","alt","count_type","first_level_tip","first_level_scale","map","item","onClick","bind","key","square","Component"],"mappings":"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","file":"static/js/shareposter.03babfdf.chunk.js","sourcesContent":["import React, {Component} from 'react'\nimport './index.scss'\nimport {HeaderBar} from '../../common'\nimport {http, api, getParam} from '@/utils'\nimport QRCode from 'qrcode'\nimport { Toast} from 'antd-mobile'\n\n\n\nclass SharePoster extends Component {\n constructor(props) {\n super(props)\n this.state = {\n codeSrc: '',\n billSrc: '', // 图片链接\n imgUrl: '',\n smallListImg: [], // 小图片地址\n smallactive: 0, // 小图选中标记\n distPrice: '', // 分销价格\n name: '', // 用户姓名\n bgImage: [] // 背景图\n }\n }\n\n componentDidMount() {\n this.getCodeWe()\n http.get(`${api.home}/m/dist/posters/${getParam('courseId')}/${getParam('uid')}`).then((res) => {\n if (res.data.code === 200) {\n this.setState({\n imgUrl: res.data.data.avatar,\n smallListImg: res.data.data.list,\n distPrice: res.data.data.dist_course,\n bgImage: res.data.data.list,\n name: res.data.data.username\n })\n this.initCanvas(this.state.bgImage, 0)\n } else {\n Toast.info(res.data.msg, 2)\n }\n })\n }\n\n // 初始化海报\n initCanvas = (imgList, index) => {\n let _this = this;\n let imgSrc1 = imgList[index].poster;\n let $width = 450;\n let $height = 800;\n let avatarWidth = 50 // imgList[index].poster_width // 头像宽度\n let avatarHeight = 50 // imgList[index].poster_height // 头像高度\n let avatarPositionX = (imgList[index].header_position_x * $width) // 头像x轴位置\n let avatarPositionY = (imgList[index].header_position_y * $height) // 头像Y轴位置\n\n let qrCodePositionX = imgList[index].qr_code_x * $width // 二维码x轴位置\n let qrCodePositionY = imgList[index].qr_code_y * $height // 二维码y轴位置\n let qrCodeWidth = (imgList[index].qr_code_width * $width) // 二维码宽度\n let qrCodeHeight = (imgList[index].qr_code_height * $height) - avatarHeight / 2 // 二维码高度\n\n let qrCodeLink = `/detail/${getParam('courseId')}/${getParam('dist_code')}`\n\n var canvas = document.getElementById(\"canvas\"),\n context = canvas.getContext(\"2d\");\n\n _this.getBase64(imgSrc1)\n // 背景图片合成\n .then((img) => {\n let bgImage = new Image();\n bgImage.src = img;\n let qrCodeImg = document.getElementById('qrcode');\n let ua = navigator.userAgent.toLowerCase();\n // Android终端\n let isAndroid = ua.indexOf('Android') > -1 || ua.indexOf('Adr') > -1;\n // Ios终端\n let isiOS = !!ua.match(/\\(i[^;]+;( U;)? CPU.+Mac OS X/);\n if (/(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent)) {\n qrCodeImg = document.getElementById('qrcode');\n } else if (/(Android)/i.test(navigator.userAgent)) {\n //Android终端\n qrCodeImg = document.getElementById('qrcode');\n\n }\n\n bgImage.setAttribute('crossOrigin', 'anonymous');\n bgImage.onload = function () {\n context.drawImage(bgImage, 0, 0, 450, 800);\n context.drawImage(qrCodeImg, 320, 685, 100, 100);\n context.fillStyle = imgList[index].username_color;\n context.font = \"16px serif\";\n context.fillText('@' + _this.name, (avatarPositionX + avatarWidth) + 20, (avatarPositionY + avatarHeight / 2));\n context.font = \"14px serif\";\n context.fillText('正在学习该课程', (avatarPositionX + avatarWidth) + 20, (avatarPositionY + avatarHeight / 2) + 20);\n context.restore();\n }\n\n })\n // 头像生成\n .then(() => {\n _this.getBase64(_this.state.imgUrl)\n .then((img) => {\n let bgImage = new Image();\n bgImage.src = img;\n bgImage.setAttribute('crossOrigin', 'anonymous');\n bgImage.setAttribute('border-Radius', '50%');\n bgImage.onload = function () {\n _this.imgPosition(context, bgImage, avatarPositionX, avatarPositionY, 24);\n context.drawImage(bgImage, avatarPositionX, avatarPositionY, 48, 48);\n context.restore();\n _this.setState({\n billSrc: _this.convertCanvasToImage(canvas)\n })\n\n }\n })\n\n })\n }\n children = (curEle, tagName) => {\n var nodeList = curEle.childNodes;\n var ary = [];\n if (/MSIE(6|7|8)/.test(navigator.userAgent)) {\n for (var i = 0; i < nodeList.length; i++) {\n var curNode = nodeList[i];\n if (curNode.nodeType === 1) {\n ary[ary.length] = curNode;\n }\n }\n } else {\n ary = Array.prototype.slice.call(curEle.children);\n }\n\n // 获取指定子元素\n if (typeof tagName === \"string\") {\n for (var k = 0; k < ary.length; k++) {\n curEle = ary[k];\n if (curEle.nodeName.toLowerCase() !== tagName.toLowerCase()) {\n ary.splice(k, 1);\n k--;\n }\n }\n }\n\n return ary;\n }\n\n // 合成图片位置\n imgPosition = (ctx, img, x, y, r) => {\n ctx.save();\n var d = 2 * r;\n var cx = x + r;\n var cy = y + r;\n ctx.beginPath();\n ctx.arc(cx, cy, r, 0, 2 * Math.PI);\n ctx.clip();\n }\n\n // 获取二维码\n getCodeWe() {\n let _this = this\n let qrCodeLink = `/detail/${getParam('courseId')}/${getParam('dist_code')}`\n return new Promise(resolve => {\n QRCode.toDataURL(qrCodeLink, {}, function (err, url) {\n _this.setState({\n codeSrc: url\n })\n })\n /*\n let qrcode = new QRCode(document.getElementById('qrcode'), {\n text: qrCodeLink,\n width: 160,\n height: 160,\n colorDark: \"#000000\", // 生成的二维码的深色部分\n colorLight: \"#ffffff\", //生成二维码的浅色部分\n })\n */\n resolve()\n })\n }\n\n // 图片路径转成base64\n getBase64(img) {\n let _this = this;\n return new Promise(resolve => {\n let base64 = null;\n let image = new Image();\n let timeStamp = +new Date();\n image.setAttribute('crossOrigin', 'anonymous');\n image.src = img + '?' + timeStamp;\n image.onload = () => {\n base64 = _this.getBase64Image(image)\n resolve(base64)\n }\n image.onerror = function () {\n let timeStamp = +new Date();\n _this.getBase64(img + '?' + timeStamp);\n }\n })\n\n }\n\n // 图片路径放入canvas转成base64\n getBase64Image = (img) => {\n let canvas = document.createElement(\"canvas\");\n canvas.width = img.width;\n canvas.height = img.height;\n\n let ctx = canvas.getContext(\"2d\");\n ctx.drawImage(img, 0, 0, img.width, img.height);\n let ext = img.src.substring(img.src.lastIndexOf(\".\") + 1).toLowerCase();\n let dataURL = canvas.toDataURL(\"image/\" + ext);\n return dataURL;\n }\n\n // canvas转换成img图片\n convertCanvasToImage = (canvas) => {\n let image = new Image();\n image.src = canvas.toDataURL(\"image/png\");\n return image;\n }\n\n // 小图切换\n squareClick = (index) => {\n this.setState({\n smallactive: index\n })\n this.initCanvas(this.state.bgImage, index);\n\n }\n\n render() {\n return (\n <div className='share-poster'>\n <HeaderBar title='生成专属海报' arrow={true} cart={false}></HeaderBar>\n <div className=\"total-container\">\n <div className='placard-img-container' id='imgWrapper'>\n <img src={this.state.billSrc.src} alt=\"\"/>\n </div>\n <img src={this.state.codeSrc} alt=\"\" id='qrcode' className='placard-code'/>\n <canvas id='canvas' width='450' height='800'\n className={this.state.billSrc === '' ? '' : 'hide'}></canvas>\n </div>\n <div className='placard-desc'>\n <span className='placard-sharetxt'>\n 长按保存海报分享给好友,每有一人通过您的分享购买该课程,您可以\n {\n this.state.distPrice.count_type === 0 &&\n <span className='placard-price'>获得{this.state.distPrice.first_level_tip}元的佣金奖励。</span>\n }\n {\n this.state.distPrice.count_type === 1 &&\n <span\n className='placard-price'>获得成交金额的{this.state.distPrice.first_level_scale}%作为佣金奖励。</span>\n }\n </span>\n </div>\n\n <div className='placard-swiper'>\n <ul className='placard-list'>\n {\n this.state.smallListImg && this.state.smallListImg.length > 0 && this.state.smallListImg.map((item, index) => {\n return (\n <li onClick={this.squareClick.bind(this, index)} key={index}\n className={this.state.smallactive === index ? 'active' : ''}>\n <img src={item.square} alt=\"\"/>\n </li>\n )\n })\n }\n </ul>\n </div>\n\n </div>\n )\n }\n}\n\nexport default SharePoster\n"],"sourceRoot":""}
\ No newline at end of file \ No newline at end of file
(window.webpackJsonp=window.webpackJsonp||[]).push([[6],{652:function(e,t,a){"use strict";var n=a(0),o=a.n(n);a(653);t.a=function(e){return o.a.createElement("li",{className:"v-list-base-item",onClick:e.handleClick.bind(void 0,e.id)},o.a.createElement("div",{className:"content"},o.a.createElement("div",{className:"cover"},e.status,o.a.createElement("img",{src:e.img,alt:""})),e.info),e.tab)}},653:function(e,t,a){},678:function(e,t,a){},679:function(e,t,a){},680:function(e,t,a){e.exports=a(681)},681:function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=function(){function e(e,t){for(var a=0;a<t.length;a++){var n=t[a];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}return function(t,a,n){return a&&e(t.prototype,a),n&&e(t,n),t}}(),o=a(0),r=i(o),s=i(a(3));function i(e){return e&&e.__esModule?e:{default:e}}var l=function(e){function t(e){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);var a=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!==typeof t&&"function"!==typeof t?e:t}(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e));return a.scrollListener=a.scrollListener.bind(a),a.eventListenerOptions=a.eventListenerOptions.bind(a),a.mousewheelListener=a.mousewheelListener.bind(a),a}return function(e,t){if("function"!==typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,o.Component),n(t,[{key:"componentDidMount",value:function(){this.pageLoaded=this.props.pageStart,this.options=this.eventListenerOptions(),this.attachScrollListener()}},{key:"componentDidUpdate",value:function(){if(this.props.isReverse&&this.loadMore){var e=this.getParentElement(this.scrollComponent);e.scrollTop=e.scrollHeight-this.beforeScrollHeight+this.beforeScrollTop,this.loadMore=!1}this.attachScrollListener()}},{key:"componentWillUnmount",value:function(){this.detachScrollListener(),this.detachMousewheelListener()}},{key:"isPassiveSupported",value:function(){var e=!1,t={get passive(){e=!0}};try{document.addEventListener("test",null,t),document.removeEventListener("test",null,t)}catch(a){}return e}},{key:"eventListenerOptions",value:function(){var e=this.props.useCapture;return this.isPassiveSupported()&&(e={useCapture:this.props.useCapture,passive:!0}),e}},{key:"setDefaultLoader",value:function(e){this.defaultLoader=e}},{key:"detachMousewheelListener",value:function(){var e=window;!1===this.props.useWindow&&(e=this.scrollComponent.parentNode),e.removeEventListener("mousewheel",this.mousewheelListener,this.options?this.options:this.props.useCapture)}},{key:"detachScrollListener",value:function(){var e=window;!1===this.props.useWindow&&(e=this.getParentElement(this.scrollComponent)),e.removeEventListener("scroll",this.scrollListener,this.options?this.options:this.props.useCapture),e.removeEventListener("resize",this.scrollListener,this.options?this.options:this.props.useCapture)}},{key:"getParentElement",value:function(e){var t=this.props.getScrollParent&&this.props.getScrollParent();return null!=t?t:e&&e.parentNode}},{key:"filterProps",value:function(e){return e}},{key:"attachScrollListener",value:function(){var e=this.getParentElement(this.scrollComponent);if(this.props.hasMore&&e){var t=window;!1===this.props.useWindow&&(t=e),t.addEventListener("mousewheel",this.mousewheelListener,this.options?this.options:this.props.useCapture),t.addEventListener("scroll",this.scrollListener,this.options?this.options:this.props.useCapture),t.addEventListener("resize",this.scrollListener,this.options?this.options:this.props.useCapture),this.props.initialLoad&&this.scrollListener()}}},{key:"mousewheelListener",value:function(e){1!==e.deltaY||this.isPassiveSupported()||e.preventDefault()}},{key:"scrollListener",value:function(){var e=this.scrollComponent,t=window,a=this.getParentElement(e),n=void 0;if(this.props.useWindow){var o=document.documentElement||document.body.parentNode||document.body,r=void 0!==t.pageYOffset?t.pageYOffset:o.scrollTop;n=this.props.isReverse?r:this.calculateOffset(e,r)}else n=this.props.isReverse?a.scrollTop:e.scrollHeight-a.scrollTop-a.clientHeight;n<Number(this.props.threshold)&&e&&null!==e.offsetParent&&(this.detachScrollListener(),this.beforeScrollHeight=a.scrollHeight,this.beforeScrollTop=a.scrollTop,"function"===typeof this.props.loadMore&&(this.props.loadMore(this.pageLoaded+=1),this.loadMore=!0))}},{key:"calculateOffset",value:function(e,t){return e?this.calculateTopPosition(e)+(e.offsetHeight-t-window.innerHeight):0}},{key:"calculateTopPosition",value:function(e){return e?e.offsetTop+this.calculateTopPosition(e.offsetParent):0}},{key:"render",value:function(){var e=this,t=this.filterProps(this.props),a=t.children,n=t.element,o=t.hasMore,s=(t.initialLoad,t.isReverse),i=t.loader,l=(t.loadMore,t.pageStart,t.ref),c=(t.threshold,t.useCapture,t.useWindow,t.getScrollParent,function(e,t){var a={};for(var n in e)t.indexOf(n)>=0||Object.prototype.hasOwnProperty.call(e,n)&&(a[n]=e[n]);return a}(t,["children","element","hasMore","initialLoad","isReverse","loader","loadMore","pageStart","ref","threshold","useCapture","useWindow","getScrollParent"]));c.ref=function(t){e.scrollComponent=t,l&&l(t)};var u=[a];return o&&(i?s?u.unshift(i):u.push(i):this.defaultLoader&&(s?u.unshift(this.defaultLoader):u.push(this.defaultLoader))),r.default.createElement(n,c,u)}}]),t}();l.propTypes={children:s.default.node.isRequired,element:s.default.node,hasMore:s.default.bool,initialLoad:s.default.bool,isReverse:s.default.bool,loader:s.default.node,loadMore:s.default.func.isRequired,pageStart:s.default.number,ref:s.default.func,getScrollParent:s.default.func,threshold:s.default.number,useCapture:s.default.bool,useWindow:s.default.bool},l.defaultProps={element:"div",hasMore:!1,initialLoad:!0,pageStart:0,ref:null,threshold:250,useWindow:!0,isReverse:!1,useCapture:!1,loader:null,getScrollParent:null},t.default=l,e.exports=t.default},682:function(e,t,a){},683:function(e,t,a){},771:function(e,t,a){"use strict";a.r(t);var n=a(4),o=a(5),r=a(7),s=a(6),i=a(8),l=a(0),c=a.n(l),u=(a(678),a(13)),p=a(59),d=a(652),m=(a(679),a(43)),h=a(20),f=a(114),v=a(680),b=a.n(v),y=a(37);var g=c.a.memo(function(e){var t=e.addCourseClick;return c.a.createElement("div",{className:"add-course"},c.a.createElement("button",{className:"add",onClick:t},"\u6dfb\u52a0\u8bfe\u7a0b+"))});function E(e){var t=e.record,a=t.seconds,n=t.lesson_name,o="";if(n){var r=/\u7b2c[\s\S]+?\u8bfe/.exec(n);o+=r&&r[0]?r[0]:""}if(a){var s=function(e){return{hour:Math.floor(e/3600),min:Math.floor(e/60)%60,sec:e%60}}(a);o+=(s.hour?String(s.hour).padStart(2,"0")+":":"")+(s.min?String(s.min).padStart(2,"0")+":":"")+(s.sec?String(s.sec).padStart(2,"0"):"")}return c.a.createElement("span",{className:"record"},o.length?"\u5b66\u4e60\u5230".concat(o):null)}var w=c.a.memo(function(e){var t=e.item;if(t.ago||t.seconds){var a=new Date(1e3*t.ago),n=Object(m.isToday)(a)?Object(m.format)(a,"HH\u65f6mm\u5206"):Object(m.format)(a,"MM\u6708DD\u65e5");return c.a.createElement("div",{className:"des"},c.a.createElement("span",{className:"time"},n),c.a.createElement(E,{record:t}))}return c.a.createElement("button",{className:"start-learn"},"\u5f00\u59cb\u5b66\u4e60")}),L=function(e){function t(){var e,a;Object(n.a)(this,t);for(var o=arguments.length,i=new Array(o),l=0;l<o;l++)i[l]=arguments[l];return(a=Object(r.a)(this,(e=Object(s.a)(t)).call.apply(e,[this].concat(i)))).handleClick=function(e){a.props.history.push("/play/video?id=".concat(e))},a.addCourseClick=function(){a.props.history.push("/classify")},a.loadFunc=Object(y.debounce)(function(){a.props.courseList.length%10===0&&a.props.fetchCoursesListIfNeeded()},200),a}return Object(i.a)(t,e),Object(o.a)(t,[{key:"componentDidMount",value:function(){this.props.switchTab(!1),this.props.fetchCoursesListIfNeeded()}},{key:"componentWillUnmount",value:function(){this.props.switchTab(!0)}},{key:"render",value:function(){var e=this,t=this.props.courseList;return t&&0!==t.length?c.a.createElement(c.a.Fragment,null,c.a.createElement("div",{className:"my-course-uid"},"\u52a0\u7fa4\u8bf7\u5907\u6ce8\u60a8\u7684\u5b66\u53f7\uff1a".concat(this.props.user.data.uid)),c.a.createElement(b.a,{pageStart:0,hasMore:!0,loadMore:this.loadFunc,useWindow:!1},c.a.createElement("ul",{ref:function(t){return e.list=t}},t.map(function(t,a){var n=c.a.createElement("div",{className:"info"},c.a.createElement("p",{className:"title"},t.course_title),c.a.createElement("p",{className:"contact"},"QQ\u7fa4\uff1a",t.course_qq),c.a.createElement(w,{item:t}));return c.a.createElement(d.a,Object.assign({img:t.image_name,handleClick:e.handleClick},t,{key:a,info:n,id:t.course_id}))}))),t.length%10!==0?c.a.createElement(g,{addCourseClick:this.addCourseClick}):null):c.a.createElement("div",{className:"empty"},c.a.createElement("p",null,c.a.createElement("i",{className:"iconfont iconfish"})),c.a.createElement("p",{className:"empty-prompt"},"\u8fd8\u662f\u54b8\u9c7c\u4e00\u6761\uff0c\u5feb\u53bb\u7ffb\u8eab~"),c.a.createElement("p",null,c.a.createElement(u.b,{className:"select-course",to:"/classify"},"\u53bb\u9009\u8bfe")))}}]),t}(l.PureComponent),C=Object(h.b)(function(e){return{courseList:e.myCourses.courseList,user:e.user}},{fetchCoursesListIfNeeded:f.d,switchTab:f.e})(L),k=(a(26),a(2)),N=a.n(k),O=a(18),S=(a(682),function(e){return c.a.createElement("li",{className:"course-base-item ".concat(e.className),onClick:e.handleClick.bind(void 0,e.id)},e.top,c.a.createElement("img",{src:e.img,alt:""}),c.a.createElement("p",{className:"course-title"},e.title),e.bottom)}),_=a(1),j=a(16),P=a.n(j),M=(a(683),function(e){return c.a.createElement("div",{className:"bottom"},c.a.createElement(O.g,{className:e.className},e.text),c.a.createElement("span",null,e.audience,"\u4eba\u89c2\u770b"))}),T=function(e){function t(){var e,a;Object(n.a)(this,t);for(var o=arguments.length,i=new Array(o),l=0;l<o;l++)i[l]=arguments[l];return(a=Object(r.a)(this,(e=Object(s.a)(t)).call.apply(e,[this].concat(i)))).state={courses:[],live:[],page:1,num:10},a.handleClick=function(e){a.props.history.push("/play?id=".concat(e))},a.getFreeCourses=function(){return _.d.get("".concat(_.a.home,"/m/free_course/").concat(a.state.page,"/").concat(a.state.num))},a.getFreeLive=function(){return _.d.get("".concat(_.a.home,"/m/live/free_list"))},a.toLive=function(e){var t=e.room_id;e.live_status?window.location.assign("http://www-test.julyedu.com/live/m_room/".concat(t)):N.a.info("\u76f4\u64ad\u5373\u5c06\u5f00\u59cb\uff0c\u656c\u8bf7\u671f\u5f85",2,null,!1)},a}return Object(i.a)(t,e),Object(o.a)(t,[{key:"componentDidMount",value:function(){var e=this;this.getFreeCourses().then(function(t){var a=t.data;200==a.code?e.setState({courses:a.data}):N.a.info(a.msg)}),this.getFreeLive().then(function(t){var a=t.data;200==a.code?e.setState({live:Object(y.isEmpty)(a.data)?[]:a.data}):N.a.info(a.msg,2,null,!1)})}},{key:"render",value:function(){var e=this;return c.a.createElement("ul",{className:"free-courses"},this.state.live.map(function(t,a){var n=c.a.createElement("div",{className:"bottom"},c.a.createElement("div",{className:"animation-box"},new Array(4).fill("a").map(function(e,t){return c.a.createElement("i",{key:t,className:P()("column","column-".concat(t+1))})})),c.a.createElement("div",{className:"time"},"".concat(t.live_start_time))),o=t.live_status?c.a.createElement(O.g,{className:"tag-soon top"},"\u5373\u5c06\u5f00\u59cb"):c.a.createElement(O.g,{className:"tag-playing top"},"\u6b63\u5728\u76f4\u64ad");return c.a.createElement(S,{img:t.live_cover,title:t.live_title,top:o,bottom:n,key:t.live_id,className:"live",handleClick:e.toLive.bind(e,t),id:a})}),this.state.courses.map(function(t,a){return c.a.createElement(S,{img:t.logo,title:t.video_course_name,handleClick:e.handleClick,bottom:c.a.createElement(M,{audience:t.play_times,className:"tag-category",text:t.category}),id:t.v_course_id,key:a,className:"course-item"})}))}}]),t}(l.PureComponent),W=a(166),H=a(165),R=a(23),x=(a(247),function(e){function t(){var e,a;Object(n.a)(this,t);for(var o=arguments.length,i=new Array(o),l=0;l<o;l++)i[l]=arguments[l];return(a=Object(r.a)(this,(e=Object(s.a)(t)).call.apply(e,[this].concat(i)))).state={position:{}},a}return Object(i.a)(t,e),Object(o.a)(t,[{key:"storeScrollPosition",value:function(e){}},{key:"render",value:function(){var e=this,t=this.props.match;return c.a.createElement("section",{id:"study"},c.a.createElement("div",{className:"tab"},c.a.createElement("div",null,c.a.createElement(u.c,{to:"".concat(t.url,"/my-course"),replace:!0,activeClassName:"active"},"\u6211\u7684\u8bfe\u7a0b")),c.a.createElement("div",null,c.a.createElement(u.c,{to:"".concat(t.url,"/free-course"),replace:!0,activeClassName:"active"},"\u514d\u8d39\u8bfe\u7a0b"))),c.a.createElement("div",{className:"study-container",ref:function(t){return e.list=t}},c.a.createElement(p.d,null,c.a.createElement(p.a,{exact:!0,from:"/study",to:"study/my-course"}),c.a.createElement(p.b,{path:"".concat(this.props.match.path,"/my-course"),component:C}),c.a.createElement(p.b,{path:"".concat(this.props.match.path,"/free-course"),component:T}))))}}]),t}(l.Component));t.default=Object(R.d)(H.a,W.a)(x)}}]); (window.webpackJsonp=window.webpackJsonp||[]).push([[6],{653:function(e,t,a){"use strict";var n=a(0),o=a.n(n);a(654);t.a=function(e){return o.a.createElement("li",{className:"v-list-base-item",onClick:e.handleClick.bind(void 0,e.id)},o.a.createElement("div",{className:"content"},o.a.createElement("div",{className:"cover"},e.status,o.a.createElement("img",{src:e.img,alt:""})),e.info),e.tab)}},654:function(e,t,a){},679:function(e,t,a){},680:function(e,t,a){},681:function(e,t,a){e.exports=a(682)},682:function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=function(){function e(e,t){for(var a=0;a<t.length;a++){var n=t[a];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}return function(t,a,n){return a&&e(t.prototype,a),n&&e(t,n),t}}(),o=a(0),r=i(o),s=i(a(3));function i(e){return e&&e.__esModule?e:{default:e}}var l=function(e){function t(e){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);var a=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!==typeof t&&"function"!==typeof t?e:t}(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e));return a.scrollListener=a.scrollListener.bind(a),a.eventListenerOptions=a.eventListenerOptions.bind(a),a.mousewheelListener=a.mousewheelListener.bind(a),a}return function(e,t){if("function"!==typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,o.Component),n(t,[{key:"componentDidMount",value:function(){this.pageLoaded=this.props.pageStart,this.options=this.eventListenerOptions(),this.attachScrollListener()}},{key:"componentDidUpdate",value:function(){if(this.props.isReverse&&this.loadMore){var e=this.getParentElement(this.scrollComponent);e.scrollTop=e.scrollHeight-this.beforeScrollHeight+this.beforeScrollTop,this.loadMore=!1}this.attachScrollListener()}},{key:"componentWillUnmount",value:function(){this.detachScrollListener(),this.detachMousewheelListener()}},{key:"isPassiveSupported",value:function(){var e=!1,t={get passive(){e=!0}};try{document.addEventListener("test",null,t),document.removeEventListener("test",null,t)}catch(a){}return e}},{key:"eventListenerOptions",value:function(){var e=this.props.useCapture;return this.isPassiveSupported()&&(e={useCapture:this.props.useCapture,passive:!0}),e}},{key:"setDefaultLoader",value:function(e){this.defaultLoader=e}},{key:"detachMousewheelListener",value:function(){var e=window;!1===this.props.useWindow&&(e=this.scrollComponent.parentNode),e.removeEventListener("mousewheel",this.mousewheelListener,this.options?this.options:this.props.useCapture)}},{key:"detachScrollListener",value:function(){var e=window;!1===this.props.useWindow&&(e=this.getParentElement(this.scrollComponent)),e.removeEventListener("scroll",this.scrollListener,this.options?this.options:this.props.useCapture),e.removeEventListener("resize",this.scrollListener,this.options?this.options:this.props.useCapture)}},{key:"getParentElement",value:function(e){var t=this.props.getScrollParent&&this.props.getScrollParent();return null!=t?t:e&&e.parentNode}},{key:"filterProps",value:function(e){return e}},{key:"attachScrollListener",value:function(){var e=this.getParentElement(this.scrollComponent);if(this.props.hasMore&&e){var t=window;!1===this.props.useWindow&&(t=e),t.addEventListener("mousewheel",this.mousewheelListener,this.options?this.options:this.props.useCapture),t.addEventListener("scroll",this.scrollListener,this.options?this.options:this.props.useCapture),t.addEventListener("resize",this.scrollListener,this.options?this.options:this.props.useCapture),this.props.initialLoad&&this.scrollListener()}}},{key:"mousewheelListener",value:function(e){1!==e.deltaY||this.isPassiveSupported()||e.preventDefault()}},{key:"scrollListener",value:function(){var e=this.scrollComponent,t=window,a=this.getParentElement(e),n=void 0;if(this.props.useWindow){var o=document.documentElement||document.body.parentNode||document.body,r=void 0!==t.pageYOffset?t.pageYOffset:o.scrollTop;n=this.props.isReverse?r:this.calculateOffset(e,r)}else n=this.props.isReverse?a.scrollTop:e.scrollHeight-a.scrollTop-a.clientHeight;n<Number(this.props.threshold)&&e&&null!==e.offsetParent&&(this.detachScrollListener(),this.beforeScrollHeight=a.scrollHeight,this.beforeScrollTop=a.scrollTop,"function"===typeof this.props.loadMore&&(this.props.loadMore(this.pageLoaded+=1),this.loadMore=!0))}},{key:"calculateOffset",value:function(e,t){return e?this.calculateTopPosition(e)+(e.offsetHeight-t-window.innerHeight):0}},{key:"calculateTopPosition",value:function(e){return e?e.offsetTop+this.calculateTopPosition(e.offsetParent):0}},{key:"render",value:function(){var e=this,t=this.filterProps(this.props),a=t.children,n=t.element,o=t.hasMore,s=(t.initialLoad,t.isReverse),i=t.loader,l=(t.loadMore,t.pageStart,t.ref),c=(t.threshold,t.useCapture,t.useWindow,t.getScrollParent,function(e,t){var a={};for(var n in e)t.indexOf(n)>=0||Object.prototype.hasOwnProperty.call(e,n)&&(a[n]=e[n]);return a}(t,["children","element","hasMore","initialLoad","isReverse","loader","loadMore","pageStart","ref","threshold","useCapture","useWindow","getScrollParent"]));c.ref=function(t){e.scrollComponent=t,l&&l(t)};var u=[a];return o&&(i?s?u.unshift(i):u.push(i):this.defaultLoader&&(s?u.unshift(this.defaultLoader):u.push(this.defaultLoader))),r.default.createElement(n,c,u)}}]),t}();l.propTypes={children:s.default.node.isRequired,element:s.default.node,hasMore:s.default.bool,initialLoad:s.default.bool,isReverse:s.default.bool,loader:s.default.node,loadMore:s.default.func.isRequired,pageStart:s.default.number,ref:s.default.func,getScrollParent:s.default.func,threshold:s.default.number,useCapture:s.default.bool,useWindow:s.default.bool},l.defaultProps={element:"div",hasMore:!1,initialLoad:!0,pageStart:0,ref:null,threshold:250,useWindow:!0,isReverse:!1,useCapture:!1,loader:null,getScrollParent:null},t.default=l,e.exports=t.default},683:function(e,t,a){},684:function(e,t,a){},771:function(e,t,a){"use strict";a.r(t);var n=a(4),o=a(5),r=a(8),s=a(6),i=a(7),l=a(0),c=a.n(l),u=(a(679),a(13)),p=a(59),d=a(653),h=(a(680),a(50)),m=a(20),f=a(117),v=a(681),b=a.n(v),y=a(37);var g=c.a.memo(function(e){var t=e.addCourseClick;return c.a.createElement("div",{className:"add-course"},c.a.createElement("button",{className:"add",onClick:t},"\u6dfb\u52a0\u8bfe\u7a0b+"))});function E(e){var t=e.record,a=t.seconds,n=t.lesson_name,o="";if(n){var r=/\u7b2c[\s\S]+?\u8bfe/.exec(n);o+=r&&r[0]?r[0]:""}if(a){var s=function(e){return{hour:Math.floor(e/3600),min:Math.floor(e/60)%60,sec:e%60}}(a);o+=(s.hour?String(s.hour).padStart(2,"0")+":":"")+(s.min?String(s.min).padStart(2,"0")+":":"")+(s.sec?String(s.sec).padStart(2,"0"):"")}return c.a.createElement("span",{className:"record"},o.length?"\u5b66\u4e60\u5230".concat(o):null)}var w=c.a.memo(function(e){var t=e.item;if(t.ago||t.seconds){var a=new Date(1e3*t.ago),n=Object(h.isToday)(a)?Object(h.format)(a,"HH\u65f6mm\u5206"):Object(h.format)(a,"MM\u6708DD\u65e5");return c.a.createElement("div",{className:"des"},c.a.createElement("span",{className:"time"},n),c.a.createElement(E,{record:t}))}return c.a.createElement("button",{className:"start-learn"},"\u5f00\u59cb\u5b66\u4e60")}),L=function(e){function t(){var e,a;Object(n.a)(this,t);for(var o=arguments.length,i=new Array(o),l=0;l<o;l++)i[l]=arguments[l];return(a=Object(r.a)(this,(e=Object(s.a)(t)).call.apply(e,[this].concat(i)))).handleClick=function(e){a.props.history.push("/play/video?id=".concat(e))},a.addCourseClick=function(){a.props.history.push("/classify")},a.loadFunc=Object(y.debounce)(function(){a.props.courseList.length%10===0&&a.props.fetchCoursesListIfNeeded()},200),a}return Object(i.a)(t,e),Object(o.a)(t,[{key:"componentDidMount",value:function(){this.props.switchTab(!1),this.props.fetchCoursesListIfNeeded()}},{key:"componentWillUnmount",value:function(){this.props.switchTab(!0)}},{key:"render",value:function(){var e=this,t=this.props.courseList;return t&&0!==t.length?c.a.createElement(c.a.Fragment,null,c.a.createElement("div",{className:"my-course-uid"},"\u52a0\u7fa4\u8bf7\u5907\u6ce8\u60a8\u7684\u5b66\u53f7\uff1a".concat(this.props.user.data.uid)),c.a.createElement(b.a,{pageStart:0,hasMore:!0,loadMore:this.loadFunc,useWindow:!1},c.a.createElement("ul",{ref:function(t){return e.list=t}},t.map(function(t,a){var n=c.a.createElement("div",{className:"info"},c.a.createElement("p",{className:"title"},t.course_title),c.a.createElement("p",{className:"contact"},"QQ\u7fa4\uff1a",t.course_qq),c.a.createElement(w,{item:t}));return c.a.createElement(d.a,Object.assign({img:t.image_name,handleClick:e.handleClick},t,{key:a,info:n,id:t.course_id}))}))),t.length%10!==0?c.a.createElement(g,{addCourseClick:this.addCourseClick}):null):c.a.createElement("div",{className:"empty"},c.a.createElement("p",null,c.a.createElement("i",{className:"iconfont iconfish"})),c.a.createElement("p",{className:"empty-prompt"},"\u8fd8\u662f\u54b8\u9c7c\u4e00\u6761\uff0c\u5feb\u53bb\u7ffb\u8eab~"),c.a.createElement("p",null,c.a.createElement(u.b,{className:"select-course",to:"/classify"},"\u53bb\u9009\u8bfe")))}}]),t}(l.PureComponent),C=Object(m.b)(function(e){return{courseList:e.myCourses.courseList,user:e.user}},{fetchCoursesListIfNeeded:f.d,switchTab:f.e})(L),k=(a(26),a(2)),N=a.n(k),O=a(18),S=(a(683),function(e){return c.a.createElement("li",{className:"course-base-item ".concat(e.className),onClick:e.handleClick.bind(void 0,e.id)},e.top,c.a.createElement("img",{src:e.img,alt:""}),c.a.createElement("p",{className:"course-title"},e.title),e.bottom)}),_=a(1),j=a(16),P=a.n(j),M=(a(684),function(e){return c.a.createElement("div",{className:"bottom"},c.a.createElement(O.h,{className:e.className},e.text),c.a.createElement("span",null,e.audience,"\u4eba\u89c2\u770b"))}),T=function(e){function t(){var e,a;Object(n.a)(this,t);for(var o=arguments.length,i=new Array(o),l=0;l<o;l++)i[l]=arguments[l];return(a=Object(r.a)(this,(e=Object(s.a)(t)).call.apply(e,[this].concat(i)))).state={courses:[],live:[],page:1,num:10},a.handleClick=function(e){a.props.history.push("/play?id=".concat(e))},a.getFreeCourses=function(){return _.d.get("".concat(_.a.home,"/m/free_course/").concat(a.state.page,"/").concat(a.state.num))},a.getFreeLive=function(){return _.d.get("".concat(_.a.home,"/m/live/free_list"))},a.toLive=function(e){var t=e.room_id;e.live_status?window.location.assign("http://www-test.julyedu.com/live/m_room/".concat(t)):N.a.info("\u76f4\u64ad\u5373\u5c06\u5f00\u59cb\uff0c\u656c\u8bf7\u671f\u5f85",2,null,!1)},a}return Object(i.a)(t,e),Object(o.a)(t,[{key:"componentDidMount",value:function(){var e=this;this.getFreeCourses().then(function(t){var a=t.data;200==a.code?e.setState({courses:a.data}):N.a.info(a.msg)}),this.getFreeLive().then(function(t){var a=t.data;200==a.code?e.setState({live:Object(y.isEmpty)(a.data)?[]:a.data}):N.a.info(a.msg,2,null,!1)})}},{key:"render",value:function(){var e=this;return c.a.createElement("ul",{className:"free-courses"},this.state.live.map(function(t,a){var n=c.a.createElement("div",{className:"bottom"},c.a.createElement("div",{className:"animation-box"},new Array(4).fill("a").map(function(e,t){return c.a.createElement("i",{key:t,className:P()("column","column-".concat(t+1))})})),c.a.createElement("div",{className:"time"},"".concat(t.live_start_time))),o=t.live_status?c.a.createElement(O.h,{className:"tag-soon top"},"\u5373\u5c06\u5f00\u59cb"):c.a.createElement(O.h,{className:"tag-playing top"},"\u6b63\u5728\u76f4\u64ad");return c.a.createElement(S,{img:t.live_cover,title:t.live_title,top:o,bottom:n,key:t.live_id,className:"live",handleClick:e.toLive.bind(e,t),id:a})}),this.state.courses.map(function(t,a){return c.a.createElement(S,{img:t.logo,title:t.video_course_name,handleClick:e.handleClick,bottom:c.a.createElement(M,{audience:t.play_times,className:"tag-category",text:t.category}),id:t.v_course_id,key:a,className:"course-item"})}))}}]),t}(l.PureComponent),W=a(168),H=a(167),R=a(23),x=(a(250),function(e){function t(){var e,a;Object(n.a)(this,t);for(var o=arguments.length,i=new Array(o),l=0;l<o;l++)i[l]=arguments[l];return(a=Object(r.a)(this,(e=Object(s.a)(t)).call.apply(e,[this].concat(i)))).state={position:{}},a}return Object(i.a)(t,e),Object(o.a)(t,[{key:"storeScrollPosition",value:function(e){}},{key:"render",value:function(){var e=this,t=this.props.match;return c.a.createElement("section",{id:"study"},c.a.createElement("div",{className:"tab"},c.a.createElement("div",null,c.a.createElement(u.c,{to:"".concat(t.url,"/my-course"),replace:!0,activeClassName:"active"},"\u6211\u7684\u8bfe\u7a0b")),c.a.createElement("div",null,c.a.createElement(u.c,{to:"".concat(t.url,"/free-course"),replace:!0,activeClassName:"active"},"\u514d\u8d39\u8bfe\u7a0b"))),c.a.createElement("div",{className:"study-container",ref:function(t){return e.list=t}},c.a.createElement(p.d,null,c.a.createElement(p.a,{exact:!0,from:"/study",to:"study/my-course"}),c.a.createElement(p.b,{path:"".concat(this.props.match.path,"/my-course"),component:C}),c.a.createElement(p.b,{path:"".concat(this.props.match.path,"/free-course"),component:T}))))}}]),t}(l.Component));t.default=Object(R.d)(H.a,W.a)(x)}}]);
//# sourceMappingURL=study.58204291.chunk.js.map //# sourceMappingURL=study.863458b0.chunk.js.map
\ No newline at end of file \ No newline at end of file
{"version":3,"sources":["common/v-list-base/index.js","../node_modules/react-infinite-scroller/index.js","../node_modules/react-infinite-scroller/dist/InfiniteScroll.js","components/study/myCourses/index.js","common/course-base/index.js","components/study/freeCourses/index.js","components/study/index.js"],"names":["VList","props","react__WEBPACK_IMPORTED_MODULE_0___default","a","createElement","className","onClick","handleClick","bind","id","status","src","img","alt","info","tab","module","exports","__webpack_require__","Object","defineProperty","value","_createClass","defineProperties","target","i","length","descriptor","enumerable","configurable","writable","key","Constructor","protoProps","staticProps","prototype","_react","_react2","_interopRequireDefault","_propTypes2","obj","__esModule","default","InfiniteScroll","_Component","instance","TypeError","_classCallCheck","this","_this","self","call","ReferenceError","_possibleConstructorReturn","__proto__","getPrototypeOf","scrollListener","eventListenerOptions","mousewheelListener","subClass","superClass","create","constructor","setPrototypeOf","_inherits","Component","pageLoaded","pageStart","options","attachScrollListener","isReverse","loadMore","parentElement","getParentElement","scrollComponent","scrollTop","scrollHeight","beforeScrollHeight","beforeScrollTop","detachScrollListener","detachMousewheelListener","passive","testOptions","document","addEventListener","removeEventListener","e","useCapture","isPassiveSupported","loader","defaultLoader","scrollEl","window","useWindow","parentNode","el","scrollParent","getScrollParent","hasMore","initialLoad","deltaY","preventDefault","offset","doc","documentElement","body","undefined","pageYOffset","calculateOffset","clientHeight","Number","threshold","offsetParent","calculateTopPosition","offsetHeight","innerHeight","offsetTop","_this2","renderProps","filterProps","children","element","ref","keys","indexOf","hasOwnProperty","_objectWithoutProperties","node","childrenArray","unshift","push","propTypes","isRequired","bool","func","number","defaultProps","AddCourse","React","memo","_ref","addCourseClick","react_default","Record","_ref2","_ref2$record","record","seconds","lesson_name","result","matchResult","exec","studyTime","hour","Math","floor","min","sec","getStudyTime","String","padStart","concat","Bottom","_ref3","item","ago","date","Date","time","isToday","format","MyCourses","history","loadFunc","debounce","courseList","fetchCoursesListIfNeeded","switchTab","list","Fragment","user","data","uid","react_infinite_scroller_default","map","index","Info","course_title","course_qq","myCourses_Bottom","v_list_base","assign","image_name","react_router_dom","to","PureComponent","connect","state","myCourses","Course","top","title","bottom","common","text","audience","FreeCourse","courses","live","page","num","getFreeCourses","http","get","api","home","getFreeLive","toLive","room_id","live_status","location","toast_default","then","res","code","setState","msg","isEmpty","_this3","Array","fill","classnames","LiveStatus","common_course_base","logo","freeCourses_Bottom","category","Study","position","match","url","replace","activeClassName","react_router","exact","from","path","component","FreeCourses","compose","WithFullSize","WithTab"],"mappings":"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","file":"static/js/study.58204291.chunk.js","sourcesContent":["import React from 'react';\nimport './index.scss'\n\nconst VList = (props) => {\n return (\n <li className='v-list-base-item' onClick={props.handleClick.bind(this, props.id)}>\n <div className=\"content\">\n <div className=\"cover\">\n {props.status}\n <img src={props.img} alt=\"\"/>\n </div>\n {props.info}\n </div>\n {props.tab}\n </li>\n );\n};\n\nexport default VList;","module.exports = require('./dist/InfiniteScroll');","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\n\nfunction _objectWithoutProperties(obj, keys) {\n var target = {};\n\n for (var i in obj) {\n if (keys.indexOf(i) >= 0) continue;\n if (!Object.prototype.hasOwnProperty.call(obj, i)) continue;\n target[i] = obj[i];\n }\n\n return target;\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n}\n\nvar InfiniteScroll = function (_Component) {\n _inherits(InfiniteScroll, _Component);\n\n function InfiniteScroll(props) {\n _classCallCheck(this, InfiniteScroll);\n\n var _this = _possibleConstructorReturn(this, (InfiniteScroll.__proto__ || Object.getPrototypeOf(InfiniteScroll)).call(this, props));\n\n _this.scrollListener = _this.scrollListener.bind(_this);\n _this.eventListenerOptions = _this.eventListenerOptions.bind(_this);\n _this.mousewheelListener = _this.mousewheelListener.bind(_this);\n return _this;\n }\n\n _createClass(InfiniteScroll, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n this.pageLoaded = this.props.pageStart;\n this.options = this.eventListenerOptions();\n this.attachScrollListener();\n }\n }, {\n key: 'componentDidUpdate',\n value: function componentDidUpdate() {\n if (this.props.isReverse && this.loadMore) {\n var parentElement = this.getParentElement(this.scrollComponent);\n parentElement.scrollTop = parentElement.scrollHeight - this.beforeScrollHeight + this.beforeScrollTop;\n this.loadMore = false;\n }\n\n this.attachScrollListener();\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n this.detachScrollListener();\n this.detachMousewheelListener();\n }\n }, {\n key: 'isPassiveSupported',\n value: function isPassiveSupported() {\n var passive = false;\n var testOptions = {\n get passive() {\n passive = true;\n }\n\n };\n\n try {\n document.addEventListener('test', null, testOptions);\n document.removeEventListener('test', null, testOptions);\n } catch (e) {// ignore\n }\n\n return passive;\n }\n }, {\n key: 'eventListenerOptions',\n value: function eventListenerOptions() {\n var options = this.props.useCapture;\n\n if (this.isPassiveSupported()) {\n options = {\n useCapture: this.props.useCapture,\n passive: true\n };\n }\n\n return options;\n } // Set a defaut loader for all your `InfiniteScroll` components\n\n }, {\n key: 'setDefaultLoader',\n value: function setDefaultLoader(loader) {\n this.defaultLoader = loader;\n }\n }, {\n key: 'detachMousewheelListener',\n value: function detachMousewheelListener() {\n var scrollEl = window;\n\n if (this.props.useWindow === false) {\n scrollEl = this.scrollComponent.parentNode;\n }\n\n scrollEl.removeEventListener('mousewheel', this.mousewheelListener, this.options ? this.options : this.props.useCapture);\n }\n }, {\n key: 'detachScrollListener',\n value: function detachScrollListener() {\n var scrollEl = window;\n\n if (this.props.useWindow === false) {\n scrollEl = this.getParentElement(this.scrollComponent);\n }\n\n scrollEl.removeEventListener('scroll', this.scrollListener, this.options ? this.options : this.props.useCapture);\n scrollEl.removeEventListener('resize', this.scrollListener, this.options ? this.options : this.props.useCapture);\n }\n }, {\n key: 'getParentElement',\n value: function getParentElement(el) {\n var scrollParent = this.props.getScrollParent && this.props.getScrollParent();\n\n if (scrollParent != null) {\n return scrollParent;\n }\n\n return el && el.parentNode;\n }\n }, {\n key: 'filterProps',\n value: function filterProps(props) {\n return props;\n }\n }, {\n key: 'attachScrollListener',\n value: function attachScrollListener() {\n var parentElement = this.getParentElement(this.scrollComponent);\n\n if (!this.props.hasMore || !parentElement) {\n return;\n }\n\n var scrollEl = window;\n\n if (this.props.useWindow === false) {\n scrollEl = parentElement;\n }\n\n scrollEl.addEventListener('mousewheel', this.mousewheelListener, this.options ? this.options : this.props.useCapture);\n scrollEl.addEventListener('scroll', this.scrollListener, this.options ? this.options : this.props.useCapture);\n scrollEl.addEventListener('resize', this.scrollListener, this.options ? this.options : this.props.useCapture);\n\n if (this.props.initialLoad) {\n this.scrollListener();\n }\n }\n }, {\n key: 'mousewheelListener',\n value: function mousewheelListener(e) {\n // Prevents Chrome hangups\n // See: https://stackoverflow.com/questions/47524205/random-high-content-download-time-in-chrome/47684257#47684257\n if (e.deltaY === 1 && !this.isPassiveSupported()) {\n e.preventDefault();\n }\n }\n }, {\n key: 'scrollListener',\n value: function scrollListener() {\n var el = this.scrollComponent;\n var scrollEl = window;\n var parentNode = this.getParentElement(el);\n var offset = void 0;\n\n if (this.props.useWindow) {\n var doc = document.documentElement || document.body.parentNode || document.body;\n var scrollTop = scrollEl.pageYOffset !== undefined ? scrollEl.pageYOffset : doc.scrollTop;\n\n if (this.props.isReverse) {\n offset = scrollTop;\n } else {\n offset = this.calculateOffset(el, scrollTop);\n }\n } else if (this.props.isReverse) {\n offset = parentNode.scrollTop;\n } else {\n offset = el.scrollHeight - parentNode.scrollTop - parentNode.clientHeight;\n } // Here we make sure the element is visible as well as checking the offset\n\n\n if (offset < Number(this.props.threshold) && el && el.offsetParent !== null) {\n this.detachScrollListener();\n this.beforeScrollHeight = parentNode.scrollHeight;\n this.beforeScrollTop = parentNode.scrollTop; // Call loadMore after detachScrollListener to allow for non-async loadMore functions\n\n if (typeof this.props.loadMore === 'function') {\n this.props.loadMore(this.pageLoaded += 1);\n this.loadMore = true;\n }\n }\n }\n }, {\n key: 'calculateOffset',\n value: function calculateOffset(el, scrollTop) {\n if (!el) {\n return 0;\n }\n\n return this.calculateTopPosition(el) + (el.offsetHeight - scrollTop - window.innerHeight);\n }\n }, {\n key: 'calculateTopPosition',\n value: function calculateTopPosition(el) {\n if (!el) {\n return 0;\n }\n\n return el.offsetTop + this.calculateTopPosition(el.offsetParent);\n }\n }, {\n key: 'render',\n value: function render() {\n var _this2 = this;\n\n var renderProps = this.filterProps(this.props);\n\n var children = renderProps.children,\n element = renderProps.element,\n hasMore = renderProps.hasMore,\n initialLoad = renderProps.initialLoad,\n isReverse = renderProps.isReverse,\n loader = renderProps.loader,\n loadMore = renderProps.loadMore,\n pageStart = renderProps.pageStart,\n ref = renderProps.ref,\n threshold = renderProps.threshold,\n useCapture = renderProps.useCapture,\n useWindow = renderProps.useWindow,\n getScrollParent = renderProps.getScrollParent,\n props = _objectWithoutProperties(renderProps, ['children', 'element', 'hasMore', 'initialLoad', 'isReverse', 'loader', 'loadMore', 'pageStart', 'ref', 'threshold', 'useCapture', 'useWindow', 'getScrollParent']);\n\n props.ref = function (node) {\n _this2.scrollComponent = node;\n\n if (ref) {\n ref(node);\n }\n };\n\n var childrenArray = [children];\n\n if (hasMore) {\n if (loader) {\n isReverse ? childrenArray.unshift(loader) : childrenArray.push(loader);\n } else if (this.defaultLoader) {\n isReverse ? childrenArray.unshift(this.defaultLoader) : childrenArray.push(this.defaultLoader);\n }\n }\n\n return _react2.default.createElement(element, props, childrenArray);\n }\n }]);\n\n return InfiniteScroll;\n}(_react.Component);\n\nInfiniteScroll.propTypes = {\n children: _propTypes2.default.node.isRequired,\n element: _propTypes2.default.node,\n hasMore: _propTypes2.default.bool,\n initialLoad: _propTypes2.default.bool,\n isReverse: _propTypes2.default.bool,\n loader: _propTypes2.default.node,\n loadMore: _propTypes2.default.func.isRequired,\n pageStart: _propTypes2.default.number,\n ref: _propTypes2.default.func,\n getScrollParent: _propTypes2.default.func,\n threshold: _propTypes2.default.number,\n useCapture: _propTypes2.default.bool,\n useWindow: _propTypes2.default.bool\n};\nInfiniteScroll.defaultProps = {\n element: 'div',\n hasMore: false,\n initialLoad: true,\n pageStart: 0,\n ref: null,\n threshold: 250,\n useWindow: true,\n isReverse: false,\n useCapture: false,\n loader: null,\n getScrollParent: null\n};\nexports.default = InfiniteScroll;\nmodule.exports = exports['default'];","import React, { PureComponent } from \"react\"\nimport VList from '@/common/v-list-base'\nimport './my-courses.scss'\nimport { isToday, format } from \"date-fns\"\nimport { connect } from \"react-redux\"\nimport { fetchCoursesListIfNeeded, switchTab } from \"./actions\"\nimport InfiniteScroll from 'react-infinite-scroller'\nimport { debounce } from 'lodash'\nimport { Link } from 'react-router-dom'\n\n\nfunction getStudyTime(seconds) {\n return {\n hour: Math.floor(seconds / (60 * 60)),\n min: Math.floor(seconds / 60) % 60,\n sec: seconds % 60\n }\n}\n\nconst AddCourse = React.memo(({addCourseClick}) => (\n <div className='add-course'>\n <button className='add' onClick={addCourseClick}>添加课程+</button>\n </div>\n))\n\nfunction Record({record: {seconds, lesson_name}}) {\n let re = /第[\\s\\S]+?课/,\n result = ''\n\n if (lesson_name) {\n let matchResult = re.exec(lesson_name)\n result += (matchResult && matchResult[0]) ? matchResult[0] : ''\n }\n\n if (seconds) {\n let studyTime = getStudyTime(seconds)\n let hour = studyTime.hour ? String(studyTime.hour).padStart(2, '0') + ':' : '',\n min = studyTime.min ? String(studyTime.min).padStart(2, '0') + ':' : '',\n sec = studyTime.sec ? String(studyTime.sec).padStart(2, '0') : ''\n\n result += hour + min + sec\n }\n\n return (\n <span className={'record'}>\n {\n result.length ? `学习到${result}` : null\n }\n </span>\n )\n}\n\n\nconst Bottom = React.memo(({item}) => {\n if (item.ago || item.seconds) {\n let date = new Date(item.ago * 1000)\n let time = isToday(date) ? format(date, 'HH时mm分') : format(date, 'MM月DD日')\n return (\n <div className=\"des\">\n <span className='time'>{time}</span>\n <Record record={item}/>\n </div>\n )\n }\n return (\n <button className='start-learn'>开始学习</button>\n )\n})\n\nclass MyCourses extends PureComponent {\n\n list;\n\n handleClick = id => {\n this.props.history.push(`/play/video?id=${id}`)\n }\n addCourseClick = () => {\n this.props.history.push('/classify')\n }\n\n componentDidMount() {\n this.props.switchTab(false)\n this.props.fetchCoursesListIfNeeded();\n }\n\n componentWillUnmount() {\n this.props.switchTab(true);\n }\n\n loadFunc = debounce(() => {\n if (this.props.courseList.length % 10 === 0) {\n this.props.fetchCoursesListIfNeeded();\n }\n }, 200)\n\n render() {\n let list = this.props.courseList\n if (list && list.length !== 0) {\n return (\n <>\n <div className=\"my-course-uid\">\n {`加群请备注您的学号:${this.props.user.data.uid}`}\n </div>\n <InfiniteScroll\n pageStart={0}\n hasMore={true}\n loadMore={this.loadFunc}\n useWindow={false}\n >\n <ul ref={el => this.list = el}>\n {\n list.map((item, index) => {\n\n const Info = (\n <div className=\"info\">\n <p className='title'>{item.course_title}</p>\n <p className='contact'>QQ群:{item.course_qq}</p>\n <Bottom item={item}/>\n </div>\n )\n return (\n <VList img={item.image_name}\n handleClick={this.handleClick}\n {...item}\n key={index}\n info={Info}\n id={item['course_id']}\n />\n )\n })\n }\n </ul>\n </InfiniteScroll>\n {\n list.length % 10 !== 0 ?\n <AddCourse addCourseClick={this.addCourseClick}/>\n : null\n }\n </>\n )\n } else {\n return (\n <div className=\"empty\">\n <p><i className='iconfont iconfish'/></p>\n <p className='empty-prompt'>还是咸鱼一条,快去翻身~</p>\n <p>\n <Link className='select-course' to='/classify'>去选课</Link>\n </p>\n </div>\n )\n }\n\n }\n}\n\nexport default connect(\n state => ({\n courseList: state.myCourses.courseList,\n user: state.user\n }),\n {\n fetchCoursesListIfNeeded,\n switchTab\n })(MyCourses)","import React from 'react'\nimport './course-base.scss'\n\nconst Course = (props) => {\n return (\n <li className={`course-base-item ${props.className}`} onClick={props.handleClick.bind(this, props.id)}>\n {props.top}\n <img src={props.img} alt=\"\"/>\n <p className=\"course-title\">{props.title}</p>\n {props.bottom}\n </li>\n );\n};\n\nexport default Course;\n\n","import React, { PureComponent } from 'react'\nimport { Tag } from '../../../common'\nimport Course from '@/common/course-base'\nimport { http, api } from '@/utils'\nimport { Toast } from \"antd-mobile\";\nimport classnames from 'classnames'\nimport { isEmpty } from 'lodash'\n\n\nimport './free-courses.scss'\n\nconst Bottom = (props) => (\n <div className='bottom'>\n <Tag className={props.className}>{props.text}</Tag>\n <span>{props.audience}人观看</span>\n </div>\n)\n\nclass FreeCourse extends PureComponent {\n state = {\n courses: [],\n live: [],\n page: 1,\n num: 10\n }\n\n componentDidMount() {\n this.getFreeCourses()\n .then(res => {\n let data = res.data\n if (data.code == 200) {\n this.setState({\n courses: data.data,\n })\n } else {\n Toast.info(data.msg)\n }\n })\n this.getFreeLive()\n .then(res => {\n let data = res.data\n if (data.code == 200) {\n this.setState({\n live: isEmpty(data.data) ? [] : data.data\n })\n } else {\n Toast.info(data.msg, 2, null, false)\n }\n })\n }\n\n handleClick = id => {\n this.props.history.push(`/play?id=${id}`)\n }\n\n getFreeCourses = () => {\n return http.get(`${api.home}/m/free_course/${this.state.page}/${this.state.num}`)\n }\n\n getFreeLive = () => {\n return http.get(`${api.home}/m/live/free_list`)\n }\n\n toLive = live => {\n const {room_id, live_status} = live\n if (live_status) {\n window.location.assign(`http://www-test.julyedu.com/live/m_room/${room_id}`)\n } else {\n Toast.info('直播即将开始,敬请期待', 2, null, false)\n }\n }\n\n render() {\n return (\n <ul className='free-courses'>\n {\n this.state.live.map((item, index) => {\n const Bottom = (\n <div className=\"bottom\">\n <div className=\"animation-box\">\n {new Array(4).fill('a').map((item, index) => {\n return <i key={index} className={classnames('column', `column-${index + 1}`)}/>\n })}\n </div>\n <div className=\"time\">{`${item['live_start_time']}`}</div>\n </div>\n )\n\n const LiveStatus = (\n item['live_status'] ? <Tag className={'tag-soon top'}>即将开始</Tag> :\n <Tag className={'tag-playing top'}>正在直播</Tag>\n )\n return (\n <Course\n img={item['live_cover']}\n title={item['live_title']}\n top={LiveStatus}\n bottom={Bottom}\n key={item['live_id']}\n className={'live'}\n handleClick={this.toLive.bind(this, item)}\n id={index}\n />\n )\n })\n }\n {\n this.state.courses.map((item, index) => (\n <Course\n img={item.logo}\n title={item['video_course_name']}\n handleClick={this.handleClick}\n bottom={\n <Bottom audience={item['play_times']} className={'tag-category'} text={item.category}/>\n }\n id={item['v_course_id']}\n key={index}\n className={'course-item'}\n />\n ))\n }\n </ul>\n )\n }\n}\n\n\nexport default FreeCourse","import React, { Component } from 'react'\nimport './study.scss'\n\nimport { NavLink, Route, Switch, Redirect } from \"react-router-dom\"\nimport MyCourses from \"./myCourses\"\nimport FreeCourses from './freeCourses'\nimport WithTab from '@/HOCs/WithTab'\nimport WithFullSize from '@/HOCs/WithFullSize'\nimport { compose } from 'redux'\nimport PrivateRoute from '@/router/privateRoute'\n\n\nclass Study extends Component {\n\n state = {\n position: {\n\n }\n }\n\n list;\n\n storeScrollPosition(tab){\n\n }\n\n render() {\n const {match} = this.props;\n return (\n <section id='study'>\n <div className='tab'>\n <div>\n <NavLink to={`${match.url}/my-course`}\n replace\n activeClassName='active'\n >我的课程</NavLink>\n </div>\n <div>\n <NavLink to={`${match.url}/free-course`}\n replace\n activeClassName='active'\n >免费课程</NavLink>\n </div>\n </div>\n <div className=\"study-container\" ref={el => this.list = el}>\n <Switch>\n <Redirect exact from='/study' to='study/my-course'/>\n <Route path={`${this.props.match.path}/my-course`} component={MyCourses}/>\n {/*<PrivateRoute path={`${this.props.match.path}/my-course`} component={MyCourses}/>*/}\n <Route path={`${this.props.match.path}/free-course`} component={FreeCourses}/>\n {/*<Route path={`${this.props.match.path}/my-course`} render={props => {\n <MyCourses storeScrollPosition={this.storeScrollPosition}/>\n }}/>*/}\n </Switch>\n </div>\n </section>\n )\n }\n\n}\n\nexport default compose(\n WithFullSize,\n WithTab\n)(Study)"],"sourceRoot":""} {"version":3,"sources":["common/v-list-base/index.js","../node_modules/react-infinite-scroller/index.js","../node_modules/react-infinite-scroller/dist/InfiniteScroll.js","components/study/myCourses/index.js","common/course-base/index.js","components/study/freeCourses/index.js","components/study/index.js"],"names":["VList","props","react__WEBPACK_IMPORTED_MODULE_0___default","a","createElement","className","onClick","handleClick","bind","id","status","src","img","alt","info","tab","module","exports","__webpack_require__","Object","defineProperty","value","_createClass","defineProperties","target","i","length","descriptor","enumerable","configurable","writable","key","Constructor","protoProps","staticProps","prototype","_react","_react2","_interopRequireDefault","_propTypes2","obj","__esModule","default","InfiniteScroll","_Component","instance","TypeError","_classCallCheck","this","_this","self","call","ReferenceError","_possibleConstructorReturn","__proto__","getPrototypeOf","scrollListener","eventListenerOptions","mousewheelListener","subClass","superClass","create","constructor","setPrototypeOf","_inherits","Component","pageLoaded","pageStart","options","attachScrollListener","isReverse","loadMore","parentElement","getParentElement","scrollComponent","scrollTop","scrollHeight","beforeScrollHeight","beforeScrollTop","detachScrollListener","detachMousewheelListener","passive","testOptions","document","addEventListener","removeEventListener","e","useCapture","isPassiveSupported","loader","defaultLoader","scrollEl","window","useWindow","parentNode","el","scrollParent","getScrollParent","hasMore","initialLoad","deltaY","preventDefault","offset","doc","documentElement","body","undefined","pageYOffset","calculateOffset","clientHeight","Number","threshold","offsetParent","calculateTopPosition","offsetHeight","innerHeight","offsetTop","_this2","renderProps","filterProps","children","element","ref","keys","indexOf","hasOwnProperty","_objectWithoutProperties","node","childrenArray","unshift","push","propTypes","isRequired","bool","func","number","defaultProps","AddCourse","React","memo","_ref","addCourseClick","react_default","Record","_ref2","_ref2$record","record","seconds","lesson_name","result","matchResult","exec","studyTime","hour","Math","floor","min","sec","getStudyTime","String","padStart","concat","Bottom","_ref3","item","ago","date","Date","time","isToday","format","MyCourses","history","loadFunc","debounce","courseList","fetchCoursesListIfNeeded","switchTab","list","Fragment","user","data","uid","react_infinite_scroller_default","map","index","Info","course_title","course_qq","myCourses_Bottom","v_list_base","assign","image_name","react_router_dom","to","PureComponent","connect","state","myCourses","Course","top","title","bottom","common","text","audience","FreeCourse","courses","live","page","num","getFreeCourses","http","get","api","home","getFreeLive","toLive","room_id","live_status","location","toast_default","then","res","code","setState","msg","isEmpty","_this3","Array","fill","classnames","LiveStatus","common_course_base","logo","freeCourses_Bottom","category","Study","position","match","url","replace","activeClassName","react_router","exact","from","path","component","FreeCourses","compose","WithFullSize","WithTab"],"mappings":"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","file":"static/js/study.863458b0.chunk.js","sourcesContent":["import React from 'react';\nimport './index.scss'\n\nconst VList = (props) => {\n return (\n <li className='v-list-base-item' onClick={props.handleClick.bind(this, props.id)}>\n <div className=\"content\">\n <div className=\"cover\">\n {props.status}\n <img src={props.img} alt=\"\"/>\n </div>\n {props.info}\n </div>\n {props.tab}\n </li>\n );\n};\n\nexport default VList;","module.exports = require('./dist/InfiniteScroll');","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\n\nfunction _objectWithoutProperties(obj, keys) {\n var target = {};\n\n for (var i in obj) {\n if (keys.indexOf(i) >= 0) continue;\n if (!Object.prototype.hasOwnProperty.call(obj, i)) continue;\n target[i] = obj[i];\n }\n\n return target;\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n}\n\nvar InfiniteScroll = function (_Component) {\n _inherits(InfiniteScroll, _Component);\n\n function InfiniteScroll(props) {\n _classCallCheck(this, InfiniteScroll);\n\n var _this = _possibleConstructorReturn(this, (InfiniteScroll.__proto__ || Object.getPrototypeOf(InfiniteScroll)).call(this, props));\n\n _this.scrollListener = _this.scrollListener.bind(_this);\n _this.eventListenerOptions = _this.eventListenerOptions.bind(_this);\n _this.mousewheelListener = _this.mousewheelListener.bind(_this);\n return _this;\n }\n\n _createClass(InfiniteScroll, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n this.pageLoaded = this.props.pageStart;\n this.options = this.eventListenerOptions();\n this.attachScrollListener();\n }\n }, {\n key: 'componentDidUpdate',\n value: function componentDidUpdate() {\n if (this.props.isReverse && this.loadMore) {\n var parentElement = this.getParentElement(this.scrollComponent);\n parentElement.scrollTop = parentElement.scrollHeight - this.beforeScrollHeight + this.beforeScrollTop;\n this.loadMore = false;\n }\n\n this.attachScrollListener();\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n this.detachScrollListener();\n this.detachMousewheelListener();\n }\n }, {\n key: 'isPassiveSupported',\n value: function isPassiveSupported() {\n var passive = false;\n var testOptions = {\n get passive() {\n passive = true;\n }\n\n };\n\n try {\n document.addEventListener('test', null, testOptions);\n document.removeEventListener('test', null, testOptions);\n } catch (e) {// ignore\n }\n\n return passive;\n }\n }, {\n key: 'eventListenerOptions',\n value: function eventListenerOptions() {\n var options = this.props.useCapture;\n\n if (this.isPassiveSupported()) {\n options = {\n useCapture: this.props.useCapture,\n passive: true\n };\n }\n\n return options;\n } // Set a defaut loader for all your `InfiniteScroll` components\n\n }, {\n key: 'setDefaultLoader',\n value: function setDefaultLoader(loader) {\n this.defaultLoader = loader;\n }\n }, {\n key: 'detachMousewheelListener',\n value: function detachMousewheelListener() {\n var scrollEl = window;\n\n if (this.props.useWindow === false) {\n scrollEl = this.scrollComponent.parentNode;\n }\n\n scrollEl.removeEventListener('mousewheel', this.mousewheelListener, this.options ? this.options : this.props.useCapture);\n }\n }, {\n key: 'detachScrollListener',\n value: function detachScrollListener() {\n var scrollEl = window;\n\n if (this.props.useWindow === false) {\n scrollEl = this.getParentElement(this.scrollComponent);\n }\n\n scrollEl.removeEventListener('scroll', this.scrollListener, this.options ? this.options : this.props.useCapture);\n scrollEl.removeEventListener('resize', this.scrollListener, this.options ? this.options : this.props.useCapture);\n }\n }, {\n key: 'getParentElement',\n value: function getParentElement(el) {\n var scrollParent = this.props.getScrollParent && this.props.getScrollParent();\n\n if (scrollParent != null) {\n return scrollParent;\n }\n\n return el && el.parentNode;\n }\n }, {\n key: 'filterProps',\n value: function filterProps(props) {\n return props;\n }\n }, {\n key: 'attachScrollListener',\n value: function attachScrollListener() {\n var parentElement = this.getParentElement(this.scrollComponent);\n\n if (!this.props.hasMore || !parentElement) {\n return;\n }\n\n var scrollEl = window;\n\n if (this.props.useWindow === false) {\n scrollEl = parentElement;\n }\n\n scrollEl.addEventListener('mousewheel', this.mousewheelListener, this.options ? this.options : this.props.useCapture);\n scrollEl.addEventListener('scroll', this.scrollListener, this.options ? this.options : this.props.useCapture);\n scrollEl.addEventListener('resize', this.scrollListener, this.options ? this.options : this.props.useCapture);\n\n if (this.props.initialLoad) {\n this.scrollListener();\n }\n }\n }, {\n key: 'mousewheelListener',\n value: function mousewheelListener(e) {\n // Prevents Chrome hangups\n // See: https://stackoverflow.com/questions/47524205/random-high-content-download-time-in-chrome/47684257#47684257\n if (e.deltaY === 1 && !this.isPassiveSupported()) {\n e.preventDefault();\n }\n }\n }, {\n key: 'scrollListener',\n value: function scrollListener() {\n var el = this.scrollComponent;\n var scrollEl = window;\n var parentNode = this.getParentElement(el);\n var offset = void 0;\n\n if (this.props.useWindow) {\n var doc = document.documentElement || document.body.parentNode || document.body;\n var scrollTop = scrollEl.pageYOffset !== undefined ? scrollEl.pageYOffset : doc.scrollTop;\n\n if (this.props.isReverse) {\n offset = scrollTop;\n } else {\n offset = this.calculateOffset(el, scrollTop);\n }\n } else if (this.props.isReverse) {\n offset = parentNode.scrollTop;\n } else {\n offset = el.scrollHeight - parentNode.scrollTop - parentNode.clientHeight;\n } // Here we make sure the element is visible as well as checking the offset\n\n\n if (offset < Number(this.props.threshold) && el && el.offsetParent !== null) {\n this.detachScrollListener();\n this.beforeScrollHeight = parentNode.scrollHeight;\n this.beforeScrollTop = parentNode.scrollTop; // Call loadMore after detachScrollListener to allow for non-async loadMore functions\n\n if (typeof this.props.loadMore === 'function') {\n this.props.loadMore(this.pageLoaded += 1);\n this.loadMore = true;\n }\n }\n }\n }, {\n key: 'calculateOffset',\n value: function calculateOffset(el, scrollTop) {\n if (!el) {\n return 0;\n }\n\n return this.calculateTopPosition(el) + (el.offsetHeight - scrollTop - window.innerHeight);\n }\n }, {\n key: 'calculateTopPosition',\n value: function calculateTopPosition(el) {\n if (!el) {\n return 0;\n }\n\n return el.offsetTop + this.calculateTopPosition(el.offsetParent);\n }\n }, {\n key: 'render',\n value: function render() {\n var _this2 = this;\n\n var renderProps = this.filterProps(this.props);\n\n var children = renderProps.children,\n element = renderProps.element,\n hasMore = renderProps.hasMore,\n initialLoad = renderProps.initialLoad,\n isReverse = renderProps.isReverse,\n loader = renderProps.loader,\n loadMore = renderProps.loadMore,\n pageStart = renderProps.pageStart,\n ref = renderProps.ref,\n threshold = renderProps.threshold,\n useCapture = renderProps.useCapture,\n useWindow = renderProps.useWindow,\n getScrollParent = renderProps.getScrollParent,\n props = _objectWithoutProperties(renderProps, ['children', 'element', 'hasMore', 'initialLoad', 'isReverse', 'loader', 'loadMore', 'pageStart', 'ref', 'threshold', 'useCapture', 'useWindow', 'getScrollParent']);\n\n props.ref = function (node) {\n _this2.scrollComponent = node;\n\n if (ref) {\n ref(node);\n }\n };\n\n var childrenArray = [children];\n\n if (hasMore) {\n if (loader) {\n isReverse ? childrenArray.unshift(loader) : childrenArray.push(loader);\n } else if (this.defaultLoader) {\n isReverse ? childrenArray.unshift(this.defaultLoader) : childrenArray.push(this.defaultLoader);\n }\n }\n\n return _react2.default.createElement(element, props, childrenArray);\n }\n }]);\n\n return InfiniteScroll;\n}(_react.Component);\n\nInfiniteScroll.propTypes = {\n children: _propTypes2.default.node.isRequired,\n element: _propTypes2.default.node,\n hasMore: _propTypes2.default.bool,\n initialLoad: _propTypes2.default.bool,\n isReverse: _propTypes2.default.bool,\n loader: _propTypes2.default.node,\n loadMore: _propTypes2.default.func.isRequired,\n pageStart: _propTypes2.default.number,\n ref: _propTypes2.default.func,\n getScrollParent: _propTypes2.default.func,\n threshold: _propTypes2.default.number,\n useCapture: _propTypes2.default.bool,\n useWindow: _propTypes2.default.bool\n};\nInfiniteScroll.defaultProps = {\n element: 'div',\n hasMore: false,\n initialLoad: true,\n pageStart: 0,\n ref: null,\n threshold: 250,\n useWindow: true,\n isReverse: false,\n useCapture: false,\n loader: null,\n getScrollParent: null\n};\nexports.default = InfiniteScroll;\nmodule.exports = exports['default'];","import React, { PureComponent } from \"react\"\nimport VList from '@/common/v-list-base'\nimport './my-courses.scss'\nimport { isToday, format } from \"date-fns\"\nimport { connect } from \"react-redux\"\nimport { fetchCoursesListIfNeeded, switchTab } from \"./actions\"\nimport InfiniteScroll from 'react-infinite-scroller'\nimport { debounce } from 'lodash'\nimport { Link } from 'react-router-dom'\n\n\nfunction getStudyTime(seconds) {\n return {\n hour: Math.floor(seconds / (60 * 60)),\n min: Math.floor(seconds / 60) % 60,\n sec: seconds % 60\n }\n}\n\nconst AddCourse = React.memo(({addCourseClick}) => (\n <div className='add-course'>\n <button className='add' onClick={addCourseClick}>添加课程+</button>\n </div>\n))\n\nfunction Record({record: {seconds, lesson_name}}) {\n let re = /第[\\s\\S]+?课/,\n result = ''\n\n if (lesson_name) {\n let matchResult = re.exec(lesson_name)\n result += (matchResult && matchResult[0]) ? matchResult[0] : ''\n }\n\n if (seconds) {\n let studyTime = getStudyTime(seconds)\n let hour = studyTime.hour ? String(studyTime.hour).padStart(2, '0') + ':' : '',\n min = studyTime.min ? String(studyTime.min).padStart(2, '0') + ':' : '',\n sec = studyTime.sec ? String(studyTime.sec).padStart(2, '0') : ''\n\n result += hour + min + sec\n }\n\n return (\n <span className={'record'}>\n {\n result.length ? `学习到${result}` : null\n }\n </span>\n )\n}\n\n\nconst Bottom = React.memo(({item}) => {\n if (item.ago || item.seconds) {\n let date = new Date(item.ago * 1000)\n let time = isToday(date) ? format(date, 'HH时mm分') : format(date, 'MM月DD日')\n return (\n <div className=\"des\">\n <span className='time'>{time}</span>\n <Record record={item}/>\n </div>\n )\n }\n return (\n <button className='start-learn'>开始学习</button>\n )\n})\n\nclass MyCourses extends PureComponent {\n\n list;\n\n handleClick = id => {\n this.props.history.push(`/play/video?id=${id}`)\n }\n addCourseClick = () => {\n this.props.history.push('/classify')\n }\n\n componentDidMount() {\n this.props.switchTab(false)\n this.props.fetchCoursesListIfNeeded();\n }\n\n componentWillUnmount() {\n this.props.switchTab(true);\n }\n\n loadFunc = debounce(() => {\n if (this.props.courseList.length % 10 === 0) {\n this.props.fetchCoursesListIfNeeded();\n }\n }, 200)\n\n render() {\n let list = this.props.courseList\n if (list && list.length !== 0) {\n return (\n <>\n <div className=\"my-course-uid\">\n {`加群请备注您的学号:${this.props.user.data.uid}`}\n </div>\n <InfiniteScroll\n pageStart={0}\n hasMore={true}\n loadMore={this.loadFunc}\n useWindow={false}\n >\n <ul ref={el => this.list = el}>\n {\n list.map((item, index) => {\n\n const Info = (\n <div className=\"info\">\n <p className='title'>{item.course_title}</p>\n <p className='contact'>QQ群:{item.course_qq}</p>\n <Bottom item={item}/>\n </div>\n )\n return (\n <VList img={item.image_name}\n handleClick={this.handleClick}\n {...item}\n key={index}\n info={Info}\n id={item['course_id']}\n />\n )\n })\n }\n </ul>\n </InfiniteScroll>\n {\n list.length % 10 !== 0 ?\n <AddCourse addCourseClick={this.addCourseClick}/>\n : null\n }\n </>\n )\n } else {\n return (\n <div className=\"empty\">\n <p><i className='iconfont iconfish'/></p>\n <p className='empty-prompt'>还是咸鱼一条,快去翻身~</p>\n <p>\n <Link className='select-course' to='/classify'>去选课</Link>\n </p>\n </div>\n )\n }\n\n }\n}\n\nexport default connect(\n state => ({\n courseList: state.myCourses.courseList,\n user: state.user\n }),\n {\n fetchCoursesListIfNeeded,\n switchTab\n })(MyCourses)","import React from 'react'\nimport './course-base.scss'\n\nconst Course = (props) => {\n return (\n <li className={`course-base-item ${props.className}`} onClick={props.handleClick.bind(this, props.id)}>\n {props.top}\n <img src={props.img} alt=\"\"/>\n <p className=\"course-title\">{props.title}</p>\n {props.bottom}\n </li>\n );\n};\n\nexport default Course;\n\n","import React, { PureComponent } from 'react'\nimport { Tag } from '../../../common'\nimport Course from '@/common/course-base'\nimport { http, api } from '@/utils'\nimport { Toast } from \"antd-mobile\";\nimport classnames from 'classnames'\nimport { isEmpty } from 'lodash'\n\n\nimport './free-courses.scss'\n\nconst Bottom = (props) => (\n <div className='bottom'>\n <Tag className={props.className}>{props.text}</Tag>\n <span>{props.audience}人观看</span>\n </div>\n)\n\nclass FreeCourse extends PureComponent {\n state = {\n courses: [],\n live: [],\n page: 1,\n num: 10\n }\n\n componentDidMount() {\n this.getFreeCourses()\n .then(res => {\n let data = res.data\n if (data.code == 200) {\n this.setState({\n courses: data.data,\n })\n } else {\n Toast.info(data.msg)\n }\n })\n this.getFreeLive()\n .then(res => {\n let data = res.data\n if (data.code == 200) {\n this.setState({\n live: isEmpty(data.data) ? [] : data.data\n })\n } else {\n Toast.info(data.msg, 2, null, false)\n }\n })\n }\n\n handleClick = id => {\n this.props.history.push(`/play?id=${id}`)\n }\n\n getFreeCourses = () => {\n return http.get(`${api.home}/m/free_course/${this.state.page}/${this.state.num}`)\n }\n\n getFreeLive = () => {\n return http.get(`${api.home}/m/live/free_list`)\n }\n\n toLive = live => {\n const {room_id, live_status} = live\n if (live_status) {\n window.location.assign(`http://www-test.julyedu.com/live/m_room/${room_id}`)\n } else {\n Toast.info('直播即将开始,敬请期待', 2, null, false)\n }\n }\n\n render() {\n return (\n <ul className='free-courses'>\n {\n this.state.live.map((item, index) => {\n const Bottom = (\n <div className=\"bottom\">\n <div className=\"animation-box\">\n {new Array(4).fill('a').map((item, index) => {\n return <i key={index} className={classnames('column', `column-${index + 1}`)}/>\n })}\n </div>\n <div className=\"time\">{`${item['live_start_time']}`}</div>\n </div>\n )\n\n const LiveStatus = (\n item['live_status'] ? <Tag className={'tag-soon top'}>即将开始</Tag> :\n <Tag className={'tag-playing top'}>正在直播</Tag>\n )\n return (\n <Course\n img={item['live_cover']}\n title={item['live_title']}\n top={LiveStatus}\n bottom={Bottom}\n key={item['live_id']}\n className={'live'}\n handleClick={this.toLive.bind(this, item)}\n id={index}\n />\n )\n })\n }\n {\n this.state.courses.map((item, index) => (\n <Course\n img={item.logo}\n title={item['video_course_name']}\n handleClick={this.handleClick}\n bottom={\n <Bottom audience={item['play_times']} className={'tag-category'} text={item.category}/>\n }\n id={item['v_course_id']}\n key={index}\n className={'course-item'}\n />\n ))\n }\n </ul>\n )\n }\n}\n\n\nexport default FreeCourse","import React, { Component } from 'react'\nimport './study.scss'\n\nimport { NavLink, Route, Switch, Redirect } from \"react-router-dom\"\nimport MyCourses from \"./myCourses\"\nimport FreeCourses from './freeCourses'\nimport WithTab from '@/HOCs/WithTab'\nimport WithFullSize from '@/HOCs/WithFullSize'\nimport { compose } from 'redux'\nimport PrivateRoute from '@/router/privateRoute'\n\n\nclass Study extends Component {\n\n state = {\n position: {\n\n }\n }\n\n list;\n\n storeScrollPosition(tab){\n\n }\n\n render() {\n const {match} = this.props;\n return (\n <section id='study'>\n <div className='tab'>\n <div>\n <NavLink to={`${match.url}/my-course`}\n replace\n activeClassName='active'\n >我的课程</NavLink>\n </div>\n <div>\n <NavLink to={`${match.url}/free-course`}\n replace\n activeClassName='active'\n >免费课程</NavLink>\n </div>\n </div>\n <div className=\"study-container\" ref={el => this.list = el}>\n <Switch>\n <Redirect exact from='/study' to='study/my-course'/>\n <Route path={`${this.props.match.path}/my-course`} component={MyCourses}/>\n {/*<PrivateRoute path={`${this.props.match.path}/my-course`} component={MyCourses}/>*/}\n <Route path={`${this.props.match.path}/free-course`} component={FreeCourses}/>\n {/*<Route path={`${this.props.match.path}/my-course`} render={props => {\n <MyCourses storeScrollPosition={this.storeScrollPosition}/>\n }}/>*/}\n </Switch>\n </div>\n </section>\n )\n }\n\n}\n\nexport default compose(\n WithFullSize,\n WithTab\n)(Study)"],"sourceRoot":""}
\ No newline at end of file \ No newline at end of file
(window.webpackJsonp=window.webpackJsonp||[]).push([[7],{763:function(e,a,t){},769:function(e,a,t){"use strict";t.r(a);t(62);var n=t(33),c=t.n(n),s=(t(48),t(17)),r=t.n(s),i=(t(61),t(21)),o=t.n(i),l=(t(26),t(2)),m=t.n(l),u=t(19),d=t(4),p=t(5),E=t(7),g=t(6),N=t(8),_=t(0),f=t.n(_),v=(t(763),t(18)),h=t(1),b=(t(20),t(13)),w=function(e){function a(e){var t;return Object(d.a)(this,a),(t=Object(E.a)(this,Object(g.a)(a).call(this,e))).invitedFriends=function(){var e=t.state,a=e.pdd_price,n=e.number,c=e.data;if(h.b.isWeixin){var s=t.state.share;t.setState({share:!s});var r={title:"\u3010\u4ec5\u5269".concat(n,"\u4e2a\u540d\u989d\u3011\u6211").concat(a,"\u5143\u62fc\u4e86\u300a").concat(c.course_title,"\u300b"),desc:c.course_title,link:location.origin+"/detail??id=".concat(c.course_id),imgUrl:c.image_name};h.d.post("".concat(h.a["pay-api"],"/m/sale/signature")).then(function(e){var a=e.data,t=a.nonce_str,n=a.signature,c=a.timestamp;wx.config({debug:!1,appId:"wx23dac6775ac82877",timestamp:c,nonceStr:t,signature:n,jsApiList:["hideMenuItems","showMenuItems","updateAppMessageShareData","updateTimelineShareData","onMenuShareWeibo","onMenuShareAppMessage"]})}),wx.ready(function(){wx.hideAllNonBaseMenuItem(),wx.showMenuItems({menuList:["menuItem:share:appMessage","menuItem:share:timeline"]}),wx.updateAppMessageShareData(Object(u.a)({},r,{success:function(){}})),wx.updateTimelineShareData(Object(u.a)({},r,{success:function(){}}))})}else m.a.info("\u8bf7\u5728\u5fae\u4fe1\u4e2d\u4f7f\u7528\u5206\u4eab\u529f\u80fd\uff01",2)},t.state={data:{},share:!1,pdd_price:0,groupon_member:[],person_num:0,is_success:!1,userInfo:{},number:0},t}return Object(N.a)(a,e),Object(p.a)(a,[{key:"componentDidMount",value:function(){var e=this;Promise.all([h.d.get("".concat(h.a["pay-api"],"/pdd/goupon_pay_page/15610158875449306780")),h.d.get("".concat(h.a.home,"/m/user_info"))]).then(function(a){console.log(a);var t=a[0],n=a[1];e.setState({data:t.data.data.course_info,pdd_price:t.data.data.pdd_price,groupon_member:t.data.data.groupon_member,is_success:t.data.data.is_success,person_num:t.data.data.person_num,course_list:t.data.data.course_list,userInfo:n,number:t.data.data.number})}),h.d.post("".concat(h.a["pay-api"],"/m/sale/signature")).then(function(e){console.log(e)})}},{key:"render",value:function(){var e=this.state,a=e.data,t=a.course_id,n=a.course_title,c=a.simpledescription,s=a.price0,r=a.price1,i=(e.pdd_price,e.is_success),l=(e.person_num,e.groupon_member,e.course_list),m=f.a.createElement("div",{className:"info"},f.a.createElement("p",{className:"title"},f.a.createElement(b.b,{to:"/detail?id=".concat(t)},n)),f.a.createElement("p",{className:"contact text-overflow-2"},c),f.a.createElement("div",{className:"des"},f.a.createElement("p",{className:"course-price"},f.a.createElement("span",{className:"new"},"\xa5",r),f.a.createElement("span",{className:"old"},"\xa5",s))));return f.a.createElement("div",{className:"to-group-box"},f.a.createElement(v.e,{title:"\u62fc\u56e2",arrow:!0,cart:!1}),!i&&f.a.createElement(v.h,{img:this.state.data.image_name,id:this.state.data.course_id,info:m}),f.a.createElement(y,{data:this.state,invitedFriends:this.invitedFriends}),f.a.createElement(o.a,null),f.a.createElement("div",{className:"group-course"},f.a.createElement("div",{className:"top-title"},f.a.createElement("span",null,"\u672c\u5468\u7279\u60e0"),f.a.createElement(b.b,{to:"/preferential",className:"more"},"\u66f4\u591a",f.a.createElement("i",{className:"iconfont iconiconfront-70"}))),l&&l.length>0&&l[0].course&&l[0].course.length>0&&l[0].course.slice(0,4).map(function(e){var a=f.a.createElement("div",{className:"info"},f.a.createElement("p",{className:"title"},f.a.createElement(b.b,{to:"/detail?id=".concat(e.course_id)},e.course_title)),f.a.createElement("p",{className:"contact text-overflow-2"},e.simpledescription),f.a.createElement("div",{className:"des"},f.a.createElement("p",{className:"course-price"},f.a.createElement("span",{className:"new"},"\xa5",e.price1),f.a.createElement("span",{className:"old"},"\xa5",e.price0))));return f.a.createElement(v.h,{img:e.image_name,key:e.uid,id:e.course_id,info:a})})))}}]),a}(_.Component);function y(e){for(var a,t,n,s,i=e.data,o=i.pdd_price,l=i.data,m=i.groupon_member,u=i.is_success,d=i.person_num,p=i.userInfo,E=i.share,g=i.number,N=[],_=g;0!=_;)N.push(_),_--;if(s=f.a.createElement("div",{className:"group-user-list"},f.a.createElement(r.a,{justify:"center",className:"imgList"},m.map(function(e){return f.a.createElement("div",{className:"imgContainer",key:Math.random()},f.a.createElement("img",{className:"imgname",src:e.avatar,alt:""}),1===e.user_type?f.a.createElement("div",{className:"leaderFlag"},f.a.createElement("span",null,"\u56e2\u957f")):null)}),N.map(function(e){return f.a.createElement("div",{className:"imgContainer",key:Math.random()},f.a.createElement("div",{className:"imgname"},f.a.createElement("i",{className:"iconfont iconwode-xianxing no-body"})))}))),m&&m.length>0){var v="";m.map(function(e){1===e.user_type&&(v="".concat(e.uid))}),v===p.data.data.uid?(a=f.a.createElement("p",{className:"tip"},"\u62fc\u56e2\u7701\uffe5".concat(o,"\u5143")),t=f.a.createElement("span",{className:"group-btn",onClick:e.invitedFriends},"\u9080\u8bf7\u597d\u53cb\u53c2\u56e2 23\uff1a23\uff1a23 \u540e\u7ed3\u675f"),n=f.a.createElement("p",{className:"dec"},"\u5206\u4eab\u52303\u4e2a\u7fa4\u540e\uff0c\u6210\u56e2\u7387\u9ad8\u8fbe98%")):(a=f.a.createElement("p",{className:"tip"},"\u62fc\u56e2\u7701\uffe5".concat(o,"\u5143")),t=f.a.createElement(b.b,{to:"/order?id=".concat(l.course_id),className:"group-btn"},"\u4e00\u952e\u53c2\u56e2"))}return 1===u&&(a=f.a.createElement("p",{className:"success"},"\u62fc\u56e2\u6210\u529f"),t=f.a.createElement(b.b,{to:"/play",className:"tostudy"},"\u53bb\u5b66\u4e60")),f.a.createElement("div",{className:"gorup-content"},E?f.a.createElement("div",{className:"groupSuccessMbc",onClick:e.invitedFriends},f.a.createElement("div",{className:"tipContent"},"\u8fd8\u5dee".concat(g,"\u4eba\uff0c\u5206\u4eab\u52303\u4e2a\u7fa4\uff0c\u6210\u56e2\u7387\u9ad8\u8fbe98%")),f.a.createElement("div",{className:"tipArrow"},f.a.createElement("i",{className:"iconfont iconyindao"}))):null,a,f.a.createElement(c.a,null,s),f.a.createElement(c.a,null,t),n,!u&&f.a.createElement("div",{className:"group-dec"},f.a.createElement("span",null,f.a.createElement("i",{className:"iconfont iconiconfront-1"}),"\xb7\u597d\u53cb\u53c2\u56e2 \xb7\u4eba\u6ee1\u6210\u4ea4 \xb7\u4eba\u4e0d\u6ee1\u9000\u6b3e"),f.a.createElement("span",{className:"allNum"},"\u7d2f\u8ba1".concat(d,"\u4eba\u6210\u56e2"))))}a.default=w}}]); (window.webpackJsonp=window.webpackJsonp||[]).push([[7],{764:function(e,a,t){},770:function(e,a,t){"use strict";t.r(a);t(62);var n=t(33),c=t.n(n),s=(t(47),t(17)),r=t.n(s),i=(t(61),t(21)),o=t.n(i),l=(t(26),t(2)),m=t.n(l),u=t(19),d=t(4),p=t(5),E=t(8),g=t(6),N=t(7),_=t(0),f=t.n(_),v=(t(764),t(18)),h=t(1),b=(t(20),t(13)),w=function(e){function a(e){var t;return Object(d.a)(this,a),(t=Object(E.a)(this,Object(g.a)(a).call(this,e))).invitedFriends=function(){var e=t.state,a=e.pdd_price,n=e.number,c=e.data;if(h.b.isWeixin){var s=t.state.share;t.setState({share:!s});var r={title:"\u3010\u4ec5\u5269".concat(n,"\u4e2a\u540d\u989d\u3011\u6211").concat(a,"\u5143\u62fc\u4e86\u300a").concat(c.course_title,"\u300b"),desc:c.course_title,link:location.origin+"/detail??id=".concat(c.course_id),imgUrl:c.image_name};h.d.post("".concat(h.a["pay-api"],"/m/sale/signature")).then(function(e){var a=e.data,t=a.nonce_str,n=a.signature,c=a.timestamp;wx.config({debug:!1,appId:"wx23dac6775ac82877",timestamp:c,nonceStr:t,signature:n,jsApiList:["hideMenuItems","showMenuItems","updateAppMessageShareData","updateTimelineShareData","onMenuShareWeibo","onMenuShareAppMessage"]})}),wx.ready(function(){wx.hideAllNonBaseMenuItem(),wx.showMenuItems({menuList:["menuItem:share:appMessage","menuItem:share:timeline"]}),wx.updateAppMessageShareData(Object(u.a)({},r,{success:function(){}})),wx.updateTimelineShareData(Object(u.a)({},r,{success:function(){}}))})}else m.a.info("\u8bf7\u5728\u5fae\u4fe1\u4e2d\u4f7f\u7528\u5206\u4eab\u529f\u80fd\uff01",2)},t.state={data:{},share:!1,pdd_price:0,groupon_member:[],person_num:0,is_success:!1,userInfo:{},number:0},t}return Object(N.a)(a,e),Object(p.a)(a,[{key:"componentDidMount",value:function(){var e=this;Promise.all([h.d.get("".concat(h.a["pay-api"],"/pdd/goupon_pay_page/15610158875449306780")),h.d.get("".concat(h.a.home,"/m/user_info"))]).then(function(a){console.log(a);var t=a[0],n=a[1];e.setState({data:t.data.data.course_info,pdd_price:t.data.data.pdd_price,groupon_member:t.data.data.groupon_member,is_success:t.data.data.is_success,person_num:t.data.data.person_num,course_list:t.data.data.course_list,userInfo:n,number:t.data.data.number})}),h.d.post("".concat(h.a["pay-api"],"/m/sale/signature")).then(function(e){console.log(e)})}},{key:"render",value:function(){var e=this.state,a=e.data,t=a.course_id,n=a.course_title,c=a.simpledescription,s=a.price0,r=a.price1,i=(e.pdd_price,e.is_success),l=(e.person_num,e.groupon_member,e.course_list),m=f.a.createElement("div",{className:"info"},f.a.createElement("p",{className:"title"},f.a.createElement(b.b,{to:"/detail?id=".concat(t)},n)),f.a.createElement("p",{className:"contact text-overflow-2"},c),f.a.createElement("div",{className:"des"},f.a.createElement("p",{className:"course-price"},f.a.createElement("span",{className:"new"},"\xa5",r),f.a.createElement("span",{className:"old"},"\xa5",s))));return f.a.createElement("div",{className:"to-group-box"},f.a.createElement(v.e,{title:"\u62fc\u56e2",arrow:!0,cart:!1}),!i&&f.a.createElement(v.i,{img:this.state.data.image_name,id:this.state.data.course_id,info:m}),f.a.createElement(y,{data:this.state,invitedFriends:this.invitedFriends}),f.a.createElement(o.a,null),f.a.createElement("div",{className:"group-course"},f.a.createElement("div",{className:"top-title"},f.a.createElement("span",null,"\u672c\u5468\u7279\u60e0"),f.a.createElement(b.b,{to:"/preferential",className:"more"},"\u66f4\u591a",f.a.createElement("i",{className:"iconfont iconiconfront-70"}))),l&&l.length>0&&l[0].course&&l[0].course.length>0&&l[0].course.slice(0,4).map(function(e){var a=f.a.createElement("div",{className:"info"},f.a.createElement("p",{className:"title"},f.a.createElement(b.b,{to:"/detail?id=".concat(e.course_id)},e.course_title)),f.a.createElement("p",{className:"contact text-overflow-2"},e.simpledescription),f.a.createElement("div",{className:"des"},f.a.createElement("p",{className:"course-price"},f.a.createElement("span",{className:"new"},"\xa5",e.price1),f.a.createElement("span",{className:"old"},"\xa5",e.price0))));return f.a.createElement(v.i,{img:e.image_name,key:e.uid,id:e.course_id,info:a})})))}}]),a}(_.Component);function y(e){for(var a,t,n,s,i=e.data,o=i.pdd_price,l=i.data,m=i.groupon_member,u=i.is_success,d=i.person_num,p=i.userInfo,E=i.share,g=i.number,N=[],_=g;0!=_;)N.push(_),_--;if(s=f.a.createElement("div",{className:"group-user-list"},f.a.createElement(r.a,{justify:"center",className:"imgList"},m.map(function(e){return f.a.createElement("div",{className:"imgContainer",key:Math.random()},f.a.createElement("img",{className:"imgname",src:e.avatar,alt:""}),1===e.user_type?f.a.createElement("div",{className:"leaderFlag"},f.a.createElement("span",null,"\u56e2\u957f")):null)}),N.map(function(e){return f.a.createElement("div",{className:"imgContainer",key:Math.random()},f.a.createElement("div",{className:"imgname"},f.a.createElement("i",{className:"iconfont iconwode-xianxing no-body"})))}))),m&&m.length>0){var v="";m.map(function(e){1===e.user_type&&(v="".concat(e.uid))}),v===p.data.data.uid?(a=f.a.createElement("p",{className:"tip"},"\u62fc\u56e2\u7701\uffe5".concat(o,"\u5143")),t=f.a.createElement("span",{className:"group-btn",onClick:e.invitedFriends},"\u9080\u8bf7\u597d\u53cb\u53c2\u56e2 23\uff1a23\uff1a23 \u540e\u7ed3\u675f"),n=f.a.createElement("p",{className:"dec"},"\u5206\u4eab\u52303\u4e2a\u7fa4\u540e\uff0c\u6210\u56e2\u7387\u9ad8\u8fbe98%")):(a=f.a.createElement("p",{className:"tip"},"\u62fc\u56e2\u7701\uffe5".concat(o,"\u5143")),t=f.a.createElement(b.b,{to:"/order?id=".concat(l.course_id),className:"group-btn"},"\u4e00\u952e\u53c2\u56e2"))}return 1===u&&(a=f.a.createElement("p",{className:"success"},"\u62fc\u56e2\u6210\u529f"),t=f.a.createElement(b.b,{to:"/play",className:"tostudy"},"\u53bb\u5b66\u4e60")),f.a.createElement("div",{className:"gorup-content"},E?f.a.createElement("div",{className:"groupSuccessMbc",onClick:e.invitedFriends},f.a.createElement("div",{className:"tipContent"},"\u8fd8\u5dee".concat(g,"\u4eba\uff0c\u5206\u4eab\u52303\u4e2a\u7fa4\uff0c\u6210\u56e2\u7387\u9ad8\u8fbe98%")),f.a.createElement("div",{className:"tipArrow"},f.a.createElement("i",{className:"iconfont iconyindao"}))):null,a,f.a.createElement(c.a,null,s),f.a.createElement(c.a,null,t),n,!u&&f.a.createElement("div",{className:"group-dec"},f.a.createElement("span",null,f.a.createElement("i",{className:"iconfont iconiconfront-1"}),"\xb7\u597d\u53cb\u53c2\u56e2 \xb7\u4eba\u6ee1\u6210\u4ea4 \xb7\u4eba\u4e0d\u6ee1\u9000\u6b3e"),f.a.createElement("span",{className:"allNum"},"\u7d2f\u8ba1".concat(d,"\u4eba\u6210\u56e2"))))}a.default=w}}]);
//# sourceMappingURL=togroup.0bcd07e3.chunk.js.map //# sourceMappingURL=togroup.d6b233f8.chunk.js.map
\ No newline at end of file \ No newline at end of file
{"version":3,"sources":["components/detail/group/togroup.js"],"names":["ToGroup","props","_this","Object","_Users_zhanghaozhe_server_mr_julyedu_node_modules_babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_9__","this","_Users_zhanghaozhe_server_mr_julyedu_node_modules_babel_runtime_helpers_esm_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_11__","_Users_zhanghaozhe_server_mr_julyedu_node_modules_babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_12__","call","invitedFriends","_this$state","state","pdd_price","number","data","browser","isWeixin","share","setState","shareData","title","concat","course_title","desc","link","location","origin","course_id","imgUrl","image_name","http","post","api","then","res","_res$data","nonce_str","signature","timestamp","wx","config","debug","appId","nonceStr","jsApiList","ready","hideAllNonBaseMenuItem","showMenuItems","menuList","updateAppMessageShareData","_Users_zhanghaozhe_server_mr_julyedu_node_modules_babel_runtime_helpers_esm_objectSpread__WEBPACK_IMPORTED_MODULE_8__","success","updateTimelineShareData","antd_mobile_lib_toast__WEBPACK_IMPORTED_MODULE_7___default","a","info","groupon_member","person_num","is_success","userInfo","_this2","Promise","all","get","home","resultList","console","log","course_info","course_list","_this$state2","_this$state2$data","simpledescription","price0","price1","Info","react__WEBPACK_IMPORTED_MODULE_14___default","createElement","className","react_router_dom__WEBPACK_IMPORTED_MODULE_19__","to","_common__WEBPACK_IMPORTED_MODULE_16__","arrow","cart","img","id","GorupContent","antd_mobile_lib_white_space__WEBPACK_IMPORTED_MODULE_5___default","length","course","slice","map","item","weekInfo","key","uid","Component","tip","btn","dec","groupTip","_props$data","ary","num","push","antd_mobile_lib_flex__WEBPACK_IMPORTED_MODULE_3___default","justify","Math","random","src","avatar","alt","user_type","onClick","antd_mobile_lib_wing_blank__WEBPACK_IMPORTED_MODULE_1___default"],"mappings":"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","file":"static/js/togroup.0bcd07e3.chunk.js","sourcesContent":["import React, { Component } from 'react'\nimport './togroup.scss'\nimport { HeaderBar, VList } from '../../../common'\n\nimport { api, getParam, http, browser} from \"@/utils\";\nimport { connect } from \"react-redux\"\nimport { Link } from \"react-router-dom\"\nimport { WingBlank, WhiteSpace, Flex, Toast } from 'antd-mobile'\n\n\nclass ToGroup extends Component {\n constructor(props) {\n super(props)\n this.state = {\n data: {},\n share: false,\n pdd_price: 0,\n groupon_member: [],\n person_num: 0, // 共多少人成团\n is_success: false, // 是否拼团成功\n userInfo: {},\n number: 0, // 差几人成团\n }\n }\n\n invitedFriends = () => {\n const {pdd_price, number, data} = this.state;\n if(browser.isWeixin) {\n let share = this.state.share;\n this.setState({\n share: !share,\n });\n let shareData = {\n title: `【仅剩${number}个名额】我${pdd_price}元拼了《${data.course_title}》`,\n desc: data.course_title, // 分享描述\n link: location.origin + `/detail??id=${data.course_id}`, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致\n imgUrl: data.image_name, // 分享图标\n };\n http.post(`${api['pay-api']}/m/sale/signature`).then(res => {\n const {nonce_str, signature, timestamp} = res.data;\n wx.config({\n \"debug\": false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。\n \"appId\": 'wx23dac6775ac82877', // 必填,公众号的唯一标识\n \"timestamp\": timestamp, // 必填,生成签名的时间戳\n \"nonceStr\": nonce_str, // 必填,生成签名的随机串\n \"signature\": signature, // 必填,签名\n jsApiList: [\n 'hideMenuItems',\n 'showMenuItems',\n 'updateAppMessageShareData',\n 'updateTimelineShareData',\n 'onMenuShareWeibo',\n 'onMenuShareAppMessage',\n ], // 必填,需要使用的JS接口列表\n });\n });\n wx.ready(function () { //需在用户可能点击分享按钮前就先调用\n wx.hideAllNonBaseMenuItem();\n wx.showMenuItems({\n menuList: ['menuItem:share:appMessage' , 'menuItem:share:timeline'] // 要显示的菜单项,所有menu项见附录3\n });\n wx.updateAppMessageShareData({ \n ...shareData,\n success: function () {\n // 设置成功\n }\n })\n wx.updateTimelineShareData({\n ...shareData,\n success: function () {\n // 设置成功\n }\n })\n });\n }else{\n Toast.info('请在微信中使用分享功能!', 2);\n }\n }\n\n componentDidMount() {\n Promise.all([http.get(`${api['pay-api']}/pdd/goupon_pay_page/15610158875449306780`), http.get(`${api.home}/m/user_info`)]).then(resultList => {\n console.log(resultList);\n let res = resultList[0],\n userInfo = resultList[1];\n\n this.setState({\n data: res.data.data.course_info,\n pdd_price: res.data.data.pdd_price,\n groupon_member: res.data.data.groupon_member,\n is_success: res.data.data.is_success,\n person_num: res.data.data.person_num,\n course_list: res.data.data.course_list,\n userInfo,\n number: res.data.data.number,\n });\n });\n\n http.post(`${api['pay-api']}/m/sale/signature`).then(res => {\n console.log(res);\n });\n }\n\n render() {\n const { data: { course_id, course_title, simpledescription, price0, price1 }, pdd_price, is_success, person_num, groupon_member, course_list } = this.state;\n const Info = (\n <div className=\"info\">\n <p className='title'>\n <Link to={`/detail?id=${course_id}`}>\n {course_title}\n </Link>\n </p>\n <p className='contact text-overflow-2'>{simpledescription}</p>\n <div className='des'>\n <p className=\"course-price\">\n <span className=\"new\">¥{price1}</span>\n <span className=\"old\">¥{price0}</span>\n </p>\n </div>\n </div>\n )\n return (\n <div className='to-group-box'>\n <HeaderBar title='拼团' arrow={true} cart={false}></HeaderBar>\n {\n !is_success && <VList img={this.state.data.image_name} id={this.state.data.course_id} info={Info}></VList>\n }\n\n <GorupContent data={this.state} invitedFriends={this.invitedFriends} />\n\n <WhiteSpace></WhiteSpace>\n <div className=\"group-course\">\n <div className=\"top-title\">\n <span>本周特惠</span>\n <Link to={`/preferential`} className='more'>更多<i className='iconfont iconiconfront-70'></i></Link>\n </div>\n {\n (course_list && course_list.length > 0) && (course_list[0].course && course_list[0].course.length > 0) && course_list[0].course.slice(0, 4).map(item => {\n\n let weekInfo = <div className=\"info\">\n <p className='title'>\n <Link to={`/detail?id=${item.course_id}`}>\n {item.course_title}\n </Link>\n </p>\n <p className='contact text-overflow-2'>{item.simpledescription}</p>\n <div className='des'>\n <p className=\"course-price\">\n <span className=\"new\">¥{item.price1}</span>\n <span className=\"old\">¥{item.price0}</span>\n </p>\n </div>\n </div>\n return (<VList img={item.image_name} key={item.uid} id={item.course_id} info={weekInfo}></VList>)\n })\n }\n\n </div>\n </div>\n )\n }\n}\n\nfunction GorupContent(props) {\n let tip, btn, dec, groupTip, shareTip, groupSuccessMbc;\n const { pdd_price, data, groupon_member, is_success, person_num, userInfo, share, number } = props.data;\n let ary=[],num = number;\n while(num != 0) {\n ary.push(num);\n num--;\n }\n groupTip = (<div className='group-user-list'>\n <Flex justify='center' className='imgList'>\n {\n groupon_member.map(item => {\n return (\n <div className='imgContainer' key={Math.random()}>\n <img className='imgname' src={item.avatar} alt='' />\n {\n item.user_type === 1 ? (\n <div className='leaderFlag'>\n <span>团长</span>\n </div>\n ) : null\n }\n </div>);\n })\n }\n {\n ary.map(item => {\n return (<div className='imgContainer' key={Math.random()}>\n <div className='imgname'>\n <i className='iconfont iconwode-xianxing no-body'></i>\n </div>\n </div>)\n })\n }\n </Flex>\n </div>);\n\n if (groupon_member && groupon_member.length > 0) {\n let uid = '';\n groupon_member.map(item=>{\n if(item.user_type === 1) {\n uid = `${item.uid}`;\n }\n })\n\n if(uid === userInfo.data.data.uid) {\n tip = <p className='tip'>{`拼团省¥${pdd_price}元`}</p>\n btn = <span className='group-btn' onClick={props.invitedFriends}>邀请好友参团 23:23:23 后结束</span>\n dec = <p className='dec'>分享到3个群后,成团率高达98%</p>\n } else {\n tip = <p className='tip'>{`拼团省¥${pdd_price}元`}</p>\n btn = <Link to={`/order?id=${data.course_id}`} className='group-btn'>一键参团</Link>\n }\n }\n\n if (is_success === 1) {\n tip = <p className='success'>拼团成功</p>\n btn = <Link to={`/play`} className='tostudy'>去学习</Link>\n }\n return (\n <div className='gorup-content'>\n {\n share ? (\n <div className='groupSuccessMbc' onClick={props.invitedFriends}>\n <div className='tipContent'>\n \n {`还差${number}人,分享到3个群,成团率高达98%`}\n </div>\n <div className='tipArrow'>\n <i className='iconfont iconyindao'></i>\n </div>\n </div>\n ) : null\n }\n\n {tip}\n <WingBlank>\n {groupTip}\n </WingBlank>\n <WingBlank>\n {btn}\n </WingBlank>\n {dec}\n {\n !is_success &&\n <div className=\"group-dec\">\n <span>\n <i className='iconfont iconiconfront-1'></i>\n ·好友参团 ·人满成交 ·人不满退款\n </span>\n <span className='allNum'>{`累计${person_num}人成团`}</span>\n </div>\n }\n </div>\n )\n}\n\nexport default ToGroup\n"],"sourceRoot":""} {"version":3,"sources":["components/detail/group/togroup.js"],"names":["ToGroup","props","_this","Object","_Users_zhanghaozhe_server_mr_julyedu_node_modules_babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_9__","this","_Users_zhanghaozhe_server_mr_julyedu_node_modules_babel_runtime_helpers_esm_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_11__","_Users_zhanghaozhe_server_mr_julyedu_node_modules_babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_12__","call","invitedFriends","_this$state","state","pdd_price","number","data","browser","isWeixin","share","setState","shareData","title","concat","course_title","desc","link","location","origin","course_id","imgUrl","image_name","http","post","api","then","res","_res$data","nonce_str","signature","timestamp","wx","config","debug","appId","nonceStr","jsApiList","ready","hideAllNonBaseMenuItem","showMenuItems","menuList","updateAppMessageShareData","_Users_zhanghaozhe_server_mr_julyedu_node_modules_babel_runtime_helpers_esm_objectSpread__WEBPACK_IMPORTED_MODULE_8__","success","updateTimelineShareData","antd_mobile_lib_toast__WEBPACK_IMPORTED_MODULE_7___default","a","info","groupon_member","person_num","is_success","userInfo","_this2","Promise","all","get","home","resultList","console","log","course_info","course_list","_this$state2","_this$state2$data","simpledescription","price0","price1","Info","react__WEBPACK_IMPORTED_MODULE_14___default","createElement","className","react_router_dom__WEBPACK_IMPORTED_MODULE_19__","to","_common__WEBPACK_IMPORTED_MODULE_16__","arrow","cart","img","id","GorupContent","antd_mobile_lib_white_space__WEBPACK_IMPORTED_MODULE_5___default","length","course","slice","map","item","weekInfo","key","uid","Component","tip","btn","dec","groupTip","_props$data","ary","num","push","antd_mobile_lib_flex__WEBPACK_IMPORTED_MODULE_3___default","justify","Math","random","src","avatar","alt","user_type","onClick","antd_mobile_lib_wing_blank__WEBPACK_IMPORTED_MODULE_1___default"],"mappings":"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","file":"static/js/togroup.d6b233f8.chunk.js","sourcesContent":["import React, { Component } from 'react'\nimport './togroup.scss'\nimport { HeaderBar, VList } from '../../../common'\n\nimport { api, getParam, http, browser} from \"@/utils\";\nimport { connect } from \"react-redux\"\nimport { Link } from \"react-router-dom\"\nimport { WingBlank, WhiteSpace, Flex, Toast } from 'antd-mobile'\n\n\nclass ToGroup extends Component {\n constructor(props) {\n super(props)\n this.state = {\n data: {},\n share: false,\n pdd_price: 0,\n groupon_member: [],\n person_num: 0, // 共多少人成团\n is_success: false, // 是否拼团成功\n userInfo: {},\n number: 0, // 差几人成团\n }\n }\n\n invitedFriends = () => {\n const {pdd_price, number, data} = this.state;\n if(browser.isWeixin) {\n let share = this.state.share;\n this.setState({\n share: !share,\n });\n let shareData = {\n title: `【仅剩${number}个名额】我${pdd_price}元拼了《${data.course_title}》`,\n desc: data.course_title, // 分享描述\n link: location.origin + `/detail??id=${data.course_id}`, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致\n imgUrl: data.image_name, // 分享图标\n };\n http.post(`${api['pay-api']}/m/sale/signature`).then(res => {\n const {nonce_str, signature, timestamp} = res.data;\n wx.config({\n \"debug\": false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。\n \"appId\": 'wx23dac6775ac82877', // 必填,公众号的唯一标识\n \"timestamp\": timestamp, // 必填,生成签名的时间戳\n \"nonceStr\": nonce_str, // 必填,生成签名的随机串\n \"signature\": signature, // 必填,签名\n jsApiList: [\n 'hideMenuItems',\n 'showMenuItems',\n 'updateAppMessageShareData',\n 'updateTimelineShareData',\n 'onMenuShareWeibo',\n 'onMenuShareAppMessage',\n ], // 必填,需要使用的JS接口列表\n });\n });\n wx.ready(function () { //需在用户可能点击分享按钮前就先调用\n wx.hideAllNonBaseMenuItem();\n wx.showMenuItems({\n menuList: ['menuItem:share:appMessage' , 'menuItem:share:timeline'] // 要显示的菜单项,所有menu项见附录3\n });\n wx.updateAppMessageShareData({ \n ...shareData,\n success: function () {\n // 设置成功\n }\n })\n wx.updateTimelineShareData({\n ...shareData,\n success: function () {\n // 设置成功\n }\n })\n });\n }else{\n Toast.info('请在微信中使用分享功能!', 2);\n }\n }\n\n componentDidMount() {\n Promise.all([http.get(`${api['pay-api']}/pdd/goupon_pay_page/15610158875449306780`), http.get(`${api.home}/m/user_info`)]).then(resultList => {\n console.log(resultList);\n let res = resultList[0],\n userInfo = resultList[1];\n\n this.setState({\n data: res.data.data.course_info,\n pdd_price: res.data.data.pdd_price,\n groupon_member: res.data.data.groupon_member,\n is_success: res.data.data.is_success,\n person_num: res.data.data.person_num,\n course_list: res.data.data.course_list,\n userInfo,\n number: res.data.data.number,\n });\n });\n\n http.post(`${api['pay-api']}/m/sale/signature`).then(res => {\n console.log(res);\n });\n }\n\n render() {\n const { data: { course_id, course_title, simpledescription, price0, price1 }, pdd_price, is_success, person_num, groupon_member, course_list } = this.state;\n const Info = (\n <div className=\"info\">\n <p className='title'>\n <Link to={`/detail?id=${course_id}`}>\n {course_title}\n </Link>\n </p>\n <p className='contact text-overflow-2'>{simpledescription}</p>\n <div className='des'>\n <p className=\"course-price\">\n <span className=\"new\">¥{price1}</span>\n <span className=\"old\">¥{price0}</span>\n </p>\n </div>\n </div>\n )\n return (\n <div className='to-group-box'>\n <HeaderBar title='拼团' arrow={true} cart={false}></HeaderBar>\n {\n !is_success && <VList img={this.state.data.image_name} id={this.state.data.course_id} info={Info}></VList>\n }\n\n <GorupContent data={this.state} invitedFriends={this.invitedFriends} />\n\n <WhiteSpace></WhiteSpace>\n <div className=\"group-course\">\n <div className=\"top-title\">\n <span>本周特惠</span>\n <Link to={`/preferential`} className='more'>更多<i className='iconfont iconiconfront-70'></i></Link>\n </div>\n {\n (course_list && course_list.length > 0) && (course_list[0].course && course_list[0].course.length > 0) && course_list[0].course.slice(0, 4).map(item => {\n\n let weekInfo = <div className=\"info\">\n <p className='title'>\n <Link to={`/detail?id=${item.course_id}`}>\n {item.course_title}\n </Link>\n </p>\n <p className='contact text-overflow-2'>{item.simpledescription}</p>\n <div className='des'>\n <p className=\"course-price\">\n <span className=\"new\">¥{item.price1}</span>\n <span className=\"old\">¥{item.price0}</span>\n </p>\n </div>\n </div>\n return (<VList img={item.image_name} key={item.uid} id={item.course_id} info={weekInfo}></VList>)\n })\n }\n\n </div>\n </div>\n )\n }\n}\n\nfunction GorupContent(props) {\n let tip, btn, dec, groupTip, shareTip, groupSuccessMbc;\n const { pdd_price, data, groupon_member, is_success, person_num, userInfo, share, number } = props.data;\n let ary=[],num = number;\n while(num != 0) {\n ary.push(num);\n num--;\n }\n groupTip = (<div className='group-user-list'>\n <Flex justify='center' className='imgList'>\n {\n groupon_member.map(item => {\n return (\n <div className='imgContainer' key={Math.random()}>\n <img className='imgname' src={item.avatar} alt='' />\n {\n item.user_type === 1 ? (\n <div className='leaderFlag'>\n <span>团长</span>\n </div>\n ) : null\n }\n </div>);\n })\n }\n {\n ary.map(item => {\n return (<div className='imgContainer' key={Math.random()}>\n <div className='imgname'>\n <i className='iconfont iconwode-xianxing no-body'></i>\n </div>\n </div>)\n })\n }\n </Flex>\n </div>);\n\n if (groupon_member && groupon_member.length > 0) {\n let uid = '';\n groupon_member.map(item=>{\n if(item.user_type === 1) {\n uid = `${item.uid}`;\n }\n })\n\n if(uid === userInfo.data.data.uid) {\n tip = <p className='tip'>{`拼团省¥${pdd_price}元`}</p>\n btn = <span className='group-btn' onClick={props.invitedFriends}>邀请好友参团 23:23:23 后结束</span>\n dec = <p className='dec'>分享到3个群后,成团率高达98%</p>\n } else {\n tip = <p className='tip'>{`拼团省¥${pdd_price}元`}</p>\n btn = <Link to={`/order?id=${data.course_id}`} className='group-btn'>一键参团</Link>\n }\n }\n\n if (is_success === 1) {\n tip = <p className='success'>拼团成功</p>\n btn = <Link to={`/play`} className='tostudy'>去学习</Link>\n }\n return (\n <div className='gorup-content'>\n {\n share ? (\n <div className='groupSuccessMbc' onClick={props.invitedFriends}>\n <div className='tipContent'>\n \n {`还差${number}人,分享到3个群,成团率高达98%`}\n </div>\n <div className='tipArrow'>\n <i className='iconfont iconyindao'></i>\n </div>\n </div>\n ) : null\n }\n\n {tip}\n <WingBlank>\n {groupTip}\n </WingBlank>\n <WingBlank>\n {btn}\n </WingBlank>\n {dec}\n {\n !is_success &&\n <div className=\"group-dec\">\n <span>\n <i className='iconfont iconiconfront-1'></i>\n ·好友参团 ·人满成交 ·人不满退款\n </span>\n <span className='allNum'>{`累计${person_num}人成团`}</span>\n </div>\n }\n </div>\n )\n}\n\nexport default ToGroup\n"],"sourceRoot":""}
\ No newline at end of file \ No newline at end of file
(window.webpackJsonp=window.webpackJsonp||[]).push([[8],{652:function(e,t,a){"use strict";var n=a(0),c=a.n(n);a(653);t.a=function(e){return c.a.createElement("li",{className:"v-list-base-item",onClick:e.handleClick.bind(void 0,e.id)},c.a.createElement("div",{className:"content"},c.a.createElement("div",{className:"cover"},e.status,c.a.createElement("img",{src:e.img,alt:""})),e.info),e.tab)}},653:function(e,t,a){},684:function(e,t,a){},685:function(e,t,a){},686:function(e,t,a){},691:function(e,t,a){},693:function(e,t){},770:function(e,t,a){"use strict";a.r(t);a(26);var n=a(2),c=a.n(n),i=a(4),r=a(5),o=a(7),s=a(6),l=a(8),u=(a(163),a(83)),d=a.n(u),m=a(0),p=a.n(m),v=a(164),h=(a(684),a(13)),f=a(59),y=a(1),E=(a(685),a(652)),g=function(e){var t=e.item;return p.a.createElement("div",{className:"bottom"},p.a.createElement("span",{className:"price"},"\xa5",t.price1),p.a.createElement("span",{className:"stale-price"},"\xa5",t.price0))},b=function(e){function t(){var e,a;Object(i.a)(this,t);for(var n=arguments.length,r=new Array(n),l=0;l<n;l++)r[l]=arguments[l];return(a=Object(o.a)(this,(e=Object(s.a)(t)).call.apply(e,[this].concat(r)))).state={num:10,list:[],courseId:null},a.getRecommendation=function(){y.d.get("".concat(y.a.home,"/m/play/recommend_course/").concat(a.props.vCourseId,"?num=").concat(a.state.num)).then(function(e){var t=e.data;200===t.code?a.setState({list:t.data}):c.a.info(t.msg)})},a.handleClick=function(e){a.props.history.push("/detail?id=".concat(e))},a}return Object(l.a)(t,e),Object(r.a)(t,[{key:"componentDidMount",value:function(){this.getRecommendation()}},{key:"render",value:function(){var e=this;return p.a.createElement("div",{className:"recommendation"},p.a.createElement("div",{className:"title"},"\u76f8\u5173\u63a8\u8350"),p.a.createElement("ul",null,this.state.list.map(function(t){var a=p.a.createElement("div",{className:"info"},p.a.createElement("p",{className:"title"},t.course_title),p.a.createElement("p",{className:"des"},t.simpledescription),p.a.createElement(g,{item:t}));return p.a.createElement(E.a,{key:t.course_id,img:t.image_name,handleClick:e.handleClick,info:a,id:t.course_id})})))}}]),t}(m.PureComponent),_=(a(686),a(16)),C=a.n(_),N=function(e){function t(){var e,a;Object(i.a)(this,t);for(var n=arguments.length,c=new Array(n),r=0;r<n;r++)c[r]=arguments[r];return(a=Object(o.a)(this,(e=Object(s.a)(t)).call.apply(e,[this].concat(c)))).handleClick=function(e){a.props.handleClick(e)},a}return Object(l.a)(t,e),Object(r.a)(t,[{key:"render",value:function(){var e=this;return p.a.createElement("div",{className:"video-catalog"},p.a.createElement("ul",null,this.props.videoCatalog.map(function(t,a){return p.a.createElement("li",{key:t.id,className:C()({active:e.props.activeIndex===a}),onClick:e.handleClick.bind(e,a)},p.a.createElement("span",{className:"title"},t.name),p.a.createElement("span",{className:"duration"},t.duration),p.a.createElement("i",{className:C()("iconfont",[0===t.video_auth?"iconiconfront-74":"iconiconfront-35"])}))})))}}]),t}(m.Component),I=(a(687),a(690)),O=a.n(I),k=(a(691),function(e){function t(){return Object(i.a)(this,t),Object(o.a)(this,Object(s.a)(t).apply(this,arguments))}return Object(l.a)(t,e),Object(r.a)(t,[{key:"render",value:function(){var e=this.props.datum;return p.a.createElement("div",{className:"datum-catalog"},p.a.createElement("p",{className:"prompt"},"\u8bfe\u7a0b\u8d44\u6599\u8bf7\u5230PC\u7aef\u64ad\u653e\u9875\u4e0b\u8f7d"),p.a.createElement(O.a,null,e&&e.length&&e.map(function(e,t){return p.a.createElement(O.a.Panel,{header:e.dir_name,key:t},e.files.map(function(e){return p.a.createElement("div",{key:e.file_id,className:"file-name"},e.file_name)}))})))}}]),t}(m.Component));k.defaultProps={datum:[{dir_name:"",files:[{file_name:"",file_id:0}]}]};var j=k,A=a(765),P=(a(738),d.a.alert),x=function(e){function t(){var e,a;Object(i.a)(this,t);for(var n=arguments.length,r=new Array(n),l=0;l<n;l++)r[l]=arguments[l];return(a=Object(o.a)(this,(e=Object(s.a)(t)).call.apply(e,[this].concat(r)))).state={title:"",courseId:null,video_catalog:[],datum:[],currentVideoSrc:"",activeIndex:0,isAuth:!0,course:null,salePrice:null,vCourseId:null},a.initializePlayer=function(){window.HELP_IMPROVE_VIDEOJS=!1,a.player=Object(A.a)(a.video,{controls:!0,preload:"auto",bigPlayButton:!0,textTrackDisplay:!1,posterImage:!1,errorDisplay:!1}),a.player.enableTouchActivity()},a.handleClick=function(e){a.hasAuth()&&(a.setPlayerSrc(a.state.video_catalog[e].play_url),a.playVideo()),a.setState({activeIndex:e})},a.getVideoCatalog=function(){y.d.get("".concat(y.a.home,"/m/course/play/").concat(a.courseID)).then(function(e){var t=e.data;200===t.code?a.setState(function(e){return{video_catalog:t.data.lessons,currentVideoSrc:t.data.lessons[e.activeIndex].play_url,course:t.data.course,courseId:t.data.course.course_id,vCourseId:t.data.course.v_course_id,title:t.data.course.course_title}},function(){a.lessonAvailable()?a.hasAuth(a.state.activeIndex)?(a.initializePlayer(),a.playWithAuth()):a.getCoursePrice():P("\u6682\u65e0\u89c6\u9891","",[{text:"OK",onPress:function(){a.props.history.push("/")}}])}):c.a.info(t.msg)})},a.setPlayerSrc=function(e){a.player.src({src:e,type:"application/x-mpegURL"})},a.playVideo=function(){a.player.play()},a.lessonAvailable=function(){var e=a.state;return 0!==e.video_catalog[e.activeIndex].video_size},a.getCoursePrice=function(){y.d.get("".concat(y.a.home,"/sys/course/price/").concat(a.state.courseId)).then(function(e){var t=e.data;200===t.code&&a.setState({salePrice:t.data.sale_price})})},a.playWithAuth=function(){var e=a.state,t=e.video_catalog,n=e.activeIndex;a.hasAuth()&&a.setPlayerSrc(t[n].play_url)},a.hasAuth=function(e){var t=a.state,n=t.course,c=t.video_catalog[t.activeIndex];return c.is_free?(a.setState({isAuth:!0}),!0):n.is_audition?(a.setState({isAuth:!0}),!0):c.video_auth?(a.setState({isAuth:!0}),!0):(a.setState({isAuth:!1}),!1)},a}return Object(l.a)(t,e),Object(r.a)(t,[{key:"componentDidMount",value:function(){this.courseID=Object(y.c)("id"),this.setState({courseId:this.courseID}),this.getVideoCatalog(),this.getDatumCatalog()}},{key:"componentWillUnmount",value:function(){this.player&&this.player.dispose()}},{key:"getDatumCatalog",value:function(){var e=this;y.d.get("".concat(y.a.home,"/m/course/data/").concat(this.courseID)).then(function(t){var a=t.data;200===a.code?e.setState({datum:a.data}):c.a.info(a.msg)})}},{key:"render",value:function(){var e=this,t=this.props,a=t.match,n=t.location,c=this.state,i=c.video_catalog,r=c.activeIndex,o=c.isAuth,s=c.salePrice;return p.a.createElement("div",{className:"play"},p.a.createElement(v.a,{title:this.state.title,arrow:!0}),p.a.createElement("div",{className:"video"},p.a.createElement("video",{className:"video-js",ref:function(t){return e.video=t}},p.a.createElement("source",{src:"/",type:"application/x-mpegURL"})),!o&&p.a.createElement("div",{className:"purchase-box"},p.a.createElement("div",{className:"hint"},"\u60a8\u5c1a\u672a\u8d2d\u4e70\u8be5\u8bfe\u65f6\uff0c\u8bf7\u8d2d\u4e70\u540e\u5b66\u4e60\u3002"),p.a.createElement("div",{className:"btns"},p.a.createElement("button",{type:"button",className:"purchase-class"},"\xa5",s," \u8d2d\u4e70\u8bfe\u7a0b"),p.a.createElement("button",{type:"button",className:"purchase-episode"},"\xa5",i.length&&i[r].class_price," \u8d2d\u4e70\u5355\u96c6")))),p.a.createElement("div",{className:"tab"},p.a.createElement("div",null,p.a.createElement(h.c,{to:"".concat(a.url,"/video"),replace:!0,activeClassName:"active"},"\u89c6\u9891")),p.a.createElement("div",null,p.a.createElement(h.c,{to:"".concat(a.url,"/datum"),replace:!0,activeClassName:"active"},"\u8d44\u6599"))),p.a.createElement(f.d,null,p.a.createElement(f.a,{exact:!0,from:"/play",to:{pathname:"/play/video",search:n.search}}),p.a.createElement(f.b,{path:"".concat(a.path,"/video"),render:function(t){return p.a.createElement(N,Object.assign({activeIndex:e.state.activeIndex,handleClick:e.handleClick,videoCatalog:e.state.video_catalog},t))}}),p.a.createElement(f.b,{path:"".concat(a.path,"/datum"),render:function(t){return p.a.createElement(j,Object.assign({},t,{datum:e.state.datum}))}})),p.a.createElement(f.b,{render:function(t){return e.state.vCourseId?p.a.createElement(b,Object.assign({},t,{vCourseId:e.state.vCourseId})):null}}))}}]),t}(m.Component);t.default=x}}]);
//# sourceMappingURL=video.1f3d951b.chunk.js.map
\ No newline at end of file
{"version":3,"sources":["common/v-list-base/index.js","components/video/recommendation/index.js","components/video/video-catalog/index.js","components/video/datum-catalog/index.js","components/video/index.js"],"names":["VList","props","react__WEBPACK_IMPORTED_MODULE_0___default","a","createElement","className","onClick","handleClick","bind","id","status","src","img","alt","info","tab","Bottom","_ref","item","react_default","price1","price0","Recommendation","state","num","list","courseId","getRecommendation","http","get","concat","api","home","_this","vCourseId","then","res","data","code","setState","toast_default","msg","history","push","this","_this2","map","Info","course_title","simpledescription","recommendation_Bottom","v_list_base","key","course_id","image_name","PureComponent","VideoCatalog","i","videoCatalog","index","classnames","active","activeIndex","name","duration","video_auth","Component","DatumCatalog","datum","accordion_default","length","Panel","header","dir_name","files","file_id","file_name","defaultProps","alert","modal_default","Video","title","video_catalog","currentVideoSrc","isAuth","course","salePrice","initializePlayer","window","HELP_IMPROVE_VIDEOJS","player","videojs","video","controls","preload","bigPlayButton","textTrackDisplay","posterImage","errorDisplay","enableTouchActivity","hasAuth","setPlayerSrc","playVideo","getVideoCatalog","courseID","lessonAvailable","playWithAuth","getCoursePrice","text","onPress","type","play","_this$state","_this$state2","_this$state3","lesson","getParam","getDatumCatalog","dispose","_this3","_this$props","match","location","_this$state4","HeaderBar","arrow","ref","el","react_router_dom","to","url","replace","activeClassName","react_router","exact","from","pathname","search","path","render","video_video_catalog","Object","assign","video_datum_catalog","video_recommendation"],"mappings":"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","file":"static/js/video.1f3d951b.chunk.js","sourcesContent":["import React from 'react';\nimport './index.scss'\n\nconst VList = (props) => {\n return (\n <li className='v-list-base-item' onClick={props.handleClick.bind(this, props.id)}>\n <div className=\"content\">\n <div className=\"cover\">\n {props.status}\n <img src={props.img} alt=\"\"/>\n </div>\n {props.info}\n </div>\n {props.tab}\n </li>\n );\n};\n\nexport default VList;","import React, { PureComponent } from 'react';\nimport './recommendation.scss'\nimport { http, api } from '@/utils'\nimport { Toast } from \"antd-mobile\";\nimport VList from '@/common/v-list-base';\n\n\n\nconst Bottom = ({item}) => {\n return (\n <div className='bottom'>\n <span className='price'>¥{item.price1}</span>\n <span className='stale-price'>¥{item.price0}</span>\n </div>\n )\n}\n\n\n\nclass Recommendation extends PureComponent {\n state = {\n num: 10,\n list: [],\n courseId: null\n }\n\n\n componentDidMount() {\n this.getRecommendation()\n }\n\n getRecommendation = () => {\n http.get(`${api.home}/m/play/recommend_course/${this.props.vCourseId}?num=${this.state.num}`)\n .then(res => {\n const data = res.data\n if(data.code === 200){\n\n this.setState({\n list: data.data\n })\n\n }else {\n Toast.info(data.msg)\n }\n })\n }\n\n\n handleClick = id => {\n this.props.history.push(`/detail?id=${id}`)\n }\n\n render() {\n return (\n <div className='recommendation'>\n <div className={'title'}>相关推荐</div>\n <ul>\n {\n this.state.list.map(item => {\n const Info = (\n <div className=\"info\">\n <p className='title'>{item.course_title}</p>\n <p className='des'>{item.simpledescription}</p>\n <Bottom\n item={item}\n />\n </div>\n )\n\n return (\n <VList\n key={item.course_id}\n img={item.image_name}\n handleClick={this.handleClick}\n info={Info}\n id={item.course_id}\n />\n )\n })\n }\n </ul>\n </div>\n );\n }\n}\n\nexport default Recommendation;","import React, { Component } from 'react';\nimport './video-catalog.scss'\nimport classnames from 'classnames'\n\n\nclass VideoCatalog extends Component {\n\n handleClick = (i) => {\n this.props.handleClick(i)\n }\n\n render() {\n return (\n <div className='video-catalog'>\n <ul>\n {\n this.props.videoCatalog.map((item, index) => {\n return (\n <li key={item.id}\n className={classnames({active: this.props.activeIndex === index})}\n onClick={this.handleClick.bind(this, index)}\n >\n <span className=\"title\">{item.name}</span>\n <span className='duration'>{item.duration}</span>\n <i className={classnames(`iconfont`,\n [item.video_auth === 0\n ? 'iconiconfront-74'\n : 'iconiconfront-35'],\n )}/>\n </li>\n )\n })\n }\n </ul>\n </div>\n );\n }\n}\n\nexport default VideoCatalog;","import React, { Component } from 'react';\nimport './datum-catalog.scss'\nimport { Accordion } from \"antd-mobile\";\n\n\nclass DatumCatalog extends Component {\n\n static defaultProps = {\n datum: [{\n dir_name: '',\n files: [{\n file_name: '',\n file_id: 0\n }]\n }]\n }\n\n render() {\n const {datum} = this.props\n return (\n <div className='datum-catalog'>\n <p className='prompt'>课程资料请到PC端播放页下载</p>\n <Accordion>\n {\n datum && datum.length && datum.map((item, index) => {\n return (\n <Accordion.Panel header={item.dir_name} key={index}>\n {\n item.files.map(item => {\n return (\n <div key={item.file_id} className='file-name'>\n {item.file_name}\n </div>\n )\n })\n }\n </Accordion.Panel>\n )\n })\n }\n </Accordion>\n </div>\n );\n }\n}\n\nexport default DatumCatalog;","import React, { Component } from 'react';\nimport HeaderBar from '@/common/HeaderBar'\nimport './video.scss'\nimport { NavLink, Route, Redirect, Switch } from 'react-router-dom';\nimport { http, api, getParam } from '@/utils'\nimport Recommendation from './recommendation'\nimport VideoCatalog from './video-catalog'\nimport DatumCatalog from './datum-catalog'\nimport { Toast } from 'antd-mobile';\nimport videojs from 'video.js'\nimport 'video.js/dist/video-js.min.css'\nimport { Modal } from \"antd-mobile\";\n\nlet alert = Modal.alert\n\n\nclass Video extends Component {\n\n video\n player\n courseID\n\n\n state = {\n title: '',\n courseId: null,\n video_catalog: [],\n datum: [],\n currentVideoSrc: '',\n activeIndex: 0,\n isAuth: true,\n course: null,\n salePrice: null,\n vCourseId: null\n }\n\n\n componentDidMount() {\n this.courseID = getParam('id')\n this.setState({\n courseId: this.courseID\n })\n this.getVideoCatalog()\n this.getDatumCatalog()\n }\n\n initializePlayer = () => {\n window.HELP_IMPROVE_VIDEOJS = false;\n this.player = videojs(this.video, {\n controls: true,\n preload: 'auto',\n bigPlayButton: true,\n textTrackDisplay: false,\n posterImage: false,\n errorDisplay: false\n })\n this.player.enableTouchActivity()\n\n }\n\n\n componentWillUnmount() {\n if (this.player) {\n\n this.player.dispose()\n }\n }\n\n handleClick = index => {\n if (this.hasAuth()) {\n this.setPlayerSrc(this.state.video_catalog[index]['play_url'])\n this.playVideo()\n }\n this.setState({\n activeIndex: index\n })\n }\n\n\n getVideoCatalog = () => {\n http.get(`${api.home}/m/course/play/${this.courseID}`)\n .then(res => {\n const data = res.data\n if (data.code === 200) {\n\n this.setState(\n state => ({\n video_catalog: data.data['lessons'],\n currentVideoSrc: data.data['lessons'][state.activeIndex]['play_url'],\n course: data.data.course,\n courseId: data.data.course['course_id'],\n vCourseId: data.data.course['v_course_id'],\n title: data.data.course['course_title']\n }),\n () => {\n if (this.lessonAvailable()) {\n if (this.hasAuth(this.state.activeIndex)) {\n this.initializePlayer()\n this.playWithAuth()\n } else {\n this.getCoursePrice();\n }\n } else {\n alert('暂无视频', '', [{\n text: 'OK',\n onPress: () => {\n this.props.history.push('/')\n }\n }])\n }\n }\n )\n } else {\n Toast.info(data.msg)\n }\n })\n }\n\n setPlayerSrc = src => {\n this.player.src({\n src,\n type: 'application/x-mpegURL'\n })\n }\n\n playVideo = () => {\n this.player.play()\n }\n\n\n getDatumCatalog() {\n http.get(`${api.home}/m/course/data/${this.courseID}`)\n .then(res => {\n const data = res.data\n if (data.code === 200) {\n\n this.setState({\n datum: data.data\n })\n\n } else {\n Toast.info(data.msg)\n }\n })\n }\n\n lessonAvailable = () => {\n const {video_catalog, activeIndex} = this.state\n return video_catalog[activeIndex]['video_size'] !== 0\n }\n\n getCoursePrice = () => {\n http.get(`${api.home}/sys/course/price/${this.state.courseId}`)\n .then(res => {\n const {data} = res\n if (data.code === 200) {\n this.setState({\n salePrice: data.data['sale_price']\n })\n }\n })\n }\n\n playWithAuth = () => {\n const {video_catalog, activeIndex} = this.state\n\n if (this.hasAuth()) {\n this.setPlayerSrc(video_catalog[activeIndex]['play_url'])\n }\n }\n\n hasAuth = (index) => {\n const {course, video_catalog, activeIndex} = this.state\n let lesson = video_catalog[activeIndex]\n if (!lesson['is_free']) {\n if (course['is_audition']) {\n this.setState({\n isAuth: true\n })\n return true\n } else {\n if (lesson['video_auth']) {\n this.setState({\n isAuth: true\n })\n return true\n }\n this.setState({\n isAuth: false\n })\n return false\n }\n\n }\n this.setState({\n isAuth: true\n })\n return true\n }\n\n\n render() {\n let {match, location} = this.props\n const {video_catalog, activeIndex, isAuth, salePrice} = this.state\n return (\n <div className='play'>\n <HeaderBar title={this.state.title} arrow={true}/>\n <div className=\"video\">\n <video className={'video-js'} ref={el => this.video = el}>\n <source src={'/'} type='application/x-mpegURL'/>\n </video>\n {\n !isAuth && (\n <div className=\"purchase-box\">\n <div className='hint'>您尚未购买该课时,请购买后学习。</div>\n <div className='btns'>\n <button type='button' className='purchase-class'>¥{salePrice} 购买课程</button>\n <button type='button'\n className='purchase-episode'>¥{video_catalog.length && video_catalog[activeIndex]['class_price']} 购买单集\n </button>\n </div>\n </div>\n )\n }\n </div>\n <div className='tab'>\n <div>\n <NavLink to={`${match.url}/video`}\n replace\n activeClassName='active'\n >视频</NavLink>\n </div>\n <div>\n <NavLink to={`${match.url}/datum`}\n replace\n activeClassName='active'\n >资料</NavLink>\n </div>\n </div>\n <Switch>\n <Redirect exact from={'/play'} to={{\n pathname: '/play/video',\n search: location.search\n }}/>\n <Route path={`${match.path}/video`} render={props => {\n return <VideoCatalog\n activeIndex={this.state.activeIndex}\n handleClick={this.handleClick}\n videoCatalog={this.state.video_catalog}\n {...props}/>\n }}/>\n <Route path={`${match.path}/datum`} render={props => {\n return <DatumCatalog {...props} datum={this.state.datum}/>\n }}/>\n </Switch>\n <Route render={props => {\n return this.state.vCourseId ? <Recommendation {...props} vCourseId={this.state.vCourseId}/>\n : null\n }}/>\n </div>\n );\n }\n}\n\n\nexport default Video;"],"sourceRoot":""}
\ No newline at end of file
(window.webpackJsonp=window.webpackJsonp||[]).push([[8],{653:function(e,t,a){"use strict";var n=a(0),c=a.n(n);a(654);t.a=function(e){return c.a.createElement("li",{className:"v-list-base-item",onClick:e.handleClick.bind(void 0,e.id)},c.a.createElement("div",{className:"content"},c.a.createElement("div",{className:"cover"},e.status,c.a.createElement("img",{src:e.img,alt:""})),e.info),e.tab)}},654:function(e,t,a){},685:function(e,t,a){},686:function(e,t,a){},687:function(e,t,a){},692:function(e,t,a){},694:function(e,t){},773:function(e,t,a){"use strict";a.r(t);a(26);var n=a(2),c=a.n(n),i=a(4),r=a(5),o=a(8),s=a(6),l=a(7),u=(a(165),a(84)),d=a.n(u),m=a(0),p=a.n(m),v=a(166),h=(a(685),a(13)),f=a(59),y=a(1),E=(a(686),a(653)),g=function(e){var t=e.item;return p.a.createElement("div",{className:"bottom"},p.a.createElement("span",{className:"price"},"\xa5",t.price1),p.a.createElement("span",{className:"stale-price"},"\xa5",t.price0))},b=function(e){function t(){var e,a;Object(i.a)(this,t);for(var n=arguments.length,r=new Array(n),l=0;l<n;l++)r[l]=arguments[l];return(a=Object(o.a)(this,(e=Object(s.a)(t)).call.apply(e,[this].concat(r)))).state={num:10,list:[],courseId:null},a.getRecommendation=function(){y.d.get("".concat(y.a.home,"/m/play/recommend_course/").concat(a.props.vCourseId,"?num=").concat(a.state.num)).then(function(e){var t=e.data;200===t.code?a.setState({list:t.data}):c.a.info(t.msg)})},a.handleClick=function(e){a.props.history.push("/detail?id=".concat(e))},a}return Object(l.a)(t,e),Object(r.a)(t,[{key:"componentDidMount",value:function(){this.getRecommendation()}},{key:"render",value:function(){var e=this;return p.a.createElement("div",{className:"recommendation"},p.a.createElement("div",{className:"title"},"\u76f8\u5173\u63a8\u8350"),p.a.createElement("ul",null,this.state.list.map(function(t){var a=p.a.createElement("div",{className:"info"},p.a.createElement("p",{className:"title"},t.course_title),p.a.createElement("p",{className:"des"},t.simpledescription),p.a.createElement(g,{item:t}));return p.a.createElement(E.a,{key:t.course_id,img:t.image_name,handleClick:e.handleClick,info:a,id:t.course_id})})))}}]),t}(m.PureComponent),_=(a(687),a(16)),C=a.n(_),N=function(e){function t(){var e,a;Object(i.a)(this,t);for(var n=arguments.length,c=new Array(n),r=0;r<n;r++)c[r]=arguments[r];return(a=Object(o.a)(this,(e=Object(s.a)(t)).call.apply(e,[this].concat(c)))).handleClick=function(e){a.props.handleClick(e)},a}return Object(l.a)(t,e),Object(r.a)(t,[{key:"render",value:function(){var e=this;return p.a.createElement("div",{className:"video-catalog"},p.a.createElement("ul",null,this.props.videoCatalog.map(function(t,a){return p.a.createElement("li",{key:t.id,className:C()({active:e.props.activeIndex===a}),onClick:e.handleClick.bind(e,a)},p.a.createElement("span",{className:"title"},t.name),p.a.createElement("span",{className:"duration"},t.duration),p.a.createElement("i",{className:C()("iconfont",[0===t.video_auth?"iconiconfront-74":"iconiconfront-35"])}))})))}}]),t}(m.Component),I=(a(688),a(691)),k=a.n(I),O=(a(692),function(e){function t(){return Object(i.a)(this,t),Object(o.a)(this,Object(s.a)(t).apply(this,arguments))}return Object(l.a)(t,e),Object(r.a)(t,[{key:"render",value:function(){var e=this.props.datum;return p.a.createElement("div",{className:"datum-catalog"},p.a.createElement("p",{className:"prompt"},"\u8bfe\u7a0b\u8d44\u6599\u8bf7\u5230PC\u7aef\u64ad\u653e\u9875\u4e0b\u8f7d"),p.a.createElement(k.a,null,e&&e.length&&e.map(function(e,t){return p.a.createElement(k.a.Panel,{header:e.dir_name,key:t},e.files.map(function(e){return p.a.createElement("div",{key:e.file_id,className:"file-name"},e.file_name)}))})))}}]),t}(m.Component));O.defaultProps={datum:[{dir_name:"",files:[{file_name:"",file_id:0}]}]};var j=O,P=a(766),A=(a(739),a(18)),x=d.a.alert,S=function(e){function t(){var e,a;Object(i.a)(this,t);for(var n=arguments.length,r=new Array(n),l=0;l<n;l++)r[l]=arguments[l];return(a=Object(o.a)(this,(e=Object(s.a)(t)).call.apply(e,[this].concat(r)))).state={title:"",courseId:null,video_catalog:[],datum:[],currentVideoSrc:"",activeIndex:0,isAuth:!0,course:null,salePrice:null,vCourseId:null,isLoading:!0},a.initializePlayer=function(){window.HELP_IMPROVE_VIDEOJS=!1,a.player=Object(P.a)(a.video,{controls:!0,preload:"auto",bigPlayButton:!0,textTrackDisplay:!1,posterImage:!1,errorDisplay:!1}),a.player.enableTouchActivity()},a.handleClick=function(e){a.hasAuth()&&(a.setPlayerSrc(a.state.video_catalog[e].play_url),a.playVideo()),a.setState({activeIndex:e})},a.getVideoCatalog=function(){y.d.get("".concat(y.a.home,"/m/course/play/").concat(a.courseID)).then(function(e){var t=e.data;200===t.code?a.setState(function(e){return{video_catalog:t.data.lessons,currentVideoSrc:t.data.lessons[e.activeIndex].play_url,course:t.data.course,courseId:t.data.course.course_id,vCourseId:t.data.course.v_course_id,title:t.data.course.course_title,isLoading:!1}},function(){a.lessonAvailable()?a.hasAuth(a.state.activeIndex)?Promise.resolve().then(function(){a.initializePlayer(),a.playWithAuth()}):a.getCoursePrice():x("\u6682\u65e0\u89c6\u9891","",[{text:"OK",onPress:function(){a.props.history.push("/")}}])}):c.a.info(t.msg)})},a.setPlayerSrc=function(e){a.player.src({src:e,type:"application/x-mpegURL"})},a.playVideo=function(){a.player.play()},a.lessonAvailable=function(){var e=a.state;return 0!==e.video_catalog[e.activeIndex].video_size},a.getCoursePrice=function(){y.d.get("".concat(y.a.home,"/sys/course/price/").concat(a.state.courseId)).then(function(e){var t=e.data;200===t.code&&a.setState({salePrice:t.data.sale_price})})},a.playWithAuth=function(){var e=a.state,t=e.video_catalog,n=e.activeIndex;a.hasAuth()&&a.setPlayerSrc(t[n].play_url)},a.hasAuth=function(e){var t=a.state,n=t.course,c=t.video_catalog[t.activeIndex];return c.is_free?(a.setState({isAuth:!0}),!0):n.is_audition?(a.setState({isAuth:!0}),!0):c.video_auth?(a.setState({isAuth:!0}),!0):(a.setState({isAuth:!1}),!1)},a}return Object(l.a)(t,e),Object(r.a)(t,[{key:"componentDidMount",value:function(){this.courseID=Object(y.c)("id"),this.setState({courseId:this.courseID}),this.getVideoCatalog(),this.getDatumCatalog()}},{key:"componentDidUpdate",value:function(e,t){console.log(this.video)}},{key:"componentWillUnmount",value:function(){this.player&&this.player.dispose()}},{key:"getDatumCatalog",value:function(){var e=this;y.d.get("".concat(y.a.home,"/m/course/data/").concat(this.courseID)).then(function(t){var a=t.data;200===a.code?e.setState({datum:a.data}):c.a.info(a.msg)})}},{key:"render",value:function(){var e=this,t=this.props,a=t.match,n=t.location,c=this.state,i=c.video_catalog,r=c.activeIndex,o=c.isAuth,s=c.salePrice;return p.a.createElement("div",{className:"play"},p.a.createElement(v.a,{title:this.state.title,arrow:!0}),p.a.createElement(A.f,{isLoading:this.state.isLoading},p.a.createElement("div",{className:"video"},p.a.createElement("video",{className:"video-js",ref:function(t){return e.video=t}},p.a.createElement("source",{src:"/",type:"application/x-mpegURL"})),!o&&p.a.createElement("div",{className:"purchase-box"},p.a.createElement("div",{className:"hint"},"\u60a8\u5c1a\u672a\u8d2d\u4e70\u8be5\u8bfe\u65f6\uff0c\u8bf7\u8d2d\u4e70\u540e\u5b66\u4e60\u3002"),p.a.createElement("div",{className:"btns"},p.a.createElement("button",{type:"button",className:"purchase-class"},"\xa5",s," \u8d2d\u4e70\u8bfe\u7a0b"),p.a.createElement("button",{type:"button",className:"purchase-episode"},"\xa5",i.length&&i[r].class_price," \u8d2d\u4e70\u5355\u96c6")))),p.a.createElement("div",{className:"tab"},p.a.createElement("div",null,p.a.createElement(h.c,{to:"".concat(a.url,"/video"),replace:!0,activeClassName:"active"},"\u89c6\u9891")),p.a.createElement("div",null,p.a.createElement(h.c,{to:"".concat(a.url,"/datum"),replace:!0,activeClassName:"active"},"\u8d44\u6599")))),p.a.createElement(f.d,null,p.a.createElement(f.a,{exact:!0,from:"/play",to:{pathname:"/play/video",search:n.search}}),p.a.createElement(f.b,{path:"".concat(a.path,"/video"),render:function(t){return p.a.createElement(N,Object.assign({activeIndex:e.state.activeIndex,handleClick:e.handleClick,videoCatalog:e.state.video_catalog},t))}}),p.a.createElement(f.b,{path:"".concat(a.path,"/datum"),render:function(t){return p.a.createElement(j,Object.assign({},t,{datum:e.state.datum}))}})),p.a.createElement(f.b,{render:function(t){return e.state.vCourseId?p.a.createElement(b,Object.assign({},t,{vCourseId:e.state.vCourseId})):null}}))}}]),t}(m.Component);t.default=S}}]);
//# sourceMappingURL=video.6b23c829.chunk.js.map
\ No newline at end of file
{"version":3,"sources":["common/v-list-base/index.js","components/video/recommendation/index.js","components/video/video-catalog/index.js","components/video/datum-catalog/index.js","components/video/index.js"],"names":["VList","props","react__WEBPACK_IMPORTED_MODULE_0___default","a","createElement","className","onClick","handleClick","bind","id","status","src","img","alt","info","tab","Bottom","_ref","item","react_default","price1","price0","Recommendation","state","num","list","courseId","getRecommendation","http","get","concat","api","home","_this","vCourseId","then","res","data","code","setState","toast_default","msg","history","push","this","_this2","map","Info","course_title","simpledescription","recommendation_Bottom","v_list_base","key","course_id","image_name","PureComponent","VideoCatalog","i","videoCatalog","index","classnames","active","activeIndex","name","duration","video_auth","Component","DatumCatalog","datum","accordion_default","length","Panel","header","dir_name","files","file_id","file_name","defaultProps","alert","modal_default","Video","title","video_catalog","currentVideoSrc","isAuth","course","salePrice","isLoading","initializePlayer","window","HELP_IMPROVE_VIDEOJS","player","videojs","video","controls","preload","bigPlayButton","textTrackDisplay","posterImage","errorDisplay","enableTouchActivity","hasAuth","setPlayerSrc","playVideo","getVideoCatalog","courseID","lessonAvailable","Promise","resolve","playWithAuth","getCoursePrice","text","onPress","type","play","_this$state","_this$state2","_this$state3","lesson","getParam","getDatumCatalog","prevProps","prevState","console","log","dispose","_this3","_this$props","match","location","_this$state4","HeaderBar","arrow","common","ref","el","react_router_dom","to","url","replace","activeClassName","react_router","exact","from","pathname","search","path","render","video_video_catalog","Object","assign","video_datum_catalog","video_recommendation"],"mappings":"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","file":"static/js/video.6b23c829.chunk.js","sourcesContent":["import React from 'react';\nimport './index.scss'\n\nconst VList = (props) => {\n return (\n <li className='v-list-base-item' onClick={props.handleClick.bind(this, props.id)}>\n <div className=\"content\">\n <div className=\"cover\">\n {props.status}\n <img src={props.img} alt=\"\"/>\n </div>\n {props.info}\n </div>\n {props.tab}\n </li>\n );\n};\n\nexport default VList;","import React, { PureComponent } from 'react';\nimport './recommendation.scss'\nimport { http, api } from '@/utils'\nimport { Toast } from \"antd-mobile\";\nimport VList from '@/common/v-list-base';\n\n\n\nconst Bottom = ({item}) => {\n return (\n <div className='bottom'>\n <span className='price'>¥{item.price1}</span>\n <span className='stale-price'>¥{item.price0}</span>\n </div>\n )\n}\n\n\n\nclass Recommendation extends PureComponent {\n state = {\n num: 10,\n list: [],\n courseId: null\n }\n\n\n componentDidMount() {\n this.getRecommendation()\n }\n\n getRecommendation = () => {\n http.get(`${api.home}/m/play/recommend_course/${this.props.vCourseId}?num=${this.state.num}`)\n .then(res => {\n const data = res.data\n if(data.code === 200){\n\n this.setState({\n list: data.data\n })\n\n }else {\n Toast.info(data.msg)\n }\n })\n }\n\n\n handleClick = id => {\n this.props.history.push(`/detail?id=${id}`)\n }\n\n render() {\n return (\n <div className='recommendation'>\n <div className={'title'}>相关推荐</div>\n <ul>\n {\n this.state.list.map(item => {\n const Info = (\n <div className=\"info\">\n <p className='title'>{item.course_title}</p>\n <p className='des'>{item.simpledescription}</p>\n <Bottom\n item={item}\n />\n </div>\n )\n\n return (\n <VList\n key={item.course_id}\n img={item.image_name}\n handleClick={this.handleClick}\n info={Info}\n id={item.course_id}\n />\n )\n })\n }\n </ul>\n </div>\n );\n }\n}\n\nexport default Recommendation;","import React, { Component } from 'react';\nimport './video-catalog.scss'\nimport classnames from 'classnames'\n\n\nclass VideoCatalog extends Component {\n\n handleClick = (i) => {\n this.props.handleClick(i)\n }\n\n render() {\n return (\n <div className='video-catalog'>\n <ul>\n {\n this.props.videoCatalog.map((item, index) => {\n return (\n <li key={item.id}\n className={classnames({active: this.props.activeIndex === index})}\n onClick={this.handleClick.bind(this, index)}\n >\n <span className=\"title\">{item.name}</span>\n <span className='duration'>{item.duration}</span>\n <i className={classnames(`iconfont`,\n [item.video_auth === 0\n ? 'iconiconfront-74'\n : 'iconiconfront-35'],\n )}/>\n </li>\n )\n })\n }\n </ul>\n </div>\n );\n }\n}\n\nexport default VideoCatalog;","import React, { Component } from 'react';\nimport './datum-catalog.scss'\nimport { Accordion } from \"antd-mobile\";\n\n\nclass DatumCatalog extends Component {\n\n static defaultProps = {\n datum: [{\n dir_name: '',\n files: [{\n file_name: '',\n file_id: 0\n }]\n }]\n }\n\n render() {\n const {datum} = this.props\n return (\n <div className='datum-catalog'>\n <p className='prompt'>课程资料请到PC端播放页下载</p>\n <Accordion>\n {\n datum && datum.length && datum.map((item, index) => {\n return (\n <Accordion.Panel header={item.dir_name} key={index}>\n {\n item.files.map(item => {\n return (\n <div key={item.file_id} className='file-name'>\n {item.file_name}\n </div>\n )\n })\n }\n </Accordion.Panel>\n )\n })\n }\n </Accordion>\n </div>\n );\n }\n}\n\nexport default DatumCatalog;","import React, { Component } from 'react';\nimport HeaderBar from '@/common/HeaderBar'\nimport './video.scss'\nimport { NavLink, Route, Redirect, Switch } from 'react-router-dom';\nimport { http, api, getParam } from '@/utils'\nimport Recommendation from './recommendation'\nimport VideoCatalog from './video-catalog'\nimport DatumCatalog from './datum-catalog'\nimport { Toast } from 'antd-mobile';\nimport videojs from 'video.js'\nimport 'video.js/dist/video-js.min.css'\nimport { Modal } from \"antd-mobile\";\nimport { Loading } from '@/common'\n\nlet alert = Modal.alert\n\n\nclass Video extends Component {\n\n video\n player\n courseID\n\n\n state = {\n title: '',\n courseId: null,\n video_catalog: [],\n datum: [],\n currentVideoSrc: '',\n activeIndex: 0,\n isAuth: true,\n course: null,\n salePrice: null,\n vCourseId: null,\n isLoading: true\n }\n\n\n componentDidMount() {\n this.courseID = getParam('id')\n this.setState({\n courseId: this.courseID\n })\n this.getVideoCatalog()\n this.getDatumCatalog()\n }\n\n initializePlayer = () => {\n window.HELP_IMPROVE_VIDEOJS = false;\n this.player = videojs(this.video, {\n controls: true,\n preload: 'auto',\n bigPlayButton: true,\n textTrackDisplay: false,\n posterImage: false,\n errorDisplay: false\n })\n this.player.enableTouchActivity()\n\n }\n\n componentDidUpdate(prevProps, prevState) {\n console.log(this.video);\n }\n\n\n componentWillUnmount() {\n if (this.player) {\n\n this.player.dispose()\n }\n }\n\n handleClick = index => {\n if (this.hasAuth()) {\n this.setPlayerSrc(this.state.video_catalog[index]['play_url'])\n this.playVideo()\n }\n this.setState({\n activeIndex: index\n })\n }\n\n\n getVideoCatalog = () => {\n http.get(`${api.home}/m/course/play/${this.courseID}`)\n .then(res => {\n const data = res.data\n if (data.code === 200) {\n\n this.setState(\n state => ({\n video_catalog: data.data['lessons'],\n currentVideoSrc: data.data['lessons'][state.activeIndex]['play_url'],\n course: data.data.course,\n courseId: data.data.course['course_id'],\n vCourseId: data.data.course['v_course_id'],\n title: data.data.course['course_title'],\n isLoading: false\n }),\n () => {\n if (this.lessonAvailable()) {\n if (this.hasAuth(this.state.activeIndex)) {\n Promise.resolve().then(() => {\n this.initializePlayer()\n this.playWithAuth()\n })\n } else {\n this.getCoursePrice();\n }\n } else {\n alert('暂无视频', '', [{\n text: 'OK',\n onPress: () => {\n this.props.history.push('/')\n }\n }])\n }\n }\n )\n } else {\n Toast.info(data.msg)\n }\n })\n }\n\n setPlayerSrc = src => {\n this.player.src({\n src,\n type: 'application/x-mpegURL'\n })\n }\n\n playVideo = () => {\n this.player.play()\n }\n\n\n getDatumCatalog() {\n http.get(`${api.home}/m/course/data/${this.courseID}`)\n .then(res => {\n const data = res.data\n if (data.code === 200) {\n\n this.setState({\n datum: data.data\n })\n\n } else {\n Toast.info(data.msg)\n }\n })\n }\n\n lessonAvailable = () => {\n const {video_catalog, activeIndex} = this.state\n return video_catalog[activeIndex]['video_size'] !== 0\n }\n\n getCoursePrice = () => {\n http.get(`${api.home}/sys/course/price/${this.state.courseId}`)\n .then(res => {\n const {data} = res\n if (data.code === 200) {\n this.setState({\n salePrice: data.data['sale_price']\n })\n }\n })\n }\n\n playWithAuth = () => {\n const {video_catalog, activeIndex} = this.state\n\n if (this.hasAuth()) {\n this.setPlayerSrc(video_catalog[activeIndex]['play_url'])\n }\n }\n\n hasAuth = (index) => {\n const {course, video_catalog, activeIndex} = this.state\n let lesson = video_catalog[activeIndex]\n if (!lesson['is_free']) {\n if (course['is_audition']) {\n this.setState({\n isAuth: true\n })\n return true\n } else {\n if (lesson['video_auth']) {\n this.setState({\n isAuth: true\n })\n return true\n }\n this.setState({\n isAuth: false\n })\n return false\n }\n\n }\n this.setState({\n isAuth: true\n })\n return true\n }\n\n\n render() {\n let {match, location} = this.props\n const {video_catalog, activeIndex, isAuth, salePrice} = this.state\n return (\n <div className='play'>\n <HeaderBar title={this.state.title} arrow={true}/>\n <Loading isLoading={this.state.isLoading}>\n <div className=\"video\">\n <video className={'video-js'} ref={el => this.video = el}>\n <source src={'/'} type='application/x-mpegURL'/>\n </video>\n {\n !isAuth && (\n <div className=\"purchase-box\">\n <div className='hint'>您尚未购买该课时,请购买后学习。</div>\n <div className='btns'>\n <button type='button' className='purchase-class'>¥{salePrice} 购买课程</button>\n <button type='button'\n className='purchase-episode'>¥{video_catalog.length && video_catalog[activeIndex]['class_price']} 购买单集\n </button>\n </div>\n </div>\n )\n }\n </div>\n <div className='tab'>\n <div>\n <NavLink to={`${match.url}/video`}\n replace\n activeClassName='active'\n >视频</NavLink>\n </div>\n <div>\n <NavLink to={`${match.url}/datum`}\n replace\n activeClassName='active'\n >资料</NavLink>\n </div>\n </div>\n </Loading>\n <Switch>\n <Redirect exact from={'/play'} to={{\n pathname: '/play/video',\n search: location.search\n }}/>\n <Route path={`${match.path}/video`} render={props => {\n return <VideoCatalog\n activeIndex={this.state.activeIndex}\n handleClick={this.handleClick}\n videoCatalog={this.state.video_catalog}\n {...props}/>\n }}/>\n <Route path={`${match.path}/datum`} render={props => {\n return <DatumCatalog {...props} datum={this.state.datum}/>\n }}/>\n </Switch>\n <Route render={props => {\n return this.state.vCourseId ? <Recommendation {...props} vCourseId={this.state.vCourseId}/>\n : null\n }}/>\n </div>\n );\n }\n}\n\n\nexport default Video;"],"sourceRoot":""}
\ No newline at end of file
...@@ -6,5 +6,6 @@ export { default as HeaderBar } from './HeaderBar' ...@@ -6,5 +6,6 @@ export { default as HeaderBar } from './HeaderBar'
export { default as CallApp } from './CallApp' export { default as CallApp } from './CallApp'
export { default as Captcha } from './Captcha' export { default as Captcha } from './Captcha'
export { default as ClearableInput } from "./ClearableInput"; export { default as ClearableInput } from "./ClearableInput";
export { default as Loading } from './Loading'
...@@ -73,8 +73,8 @@ const formikConfig = { ...@@ -73,8 +73,8 @@ const formikConfig = {
username, password username, password
}).then(res => { }).then(res => {
if (!res.hasError) { if (!res.hasError) {
let {from} = props.location.state || {from: {pathname: '/'}} let {from} = props.location.state || {from: {pathname: '/', search: ''}}
history.replace(from.pathname) history.replace({pathname: from.pathname, search: from.search})
} else { } else {
Toast.info(res.msg, 2, null, false) Toast.info(res.msg, 2, null, false)
} }
......
...@@ -21,7 +21,6 @@ class Passport extends Component { ...@@ -21,7 +21,6 @@ class Passport extends Component {
redirect_url = location.protocol + '//' + location.hostname redirect_url = location.protocol + '//' + location.hostname
constructor(props) { constructor(props) {
super(props); super(props);
this.state = { this.state = {
......
...@@ -10,6 +10,7 @@ import { Toast } from 'antd-mobile'; ...@@ -10,6 +10,7 @@ import { Toast } from 'antd-mobile';
import videojs from 'video.js' import videojs from 'video.js'
import 'video.js/dist/video-js.min.css' import 'video.js/dist/video-js.min.css'
import { Modal } from "antd-mobile"; import { Modal } from "antd-mobile";
import { Loading } from '@/common'
let alert = Modal.alert let alert = Modal.alert
...@@ -31,7 +32,8 @@ class Video extends Component { ...@@ -31,7 +32,8 @@ class Video extends Component {
isAuth: true, isAuth: true,
course: null, course: null,
salePrice: null, salePrice: null,
vCourseId: null vCourseId: null,
isLoading: true
} }
...@@ -58,6 +60,10 @@ class Video extends Component { ...@@ -58,6 +60,10 @@ class Video extends Component {
} }
componentDidUpdate(prevProps, prevState) {
console.log(this.video);
}
componentWillUnmount() { componentWillUnmount() {
if (this.player) { if (this.player) {
...@@ -90,13 +96,16 @@ class Video extends Component { ...@@ -90,13 +96,16 @@ class Video extends Component {
course: data.data.course, course: data.data.course,
courseId: data.data.course['course_id'], courseId: data.data.course['course_id'],
vCourseId: data.data.course['v_course_id'], vCourseId: data.data.course['v_course_id'],
title: data.data.course['course_title'] title: data.data.course['course_title'],
isLoading: false
}), }),
() => { () => {
if (this.lessonAvailable()) { if (this.lessonAvailable()) {
if (this.hasAuth(this.state.activeIndex)) { if (this.hasAuth(this.state.activeIndex)) {
this.initializePlayer() Promise.resolve().then(() => {
this.playWithAuth() this.initializePlayer()
this.playWithAuth()
})
} else { } else {
this.getCoursePrice(); this.getCoursePrice();
} }
...@@ -205,38 +214,40 @@ class Video extends Component { ...@@ -205,38 +214,40 @@ class Video extends Component {
return ( return (
<div className='play'> <div className='play'>
<HeaderBar title={this.state.title} arrow={true}/> <HeaderBar title={this.state.title} arrow={true}/>
<div className="video"> <Loading isLoading={this.state.isLoading}>
<video className={'video-js'} ref={el => this.video = el}> <div className="video">
<source src={'/'} type='application/x-mpegURL'/> <video className={'video-js'} ref={el => this.video = el}>
</video> <source src={'/'} type='application/x-mpegURL'/>
{ </video>
!isAuth && ( {
<div className="purchase-box"> !isAuth && (
<div className='hint'>您尚未购买该课时,请购买后学习。</div> <div className="purchase-box">
<div className='btns'> <div className='hint'>您尚未购买该课时,请购买后学习。</div>
<button type='button' className='purchase-class'>¥{salePrice} 购买课程</button> <div className='btns'>
<button type='button' <button type='button' className='purchase-class'>¥{salePrice} 购买课程</button>
className='purchase-episode'>¥{video_catalog.length && video_catalog[activeIndex]['class_price']} 购买单集 <button type='button'
</button> className='purchase-episode'>¥{video_catalog.length && video_catalog[activeIndex]['class_price']} 购买单集
</button>
</div>
</div> </div>
</div> )
) }
}
</div>
<div className='tab'>
<div>
<NavLink to={`${match.url}/video`}
replace
activeClassName='active'
>视频</NavLink>
</div> </div>
<div> <div className='tab'>
<NavLink to={`${match.url}/datum`} <div>
replace <NavLink to={`${match.url}/video`}
activeClassName='active' replace
>资料</NavLink> activeClassName='active'
>视频</NavLink>
</div>
<div>
<NavLink to={`${match.url}/datum`}
replace
activeClassName='active'
>资料</NavLink>
</div>
</div> </div>
</div> </Loading>
<Switch> <Switch>
<Redirect exact from={'/play'} to={{ <Redirect exact from={'/play'} to={{
pathname: '/play/video', pathname: '/play/video',
......
...@@ -103,7 +103,8 @@ export default [ ...@@ -103,7 +103,8 @@ export default [
}, },
{ {
path: '/play', path: '/play',
component: Video component: Video,
isPrivate: true
}, },
{ {
path: '/scholarship', path: '/scholarship',
......
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