From 16f380f6652375b8e65d9e65584d9d53dcbbc39e Mon Sep 17 00:00:00 2001 From: "sylor_huang@126.com" Date: Tue, 24 Mar 2020 13:27:03 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=96=B0=E5=BB=BA=E9=A1=B9?= =?UTF-8?q?=E7=9B=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/react/build/asset-manifest.json | 2 +- public/react/build/index.html | 2 +- public/react/build/service-worker.js | 2 +- public/react/build/static/js/main.d048ab0f.js | 79929 ++++++++++++++++ 4 files changed, 79932 insertions(+), 3 deletions(-) create mode 100644 public/react/build/static/js/main.d048ab0f.js diff --git a/public/react/build/asset-manifest.json b/public/react/build/asset-manifest.json index 39262abb1..3fc3fb356 100644 --- a/public/react/build/asset-manifest.json +++ b/public/react/build/asset-manifest.json @@ -282,7 +282,7 @@ "./static/js/98.e196cdfc.chunk.js": "./static/js/98.e196cdfc.chunk.js", "./static/js/99.2d19140c.chunk.js": "./static/js/99.2d19140c.chunk.js", "main.css": "./static/css/main.fd229636.css", - "main.js": "./static/js/main.d541989c.js", + "main.js": "./static/js/main.d048ab0f.js", "static/media/KaTeX_AMS-Regular.ttf": "static/media/KaTeX_AMS-Regular.aaf4eee9.ttf", "static/media/KaTeX_AMS-Regular.woff": "static/media/KaTeX_AMS-Regular.7f06b4e3.woff", "static/media/KaTeX_AMS-Regular.woff2": "static/media/KaTeX_AMS-Regular.e78e28b4.woff2", diff --git a/public/react/build/index.html b/public/react/build/index.html index 5664489be..bbe8a5b14 100644 --- a/public/react/build/index.html +++ b/public/react/build/index.html @@ -24,7 +24,7 @@ _host = 'https://ali-cdn.educoder.net/react/build/' } document.write(' \ No newline at end of file diff --git a/public/react/build/service-worker.js b/public/react/build/service-worker.js index 4c46fc81e..0c30eb875 100644 --- a/public/react/build/service-worker.js +++ b/public/react/build/service-worker.js @@ -1 +1 @@ -"use strict";var precacheConfig=[["/react/build/index.html","e5e3f31aa4f9fa4f97089ff1d6970d74"],["/react/build/static/css/main.fd229636.css","fd2296369bdb93090b9d732b4f26607b"],["/react/build/static/js/0.aab4f9d2.chunk.js","f5e96451041c9fde5f372e8c065771ec"],["/react/build/static/js/100.6b3636b7.chunk.js","d75bffe6b9f22ef7596866592ef0409a"],["/react/build/static/js/101.c693a8fb.chunk.js","d44362affb62b2cf7a1003292951315f"],["/react/build/static/js/102.3007da08.chunk.js","496d682e1748281e8b1551cdd9718262"],["/react/build/static/js/103.3529dc2c.chunk.js","0027d579b9152c585bc2bd2d52ec9d6f"],["/react/build/static/js/104.b17e9cc1.chunk.js","a44e36f33de2aeb121ce39598c573e4a"],["/react/build/static/js/105.ec22ed03.chunk.js","9adfcc6d00a7282c49518316e2b7306c"],["/react/build/static/js/106.37f40343.chunk.js","60cd69fcaa76048dd434c348dabfebfa"],["/react/build/static/js/107.71f3e1bb.chunk.js","2d9c6a3942a299fa2ad06ec7aa790dc3"],["/react/build/static/js/108.3e5c7d1f.chunk.js","b22a54a66233ce9c2e52b4a7a13fe73b"],["/react/build/static/js/109.bcf50865.chunk.js","c83038a72cc1842f24268cdc6718dd49"],["/react/build/static/js/11.119fb175.chunk.js","846ef87243fa32c9410bdffd1222bca8"],["/react/build/static/js/110.3776eb6b.chunk.js","031a1f172b37abeeab49613b48e19aef"],["/react/build/static/js/111.91b8ab88.chunk.js","4a056911fe7a13f792dba51e629d944d"],["/react/build/static/js/112.76b0a4bc.chunk.js","c97095b8d46a2f9eb795f258f6861e08"],["/react/build/static/js/113.c525ff6a.chunk.js","98e02ed5ffd0ed74581460951636dec6"],["/react/build/static/js/114.1b5df033.chunk.js","0df12f92118e207dc6b88074a474631f"],["/react/build/static/js/116.ecff0d37.chunk.js","808088438d6adc2cd4f77a35c7fb977f"],["/react/build/static/js/117.b18323f2.chunk.js","487d3242adb0744128aa0fb556f29490"],["/react/build/static/js/118.8cd96265.chunk.js","0a04ba4916540b2f0e5151062ddbeda7"],["/react/build/static/js/119.07633fcc.chunk.js","80b1d30e2e0542ebadd2230a34a5beaa"],["/react/build/static/js/12.d48cdc19.chunk.js","1c80a50f48cbf9da51a348894bd60fa0"],["/react/build/static/js/120.f90cd03e.chunk.js","df09b353b47e91f506a6c94c87f7bd4e"],["/react/build/static/js/121.15414746.chunk.js","64d46f183a85ff588ff049aa957f4c28"],["/react/build/static/js/122.c9a5a14b.chunk.js","5219c62e8af1bd31a543ccdfb238f889"],["/react/build/static/js/123.7ac47297.chunk.js","486df28be1de1206928fb6f9b87f101c"],["/react/build/static/js/125.560653d8.chunk.js","ca108fcfcd2628843281a536599f8521"],["/react/build/static/js/126.5b4b30b5.chunk.js","e12c926247812be6e4dbbfda36bfacae"],["/react/build/static/js/127.b6a8b1a7.chunk.js","270e56fae657c9bda155eeab4f908b88"],["/react/build/static/js/128.b1bf0bdf.chunk.js","1b4dd4fac27fb53568324b699a9e919e"],["/react/build/static/js/129.ef210f1a.chunk.js","a6db4c878df349166f551a63fd128c4c"],["/react/build/static/js/13.990846dc.chunk.js","f2954a236b3bab978e7bfb46c668ad4c"],["/react/build/static/js/130.67a82f0e.chunk.js","c1a6d0f7446d20d52d827a3261ec3583"],["/react/build/static/js/131.a8160b14.chunk.js","f396b9ba5ea75a48da1ae661399ebfa6"],["/react/build/static/js/132.5ab77e1a.chunk.js","3de305af61a5cb5db71f47292cca9c9d"],["/react/build/static/js/133.075af754.chunk.js","998cb665626bea73bc9ed5544eaf516d"],["/react/build/static/js/134.9dd710de.chunk.js","c2d9d30aacd91cf5164042149c88a5b0"],["/react/build/static/js/135.4b86cf18.chunk.js","e4707c895161384150b6e7ed6e350526"],["/react/build/static/js/136.cf2048d3.chunk.js","ce5970d37a93d903b16c7f6fa01b7354"],["/react/build/static/js/137.519b1fae.chunk.js","54e6198feea9913637e865fe608f9396"],["/react/build/static/js/138.d0f47d99.chunk.js","d37a70533ec08639de5826ae137a46d1"],["/react/build/static/js/139.01acc4e5.chunk.js","2c69c7aecb0968233b42335611cd364d"],["/react/build/static/js/14.7d6e2979.chunk.js","62c17c06ff347c2f46998fcbcb9bc972"],["/react/build/static/js/140.98306c4c.chunk.js","8423c82c1641b999bcb99fc2eb85ff99"],["/react/build/static/js/141.d797c9b5.chunk.js","ab07c447bb8c26c2905a74ea82f92982"],["/react/build/static/js/142.34e9e576.chunk.js","7d2fc4df295316b423ca49d10d66516d"],["/react/build/static/js/143.7b7efa1a.chunk.js","a40eec75cfcf53472d76ba86ca9f42e0"],["/react/build/static/js/144.3e70ec35.chunk.js","bb83e05c526fd0ab2146b0fe33761ce3"],["/react/build/static/js/145.b7463ed3.chunk.js","cf7b394cc3c4d0508133eda42636c360"],["/react/build/static/js/146.2b0e3278.chunk.js","e2d86ebbdc48d512aafb98d3ee5eba45"],["/react/build/static/js/147.15fde8e8.chunk.js","ed514764802f48b8fdca68801ab61868"],["/react/build/static/js/148.86c257c0.chunk.js","68106f49c43db2c84b71f0c84fd2ff09"],["/react/build/static/js/149.3ed3fad6.chunk.js","5bb39c7409f5e6706568cfed23a5c790"],["/react/build/static/js/15.3876acdb.chunk.js","10ed6f677c6fddb9a63d4c84594a9dbf"],["/react/build/static/js/150.4e4cff38.chunk.js","9734bfd71971d6747cc2ae9a6ea83425"],["/react/build/static/js/151.92a34418.chunk.js","2e5f920cc029c2c3f3a509d6a2249c56"],["/react/build/static/js/152.4593e125.chunk.js","19df2552830dca7bb64098079207ac8e"],["/react/build/static/js/153.011280d9.chunk.js","1dd187ff37145bcfbc880561c7bee989"],["/react/build/static/js/154.4a57bba7.chunk.js","845ec563dbd7f1ccc6b7b5afab2dc4cb"],["/react/build/static/js/155.ef327b42.chunk.js","2c6230cf9b3c3cbf631e6bd4d5a55a76"],["/react/build/static/js/156.c21981c6.chunk.js","728a1034dd8275022ab98b9e4119207b"],["/react/build/static/js/157.bab5f3ed.chunk.js","9cfd3f57119315c70a110faf327597c9"],["/react/build/static/js/158.e05e5ea0.chunk.js","a7f92cac88e2893e56cc21636aff5baf"],["/react/build/static/js/159.95ed7a8f.chunk.js","f40fc515b8ecf54d8b7595a024954184"],["/react/build/static/js/16.c23b61ce.chunk.js","5e0bbb1a90814ae368195a29c47ba7f1"],["/react/build/static/js/160.da4c509c.chunk.js","aa0069b4cb7924258d39c4778ea5ec09"],["/react/build/static/js/161.46d4f5e2.chunk.js","fe7b7f029c1584d40b6e343734f04605"],["/react/build/static/js/162.af296485.chunk.js","7b2475d05f616c84a4589722e1cb6aee"],["/react/build/static/js/163.8a55c680.chunk.js","96cdaa97fb866431eb36de95209295a3"],["/react/build/static/js/164.982f968c.chunk.js","b5d3b92215fda508da03c4dbd45f1715"],["/react/build/static/js/165.d048e040.chunk.js","dbcfdd9a933d9bc9def3949bab8b71e6"],["/react/build/static/js/166.c29e4695.chunk.js","f0565de66a51ac938a477f4c8e2f4c1c"],["/react/build/static/js/167.f2c4016d.chunk.js","6eaf994c40e602f6f07688332aea4150"],["/react/build/static/js/168.911e1758.chunk.js","4100b3e4d9641be05ec65cd4d313d003"],["/react/build/static/js/169.91cb36dd.chunk.js","7a87eab92959ea8e0b3163781ba768fc"],["/react/build/static/js/17.81f9c158.chunk.js","94b9538320089753b8fe7df3282a3b17"],["/react/build/static/js/170.5ff8a01e.chunk.js","27e5eb4a0d463692a11860af7fe6ee3e"],["/react/build/static/js/171.2954ff2e.chunk.js","b22b67f03b59f72553254b4360579808"],["/react/build/static/js/172.dd67868a.chunk.js","a87b435879cec0490fbbce2e7847ef5e"],["/react/build/static/js/173.0ea8374a.chunk.js","87376a025da9a4c2d607b77de6fccff3"],["/react/build/static/js/174.b60de8cd.chunk.js","cc27f87db4a20d688707b94b58ae798c"],["/react/build/static/js/175.a12cef73.chunk.js","1c932f24233af567501828c44a945e63"],["/react/build/static/js/176.7afdf2bd.chunk.js","3d02ce1971094e67ad034ee37caaee6d"],["/react/build/static/js/177.9fc758cc.chunk.js","0e833c504d54d96683a72eee448f46a3"],["/react/build/static/js/178.598b817d.chunk.js","dc6428df2dd66a8fa2551248001930a6"],["/react/build/static/js/179.95ba6e62.chunk.js","de851e235290bf64cf7ca05bb4ebb2df"],["/react/build/static/js/18.2d02184b.chunk.js","53d9305088ad2854f153eb1757572e3d"],["/react/build/static/js/180.d751ff7e.chunk.js","183c67d25e3274ef4ecd1fee4c964250"],["/react/build/static/js/181.852b6409.chunk.js","665232e77311a81133537de9c77462c7"],["/react/build/static/js/182.498fcaaf.chunk.js","3f89a5b55c753095f8702de0eb32a443"],["/react/build/static/js/183.91cb21f9.chunk.js","a3149b1b0b5a80936ee53f0140fa6a47"],["/react/build/static/js/184.a9da3302.chunk.js","e6c354ec4a94e85e1ddb5f793bed0cff"],["/react/build/static/js/185.70943773.chunk.js","9b02025bc5c6efff129025f3db74530b"],["/react/build/static/js/186.259f1940.chunk.js","a6e06e9e59d9350e25beef9625ad0bf6"],["/react/build/static/js/187.aadc6528.chunk.js","21d18e4bda99a8b519fad5ed33187551"],["/react/build/static/js/188.5bf3181c.chunk.js","2795a9b8c1c4ca06792a297f52a8c794"],["/react/build/static/js/189.3e8d523d.chunk.js","dc546e486c0f0865d4b02598d515191c"],["/react/build/static/js/19.37fb291a.chunk.js","386e909d2438ecd49c44afc3deea6870"],["/react/build/static/js/190.cb251023.chunk.js","bc9708ecbaa78e0609f7c89f3b6af420"],["/react/build/static/js/191.6d0ffeac.chunk.js","a1d73da756642472abb427c12605a675"],["/react/build/static/js/192.f4f11544.chunk.js","529bf53fa9f6f30561c9d87fa2411714"],["/react/build/static/js/193.2c7023c8.chunk.js","ca9f5e9aaf0cd45af981711c3e47b614"],["/react/build/static/js/194.db7b2b3e.chunk.js","fffb7446afd52c2bbd37de54855c6276"],["/react/build/static/js/195.9e8d176d.chunk.js","12ffff550d8b5ac400ac15cefb5c9c68"],["/react/build/static/js/196.b83b067f.chunk.js","557ef4835bd321fc80714d2b369d6ca0"],["/react/build/static/js/197.2ffb8601.chunk.js","4d9298ffc0c01abf862f4933a12cddad"],["/react/build/static/js/198.0c33c032.chunk.js","d64f2833e72db45d218e08be71dbfa36"],["/react/build/static/js/199.34829465.chunk.js","af64cb3b9bb8d41dd3631389f9fac371"],["/react/build/static/js/20.2fa950b8.chunk.js","681a640a85997ba40eb1d30249949fdf"],["/react/build/static/js/200.8b1166c5.chunk.js","772651cfdca5d0ca4b6686c49a60aea0"],["/react/build/static/js/201.37c03cc0.chunk.js","660e74f41a8e29e0e8165753a1d0e2e6"],["/react/build/static/js/202.945755f1.chunk.js","6e4c9151033c31332d43f1294f868743"],["/react/build/static/js/203.a734c359.chunk.js","29d2132c90032b132a4d3309529c6a49"],["/react/build/static/js/204.6429b924.chunk.js","7d8ce76c380850137a060cdacbc294ad"],["/react/build/static/js/205.eddca23b.chunk.js","b6c70c1086a4abde1bdffd51d743d642"],["/react/build/static/js/206.f9980246.chunk.js","f93a64a27faa75a232aaf27fd890cb0b"],["/react/build/static/js/207.73a45ef3.chunk.js","20b6ccdbbb204f83b30785f583b2d44d"],["/react/build/static/js/208.75e3af6e.chunk.js","cfcc12401389af6eda8bcd0fe7eeaa97"],["/react/build/static/js/209.ed67395c.chunk.js","1f71db7d30f3b52cc3b1f0fc41f0bf3f"],["/react/build/static/js/21.5ca2f01d.chunk.js","451e9beca34f089221d1edc6c7842cca"],["/react/build/static/js/210.5f3ee5e7.chunk.js","9ecae18b2298576b2bce86a27b7b4495"],["/react/build/static/js/211.8052e6e0.chunk.js","ff5adb802e98c0c91f6d6556557ec90d"],["/react/build/static/js/212.2053e6eb.chunk.js","52fec02b316ea61c6ad7be3f3cbd8f53"],["/react/build/static/js/213.1eb604df.chunk.js","699e4567c7108f09553a5c915ad8a184"],["/react/build/static/js/214.8d61899f.chunk.js","c578df029bc81c357b6ec44999a235bd"],["/react/build/static/js/215.e908bafe.chunk.js","1bc726175f0f8da5aff669ec22d7b738"],["/react/build/static/js/216.2912e53c.chunk.js","7d3455ecb780c91d8f364dee15b48bee"],["/react/build/static/js/217.6e78ee99.chunk.js","2cb277ff79ac1770bfe98ca067656fbe"],["/react/build/static/js/218.264d074e.chunk.js","4035ecea580c0c3d938563c5f5f2197c"],["/react/build/static/js/219.13d1cc59.chunk.js","e4a7df1b6b18f770bc196d0ad11f1fad"],["/react/build/static/js/22.ca2db867.chunk.js","1552b827bffed283deac0845ced5565d"],["/react/build/static/js/220.e0b489fa.chunk.js","5f6acfb46b265c11ca147d2b158bbd76"],["/react/build/static/js/221.9ad9f9a8.chunk.js","b00ab08bc0ca136cb2659fd71868bd00"],["/react/build/static/js/222.2c4c1c92.chunk.js","d3fb09429541b211ae2ce456ed6c3a93"],["/react/build/static/js/223.304a9f02.chunk.js","e96a7048613ff4bef739dc8556865016"],["/react/build/static/js/224.e168e619.chunk.js","cd23c164394eb4ce369b2944124c1f68"],["/react/build/static/js/225.507c2465.chunk.js","baa7b28c7f217fba08579307552ac27d"],["/react/build/static/js/226.c23bccae.chunk.js","e17b206551acb799190609170e423ce9"],["/react/build/static/js/227.21d64eb9.chunk.js","e557083c1bcacf51e9409d245c374b4e"],["/react/build/static/js/228.2a025b60.chunk.js","2fb432ffe7670c1998500cd6db757b6a"],["/react/build/static/js/229.4242f403.chunk.js","6594e1abcf5aef968fba07a2fdb15afa"],["/react/build/static/js/23.e41cf074.chunk.js","c38726479310eddf2c07555470d65a09"],["/react/build/static/js/230.da9e730f.chunk.js","d59b65ca4288dd167c367bce1e4439a8"],["/react/build/static/js/231.118c712c.chunk.js","7a3fd45a97d085be4d77d9c53d4677d8"],["/react/build/static/js/232.6617a37b.chunk.js","74f29c5c9f2b05747494b3685eb31e6b"],["/react/build/static/js/233.f50616f5.chunk.js","4f578234115723bcce2962667bdb1e01"],["/react/build/static/js/234.c5b463ee.chunk.js","7435dd81151fe96cc161710e7d0aa4bb"],["/react/build/static/js/235.d03eb508.chunk.js","c3ff65a10085501e111805c28ba0242b"],["/react/build/static/js/236.5c215786.chunk.js","7f177b24f4e227ee1951ec36f0aa46d5"],["/react/build/static/js/237.ccda38c2.chunk.js","b47ed8aa063f55d95dfd111913ca6b38"],["/react/build/static/js/238.9e89a84c.chunk.js","17688e0fd113278bffb41ffa9a1d6db5"],["/react/build/static/js/239.ea6230c9.chunk.js","440e0fa590226ed85421d01794162cc9"],["/react/build/static/js/24.7d5a39b5.chunk.js","6f85951af2e1ae1c43866653826f7d30"],["/react/build/static/js/240.63008401.chunk.js","7bf71d5f9ced13623230a066a89c3c4d"],["/react/build/static/js/241.dc21b366.chunk.js","e1848c27a2f75b4af542071884b5a7bd"],["/react/build/static/js/242.55e6fdcf.chunk.js","ba53a7af49dfffef63a9213183d9d42a"],["/react/build/static/js/243.4cbf99c4.chunk.js","5eb12bf9461e7c204aa29870adc8ccac"],["/react/build/static/js/244.4fdcc95b.chunk.js","af3d14357e801eb99cd7015014e172b4"],["/react/build/static/js/245.90fc74fc.chunk.js","cc9e9186a7576c0906758bcdc8938734"],["/react/build/static/js/246.2f2de6ef.chunk.js","02ba7ee82a9628697a964c04f8fee560"],["/react/build/static/js/247.69ed510f.chunk.js","669d8eb5f5efa17bb5371350f79b5d9c"],["/react/build/static/js/248.92f7e083.chunk.js","d7421ab00b8aa83bac9ff7f651755f17"],["/react/build/static/js/249.5cdf6b65.chunk.js","9f91d7031a69b4f18bc5892d0eb58b3b"],["/react/build/static/js/25.f9bbc751.chunk.js","667bda96f9728f97f1e23b99fc4f781c"],["/react/build/static/js/250.39ae6de5.chunk.js","2ee35f25bf3c1e21d433c5dba12b891b"],["/react/build/static/js/251.5a52a60b.chunk.js","c32ff8d1367a938fd92530d0c0a646b5"],["/react/build/static/js/252.e501891e.chunk.js","84c693802259ff8559c45b679ee90643"],["/react/build/static/js/253.cf94cbfb.chunk.js","74aa612abf4db9b13d13267be1e588d2"],["/react/build/static/js/254.d75f8724.chunk.js","db00bcf437eb2dd30b0206364d5480c6"],["/react/build/static/js/255.63b9163f.chunk.js","e7d930cb020c6be389e28fbb99d77a9c"],["/react/build/static/js/256.083172d5.chunk.js","1315da8ec40f8ac136dae1c48d05b7f8"],["/react/build/static/js/257.4bc986ca.chunk.js","6c6d0055eee43d2eea5bcab78b1a0f30"],["/react/build/static/js/258.1a2ce091.chunk.js","3f53c821b9d295333e2ca7d9ad4404c6"],["/react/build/static/js/259.3ad7d88c.chunk.js","45f52e2b47075307e87be221cec35607"],["/react/build/static/js/26.a4be29ad.chunk.js","6a839bec0e62077cb1f0f0efac4ee1d8"],["/react/build/static/js/260.8a42c43a.chunk.js","21a22a0428e2b9b277be12a3faaee3d4"],["/react/build/static/js/261.dd7fb199.chunk.js","31db76ca3f3e0a6638ade1763cd9bce8"],["/react/build/static/js/262.d22df094.chunk.js","cbff7a8297042af625998b52a2561568"],["/react/build/static/js/263.e62396e4.chunk.js","c30308be09d60e771ebff099f0c68953"],["/react/build/static/js/264.d0b8a362.chunk.js","4ec2545e53a569c8f03b1304b9e049fa"],["/react/build/static/js/265.c7bfffc3.chunk.js","8682646d3f3175bce13566540cb73f62"],["/react/build/static/js/266.81de26e1.chunk.js","178746ce0184be687275d3cb544c7b4c"],["/react/build/static/js/267.c0f91f47.chunk.js","2821f3387d9947b8b0fc748869d51cfe"],["/react/build/static/js/268.43fd5a09.chunk.js","4f65e00fec9f88d50071a132104b94f7"],["/react/build/static/js/269.a562e125.chunk.js","00ed71bcbd3871da92c2acf2187e4daf"],["/react/build/static/js/27.e115b503.chunk.js","532e04f9533fdb75cead536f59f2bcb7"],["/react/build/static/js/270.8749c211.chunk.js","555490c0431364f4a8069378b3ac432c"],["/react/build/static/js/271.d3944971.chunk.js","ea5dbd33c29e3c8b167c41a386bb9920"],["/react/build/static/js/272.211d2fe5.chunk.js","bf18da2a30b91ef1f14bd5cf1ff9ea32"],["/react/build/static/js/273.a868411a.chunk.js","1ca3fe4d68e3e3a4b143afbac627d845"],["/react/build/static/js/274.681fe1ef.chunk.js","4b2505a71ef26d38ef29a11564e607d2"],["/react/build/static/js/275.11a4e806.chunk.js","1459b73b015cee7d0539828d2b8ee7a7"],["/react/build/static/js/276.9c577419.chunk.js","de5644af20eef1d73bde6a7c1bafebef"],["/react/build/static/js/277.dbac6a23.chunk.js","8dde1879dd7c19462de95179ee46216f"],["/react/build/static/js/278.61ea2bf7.chunk.js","4e66b9437411311455ada184b3907a04"],["/react/build/static/js/279.0aa66312.chunk.js","495c62f97b68a0a00352f92cbe98be2a"],["/react/build/static/js/28.b53924f5.chunk.js","3740a7988f3eccf24447acc6e331bd20"],["/react/build/static/js/280.79255039.chunk.js","7991fae015c6fe6afbcd2c6354c00f40"],["/react/build/static/js/281.b86b8320.chunk.js","909e4fd0611973be1cbbf47bc08d81d8"],["/react/build/static/js/29.91e0693f.chunk.js","8c3f3f9c62003be5452b7aa68d8e7a4b"],["/react/build/static/js/30.c5d9bf11.chunk.js","0ab1d1571c3ff2e2ff19482eb8f3a587"],["/react/build/static/js/31.2ffe8780.chunk.js","0ae70cea971ce881beb1ce7040e54f9b"],["/react/build/static/js/32.7b22a5d9.chunk.js","28b6c720ef158af76bcf3f6578749b65"],["/react/build/static/js/33.46de988f.chunk.js","dd3dc67e9eeed67549ba270c4ee5095d"],["/react/build/static/js/34.418bda3b.chunk.js","6acda122171c07f597f5d39e766bdde1"],["/react/build/static/js/35.982fd29e.chunk.js","ffdbd2b85e2b3d40ec8a9a4516711cab"],["/react/build/static/js/36.1da0683b.chunk.js","ca12ac2b8137518f553d438d9d1d50f9"],["/react/build/static/js/37.07f137dc.chunk.js","8e5c52d0e10a18690e11eaf0124ac263"],["/react/build/static/js/38.594f6b35.chunk.js","6e992649b82d5d92073a5d61fbacaf22"],["/react/build/static/js/39.e9c744c8.chunk.js","a6a53f4d3117e2444c655d8d8926b01c"],["/react/build/static/js/40.f7b0bef5.chunk.js","d0f41d9e3db25c3a2b22fce08c851069"],["/react/build/static/js/41.0a29b2f2.chunk.js","2a1faf1c276a6bd37adc21a22e2ee97d"],["/react/build/static/js/42.1750d052.chunk.js","7810e53d889a39efacb5f0e65ef5feb1"],["/react/build/static/js/43.dd9b393c.chunk.js","aec588ba9da88d0c784314634a4d4757"],["/react/build/static/js/44.b4ed1492.chunk.js","59dc02893dd3b04e48e2dc429bd46678"],["/react/build/static/js/45.df4fc2e5.chunk.js","b566b968e6f47aad546d8aed6353633c"],["/react/build/static/js/46.42aa0818.chunk.js","23330031d63fcf95e5f6067ca713e2ba"],["/react/build/static/js/47.c0c7ba98.chunk.js","3819023247a6408926f4d5aa4ca8d4fb"],["/react/build/static/js/48.b1f34bab.chunk.js","3f126dad38f5efad38c294d784211722"],["/react/build/static/js/49.6357f85c.chunk.js","32b261a7a98280de3ca4f2de6d99241e"],["/react/build/static/js/50.5fd49186.chunk.js","464aa9849159fac094ee17a663abe04f"],["/react/build/static/js/51.1adc38f8.chunk.js","4fd0762b4c78e14bdb6ce555c4727d3d"],["/react/build/static/js/52.fea8bece.chunk.js","141b2199ce46b8cf12be68036b4ec84c"],["/react/build/static/js/53.9152167d.chunk.js","bd5527a4675a395ddb239210711c56dc"],["/react/build/static/js/54.302a2f5e.chunk.js","6796209a80fdb3b114aadbc175cce33d"],["/react/build/static/js/55.8fa379c1.chunk.js","7eb0726e262b220e8b5a8ddb7da3628d"],["/react/build/static/js/56.ecfd0d2c.chunk.js","54352aa054096d345b020b9878e74b9a"],["/react/build/static/js/57.d289073a.chunk.js","b5d997fbc158ef475fc1b05f8e6d5ba2"],["/react/build/static/js/58.73fa7712.chunk.js","27d1fbc7c6d86e5e3f012677e7ce5708"],["/react/build/static/js/59.d934b58f.chunk.js","6ab1fa8c39f60c288a3cf07d6d1ef915"],["/react/build/static/js/65.7fd312e5.chunk.js","a82950dcc734dc91d3165d80af2d6bec"],["/react/build/static/js/66.ba2631e8.chunk.js","b8401645e7555b58fd0fe8c5cfb1a8c7"],["/react/build/static/js/70.c8ba503f.chunk.js","bb867e69c882e1ad72b7d7de1401193e"],["/react/build/static/js/71.5effdcde.chunk.js","bcee1e644e7dcb51afb017c3471534d9"],["/react/build/static/js/72.e4fc7f56.chunk.js","43e266cdf175887b1c437489d08bb76e"],["/react/build/static/js/73.03a9b794.chunk.js","159806190b373ff2865f23efce9ad7ed"],["/react/build/static/js/80.c2cffa37.chunk.js","90758acbf18e26eaf7d0a596ccebfd6d"],["/react/build/static/js/81.5d2e8727.chunk.js","cc8af37ac8b6c29dc1b47bf5e58e8ddf"],["/react/build/static/js/82.f6eb6498.chunk.js","b6beacfaced80dd9ac78909ffd138139"],["/react/build/static/js/83.dc8d1643.chunk.js","99da2d523098fbbc42570b3ea57edcd7"],["/react/build/static/js/84.2d6ecfd5.chunk.js","db19b34b2fbe197c91a993d122001eb6"],["/react/build/static/js/86.301d5b0d.chunk.js","fffebbdc49991b84eb4cfcbd8e18661a"],["/react/build/static/js/87.6a23c5ff.chunk.js","a9b932bf4b9bcb99a5599140c36f3114"],["/react/build/static/js/88.4371281c.chunk.js","b90730df83a98a9d4c9fd0e7e6fd1d4f"],["/react/build/static/js/89.e89f3e08.chunk.js","0f968d4b1ff1ab6f9b1decf8f5154b15"],["/react/build/static/js/90.7ed431d9.chunk.js","bc1f2788d8473559cf984a5ca9585d78"],["/react/build/static/js/92.10b6c63e.chunk.js","62a85a7ae6890fd4d9e74091bf80d15c"],["/react/build/static/js/93.3b7a5d2e.chunk.js","7b157fd85dc9d27c5167b3d546a46c1c"],["/react/build/static/js/94.76cdd423.chunk.js","0648debafbe22c4b6c6af394113ad389"],["/react/build/static/js/95.0f97d9ca.chunk.js","c7af9a2719351517333eeab9555f7f09"],["/react/build/static/js/96.8e3f396b.chunk.js","249f1153809747d78baabf3a476e5d21"],["/react/build/static/js/98.e196cdfc.chunk.js","68a1d85974c1d6715fe9d68fdb43e34d"],["/react/build/static/js/99.2d19140c.chunk.js","df6b65786b8b5256736af2dbf50878bd"],["/react/build/static/media/KaTeX_AMS-Regular.7f06b4e3.woff","7f06b4e30317f784d61d26686aed0ab2"],["/react/build/static/media/KaTeX_AMS-Regular.aaf4eee9.ttf","aaf4eee9fba9907d61c3935e0b6a54ae"],["/react/build/static/media/KaTeX_AMS-Regular.e78e28b4.woff2","e78e28b4834954df047e4925e9dbf354"],["/react/build/static/media/KaTeX_Caligraphic-Bold.021dd4dc.ttf","021dd4dc61ee5f5cdf315f43b48c094b"],["/react/build/static/media/KaTeX_Caligraphic-Bold.1e802ca9.woff","1e802ca9dedc4ed4e3c6f645e4316128"],["/react/build/static/media/KaTeX_Caligraphic-Bold.4ec58bef.woff2","4ec58befa687e9752c3c91cd9bcf1bcb"],["/react/build/static/media/KaTeX_Caligraphic-Regular.7edb53b6.woff2","7edb53b6693d75b8a2232481eea1a52c"],["/react/build/static/media/KaTeX_Caligraphic-Regular.d3b46c3a.woff","d3b46c3a530116933081d9d74e3e9fe8"],["/react/build/static/media/KaTeX_Caligraphic-Regular.d49f2d55.ttf","d49f2d55ce4f40f982d8ba63d746fbf9"],["/react/build/static/media/KaTeX_Fraktur-Bold.a31e7cba.ttf","a31e7cba7b7221ebf1a2ae545fb306b2"],["/react/build/static/media/KaTeX_Fraktur-Bold.c4c8cab7.woff","c4c8cab7d5be97b2bb283e531c077355"],["/react/build/static/media/KaTeX_Fraktur-Bold.d5b59ec9.woff2","d5b59ec9764e10f4a82369ae29f3ac58"],["/react/build/static/media/KaTeX_Fraktur-Regular.32a5339e.woff2","32a5339eb809f381a7357ba56f82aab3"],["/react/build/static/media/KaTeX_Fraktur-Regular.a48dad4f.ttf","a48dad4f58c82e38a10da0ceebb86370"],["/react/build/static/media/KaTeX_Fraktur-Regular.b7d9c46b.woff","b7d9c46bff5d51da6209e355cc4a235d"],["/react/build/static/media/KaTeX_Main-Bold.22086eb5.woff","22086eb5d97009c3e99bcc1d16ce6865"],["/react/build/static/media/KaTeX_Main-Bold.8e1e01c4.woff2","8e1e01c4b1207c0a383d9a2b4f86e637"],["/react/build/static/media/KaTeX_Main-Bold.9ceff51b.ttf","9ceff51b3cb7ce6eb4e8efa8163a1472"],["/react/build/static/media/KaTeX_Main-BoldItalic.284a17fe.woff2","284a17fe5baf72ff8217d4c7e70c0f82"],["/react/build/static/media/KaTeX_Main-BoldItalic.4c57dbc4.woff","4c57dbc44bfff1fdf08a59cf556fdab3"],["/react/build/static/media/KaTeX_Main-BoldItalic.e8b44b99.ttf","e8b44b990516dab7937bf240fde8b46a"],["/react/build/static/media/KaTeX_Main-Italic.29c86397.ttf","29c86397e75cdcb3135af8295f1c2e28"],["/react/build/static/media/KaTeX_Main-Italic.99be0e10.woff","99be0e10c38cd42466e6fe1665ef9536"],["/react/build/static/media/KaTeX_Main-Italic.e533d5a2.woff2","e533d5a2506cf053cd671b335ec04dde"],["/react/build/static/media/KaTeX_Main-Regular.5c734d78.woff2","5c734d78610fa35282f3379f866707f2"],["/react/build/static/media/KaTeX_Main-Regular.5c94aef4.ttf","5c94aef490324b0925dbe5f643e8fd04"],["/react/build/static/media/KaTeX_Main-Regular.b741441f.woff","b741441f6d71014d0453ca3ebc884dd4"],["/react/build/static/media/KaTeX_Math-BoldItalic.9a2834a9.ttf","9a2834a9ff8ab411153571e0e55ac693"],["/react/build/static/media/KaTeX_Math-BoldItalic.b13731ef.woff","b13731ef4e2bfc3d8d859271e39550fc"],["/react/build/static/media/KaTeX_Math-BoldItalic.d747bd1e.woff2","d747bd1e7a6a43864285edd73dcde253"],["/react/build/static/media/KaTeX_Math-Italic.291e76b8.ttf","291e76b8871b84560701bd29f9d1dcc7"],["/react/build/static/media/KaTeX_Math-Italic.4ad08b82.woff2","4ad08b826b8065e1eab85324d726538c"],["/react/build/static/media/KaTeX_Math-Italic.f0303906.woff","f0303906c2a67ac63bf1e8ccd638a89e"],["/react/build/static/media/KaTeX_SansSerif-Bold.3fb41955.woff","3fb419559955e3ce75619f1a5e8c6c84"],["/react/build/static/media/KaTeX_SansSerif-Bold.6e0830be.woff2","6e0830bee40435e72165345e0682fbfc"],["/react/build/static/media/KaTeX_SansSerif-Bold.7dc027cb.ttf","7dc027cba9f7b11ec92af4a311372a85"],["/react/build/static/media/KaTeX_SansSerif-Italic.4059868e.ttf","4059868e460d2d2e6be18e180d20c43d"],["/react/build/static/media/KaTeX_SansSerif-Italic.727a9b0d.woff","727a9b0d97d72d2fc0228fe4e07fb4d8"],["/react/build/static/media/KaTeX_SansSerif-Italic.fba01c9c.woff2","fba01c9c6fb2866a0f95bcacb2c187a5"],["/react/build/static/media/KaTeX_SansSerif-Regular.2555754a.woff","2555754a67062cac3a0913b715ab982f"],["/react/build/static/media/KaTeX_SansSerif-Regular.5c58d168.ttf","5c58d168c0b66d2c32234a6718e74dfb"],["/react/build/static/media/KaTeX_SansSerif-Regular.d929cd67.woff2","d929cd671b19f0cfea55b6200fb47461"],["/react/build/static/media/KaTeX_Script-Regular.755e2491.woff2","755e2491f13b5269f0afd5a56f7aa692"],["/react/build/static/media/KaTeX_Script-Regular.d12ea9ef.ttf","d12ea9efb375f9dc331f562e69892638"],["/react/build/static/media/KaTeX_Script-Regular.d524c9a5.woff","d524c9a5b62a17f98f4a97af37fea735"],["/react/build/static/media/KaTeX_Size1-Regular.048c39cb.woff2","048c39cba4dfb0460682a45e84548e4b"],["/react/build/static/media/KaTeX_Size1-Regular.08b5f00e.woff","08b5f00e7140f7a10e62c8e2484dfa5a"],["/react/build/static/media/KaTeX_Size1-Regular.7342d45b.ttf","7342d45b052c3a2abc21049959fbab7f"],["/react/build/static/media/KaTeX_Size2-Regular.81d6b8d5.woff2","81d6b8d5ca77d63d5033d6991549a659"],["/react/build/static/media/KaTeX_Size2-Regular.af24b0e4.woff","af24b0e4b7e52656ca77914695c99930"],["/react/build/static/media/KaTeX_Size2-Regular.eb130dcc.ttf","eb130dcc661de766c999c60ba1525a88"],["/react/build/static/media/KaTeX_Size3-Regular.0d892640.woff","0d8926405d832a4b065e516bd385d812"],["/react/build/static/media/KaTeX_Size3-Regular.7e02a40c.ttf","7e02a40c41e52dc3b2b6b197bbdf05ea"],["/react/build/static/media/KaTeX_Size3-Regular.b311ca09.woff2","b311ca09df2c89a10fbb914b5a053805"],["/react/build/static/media/KaTeX_Size4-Regular.68895bb8.woff","68895bb880a61a7fc019dbfaa5121bb4"],["/react/build/static/media/KaTeX_Size4-Regular.6a3255df.woff2","6a3255dfc1ba41c46e7e807f8ab16c49"],["/react/build/static/media/KaTeX_Size4-Regular.ad767252.ttf","ad7672524b64b730dfd176140a8945cb"],["/react/build/static/media/KaTeX_Typewriter-Regular.25702356.ttf","257023560753aeb0b89b7e434d3da17f"],["/react/build/static/media/KaTeX_Typewriter-Regular.3fe216d2.woff","3fe216d2a5f736c560cde71984554b64"],["/react/build/static/media/KaTeX_Typewriter-Regular.6cc31ea5.woff2","6cc31ea5c223c88705a13727a71417fa"],["/react/build/static/media/auth.43f1c749.png","43f1c7490f28c59e28637c7db9318878"],["/react/build/static/media/banner_list.ad510bee.png","ad510bee30a694aaedd0e2a96442ffe4"],["/react/build/static/media/banner_sub.c6034810.png","c6034810c9bd0d58dfee1ccf66f2b592"],["/react/build/static/media/beian.d0289dc0.png","d0289dc0a46fc5b15b3363ffa78cf6c7"],["/react/build/static/media/beijintulogontwo.245dc9e1.png","245dc9e1ed09d34f605c2d5799ee3327"],["/react/build/static/media/bg.88a774b5.jpg","88a774b50bcc4fcb43abbe7ca5d34886"],["/react/build/static/media/douyu.e5ea5a90.jpg","e5ea5a904483e1c25f47a090e83319ed"],["/react/build/static/media/firefox_icon.cfd87a8f.png","cfd87a8f62ae37a34dab9f4b5c79b168"],["/react/build/static/media/guihome1.eca5276e.png","eca5276e17b07d59b37f161cf1ab7b3a"],["/react/build/static/media/guihome2.c65f40bf.jpg","c65f40bff07ed7c4e1d9abca9d77358c"],["/react/build/static/media/guihome3.0e1dc34b.jpg","0e1dc34b920481e8bc1bb1954eada1f1"],["/react/build/static/media/guihome4.6cc0d72b.jpg","6cc0d72b6f3f8cf8dedce533b9083810"],["/react/build/static/media/guihome5.1ac2c872.jpg","1ac2c8722fe3be81805dcc16df845ffb"],["/react/build/static/media/guihome6.7fc4fe9d.jpg","7fc4fe9d191f769592826b692fbf0560"],["/react/build/static/media/internet-explorer@2x.f122e0ab.png","f122e0abfbe49c051dba0e2d7f3d00f5"],["/react/build/static/media/job.b2881c7d.png","b2881c7d0317f7109101f3db1bcae775"],["/react/build/static/media/logo.c72d4a3b.svg","c72d4a3ba95e0b700fae9febca0e3200"],["/react/build/static/media/match_ad.4e957369.jpg","4e957369790f079662eb2dca03ece6be"],["/react/build/static/media/message.e7922cf2.svg","e7922cf2a56f9b54e44709e40626460b"],["/react/build/static/media/messagegrey.80d0b058.svg","80d0b0580c10b5e7fc571c3064a991c5"],["/react/build/static/media/mytc.4ef5faf4.png","4ef5faf4ec6fdee6a4909d34b9a1a171"],["/react/build/static/media/oj_banner.25ca233e.jpg","25ca233e22299a2a1e2f577eed32e745"],["/react/build/static/media/passall.46817e26.png","46817e2696bbb2ac4bf0e5bc4e8b101e"],["/react/build/static/media/passpart.4aaf3e6b.png","4aaf3e6b4667dc531eee7f4e5f807d70"],["/react/build/static/media/rc-tree.776c7fe6.png","776c7fe67df0637005b1a1372066ed84"],["/react/build/static/media/skzbdx.01cb5862.png","01cb58627ee7981e0bcb65c8467d4975"],["/react/build/static/media/teach_ex.a415d7a9.jpg","a415d7a9bbc72fe5d3aafd002181cc09"]],cacheName="sw-precache-v3-sw-precache-webpack-plugin-"+(self.registration?self.registration.scope:""),ignoreUrlParametersMatching=[/^utm_/],addDirectoryIndex=function(c,a){var e=new URL(c);return"/"===e.pathname.slice(-1)&&(e.pathname+=a),e.toString()},cleanResponse=function(a){return a.redirected?("body"in a?Promise.resolve(a.body):a.blob()).then(function(c){return new Response(c,{headers:a.headers,status:a.status,statusText:a.statusText})}):Promise.resolve(a)},createCacheKey=function(c,a,e,d){var t=new URL(c);return d&&t.pathname.match(d)||(t.search+=(t.search?"&":"")+encodeURIComponent(a)+"="+encodeURIComponent(e)),t.toString()},isPathWhitelisted=function(c,a){if(0===c.length)return!0;var e=new URL(a).pathname;return c.some(function(c){return e.match(c)})},stripIgnoredUrlParameters=function(c,e){var a=new URL(c);return a.hash="",a.search=a.search.slice(1).split("&").map(function(c){return c.split("=")}).filter(function(a){return e.every(function(c){return!c.test(a[0])})}).map(function(c){return c.join("=")}).join("&"),a.toString()},hashParamName="_sw-precache",urlsToCacheKeys=new Map(precacheConfig.map(function(c){var a=c[0],e=c[1],d=new URL(a,self.location),t=createCacheKey(d,hashParamName,e,/\.\w{8}\./);return[d.toString(),t]}));function setOfCachedUrls(c){return c.keys().then(function(c){return c.map(function(c){return c.url})}).then(function(c){return new Set(c)})}self.addEventListener("install",function(c){c.waitUntil(caches.open(cacheName).then(function(d){return setOfCachedUrls(d).then(function(e){return Promise.all(Array.from(urlsToCacheKeys.values()).map(function(a){if(!e.has(a)){var c=new Request(a,{credentials:"same-origin"});return fetch(c).then(function(c){if(!c.ok)throw new Error("Request for "+a+" returned a response with status "+c.status);return cleanResponse(c).then(function(c){return d.put(a,c)})})}}))})}).then(function(){return self.skipWaiting()}))}),self.addEventListener("activate",function(c){var e=new Set(urlsToCacheKeys.values());c.waitUntil(caches.open(cacheName).then(function(a){return a.keys().then(function(c){return Promise.all(c.map(function(c){if(!e.has(c.url))return a.delete(c)}))})}).then(function(){return self.clients.claim()}))}),self.addEventListener("fetch",function(a){if("GET"===a.request.method){var c,e=stripIgnoredUrlParameters(a.request.url,ignoreUrlParametersMatching),d="index.html";(c=urlsToCacheKeys.has(e))||(e=addDirectoryIndex(e,d),c=urlsToCacheKeys.has(e));var t="/index.html";!c&&"navigate"===a.request.mode&&isPathWhitelisted(["^(?!\\/__).*"],a.request.url)&&(e=new URL(t,self.location).toString(),c=urlsToCacheKeys.has(e)),c&&a.respondWith(caches.open(cacheName).then(function(c){return c.match(urlsToCacheKeys.get(e)).then(function(c){if(c)return c;throw Error("The cached response that was expected is missing.")})}).catch(function(c){return console.warn('Couldn\'t serve response for "%s" from cache: %O',a.request.url,c),fetch(a.request)}))}}); \ No newline at end of file +"use strict";var precacheConfig=[["/react/build/index.html","993f0e87e6c7aab3ac13c291bacafaa6"],["/react/build/static/css/main.fd229636.css","fd2296369bdb93090b9d732b4f26607b"],["/react/build/static/js/0.aab4f9d2.chunk.js","f5e96451041c9fde5f372e8c065771ec"],["/react/build/static/js/100.6b3636b7.chunk.js","d75bffe6b9f22ef7596866592ef0409a"],["/react/build/static/js/101.c693a8fb.chunk.js","d44362affb62b2cf7a1003292951315f"],["/react/build/static/js/102.3007da08.chunk.js","496d682e1748281e8b1551cdd9718262"],["/react/build/static/js/103.3529dc2c.chunk.js","0027d579b9152c585bc2bd2d52ec9d6f"],["/react/build/static/js/104.b17e9cc1.chunk.js","a44e36f33de2aeb121ce39598c573e4a"],["/react/build/static/js/105.ec22ed03.chunk.js","9adfcc6d00a7282c49518316e2b7306c"],["/react/build/static/js/106.37f40343.chunk.js","60cd69fcaa76048dd434c348dabfebfa"],["/react/build/static/js/107.71f3e1bb.chunk.js","2d9c6a3942a299fa2ad06ec7aa790dc3"],["/react/build/static/js/108.3e5c7d1f.chunk.js","b22a54a66233ce9c2e52b4a7a13fe73b"],["/react/build/static/js/109.bcf50865.chunk.js","c83038a72cc1842f24268cdc6718dd49"],["/react/build/static/js/11.119fb175.chunk.js","846ef87243fa32c9410bdffd1222bca8"],["/react/build/static/js/110.3776eb6b.chunk.js","031a1f172b37abeeab49613b48e19aef"],["/react/build/static/js/111.91b8ab88.chunk.js","4a056911fe7a13f792dba51e629d944d"],["/react/build/static/js/112.76b0a4bc.chunk.js","c97095b8d46a2f9eb795f258f6861e08"],["/react/build/static/js/113.c525ff6a.chunk.js","98e02ed5ffd0ed74581460951636dec6"],["/react/build/static/js/114.1b5df033.chunk.js","0df12f92118e207dc6b88074a474631f"],["/react/build/static/js/116.ecff0d37.chunk.js","808088438d6adc2cd4f77a35c7fb977f"],["/react/build/static/js/117.b18323f2.chunk.js","487d3242adb0744128aa0fb556f29490"],["/react/build/static/js/118.8cd96265.chunk.js","0a04ba4916540b2f0e5151062ddbeda7"],["/react/build/static/js/119.07633fcc.chunk.js","80b1d30e2e0542ebadd2230a34a5beaa"],["/react/build/static/js/12.d48cdc19.chunk.js","1c80a50f48cbf9da51a348894bd60fa0"],["/react/build/static/js/120.f90cd03e.chunk.js","df09b353b47e91f506a6c94c87f7bd4e"],["/react/build/static/js/121.15414746.chunk.js","64d46f183a85ff588ff049aa957f4c28"],["/react/build/static/js/122.c9a5a14b.chunk.js","5219c62e8af1bd31a543ccdfb238f889"],["/react/build/static/js/123.7ac47297.chunk.js","486df28be1de1206928fb6f9b87f101c"],["/react/build/static/js/125.560653d8.chunk.js","ca108fcfcd2628843281a536599f8521"],["/react/build/static/js/126.5b4b30b5.chunk.js","e12c926247812be6e4dbbfda36bfacae"],["/react/build/static/js/127.b6a8b1a7.chunk.js","270e56fae657c9bda155eeab4f908b88"],["/react/build/static/js/128.b1bf0bdf.chunk.js","1b4dd4fac27fb53568324b699a9e919e"],["/react/build/static/js/129.ef210f1a.chunk.js","a6db4c878df349166f551a63fd128c4c"],["/react/build/static/js/13.990846dc.chunk.js","f2954a236b3bab978e7bfb46c668ad4c"],["/react/build/static/js/130.67a82f0e.chunk.js","c1a6d0f7446d20d52d827a3261ec3583"],["/react/build/static/js/131.a8160b14.chunk.js","f396b9ba5ea75a48da1ae661399ebfa6"],["/react/build/static/js/132.5ab77e1a.chunk.js","3de305af61a5cb5db71f47292cca9c9d"],["/react/build/static/js/133.075af754.chunk.js","998cb665626bea73bc9ed5544eaf516d"],["/react/build/static/js/134.9dd710de.chunk.js","c2d9d30aacd91cf5164042149c88a5b0"],["/react/build/static/js/135.4b86cf18.chunk.js","e4707c895161384150b6e7ed6e350526"],["/react/build/static/js/136.cf2048d3.chunk.js","ce5970d37a93d903b16c7f6fa01b7354"],["/react/build/static/js/137.519b1fae.chunk.js","54e6198feea9913637e865fe608f9396"],["/react/build/static/js/138.d0f47d99.chunk.js","d37a70533ec08639de5826ae137a46d1"],["/react/build/static/js/139.01acc4e5.chunk.js","2c69c7aecb0968233b42335611cd364d"],["/react/build/static/js/14.7d6e2979.chunk.js","62c17c06ff347c2f46998fcbcb9bc972"],["/react/build/static/js/140.98306c4c.chunk.js","8423c82c1641b999bcb99fc2eb85ff99"],["/react/build/static/js/141.d797c9b5.chunk.js","ab07c447bb8c26c2905a74ea82f92982"],["/react/build/static/js/142.34e9e576.chunk.js","7d2fc4df295316b423ca49d10d66516d"],["/react/build/static/js/143.7b7efa1a.chunk.js","a40eec75cfcf53472d76ba86ca9f42e0"],["/react/build/static/js/144.3e70ec35.chunk.js","bb83e05c526fd0ab2146b0fe33761ce3"],["/react/build/static/js/145.b7463ed3.chunk.js","cf7b394cc3c4d0508133eda42636c360"],["/react/build/static/js/146.2b0e3278.chunk.js","e2d86ebbdc48d512aafb98d3ee5eba45"],["/react/build/static/js/147.15fde8e8.chunk.js","ed514764802f48b8fdca68801ab61868"],["/react/build/static/js/148.86c257c0.chunk.js","68106f49c43db2c84b71f0c84fd2ff09"],["/react/build/static/js/149.3ed3fad6.chunk.js","5bb39c7409f5e6706568cfed23a5c790"],["/react/build/static/js/15.3876acdb.chunk.js","10ed6f677c6fddb9a63d4c84594a9dbf"],["/react/build/static/js/150.4e4cff38.chunk.js","9734bfd71971d6747cc2ae9a6ea83425"],["/react/build/static/js/151.92a34418.chunk.js","2e5f920cc029c2c3f3a509d6a2249c56"],["/react/build/static/js/152.4593e125.chunk.js","19df2552830dca7bb64098079207ac8e"],["/react/build/static/js/153.011280d9.chunk.js","1dd187ff37145bcfbc880561c7bee989"],["/react/build/static/js/154.4a57bba7.chunk.js","845ec563dbd7f1ccc6b7b5afab2dc4cb"],["/react/build/static/js/155.ef327b42.chunk.js","2c6230cf9b3c3cbf631e6bd4d5a55a76"],["/react/build/static/js/156.c21981c6.chunk.js","728a1034dd8275022ab98b9e4119207b"],["/react/build/static/js/157.bab5f3ed.chunk.js","9cfd3f57119315c70a110faf327597c9"],["/react/build/static/js/158.e05e5ea0.chunk.js","a7f92cac88e2893e56cc21636aff5baf"],["/react/build/static/js/159.95ed7a8f.chunk.js","f40fc515b8ecf54d8b7595a024954184"],["/react/build/static/js/16.c23b61ce.chunk.js","5e0bbb1a90814ae368195a29c47ba7f1"],["/react/build/static/js/160.da4c509c.chunk.js","aa0069b4cb7924258d39c4778ea5ec09"],["/react/build/static/js/161.46d4f5e2.chunk.js","fe7b7f029c1584d40b6e343734f04605"],["/react/build/static/js/162.af296485.chunk.js","7b2475d05f616c84a4589722e1cb6aee"],["/react/build/static/js/163.8a55c680.chunk.js","96cdaa97fb866431eb36de95209295a3"],["/react/build/static/js/164.982f968c.chunk.js","b5d3b92215fda508da03c4dbd45f1715"],["/react/build/static/js/165.d048e040.chunk.js","dbcfdd9a933d9bc9def3949bab8b71e6"],["/react/build/static/js/166.c29e4695.chunk.js","f0565de66a51ac938a477f4c8e2f4c1c"],["/react/build/static/js/167.f2c4016d.chunk.js","6eaf994c40e602f6f07688332aea4150"],["/react/build/static/js/168.911e1758.chunk.js","4100b3e4d9641be05ec65cd4d313d003"],["/react/build/static/js/169.91cb36dd.chunk.js","7a87eab92959ea8e0b3163781ba768fc"],["/react/build/static/js/17.81f9c158.chunk.js","94b9538320089753b8fe7df3282a3b17"],["/react/build/static/js/170.5ff8a01e.chunk.js","27e5eb4a0d463692a11860af7fe6ee3e"],["/react/build/static/js/171.2954ff2e.chunk.js","b22b67f03b59f72553254b4360579808"],["/react/build/static/js/172.dd67868a.chunk.js","a87b435879cec0490fbbce2e7847ef5e"],["/react/build/static/js/173.0ea8374a.chunk.js","87376a025da9a4c2d607b77de6fccff3"],["/react/build/static/js/174.b60de8cd.chunk.js","cc27f87db4a20d688707b94b58ae798c"],["/react/build/static/js/175.a12cef73.chunk.js","1c932f24233af567501828c44a945e63"],["/react/build/static/js/176.7afdf2bd.chunk.js","3d02ce1971094e67ad034ee37caaee6d"],["/react/build/static/js/177.9fc758cc.chunk.js","0e833c504d54d96683a72eee448f46a3"],["/react/build/static/js/178.598b817d.chunk.js","dc6428df2dd66a8fa2551248001930a6"],["/react/build/static/js/179.95ba6e62.chunk.js","de851e235290bf64cf7ca05bb4ebb2df"],["/react/build/static/js/18.2d02184b.chunk.js","53d9305088ad2854f153eb1757572e3d"],["/react/build/static/js/180.d751ff7e.chunk.js","183c67d25e3274ef4ecd1fee4c964250"],["/react/build/static/js/181.852b6409.chunk.js","665232e77311a81133537de9c77462c7"],["/react/build/static/js/182.498fcaaf.chunk.js","3f89a5b55c753095f8702de0eb32a443"],["/react/build/static/js/183.91cb21f9.chunk.js","a3149b1b0b5a80936ee53f0140fa6a47"],["/react/build/static/js/184.a9da3302.chunk.js","e6c354ec4a94e85e1ddb5f793bed0cff"],["/react/build/static/js/185.70943773.chunk.js","9b02025bc5c6efff129025f3db74530b"],["/react/build/static/js/186.259f1940.chunk.js","a6e06e9e59d9350e25beef9625ad0bf6"],["/react/build/static/js/187.aadc6528.chunk.js","21d18e4bda99a8b519fad5ed33187551"],["/react/build/static/js/188.5bf3181c.chunk.js","2795a9b8c1c4ca06792a297f52a8c794"],["/react/build/static/js/189.3e8d523d.chunk.js","dc546e486c0f0865d4b02598d515191c"],["/react/build/static/js/19.37fb291a.chunk.js","386e909d2438ecd49c44afc3deea6870"],["/react/build/static/js/190.cb251023.chunk.js","bc9708ecbaa78e0609f7c89f3b6af420"],["/react/build/static/js/191.6d0ffeac.chunk.js","a1d73da756642472abb427c12605a675"],["/react/build/static/js/192.f4f11544.chunk.js","529bf53fa9f6f30561c9d87fa2411714"],["/react/build/static/js/193.2c7023c8.chunk.js","ca9f5e9aaf0cd45af981711c3e47b614"],["/react/build/static/js/194.db7b2b3e.chunk.js","fffb7446afd52c2bbd37de54855c6276"],["/react/build/static/js/195.9e8d176d.chunk.js","12ffff550d8b5ac400ac15cefb5c9c68"],["/react/build/static/js/196.b83b067f.chunk.js","557ef4835bd321fc80714d2b369d6ca0"],["/react/build/static/js/197.2ffb8601.chunk.js","4d9298ffc0c01abf862f4933a12cddad"],["/react/build/static/js/198.0c33c032.chunk.js","d64f2833e72db45d218e08be71dbfa36"],["/react/build/static/js/199.34829465.chunk.js","af64cb3b9bb8d41dd3631389f9fac371"],["/react/build/static/js/20.2fa950b8.chunk.js","681a640a85997ba40eb1d30249949fdf"],["/react/build/static/js/200.8b1166c5.chunk.js","772651cfdca5d0ca4b6686c49a60aea0"],["/react/build/static/js/201.37c03cc0.chunk.js","660e74f41a8e29e0e8165753a1d0e2e6"],["/react/build/static/js/202.945755f1.chunk.js","6e4c9151033c31332d43f1294f868743"],["/react/build/static/js/203.a734c359.chunk.js","29d2132c90032b132a4d3309529c6a49"],["/react/build/static/js/204.6429b924.chunk.js","7d8ce76c380850137a060cdacbc294ad"],["/react/build/static/js/205.eddca23b.chunk.js","b6c70c1086a4abde1bdffd51d743d642"],["/react/build/static/js/206.f9980246.chunk.js","f93a64a27faa75a232aaf27fd890cb0b"],["/react/build/static/js/207.73a45ef3.chunk.js","20b6ccdbbb204f83b30785f583b2d44d"],["/react/build/static/js/208.75e3af6e.chunk.js","cfcc12401389af6eda8bcd0fe7eeaa97"],["/react/build/static/js/209.ed67395c.chunk.js","1f71db7d30f3b52cc3b1f0fc41f0bf3f"],["/react/build/static/js/21.5ca2f01d.chunk.js","451e9beca34f089221d1edc6c7842cca"],["/react/build/static/js/210.5f3ee5e7.chunk.js","9ecae18b2298576b2bce86a27b7b4495"],["/react/build/static/js/211.8052e6e0.chunk.js","ff5adb802e98c0c91f6d6556557ec90d"],["/react/build/static/js/212.2053e6eb.chunk.js","52fec02b316ea61c6ad7be3f3cbd8f53"],["/react/build/static/js/213.1eb604df.chunk.js","699e4567c7108f09553a5c915ad8a184"],["/react/build/static/js/214.8d61899f.chunk.js","c578df029bc81c357b6ec44999a235bd"],["/react/build/static/js/215.e908bafe.chunk.js","1bc726175f0f8da5aff669ec22d7b738"],["/react/build/static/js/216.2912e53c.chunk.js","7d3455ecb780c91d8f364dee15b48bee"],["/react/build/static/js/217.6e78ee99.chunk.js","2cb277ff79ac1770bfe98ca067656fbe"],["/react/build/static/js/218.264d074e.chunk.js","4035ecea580c0c3d938563c5f5f2197c"],["/react/build/static/js/219.13d1cc59.chunk.js","e4a7df1b6b18f770bc196d0ad11f1fad"],["/react/build/static/js/22.ca2db867.chunk.js","1552b827bffed283deac0845ced5565d"],["/react/build/static/js/220.e0b489fa.chunk.js","5f6acfb46b265c11ca147d2b158bbd76"],["/react/build/static/js/221.9ad9f9a8.chunk.js","b00ab08bc0ca136cb2659fd71868bd00"],["/react/build/static/js/222.2c4c1c92.chunk.js","d3fb09429541b211ae2ce456ed6c3a93"],["/react/build/static/js/223.304a9f02.chunk.js","e96a7048613ff4bef739dc8556865016"],["/react/build/static/js/224.e168e619.chunk.js","cd23c164394eb4ce369b2944124c1f68"],["/react/build/static/js/225.507c2465.chunk.js","baa7b28c7f217fba08579307552ac27d"],["/react/build/static/js/226.c23bccae.chunk.js","e17b206551acb799190609170e423ce9"],["/react/build/static/js/227.21d64eb9.chunk.js","e557083c1bcacf51e9409d245c374b4e"],["/react/build/static/js/228.2a025b60.chunk.js","2fb432ffe7670c1998500cd6db757b6a"],["/react/build/static/js/229.4242f403.chunk.js","6594e1abcf5aef968fba07a2fdb15afa"],["/react/build/static/js/23.e41cf074.chunk.js","c38726479310eddf2c07555470d65a09"],["/react/build/static/js/230.da9e730f.chunk.js","d59b65ca4288dd167c367bce1e4439a8"],["/react/build/static/js/231.118c712c.chunk.js","7a3fd45a97d085be4d77d9c53d4677d8"],["/react/build/static/js/232.6617a37b.chunk.js","74f29c5c9f2b05747494b3685eb31e6b"],["/react/build/static/js/233.f50616f5.chunk.js","4f578234115723bcce2962667bdb1e01"],["/react/build/static/js/234.c5b463ee.chunk.js","7435dd81151fe96cc161710e7d0aa4bb"],["/react/build/static/js/235.d03eb508.chunk.js","c3ff65a10085501e111805c28ba0242b"],["/react/build/static/js/236.5c215786.chunk.js","7f177b24f4e227ee1951ec36f0aa46d5"],["/react/build/static/js/237.ccda38c2.chunk.js","b47ed8aa063f55d95dfd111913ca6b38"],["/react/build/static/js/238.9e89a84c.chunk.js","17688e0fd113278bffb41ffa9a1d6db5"],["/react/build/static/js/239.ea6230c9.chunk.js","440e0fa590226ed85421d01794162cc9"],["/react/build/static/js/24.7d5a39b5.chunk.js","6f85951af2e1ae1c43866653826f7d30"],["/react/build/static/js/240.63008401.chunk.js","7bf71d5f9ced13623230a066a89c3c4d"],["/react/build/static/js/241.dc21b366.chunk.js","e1848c27a2f75b4af542071884b5a7bd"],["/react/build/static/js/242.55e6fdcf.chunk.js","ba53a7af49dfffef63a9213183d9d42a"],["/react/build/static/js/243.4cbf99c4.chunk.js","5eb12bf9461e7c204aa29870adc8ccac"],["/react/build/static/js/244.4fdcc95b.chunk.js","af3d14357e801eb99cd7015014e172b4"],["/react/build/static/js/245.90fc74fc.chunk.js","cc9e9186a7576c0906758bcdc8938734"],["/react/build/static/js/246.2f2de6ef.chunk.js","02ba7ee82a9628697a964c04f8fee560"],["/react/build/static/js/247.69ed510f.chunk.js","669d8eb5f5efa17bb5371350f79b5d9c"],["/react/build/static/js/248.92f7e083.chunk.js","d7421ab00b8aa83bac9ff7f651755f17"],["/react/build/static/js/249.5cdf6b65.chunk.js","9f91d7031a69b4f18bc5892d0eb58b3b"],["/react/build/static/js/25.f9bbc751.chunk.js","667bda96f9728f97f1e23b99fc4f781c"],["/react/build/static/js/250.39ae6de5.chunk.js","2ee35f25bf3c1e21d433c5dba12b891b"],["/react/build/static/js/251.5a52a60b.chunk.js","c32ff8d1367a938fd92530d0c0a646b5"],["/react/build/static/js/252.e501891e.chunk.js","84c693802259ff8559c45b679ee90643"],["/react/build/static/js/253.cf94cbfb.chunk.js","74aa612abf4db9b13d13267be1e588d2"],["/react/build/static/js/254.d75f8724.chunk.js","db00bcf437eb2dd30b0206364d5480c6"],["/react/build/static/js/255.63b9163f.chunk.js","e7d930cb020c6be389e28fbb99d77a9c"],["/react/build/static/js/256.083172d5.chunk.js","1315da8ec40f8ac136dae1c48d05b7f8"],["/react/build/static/js/257.4bc986ca.chunk.js","6c6d0055eee43d2eea5bcab78b1a0f30"],["/react/build/static/js/258.1a2ce091.chunk.js","3f53c821b9d295333e2ca7d9ad4404c6"],["/react/build/static/js/259.3ad7d88c.chunk.js","45f52e2b47075307e87be221cec35607"],["/react/build/static/js/26.a4be29ad.chunk.js","6a839bec0e62077cb1f0f0efac4ee1d8"],["/react/build/static/js/260.8a42c43a.chunk.js","21a22a0428e2b9b277be12a3faaee3d4"],["/react/build/static/js/261.dd7fb199.chunk.js","31db76ca3f3e0a6638ade1763cd9bce8"],["/react/build/static/js/262.d22df094.chunk.js","cbff7a8297042af625998b52a2561568"],["/react/build/static/js/263.e62396e4.chunk.js","c30308be09d60e771ebff099f0c68953"],["/react/build/static/js/264.d0b8a362.chunk.js","4ec2545e53a569c8f03b1304b9e049fa"],["/react/build/static/js/265.c7bfffc3.chunk.js","8682646d3f3175bce13566540cb73f62"],["/react/build/static/js/266.81de26e1.chunk.js","178746ce0184be687275d3cb544c7b4c"],["/react/build/static/js/267.c0f91f47.chunk.js","2821f3387d9947b8b0fc748869d51cfe"],["/react/build/static/js/268.43fd5a09.chunk.js","4f65e00fec9f88d50071a132104b94f7"],["/react/build/static/js/269.a562e125.chunk.js","00ed71bcbd3871da92c2acf2187e4daf"],["/react/build/static/js/27.e115b503.chunk.js","532e04f9533fdb75cead536f59f2bcb7"],["/react/build/static/js/270.8749c211.chunk.js","555490c0431364f4a8069378b3ac432c"],["/react/build/static/js/271.d3944971.chunk.js","ea5dbd33c29e3c8b167c41a386bb9920"],["/react/build/static/js/272.211d2fe5.chunk.js","bf18da2a30b91ef1f14bd5cf1ff9ea32"],["/react/build/static/js/273.a868411a.chunk.js","1ca3fe4d68e3e3a4b143afbac627d845"],["/react/build/static/js/274.681fe1ef.chunk.js","4b2505a71ef26d38ef29a11564e607d2"],["/react/build/static/js/275.11a4e806.chunk.js","1459b73b015cee7d0539828d2b8ee7a7"],["/react/build/static/js/276.9c577419.chunk.js","de5644af20eef1d73bde6a7c1bafebef"],["/react/build/static/js/277.dbac6a23.chunk.js","8dde1879dd7c19462de95179ee46216f"],["/react/build/static/js/278.61ea2bf7.chunk.js","4e66b9437411311455ada184b3907a04"],["/react/build/static/js/279.0aa66312.chunk.js","495c62f97b68a0a00352f92cbe98be2a"],["/react/build/static/js/28.b53924f5.chunk.js","3740a7988f3eccf24447acc6e331bd20"],["/react/build/static/js/280.79255039.chunk.js","7991fae015c6fe6afbcd2c6354c00f40"],["/react/build/static/js/281.b86b8320.chunk.js","909e4fd0611973be1cbbf47bc08d81d8"],["/react/build/static/js/29.91e0693f.chunk.js","8c3f3f9c62003be5452b7aa68d8e7a4b"],["/react/build/static/js/30.c5d9bf11.chunk.js","0ab1d1571c3ff2e2ff19482eb8f3a587"],["/react/build/static/js/31.2ffe8780.chunk.js","0ae70cea971ce881beb1ce7040e54f9b"],["/react/build/static/js/32.7b22a5d9.chunk.js","28b6c720ef158af76bcf3f6578749b65"],["/react/build/static/js/33.46de988f.chunk.js","dd3dc67e9eeed67549ba270c4ee5095d"],["/react/build/static/js/34.418bda3b.chunk.js","6acda122171c07f597f5d39e766bdde1"],["/react/build/static/js/35.982fd29e.chunk.js","ffdbd2b85e2b3d40ec8a9a4516711cab"],["/react/build/static/js/36.1da0683b.chunk.js","ca12ac2b8137518f553d438d9d1d50f9"],["/react/build/static/js/37.07f137dc.chunk.js","8e5c52d0e10a18690e11eaf0124ac263"],["/react/build/static/js/38.594f6b35.chunk.js","6e992649b82d5d92073a5d61fbacaf22"],["/react/build/static/js/39.e9c744c8.chunk.js","a6a53f4d3117e2444c655d8d8926b01c"],["/react/build/static/js/40.f7b0bef5.chunk.js","d0f41d9e3db25c3a2b22fce08c851069"],["/react/build/static/js/41.0a29b2f2.chunk.js","2a1faf1c276a6bd37adc21a22e2ee97d"],["/react/build/static/js/42.1750d052.chunk.js","7810e53d889a39efacb5f0e65ef5feb1"],["/react/build/static/js/43.dd9b393c.chunk.js","aec588ba9da88d0c784314634a4d4757"],["/react/build/static/js/44.b4ed1492.chunk.js","59dc02893dd3b04e48e2dc429bd46678"],["/react/build/static/js/45.df4fc2e5.chunk.js","b566b968e6f47aad546d8aed6353633c"],["/react/build/static/js/46.42aa0818.chunk.js","23330031d63fcf95e5f6067ca713e2ba"],["/react/build/static/js/47.c0c7ba98.chunk.js","3819023247a6408926f4d5aa4ca8d4fb"],["/react/build/static/js/48.b1f34bab.chunk.js","3f126dad38f5efad38c294d784211722"],["/react/build/static/js/49.6357f85c.chunk.js","32b261a7a98280de3ca4f2de6d99241e"],["/react/build/static/js/50.5fd49186.chunk.js","464aa9849159fac094ee17a663abe04f"],["/react/build/static/js/51.1adc38f8.chunk.js","4fd0762b4c78e14bdb6ce555c4727d3d"],["/react/build/static/js/52.fea8bece.chunk.js","141b2199ce46b8cf12be68036b4ec84c"],["/react/build/static/js/53.9152167d.chunk.js","bd5527a4675a395ddb239210711c56dc"],["/react/build/static/js/54.302a2f5e.chunk.js","6796209a80fdb3b114aadbc175cce33d"],["/react/build/static/js/55.8fa379c1.chunk.js","7eb0726e262b220e8b5a8ddb7da3628d"],["/react/build/static/js/56.ecfd0d2c.chunk.js","54352aa054096d345b020b9878e74b9a"],["/react/build/static/js/57.d289073a.chunk.js","b5d997fbc158ef475fc1b05f8e6d5ba2"],["/react/build/static/js/58.73fa7712.chunk.js","27d1fbc7c6d86e5e3f012677e7ce5708"],["/react/build/static/js/59.d934b58f.chunk.js","6ab1fa8c39f60c288a3cf07d6d1ef915"],["/react/build/static/js/65.7fd312e5.chunk.js","a82950dcc734dc91d3165d80af2d6bec"],["/react/build/static/js/66.ba2631e8.chunk.js","b8401645e7555b58fd0fe8c5cfb1a8c7"],["/react/build/static/js/70.c8ba503f.chunk.js","bb867e69c882e1ad72b7d7de1401193e"],["/react/build/static/js/71.5effdcde.chunk.js","bcee1e644e7dcb51afb017c3471534d9"],["/react/build/static/js/72.e4fc7f56.chunk.js","43e266cdf175887b1c437489d08bb76e"],["/react/build/static/js/73.03a9b794.chunk.js","159806190b373ff2865f23efce9ad7ed"],["/react/build/static/js/80.c2cffa37.chunk.js","90758acbf18e26eaf7d0a596ccebfd6d"],["/react/build/static/js/81.5d2e8727.chunk.js","cc8af37ac8b6c29dc1b47bf5e58e8ddf"],["/react/build/static/js/82.f6eb6498.chunk.js","b6beacfaced80dd9ac78909ffd138139"],["/react/build/static/js/83.dc8d1643.chunk.js","99da2d523098fbbc42570b3ea57edcd7"],["/react/build/static/js/84.2d6ecfd5.chunk.js","db19b34b2fbe197c91a993d122001eb6"],["/react/build/static/js/86.301d5b0d.chunk.js","fffebbdc49991b84eb4cfcbd8e18661a"],["/react/build/static/js/87.6a23c5ff.chunk.js","a9b932bf4b9bcb99a5599140c36f3114"],["/react/build/static/js/88.4371281c.chunk.js","b90730df83a98a9d4c9fd0e7e6fd1d4f"],["/react/build/static/js/89.e89f3e08.chunk.js","0f968d4b1ff1ab6f9b1decf8f5154b15"],["/react/build/static/js/90.7ed431d9.chunk.js","bc1f2788d8473559cf984a5ca9585d78"],["/react/build/static/js/92.10b6c63e.chunk.js","62a85a7ae6890fd4d9e74091bf80d15c"],["/react/build/static/js/93.3b7a5d2e.chunk.js","7b157fd85dc9d27c5167b3d546a46c1c"],["/react/build/static/js/94.76cdd423.chunk.js","0648debafbe22c4b6c6af394113ad389"],["/react/build/static/js/95.0f97d9ca.chunk.js","c7af9a2719351517333eeab9555f7f09"],["/react/build/static/js/96.8e3f396b.chunk.js","249f1153809747d78baabf3a476e5d21"],["/react/build/static/js/98.e196cdfc.chunk.js","68a1d85974c1d6715fe9d68fdb43e34d"],["/react/build/static/js/99.2d19140c.chunk.js","df6b65786b8b5256736af2dbf50878bd"],["/react/build/static/media/KaTeX_AMS-Regular.7f06b4e3.woff","7f06b4e30317f784d61d26686aed0ab2"],["/react/build/static/media/KaTeX_AMS-Regular.aaf4eee9.ttf","aaf4eee9fba9907d61c3935e0b6a54ae"],["/react/build/static/media/KaTeX_AMS-Regular.e78e28b4.woff2","e78e28b4834954df047e4925e9dbf354"],["/react/build/static/media/KaTeX_Caligraphic-Bold.021dd4dc.ttf","021dd4dc61ee5f5cdf315f43b48c094b"],["/react/build/static/media/KaTeX_Caligraphic-Bold.1e802ca9.woff","1e802ca9dedc4ed4e3c6f645e4316128"],["/react/build/static/media/KaTeX_Caligraphic-Bold.4ec58bef.woff2","4ec58befa687e9752c3c91cd9bcf1bcb"],["/react/build/static/media/KaTeX_Caligraphic-Regular.7edb53b6.woff2","7edb53b6693d75b8a2232481eea1a52c"],["/react/build/static/media/KaTeX_Caligraphic-Regular.d3b46c3a.woff","d3b46c3a530116933081d9d74e3e9fe8"],["/react/build/static/media/KaTeX_Caligraphic-Regular.d49f2d55.ttf","d49f2d55ce4f40f982d8ba63d746fbf9"],["/react/build/static/media/KaTeX_Fraktur-Bold.a31e7cba.ttf","a31e7cba7b7221ebf1a2ae545fb306b2"],["/react/build/static/media/KaTeX_Fraktur-Bold.c4c8cab7.woff","c4c8cab7d5be97b2bb283e531c077355"],["/react/build/static/media/KaTeX_Fraktur-Bold.d5b59ec9.woff2","d5b59ec9764e10f4a82369ae29f3ac58"],["/react/build/static/media/KaTeX_Fraktur-Regular.32a5339e.woff2","32a5339eb809f381a7357ba56f82aab3"],["/react/build/static/media/KaTeX_Fraktur-Regular.a48dad4f.ttf","a48dad4f58c82e38a10da0ceebb86370"],["/react/build/static/media/KaTeX_Fraktur-Regular.b7d9c46b.woff","b7d9c46bff5d51da6209e355cc4a235d"],["/react/build/static/media/KaTeX_Main-Bold.22086eb5.woff","22086eb5d97009c3e99bcc1d16ce6865"],["/react/build/static/media/KaTeX_Main-Bold.8e1e01c4.woff2","8e1e01c4b1207c0a383d9a2b4f86e637"],["/react/build/static/media/KaTeX_Main-Bold.9ceff51b.ttf","9ceff51b3cb7ce6eb4e8efa8163a1472"],["/react/build/static/media/KaTeX_Main-BoldItalic.284a17fe.woff2","284a17fe5baf72ff8217d4c7e70c0f82"],["/react/build/static/media/KaTeX_Main-BoldItalic.4c57dbc4.woff","4c57dbc44bfff1fdf08a59cf556fdab3"],["/react/build/static/media/KaTeX_Main-BoldItalic.e8b44b99.ttf","e8b44b990516dab7937bf240fde8b46a"],["/react/build/static/media/KaTeX_Main-Italic.29c86397.ttf","29c86397e75cdcb3135af8295f1c2e28"],["/react/build/static/media/KaTeX_Main-Italic.99be0e10.woff","99be0e10c38cd42466e6fe1665ef9536"],["/react/build/static/media/KaTeX_Main-Italic.e533d5a2.woff2","e533d5a2506cf053cd671b335ec04dde"],["/react/build/static/media/KaTeX_Main-Regular.5c734d78.woff2","5c734d78610fa35282f3379f866707f2"],["/react/build/static/media/KaTeX_Main-Regular.5c94aef4.ttf","5c94aef490324b0925dbe5f643e8fd04"],["/react/build/static/media/KaTeX_Main-Regular.b741441f.woff","b741441f6d71014d0453ca3ebc884dd4"],["/react/build/static/media/KaTeX_Math-BoldItalic.9a2834a9.ttf","9a2834a9ff8ab411153571e0e55ac693"],["/react/build/static/media/KaTeX_Math-BoldItalic.b13731ef.woff","b13731ef4e2bfc3d8d859271e39550fc"],["/react/build/static/media/KaTeX_Math-BoldItalic.d747bd1e.woff2","d747bd1e7a6a43864285edd73dcde253"],["/react/build/static/media/KaTeX_Math-Italic.291e76b8.ttf","291e76b8871b84560701bd29f9d1dcc7"],["/react/build/static/media/KaTeX_Math-Italic.4ad08b82.woff2","4ad08b826b8065e1eab85324d726538c"],["/react/build/static/media/KaTeX_Math-Italic.f0303906.woff","f0303906c2a67ac63bf1e8ccd638a89e"],["/react/build/static/media/KaTeX_SansSerif-Bold.3fb41955.woff","3fb419559955e3ce75619f1a5e8c6c84"],["/react/build/static/media/KaTeX_SansSerif-Bold.6e0830be.woff2","6e0830bee40435e72165345e0682fbfc"],["/react/build/static/media/KaTeX_SansSerif-Bold.7dc027cb.ttf","7dc027cba9f7b11ec92af4a311372a85"],["/react/build/static/media/KaTeX_SansSerif-Italic.4059868e.ttf","4059868e460d2d2e6be18e180d20c43d"],["/react/build/static/media/KaTeX_SansSerif-Italic.727a9b0d.woff","727a9b0d97d72d2fc0228fe4e07fb4d8"],["/react/build/static/media/KaTeX_SansSerif-Italic.fba01c9c.woff2","fba01c9c6fb2866a0f95bcacb2c187a5"],["/react/build/static/media/KaTeX_SansSerif-Regular.2555754a.woff","2555754a67062cac3a0913b715ab982f"],["/react/build/static/media/KaTeX_SansSerif-Regular.5c58d168.ttf","5c58d168c0b66d2c32234a6718e74dfb"],["/react/build/static/media/KaTeX_SansSerif-Regular.d929cd67.woff2","d929cd671b19f0cfea55b6200fb47461"],["/react/build/static/media/KaTeX_Script-Regular.755e2491.woff2","755e2491f13b5269f0afd5a56f7aa692"],["/react/build/static/media/KaTeX_Script-Regular.d12ea9ef.ttf","d12ea9efb375f9dc331f562e69892638"],["/react/build/static/media/KaTeX_Script-Regular.d524c9a5.woff","d524c9a5b62a17f98f4a97af37fea735"],["/react/build/static/media/KaTeX_Size1-Regular.048c39cb.woff2","048c39cba4dfb0460682a45e84548e4b"],["/react/build/static/media/KaTeX_Size1-Regular.08b5f00e.woff","08b5f00e7140f7a10e62c8e2484dfa5a"],["/react/build/static/media/KaTeX_Size1-Regular.7342d45b.ttf","7342d45b052c3a2abc21049959fbab7f"],["/react/build/static/media/KaTeX_Size2-Regular.81d6b8d5.woff2","81d6b8d5ca77d63d5033d6991549a659"],["/react/build/static/media/KaTeX_Size2-Regular.af24b0e4.woff","af24b0e4b7e52656ca77914695c99930"],["/react/build/static/media/KaTeX_Size2-Regular.eb130dcc.ttf","eb130dcc661de766c999c60ba1525a88"],["/react/build/static/media/KaTeX_Size3-Regular.0d892640.woff","0d8926405d832a4b065e516bd385d812"],["/react/build/static/media/KaTeX_Size3-Regular.7e02a40c.ttf","7e02a40c41e52dc3b2b6b197bbdf05ea"],["/react/build/static/media/KaTeX_Size3-Regular.b311ca09.woff2","b311ca09df2c89a10fbb914b5a053805"],["/react/build/static/media/KaTeX_Size4-Regular.68895bb8.woff","68895bb880a61a7fc019dbfaa5121bb4"],["/react/build/static/media/KaTeX_Size4-Regular.6a3255df.woff2","6a3255dfc1ba41c46e7e807f8ab16c49"],["/react/build/static/media/KaTeX_Size4-Regular.ad767252.ttf","ad7672524b64b730dfd176140a8945cb"],["/react/build/static/media/KaTeX_Typewriter-Regular.25702356.ttf","257023560753aeb0b89b7e434d3da17f"],["/react/build/static/media/KaTeX_Typewriter-Regular.3fe216d2.woff","3fe216d2a5f736c560cde71984554b64"],["/react/build/static/media/KaTeX_Typewriter-Regular.6cc31ea5.woff2","6cc31ea5c223c88705a13727a71417fa"],["/react/build/static/media/auth.43f1c749.png","43f1c7490f28c59e28637c7db9318878"],["/react/build/static/media/banner_list.ad510bee.png","ad510bee30a694aaedd0e2a96442ffe4"],["/react/build/static/media/banner_sub.c6034810.png","c6034810c9bd0d58dfee1ccf66f2b592"],["/react/build/static/media/beian.d0289dc0.png","d0289dc0a46fc5b15b3363ffa78cf6c7"],["/react/build/static/media/beijintulogontwo.245dc9e1.png","245dc9e1ed09d34f605c2d5799ee3327"],["/react/build/static/media/bg.88a774b5.jpg","88a774b50bcc4fcb43abbe7ca5d34886"],["/react/build/static/media/douyu.e5ea5a90.jpg","e5ea5a904483e1c25f47a090e83319ed"],["/react/build/static/media/firefox_icon.cfd87a8f.png","cfd87a8f62ae37a34dab9f4b5c79b168"],["/react/build/static/media/guihome1.eca5276e.png","eca5276e17b07d59b37f161cf1ab7b3a"],["/react/build/static/media/guihome2.c65f40bf.jpg","c65f40bff07ed7c4e1d9abca9d77358c"],["/react/build/static/media/guihome3.0e1dc34b.jpg","0e1dc34b920481e8bc1bb1954eada1f1"],["/react/build/static/media/guihome4.6cc0d72b.jpg","6cc0d72b6f3f8cf8dedce533b9083810"],["/react/build/static/media/guihome5.1ac2c872.jpg","1ac2c8722fe3be81805dcc16df845ffb"],["/react/build/static/media/guihome6.7fc4fe9d.jpg","7fc4fe9d191f769592826b692fbf0560"],["/react/build/static/media/internet-explorer@2x.f122e0ab.png","f122e0abfbe49c051dba0e2d7f3d00f5"],["/react/build/static/media/job.b2881c7d.png","b2881c7d0317f7109101f3db1bcae775"],["/react/build/static/media/logo.c72d4a3b.svg","c72d4a3ba95e0b700fae9febca0e3200"],["/react/build/static/media/match_ad.4e957369.jpg","4e957369790f079662eb2dca03ece6be"],["/react/build/static/media/message.e7922cf2.svg","e7922cf2a56f9b54e44709e40626460b"],["/react/build/static/media/messagegrey.80d0b058.svg","80d0b0580c10b5e7fc571c3064a991c5"],["/react/build/static/media/mytc.4ef5faf4.png","4ef5faf4ec6fdee6a4909d34b9a1a171"],["/react/build/static/media/oj_banner.25ca233e.jpg","25ca233e22299a2a1e2f577eed32e745"],["/react/build/static/media/passall.46817e26.png","46817e2696bbb2ac4bf0e5bc4e8b101e"],["/react/build/static/media/passpart.4aaf3e6b.png","4aaf3e6b4667dc531eee7f4e5f807d70"],["/react/build/static/media/rc-tree.776c7fe6.png","776c7fe67df0637005b1a1372066ed84"],["/react/build/static/media/skzbdx.01cb5862.png","01cb58627ee7981e0bcb65c8467d4975"],["/react/build/static/media/teach_ex.a415d7a9.jpg","a415d7a9bbc72fe5d3aafd002181cc09"]],cacheName="sw-precache-v3-sw-precache-webpack-plugin-"+(self.registration?self.registration.scope:""),ignoreUrlParametersMatching=[/^utm_/],addDirectoryIndex=function(c,a){var e=new URL(c);return"/"===e.pathname.slice(-1)&&(e.pathname+=a),e.toString()},cleanResponse=function(a){return a.redirected?("body"in a?Promise.resolve(a.body):a.blob()).then(function(c){return new Response(c,{headers:a.headers,status:a.status,statusText:a.statusText})}):Promise.resolve(a)},createCacheKey=function(c,a,e,d){var t=new URL(c);return d&&t.pathname.match(d)||(t.search+=(t.search?"&":"")+encodeURIComponent(a)+"="+encodeURIComponent(e)),t.toString()},isPathWhitelisted=function(c,a){if(0===c.length)return!0;var e=new URL(a).pathname;return c.some(function(c){return e.match(c)})},stripIgnoredUrlParameters=function(c,e){var a=new URL(c);return a.hash="",a.search=a.search.slice(1).split("&").map(function(c){return c.split("=")}).filter(function(a){return e.every(function(c){return!c.test(a[0])})}).map(function(c){return c.join("=")}).join("&"),a.toString()},hashParamName="_sw-precache",urlsToCacheKeys=new Map(precacheConfig.map(function(c){var a=c[0],e=c[1],d=new URL(a,self.location),t=createCacheKey(d,hashParamName,e,/\.\w{8}\./);return[d.toString(),t]}));function setOfCachedUrls(c){return c.keys().then(function(c){return c.map(function(c){return c.url})}).then(function(c){return new Set(c)})}self.addEventListener("install",function(c){c.waitUntil(caches.open(cacheName).then(function(d){return setOfCachedUrls(d).then(function(e){return Promise.all(Array.from(urlsToCacheKeys.values()).map(function(a){if(!e.has(a)){var c=new Request(a,{credentials:"same-origin"});return fetch(c).then(function(c){if(!c.ok)throw new Error("Request for "+a+" returned a response with status "+c.status);return cleanResponse(c).then(function(c){return d.put(a,c)})})}}))})}).then(function(){return self.skipWaiting()}))}),self.addEventListener("activate",function(c){var e=new Set(urlsToCacheKeys.values());c.waitUntil(caches.open(cacheName).then(function(a){return a.keys().then(function(c){return Promise.all(c.map(function(c){if(!e.has(c.url))return a.delete(c)}))})}).then(function(){return self.clients.claim()}))}),self.addEventListener("fetch",function(a){if("GET"===a.request.method){var c,e=stripIgnoredUrlParameters(a.request.url,ignoreUrlParametersMatching),d="index.html";(c=urlsToCacheKeys.has(e))||(e=addDirectoryIndex(e,d),c=urlsToCacheKeys.has(e));var t="/index.html";!c&&"navigate"===a.request.mode&&isPathWhitelisted(["^(?!\\/__).*"],a.request.url)&&(e=new URL(t,self.location).toString(),c=urlsToCacheKeys.has(e)),c&&a.respondWith(caches.open(cacheName).then(function(c){return c.match(urlsToCacheKeys.get(e)).then(function(c){if(c)return c;throw Error("The cached response that was expected is missing.")})}).catch(function(c){return console.warn('Couldn\'t serve response for "%s" from cache: %O',a.request.url,c),fetch(a.request)}))}}); \ No newline at end of file diff --git a/public/react/build/static/js/main.d048ab0f.js b/public/react/build/static/js/main.d048ab0f.js new file mode 100644 index 000000000..935543573 --- /dev/null +++ b/public/react/build/static/js/main.d048ab0f.js @@ -0,0 +1,79929 @@ +/******/ (function(modules) { // webpackBootstrap +/******/ // install a JSONP callback for chunk loading +/******/ var parentJsonpFunction = window["webpackJsonp"]; +/******/ window["webpackJsonp"] = function webpackJsonpCallback(chunkIds, moreModules, executeModules) { +/******/ // add "moreModules" to the modules object, +/******/ // then flag all "chunkIds" as loaded and fire callback +/******/ var moduleId, chunkId, i = 0, resolves = [], result; +/******/ for(;i < chunkIds.length; i++) { +/******/ chunkId = chunkIds[i]; +/******/ if(installedChunks[chunkId]) { +/******/ resolves.push(installedChunks[chunkId][0]); +/******/ } +/******/ installedChunks[chunkId] = 0; +/******/ } +/******/ for(moduleId in moreModules) { +/******/ if(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) { +/******/ modules[moduleId] = moreModules[moduleId]; +/******/ } +/******/ } +/******/ if(parentJsonpFunction) parentJsonpFunction(chunkIds, moreModules, executeModules); +/******/ while(resolves.length) { +/******/ resolves.shift()(); +/******/ } +/******/ +/******/ }; +/******/ +/******/ // The module cache +/******/ var installedModules = {}; +/******/ +/******/ // objects to store loaded and loading chunks +/******/ var installedChunks = { +/******/ 282: 0 +/******/ }; +/******/ +/******/ // The require function +/******/ function __webpack_require__(moduleId) { +/******/ +/******/ // Check if module is in cache +/******/ if(installedModules[moduleId]) { +/******/ return installedModules[moduleId].exports; +/******/ } +/******/ // Create a new module (and put it into the cache) +/******/ var module = installedModules[moduleId] = { +/******/ i: moduleId, +/******/ l: false, +/******/ exports: {} +/******/ }; +/******/ +/******/ // Execute the module function +/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); +/******/ +/******/ // Flag the module as loaded +/******/ module.l = true; +/******/ +/******/ // Return the exports of the module +/******/ return module.exports; +/******/ } +/******/ +/******/ // This file contains only the entry chunk. +/******/ // The chunk loading function for additional chunks +/******/ __webpack_require__.e = function requireEnsure(chunkId) { +/******/ var installedChunkData = installedChunks[chunkId]; +/******/ if(installedChunkData === 0) { +/******/ return new Promise(function(resolve) { resolve(); }); +/******/ } +/******/ +/******/ // a Promise means "currently loading". +/******/ if(installedChunkData) { +/******/ return installedChunkData[2]; +/******/ } +/******/ +/******/ // setup Promise in chunk cache +/******/ var promise = new Promise(function(resolve, reject) { +/******/ installedChunkData = installedChunks[chunkId] = [resolve, reject]; +/******/ }); +/******/ installedChunkData[2] = promise; +/******/ +/******/ // start chunk loading +/******/ var head = document.getElementsByTagName('head')[0]; +/******/ var script = document.createElement('script'); +/******/ script.type = 'text/javascript'; +/******/ script.charset = 'utf-8'; +/******/ script.async = true; +/******/ script.timeout = 120000; +/******/ +/******/ if (__webpack_require__.nc) { +/******/ script.setAttribute("nonce", __webpack_require__.nc); +/******/ } +/******/ script.src = __webpack_require__.p + "./static/js/" + ({}[chunkId]||chunkId) + "." + {"0":"aab4f9d2","1":"6b77af40","2":"f375dc06","3":"59b94223","4":"036f2d03","5":"8d311633","6":"59633da2","7":"44937b31","8":"2bc900e0","9":"a6c71dac","10":"e7ad2fdd","11":"119fb175","12":"d48cdc19","13":"990846dc","14":"7d6e2979","15":"3876acdb","16":"c23b61ce","17":"81f9c158","18":"2d02184b","19":"37fb291a","20":"2fa950b8","21":"5ca2f01d","22":"ca2db867","23":"e41cf074","24":"7d5a39b5","25":"f9bbc751","26":"a4be29ad","27":"e115b503","28":"b53924f5","29":"91e0693f","30":"c5d9bf11","31":"2ffe8780","32":"7b22a5d9","33":"46de988f","34":"418bda3b","35":"982fd29e","36":"1da0683b","37":"07f137dc","38":"594f6b35","39":"e9c744c8","40":"f7b0bef5","41":"0a29b2f2","42":"1750d052","43":"dd9b393c","44":"b4ed1492","45":"df4fc2e5","46":"42aa0818","47":"c0c7ba98","48":"b1f34bab","49":"6357f85c","50":"5fd49186","51":"1adc38f8","52":"fea8bece","53":"9152167d","54":"302a2f5e","55":"8fa379c1","56":"ecfd0d2c","57":"d289073a","58":"73fa7712","59":"d934b58f","60":"766c7736","61":"990d0842","62":"8835b3ff","63":"105ad145","64":"0c3cef19","65":"7fd312e5","66":"ba2631e8","67":"e940965f","68":"e0c9a034","69":"9ea5ea2d","70":"c8ba503f","71":"5effdcde","72":"e4fc7f56","73":"03a9b794","74":"5d48bab8","75":"a057e1bd","76":"463add77","77":"77f3b65a","78":"ebed9e86","79":"d62cbe47","80":"c2cffa37","81":"5d2e8727","82":"f6eb6498","83":"dc8d1643","84":"2d6ecfd5","85":"965cda06","86":"301d5b0d","87":"6a23c5ff","88":"4371281c","89":"e89f3e08","90":"7ed431d9","91":"fa6cce38","92":"10b6c63e","93":"3b7a5d2e","94":"76cdd423","95":"0f97d9ca","96":"8e3f396b","97":"51f38cea","98":"e196cdfc","99":"2d19140c","100":"6b3636b7","101":"c693a8fb","102":"3007da08","103":"3529dc2c","104":"b17e9cc1","105":"ec22ed03","106":"37f40343","107":"71f3e1bb","108":"3e5c7d1f","109":"bcf50865","110":"3776eb6b","111":"91b8ab88","112":"76b0a4bc","113":"c525ff6a","114":"1b5df033","115":"7dd06871","116":"ecff0d37","117":"b18323f2","118":"8cd96265","119":"07633fcc","120":"f90cd03e","121":"15414746","122":"c9a5a14b","123":"7ac47297","124":"2026d165","125":"560653d8","126":"5b4b30b5","127":"b6a8b1a7","128":"b1bf0bdf","129":"ef210f1a","130":"67a82f0e","131":"a8160b14","132":"5ab77e1a","133":"075af754","134":"9dd710de","135":"4b86cf18","136":"cf2048d3","137":"519b1fae","138":"d0f47d99","139":"01acc4e5","140":"98306c4c","141":"d797c9b5","142":"34e9e576","143":"7b7efa1a","144":"3e70ec35","145":"b7463ed3","146":"2b0e3278","147":"15fde8e8","148":"86c257c0","149":"3ed3fad6","150":"4e4cff38","151":"92a34418","152":"4593e125","153":"011280d9","154":"4a57bba7","155":"ef327b42","156":"c21981c6","157":"bab5f3ed","158":"e05e5ea0","159":"95ed7a8f","160":"da4c509c","161":"46d4f5e2","162":"af296485","163":"8a55c680","164":"982f968c","165":"d048e040","166":"c29e4695","167":"f2c4016d","168":"911e1758","169":"91cb36dd","170":"5ff8a01e","171":"2954ff2e","172":"dd67868a","173":"0ea8374a","174":"b60de8cd","175":"a12cef73","176":"7afdf2bd","177":"9fc758cc","178":"598b817d","179":"95ba6e62","180":"d751ff7e","181":"852b6409","182":"498fcaaf","183":"91cb21f9","184":"a9da3302","185":"70943773","186":"259f1940","187":"aadc6528","188":"5bf3181c","189":"3e8d523d","190":"cb251023","191":"6d0ffeac","192":"f4f11544","193":"2c7023c8","194":"db7b2b3e","195":"9e8d176d","196":"b83b067f","197":"2ffb8601","198":"0c33c032","199":"34829465","200":"8b1166c5","201":"37c03cc0","202":"945755f1","203":"a734c359","204":"6429b924","205":"eddca23b","206":"f9980246","207":"73a45ef3","208":"75e3af6e","209":"ed67395c","210":"5f3ee5e7","211":"8052e6e0","212":"2053e6eb","213":"1eb604df","214":"8d61899f","215":"e908bafe","216":"2912e53c","217":"6e78ee99","218":"264d074e","219":"13d1cc59","220":"e0b489fa","221":"9ad9f9a8","222":"2c4c1c92","223":"304a9f02","224":"e168e619","225":"507c2465","226":"c23bccae","227":"21d64eb9","228":"2a025b60","229":"4242f403","230":"da9e730f","231":"118c712c","232":"6617a37b","233":"f50616f5","234":"c5b463ee","235":"d03eb508","236":"5c215786","237":"ccda38c2","238":"9e89a84c","239":"ea6230c9","240":"63008401","241":"dc21b366","242":"55e6fdcf","243":"4cbf99c4","244":"4fdcc95b","245":"90fc74fc","246":"2f2de6ef","247":"69ed510f","248":"92f7e083","249":"5cdf6b65","250":"39ae6de5","251":"5a52a60b","252":"e501891e","253":"cf94cbfb","254":"d75f8724","255":"63b9163f","256":"083172d5","257":"4bc986ca","258":"1a2ce091","259":"3ad7d88c","260":"8a42c43a","261":"dd7fb199","262":"d22df094","263":"e62396e4","264":"d0b8a362","265":"c7bfffc3","266":"81de26e1","267":"c0f91f47","268":"43fd5a09","269":"a562e125","270":"8749c211","271":"d3944971","272":"211d2fe5","273":"a868411a","274":"681fe1ef","275":"11a4e806","276":"9c577419","277":"dbac6a23","278":"61ea2bf7","279":"0aa66312","280":"79255039","281":"b86b8320"}[chunkId] + ".chunk.js"; +/******/ var timeout = setTimeout(onScriptComplete, 120000); +/******/ script.onerror = script.onload = onScriptComplete; +/******/ function onScriptComplete() { +/******/ // avoid mem leaks in IE. +/******/ script.onerror = script.onload = null; +/******/ clearTimeout(timeout); +/******/ var chunk = installedChunks[chunkId]; +/******/ if(chunk !== 0) { +/******/ if(chunk) { +/******/ chunk[1](new Error('Loading chunk ' + chunkId + ' failed.')); +/******/ } +/******/ installedChunks[chunkId] = undefined; +/******/ } +/******/ }; +/******/ head.appendChild(script); +/******/ +/******/ return promise; +/******/ }; +/******/ +/******/ // expose the modules object (__webpack_modules__) +/******/ __webpack_require__.m = modules; +/******/ +/******/ // expose the module cache +/******/ __webpack_require__.c = installedModules; +/******/ +/******/ // define getter function for harmony exports +/******/ __webpack_require__.d = function(exports, name, getter) { +/******/ if(!__webpack_require__.o(exports, name)) { +/******/ Object.defineProperty(exports, name, { +/******/ configurable: false, +/******/ enumerable: true, +/******/ get: getter +/******/ }); +/******/ } +/******/ }; +/******/ +/******/ // getDefaultExport function for compatibility with non-harmony modules +/******/ __webpack_require__.n = function(module) { +/******/ var getter = module && module.__esModule ? +/******/ function getDefault() { return module['default']; } : +/******/ function getModuleExports() { return module; }; +/******/ __webpack_require__.d(getter, 'a', getter); +/******/ return getter; +/******/ }; +/******/ +/******/ // Object.prototype.hasOwnProperty.call +/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; +/******/ +/******/ // __webpack_public_path__ +/******/ __webpack_require__.p = "/react/build/"; +/******/ +/******/ // on error function for async loading +/******/ __webpack_require__.oe = function(err) { console.error(err); throw err; }; +/******/ +/******/ // Load entry module and return exports +/******/ return __webpack_require__(__webpack_require__.s = 401); +/******/ }) +/************************************************************************/ +/******/ ([ +/* 0 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +if (true) { + module.exports = __webpack_require__(408); +} else { + module.exports = require('./cjs/react.development.js'); +} + + +/***/ }), +/* 1 */ +/***/ (function(module, exports, __webpack_require__) { + +/** + * Copyright (c) 2013-present, Facebook, Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +if (false) { + var ReactIs = require('react-is'); + + // By explicitly using `prop-types` you are opting into new development behavior. + // http://fb.me/prop-types-in-prod + var throwOnDirectAccess = true; + module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess); +} else { + // By explicitly using `prop-types` you are opting into new production behavior. + // http://fb.me/prop-types-in-prod + module.exports = __webpack_require__(418)(); +} + + +/***/ }), +/* 2 */ +/***/ (function(module, exports) { + +function _interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { + default: obj + }; +} + +module.exports = _interopRequireDefault; + +/***/ }), +/* 3 */ +/***/ (function(module, exports, __webpack_require__) { + +var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*! + Copyright (c) 2017 Jed Watson. + Licensed under the MIT License (MIT), see + http://jedwatson.github.io/classnames +*/ +/* global define */ + +(function () { + 'use strict'; + + var hasOwn = {}.hasOwnProperty; + + function classNames () { + var classes = []; + + for (var i = 0; i < arguments.length; i++) { + var arg = arguments[i]; + if (!arg) continue; + + var argType = typeof arg; + + if (argType === 'string' || argType === 'number') { + classes.push(arg); + } else if (Array.isArray(arg) && arg.length) { + var inner = classNames.apply(null, arg); + if (inner) { + classes.push(inner); + } + } else if (argType === 'object') { + for (var key in arg) { + if (hasOwn.call(arg, key) && arg[key]) { + classes.push(key); + } + } + } + } + + return classes.join(' '); + } + + if (typeof module !== 'undefined' && module.exports) { + classNames.default = classNames; + module.exports = classNames; + } else if (true) { + // register as 'classnames', consistent with npm package name + !(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_RESULT__ = function () { + return classNames; + }.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), + __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); + } else { + window.classNames = classNames; + } +}()); + + +/***/ }), +/* 4 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +function checkDCE() { + /* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */ + if ( + typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ === 'undefined' || + typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE !== 'function' + ) { + return; + } + if (false) { + // This branch is unreachable because this function is only called + // in production, but the condition is true only in development. + // Therefore if the branch is still here, dead code elimination wasn't + // properly applied. + // Don't change the message. React DevTools relies on it. Also make sure + // this message doesn't occur elsewhere in this function, or it will cause + // a false positive. + throw new Error('^_^'); + } + try { + // Verify that the code above has been dead code eliminated (DCE'd). + __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(checkDCE); + } catch (err) { + // DevTools shouldn't crash React, no matter what. + // We should still report in case we break this code. + console.error(err); + } +} + +if (true) { + // DCE check should happen before ReactDOM bundle executes so that + // DevTools can report bad minification during injection. + checkDCE(); + module.exports = __webpack_require__(409); +} else { + module.exports = require('./cjs/react-dom.development.js'); +} + + +/***/ }), +/* 5 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__UrlTool__ = __webpack_require__(639); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "M", function() { return __WEBPACK_IMPORTED_MODULE_0__UrlTool__["b"]; }); +/* unused harmony reexport getmyUrl */ +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "O", function() { return __WEBPACK_IMPORTED_MODULE_0__UrlTool__["c"]; }); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "U", function() { return __WEBPACK_IMPORTED_MODULE_0__UrlTool__["i"]; }); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "_3", function() { return __WEBPACK_IMPORTED_MODULE_0__UrlTool__["l"]; }); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "P", function() { return __WEBPACK_IMPORTED_MODULE_0__UrlTool__["d"]; }); +/* unused harmony reexport getUrlmys */ +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "V", function() { return __WEBPACK_IMPORTED_MODULE_0__UrlTool__["j"]; }); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "_5", function() { return __WEBPACK_IMPORTED_MODULE_0__UrlTool__["m"]; }); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "R", function() { return __WEBPACK_IMPORTED_MODULE_0__UrlTool__["f"]; }); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "T", function() { return __WEBPACK_IMPORTED_MODULE_0__UrlTool__["h"]; }); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "S", function() { return __WEBPACK_IMPORTED_MODULE_0__UrlTool__["g"]; }); +/* unused harmony reexport getUploadActionUrlOfAuth */ +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Q", function() { return __WEBPACK_IMPORTED_MODULE_0__UrlTool__["e"]; }); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "x", function() { return __WEBPACK_IMPORTED_MODULE_0__UrlTool__["a"]; }); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "X", function() { return __WEBPACK_IMPORTED_MODULE_0__UrlTool__["k"]; }); +/* unused harmony reexport getupload_git_file */ +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__Component__ = __webpack_require__(657); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "_6", function() { return __WEBPACK_IMPORTED_MODULE_1__Component__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__UrlTool2__ = __webpack_require__(658); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__UrlTool2___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2__UrlTool2__); +/* harmony reexport (default from non-hamory) */ __webpack_require__.d(__webpack_exports__, "_4", function() { return __WEBPACK_IMPORTED_MODULE_2__UrlTool2___default.a; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__SnackbarHOC__ = __webpack_require__(659); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "w", function() { return __WEBPACK_IMPORTED_MODULE_3__SnackbarHOC__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__EventUtil__ = __webpack_require__(662); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "_10", function() { return __WEBPACK_IMPORTED_MODULE_4__EventUtil__["e"]; }); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "_2", function() { return __WEBPACK_IMPORTED_MODULE_4__EventUtil__["d"]; }); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "_1", function() { return __WEBPACK_IMPORTED_MODULE_4__EventUtil__["c"]; }); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "E", function() { return __WEBPACK_IMPORTED_MODULE_4__EventUtil__["b"]; }); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "D", function() { return __WEBPACK_IMPORTED_MODULE_4__EventUtil__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__RouterUtil__ = __webpack_require__(663); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "_11", function() { return __WEBPACK_IMPORTED_MODULE_5__RouterUtil__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__UnitUtil__ = __webpack_require__(664); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "F", function() { return __WEBPACK_IMPORTED_MODULE_6__UnitUtil__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__TextUtil__ = __webpack_require__(665); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "_0", function() { return __WEBPACK_IMPORTED_MODULE_7__TextUtil__["e"]; }); +/* unused harmony reexport uploadNameSizeSeperator */ +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "B", function() { return __WEBPACK_IMPORTED_MODULE_7__TextUtil__["a"]; }); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "C", function() { return __WEBPACK_IMPORTED_MODULE_7__TextUtil__["b"]; }); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Z", function() { return __WEBPACK_IMPORTED_MODULE_7__TextUtil__["d"]; }); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "J", function() { return __WEBPACK_IMPORTED_MODULE_7__TextUtil__["c"]; }); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "_7", function() { return __WEBPACK_IMPORTED_MODULE_7__TextUtil__["f"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__DateUtil__ = __webpack_require__(666); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "W", function() { return __WEBPACK_IMPORTED_MODULE_8__DateUtil__["c"]; }); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "N", function() { return __WEBPACK_IMPORTED_MODULE_8__DateUtil__["b"]; }); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "K", function() { return __WEBPACK_IMPORTED_MODULE_8__DateUtil__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__util_ShareUtil__ = __webpack_require__(667); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "H", function() { return __WEBPACK_IMPORTED_MODULE_9__util_ShareUtil__["b"]; }); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "I", function() { return __WEBPACK_IMPORTED_MODULE_9__util_ShareUtil__["c"]; }); +/* unused harmony reexport configShareForShixuns */ +/* unused harmony reexport configShareForCourses */ +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "G", function() { return __WEBPACK_IMPORTED_MODULE_9__util_ShareUtil__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__Env__ = __webpack_require__(668); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Y", function() { return __WEBPACK_IMPORTED_MODULE_10__Env__["a"]; }); +/* unused harmony reexport isMobile */ +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__Store__ = __webpack_require__(669); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "_8", function() { return __WEBPACK_IMPORTED_MODULE_11__Store__["b"]; }); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "L", function() { return __WEBPACK_IMPORTED_MODULE_11__Store__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__LogUtil__ = __webpack_require__(681); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "_9", function() { return __WEBPACK_IMPORTED_MODULE_12__LogUtil__["a"]; }); +/* unused harmony reexport trace */ +/* unused harmony reexport debug */ +/* unused harmony reexport info */ +/* unused harmony reexport warn */ +/* unused harmony reexport error */ +/* unused harmony reexport trace_c */ +/* unused harmony reexport debug_c */ +/* unused harmony reexport info_c */ +/* unused harmony reexport warn_c */ +/* unused harmony reexport error_c */ +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__Const__ = __webpack_require__(683); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "j", function() { return __WEBPACK_IMPORTED_MODULE_13__Const__["a"]; }); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "k", function() { return __WEBPACK_IMPORTED_MODULE_13__Const__["b"]; }); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "n", function() { return __WEBPACK_IMPORTED_MODULE_13__Const__["e"]; }); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "o", function() { return __WEBPACK_IMPORTED_MODULE_13__Const__["f"]; }); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "l", function() { return __WEBPACK_IMPORTED_MODULE_13__Const__["c"]; }); +/* unused harmony reexport EDU_GAME_MANAGER */ +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "p", function() { return __WEBPACK_IMPORTED_MODULE_13__Const__["g"]; }); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "m", function() { return __WEBPACK_IMPORTED_MODULE_13__Const__["d"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__components_attachment_AttachmentList__ = __webpack_require__(372); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return __WEBPACK_IMPORTED_MODULE_14__components_attachment_AttachmentList__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15__context_ThemeContext__ = __webpack_require__(684); +/* unused harmony reexport themes */ +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "y", function() { return __WEBPACK_IMPORTED_MODULE_15__context_ThemeContext__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16__components_ModalHOC__ = __webpack_require__(685); +/* unused harmony reexport ModalHOC */ +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_17__components_SetAppModel__ = __webpack_require__(700); +/* unused harmony reexport SetAppModel */ +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_18__components_LinkAfterLogin__ = __webpack_require__(701); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "r", function() { return __WEBPACK_IMPORTED_MODULE_18__components_LinkAfterLogin__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_19__components_Cropper__ = __webpack_require__(702); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "h", function() { return __WEBPACK_IMPORTED_MODULE_19__components_Cropper__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_20__components_ConditionToolTip__ = __webpack_require__(703); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "g", function() { return __WEBPACK_IMPORTED_MODULE_20__components_ConditionToolTip__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_21__components_instruction_PopInstruction__ = __webpack_require__(726); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "v", function() { return __WEBPACK_IMPORTED_MODULE_21__components_instruction_PopInstruction__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_22__components_form_City__ = __webpack_require__(727); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return __WEBPACK_IMPORTED_MODULE_22__components_form_City__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_23__course_WordsBtn__ = __webpack_require__(735); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "A", function() { return __WEBPACK_IMPORTED_MODULE_23__course_WordsBtn__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_24__course_ActionBtn__ = __webpack_require__(736); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return __WEBPACK_IMPORTED_MODULE_24__course_ActionBtn__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_25__components_markdown_MarkdownToHtml__ = __webpack_require__(737); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "s", function() { return __WEBPACK_IMPORTED_MODULE_25__components_markdown_MarkdownToHtml__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_26__components_markdown_DMDEditor__ = __webpack_require__(739); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "i", function() { return __WEBPACK_IMPORTED_MODULE_26__components_markdown_DMDEditor__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_27__components_media_Clappr__ = __webpack_require__(770); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return __WEBPACK_IMPORTED_MODULE_27__components_media_Clappr__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_28__components_media_AliyunUploader__ = __webpack_require__(777); +/* unused harmony reexport AliyunUploader */ +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_29__hooks_ImageLayer2__ = __webpack_require__(778); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "q", function() { return __WEBPACK_IMPORTED_MODULE_29__hooks_ImageLayer2__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_30__modules_courses_common_CBreadcrumb__ = __webpack_require__(354); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return __WEBPACK_IMPORTED_MODULE_30__modules_courses_common_CBreadcrumb__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_31__modules_courses_common_CNotificationHOC__ = __webpack_require__(355); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return __WEBPACK_IMPORTED_MODULE_31__modules_courses_common_CNotificationHOC__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_32__modules_courses_common_ModalWrapper__ = __webpack_require__(341); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "t", function() { return __WEBPACK_IMPORTED_MODULE_32__modules_courses_common_ModalWrapper__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_33__modules_courses_coursesPublic_NoneData__ = __webpack_require__(334); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "u", function() { return __WEBPACK_IMPORTED_MODULE_33__modules_courses_coursesPublic_NoneData__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_34__modules_modals_WordNumberTextarea__ = __webpack_require__(787); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "z", function() { return __WEBPACK_IMPORTED_MODULE_34__modules_modals_WordNumberTextarea__["a"]; }); +//import { from } from '_array-flatten@2.1.2@array-flatten'; +// export { default as OrderStateUtil } from '../routes/Order/components/OrderStateUtil'; +// export { default as DragValidator } from './components/DragValidator' +// course +// 外部 + + +/***/ }), +/* 6 */ +/***/ (function(module, exports, __webpack_require__) { + +var _Object$getOwnPropertySymbols = __webpack_require__(252); + +var _Object$keys = __webpack_require__(50); + +function _objectWithoutProperties(source, excluded) { + if (source == null) return {}; + var target = {}; + + var sourceKeys = _Object$keys(source); + + var key, i; + + for (i = 0; i < sourceKeys.length; i++) { + key = sourceKeys[i]; + if (excluded.indexOf(key) >= 0) continue; + target[key] = source[key]; + } + + if (_Object$getOwnPropertySymbols) { + var sourceSymbolKeys = _Object$getOwnPropertySymbols(source); + + for (i = 0; i < sourceSymbolKeys.length; i++) { + key = sourceSymbolKeys[i]; + if (excluded.indexOf(key) >= 0) continue; + if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; + target[key] = source[key]; + } + } + + return target; +} + +module.exports = _objectWithoutProperties; + +/***/ }), +/* 7 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "polyfill", function() { return polyfill; }); +/** + * Copyright (c) 2013-present, Facebook, Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +function componentWillMount() { + // Call this.constructor.gDSFP to support sub-classes. + var state = this.constructor.getDerivedStateFromProps(this.props, this.state); + if (state !== null && state !== undefined) { + this.setState(state); + } +} + +function componentWillReceiveProps(nextProps) { + // Call this.constructor.gDSFP to support sub-classes. + // Use the setState() updater to ensure state isn't stale in certain edge cases. + function updater(prevState) { + var state = this.constructor.getDerivedStateFromProps(nextProps, prevState); + return state !== null && state !== undefined ? state : null; + } + // Binding "this" is important for shallow renderer support. + this.setState(updater.bind(this)); +} + +function componentWillUpdate(nextProps, nextState) { + try { + var prevProps = this.props; + var prevState = this.state; + this.props = nextProps; + this.state = nextState; + this.__reactInternalSnapshotFlag = true; + this.__reactInternalSnapshot = this.getSnapshotBeforeUpdate( + prevProps, + prevState + ); + } finally { + this.props = prevProps; + this.state = prevState; + } +} + +// React may warn about cWM/cWRP/cWU methods being deprecated. +// Add a flag to suppress these warnings for this special case. +componentWillMount.__suppressDeprecationWarning = true; +componentWillReceiveProps.__suppressDeprecationWarning = true; +componentWillUpdate.__suppressDeprecationWarning = true; + +function polyfill(Component) { + var prototype = Component.prototype; + + if (!prototype || !prototype.isReactComponent) { + throw new Error('Can only polyfill class components'); + } + + if ( + typeof Component.getDerivedStateFromProps !== 'function' && + typeof prototype.getSnapshotBeforeUpdate !== 'function' + ) { + return Component; + } + + // If new component APIs are defined, "unsafe" lifecycles won't be called. + // Error if any of these lifecycles are present, + // Because they would work differently between older and newer (16.3+) versions of React. + var foundWillMountName = null; + var foundWillReceivePropsName = null; + var foundWillUpdateName = null; + if (typeof prototype.componentWillMount === 'function') { + foundWillMountName = 'componentWillMount'; + } else if (typeof prototype.UNSAFE_componentWillMount === 'function') { + foundWillMountName = 'UNSAFE_componentWillMount'; + } + if (typeof prototype.componentWillReceiveProps === 'function') { + foundWillReceivePropsName = 'componentWillReceiveProps'; + } else if (typeof prototype.UNSAFE_componentWillReceiveProps === 'function') { + foundWillReceivePropsName = 'UNSAFE_componentWillReceiveProps'; + } + if (typeof prototype.componentWillUpdate === 'function') { + foundWillUpdateName = 'componentWillUpdate'; + } else if (typeof prototype.UNSAFE_componentWillUpdate === 'function') { + foundWillUpdateName = 'UNSAFE_componentWillUpdate'; + } + if ( + foundWillMountName !== null || + foundWillReceivePropsName !== null || + foundWillUpdateName !== null + ) { + var componentName = Component.displayName || Component.name; + var newApiName = + typeof Component.getDerivedStateFromProps === 'function' + ? 'getDerivedStateFromProps()' + : 'getSnapshotBeforeUpdate()'; + + throw Error( + 'Unsafe legacy lifecycles will not be called for components using new component APIs.\n\n' + + componentName + + ' uses ' + + newApiName + + ' but also contains the following legacy lifecycles:' + + (foundWillMountName !== null ? '\n ' + foundWillMountName : '') + + (foundWillReceivePropsName !== null + ? '\n ' + foundWillReceivePropsName + : '') + + (foundWillUpdateName !== null ? '\n ' + foundWillUpdateName : '') + + '\n\nThe above lifecycles should be removed. Learn more about this warning here:\n' + + 'https://fb.me/react-async-component-lifecycle-hooks' + ); + } + + // React <= 16.2 does not support static getDerivedStateFromProps. + // As a workaround, use cWM and cWRP to invoke the new static lifecycle. + // Newer versions of React will ignore these lifecycles if gDSFP exists. + if (typeof Component.getDerivedStateFromProps === 'function') { + prototype.componentWillMount = componentWillMount; + prototype.componentWillReceiveProps = componentWillReceiveProps; + } + + // React <= 16.2 does not support getSnapshotBeforeUpdate. + // As a workaround, use cWU to invoke the new lifecycle. + // Newer versions of React will ignore that lifecycle if gSBU exists. + if (typeof prototype.getSnapshotBeforeUpdate === 'function') { + if (typeof prototype.componentDidUpdate !== 'function') { + throw new Error( + 'Cannot polyfill getSnapshotBeforeUpdate() for components that do not define componentDidUpdate() on the prototype' + ); + } + + prototype.componentWillUpdate = componentWillUpdate; + + var componentDidUpdate = prototype.componentDidUpdate; + + prototype.componentDidUpdate = function componentDidUpdatePolyfill( + prevProps, + prevState, + maybeSnapshot + ) { + // 16.3+ will not execute our will-update method; + // It will pass a snapshot value to did-update though. + // Older versions will require our polyfilled will-update value. + // We need to handle both cases, but can't just check for the presence of "maybeSnapshot", + // Because for <= 15.x versions this might be a "prevContext" object. + // We also can't just check "__reactInternalSnapshot", + // Because get-snapshot might return a falsy value. + // So check for the explicit __reactInternalSnapshotFlag flag to determine behavior. + var snapshot = this.__reactInternalSnapshotFlag + ? this.__reactInternalSnapshot + : maybeSnapshot; + + componentDidUpdate.call(this, prevProps, prevState, snapshot); + }; + } + + return Component; +} + + + + +/***/ }), +/* 8 */ +/***/ (function(module, exports, __webpack_require__) { + +module.exports = __webpack_require__(453); + +/***/ }), +/* 9 */ +/***/ (function(module, exports, __webpack_require__) { + +var _Object$assign = __webpack_require__(512); + +function _extends() { + module.exports = _extends = _Object$assign || function (target) { + for (var i = 1; i < arguments.length; i++) { + var source = arguments[i]; + + for (var key in source) { + if (Object.prototype.hasOwnProperty.call(source, key)) { + target[key] = source[key]; + } + } + } + + return target; + }; + + return _extends.apply(this, arguments); +} + +module.exports = _extends; + +/***/ }), +/* 10 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +/* + * @Description: action类型 + * @Author: tangjiang + * @Date: 2019-11-13 20:05:39 + * @Last Modified by: tangjiang + * @Last Modified time: 2019-11-14 09:29:45 + */var types={ADD_TODO:'ADD_TODO',GET_OJ_LIST:'GET_OJ_LIST',// JC 列表 +SAVE_OJ_FORM_ID:'SAVE_OJ_FORM_ID',// 保存OJ form表单信息 +GET_OJ_BY_ID:'GET_OJ_BY_ID',// 根据 id 号获取ojList中的数据 +SAVE_OJ_FORM_CODE:'SAVE_OJ_FORM_CODE',// 代码 +VALIDATE_OJ_FORM:'VALIDATE_OJ_FORM',// 验证表单 +VALIDATE_OJ_NAME:'VALIDATE_OJ_NAME',// 任务名称 +VALIDATE_OJ_LANGUAGE:'VALIDATE_OJ_LANGUAGE',// 编程语言 +VALIDATE_OJ_DESCRIPTION:'VALIDATE_OJ_DESCRIPTION',// 描述 +VALIDATE_OJ_DIFFICULT:'VALIDATE_OJ_DIFFICULT',// 难易度 +VALIDATE_OJ_TIMELIMIT:'VALIDATE_OJ_TIMELIMIT',// 时间限制 +VALIDATE_OJ_CATEGORY:'VALIDATE_OJ_CATEGORY',// 分类 +VALIDATE_OJ_SUB_DISCIPLINE_ID:'VALIDATE_OJ_SUB_DISCIPLINE_ID',// 方向 +VALIDATE_OJ_OPENORNOT:'VALIDATE_OJ_OPENORNOT',// 公开程序 +SAVE_TAG_DISCIPLINE_ID:'SAVE_TAG_DISCIPLINE_ID',// 保存知识点 +SAVE_OJ_FORM:'SAVE_OJ_FORM',// 保存表单 +ADD_TEST_CASE:'ADD_TEST_CASE',// 添加测试用例 +DELETE_TEST_CASE:'DELETE_TEST_CASE',// 删除测试用例 +SAVE_TEST_CASE:'SAVE_TEST_CASE',// 保存测试用例 +SAVE_USE_TEST_CASE_VALUE:'SAVE_USE_TEST_CASE_VALUE',// 用户自定义测试用例值 +CHANGE_PUBLISH_VALUE:'CHANGE_PUBLISH_VALUE',// 改变发布状态值 +CLEAR_JSFORM_STORE:'CLEAR_JSFORM_STORE',// 清空测试用例 +SAVE_EDIT_OJ_FORM_AND_TEST_CASE:'SAVE_EDIT_OJ_FORM_AND_TEST_CASE',// 保存根据id获取的表单及测试用例值 +TEST_CODE_STATUS:'TEST_CODE_STATUS',// 代码调试状态 +VALIDATE_TEST_CODE_ARRS:'VALIDATE_TEST_CODE_ARRS',// 更改测试用例验证结果 +TEST_CASE_INPUT_CHANGE:'TEST_CASE_INPUT_CHANGE',// 测试用例输入值改变时 +TEST_CASE_OUTPUT_CHANGE:'TEST_CASE_OUTPUT_CHANGE',// 测试用例输出值改变时 +DEBUGGER_CODE:'DEBUGGER_CODE',// 调试代码 +GET_COURSE_QUESTION:'GET_COURSE_QUESTION',// 获取编辑题 +CHANGE_KNOWLEDGES:'CHANGE_KNOWLEDGES',// 保存所选择的知识点 +SET_OJ_INITIAL_VALUE:'SET_OJ_INITIAL_VALUE',// 设置初始值 +// study +SAVE_USER_PROGRAM_ID:'SAVE_USER_PROGRAM_ID',// 保存用户编程题id值 +USER_PROGRAM_DETAIL:'USER_PROGRAM_DETAIL',// 用户编程题详情 +SHOW_OR_HIDE_CONTROL:'SHOW_OR_HIDE_CONTROL',// 显示或隐藏控制台 +LOADING_STATUS:'LOADING_STATUS',// loading状态 +COMMIT_RECORD_DETAIL:'COMMIT_RECORD_DETAIL',// 提交记录详情 +COMMIT_RECORD:'COMMIT_RECORD',// 提交记录 +SAVE_USER_CODE:'SAVE_USER_CODE',// 用户编辑的代码块 +IS_UPDATE_CODE:'IS_UPDATE_CODE',// 是否更新代码块内容 +CHANGE_USER_CODE_TAB:'CHANGE_USER_CODE_TAB',// 切换学员测评tab +SUBMIT_LOADING_STATUS:'SUBMIT_LOADING_STATUS',// 提交按钮状态值 +PUBLISH_LOADING_STATUS:'PUBLISH_LOADING_STATUS',// 发布按钮 +IS_MY_SOURCE:'IS_MY_SOURCE',CHANGE_PAGINATION_INFO:'CHANGE_PAGINATION_INFO',// 改变分页数据 +UPDATE_TEST_AND_VALIDATE:'UPDATE_TEST_AND_VALIDATE',// 更新测试用例及验证值 +UPDATE_OPEN_TESTCASE_INDEX:'UPDATE_OPEN_TESTCASE_INDEX',// 更新测试用例索引 +GET_COMMIT_RECORD_DETAIL_BY_ID:'GET_COMMIT_RECORD_DETAIL_BY_ID',// 根据id号获取提交记录详情 +RESTORE_INITIAL_CODE:'RESTORE_INITIAL_CODE',// 恢复初始代码 +SAVE_USER_INFO:'SAVE_USER_INFO',// 只在用户信息 +SAVE_HACK_IDENTIFIER:'SAVE_HACK_IDENTIFIER',// 用户界面跑到编辑界面需要用的id值 +SAVE_EDITOR_CODE:'SAVE_EDITOR_CODE',// 保存详情页面中编辑时的代码 +CLICK_OPERATE_TYPE:'CLICK_OPERATE_TYPE',// 点击类型 +CLEAR_OJ_FOR_USER_REDUCER:'CLEAR_OJ_FOR_USER_REDUCER',// 退出时清空 ojForUserReducer保存内容 +ADD_OJ_LIKE_COUNT:'ADD_OJ_LIKE_COUNT',// 增加点赞数 +CHANGE_RECORD_PAGINATION_PAGE:'CHANGE_RECORD_PAGINATION_PAGE',// 改变提交分页 +UPDATE_OJ_FOR_USER_COMMENT_COUNT:'UPDATE_OJ_FOR_USER_COMMENT_COUNT',// 更新 hack 中的评论数, +UPDATE_NOTE_CONTENT:'UPDATE_NOTE_CONTENT',// 更新笔记内容 +UPDATE_HACK_PASSED:'UPDATE_HACK_PASSED',/*** jupyter */GET_JUPYTER_DATA_SETS:'GET_JUPYTER_DATA_SETS',// jupyter 数据集 +GET_JUPYTER_TPI_URL:'GET_JUPYTER_TPI_URL',// 获取 jupyter url +SAVE_JUPYTER_IDENTIFIER:'SAVE_JUPYTER_IDENTIFIER',// 保存jupyter identifier +SAVE_JUPYTER_INFO:'SAVE_JUPYTER_INFO',// 保存 jupyter 信息 +CHANGE_JUPYTER_URL_STATE:'CHANGE_JUPYTER_URL_STATE',// 获取url返回的状态值 +SAVE_JUPYTER_TPI:'SAVE_JUPYTER_TPI',// 保存 jupyter tpi +CHANGE_JUPYTER_CURRENT_PAGE:'CHANGE_JUPYTER_CURRENT_PAGE',SAVE_NOTICE_COUNT:'SAVE_NOTICE_COUNT',// 保存代码块是否更新 +AUTO_UPDATE_CODE:'AUTO_UPDATE_CODE',// 自动更新代码 +CHANGE_SHOW_DRAWER:'CHANGE_SHOW_DRAWER',CHANGE_JYPYTER_TIME:'CHANGE_JYPYTER_TIME',//增加15分钟 +CHANGE_EXTENDED_TIME:'CHANGE_EXTENDED_TIME',//延时 +CHANGE_UPDETA_SPIN:'CHANGE_UPDETA_SPIN',//加载 +/*** 评论 */ADD_COMMENTS:'ADD_COMMENTS',// 添加评论 +GET_COMMENT_LISTS:'GET_COMMENT_LISTS',// 获取评论列表 +REPLAY_CHILD_COMMENTS:'REPLAY_CHILD_COMMENTS',// 子回复 +DELETE_COMMENTS:'DELETE_COMMENTS',// 删除评论 +SAVE_COMMENT_IDENTIFIER:'SAVE_COMMENT_IDENTIFIER',// 评论时的identifier +CHANGE_COMMENT_PAGINATION_PARAMS:'CHANGE_COMMENT_PAGINATION_PARAMS',// 改变分页 +/** tpi */SHOW_OR_HIDE_TPI_TEST_CASE:'SHOW_OR_HIDE_TPI_TEST_CASE',// 显示或隐藏tpi测试集弹框 +IS_COLLAPSE_TEST_CASE:'IS_COLLAPSE_TEST_CASE',// 是否展开测试集 +/** 统计 */GET_STATIC_INFO:'GET_STATIC_INFO',CHANGE_STATIC_PARAMS:'CHANGE_STATIC_PARAMS',CHANGE_STATIC_TOTAL:'CHANGE_STATIC_TOTAL',/** 微信 */GET_WXCODE_BY_IDENTIFIER:'GET_WXCODE_BY_IDENTIFIER',GET_WXCODE_TEST_CASE:'GET_WXCODE_TEST_CASE',UPDATE_WXCODE_BY_IDENTIFIER:'UPDATE_WXCODE_BY_IDENTIFIER',UPDATE_WXCODE_FOR_EDITOR:'UPDATE_WXCODE_FOR_EDITOR',IS_SHOW_WXCODE_TEST_CASES:'IS_SHOW_WXCODE_TEST_CASES',SHOW_WX_CODE_LOADING:'SHOW_WX_CODE_LOADING',SHOW_WX_CODE_DIALOG:'SHOW_WX_CODE_DIALOG',SET_GOLD_AND_EXPERIENCE:'SET_GOLD_AND_EXPERIENCE'};/* harmony default export */ __webpack_exports__["a"] = (types); + +/***/ }), +/* 11 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +exports.__esModule = true; + +exports.default = function (instance, Constructor) { + if (!(instance instanceof Constructor)) { + throw new TypeError("Cannot call a class as a function"); + } +}; + +/***/ }), +/* 12 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +exports.__esModule = true; + +var _typeof2 = __webpack_require__(122); + +var _typeof3 = _interopRequireDefault(_typeof2); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +exports.default = function (self, call) { + if (!self) { + throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); + } + + return call && ((typeof call === "undefined" ? "undefined" : (0, _typeof3.default)(call)) === "object" || typeof call === "function") ? call : self; +}; + +/***/ }), +/* 13 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +exports.__esModule = true; + +var _setPrototypeOf = __webpack_require__(493); + +var _setPrototypeOf2 = _interopRequireDefault(_setPrototypeOf); + +var _create = __webpack_require__(496); + +var _create2 = _interopRequireDefault(_create); + +var _typeof2 = __webpack_require__(122); + +var _typeof3 = _interopRequireDefault(_typeof2); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +exports.default = function (subClass, superClass) { + if (typeof superClass !== "function" && superClass !== null) { + throw new TypeError("Super expression must either be null or a function, not " + (typeof superClass === "undefined" ? "undefined" : (0, _typeof3.default)(superClass))); + } + + subClass.prototype = (0, _create2.default)(superClass && superClass.prototype, { + constructor: { + value: subClass, + enumerable: false, + writable: true, + configurable: true + } + }); + if (superClass) _setPrototypeOf2.default ? (0, _setPrototypeOf2.default)(subClass, superClass) : subClass.__proto__ = superClass; +}; + +/***/ }), +/* 14 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); +Object.defineProperty(exports, "ConfigConsumer", { + enumerable: true, + get: function get() { + return _context.ConfigConsumer; + } +}); +exports["default"] = exports.configConsumerProps = void 0; + +var React = _interopRequireWildcard(__webpack_require__(0)); + +var _localeProvider = _interopRequireWildcard(__webpack_require__(417)); + +var _LocaleReceiver = _interopRequireDefault(__webpack_require__(72)); + +var _context = __webpack_require__(358); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; } + +function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } + +function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); } + +function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } + +function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); } + +function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); } + +function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } + +var configConsumerProps = ['getPopupContainer', 'rootPrefixCls', 'getPrefixCls', 'renderEmpty', 'csp', 'autoInsertSpaceInButton', 'locale', 'pageHeader']; +exports.configConsumerProps = configConsumerProps; + +var ConfigProvider = +/*#__PURE__*/ +function (_React$Component) { + _inherits(ConfigProvider, _React$Component); + + function ConfigProvider() { + var _this; + + _classCallCheck(this, ConfigProvider); + + _this = _possibleConstructorReturn(this, _getPrototypeOf(ConfigProvider).apply(this, arguments)); + + _this.getPrefixCls = function (suffixCls, customizePrefixCls) { + var _this$props$prefixCls = _this.props.prefixCls, + prefixCls = _this$props$prefixCls === void 0 ? 'ant' : _this$props$prefixCls; + if (customizePrefixCls) return customizePrefixCls; + return suffixCls ? "".concat(prefixCls, "-").concat(suffixCls) : prefixCls; + }; + + _this.renderProvider = function (context, legacyLocale) { + var _this$props = _this.props, + children = _this$props.children, + getPopupContainer = _this$props.getPopupContainer, + renderEmpty = _this$props.renderEmpty, + csp = _this$props.csp, + autoInsertSpaceInButton = _this$props.autoInsertSpaceInButton, + locale = _this$props.locale, + pageHeader = _this$props.pageHeader; + + var config = _extends(_extends({}, context), { + getPrefixCls: _this.getPrefixCls, + csp: csp, + autoInsertSpaceInButton: autoInsertSpaceInButton + }); + + if (getPopupContainer) { + config.getPopupContainer = getPopupContainer; + } + + if (renderEmpty) { + config.renderEmpty = renderEmpty; + } + + if (pageHeader) { + config.pageHeader = pageHeader; + } + + return React.createElement(_context.ConfigContext.Provider, { + value: config + }, React.createElement(_localeProvider["default"], { + locale: locale || legacyLocale, + _ANT_MARK__: _localeProvider.ANT_MARK + }, children)); + }; + + return _this; + } + + _createClass(ConfigProvider, [{ + key: "render", + value: function render() { + var _this2 = this; + + return React.createElement(_LocaleReceiver["default"], null, function (_, __, legacyLocale) { + return React.createElement(_context.ConfigConsumer, null, function (context) { + return _this2.renderProvider(context, legacyLocale); + }); + }); + } + }]); + + return ConfigProvider; +}(React.Component); + +var _default = ConfigProvider; +exports["default"] = _default; +//# sourceMappingURL=index.js.map + + +/***/ }), +/* 15 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +/** + * Copyright 2014-2015, Facebook, Inc. + * All rights reserved. + * + * This source code is licensed under the BSD-style license found in the + * LICENSE file in the root directory of this source tree. An additional grant + * of patent rights can be found in the PATENTS file in the same directory. + */ + + + +/** + * Similar to invariant but only logs a warning if the condition is not met. + * This can be used to log issues in development environments in critical + * paths. Removing the logging code for production environments will keep the + * same logic and follow the same code paths. + */ + +var warning = function() {}; + +if (false) { + warning = function(condition, format, args) { + var len = arguments.length; + args = new Array(len > 2 ? len - 2 : 0); + for (var key = 2; key < len; key++) { + args[key - 2] = arguments[key]; + } + if (format === undefined) { + throw new Error( + '`warning(condition, format, ...args)` requires a warning ' + + 'message argument' + ); + } + + if (format.length < 10 || (/^[s\W]*$/).test(format)) { + throw new Error( + 'The warning format should be able to uniquely identify this ' + + 'warning. Please, use a more descriptive format than: ' + format + ); + } + + if (!condition) { + var argIndex = 0; + var message = 'Warning: ' + + format.replace(/%s/g, function() { + return args[argIndex++]; + }); + if (typeof console !== 'undefined') { + console.error(message); + } + try { + // This error was thrown as a convenience so that you can use this stack + // to find the callsite that caused this warning to fire. + throw new Error(message); + } catch(x) {} + } + }; +} + +module.exports = warning; + + +/***/ }), +/* 16 */ +/***/ (function(module, exports) { + +var core = module.exports = { version: '2.6.5' }; +if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef + + +/***/ }), +/* 17 */ +/***/ (function(module, exports) { + +function _classCallCheck(instance, Constructor) { + if (!(instance instanceof Constructor)) { + throw new TypeError("Cannot call a class as a function"); + } +} + +module.exports = _classCallCheck; + +/***/ }), +/* 18 */ +/***/ (function(module, exports, __webpack_require__) { + +var _Object$defineProperty = __webpack_require__(152); + +function _defineProperties(target, props) { + for (var i = 0; i < props.length; i++) { + var descriptor = props[i]; + descriptor.enumerable = descriptor.enumerable || false; + descriptor.configurable = true; + if ("value" in descriptor) descriptor.writable = true; + + _Object$defineProperty(target, descriptor.key, descriptor); + } +} + +function _createClass(Constructor, protoProps, staticProps) { + if (protoProps) _defineProperties(Constructor.prototype, protoProps); + if (staticProps) _defineProperties(Constructor, staticProps); + return Constructor; +} + +module.exports = _createClass; + +/***/ }), +/* 19 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +exports.__esModule = true; + +var _assign = __webpack_require__(476); + +var _assign2 = _interopRequireDefault(_assign); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +exports.default = _assign2.default || function (target) { + for (var i = 1; i < arguments.length; i++) { + var source = arguments[i]; + + for (var key in source) { + if (Object.prototype.hasOwnProperty.call(source, key)) { + target[key] = source[key]; + } + } + } + + return target; +}; + +/***/ }), +/* 20 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var _interopRequireWildcard = __webpack_require__(119); + +var _interopRequireDefault = __webpack_require__(2); + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = exports.sheetsManager = void 0; + +var _extends2 = _interopRequireDefault(__webpack_require__(9)); + +var _keys = _interopRequireDefault(__webpack_require__(50)); + +var _objectSpread2 = _interopRequireDefault(__webpack_require__(26)); + +var _getPrototypeOf = _interopRequireDefault(__webpack_require__(22)); + +var _classCallCheck2 = _interopRequireDefault(__webpack_require__(17)); + +var _createClass2 = _interopRequireDefault(__webpack_require__(18)); + +var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(23)); + +var _inherits2 = _interopRequireDefault(__webpack_require__(24)); + +var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(25)); + +var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(6)); + +var _map = _interopRequireDefault(__webpack_require__(524)); + +var _minSafeInteger = _interopRequireDefault(__webpack_require__(540)); + +var _react = _interopRequireDefault(__webpack_require__(0)); + +var _propTypes = _interopRequireDefault(__webpack_require__(1)); + +var _warning = _interopRequireDefault(__webpack_require__(15)); + +var _hoistNonReactStatics = _interopRequireDefault(__webpack_require__(155)); + +var _getDisplayName = _interopRequireDefault(__webpack_require__(259)); + +var _wrapDisplayName = _interopRequireDefault(__webpack_require__(124)); + +var _contextTypes = _interopRequireDefault(__webpack_require__(543)); + +var _jss = __webpack_require__(261); + +var ns = _interopRequireWildcard(__webpack_require__(260)); + +var _jssPreset = _interopRequireDefault(__webpack_require__(267)); + +var _createMuiTheme = _interopRequireDefault(__webpack_require__(159)); + +var _themeListener = _interopRequireDefault(__webpack_require__(160)); + +var _createGenerateClassName = _interopRequireDefault(__webpack_require__(269)); + +var _getStylesCreator = _interopRequireDefault(__webpack_require__(584)); + +var _getThemeProps = _interopRequireDefault(__webpack_require__(585)); + +// Default JSS instance. +var jss = (0, _jss.create)((0, _jssPreset.default)()); // Use a singleton or the provided one by the context. + +var generateClassName = (0, _createGenerateClassName.default)(); // Global index counter to preserve source order. +// We create the style sheet during at the creation of the component, +// children are handled after the parents, so the order of style elements would be parent->child. +// It is a problem though when a parent passes a className +// which needs to override any childs styles. +// StyleSheet of the child has a higher specificity, because of the source order. +// So our solution is to render sheets them in the reverse order child->sheet, so +// that parent has a higher specificity. + +var indexCounter = _minSafeInteger.default; +var sheetsManager = new _map.default(); // We use the same empty object to ref count the styles that don't need a theme object. + +exports.sheetsManager = sheetsManager; +var noopTheme = {}; // In order to have self-supporting components, we rely on default theme when not provided. + +var defaultTheme; + +function getDefaultTheme() { + if (defaultTheme) { + return defaultTheme; + } + + defaultTheme = (0, _createMuiTheme.default)(); + return defaultTheme; +} // Link a style sheet with a component. +// It does not modify the component passed to it; +// instead, it returns a new component, with a `classes` property. + + +var withStyles = function withStyles(stylesOrCreator) { + var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; + return function (Component) { + var _options$withTheme = options.withTheme, + withTheme = _options$withTheme === void 0 ? false : _options$withTheme, + _options$flip = options.flip, + flip = _options$flip === void 0 ? null : _options$flip, + name = options.name, + styleSheetOptions = (0, _objectWithoutProperties2.default)(options, ["withTheme", "flip", "name"]); + var stylesCreator = (0, _getStylesCreator.default)(stylesOrCreator); + var listenToTheme = stylesCreator.themingEnabled || withTheme || typeof name === 'string'; + indexCounter += 1; + stylesCreator.options.index = indexCounter; + false ? (0, _warning.default)(indexCounter < 0, ['Material-UI: you might have a memory leak.', 'The indexCounter is not supposed to grow that much.'].join(' ')) : void 0; + + var WithStyles = + /*#__PURE__*/ + function (_React$Component) { + (0, _inherits2.default)(WithStyles, _React$Component); + + function WithStyles(props, context) { + var _this; + + (0, _classCallCheck2.default)(this, WithStyles); + _this = (0, _possibleConstructorReturn2.default)(this, (WithStyles.__proto__ || (0, _getPrototypeOf.default)(WithStyles)).call(this, props, context)); + Object.defineProperty((0, _assertThisInitialized2.default)(_this), "state", { + configurable: true, + enumerable: true, + writable: true, + value: {} + }); + Object.defineProperty((0, _assertThisInitialized2.default)(_this), "disableStylesGeneration", { + configurable: true, + enumerable: true, + writable: true, + value: false + }); + Object.defineProperty((0, _assertThisInitialized2.default)(_this), "jss", { + configurable: true, + enumerable: true, + writable: true, + value: null + }); + Object.defineProperty((0, _assertThisInitialized2.default)(_this), "sheetOptions", { + configurable: true, + enumerable: true, + writable: true, + value: null + }); + Object.defineProperty((0, _assertThisInitialized2.default)(_this), "sheetsManager", { + configurable: true, + enumerable: true, + writable: true, + value: sheetsManager + }); + Object.defineProperty((0, _assertThisInitialized2.default)(_this), "stylesCreatorSaved", { + configurable: true, + enumerable: true, + writable: true, + value: null + }); + Object.defineProperty((0, _assertThisInitialized2.default)(_this), "theme", { + configurable: true, + enumerable: true, + writable: true, + value: null + }); + Object.defineProperty((0, _assertThisInitialized2.default)(_this), "unsubscribeId", { + configurable: true, + enumerable: true, + writable: true, + value: null + }); + _this.jss = _this.context[ns.jss] || jss; + var muiThemeProviderOptions = _this.context.muiThemeProviderOptions; + + if (muiThemeProviderOptions) { + if (muiThemeProviderOptions.sheetsManager) { + _this.sheetsManager = muiThemeProviderOptions.sheetsManager; + } + + _this.disableStylesGeneration = muiThemeProviderOptions.disableStylesGeneration; + } // Attach the stylesCreator to the instance of the component as in the context + // of react-hot-loader the hooks can be executed in a different closure context: + // https://github.com/gaearon/react-hot-loader/blob/master/src/patch.dev.js#L107 + + + _this.stylesCreatorSaved = stylesCreator; + _this.sheetOptions = (0, _objectSpread2.default)({ + generateClassName: generateClassName + }, _this.context[ns.sheetOptions]); // We use || as the function call is lazy evaluated. + + _this.theme = listenToTheme ? _themeListener.default.initial(context) || getDefaultTheme() : noopTheme; + + _this.attach(_this.theme); + + _this.cacheClasses = { + // Cache for the finalized classes value. + value: null, + // Cache for the last used classes prop pointer. + lastProp: null, + // Cache for the last used rendered classes pointer. + lastJSS: {} + }; + return _this; + } + + (0, _createClass2.default)(WithStyles, [{ + key: "componentDidMount", + value: function componentDidMount() { + var _this2 = this; + + if (!listenToTheme) { + return; + } + + this.unsubscribeId = _themeListener.default.subscribe(this.context, function (theme) { + var oldTheme = _this2.theme; + _this2.theme = theme; + + _this2.attach(_this2.theme); // Rerender the component so the underlying component gets the theme update. + // By theme update we mean receiving and applying the new class names. + + + _this2.setState({}, function () { + _this2.detach(oldTheme); + }); + }); + } + }, { + key: "componentDidUpdate", + value: function componentDidUpdate() { + // react-hot-loader specific logic + if (this.stylesCreatorSaved === stylesCreator || "production" === 'production') { + return; + } + + this.detach(this.theme); + this.stylesCreatorSaved = stylesCreator; + this.attach(this.theme); + this.forceUpdate(); + } + }, { + key: "componentWillUnmount", + value: function componentWillUnmount() { + this.detach(this.theme); + + if (this.unsubscribeId !== null) { + _themeListener.default.unsubscribe(this.context, this.unsubscribeId); + } + } + }, { + key: "getClasses", + value: function getClasses() { + var _this3 = this; + + // Tracks if either the rendered classes or classes prop has changed, + // requiring the generation of a new finalized classes object. + var generate = false; + + if (!this.disableStylesGeneration) { + var sheetManager = this.sheetsManager.get(this.stylesCreatorSaved); + var sheetsManagerTheme = sheetManager.get(this.theme); + + if (sheetsManagerTheme.sheet.classes !== this.cacheClasses.lastJSS) { + this.cacheClasses.lastJSS = sheetsManagerTheme.sheet.classes; + generate = true; + } + } + + if (this.props.classes !== this.cacheClasses.lastProp) { + this.cacheClasses.lastProp = this.props.classes; + generate = true; + } + + if (generate) { + if (this.props.classes) { + this.cacheClasses.value = (0, _objectSpread2.default)({}, this.cacheClasses.lastJSS, (0, _keys.default)(this.props.classes).reduce(function (accumulator, key) { + false ? (0, _warning.default)(_this3.cacheClasses.lastJSS[key] || _this3.disableStylesGeneration, ["Material-UI: the key `".concat(key, "` ") + "provided to the classes property is not implemented in ".concat((0, _getDisplayName.default)(Component), "."), "You can only override one of the following: ".concat((0, _keys.default)(_this3.cacheClasses.lastJSS).join(','))].join('\n')) : void 0; + false ? (0, _warning.default)(!_this3.props.classes[key] || typeof _this3.props.classes[key] === 'string', ["Material-UI: the key `".concat(key, "` ") + "provided to the classes property is not valid for ".concat((0, _getDisplayName.default)(Component), "."), "You need to provide a non empty string instead of: ".concat(_this3.props.classes[key], ".")].join('\n')) : void 0; + + if (_this3.props.classes[key]) { + accumulator[key] = "".concat(_this3.cacheClasses.lastJSS[key], " ").concat(_this3.props.classes[key]); + } + + return accumulator; + }, {})); + } else { + this.cacheClasses.value = this.cacheClasses.lastJSS; + } + } + + return this.cacheClasses.value; + } + }, { + key: "attach", + value: function attach(theme) { + if (this.disableStylesGeneration) { + return; + } + + var stylesCreatorSaved = this.stylesCreatorSaved; + var sheetManager = this.sheetsManager.get(stylesCreatorSaved); + + if (!sheetManager) { + sheetManager = new _map.default(); + this.sheetsManager.set(stylesCreatorSaved, sheetManager); + } + + var sheetManagerTheme = sheetManager.get(theme); + + if (!sheetManagerTheme) { + sheetManagerTheme = { + refs: 0, + sheet: null + }; + sheetManager.set(theme, sheetManagerTheme); + } + + if (sheetManagerTheme.refs === 0) { + var styles = stylesCreatorSaved.create(theme, name); + var meta = name; + + if (false) { + meta = (0, _getDisplayName.default)(Component); + } + + var sheet = this.jss.createStyleSheet(styles, (0, _objectSpread2.default)({ + meta: meta, + classNamePrefix: meta, + flip: typeof flip === 'boolean' ? flip : theme.direction === 'rtl', + link: false + }, this.sheetOptions, stylesCreatorSaved.options, { + name: name + }, styleSheetOptions)); + sheetManagerTheme.sheet = sheet; + sheet.attach(); + var sheetsRegistry = this.context[ns.sheetsRegistry]; + + if (sheetsRegistry) { + sheetsRegistry.add(sheet); + } + } + + sheetManagerTheme.refs += 1; + } + }, { + key: "detach", + value: function detach(theme) { + if (this.disableStylesGeneration) { + return; + } + + var stylesCreatorSaved = this.stylesCreatorSaved; + var sheetManager = this.sheetsManager.get(stylesCreatorSaved); + var sheetManagerTheme = sheetManager.get(theme); + sheetManagerTheme.refs -= 1; + + if (sheetManagerTheme.refs === 0) { + sheetManager.delete(theme); + this.jss.removeStyleSheet(sheetManagerTheme.sheet); + var sheetsRegistry = this.context[ns.sheetsRegistry]; + + if (sheetsRegistry) { + sheetsRegistry.remove(sheetManagerTheme.sheet); + } + } + } + }, { + key: "render", + value: function render() { + var _props = this.props, + classes = _props.classes, + innerRef = _props.innerRef, + other = (0, _objectWithoutProperties2.default)(_props, ["classes", "innerRef"]); + var more = (0, _getThemeProps.default)({ + theme: this.theme, + name: name + }); // Provide the theme to the wrapped component. + // So we don't have to use the `withTheme()` Higher-order Component. + + if (withTheme) { + more.theme = this.theme; + } + + return _react.default.createElement(Component, (0, _extends2.default)({}, more, { + classes: this.getClasses(), + ref: innerRef + }, other)); + } + }]); + return WithStyles; + }(_react.default.Component); + + WithStyles.propTypes = false ? { + /** + * Useful to extend the style applied to components. + */ + classes: _propTypes.default.object, + + /** + * Use that property to pass a ref callback to the decorated component. + */ + innerRef: _propTypes.default.func + } : {}; + WithStyles.contextTypes = (0, _objectSpread2.default)({ + muiThemeProviderOptions: _propTypes.default.object + }, _contextTypes.default, listenToTheme ? _themeListener.default.contextTypes : {}); + + if (false) { + WithStyles.displayName = (0, _wrapDisplayName.default)(Component, 'WithStyles'); + } + + (0, _hoistNonReactStatics.default)(WithStyles, Component); + + if (false) { + // Exposed for test purposes. + WithStyles.Naked = Component; + WithStyles.options = options; + } + + return WithStyles; + }; +}; + +var _default = withStyles; +exports.default = _default; + +/***/ }), +/* 21 */ +/***/ (function(module, exports, __webpack_require__) { + +var _Object$defineProperty = __webpack_require__(152); + +function _defineProperty(obj, key, value) { + if (key in obj) { + _Object$defineProperty(obj, key, { + value: value, + enumerable: true, + configurable: true, + writable: true + }); + } else { + obj[key] = value; + } + + return obj; +} + +module.exports = _defineProperty; + +/***/ }), +/* 22 */ +/***/ (function(module, exports, __webpack_require__) { + +module.exports = __webpack_require__(517); + +/***/ }), +/* 23 */ +/***/ (function(module, exports, __webpack_require__) { + +var _typeof = __webpack_require__(253); + +var assertThisInitialized = __webpack_require__(25); + +function _possibleConstructorReturn(self, call) { + if (call && (_typeof(call) === "object" || typeof call === "function")) { + return call; + } + + return assertThisInitialized(self); +} + +module.exports = _possibleConstructorReturn; + +/***/ }), +/* 24 */ +/***/ (function(module, exports, __webpack_require__) { + +var _Object$create = __webpack_require__(521); + +var setPrototypeOf = __webpack_require__(522); + +function _inherits(subClass, superClass) { + if (typeof superClass !== "function" && superClass !== null) { + throw new TypeError("Super expression must either be null or a function"); + } + + subClass.prototype = _Object$create(superClass && superClass.prototype, { + constructor: { + value: subClass, + writable: true, + configurable: true + } + }); + if (superClass) setPrototypeOf(subClass, superClass); +} + +module.exports = _inherits; + +/***/ }), +/* 25 */ +/***/ (function(module, exports) { + +function _assertThisInitialized(self) { + if (self === void 0) { + throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); + } + + return self; +} + +module.exports = _assertThisInitialized; + +/***/ }), +/* 26 */ +/***/ (function(module, exports, __webpack_require__) { + +var _Object$getOwnPropertyDescriptor = __webpack_require__(251); + +var _Object$getOwnPropertySymbols = __webpack_require__(252); + +var _Object$keys = __webpack_require__(50); + +var defineProperty = __webpack_require__(21); + +function _objectSpread(target) { + for (var i = 1; i < arguments.length; i++) { + var source = arguments[i] != null ? arguments[i] : {}; + + var ownKeys = _Object$keys(source); + + if (typeof _Object$getOwnPropertySymbols === 'function') { + ownKeys = ownKeys.concat(_Object$getOwnPropertySymbols(source).filter(function (sym) { + return _Object$getOwnPropertyDescriptor(source, sym).enumerable; + })); + } + + ownKeys.forEach(function (key) { + defineProperty(target, key, source[key]); + }); + } + + return target; +} + +module.exports = _objectSpread; + +/***/ }), +/* 27 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var React = _interopRequireWildcard(__webpack_require__(0)); + +var _classnames = _interopRequireDefault(__webpack_require__(3)); + +var allIcons = _interopRequireWildcard(__webpack_require__(503)); + +var _iconsReact = _interopRequireDefault(__webpack_require__(250)); + +var _IconFont = _interopRequireDefault(__webpack_require__(508)); + +var _utils = __webpack_require__(509); + +var _warning = _interopRequireDefault(__webpack_require__(43)); + +var _LocaleReceiver = _interopRequireDefault(__webpack_require__(72)); + +var _twoTonePrimaryColor = __webpack_require__(510); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; } + +function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } + +function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } + +function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread(); } + +function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance"); } + +function _iterableToArray(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter); } + +function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } } + +var __rest = void 0 && (void 0).__rest || function (s, e) { + var t = {}; + + for (var p in s) { + if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p]; + } + + if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { + if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]]; + } + return t; +}; +/* eslint-disable camelcase */ + + +// Initial setting +_iconsReact["default"].add.apply(_iconsReact["default"], _toConsumableArray(Object.keys(allIcons).map(function (key) { + return allIcons[key]; +}))); + +(0, _twoTonePrimaryColor.setTwoToneColor)('#1890ff'); +var defaultTheme = 'outlined'; +var dangerousTheme; + +function unstable_ChangeThemeOfIconsDangerously(theme) { + (0, _warning["default"])(false, 'Icon', "You are using the unstable method 'Icon.unstable_ChangeThemeOfAllIconsDangerously', " + "make sure that all the icons with theme '".concat(theme, "' display correctly.")); + dangerousTheme = theme; +} + +function unstable_ChangeDefaultThemeOfIcons(theme) { + (0, _warning["default"])(false, 'Icon', "You are using the unstable method 'Icon.unstable_ChangeDefaultThemeOfIcons', " + "make sure that all the icons with theme '".concat(theme, "' display correctly.")); + defaultTheme = theme; +} + +var Icon = function Icon(props) { + var _classNames; + + var className = props.className, + type = props.type, + Component = props.component, + viewBox = props.viewBox, + spin = props.spin, + rotate = props.rotate, + tabIndex = props.tabIndex, + onClick = props.onClick, + children = props.children, + theme = props.theme, + twoToneColor = props.twoToneColor, + restProps = __rest(props, ["className", "type", "component", "viewBox", "spin", "rotate", "tabIndex", "onClick", "children", "theme", "twoToneColor"]); + + (0, _warning["default"])(Boolean(type || Component || children), 'Icon', 'Should have `type` prop or `component` prop or `children`.'); + var classString = (0, _classnames["default"])((_classNames = {}, _defineProperty(_classNames, "anticon", true), _defineProperty(_classNames, "anticon-".concat(type), Boolean(type)), _classNames), className); + var svgClassString = (0, _classnames["default"])(_defineProperty({}, "anticon-spin", !!spin || type === 'loading')); + var svgStyle = rotate ? { + msTransform: "rotate(".concat(rotate, "deg)"), + transform: "rotate(".concat(rotate, "deg)") + } : undefined; + + var innerSvgProps = _extends(_extends({}, _utils.svgBaseProps), { + className: svgClassString, + style: svgStyle, + viewBox: viewBox + }); + + if (!viewBox) { + delete innerSvgProps.viewBox; + } + + var renderInnerNode = function renderInnerNode() { + // component > children > type + if (Component) { + return React.createElement(Component, innerSvgProps, children); + } + + if (children) { + (0, _warning["default"])(Boolean(viewBox) || React.Children.count(children) === 1 && React.isValidElement(children) && React.Children.only(children).type === 'use', 'Icon', 'Make sure that you provide correct `viewBox`' + ' prop (default `0 0 1024 1024`) to the icon.'); + return React.createElement("svg", _extends({}, innerSvgProps, { + viewBox: viewBox + }), children); + } + + if (typeof type === 'string') { + var computedType = type; + + if (theme) { + var themeInName = (0, _utils.getThemeFromTypeName)(type); + (0, _warning["default"])(!themeInName || theme === themeInName, 'Icon', "The icon name '".concat(type, "' already specify a theme '").concat(themeInName, "',") + " the 'theme' prop '".concat(theme, "' will be ignored.")); + } + + computedType = (0, _utils.withThemeSuffix)((0, _utils.removeTypeTheme)((0, _utils.alias)(computedType)), dangerousTheme || theme || defaultTheme); + return React.createElement(_iconsReact["default"], { + className: svgClassString, + type: computedType, + primaryColor: twoToneColor, + style: svgStyle + }); + } + }; + + var iconTabIndex = tabIndex; + + if (iconTabIndex === undefined && onClick) { + iconTabIndex = -1; + } + + return React.createElement(_LocaleReceiver["default"], { + componentName: "Icon" + }, function (locale) { + return React.createElement("i", _extends({ + "aria-label": type && "".concat(locale.icon, ": ").concat(type) + }, restProps, { + tabIndex: iconTabIndex, + onClick: onClick, + className: classString + }), renderInnerNode()); + }); +}; + +Icon.createFromIconfontCN = _IconFont["default"]; +Icon.getTwoToneColor = _twoTonePrimaryColor.getTwoToneColor; +Icon.setTwoToneColor = _twoTonePrimaryColor.setTwoToneColor; +var _default = Icon; +exports["default"] = _default; +//# sourceMappingURL=index.js.map + + +/***/ }), +/* 28 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +__webpack_require__(31); + +__webpack_require__(278); + +__webpack_require__(88); +//# sourceMappingURL=css.js.map + + +/***/ }), +/* 29 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var React = _interopRequireWildcard(__webpack_require__(0)); + +var _Modal = _interopRequireWildcard(__webpack_require__(279)); + +var _confirm = _interopRequireDefault(__webpack_require__(698)); + +var _icon = _interopRequireDefault(__webpack_require__(27)); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; } + +function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } + +function modalWarn(props) { + var config = _extends({ + type: 'warning', + icon: React.createElement(_icon["default"], { + type: "exclamation-circle" + }), + okCancel: false + }, props); + + return (0, _confirm["default"])(config); +} + +_Modal["default"].info = function infoFn(props) { + var config = _extends({ + type: 'info', + icon: React.createElement(_icon["default"], { + type: "info-circle" + }), + okCancel: false + }, props); + + return (0, _confirm["default"])(config); +}; + +_Modal["default"].success = function successFn(props) { + var config = _extends({ + type: 'success', + icon: React.createElement(_icon["default"], { + type: "check-circle" + }), + okCancel: false + }, props); + + return (0, _confirm["default"])(config); +}; + +_Modal["default"].error = function errorFn(props) { + var config = _extends({ + type: 'error', + icon: React.createElement(_icon["default"], { + type: "close-circle" + }), + okCancel: false + }, props); + + return (0, _confirm["default"])(config); +}; + +_Modal["default"].warning = modalWarn; +_Modal["default"].warn = modalWarn; + +_Modal["default"].confirm = function confirmFn(props) { + var config = _extends({ + type: 'confirm', + okCancel: true + }, props); + + return (0, _confirm["default"])(config); +}; + +_Modal["default"].destroyAll = function destroyAllFn() { + while (_Modal.destroyFns.length) { + var close = _Modal.destroyFns.pop(); + + if (close) { + close(); + } + } +}; + +var _default = _Modal["default"]; +exports["default"] = _default; +//# sourceMappingURL=index.js.map + + +/***/ }), +/* 30 */ +/***/ (function(module, exports, __webpack_require__) { + +var global = __webpack_require__(40); +var core = __webpack_require__(16); +var ctx = __webpack_require__(55); +var hide = __webpack_require__(49); +var has = __webpack_require__(57); +var PROTOTYPE = 'prototype'; + +var $export = function (type, name, source) { + var IS_FORCED = type & $export.F; + var IS_GLOBAL = type & $export.G; + var IS_STATIC = type & $export.S; + var IS_PROTO = type & $export.P; + var IS_BIND = type & $export.B; + var IS_WRAP = type & $export.W; + var exports = IS_GLOBAL ? core : core[name] || (core[name] = {}); + var expProto = exports[PROTOTYPE]; + var target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE]; + var key, own, out; + if (IS_GLOBAL) source = name; + for (key in source) { + // contains in native + own = !IS_FORCED && target && target[key] !== undefined; + if (own && has(exports, key)) continue; + // export native or passed + out = own ? target[key] : source[key]; + // prevent global pollution for namespaces + exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key] + // bind timers to global for call from export context + : IS_BIND && own ? ctx(out, global) + // wrap global constructors for prevent change them in library + : IS_WRAP && target[key] == out ? (function (C) { + var F = function (a, b, c) { + if (this instanceof C) { + switch (arguments.length) { + case 0: return new C(); + case 1: return new C(a); + case 2: return new C(a, b); + } return new C(a, b, c); + } return C.apply(this, arguments); + }; + F[PROTOTYPE] = C[PROTOTYPE]; + return F; + // make static versions for prototype methods + })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out; + // export proto methods to core.%CONSTRUCTOR%.methods.%NAME% + if (IS_PROTO) { + (exports.virtual || (exports.virtual = {}))[key] = out; + // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME% + if (type & $export.R && expProto && !expProto[key]) hide(expProto, key, out); + } + } +}; +// type bitmap +$export.F = 1; // forced +$export.G = 2; // global +$export.S = 4; // static +$export.P = 8; // proto +$export.B = 16; // bind +$export.W = 32; // wrap +$export.U = 64; // safe +$export.R = 128; // real proto method for `library` +module.exports = $export; + + +/***/ }), +/* 31 */ +/***/ (function(module, exports) { + +// removed by extract-text-webpack-plugin + +/***/ }), +/* 32 */ +/***/ (function(module, exports, __webpack_require__) { + +var store = __webpack_require__(144)('wks'); +var uid = __webpack_require__(102); +var Symbol = __webpack_require__(40).Symbol; +var USE_SYMBOL = typeof Symbol == 'function'; + +var $exports = module.exports = function (name) { + return store[name] || (store[name] = + USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name)); +}; + +$exports.store = store; + + +/***/ }), +/* 33 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.parseStartTime = parseStartTime; +exports.parseEndTime = parseEndTime; +exports.randomString = randomString; +exports.queryString = queryString; +exports.getSDK = getSDK; +exports.getConfig = getConfig; +exports.omit = omit; +exports.callPlayer = callPlayer; +exports.isObject = isObject; +exports.isEqual = isEqual; +exports.isMediaStream = isMediaStream; + +var _react = __webpack_require__(0); + +var _loadScript = _interopRequireDefault(__webpack_require__(772)); + +var _deepmerge = _interopRequireDefault(__webpack_require__(773)); + +var _props = __webpack_require__(112); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } + +function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } + +function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); } + +function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } + +function _iterableToArrayLimit(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } + +function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } + +var MATCH_START_QUERY = /[?&#](?:start|t)=([0-9hms]+)/; +var MATCH_END_QUERY = /[?&#]end=([0-9hms]+)/; +var MATCH_START_STAMP = /(\d+)(h|m|s)/g; +var MATCH_NUMERIC = /^\d+$/; // Parse YouTube URL for a start time param, ie ?t=1h14m30s +// and return the start time in seconds + +function parseTimeParam(url, pattern) { + var match = url.match(pattern); + + if (match) { + var stamp = match[1]; + + if (stamp.match(MATCH_START_STAMP)) { + return parseTimeString(stamp); + } + + if (MATCH_NUMERIC.test(stamp)) { + return parseInt(stamp); + } + } + + return undefined; +} + +function parseTimeString(stamp) { + var seconds = 0; + var array = MATCH_START_STAMP.exec(stamp); + + while (array !== null) { + var _array = array, + _array2 = _slicedToArray(_array, 3), + count = _array2[1], + period = _array2[2]; + + if (period === 'h') seconds += parseInt(count, 10) * 60 * 60; + if (period === 'm') seconds += parseInt(count, 10) * 60; + if (period === 's') seconds += parseInt(count, 10); + array = MATCH_START_STAMP.exec(stamp); + } + + return seconds; +} + +function parseStartTime(url) { + return parseTimeParam(url, MATCH_START_QUERY); +} + +function parseEndTime(url) { + return parseTimeParam(url, MATCH_END_QUERY); +} // http://stackoverflow.com/a/38622545 + + +function randomString() { + return Math.random().toString(36).substr(2, 5); +} + +function queryString(object) { + return Object.keys(object).map(function (key) { + return "".concat(key, "=").concat(object[key]); + }).join('&'); +} // Util function to load an external SDK +// or return the SDK if it is already loaded + + +var requests = {}; + +function getSDK(url, sdkGlobal) { + var sdkReady = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null; + var isLoaded = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : function () { + return true; + }; + var fetchScript = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : _loadScript["default"]; + + if (window[sdkGlobal] && isLoaded(window[sdkGlobal])) { + return Promise.resolve(window[sdkGlobal]); + } + + return new Promise(function (resolve, reject) { + // If we are already loading the SDK, add the resolve and reject + // functions to the existing array of requests + if (requests[url]) { + requests[url].push({ + resolve: resolve, + reject: reject + }); + return; + } + + requests[url] = [{ + resolve: resolve, + reject: reject + }]; + + var onLoaded = function onLoaded(sdk) { + // When loaded, resolve all pending request promises + requests[url].forEach(function (request) { + return request.resolve(sdk); + }); + }; + + if (sdkReady) { + var previousOnReady = window[sdkReady]; + + window[sdkReady] = function () { + if (previousOnReady) previousOnReady(); + onLoaded(window[sdkGlobal]); + }; + } + + fetchScript(url, function (err) { + if (err) { + // Loading the SDK failed – reject all requests and + // reset the array of requests for this SDK + requests[url].forEach(function (request) { + return request.reject(err); + }); + requests[url] = null; + } else if (!sdkReady) { + onLoaded(window[sdkGlobal]); + } + }); + }); +} + +function getConfig(props, defaultProps, showWarning) { + var config = (0, _deepmerge["default"])(defaultProps.config, props.config); + var _iteratorNormalCompletion = true; + var _didIteratorError = false; + var _iteratorError = undefined; + + try { + for (var _iterator = _props.DEPRECATED_CONFIG_PROPS[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { + var p = _step.value; + + if (props[p]) { + var key = p.replace(/Config$/, ''); + config = (0, _deepmerge["default"])(config, _defineProperty({}, key, props[p])); + + if (showWarning) { + var link = 'https://github.com/CookPete/react-player#config-prop'; + var message = "ReactPlayer: %c".concat(p, " %cis deprecated, please use the config prop instead \u2013 ").concat(link); + console.warn(message, 'font-weight: bold', ''); + } + } + } + } catch (err) { + _didIteratorError = true; + _iteratorError = err; + } finally { + try { + if (!_iteratorNormalCompletion && _iterator["return"] != null) { + _iterator["return"](); + } + } finally { + if (_didIteratorError) { + throw _iteratorError; + } + } + } + + return config; +} + +function omit(object) { + var _ref; + + for (var _len = arguments.length, arrays = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { + arrays[_key - 1] = arguments[_key]; + } + + var omitKeys = (_ref = []).concat.apply(_ref, arrays); + + var output = {}; + var keys = Object.keys(object); + + for (var _i2 = 0, _keys = keys; _i2 < _keys.length; _i2++) { + var key = _keys[_i2]; + + if (omitKeys.indexOf(key) === -1) { + output[key] = object[key]; + } + } + + return output; +} + +function callPlayer(method) { + var _this$player; + + // Util method for calling a method on this.player + // but guard against errors and console.warn instead + if (!this.player || !this.player[method]) { + var message = "ReactPlayer: ".concat(this.constructor.displayName, " player could not call %c").concat(method, "%c \u2013 "); + + if (!this.player) { + message += 'The player was not available'; + } else if (!this.player[method]) { + message += 'The method was not available'; + } + + console.warn(message, 'font-weight: bold', ''); + return null; + } + + for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) { + args[_key2 - 1] = arguments[_key2]; + } + + return (_this$player = this.player)[method].apply(_this$player, args); +} + +function isObject(val) { + return val !== null && _typeof(val) === 'object'; +} // Deep comparison of two objects, but ignoring functions +// and React elements, for use in shouldComponentUpdate + + +function isEqual(a, b) { + if (typeof a === 'function' && typeof b === 'function') { + return true; + } + + if ((0, _react.isValidElement)(a) && (0, _react.isValidElement)(b)) { + return true; + } + + if (a instanceof Array && b instanceof Array) { + if (a.length !== b.length) { + return false; + } + + for (var i = 0; i !== a.length; i++) { + if (!isEqual(a[i], b[i])) { + return false; + } + } + + return true; + } + + if (isObject(a) && isObject(b)) { + if (Object.keys(a).length !== Object.keys(b).length) { + return false; + } + + for (var _i3 = 0, _Object$keys = Object.keys(a); _i3 < _Object$keys.length; _i3++) { + var key = _Object$keys[_i3]; + + if (!isEqual(a[key], b[key])) { + return false; + } + } + + return true; + } + + return a === b; +} + +function isMediaStream(url) { + return typeof window !== 'undefined' && typeof window.MediaStream !== 'undefined' && url instanceof window.MediaStream; +} + +/***/ }), +/* 34 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +exports.__esModule = true; + +var _defineProperty = __webpack_require__(232); + +var _defineProperty2 = _interopRequireDefault(_defineProperty); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +exports.default = function () { + function defineProperties(target, props) { + for (var i = 0; i < props.length; i++) { + var descriptor = props[i]; + descriptor.enumerable = descriptor.enumerable || false; + descriptor.configurable = true; + if ("value" in descriptor) descriptor.writable = true; + (0, _defineProperty2.default)(target, descriptor.key, descriptor); + } + } + + return function (Constructor, protoProps, staticProps) { + if (protoProps) defineProperties(Constructor.prototype, protoProps); + if (staticProps) defineProperties(Constructor, staticProps); + return Constructor; + }; +}(); + +/***/ }), +/* 35 */ +/***/ (function(module, exports) { + +var g; + +// This works in non-strict mode +g = (function() { + return this; +})(); + +try { + // This works if eval is allowed (see CSP) + g = g || Function("return this")() || (1,eval)("this"); +} catch(e) { + // This works if the window reference is available + if(typeof window === "object") + g = window; +} + +// g can still be undefined, but nothing to do about it... +// We return undefined, instead of nothing here, so it's +// easier to handle this case. if(!global) { ...} + +module.exports = g; + + +/***/ }), +/* 36 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var bind = __webpack_require__(226); +var isBuffer = __webpack_require__(454); + +/*global toString:true*/ + +// utils is a library of generic helper functions non-specific to axios + +var toString = Object.prototype.toString; + +/** + * Determine if a value is an Array + * + * @param {Object} val The value to test + * @returns {boolean} True if value is an Array, otherwise false + */ +function isArray(val) { + return toString.call(val) === '[object Array]'; +} + +/** + * Determine if a value is an ArrayBuffer + * + * @param {Object} val The value to test + * @returns {boolean} True if value is an ArrayBuffer, otherwise false + */ +function isArrayBuffer(val) { + return toString.call(val) === '[object ArrayBuffer]'; +} + +/** + * Determine if a value is a FormData + * + * @param {Object} val The value to test + * @returns {boolean} True if value is an FormData, otherwise false + */ +function isFormData(val) { + return (typeof FormData !== 'undefined') && (val instanceof FormData); +} + +/** + * Determine if a value is a view on an ArrayBuffer + * + * @param {Object} val The value to test + * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false + */ +function isArrayBufferView(val) { + var result; + if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) { + result = ArrayBuffer.isView(val); + } else { + result = (val) && (val.buffer) && (val.buffer instanceof ArrayBuffer); + } + return result; +} + +/** + * Determine if a value is a String + * + * @param {Object} val The value to test + * @returns {boolean} True if value is a String, otherwise false + */ +function isString(val) { + return typeof val === 'string'; +} + +/** + * Determine if a value is a Number + * + * @param {Object} val The value to test + * @returns {boolean} True if value is a Number, otherwise false + */ +function isNumber(val) { + return typeof val === 'number'; +} + +/** + * Determine if a value is undefined + * + * @param {Object} val The value to test + * @returns {boolean} True if the value is undefined, otherwise false + */ +function isUndefined(val) { + return typeof val === 'undefined'; +} + +/** + * Determine if a value is an Object + * + * @param {Object} val The value to test + * @returns {boolean} True if value is an Object, otherwise false + */ +function isObject(val) { + return val !== null && typeof val === 'object'; +} + +/** + * Determine if a value is a Date + * + * @param {Object} val The value to test + * @returns {boolean} True if value is a Date, otherwise false + */ +function isDate(val) { + return toString.call(val) === '[object Date]'; +} + +/** + * Determine if a value is a File + * + * @param {Object} val The value to test + * @returns {boolean} True if value is a File, otherwise false + */ +function isFile(val) { + return toString.call(val) === '[object File]'; +} + +/** + * Determine if a value is a Blob + * + * @param {Object} val The value to test + * @returns {boolean} True if value is a Blob, otherwise false + */ +function isBlob(val) { + return toString.call(val) === '[object Blob]'; +} + +/** + * Determine if a value is a Function + * + * @param {Object} val The value to test + * @returns {boolean} True if value is a Function, otherwise false + */ +function isFunction(val) { + return toString.call(val) === '[object Function]'; +} + +/** + * Determine if a value is a Stream + * + * @param {Object} val The value to test + * @returns {boolean} True if value is a Stream, otherwise false + */ +function isStream(val) { + return isObject(val) && isFunction(val.pipe); +} + +/** + * Determine if a value is a URLSearchParams object + * + * @param {Object} val The value to test + * @returns {boolean} True if value is a URLSearchParams object, otherwise false + */ +function isURLSearchParams(val) { + return typeof URLSearchParams !== 'undefined' && val instanceof URLSearchParams; +} + +/** + * Trim excess whitespace off the beginning and end of a string + * + * @param {String} str The String to trim + * @returns {String} The String freed of excess whitespace + */ +function trim(str) { + return str.replace(/^\s*/, '').replace(/\s*$/, ''); +} + +/** + * Determine if we're running in a standard browser environment + * + * This allows axios to run in a web worker, and react-native. + * Both environments support XMLHttpRequest, but not fully standard globals. + * + * web workers: + * typeof window -> undefined + * typeof document -> undefined + * + * react-native: + * navigator.product -> 'ReactNative' + */ +function isStandardBrowserEnv() { + if (typeof navigator !== 'undefined' && navigator.product === 'ReactNative') { + return false; + } + return ( + typeof window !== 'undefined' && + typeof document !== 'undefined' + ); +} + +/** + * Iterate over an Array or an Object invoking a function for each item. + * + * If `obj` is an Array callback will be called passing + * the value, index, and complete array for each item. + * + * If 'obj' is an Object callback will be called passing + * the value, key, and complete object for each property. + * + * @param {Object|Array} obj The object to iterate + * @param {Function} fn The callback to invoke for each item + */ +function forEach(obj, fn) { + // Don't bother if no value provided + if (obj === null || typeof obj === 'undefined') { + return; + } + + // Force an array if not already something iterable + if (typeof obj !== 'object') { + /*eslint no-param-reassign:0*/ + obj = [obj]; + } + + if (isArray(obj)) { + // Iterate over array values + for (var i = 0, l = obj.length; i < l; i++) { + fn.call(null, obj[i], i, obj); + } + } else { + // Iterate over object keys + for (var key in obj) { + if (Object.prototype.hasOwnProperty.call(obj, key)) { + fn.call(null, obj[key], key, obj); + } + } + } +} + +/** + * Accepts varargs expecting each argument to be an object, then + * immutably merges the properties of each object and returns result. + * + * When multiple objects contain the same key the later object in + * the arguments list will take precedence. + * + * Example: + * + * ```js + * var result = merge({foo: 123}, {foo: 456}); + * console.log(result.foo); // outputs 456 + * ``` + * + * @param {Object} obj1 Object to merge + * @returns {Object} Result of all merge properties + */ +function merge(/* obj1, obj2, obj3, ... */) { + var result = {}; + function assignValue(val, key) { + if (typeof result[key] === 'object' && typeof val === 'object') { + result[key] = merge(result[key], val); + } else { + result[key] = val; + } + } + + for (var i = 0, l = arguments.length; i < l; i++) { + forEach(arguments[i], assignValue); + } + return result; +} + +/** + * Extends object a by mutably adding to it the properties of object b. + * + * @param {Object} a The object to be extended + * @param {Object} b The object to copy properties from + * @param {Object} thisArg The object to bind function to + * @return {Object} The resulting value of object a + */ +function extend(a, b, thisArg) { + forEach(b, function assignValue(val, key) { + if (thisArg && typeof val === 'function') { + a[key] = bind(val, thisArg); + } else { + a[key] = val; + } + }); + return a; +} + +module.exports = { + isArray: isArray, + isArrayBuffer: isArrayBuffer, + isBuffer: isBuffer, + isFormData: isFormData, + isArrayBufferView: isArrayBufferView, + isString: isString, + isNumber: isNumber, + isObject: isObject, + isUndefined: isUndefined, + isDate: isDate, + isFile: isFile, + isBlob: isBlob, + isFunction: isFunction, + isStream: isStream, + isURLSearchParams: isURLSearchParams, + isStandardBrowserEnv: isStandardBrowserEnv, + forEach: forEach, + merge: merge, + extend: extend, + trim: trim +}; + + +/***/ }), +/* 37 */ +/***/ (function(module, exports, __webpack_require__) { + +var anObject = __webpack_require__(53); +var IE8_DOM_DEFINE = __webpack_require__(235); +var toPrimitive = __webpack_require__(138); +var dP = Object.defineProperty; + +exports.f = __webpack_require__(41) ? Object.defineProperty : function defineProperty(O, P, Attributes) { + anObject(O); + P = toPrimitive(P, true); + anObject(Attributes); + if (IE8_DOM_DEFINE) try { + return dP(O, P, Attributes); + } catch (e) { /* empty */ } + if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!'); + if ('value' in Attributes) O[P] = Attributes.value; + return O; +}; + + +/***/ }), +/* 38 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +__webpack_require__(31); + +__webpack_require__(473); +//# sourceMappingURL=css.js.map + + +/***/ }), +/* 39 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var React = _interopRequireWildcard(__webpack_require__(0)); + +var _rcNotification = _interopRequireDefault(__webpack_require__(231)); + +var _icon = _interopRequireDefault(__webpack_require__(27)); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; } + +function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } + +var notificationInstance = {}; +var defaultDuration = 4.5; +var defaultTop = 24; +var defaultBottom = 24; +var defaultPlacement = 'topRight'; +var defaultGetContainer; +var defaultCloseIcon; + +function setNotificationConfig(options) { + var duration = options.duration, + placement = options.placement, + bottom = options.bottom, + top = options.top, + getContainer = options.getContainer, + closeIcon = options.closeIcon; + + if (duration !== undefined) { + defaultDuration = duration; + } + + if (placement !== undefined) { + defaultPlacement = placement; + } + + if (bottom !== undefined) { + defaultBottom = bottom; + } + + if (top !== undefined) { + defaultTop = top; + } + + if (getContainer !== undefined) { + defaultGetContainer = getContainer; + } + + if (closeIcon !== undefined) { + defaultCloseIcon = closeIcon; + } +} + +function getPlacementStyle(placement) { + var top = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : defaultTop; + var bottom = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : defaultBottom; + var style; + + switch (placement) { + case 'topLeft': + style = { + left: 0, + top: top, + bottom: 'auto' + }; + break; + + case 'topRight': + style = { + right: 0, + top: top, + bottom: 'auto' + }; + break; + + case 'bottomLeft': + style = { + left: 0, + top: 'auto', + bottom: bottom + }; + break; + + default: + style = { + right: 0, + top: 'auto', + bottom: bottom + }; + break; + } + + return style; +} + +function getNotificationInstance(_ref, callback) { + var prefixCls = _ref.prefixCls, + _ref$placement = _ref.placement, + placement = _ref$placement === void 0 ? defaultPlacement : _ref$placement, + _ref$getContainer = _ref.getContainer, + getContainer = _ref$getContainer === void 0 ? defaultGetContainer : _ref$getContainer, + top = _ref.top, + bottom = _ref.bottom, + _ref$closeIcon = _ref.closeIcon, + closeIcon = _ref$closeIcon === void 0 ? defaultCloseIcon : _ref$closeIcon; + var cacheKey = "".concat(prefixCls, "-").concat(placement); + + if (notificationInstance[cacheKey]) { + callback(notificationInstance[cacheKey]); + return; + } + + var closeIconToRender = React.createElement("span", { + className: "".concat(prefixCls, "-close-x") + }, closeIcon || React.createElement(_icon["default"], { + className: "".concat(prefixCls, "-close-icon"), + type: "close" + })); + + _rcNotification["default"].newInstance({ + prefixCls: prefixCls, + className: "".concat(prefixCls, "-").concat(placement), + style: getPlacementStyle(placement, top, bottom), + getContainer: getContainer, + closeIcon: closeIconToRender + }, function (notification) { + notificationInstance[cacheKey] = notification; + callback(notification); + }); +} + +var typeToIcon = { + success: 'check-circle-o', + info: 'info-circle-o', + error: 'close-circle-o', + warning: 'exclamation-circle-o' +}; + +function notice(args) { + var outerPrefixCls = args.prefixCls || 'ant-notification'; + var prefixCls = "".concat(outerPrefixCls, "-notice"); + var duration = args.duration === undefined ? defaultDuration : args.duration; + var iconNode = null; + + if (args.icon) { + iconNode = React.createElement("span", { + className: "".concat(prefixCls, "-icon") + }, args.icon); + } else if (args.type) { + var iconType = typeToIcon[args.type]; + iconNode = React.createElement(_icon["default"], { + className: "".concat(prefixCls, "-icon ").concat(prefixCls, "-icon-").concat(args.type), + type: iconType + }); + } + + var autoMarginTag = !args.description && iconNode ? React.createElement("span", { + className: "".concat(prefixCls, "-message-single-line-auto-margin") + }) : null; + var placement = args.placement, + top = args.top, + bottom = args.bottom, + getContainer = args.getContainer, + closeIcon = args.closeIcon; + getNotificationInstance({ + prefixCls: outerPrefixCls, + placement: placement, + top: top, + bottom: bottom, + getContainer: getContainer, + closeIcon: closeIcon + }, function (notification) { + notification.notice({ + content: React.createElement("div", { + className: iconNode ? "".concat(prefixCls, "-with-icon") : '' + }, iconNode, React.createElement("div", { + className: "".concat(prefixCls, "-message") + }, autoMarginTag, args.message), React.createElement("div", { + className: "".concat(prefixCls, "-description") + }, args.description), args.btn ? React.createElement("span", { + className: "".concat(prefixCls, "-btn") + }, args.btn) : null), + duration: duration, + closable: true, + onClose: args.onClose, + onClick: args.onClick, + key: args.key, + style: args.style || {}, + className: args.className + }); + }); +} + +var api = { + open: notice, + close: function close(key) { + Object.keys(notificationInstance).forEach(function (cacheKey) { + return notificationInstance[cacheKey].removeNotice(key); + }); + }, + config: setNotificationConfig, + destroy: function destroy() { + Object.keys(notificationInstance).forEach(function (cacheKey) { + notificationInstance[cacheKey].destroy(); + delete notificationInstance[cacheKey]; + }); + } +}; +['success', 'info', 'warning', 'error'].forEach(function (type) { + api[type] = function (args) { + return api.open(_extends(_extends({}, args), { + type: type + })); + }; +}); +api.warn = api.warning; +var _default = api; +exports["default"] = _default; +//# sourceMappingURL=index.js.map + + +/***/ }), +/* 40 */ +/***/ (function(module, exports) { + +// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028 +var global = module.exports = typeof window != 'undefined' && window.Math == Math + ? window : typeof self != 'undefined' && self.Math == Math ? self + // eslint-disable-next-line no-new-func + : Function('return this')(); +if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef + + +/***/ }), +/* 41 */ +/***/ (function(module, exports, __webpack_require__) { + +// Thank's IE8 for his funny defineProperty +module.exports = !__webpack_require__(56)(function () { + return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7; +}); + + +/***/ }), +/* 42 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = createSinglePlayer; + +var _react = _interopRequireWildcard(__webpack_require__(0)); + +var _props = __webpack_require__(112); + +var _utils = __webpack_require__(33); + +var _Player = _interopRequireDefault(__webpack_require__(167)); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; } + +function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } + +function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } + +function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } + +function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); } + +function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); } + +function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } + +function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); } + +function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } + +function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } + +var SUPPORTED_PROPS = Object.keys(_props.propTypes); + +function createSinglePlayer(activePlayer) { + var _class, _temp; + + return _temp = _class = + /*#__PURE__*/ + function (_Component) { + _inherits(SinglePlayer, _Component); + + function SinglePlayer() { + var _getPrototypeOf2; + + var _this; + + _classCallCheck(this, SinglePlayer); + + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + + _this = _possibleConstructorReturn(this, (_getPrototypeOf2 = _getPrototypeOf(SinglePlayer)).call.apply(_getPrototypeOf2, [this].concat(args))); + + _defineProperty(_assertThisInitialized(_this), "config", (0, _utils.getConfig)(_this.props, _props.defaultProps, true)); + + _defineProperty(_assertThisInitialized(_this), "getDuration", function () { + if (!_this.player) return null; + return _this.player.getDuration(); + }); + + _defineProperty(_assertThisInitialized(_this), "getCurrentTime", function () { + if (!_this.player) return null; + return _this.player.getCurrentTime(); + }); + + _defineProperty(_assertThisInitialized(_this), "getSecondsLoaded", function () { + if (!_this.player) return null; + return _this.player.getSecondsLoaded(); + }); + + _defineProperty(_assertThisInitialized(_this), "getInternalPlayer", function () { + var key = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'player'; + if (!_this.player) return null; + return _this.player.getInternalPlayer(key); + }); + + _defineProperty(_assertThisInitialized(_this), "seekTo", function (fraction, type) { + if (!_this.player) return null; + + _this.player.seekTo(fraction, type); + }); + + _defineProperty(_assertThisInitialized(_this), "ref", function (player) { + _this.player = player; + }); + + return _this; + } + + _createClass(SinglePlayer, [{ + key: "shouldComponentUpdate", + value: function shouldComponentUpdate(nextProps) { + return !(0, _utils.isEqual)(this.props, nextProps); + } + }, { + key: "componentDidUpdate", + value: function componentDidUpdate() { + this.config = (0, _utils.getConfig)(this.props, _props.defaultProps); + } + }, { + key: "render", + value: function render() { + var _this$config$file = this.config.file, + forceVideo = _this$config$file.forceVideo, + forceAudio = _this$config$file.forceAudio, + forceHLS = _this$config$file.forceHLS, + forceDASH = _this$config$file.forceDASH; + var skipCanPlay = forceVideo || forceAudio || forceHLS || forceDASH; + + if (!activePlayer.canPlay(this.props.url) && !skipCanPlay) { + return null; + } + + var _this$props = this.props, + style = _this$props.style, + width = _this$props.width, + height = _this$props.height, + Wrapper = _this$props.wrapper; + var otherProps = (0, _utils.omit)(this.props, SUPPORTED_PROPS, _props.DEPRECATED_CONFIG_PROPS); + return _react["default"].createElement(Wrapper, _extends({ + style: _objectSpread({}, style, { + width: width, + height: height + }) + }, otherProps), _react["default"].createElement(_Player["default"], _extends({}, this.props, { + ref: this.ref, + activePlayer: activePlayer, + config: this.config + }))); + } + }]); + + return SinglePlayer; + }(_react.Component), _defineProperty(_class, "displayName", "".concat(activePlayer.displayName, "Player")), _defineProperty(_class, "propTypes", _props.propTypes), _defineProperty(_class, "defaultProps", _props.defaultProps), _defineProperty(_class, "canPlay", activePlayer.canPlay), _temp; +} + +/***/ }), +/* 43 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } + +Object.defineProperty(exports, "__esModule", { + value: true +}); +Object.defineProperty(exports, "resetWarned", { + enumerable: true, + get: function get() { + return _warning.resetWarned; + } +}); +exports["default"] = void 0; + +var _warning = _interopRequireWildcard(__webpack_require__(420)); + +function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; } + +function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +var _default = function _default(valid, component, message) { + (0, _warning["default"])(valid, "[antd: ".concat(component, "] ").concat(message)); +}; + +exports["default"] = _default; +//# sourceMappingURL=warning.js.map + + +/***/ }), +/* 44 */ +/***/ (function(module, exports) { + +module.exports = function (it) { + return typeof it === 'object' ? it !== null : typeof it === 'function'; +}; + + +/***/ }), +/* 45 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +exports.__esModule = true; +exports.default = ownerDocument; + +function ownerDocument(node) { + return node && node.ownerDocument || document; +} + +module.exports = exports["default"]; + +/***/ }), +/* 46 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(19); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__); + +function omit(obj, fields) { + var shallowCopy = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, obj); + for (var i = 0; i < fields.length; i++) { + var key = fields[i]; + delete shallowCopy[key]; + } + return shallowCopy; +} + +/* harmony default export */ __webpack_exports__["default"] = (omit); + +/***/ }), +/* 47 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__BrowserRouter__ = __webpack_require__(436); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return __WEBPACK_IMPORTED_MODULE_0__BrowserRouter__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__HashRouter__ = __webpack_require__(441); +/* unused harmony reexport HashRouter */ +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__Link__ = __webpack_require__(217); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return __WEBPACK_IMPORTED_MODULE_2__Link__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__MemoryRouter__ = __webpack_require__(442); +/* unused harmony reexport MemoryRouter */ +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__NavLink__ = __webpack_require__(443); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return __WEBPACK_IMPORTED_MODULE_4__NavLink__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__Prompt__ = __webpack_require__(445); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return __WEBPACK_IMPORTED_MODULE_5__Prompt__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__Redirect__ = __webpack_require__(446); +/* unused harmony reexport Redirect */ +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__Route__ = __webpack_require__(219); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return __WEBPACK_IMPORTED_MODULE_7__Route__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__Router__ = __webpack_require__(134); +/* unused harmony reexport Router */ +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__StaticRouter__ = __webpack_require__(447); +/* unused harmony reexport StaticRouter */ +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__Switch__ = __webpack_require__(448); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return __WEBPACK_IMPORTED_MODULE_10__Switch__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__generatePath__ = __webpack_require__(449); +/* unused harmony reexport generatePath */ +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__matchPath__ = __webpack_require__(450); +/* unused harmony reexport matchPath */ +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__withRouter__ = __webpack_require__(451); +/* unused harmony reexport withRouter */ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +/***/ }), +/* 48 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +/** + * Copyright (c) 2013-present, Facebook, Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + + + +/** + * Use invariant() to assert state which your program assumes to be true. + * + * Provide sprintf-style format (only %s is supported) and arguments + * to provide information about what broke and what you were + * expecting. + * + * The invariant message will be stripped in production, but the invariant + * will remain to ensure logic does not differ in production. + */ + +var invariant = function(condition, format, a, b, c, d, e, f) { + if (false) { + if (format === undefined) { + throw new Error('invariant requires an error message argument'); + } + } + + if (!condition) { + var error; + if (format === undefined) { + error = new Error( + 'Minified exception occurred; use the non-minified dev environment ' + + 'for the full error message and additional helpful warnings.' + ); + } else { + var args = [a, b, c, d, e, f]; + var argIndex = 0; + error = new Error( + format.replace(/%s/g, function() { return args[argIndex++]; }) + ); + error.name = 'Invariant Violation'; + } + + error.framesToPop = 1; // we don't care about invariant's own frame + throw error; + } +}; + +module.exports = invariant; + + +/***/ }), +/* 49 */ +/***/ (function(module, exports, __webpack_require__) { + +var dP = __webpack_require__(37); +var createDesc = __webpack_require__(82); +module.exports = __webpack_require__(41) ? function (object, key, value) { + return dP.f(object, key, createDesc(1, value)); +} : function (object, key, value) { + object[key] = value; + return object; +}; + + +/***/ }), +/* 50 */ +/***/ (function(module, exports, __webpack_require__) { + +module.exports = __webpack_require__(360); + +/***/ }), +/* 51 */ +/***/ (function(module, exports) { + +function _interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { + "default": obj + }; +} + +module.exports = _interopRequireDefault; + +/***/ }), +/* 52 */ +/***/ (function(module, exports, __webpack_require__) { + +// to indexed object, toObject with fallback for non-array-like ES3 strings +var IObject = __webpack_require__(139); +var defined = __webpack_require__(141); +module.exports = function (it) { + return IObject(defined(it)); +}; + + +/***/ }), +/* 53 */ +/***/ (function(module, exports, __webpack_require__) { + +var isObject = __webpack_require__(44); +module.exports = function (it) { + if (!isObject(it)) throw TypeError(it + ' is not an object!'); + return it; +}; + + +/***/ }), +/* 54 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "createBrowserHistory", function() { return createBrowserHistory; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "createHashHistory", function() { return createHashHistory; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "createMemoryHistory", function() { return createMemoryHistory; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "createLocation", function() { return createLocation; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "locationsAreEqual", function() { return locationsAreEqual; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "parsePath", function() { return parsePath; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "createPath", function() { return createPath; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__babel_runtime_helpers_esm_extends__ = __webpack_require__(437); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_resolve_pathname__ = __webpack_require__(438); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_value_equal__ = __webpack_require__(439); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_tiny_warning__ = __webpack_require__(440); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_tiny_invariant__ = __webpack_require__(352); + + + + + + +function addLeadingSlash(path) { + return path.charAt(0) === '/' ? path : '/' + path; +} +function stripLeadingSlash(path) { + return path.charAt(0) === '/' ? path.substr(1) : path; +} +function hasBasename(path, prefix) { + return new RegExp('^' + prefix + '(\\/|\\?|#|$)', 'i').test(path); +} +function stripBasename(path, prefix) { + return hasBasename(path, prefix) ? path.substr(prefix.length) : path; +} +function stripTrailingSlash(path) { + return path.charAt(path.length - 1) === '/' ? path.slice(0, -1) : path; +} +function parsePath(path) { + var pathname = path || '/'; + var search = ''; + var hash = ''; + var hashIndex = pathname.indexOf('#'); + + if (hashIndex !== -1) { + hash = pathname.substr(hashIndex); + pathname = pathname.substr(0, hashIndex); + } + + var searchIndex = pathname.indexOf('?'); + + if (searchIndex !== -1) { + search = pathname.substr(searchIndex); + pathname = pathname.substr(0, searchIndex); + } + + return { + pathname: pathname, + search: search === '?' ? '' : search, + hash: hash === '#' ? '' : hash + }; +} +function createPath(location) { + var pathname = location.pathname, + search = location.search, + hash = location.hash; + var path = pathname || '/'; + if (search && search !== '?') path += search.charAt(0) === '?' ? search : "?" + search; + if (hash && hash !== '#') path += hash.charAt(0) === '#' ? hash : "#" + hash; + return path; +} + +function createLocation(path, state, key, currentLocation) { + var location; + + if (typeof path === 'string') { + // Two-arg form: push(path, state) + location = parsePath(path); + location.state = state; + } else { + // One-arg form: push(location) + location = Object(__WEBPACK_IMPORTED_MODULE_0__babel_runtime_helpers_esm_extends__["a" /* default */])({}, path); + if (location.pathname === undefined) location.pathname = ''; + + if (location.search) { + if (location.search.charAt(0) !== '?') location.search = '?' + location.search; + } else { + location.search = ''; + } + + if (location.hash) { + if (location.hash.charAt(0) !== '#') location.hash = '#' + location.hash; + } else { + location.hash = ''; + } + + if (state !== undefined && location.state === undefined) location.state = state; + } + + try { + location.pathname = decodeURI(location.pathname); + } catch (e) { + if (e instanceof URIError) { + throw new URIError('Pathname "' + location.pathname + '" could not be decoded. ' + 'This is likely caused by an invalid percent-encoding.'); + } else { + throw e; + } + } + + if (key) location.key = key; + + if (currentLocation) { + // Resolve incomplete/relative pathname relative to current location. + if (!location.pathname) { + location.pathname = currentLocation.pathname; + } else if (location.pathname.charAt(0) !== '/') { + location.pathname = Object(__WEBPACK_IMPORTED_MODULE_1_resolve_pathname__["a" /* default */])(location.pathname, currentLocation.pathname); + } + } else { + // When there is no prior location and pathname is empty, set it to / + if (!location.pathname) { + location.pathname = '/'; + } + } + + return location; +} +function locationsAreEqual(a, b) { + return a.pathname === b.pathname && a.search === b.search && a.hash === b.hash && a.key === b.key && Object(__WEBPACK_IMPORTED_MODULE_2_value_equal__["a" /* default */])(a.state, b.state); +} + +function createTransitionManager() { + var prompt = null; + + function setPrompt(nextPrompt) { + false ? warning(prompt == null, 'A history supports only one prompt at a time') : void 0; + prompt = nextPrompt; + return function () { + if (prompt === nextPrompt) prompt = null; + }; + } + + function confirmTransitionTo(location, action, getUserConfirmation, callback) { + // TODO: If another transition starts while we're still confirming + // the previous one, we may end up in a weird state. Figure out the + // best way to handle this. + if (prompt != null) { + var result = typeof prompt === 'function' ? prompt(location, action) : prompt; + + if (typeof result === 'string') { + if (typeof getUserConfirmation === 'function') { + getUserConfirmation(result, callback); + } else { + false ? warning(false, 'A history needs a getUserConfirmation function in order to use a prompt message') : void 0; + callback(true); + } + } else { + // Return false from a transition hook to cancel the transition. + callback(result !== false); + } + } else { + callback(true); + } + } + + var listeners = []; + + function appendListener(fn) { + var isActive = true; + + function listener() { + if (isActive) fn.apply(void 0, arguments); + } + + listeners.push(listener); + return function () { + isActive = false; + listeners = listeners.filter(function (item) { + return item !== listener; + }); + }; + } + + function notifyListeners() { + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + + listeners.forEach(function (listener) { + return listener.apply(void 0, args); + }); + } + + return { + setPrompt: setPrompt, + confirmTransitionTo: confirmTransitionTo, + appendListener: appendListener, + notifyListeners: notifyListeners + }; +} + +var canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement); +function getConfirmation(message, callback) { + callback(window.confirm(message)); // eslint-disable-line no-alert +} +/** + * Returns true if the HTML5 history API is supported. Taken from Modernizr. + * + * https://github.com/Modernizr/Modernizr/blob/master/LICENSE + * https://github.com/Modernizr/Modernizr/blob/master/feature-detects/history.js + * changed to avoid false negatives for Windows Phones: https://github.com/reactjs/react-router/issues/586 + */ + +function supportsHistory() { + var ua = window.navigator.userAgent; + if ((ua.indexOf('Android 2.') !== -1 || ua.indexOf('Android 4.0') !== -1) && ua.indexOf('Mobile Safari') !== -1 && ua.indexOf('Chrome') === -1 && ua.indexOf('Windows Phone') === -1) return false; + return window.history && 'pushState' in window.history; +} +/** + * Returns true if browser fires popstate on hash change. + * IE10 and IE11 do not. + */ + +function supportsPopStateOnHashChange() { + return window.navigator.userAgent.indexOf('Trident') === -1; +} +/** + * Returns false if using go(n) with hash history causes a full page reload. + */ + +function supportsGoWithoutReloadUsingHash() { + return window.navigator.userAgent.indexOf('Firefox') === -1; +} +/** + * Returns true if a given popstate event is an extraneous WebKit event. + * Accounts for the fact that Chrome on iOS fires real popstate events + * containing undefined state when pressing the back button. + */ + +function isExtraneousPopstateEvent(event) { + event.state === undefined && navigator.userAgent.indexOf('CriOS') === -1; +} + +var PopStateEvent = 'popstate'; +var HashChangeEvent = 'hashchange'; + +function getHistoryState() { + try { + return window.history.state || {}; + } catch (e) { + // IE 11 sometimes throws when accessing window.history.state + // See https://github.com/ReactTraining/history/pull/289 + return {}; + } +} +/** + * Creates a history object that uses the HTML5 history API including + * pushState, replaceState, and the popstate event. + */ + + +function createBrowserHistory(props) { + if (props === void 0) { + props = {}; + } + + !canUseDOM ? false ? invariant(false, 'Browser history needs a DOM') : Object(__WEBPACK_IMPORTED_MODULE_4_tiny_invariant__["a" /* default */])(false) : void 0; + var globalHistory = window.history; + var canUseHistory = supportsHistory(); + var needsHashChangeListener = !supportsPopStateOnHashChange(); + var _props = props, + _props$forceRefresh = _props.forceRefresh, + forceRefresh = _props$forceRefresh === void 0 ? false : _props$forceRefresh, + _props$getUserConfirm = _props.getUserConfirmation, + getUserConfirmation = _props$getUserConfirm === void 0 ? getConfirmation : _props$getUserConfirm, + _props$keyLength = _props.keyLength, + keyLength = _props$keyLength === void 0 ? 6 : _props$keyLength; + var basename = props.basename ? stripTrailingSlash(addLeadingSlash(props.basename)) : ''; + + function getDOMLocation(historyState) { + var _ref = historyState || {}, + key = _ref.key, + state = _ref.state; + + var _window$location = window.location, + pathname = _window$location.pathname, + search = _window$location.search, + hash = _window$location.hash; + var path = pathname + search + hash; + false ? warning(!basename || hasBasename(path, basename), 'You are attempting to use a basename on a page whose URL path does not begin ' + 'with the basename. Expected path "' + path + '" to begin with "' + basename + '".') : void 0; + if (basename) path = stripBasename(path, basename); + return createLocation(path, state, key); + } + + function createKey() { + return Math.random().toString(36).substr(2, keyLength); + } + + var transitionManager = createTransitionManager(); + + function setState(nextState) { + Object(__WEBPACK_IMPORTED_MODULE_0__babel_runtime_helpers_esm_extends__["a" /* default */])(history, nextState); + + history.length = globalHistory.length; + transitionManager.notifyListeners(history.location, history.action); + } + + function handlePopState(event) { + // Ignore extraneous popstate events in WebKit. + if (isExtraneousPopstateEvent(event)) return; + handlePop(getDOMLocation(event.state)); + } + + function handleHashChange() { + handlePop(getDOMLocation(getHistoryState())); + } + + var forceNextPop = false; + + function handlePop(location) { + if (forceNextPop) { + forceNextPop = false; + setState(); + } else { + var action = 'POP'; + transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) { + if (ok) { + setState({ + action: action, + location: location + }); + } else { + revertPop(location); + } + }); + } + } + + function revertPop(fromLocation) { + var toLocation = history.location; // TODO: We could probably make this more reliable by + // keeping a list of keys we've seen in sessionStorage. + // Instead, we just default to 0 for keys we don't know. + + var toIndex = allKeys.indexOf(toLocation.key); + if (toIndex === -1) toIndex = 0; + var fromIndex = allKeys.indexOf(fromLocation.key); + if (fromIndex === -1) fromIndex = 0; + var delta = toIndex - fromIndex; + + if (delta) { + forceNextPop = true; + go(delta); + } + } + + var initialLocation = getDOMLocation(getHistoryState()); + var allKeys = [initialLocation.key]; // Public interface + + function createHref(location) { + return basename + createPath(location); + } + + function push(path, state) { + false ? warning(!(typeof path === 'object' && path.state !== undefined && state !== undefined), 'You should avoid providing a 2nd state argument to push when the 1st ' + 'argument is a location-like object that already has state; it is ignored') : void 0; + var action = 'PUSH'; + var location = createLocation(path, state, createKey(), history.location); + transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) { + if (!ok) return; + var href = createHref(location); + var key = location.key, + state = location.state; + + if (canUseHistory) { + globalHistory.pushState({ + key: key, + state: state + }, null, href); + + if (forceRefresh) { + window.location.href = href; + } else { + var prevIndex = allKeys.indexOf(history.location.key); + var nextKeys = allKeys.slice(0, prevIndex === -1 ? 0 : prevIndex + 1); + nextKeys.push(location.key); + allKeys = nextKeys; + setState({ + action: action, + location: location + }); + } + } else { + false ? warning(state === undefined, 'Browser history cannot push state in browsers that do not support HTML5 history') : void 0; + window.location.href = href; + } + }); + } + + function replace(path, state) { + false ? warning(!(typeof path === 'object' && path.state !== undefined && state !== undefined), 'You should avoid providing a 2nd state argument to replace when the 1st ' + 'argument is a location-like object that already has state; it is ignored') : void 0; + var action = 'REPLACE'; + var location = createLocation(path, state, createKey(), history.location); + transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) { + if (!ok) return; + var href = createHref(location); + var key = location.key, + state = location.state; + + if (canUseHistory) { + globalHistory.replaceState({ + key: key, + state: state + }, null, href); + + if (forceRefresh) { + window.location.replace(href); + } else { + var prevIndex = allKeys.indexOf(history.location.key); + if (prevIndex !== -1) allKeys[prevIndex] = location.key; + setState({ + action: action, + location: location + }); + } + } else { + false ? warning(state === undefined, 'Browser history cannot replace state in browsers that do not support HTML5 history') : void 0; + window.location.replace(href); + } + }); + } + + function go(n) { + globalHistory.go(n); + } + + function goBack() { + go(-1); + } + + function goForward() { + go(1); + } + + var listenerCount = 0; + + function checkDOMListeners(delta) { + listenerCount += delta; + + if (listenerCount === 1 && delta === 1) { + window.addEventListener(PopStateEvent, handlePopState); + if (needsHashChangeListener) window.addEventListener(HashChangeEvent, handleHashChange); + } else if (listenerCount === 0) { + window.removeEventListener(PopStateEvent, handlePopState); + if (needsHashChangeListener) window.removeEventListener(HashChangeEvent, handleHashChange); + } + } + + var isBlocked = false; + + function block(prompt) { + if (prompt === void 0) { + prompt = false; + } + + var unblock = transitionManager.setPrompt(prompt); + + if (!isBlocked) { + checkDOMListeners(1); + isBlocked = true; + } + + return function () { + if (isBlocked) { + isBlocked = false; + checkDOMListeners(-1); + } + + return unblock(); + }; + } + + function listen(listener) { + var unlisten = transitionManager.appendListener(listener); + checkDOMListeners(1); + return function () { + checkDOMListeners(-1); + unlisten(); + }; + } + + var history = { + length: globalHistory.length, + action: 'POP', + location: initialLocation, + createHref: createHref, + push: push, + replace: replace, + go: go, + goBack: goBack, + goForward: goForward, + block: block, + listen: listen + }; + return history; +} + +var HashChangeEvent$1 = 'hashchange'; +var HashPathCoders = { + hashbang: { + encodePath: function encodePath(path) { + return path.charAt(0) === '!' ? path : '!/' + stripLeadingSlash(path); + }, + decodePath: function decodePath(path) { + return path.charAt(0) === '!' ? path.substr(1) : path; + } + }, + noslash: { + encodePath: stripLeadingSlash, + decodePath: addLeadingSlash + }, + slash: { + encodePath: addLeadingSlash, + decodePath: addLeadingSlash + } +}; + +function getHashPath() { + // We can't use window.location.hash here because it's not + // consistent across browsers - Firefox will pre-decode it! + var href = window.location.href; + var hashIndex = href.indexOf('#'); + return hashIndex === -1 ? '' : href.substring(hashIndex + 1); +} + +function pushHashPath(path) { + window.location.hash = path; +} + +function replaceHashPath(path) { + var hashIndex = window.location.href.indexOf('#'); + window.location.replace(window.location.href.slice(0, hashIndex >= 0 ? hashIndex : 0) + '#' + path); +} + +function createHashHistory(props) { + if (props === void 0) { + props = {}; + } + + !canUseDOM ? false ? invariant(false, 'Hash history needs a DOM') : Object(__WEBPACK_IMPORTED_MODULE_4_tiny_invariant__["a" /* default */])(false) : void 0; + var globalHistory = window.history; + var canGoWithoutReload = supportsGoWithoutReloadUsingHash(); + var _props = props, + _props$getUserConfirm = _props.getUserConfirmation, + getUserConfirmation = _props$getUserConfirm === void 0 ? getConfirmation : _props$getUserConfirm, + _props$hashType = _props.hashType, + hashType = _props$hashType === void 0 ? 'slash' : _props$hashType; + var basename = props.basename ? stripTrailingSlash(addLeadingSlash(props.basename)) : ''; + var _HashPathCoders$hashT = HashPathCoders[hashType], + encodePath = _HashPathCoders$hashT.encodePath, + decodePath = _HashPathCoders$hashT.decodePath; + + function getDOMLocation() { + var path = decodePath(getHashPath()); + false ? warning(!basename || hasBasename(path, basename), 'You are attempting to use a basename on a page whose URL path does not begin ' + 'with the basename. Expected path "' + path + '" to begin with "' + basename + '".') : void 0; + if (basename) path = stripBasename(path, basename); + return createLocation(path); + } + + var transitionManager = createTransitionManager(); + + function setState(nextState) { + Object(__WEBPACK_IMPORTED_MODULE_0__babel_runtime_helpers_esm_extends__["a" /* default */])(history, nextState); + + history.length = globalHistory.length; + transitionManager.notifyListeners(history.location, history.action); + } + + var forceNextPop = false; + var ignorePath = null; + + function handleHashChange() { + var path = getHashPath(); + var encodedPath = encodePath(path); + + if (path !== encodedPath) { + // Ensure we always have a properly-encoded hash. + replaceHashPath(encodedPath); + } else { + var location = getDOMLocation(); + var prevLocation = history.location; + if (!forceNextPop && locationsAreEqual(prevLocation, location)) return; // A hashchange doesn't always == location change. + + if (ignorePath === createPath(location)) return; // Ignore this change; we already setState in push/replace. + + ignorePath = null; + handlePop(location); + } + } + + function handlePop(location) { + if (forceNextPop) { + forceNextPop = false; + setState(); + } else { + var action = 'POP'; + transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) { + if (ok) { + setState({ + action: action, + location: location + }); + } else { + revertPop(location); + } + }); + } + } + + function revertPop(fromLocation) { + var toLocation = history.location; // TODO: We could probably make this more reliable by + // keeping a list of paths we've seen in sessionStorage. + // Instead, we just default to 0 for paths we don't know. + + var toIndex = allPaths.lastIndexOf(createPath(toLocation)); + if (toIndex === -1) toIndex = 0; + var fromIndex = allPaths.lastIndexOf(createPath(fromLocation)); + if (fromIndex === -1) fromIndex = 0; + var delta = toIndex - fromIndex; + + if (delta) { + forceNextPop = true; + go(delta); + } + } // Ensure the hash is encoded properly before doing anything else. + + + var path = getHashPath(); + var encodedPath = encodePath(path); + if (path !== encodedPath) replaceHashPath(encodedPath); + var initialLocation = getDOMLocation(); + var allPaths = [createPath(initialLocation)]; // Public interface + + function createHref(location) { + return '#' + encodePath(basename + createPath(location)); + } + + function push(path, state) { + false ? warning(state === undefined, 'Hash history cannot push state; it is ignored') : void 0; + var action = 'PUSH'; + var location = createLocation(path, undefined, undefined, history.location); + transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) { + if (!ok) return; + var path = createPath(location); + var encodedPath = encodePath(basename + path); + var hashChanged = getHashPath() !== encodedPath; + + if (hashChanged) { + // We cannot tell if a hashchange was caused by a PUSH, so we'd + // rather setState here and ignore the hashchange. The caveat here + // is that other hash histories in the page will consider it a POP. + ignorePath = path; + pushHashPath(encodedPath); + var prevIndex = allPaths.lastIndexOf(createPath(history.location)); + var nextPaths = allPaths.slice(0, prevIndex === -1 ? 0 : prevIndex + 1); + nextPaths.push(path); + allPaths = nextPaths; + setState({ + action: action, + location: location + }); + } else { + false ? warning(false, 'Hash history cannot PUSH the same path; a new entry will not be added to the history stack') : void 0; + setState(); + } + }); + } + + function replace(path, state) { + false ? warning(state === undefined, 'Hash history cannot replace state; it is ignored') : void 0; + var action = 'REPLACE'; + var location = createLocation(path, undefined, undefined, history.location); + transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) { + if (!ok) return; + var path = createPath(location); + var encodedPath = encodePath(basename + path); + var hashChanged = getHashPath() !== encodedPath; + + if (hashChanged) { + // We cannot tell if a hashchange was caused by a REPLACE, so we'd + // rather setState here and ignore the hashchange. The caveat here + // is that other hash histories in the page will consider it a POP. + ignorePath = path; + replaceHashPath(encodedPath); + } + + var prevIndex = allPaths.indexOf(createPath(history.location)); + if (prevIndex !== -1) allPaths[prevIndex] = path; + setState({ + action: action, + location: location + }); + }); + } + + function go(n) { + false ? warning(canGoWithoutReload, 'Hash history go(n) causes a full page reload in this browser') : void 0; + globalHistory.go(n); + } + + function goBack() { + go(-1); + } + + function goForward() { + go(1); + } + + var listenerCount = 0; + + function checkDOMListeners(delta) { + listenerCount += delta; + + if (listenerCount === 1 && delta === 1) { + window.addEventListener(HashChangeEvent$1, handleHashChange); + } else if (listenerCount === 0) { + window.removeEventListener(HashChangeEvent$1, handleHashChange); + } + } + + var isBlocked = false; + + function block(prompt) { + if (prompt === void 0) { + prompt = false; + } + + var unblock = transitionManager.setPrompt(prompt); + + if (!isBlocked) { + checkDOMListeners(1); + isBlocked = true; + } + + return function () { + if (isBlocked) { + isBlocked = false; + checkDOMListeners(-1); + } + + return unblock(); + }; + } + + function listen(listener) { + var unlisten = transitionManager.appendListener(listener); + checkDOMListeners(1); + return function () { + checkDOMListeners(-1); + unlisten(); + }; + } + + var history = { + length: globalHistory.length, + action: 'POP', + location: initialLocation, + createHref: createHref, + push: push, + replace: replace, + go: go, + goBack: goBack, + goForward: goForward, + block: block, + listen: listen + }; + return history; +} + +function clamp(n, lowerBound, upperBound) { + return Math.min(Math.max(n, lowerBound), upperBound); +} +/** + * Creates a history object that stores locations in memory. + */ + + +function createMemoryHistory(props) { + if (props === void 0) { + props = {}; + } + + var _props = props, + getUserConfirmation = _props.getUserConfirmation, + _props$initialEntries = _props.initialEntries, + initialEntries = _props$initialEntries === void 0 ? ['/'] : _props$initialEntries, + _props$initialIndex = _props.initialIndex, + initialIndex = _props$initialIndex === void 0 ? 0 : _props$initialIndex, + _props$keyLength = _props.keyLength, + keyLength = _props$keyLength === void 0 ? 6 : _props$keyLength; + var transitionManager = createTransitionManager(); + + function setState(nextState) { + Object(__WEBPACK_IMPORTED_MODULE_0__babel_runtime_helpers_esm_extends__["a" /* default */])(history, nextState); + + history.length = history.entries.length; + transitionManager.notifyListeners(history.location, history.action); + } + + function createKey() { + return Math.random().toString(36).substr(2, keyLength); + } + + var index = clamp(initialIndex, 0, initialEntries.length - 1); + var entries = initialEntries.map(function (entry) { + return typeof entry === 'string' ? createLocation(entry, undefined, createKey()) : createLocation(entry, undefined, entry.key || createKey()); + }); // Public interface + + var createHref = createPath; + + function push(path, state) { + false ? warning(!(typeof path === 'object' && path.state !== undefined && state !== undefined), 'You should avoid providing a 2nd state argument to push when the 1st ' + 'argument is a location-like object that already has state; it is ignored') : void 0; + var action = 'PUSH'; + var location = createLocation(path, state, createKey(), history.location); + transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) { + if (!ok) return; + var prevIndex = history.index; + var nextIndex = prevIndex + 1; + var nextEntries = history.entries.slice(0); + + if (nextEntries.length > nextIndex) { + nextEntries.splice(nextIndex, nextEntries.length - nextIndex, location); + } else { + nextEntries.push(location); + } + + setState({ + action: action, + location: location, + index: nextIndex, + entries: nextEntries + }); + }); + } + + function replace(path, state) { + false ? warning(!(typeof path === 'object' && path.state !== undefined && state !== undefined), 'You should avoid providing a 2nd state argument to replace when the 1st ' + 'argument is a location-like object that already has state; it is ignored') : void 0; + var action = 'REPLACE'; + var location = createLocation(path, state, createKey(), history.location); + transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) { + if (!ok) return; + history.entries[history.index] = location; + setState({ + action: action, + location: location + }); + }); + } + + function go(n) { + var nextIndex = clamp(history.index + n, 0, history.entries.length - 1); + var action = 'POP'; + var location = history.entries[nextIndex]; + transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) { + if (ok) { + setState({ + action: action, + location: location, + index: nextIndex + }); + } else { + // Mimic the behavior of DOM histories by + // causing a render after a cancelled POP. + setState(); + } + }); + } + + function goBack() { + go(-1); + } + + function goForward() { + go(1); + } + + function canGo(n) { + var nextIndex = history.index + n; + return nextIndex >= 0 && nextIndex < history.entries.length; + } + + function block(prompt) { + if (prompt === void 0) { + prompt = false; + } + + return transitionManager.setPrompt(prompt); + } + + function listen(listener) { + return transitionManager.appendListener(listener); + } + + var history = { + length: entries.length, + action: 'POP', + location: entries[index], + index: index, + entries: entries, + createHref: createHref, + push: push, + replace: replace, + go: go, + goBack: goBack, + goForward: goForward, + canGo: canGo, + block: block, + listen: listen + }; + return history; +} + + + + +/***/ }), +/* 55 */ +/***/ (function(module, exports, __webpack_require__) { + +// optional / simple context binding +var aFunction = __webpack_require__(234); +module.exports = function (fn, that, length) { + aFunction(fn); + if (that === undefined) return fn; + switch (length) { + case 1: return function (a) { + return fn.call(that, a); + }; + case 2: return function (a, b) { + return fn.call(that, a, b); + }; + case 3: return function (a, b, c) { + return fn.call(that, a, b, c); + }; + } + return function (/* ...args */) { + return fn.apply(that, arguments); + }; +}; + + +/***/ }), +/* 56 */ +/***/ (function(module, exports) { + +module.exports = function (exec) { + try { + return !!exec(); + } catch (e) { + return true; + } +}; + + +/***/ }), +/* 57 */ +/***/ (function(module, exports) { + +var hasOwnProperty = {}.hasOwnProperty; +module.exports = function (it, key) { + return hasOwnProperty.call(it, key); +}; + + +/***/ }), +/* 58 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__propertyUtils__ = __webpack_require__(714); +var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; + + + +var RE_NUM = /[\-+]?(?:\d*\.|)\d+(?:[eE][\-+]?\d+|)/.source; + +var getComputedStyleX = void 0; + +// https://stackoverflow.com/a/3485654/3040605 +function forceRelayout(elem) { + var originalStyle = elem.style.display; + elem.style.display = 'none'; + elem.offsetHeight; // eslint-disable-line + elem.style.display = originalStyle; +} + +function css(el, name, v) { + var value = v; + if ((typeof name === 'undefined' ? 'undefined' : _typeof(name)) === 'object') { + for (var i in name) { + if (name.hasOwnProperty(i)) { + css(el, i, name[i]); + } + } + return undefined; + } + if (typeof value !== 'undefined') { + if (typeof value === 'number') { + value = value + 'px'; + } + el.style[name] = value; + return undefined; + } + return getComputedStyleX(el, name); +} + +function getClientPosition(elem) { + var box = void 0; + var x = void 0; + var y = void 0; + var doc = elem.ownerDocument; + var body = doc.body; + var docElem = doc && doc.documentElement; + // 根据 GBS 最新数据,A-Grade Browsers 都已支持 getBoundingClientRect 方法,不用再考虑传统的实现方式 + box = elem.getBoundingClientRect(); + + // 注:jQuery 还考虑减去 docElem.clientLeft/clientTop + // 但测试发现,这样反而会导致当 html 和 body 有边距/边框样式时,获取的值不正确 + // 此外,ie6 会忽略 html 的 margin 值,幸运地是没有谁会去设置 html 的 margin + + x = box.left; + y = box.top; + + // In IE, most of the time, 2 extra pixels are added to the top and left + // due to the implicit 2-pixel inset border. In IE6/7 quirks mode and + // IE6 standards mode, this border can be overridden by setting the + // document element's border to zero -- thus, we cannot rely on the + // offset always being 2 pixels. + + // In quirks mode, the offset can be determined by querying the body's + // clientLeft/clientTop, but in standards mode, it is found by querying + // the document element's clientLeft/clientTop. Since we already called + // getClientBoundingRect we have already forced a reflow, so it is not + // too expensive just to query them all. + + // ie 下应该减去窗口的边框吧,毕竟默认 absolute 都是相对窗口定位的 + // 窗口边框标准是设 documentElement ,quirks 时设置 body + // 最好禁止在 body 和 html 上边框 ,但 ie < 9 html 默认有 2px ,减去 + // 但是非 ie 不可能设置窗口边框,body html 也不是窗口 ,ie 可以通过 html,body 设置 + // 标准 ie 下 docElem.clientTop 就是 border-top + // ie7 html 即窗口边框改变不了。永远为 2 + // 但标准 firefox/chrome/ie9 下 docElem.clientTop 是窗口边框,即使设了 border-top 也为 0 + + x -= docElem.clientLeft || body.clientLeft || 0; + y -= docElem.clientTop || body.clientTop || 0; + + return { + left: x, + top: y + }; +} + +function getScroll(w, top) { + var ret = w['page' + (top ? 'Y' : 'X') + 'Offset']; + var method = 'scroll' + (top ? 'Top' : 'Left'); + if (typeof ret !== 'number') { + var d = w.document; + // ie6,7,8 standard mode + ret = d.documentElement[method]; + if (typeof ret !== 'number') { + // quirks mode + ret = d.body[method]; + } + } + return ret; +} + +function getScrollLeft(w) { + return getScroll(w); +} + +function getScrollTop(w) { + return getScroll(w, true); +} + +function getOffset(el) { + var pos = getClientPosition(el); + var doc = el.ownerDocument; + var w = doc.defaultView || doc.parentWindow; + pos.left += getScrollLeft(w); + pos.top += getScrollTop(w); + return pos; +} + +/** + * A crude way of determining if an object is a window + * @member util + */ +function isWindow(obj) { + // must use == for ie8 + /* eslint eqeqeq:0 */ + return obj !== null && obj !== undefined && obj == obj.window; +} + +function getDocument(node) { + if (isWindow(node)) { + return node.document; + } + if (node.nodeType === 9) { + return node; + } + return node.ownerDocument; +} + +function _getComputedStyle(elem, name, cs) { + var computedStyle = cs; + var val = ''; + var d = getDocument(elem); + computedStyle = computedStyle || d.defaultView.getComputedStyle(elem, null); + + // https://github.com/kissyteam/kissy/issues/61 + if (computedStyle) { + val = computedStyle.getPropertyValue(name) || computedStyle[name]; + } + + return val; +} + +var _RE_NUM_NO_PX = new RegExp('^(' + RE_NUM + ')(?!px)[a-z%]+$', 'i'); +var RE_POS = /^(top|right|bottom|left)$/; +var CURRENT_STYLE = 'currentStyle'; +var RUNTIME_STYLE = 'runtimeStyle'; +var LEFT = 'left'; +var PX = 'px'; + +function _getComputedStyleIE(elem, name) { + // currentStyle maybe null + // http://msdn.microsoft.com/en-us/library/ms535231.aspx + var ret = elem[CURRENT_STYLE] && elem[CURRENT_STYLE][name]; + + // 当 width/height 设置为百分比时,通过 pixelLeft 方式转换的 width/height 值 + // 一开始就处理了! CUSTOM_STYLE.height,CUSTOM_STYLE.width ,cssHook 解决@2011-08-19 + // 在 ie 下不对,需要直接用 offset 方式 + // borderWidth 等值也有问题,但考虑到 borderWidth 设为百分比的概率很小,这里就不考虑了 + + // From the awesome hack by Dean Edwards + // http://erik.eae.net/archives/2007/07/27/18.54.15/#comment-102291 + // If we're not dealing with a regular pixel number + // but a number that has a weird ending, we need to convert it to pixels + // exclude left right for relativity + if (_RE_NUM_NO_PX.test(ret) && !RE_POS.test(name)) { + // Remember the original values + var style = elem.style; + var left = style[LEFT]; + var rsLeft = elem[RUNTIME_STYLE][LEFT]; + + // prevent flashing of content + elem[RUNTIME_STYLE][LEFT] = elem[CURRENT_STYLE][LEFT]; + + // Put in the new values to get a computed value out + style[LEFT] = name === 'fontSize' ? '1em' : ret || 0; + ret = style.pixelLeft + PX; + + // Revert the changed values + style[LEFT] = left; + + elem[RUNTIME_STYLE][LEFT] = rsLeft; + } + return ret === '' ? 'auto' : ret; +} + +if (typeof window !== 'undefined') { + getComputedStyleX = window.getComputedStyle ? _getComputedStyle : _getComputedStyleIE; +} + +function getOffsetDirection(dir, option) { + if (dir === 'left') { + return option.useCssRight ? 'right' : dir; + } + return option.useCssBottom ? 'bottom' : dir; +} + +function oppositeOffsetDirection(dir) { + if (dir === 'left') { + return 'right'; + } else if (dir === 'right') { + return 'left'; + } else if (dir === 'top') { + return 'bottom'; + } else if (dir === 'bottom') { + return 'top'; + } +} + +// 设置 elem 相对 elem.ownerDocument 的坐标 +function setLeftTop(elem, offset, option) { + // set position first, in-case top/left are set even on static elem + if (css(elem, 'position') === 'static') { + elem.style.position = 'relative'; + } + var presetH = -999; + var presetV = -999; + var horizontalProperty = getOffsetDirection('left', option); + var verticalProperty = getOffsetDirection('top', option); + var oppositeHorizontalProperty = oppositeOffsetDirection(horizontalProperty); + var oppositeVerticalProperty = oppositeOffsetDirection(verticalProperty); + + if (horizontalProperty !== 'left') { + presetH = 999; + } + + if (verticalProperty !== 'top') { + presetV = 999; + } + var originalTransition = ''; + var originalOffset = getOffset(elem); + if ('left' in offset || 'top' in offset) { + originalTransition = Object(__WEBPACK_IMPORTED_MODULE_0__propertyUtils__["c" /* getTransitionProperty */])(elem) || ''; + Object(__WEBPACK_IMPORTED_MODULE_0__propertyUtils__["e" /* setTransitionProperty */])(elem, 'none'); + } + if ('left' in offset) { + elem.style[oppositeHorizontalProperty] = ''; + elem.style[horizontalProperty] = presetH + 'px'; + } + if ('top' in offset) { + elem.style[oppositeVerticalProperty] = ''; + elem.style[verticalProperty] = presetV + 'px'; + } + // force relayout + forceRelayout(elem); + var old = getOffset(elem); + var originalStyle = {}; + for (var key in offset) { + if (offset.hasOwnProperty(key)) { + var dir = getOffsetDirection(key, option); + var preset = key === 'left' ? presetH : presetV; + var off = originalOffset[key] - old[key]; + if (dir === key) { + originalStyle[dir] = preset + off; + } else { + originalStyle[dir] = preset - off; + } + } + } + css(elem, originalStyle); + // force relayout + forceRelayout(elem); + if ('left' in offset || 'top' in offset) { + Object(__WEBPACK_IMPORTED_MODULE_0__propertyUtils__["e" /* setTransitionProperty */])(elem, originalTransition); + } + var ret = {}; + for (var _key in offset) { + if (offset.hasOwnProperty(_key)) { + var _dir = getOffsetDirection(_key, option); + var _off = offset[_key] - originalOffset[_key]; + if (_key === _dir) { + ret[_dir] = originalStyle[_dir] + _off; + } else { + ret[_dir] = originalStyle[_dir] - _off; + } + } + } + css(elem, ret); +} + +function setTransform(elem, offset) { + var originalOffset = getOffset(elem); + var originalXY = Object(__WEBPACK_IMPORTED_MODULE_0__propertyUtils__["b" /* getTransformXY */])(elem); + var resultXY = { x: originalXY.x, y: originalXY.y }; + if ('left' in offset) { + resultXY.x = originalXY.x + offset.left - originalOffset.left; + } + if ('top' in offset) { + resultXY.y = originalXY.y + offset.top - originalOffset.top; + } + Object(__WEBPACK_IMPORTED_MODULE_0__propertyUtils__["d" /* setTransformXY */])(elem, resultXY); +} + +function setOffset(elem, offset, option) { + if (option.ignoreShake) { + var oriOffset = getOffset(elem); + + var oLeft = oriOffset.left.toFixed(0); + var oTop = oriOffset.top.toFixed(0); + var tLeft = offset.left.toFixed(0); + var tTop = offset.top.toFixed(0); + + if (oLeft === tLeft && oTop === tTop) { + return; + } + } + + if (option.useCssRight || option.useCssBottom) { + setLeftTop(elem, offset, option); + } else if (option.useCssTransform && Object(__WEBPACK_IMPORTED_MODULE_0__propertyUtils__["a" /* getTransformName */])() in document.body.style) { + setTransform(elem, offset, option); + } else { + setLeftTop(elem, offset, option); + } +} + +function each(arr, fn) { + for (var i = 0; i < arr.length; i++) { + fn(arr[i]); + } +} + +function isBorderBoxFn(elem) { + return getComputedStyleX(elem, 'boxSizing') === 'border-box'; +} + +var BOX_MODELS = ['margin', 'border', 'padding']; +var CONTENT_INDEX = -1; +var PADDING_INDEX = 2; +var BORDER_INDEX = 1; +var MARGIN_INDEX = 0; + +function swap(elem, options, callback) { + var old = {}; + var style = elem.style; + var name = void 0; + + // Remember the old values, and insert the new ones + for (name in options) { + if (options.hasOwnProperty(name)) { + old[name] = style[name]; + style[name] = options[name]; + } + } + + callback.call(elem); + + // Revert the old values + for (name in options) { + if (options.hasOwnProperty(name)) { + style[name] = old[name]; + } + } +} + +function getPBMWidth(elem, props, which) { + var value = 0; + var prop = void 0; + var j = void 0; + var i = void 0; + for (j = 0; j < props.length; j++) { + prop = props[j]; + if (prop) { + for (i = 0; i < which.length; i++) { + var cssProp = void 0; + if (prop === 'border') { + cssProp = '' + prop + which[i] + 'Width'; + } else { + cssProp = prop + which[i]; + } + value += parseFloat(getComputedStyleX(elem, cssProp)) || 0; + } + } + } + return value; +} + +var domUtils = {}; + +each(['Width', 'Height'], function (name) { + domUtils['doc' + name] = function (refWin) { + var d = refWin.document; + return Math.max( + // firefox chrome documentElement.scrollHeight< body.scrollHeight + // ie standard mode : documentElement.scrollHeight> body.scrollHeight + d.documentElement['scroll' + name], + // quirks : documentElement.scrollHeight 最大等于可视窗口多一点? + d.body['scroll' + name], domUtils['viewport' + name](d)); + }; + + domUtils['viewport' + name] = function (win) { + // pc browser includes scrollbar in window.innerWidth + var prop = 'client' + name; + var doc = win.document; + var body = doc.body; + var documentElement = doc.documentElement; + var documentElementProp = documentElement[prop]; + // 标准模式取 documentElement + // backcompat 取 body + return doc.compatMode === 'CSS1Compat' && documentElementProp || body && body[prop] || documentElementProp; + }; +}); + +/* + 得到元素的大小信息 + @param elem + @param name + @param {String} [extra] 'padding' : (css width) + padding + 'border' : (css width) + padding + border + 'margin' : (css width) + padding + border + margin + */ +function getWH(elem, name, ex) { + var extra = ex; + if (isWindow(elem)) { + return name === 'width' ? domUtils.viewportWidth(elem) : domUtils.viewportHeight(elem); + } else if (elem.nodeType === 9) { + return name === 'width' ? domUtils.docWidth(elem) : domUtils.docHeight(elem); + } + var which = name === 'width' ? ['Left', 'Right'] : ['Top', 'Bottom']; + var borderBoxValue = name === 'width' ? elem.getBoundingClientRect().width : elem.getBoundingClientRect().height; + var computedStyle = getComputedStyleX(elem); + var isBorderBox = isBorderBoxFn(elem, computedStyle); + var cssBoxValue = 0; + if (borderBoxValue === null || borderBoxValue === undefined || borderBoxValue <= 0) { + borderBoxValue = undefined; + // Fall back to computed then un computed css if necessary + cssBoxValue = getComputedStyleX(elem, name); + if (cssBoxValue === null || cssBoxValue === undefined || Number(cssBoxValue) < 0) { + cssBoxValue = elem.style[name] || 0; + } + // Normalize '', auto, and prepare for extra + cssBoxValue = parseFloat(cssBoxValue) || 0; + } + if (extra === undefined) { + extra = isBorderBox ? BORDER_INDEX : CONTENT_INDEX; + } + var borderBoxValueOrIsBorderBox = borderBoxValue !== undefined || isBorderBox; + var val = borderBoxValue || cssBoxValue; + if (extra === CONTENT_INDEX) { + if (borderBoxValueOrIsBorderBox) { + return val - getPBMWidth(elem, ['border', 'padding'], which, computedStyle); + } + return cssBoxValue; + } else if (borderBoxValueOrIsBorderBox) { + if (extra === BORDER_INDEX) { + return val; + } + return val + (extra === PADDING_INDEX ? -getPBMWidth(elem, ['border'], which, computedStyle) : getPBMWidth(elem, ['margin'], which, computedStyle)); + } + return cssBoxValue + getPBMWidth(elem, BOX_MODELS.slice(extra), which, computedStyle); +} + +var cssShow = { + position: 'absolute', + visibility: 'hidden', + display: 'block' +}; + +// fix #119 : https://github.com/kissyteam/kissy/issues/119 +function getWHIgnoreDisplay() { + for (var _len = arguments.length, args = Array(_len), _key2 = 0; _key2 < _len; _key2++) { + args[_key2] = arguments[_key2]; + } + + var val = void 0; + var elem = args[0]; + // in case elem is window + // elem.offsetWidth === undefined + if (elem.offsetWidth !== 0) { + val = getWH.apply(undefined, args); + } else { + swap(elem, cssShow, function () { + val = getWH.apply(undefined, args); + }); + } + return val; +} + +each(['width', 'height'], function (name) { + var first = name.charAt(0).toUpperCase() + name.slice(1); + domUtils['outer' + first] = function (el, includeMargin) { + return el && getWHIgnoreDisplay(el, name, includeMargin ? MARGIN_INDEX : BORDER_INDEX); + }; + var which = name === 'width' ? ['Left', 'Right'] : ['Top', 'Bottom']; + + domUtils[name] = function (elem, v) { + var val = v; + if (val !== undefined) { + if (elem) { + var computedStyle = getComputedStyleX(elem); + var isBorderBox = isBorderBoxFn(elem); + if (isBorderBox) { + val += getPBMWidth(elem, ['padding', 'border'], which, computedStyle); + } + return css(elem, name, val); + } + return undefined; + } + return elem && getWHIgnoreDisplay(elem, name, CONTENT_INDEX); + }; +}); + +function mix(to, from) { + for (var i in from) { + if (from.hasOwnProperty(i)) { + to[i] = from[i]; + } + } + return to; +} + +var utils = { + getWindow: function getWindow(node) { + if (node && node.document && node.setTimeout) { + return node; + } + var doc = node.ownerDocument || node; + return doc.defaultView || doc.parentWindow; + }, + + getDocument: getDocument, + offset: function offset(el, value, option) { + if (typeof value !== 'undefined') { + setOffset(el, value, option || {}); + } else { + return getOffset(el); + } + }, + + isWindow: isWindow, + each: each, + css: css, + clone: function clone(obj) { + var i = void 0; + var ret = {}; + for (i in obj) { + if (obj.hasOwnProperty(i)) { + ret[i] = obj[i]; + } + } + var overflow = obj.overflow; + if (overflow) { + for (i in obj) { + if (obj.hasOwnProperty(i)) { + ret.overflow[i] = obj.overflow[i]; + } + } + } + return ret; + }, + + mix: mix, + getWindowScrollLeft: function getWindowScrollLeft(w) { + return getScrollLeft(w); + }, + getWindowScrollTop: function getWindowScrollTop(w) { + return getScrollTop(w); + }, + merge: function merge() { + var ret = {}; + + for (var _len2 = arguments.length, args = Array(_len2), _key3 = 0; _key3 < _len2; _key3++) { + args[_key3] = arguments[_key3]; + } + + for (var i = 0; i < args.length; i++) { + utils.mix(ret, args[i]); + } + return ret; + }, + + viewportWidth: 0, + viewportHeight: 0 +}; + +mix(utils, domUtils); + +/* harmony default export */ __webpack_exports__["a"] = (utils); + +/***/ }), +/* 59 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +exports.__esModule = true; + +var _defineProperty = __webpack_require__(232); + +var _defineProperty2 = _interopRequireDefault(_defineProperty); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +exports.default = function (obj, key, value) { + if (key in obj) { + (0, _defineProperty2.default)(obj, key, { + value: value, + enumerable: true, + configurable: true, + writable: true + }); + } else { + obj[key] = value; + } + + return obj; +}; + +/***/ }), +/* 60 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +__webpack_require__(31); + +__webpack_require__(204); + +__webpack_require__(88); +//# sourceMappingURL=css.js.map + + +/***/ }), +/* 61 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _Input = _interopRequireDefault(__webpack_require__(84)); + +var _Group = _interopRequireDefault(__webpack_require__(641)); + +var _Search = _interopRequireDefault(__webpack_require__(642)); + +var _TextArea = _interopRequireDefault(__webpack_require__(394)); + +var _Password = _interopRequireDefault(__webpack_require__(654)); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +_Input["default"].Group = _Group["default"]; +_Input["default"].Search = _Search["default"]; +_Input["default"].TextArea = _TextArea["default"]; +_Input["default"].Password = _Password["default"]; +var _default = _Input["default"]; +exports["default"] = _default; +//# sourceMappingURL=index.js.map + + +/***/ }), +/* 62 */ +/***/ (function(module, exports) { + +// + +module.exports = function shallowEqual(objA, objB, compare, compareContext) { + var ret = compare ? compare.call(compareContext, objA, objB) : void 0; + + if (ret !== void 0) { + return !!ret; + } + + if (objA === objB) { + return true; + } + + if (typeof objA !== "object" || !objA || typeof objB !== "object" || !objB) { + return false; + } + + var keysA = Object.keys(objA); + var keysB = Object.keys(objB); + + if (keysA.length !== keysB.length) { + return false; + } + + var bHasOwnProperty = Object.prototype.hasOwnProperty.bind(objB); + + // Test for A's keys different from B. + for (var idx = 0; idx < keysA.length; idx++) { + var key = keysA[idx]; + + if (!bHasOwnProperty(key)) { + return false; + } + + var valueA = objA[key]; + var valueB = objB[key]; + + ret = compare ? compare.call(compareContext, valueA, valueB, key) : void 0; + + if (ret === false || (ret === void 0 && valueA !== valueB)) { + return false; + } + } + + return true; +}; + + +/***/ }), +/* 63 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +/* +object-assign +(c) Sindre Sorhus +@license MIT +*/ + + +/* eslint-disable no-unused-vars */ +var getOwnPropertySymbols = Object.getOwnPropertySymbols; +var hasOwnProperty = Object.prototype.hasOwnProperty; +var propIsEnumerable = Object.prototype.propertyIsEnumerable; + +function toObject(val) { + if (val === null || val === undefined) { + throw new TypeError('Object.assign cannot be called with null or undefined'); + } + + return Object(val); +} + +function shouldUseNative() { + try { + if (!Object.assign) { + return false; + } + + // Detect buggy property enumeration order in older V8 versions. + + // https://bugs.chromium.org/p/v8/issues/detail?id=4118 + var test1 = new String('abc'); // eslint-disable-line no-new-wrappers + test1[5] = 'de'; + if (Object.getOwnPropertyNames(test1)[0] === '5') { + return false; + } + + // https://bugs.chromium.org/p/v8/issues/detail?id=3056 + var test2 = {}; + for (var i = 0; i < 10; i++) { + test2['_' + String.fromCharCode(i)] = i; + } + var order2 = Object.getOwnPropertyNames(test2).map(function (n) { + return test2[n]; + }); + if (order2.join('') !== '0123456789') { + return false; + } + + // https://bugs.chromium.org/p/v8/issues/detail?id=3056 + var test3 = {}; + 'abcdefghijklmnopqrst'.split('').forEach(function (letter) { + test3[letter] = letter; + }); + if (Object.keys(Object.assign({}, test3)).join('') !== + 'abcdefghijklmnopqrst') { + return false; + } + + return true; + } catch (err) { + // We don't expect any of the above to throw, but better to be safe. + return false; + } +} + +module.exports = shouldUseNative() ? Object.assign : function (target, source) { + var from; + var to = toObject(target); + var symbols; + + for (var s = 1; s < arguments.length; s++) { + from = Object(arguments[s]); + + for (var key in from) { + if (hasOwnProperty.call(from, key)) { + to[key] = from[key]; + } + } + + if (getOwnPropertySymbols) { + symbols = getOwnPropertySymbols(from); + for (var i = 0; i < symbols.length; i++) { + if (propIsEnumerable.call(from, symbols[i])) { + to[symbols[i]] = from[symbols[i]]; + } + } + } + } + + return to; +}; + + +/***/ }), +/* 64 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +/** + * Copyright (c) 2014-present, Facebook, Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + + + +/** + * Similar to invariant but only logs a warning if the condition is not met. + * This can be used to log issues in development environments in critical + * paths. Removing the logging code for production environments will keep the + * same logic and follow the same code paths. + */ + +var __DEV__ = "production" !== 'production'; + +var warning = function() {}; + +if (__DEV__) { + var printWarning = function printWarning(format, args) { + var len = arguments.length; + args = new Array(len > 1 ? len - 1 : 0); + for (var key = 1; key < len; key++) { + args[key - 1] = arguments[key]; + } + var argIndex = 0; + var message = 'Warning: ' + + format.replace(/%s/g, function() { + return args[argIndex++]; + }); + if (typeof console !== 'undefined') { + console.error(message); + } + try { + // --- Welcome to debugging React --- + // This error was thrown as a convenience so that you can use this stack + // to find the callsite that caused this warning to fire. + throw new Error(message); + } catch (x) {} + } + + warning = function(condition, format, args) { + var len = arguments.length; + args = new Array(len > 2 ? len - 2 : 0); + for (var key = 2; key < len; key++) { + args[key - 2] = arguments[key]; + } + if (format === undefined) { + throw new Error( + '`warning(condition, format, ...args)` requires a warning ' + + 'message argument' + ); + } + if (!condition) { + printWarning.apply(null, [format].concat(args)); + } + }; +} + +module.exports = warning; + + +/***/ }), +/* 65 */ +/***/ (function(module, exports, __webpack_require__) { + +// 7.1.13 ToObject(argument) +var defined = __webpack_require__(141); +module.exports = function (it) { + return Object(defined(it)); +}; + + +/***/ }), +/* 66 */ +/***/ (function(module, exports) { + +module.exports = {}; + + +/***/ }), +/* 67 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); + +var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; + +var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; + +var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); + +var _warning = __webpack_require__(15); + +var _warning2 = _interopRequireDefault(_warning); + +var _toCss = __webpack_require__(156); + +var _toCss2 = _interopRequireDefault(_toCss); + +var _toCssValue = __webpack_require__(106); + +var _toCssValue2 = _interopRequireDefault(_toCssValue); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +var StyleRule = function () { + function StyleRule(key, style, options) { + _classCallCheck(this, StyleRule); + + this.type = 'style'; + this.isProcessed = false; + var sheet = options.sheet, + Renderer = options.Renderer, + selector = options.selector; + + this.key = key; + this.options = options; + this.style = style; + if (selector) this.selectorText = selector; + this.renderer = sheet ? sheet.renderer : new Renderer(); + } + + /** + * Set selector string. + * Attention: use this with caution. Most browsers didn't implement + * selectorText setter, so this may result in rerendering of entire Style Sheet. + */ + + + _createClass(StyleRule, [{ + key: 'prop', + + + /** + * Get or set a style property. + */ + value: function prop(name, value) { + // It's a getter. + if (value === undefined) return this.style[name]; + + // Don't do anything if the value has not changed. + if (this.style[name] === value) return this; + + value = this.options.jss.plugins.onChangeValue(value, name, this); + + var isEmpty = value == null || value === false; + var isDefined = name in this.style; + + // Value is empty and wasn't defined before. + if (isEmpty && !isDefined) return this; + + // We are going to remove this value. + var remove = isEmpty && isDefined; + + if (remove) delete this.style[name];else this.style[name] = value; + + // Renderable is defined if StyleSheet option `link` is true. + if (this.renderable) { + if (remove) this.renderer.removeProperty(this.renderable, name);else this.renderer.setProperty(this.renderable, name, value); + return this; + } + + var sheet = this.options.sheet; + + if (sheet && sheet.attached) { + (0, _warning2['default'])(false, 'Rule is not linked. Missing sheet option "link: true".'); + } + return this; + } + + /** + * Apply rule to an element inline. + */ + + }, { + key: 'applyTo', + value: function applyTo(renderable) { + var json = this.toJSON(); + for (var prop in json) { + this.renderer.setProperty(renderable, prop, json[prop]); + }return this; + } + + /** + * Returns JSON representation of the rule. + * Fallbacks are not supported. + * Useful for inline styles. + */ + + }, { + key: 'toJSON', + value: function toJSON() { + var json = {}; + for (var prop in this.style) { + var value = this.style[prop]; + if ((typeof value === 'undefined' ? 'undefined' : _typeof(value)) !== 'object') json[prop] = value;else if (Array.isArray(value)) json[prop] = (0, _toCssValue2['default'])(value); + } + return json; + } + + /** + * Generates a CSS string. + */ + + }, { + key: 'toString', + value: function toString(options) { + var sheet = this.options.sheet; + + var link = sheet ? sheet.options.link : false; + var opts = link ? _extends({}, options, { allowEmpty: true }) : options; + return (0, _toCss2['default'])(this.selector, this.style, opts); + } + }, { + key: 'selector', + set: function set(selector) { + if (selector === this.selectorText) return; + + this.selectorText = selector; + + if (!this.renderable) return; + + var hasChanged = this.renderer.setSelector(this.renderable, selector); + + // If selector setter is not implemented, rerender the rule. + if (!hasChanged && this.renderable) { + var renderable = this.renderer.replaceRule(this.renderable, this); + if (renderable) this.renderable = renderable; + } + } + + /** + * Get selector string. + */ + , + get: function get() { + return this.selectorText; + } + }]); + + return StyleRule; +}(); + +exports['default'] = StyleRule; + +/***/ }), +/* 68 */ +/***/ (function(module, exports, __webpack_require__) { + +/* WEBPACK VAR INJECTION */(function(global) {var assign = make_assign() +var create = make_create() +var trim = make_trim() +var Global = (typeof window !== 'undefined' ? window : global) + +module.exports = { + assign: assign, + create: create, + trim: trim, + bind: bind, + slice: slice, + each: each, + map: map, + pluck: pluck, + isList: isList, + isFunction: isFunction, + isObject: isObject, + Global: Global +} + +function make_assign() { + if (Object.assign) { + return Object.assign + } else { + return function shimAssign(obj, props1, props2, etc) { + for (var i = 1; i < arguments.length; i++) { + each(Object(arguments[i]), function(val, key) { + obj[key] = val + }) + } + return obj + } + } +} + +function make_create() { + if (Object.create) { + return function create(obj, assignProps1, assignProps2, etc) { + var assignArgsList = slice(arguments, 1) + return assign.apply(this, [Object.create(obj)].concat(assignArgsList)) + } + } else { + function F() {} // eslint-disable-line no-inner-declarations + return function create(obj, assignProps1, assignProps2, etc) { + var assignArgsList = slice(arguments, 1) + F.prototype = obj + return assign.apply(this, [new F()].concat(assignArgsList)) + } + } +} + +function make_trim() { + if (String.prototype.trim) { + return function trim(str) { + return String.prototype.trim.call(str) + } + } else { + return function trim(str) { + return str.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, '') + } + } +} + +function bind(obj, fn) { + return function() { + return fn.apply(obj, Array.prototype.slice.call(arguments, 0)) + } +} + +function slice(arr, index) { + return Array.prototype.slice.call(arr, index || 0) +} + +function each(obj, fn) { + pluck(obj, function(val, key) { + fn(val, key) + return false + }) +} + +function map(obj, fn) { + var res = (isList(obj) ? [] : {}) + pluck(obj, function(v, k) { + res[k] = fn(v, k) + return false + }) + return res +} + +function pluck(obj, fn) { + if (isList(obj)) { + for (var i=0; i>> 0; + + for (var i = 0; i < len; i++) { + if (i in t && fun.call(this, t[i], i, t)) { + return true; + } + } + + return false; + }; + } + + function isValid(m) { + if (m._isValid == null) { + var flags = getParsingFlags(m); + var parsedParts = some.call(flags.parsedDateParts, function (i) { + return i != null; + }); + var isNowValid = !isNaN(m._d.getTime()) && + flags.overflow < 0 && + !flags.empty && + !flags.invalidMonth && + !flags.invalidWeekday && + !flags.weekdayMismatch && + !flags.nullInput && + !flags.invalidFormat && + !flags.userInvalidated && + (!flags.meridiem || (flags.meridiem && parsedParts)); + + if (m._strict) { + isNowValid = isNowValid && + flags.charsLeftOver === 0 && + flags.unusedTokens.length === 0 && + flags.bigHour === undefined; + } + + if (Object.isFrozen == null || !Object.isFrozen(m)) { + m._isValid = isNowValid; + } + else { + return isNowValid; + } + } + return m._isValid; + } + + function createInvalid (flags) { + var m = createUTC(NaN); + if (flags != null) { + extend(getParsingFlags(m), flags); + } + else { + getParsingFlags(m).userInvalidated = true; + } + + return m; + } + + // Plugins that add properties should also add the key here (null value), + // so we can properly clone ourselves. + var momentProperties = hooks.momentProperties = []; + + function copyConfig(to, from) { + var i, prop, val; + + if (!isUndefined(from._isAMomentObject)) { + to._isAMomentObject = from._isAMomentObject; + } + if (!isUndefined(from._i)) { + to._i = from._i; + } + if (!isUndefined(from._f)) { + to._f = from._f; + } + if (!isUndefined(from._l)) { + to._l = from._l; + } + if (!isUndefined(from._strict)) { + to._strict = from._strict; + } + if (!isUndefined(from._tzm)) { + to._tzm = from._tzm; + } + if (!isUndefined(from._isUTC)) { + to._isUTC = from._isUTC; + } + if (!isUndefined(from._offset)) { + to._offset = from._offset; + } + if (!isUndefined(from._pf)) { + to._pf = getParsingFlags(from); + } + if (!isUndefined(from._locale)) { + to._locale = from._locale; + } + + if (momentProperties.length > 0) { + for (i = 0; i < momentProperties.length; i++) { + prop = momentProperties[i]; + val = from[prop]; + if (!isUndefined(val)) { + to[prop] = val; + } + } + } + + return to; + } + + var updateInProgress = false; + + // Moment prototype object + function Moment(config) { + copyConfig(this, config); + this._d = new Date(config._d != null ? config._d.getTime() : NaN); + if (!this.isValid()) { + this._d = new Date(NaN); + } + // Prevent infinite loop in case updateOffset creates new moment + // objects. + if (updateInProgress === false) { + updateInProgress = true; + hooks.updateOffset(this); + updateInProgress = false; + } + } + + function isMoment (obj) { + return obj instanceof Moment || (obj != null && obj._isAMomentObject != null); + } + + function absFloor (number) { + if (number < 0) { + // -0 -> 0 + return Math.ceil(number) || 0; + } else { + return Math.floor(number); + } + } + + function toInt(argumentForCoercion) { + var coercedNumber = +argumentForCoercion, + value = 0; + + if (coercedNumber !== 0 && isFinite(coercedNumber)) { + value = absFloor(coercedNumber); + } + + return value; + } + + // compare two arrays, return the number of differences + function compareArrays(array1, array2, dontConvert) { + var len = Math.min(array1.length, array2.length), + lengthDiff = Math.abs(array1.length - array2.length), + diffs = 0, + i; + for (i = 0; i < len; i++) { + if ((dontConvert && array1[i] !== array2[i]) || + (!dontConvert && toInt(array1[i]) !== toInt(array2[i]))) { + diffs++; + } + } + return diffs + lengthDiff; + } + + function warn(msg) { + if (hooks.suppressDeprecationWarnings === false && + (typeof console !== 'undefined') && console.warn) { + console.warn('Deprecation warning: ' + msg); + } + } + + function deprecate(msg, fn) { + var firstTime = true; + + return extend(function () { + if (hooks.deprecationHandler != null) { + hooks.deprecationHandler(null, msg); + } + if (firstTime) { + var args = []; + var arg; + for (var i = 0; i < arguments.length; i++) { + arg = ''; + if (typeof arguments[i] === 'object') { + arg += '\n[' + i + '] '; + for (var key in arguments[0]) { + arg += key + ': ' + arguments[0][key] + ', '; + } + arg = arg.slice(0, -2); // Remove trailing comma and space + } else { + arg = arguments[i]; + } + args.push(arg); + } + warn(msg + '\nArguments: ' + Array.prototype.slice.call(args).join('') + '\n' + (new Error()).stack); + firstTime = false; + } + return fn.apply(this, arguments); + }, fn); + } + + var deprecations = {}; + + function deprecateSimple(name, msg) { + if (hooks.deprecationHandler != null) { + hooks.deprecationHandler(name, msg); + } + if (!deprecations[name]) { + warn(msg); + deprecations[name] = true; + } + } + + hooks.suppressDeprecationWarnings = false; + hooks.deprecationHandler = null; + + function isFunction(input) { + return input instanceof Function || Object.prototype.toString.call(input) === '[object Function]'; + } + + function set (config) { + var prop, i; + for (i in config) { + prop = config[i]; + if (isFunction(prop)) { + this[i] = prop; + } else { + this['_' + i] = prop; + } + } + this._config = config; + // Lenient ordinal parsing accepts just a number in addition to + // number + (possibly) stuff coming from _dayOfMonthOrdinalParse. + // TODO: Remove "ordinalParse" fallback in next major release. + this._dayOfMonthOrdinalParseLenient = new RegExp( + (this._dayOfMonthOrdinalParse.source || this._ordinalParse.source) + + '|' + (/\d{1,2}/).source); + } + + function mergeConfigs(parentConfig, childConfig) { + var res = extend({}, parentConfig), prop; + for (prop in childConfig) { + if (hasOwnProp(childConfig, prop)) { + if (isObject(parentConfig[prop]) && isObject(childConfig[prop])) { + res[prop] = {}; + extend(res[prop], parentConfig[prop]); + extend(res[prop], childConfig[prop]); + } else if (childConfig[prop] != null) { + res[prop] = childConfig[prop]; + } else { + delete res[prop]; + } + } + } + for (prop in parentConfig) { + if (hasOwnProp(parentConfig, prop) && + !hasOwnProp(childConfig, prop) && + isObject(parentConfig[prop])) { + // make sure changes to properties don't modify parent config + res[prop] = extend({}, res[prop]); + } + } + return res; + } + + function Locale(config) { + if (config != null) { + this.set(config); + } + } + + var keys; + + if (Object.keys) { + keys = Object.keys; + } else { + keys = function (obj) { + var i, res = []; + for (i in obj) { + if (hasOwnProp(obj, i)) { + res.push(i); + } + } + return res; + }; + } + + var defaultCalendar = { + sameDay : '[Today at] LT', + nextDay : '[Tomorrow at] LT', + nextWeek : 'dddd [at] LT', + lastDay : '[Yesterday at] LT', + lastWeek : '[Last] dddd [at] LT', + sameElse : 'L' + }; + + function calendar (key, mom, now) { + var output = this._calendar[key] || this._calendar['sameElse']; + return isFunction(output) ? output.call(mom, now) : output; + } + + var defaultLongDateFormat = { + LTS : 'h:mm:ss A', + LT : 'h:mm A', + L : 'MM/DD/YYYY', + LL : 'MMMM D, YYYY', + LLL : 'MMMM D, YYYY h:mm A', + LLLL : 'dddd, MMMM D, YYYY h:mm A' + }; + + function longDateFormat (key) { + var format = this._longDateFormat[key], + formatUpper = this._longDateFormat[key.toUpperCase()]; + + if (format || !formatUpper) { + return format; + } + + this._longDateFormat[key] = formatUpper.replace(/MMMM|MM|DD|dddd/g, function (val) { + return val.slice(1); + }); + + return this._longDateFormat[key]; + } + + var defaultInvalidDate = 'Invalid date'; + + function invalidDate () { + return this._invalidDate; + } + + var defaultOrdinal = '%d'; + var defaultDayOfMonthOrdinalParse = /\d{1,2}/; + + function ordinal (number) { + return this._ordinal.replace('%d', number); + } + + var defaultRelativeTime = { + future : 'in %s', + past : '%s ago', + s : 'a few seconds', + ss : '%d seconds', + m : 'a minute', + mm : '%d minutes', + h : 'an hour', + hh : '%d hours', + d : 'a day', + dd : '%d days', + M : 'a month', + MM : '%d months', + y : 'a year', + yy : '%d years' + }; + + function relativeTime (number, withoutSuffix, string, isFuture) { + var output = this._relativeTime[string]; + return (isFunction(output)) ? + output(number, withoutSuffix, string, isFuture) : + output.replace(/%d/i, number); + } + + function pastFuture (diff, output) { + var format = this._relativeTime[diff > 0 ? 'future' : 'past']; + return isFunction(format) ? format(output) : format.replace(/%s/i, output); + } + + var aliases = {}; + + function addUnitAlias (unit, shorthand) { + var lowerCase = unit.toLowerCase(); + aliases[lowerCase] = aliases[lowerCase + 's'] = aliases[shorthand] = unit; + } + + function normalizeUnits(units) { + return typeof units === 'string' ? aliases[units] || aliases[units.toLowerCase()] : undefined; + } + + function normalizeObjectUnits(inputObject) { + var normalizedInput = {}, + normalizedProp, + prop; + + for (prop in inputObject) { + if (hasOwnProp(inputObject, prop)) { + normalizedProp = normalizeUnits(prop); + if (normalizedProp) { + normalizedInput[normalizedProp] = inputObject[prop]; + } + } + } + + return normalizedInput; + } + + var priorities = {}; + + function addUnitPriority(unit, priority) { + priorities[unit] = priority; + } + + function getPrioritizedUnits(unitsObj) { + var units = []; + for (var u in unitsObj) { + units.push({unit: u, priority: priorities[u]}); + } + units.sort(function (a, b) { + return a.priority - b.priority; + }); + return units; + } + + function zeroFill(number, targetLength, forceSign) { + var absNumber = '' + Math.abs(number), + zerosToFill = targetLength - absNumber.length, + sign = number >= 0; + return (sign ? (forceSign ? '+' : '') : '-') + + Math.pow(10, Math.max(0, zerosToFill)).toString().substr(1) + absNumber; + } + + var formattingTokens = /(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g; + + var localFormattingTokens = /(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g; + + var formatFunctions = {}; + + var formatTokenFunctions = {}; + + // token: 'M' + // padded: ['MM', 2] + // ordinal: 'Mo' + // callback: function () { this.month() + 1 } + function addFormatToken (token, padded, ordinal, callback) { + var func = callback; + if (typeof callback === 'string') { + func = function () { + return this[callback](); + }; + } + if (token) { + formatTokenFunctions[token] = func; + } + if (padded) { + formatTokenFunctions[padded[0]] = function () { + return zeroFill(func.apply(this, arguments), padded[1], padded[2]); + }; + } + if (ordinal) { + formatTokenFunctions[ordinal] = function () { + return this.localeData().ordinal(func.apply(this, arguments), token); + }; + } + } + + function removeFormattingTokens(input) { + if (input.match(/\[[\s\S]/)) { + return input.replace(/^\[|\]$/g, ''); + } + return input.replace(/\\/g, ''); + } + + function makeFormatFunction(format) { + var array = format.match(formattingTokens), i, length; + + for (i = 0, length = array.length; i < length; i++) { + if (formatTokenFunctions[array[i]]) { + array[i] = formatTokenFunctions[array[i]]; + } else { + array[i] = removeFormattingTokens(array[i]); + } + } + + return function (mom) { + var output = '', i; + for (i = 0; i < length; i++) { + output += isFunction(array[i]) ? array[i].call(mom, format) : array[i]; + } + return output; + }; + } + + // format date using native date object + function formatMoment(m, format) { + if (!m.isValid()) { + return m.localeData().invalidDate(); + } + + format = expandFormat(format, m.localeData()); + formatFunctions[format] = formatFunctions[format] || makeFormatFunction(format); + + return formatFunctions[format](m); + } + + function expandFormat(format, locale) { + var i = 5; + + function replaceLongDateFormatTokens(input) { + return locale.longDateFormat(input) || input; + } + + localFormattingTokens.lastIndex = 0; + while (i >= 0 && localFormattingTokens.test(format)) { + format = format.replace(localFormattingTokens, replaceLongDateFormatTokens); + localFormattingTokens.lastIndex = 0; + i -= 1; + } + + return format; + } + + var match1 = /\d/; // 0 - 9 + var match2 = /\d\d/; // 00 - 99 + var match3 = /\d{3}/; // 000 - 999 + var match4 = /\d{4}/; // 0000 - 9999 + var match6 = /[+-]?\d{6}/; // -999999 - 999999 + var match1to2 = /\d\d?/; // 0 - 99 + var match3to4 = /\d\d\d\d?/; // 999 - 9999 + var match5to6 = /\d\d\d\d\d\d?/; // 99999 - 999999 + var match1to3 = /\d{1,3}/; // 0 - 999 + var match1to4 = /\d{1,4}/; // 0 - 9999 + var match1to6 = /[+-]?\d{1,6}/; // -999999 - 999999 + + var matchUnsigned = /\d+/; // 0 - inf + var matchSigned = /[+-]?\d+/; // -inf - inf + + var matchOffset = /Z|[+-]\d\d:?\d\d/gi; // +00:00 -00:00 +0000 -0000 or Z + var matchShortOffset = /Z|[+-]\d\d(?::?\d\d)?/gi; // +00 -00 +00:00 -00:00 +0000 -0000 or Z + + var matchTimestamp = /[+-]?\d+(\.\d{1,3})?/; // 123456789 123456789.123 + + // any word (or two) characters or numbers including two/three word month in arabic. + // includes scottish gaelic two word and hyphenated months + var matchWord = /[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i; + + var regexes = {}; + + function addRegexToken (token, regex, strictRegex) { + regexes[token] = isFunction(regex) ? regex : function (isStrict, localeData) { + return (isStrict && strictRegex) ? strictRegex : regex; + }; + } + + function getParseRegexForToken (token, config) { + if (!hasOwnProp(regexes, token)) { + return new RegExp(unescapeFormat(token)); + } + + return regexes[token](config._strict, config._locale); + } + + // Code from http://stackoverflow.com/questions/3561493/is-there-a-regexp-escape-function-in-javascript + function unescapeFormat(s) { + return regexEscape(s.replace('\\', '').replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g, function (matched, p1, p2, p3, p4) { + return p1 || p2 || p3 || p4; + })); + } + + function regexEscape(s) { + return s.replace(/[-\/\\^$*+?.()|[\]{}]/g, '\\$&'); + } + + var tokens = {}; + + function addParseToken (token, callback) { + var i, func = callback; + if (typeof token === 'string') { + token = [token]; + } + if (isNumber(callback)) { + func = function (input, array) { + array[callback] = toInt(input); + }; + } + for (i = 0; i < token.length; i++) { + tokens[token[i]] = func; + } + } + + function addWeekParseToken (token, callback) { + addParseToken(token, function (input, array, config, token) { + config._w = config._w || {}; + callback(input, config._w, config, token); + }); + } + + function addTimeToArrayFromToken(token, input, config) { + if (input != null && hasOwnProp(tokens, token)) { + tokens[token](input, config._a, config, token); + } + } + + var YEAR = 0; + var MONTH = 1; + var DATE = 2; + var HOUR = 3; + var MINUTE = 4; + var SECOND = 5; + var MILLISECOND = 6; + var WEEK = 7; + var WEEKDAY = 8; + + // FORMATTING + + addFormatToken('Y', 0, 0, function () { + var y = this.year(); + return y <= 9999 ? '' + y : '+' + y; + }); + + addFormatToken(0, ['YY', 2], 0, function () { + return this.year() % 100; + }); + + addFormatToken(0, ['YYYY', 4], 0, 'year'); + addFormatToken(0, ['YYYYY', 5], 0, 'year'); + addFormatToken(0, ['YYYYYY', 6, true], 0, 'year'); + + // ALIASES + + addUnitAlias('year', 'y'); + + // PRIORITIES + + addUnitPriority('year', 1); + + // PARSING + + addRegexToken('Y', matchSigned); + addRegexToken('YY', match1to2, match2); + addRegexToken('YYYY', match1to4, match4); + addRegexToken('YYYYY', match1to6, match6); + addRegexToken('YYYYYY', match1to6, match6); + + addParseToken(['YYYYY', 'YYYYYY'], YEAR); + addParseToken('YYYY', function (input, array) { + array[YEAR] = input.length === 2 ? hooks.parseTwoDigitYear(input) : toInt(input); + }); + addParseToken('YY', function (input, array) { + array[YEAR] = hooks.parseTwoDigitYear(input); + }); + addParseToken('Y', function (input, array) { + array[YEAR] = parseInt(input, 10); + }); + + // HELPERS + + function daysInYear(year) { + return isLeapYear(year) ? 366 : 365; + } + + function isLeapYear(year) { + return (year % 4 === 0 && year % 100 !== 0) || year % 400 === 0; + } + + // HOOKS + + hooks.parseTwoDigitYear = function (input) { + return toInt(input) + (toInt(input) > 68 ? 1900 : 2000); + }; + + // MOMENTS + + var getSetYear = makeGetSet('FullYear', true); + + function getIsLeapYear () { + return isLeapYear(this.year()); + } + + function makeGetSet (unit, keepTime) { + return function (value) { + if (value != null) { + set$1(this, unit, value); + hooks.updateOffset(this, keepTime); + return this; + } else { + return get(this, unit); + } + }; + } + + function get (mom, unit) { + return mom.isValid() ? + mom._d['get' + (mom._isUTC ? 'UTC' : '') + unit]() : NaN; + } + + function set$1 (mom, unit, value) { + if (mom.isValid() && !isNaN(value)) { + if (unit === 'FullYear' && isLeapYear(mom.year()) && mom.month() === 1 && mom.date() === 29) { + mom._d['set' + (mom._isUTC ? 'UTC' : '') + unit](value, mom.month(), daysInMonth(value, mom.month())); + } + else { + mom._d['set' + (mom._isUTC ? 'UTC' : '') + unit](value); + } + } + } + + // MOMENTS + + function stringGet (units) { + units = normalizeUnits(units); + if (isFunction(this[units])) { + return this[units](); + } + return this; + } + + + function stringSet (units, value) { + if (typeof units === 'object') { + units = normalizeObjectUnits(units); + var prioritized = getPrioritizedUnits(units); + for (var i = 0; i < prioritized.length; i++) { + this[prioritized[i].unit](units[prioritized[i].unit]); + } + } else { + units = normalizeUnits(units); + if (isFunction(this[units])) { + return this[units](value); + } + } + return this; + } + + function mod(n, x) { + return ((n % x) + x) % x; + } + + var indexOf; + + if (Array.prototype.indexOf) { + indexOf = Array.prototype.indexOf; + } else { + indexOf = function (o) { + // I know + var i; + for (i = 0; i < this.length; ++i) { + if (this[i] === o) { + return i; + } + } + return -1; + }; + } + + function daysInMonth(year, month) { + if (isNaN(year) || isNaN(month)) { + return NaN; + } + var modMonth = mod(month, 12); + year += (month - modMonth) / 12; + return modMonth === 1 ? (isLeapYear(year) ? 29 : 28) : (31 - modMonth % 7 % 2); + } + + // FORMATTING + + addFormatToken('M', ['MM', 2], 'Mo', function () { + return this.month() + 1; + }); + + addFormatToken('MMM', 0, 0, function (format) { + return this.localeData().monthsShort(this, format); + }); + + addFormatToken('MMMM', 0, 0, function (format) { + return this.localeData().months(this, format); + }); + + // ALIASES + + addUnitAlias('month', 'M'); + + // PRIORITY + + addUnitPriority('month', 8); + + // PARSING + + addRegexToken('M', match1to2); + addRegexToken('MM', match1to2, match2); + addRegexToken('MMM', function (isStrict, locale) { + return locale.monthsShortRegex(isStrict); + }); + addRegexToken('MMMM', function (isStrict, locale) { + return locale.monthsRegex(isStrict); + }); + + addParseToken(['M', 'MM'], function (input, array) { + array[MONTH] = toInt(input) - 1; + }); + + addParseToken(['MMM', 'MMMM'], function (input, array, config, token) { + var month = config._locale.monthsParse(input, token, config._strict); + // if we didn't find a month name, mark the date as invalid. + if (month != null) { + array[MONTH] = month; + } else { + getParsingFlags(config).invalidMonth = input; + } + }); + + // LOCALES + + var MONTHS_IN_FORMAT = /D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/; + var defaultLocaleMonths = 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_'); + function localeMonths (m, format) { + if (!m) { + return isArray(this._months) ? this._months : + this._months['standalone']; + } + return isArray(this._months) ? this._months[m.month()] : + this._months[(this._months.isFormat || MONTHS_IN_FORMAT).test(format) ? 'format' : 'standalone'][m.month()]; + } + + var defaultLocaleMonthsShort = 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'); + function localeMonthsShort (m, format) { + if (!m) { + return isArray(this._monthsShort) ? this._monthsShort : + this._monthsShort['standalone']; + } + return isArray(this._monthsShort) ? this._monthsShort[m.month()] : + this._monthsShort[MONTHS_IN_FORMAT.test(format) ? 'format' : 'standalone'][m.month()]; + } + + function handleStrictParse(monthName, format, strict) { + var i, ii, mom, llc = monthName.toLocaleLowerCase(); + if (!this._monthsParse) { + // this is not used + this._monthsParse = []; + this._longMonthsParse = []; + this._shortMonthsParse = []; + for (i = 0; i < 12; ++i) { + mom = createUTC([2000, i]); + this._shortMonthsParse[i] = this.monthsShort(mom, '').toLocaleLowerCase(); + this._longMonthsParse[i] = this.months(mom, '').toLocaleLowerCase(); + } + } + + if (strict) { + if (format === 'MMM') { + ii = indexOf.call(this._shortMonthsParse, llc); + return ii !== -1 ? ii : null; + } else { + ii = indexOf.call(this._longMonthsParse, llc); + return ii !== -1 ? ii : null; + } + } else { + if (format === 'MMM') { + ii = indexOf.call(this._shortMonthsParse, llc); + if (ii !== -1) { + return ii; + } + ii = indexOf.call(this._longMonthsParse, llc); + return ii !== -1 ? ii : null; + } else { + ii = indexOf.call(this._longMonthsParse, llc); + if (ii !== -1) { + return ii; + } + ii = indexOf.call(this._shortMonthsParse, llc); + return ii !== -1 ? ii : null; + } + } + } + + function localeMonthsParse (monthName, format, strict) { + var i, mom, regex; + + if (this._monthsParseExact) { + return handleStrictParse.call(this, monthName, format, strict); + } + + if (!this._monthsParse) { + this._monthsParse = []; + this._longMonthsParse = []; + this._shortMonthsParse = []; + } + + // TODO: add sorting + // Sorting makes sure if one month (or abbr) is a prefix of another + // see sorting in computeMonthsParse + for (i = 0; i < 12; i++) { + // make the regex if we don't have it already + mom = createUTC([2000, i]); + if (strict && !this._longMonthsParse[i]) { + this._longMonthsParse[i] = new RegExp('^' + this.months(mom, '').replace('.', '') + '$', 'i'); + this._shortMonthsParse[i] = new RegExp('^' + this.monthsShort(mom, '').replace('.', '') + '$', 'i'); + } + if (!strict && !this._monthsParse[i]) { + regex = '^' + this.months(mom, '') + '|^' + this.monthsShort(mom, ''); + this._monthsParse[i] = new RegExp(regex.replace('.', ''), 'i'); + } + // test the regex + if (strict && format === 'MMMM' && this._longMonthsParse[i].test(monthName)) { + return i; + } else if (strict && format === 'MMM' && this._shortMonthsParse[i].test(monthName)) { + return i; + } else if (!strict && this._monthsParse[i].test(monthName)) { + return i; + } + } + } + + // MOMENTS + + function setMonth (mom, value) { + var dayOfMonth; + + if (!mom.isValid()) { + // No op + return mom; + } + + if (typeof value === 'string') { + if (/^\d+$/.test(value)) { + value = toInt(value); + } else { + value = mom.localeData().monthsParse(value); + // TODO: Another silent failure? + if (!isNumber(value)) { + return mom; + } + } + } + + dayOfMonth = Math.min(mom.date(), daysInMonth(mom.year(), value)); + mom._d['set' + (mom._isUTC ? 'UTC' : '') + 'Month'](value, dayOfMonth); + return mom; + } + + function getSetMonth (value) { + if (value != null) { + setMonth(this, value); + hooks.updateOffset(this, true); + return this; + } else { + return get(this, 'Month'); + } + } + + function getDaysInMonth () { + return daysInMonth(this.year(), this.month()); + } + + var defaultMonthsShortRegex = matchWord; + function monthsShortRegex (isStrict) { + if (this._monthsParseExact) { + if (!hasOwnProp(this, '_monthsRegex')) { + computeMonthsParse.call(this); + } + if (isStrict) { + return this._monthsShortStrictRegex; + } else { + return this._monthsShortRegex; + } + } else { + if (!hasOwnProp(this, '_monthsShortRegex')) { + this._monthsShortRegex = defaultMonthsShortRegex; + } + return this._monthsShortStrictRegex && isStrict ? + this._monthsShortStrictRegex : this._monthsShortRegex; + } + } + + var defaultMonthsRegex = matchWord; + function monthsRegex (isStrict) { + if (this._monthsParseExact) { + if (!hasOwnProp(this, '_monthsRegex')) { + computeMonthsParse.call(this); + } + if (isStrict) { + return this._monthsStrictRegex; + } else { + return this._monthsRegex; + } + } else { + if (!hasOwnProp(this, '_monthsRegex')) { + this._monthsRegex = defaultMonthsRegex; + } + return this._monthsStrictRegex && isStrict ? + this._monthsStrictRegex : this._monthsRegex; + } + } + + function computeMonthsParse () { + function cmpLenRev(a, b) { + return b.length - a.length; + } + + var shortPieces = [], longPieces = [], mixedPieces = [], + i, mom; + for (i = 0; i < 12; i++) { + // make the regex if we don't have it already + mom = createUTC([2000, i]); + shortPieces.push(this.monthsShort(mom, '')); + longPieces.push(this.months(mom, '')); + mixedPieces.push(this.months(mom, '')); + mixedPieces.push(this.monthsShort(mom, '')); + } + // Sorting makes sure if one month (or abbr) is a prefix of another it + // will match the longer piece. + shortPieces.sort(cmpLenRev); + longPieces.sort(cmpLenRev); + mixedPieces.sort(cmpLenRev); + for (i = 0; i < 12; i++) { + shortPieces[i] = regexEscape(shortPieces[i]); + longPieces[i] = regexEscape(longPieces[i]); + } + for (i = 0; i < 24; i++) { + mixedPieces[i] = regexEscape(mixedPieces[i]); + } + + this._monthsRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i'); + this._monthsShortRegex = this._monthsRegex; + this._monthsStrictRegex = new RegExp('^(' + longPieces.join('|') + ')', 'i'); + this._monthsShortStrictRegex = new RegExp('^(' + shortPieces.join('|') + ')', 'i'); + } + + function createDate (y, m, d, h, M, s, ms) { + // can't just apply() to create a date: + // https://stackoverflow.com/q/181348 + var date; + // the date constructor remaps years 0-99 to 1900-1999 + if (y < 100 && y >= 0) { + // preserve leap years using a full 400 year cycle, then reset + date = new Date(y + 400, m, d, h, M, s, ms); + if (isFinite(date.getFullYear())) { + date.setFullYear(y); + } + } else { + date = new Date(y, m, d, h, M, s, ms); + } + + return date; + } + + function createUTCDate (y) { + var date; + // the Date.UTC function remaps years 0-99 to 1900-1999 + if (y < 100 && y >= 0) { + var args = Array.prototype.slice.call(arguments); + // preserve leap years using a full 400 year cycle, then reset + args[0] = y + 400; + date = new Date(Date.UTC.apply(null, args)); + if (isFinite(date.getUTCFullYear())) { + date.setUTCFullYear(y); + } + } else { + date = new Date(Date.UTC.apply(null, arguments)); + } + + return date; + } + + // start-of-first-week - start-of-year + function firstWeekOffset(year, dow, doy) { + var // first-week day -- which january is always in the first week (4 for iso, 1 for other) + fwd = 7 + dow - doy, + // first-week day local weekday -- which local weekday is fwd + fwdlw = (7 + createUTCDate(year, 0, fwd).getUTCDay() - dow) % 7; + + return -fwdlw + fwd - 1; + } + + // https://en.wikipedia.org/wiki/ISO_week_date#Calculating_a_date_given_the_year.2C_week_number_and_weekday + function dayOfYearFromWeeks(year, week, weekday, dow, doy) { + var localWeekday = (7 + weekday - dow) % 7, + weekOffset = firstWeekOffset(year, dow, doy), + dayOfYear = 1 + 7 * (week - 1) + localWeekday + weekOffset, + resYear, resDayOfYear; + + if (dayOfYear <= 0) { + resYear = year - 1; + resDayOfYear = daysInYear(resYear) + dayOfYear; + } else if (dayOfYear > daysInYear(year)) { + resYear = year + 1; + resDayOfYear = dayOfYear - daysInYear(year); + } else { + resYear = year; + resDayOfYear = dayOfYear; + } + + return { + year: resYear, + dayOfYear: resDayOfYear + }; + } + + function weekOfYear(mom, dow, doy) { + var weekOffset = firstWeekOffset(mom.year(), dow, doy), + week = Math.floor((mom.dayOfYear() - weekOffset - 1) / 7) + 1, + resWeek, resYear; + + if (week < 1) { + resYear = mom.year() - 1; + resWeek = week + weeksInYear(resYear, dow, doy); + } else if (week > weeksInYear(mom.year(), dow, doy)) { + resWeek = week - weeksInYear(mom.year(), dow, doy); + resYear = mom.year() + 1; + } else { + resYear = mom.year(); + resWeek = week; + } + + return { + week: resWeek, + year: resYear + }; + } + + function weeksInYear(year, dow, doy) { + var weekOffset = firstWeekOffset(year, dow, doy), + weekOffsetNext = firstWeekOffset(year + 1, dow, doy); + return (daysInYear(year) - weekOffset + weekOffsetNext) / 7; + } + + // FORMATTING + + addFormatToken('w', ['ww', 2], 'wo', 'week'); + addFormatToken('W', ['WW', 2], 'Wo', 'isoWeek'); + + // ALIASES + + addUnitAlias('week', 'w'); + addUnitAlias('isoWeek', 'W'); + + // PRIORITIES + + addUnitPriority('week', 5); + addUnitPriority('isoWeek', 5); + + // PARSING + + addRegexToken('w', match1to2); + addRegexToken('ww', match1to2, match2); + addRegexToken('W', match1to2); + addRegexToken('WW', match1to2, match2); + + addWeekParseToken(['w', 'ww', 'W', 'WW'], function (input, week, config, token) { + week[token.substr(0, 1)] = toInt(input); + }); + + // HELPERS + + // LOCALES + + function localeWeek (mom) { + return weekOfYear(mom, this._week.dow, this._week.doy).week; + } + + var defaultLocaleWeek = { + dow : 0, // Sunday is the first day of the week. + doy : 6 // The week that contains Jan 6th is the first week of the year. + }; + + function localeFirstDayOfWeek () { + return this._week.dow; + } + + function localeFirstDayOfYear () { + return this._week.doy; + } + + // MOMENTS + + function getSetWeek (input) { + var week = this.localeData().week(this); + return input == null ? week : this.add((input - week) * 7, 'd'); + } + + function getSetISOWeek (input) { + var week = weekOfYear(this, 1, 4).week; + return input == null ? week : this.add((input - week) * 7, 'd'); + } + + // FORMATTING + + addFormatToken('d', 0, 'do', 'day'); + + addFormatToken('dd', 0, 0, function (format) { + return this.localeData().weekdaysMin(this, format); + }); + + addFormatToken('ddd', 0, 0, function (format) { + return this.localeData().weekdaysShort(this, format); + }); + + addFormatToken('dddd', 0, 0, function (format) { + return this.localeData().weekdays(this, format); + }); + + addFormatToken('e', 0, 0, 'weekday'); + addFormatToken('E', 0, 0, 'isoWeekday'); + + // ALIASES + + addUnitAlias('day', 'd'); + addUnitAlias('weekday', 'e'); + addUnitAlias('isoWeekday', 'E'); + + // PRIORITY + addUnitPriority('day', 11); + addUnitPriority('weekday', 11); + addUnitPriority('isoWeekday', 11); + + // PARSING + + addRegexToken('d', match1to2); + addRegexToken('e', match1to2); + addRegexToken('E', match1to2); + addRegexToken('dd', function (isStrict, locale) { + return locale.weekdaysMinRegex(isStrict); + }); + addRegexToken('ddd', function (isStrict, locale) { + return locale.weekdaysShortRegex(isStrict); + }); + addRegexToken('dddd', function (isStrict, locale) { + return locale.weekdaysRegex(isStrict); + }); + + addWeekParseToken(['dd', 'ddd', 'dddd'], function (input, week, config, token) { + var weekday = config._locale.weekdaysParse(input, token, config._strict); + // if we didn't get a weekday name, mark the date as invalid + if (weekday != null) { + week.d = weekday; + } else { + getParsingFlags(config).invalidWeekday = input; + } + }); + + addWeekParseToken(['d', 'e', 'E'], function (input, week, config, token) { + week[token] = toInt(input); + }); + + // HELPERS + + function parseWeekday(input, locale) { + if (typeof input !== 'string') { + return input; + } + + if (!isNaN(input)) { + return parseInt(input, 10); + } + + input = locale.weekdaysParse(input); + if (typeof input === 'number') { + return input; + } + + return null; + } + + function parseIsoWeekday(input, locale) { + if (typeof input === 'string') { + return locale.weekdaysParse(input) % 7 || 7; + } + return isNaN(input) ? null : input; + } + + // LOCALES + function shiftWeekdays (ws, n) { + return ws.slice(n, 7).concat(ws.slice(0, n)); + } + + var defaultLocaleWeekdays = 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'); + function localeWeekdays (m, format) { + var weekdays = isArray(this._weekdays) ? this._weekdays : + this._weekdays[(m && m !== true && this._weekdays.isFormat.test(format)) ? 'format' : 'standalone']; + return (m === true) ? shiftWeekdays(weekdays, this._week.dow) + : (m) ? weekdays[m.day()] : weekdays; + } + + var defaultLocaleWeekdaysShort = 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'); + function localeWeekdaysShort (m) { + return (m === true) ? shiftWeekdays(this._weekdaysShort, this._week.dow) + : (m) ? this._weekdaysShort[m.day()] : this._weekdaysShort; + } + + var defaultLocaleWeekdaysMin = 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'); + function localeWeekdaysMin (m) { + return (m === true) ? shiftWeekdays(this._weekdaysMin, this._week.dow) + : (m) ? this._weekdaysMin[m.day()] : this._weekdaysMin; + } + + function handleStrictParse$1(weekdayName, format, strict) { + var i, ii, mom, llc = weekdayName.toLocaleLowerCase(); + if (!this._weekdaysParse) { + this._weekdaysParse = []; + this._shortWeekdaysParse = []; + this._minWeekdaysParse = []; + + for (i = 0; i < 7; ++i) { + mom = createUTC([2000, 1]).day(i); + this._minWeekdaysParse[i] = this.weekdaysMin(mom, '').toLocaleLowerCase(); + this._shortWeekdaysParse[i] = this.weekdaysShort(mom, '').toLocaleLowerCase(); + this._weekdaysParse[i] = this.weekdays(mom, '').toLocaleLowerCase(); + } + } + + if (strict) { + if (format === 'dddd') { + ii = indexOf.call(this._weekdaysParse, llc); + return ii !== -1 ? ii : null; + } else if (format === 'ddd') { + ii = indexOf.call(this._shortWeekdaysParse, llc); + return ii !== -1 ? ii : null; + } else { + ii = indexOf.call(this._minWeekdaysParse, llc); + return ii !== -1 ? ii : null; + } + } else { + if (format === 'dddd') { + ii = indexOf.call(this._weekdaysParse, llc); + if (ii !== -1) { + return ii; + } + ii = indexOf.call(this._shortWeekdaysParse, llc); + if (ii !== -1) { + return ii; + } + ii = indexOf.call(this._minWeekdaysParse, llc); + return ii !== -1 ? ii : null; + } else if (format === 'ddd') { + ii = indexOf.call(this._shortWeekdaysParse, llc); + if (ii !== -1) { + return ii; + } + ii = indexOf.call(this._weekdaysParse, llc); + if (ii !== -1) { + return ii; + } + ii = indexOf.call(this._minWeekdaysParse, llc); + return ii !== -1 ? ii : null; + } else { + ii = indexOf.call(this._minWeekdaysParse, llc); + if (ii !== -1) { + return ii; + } + ii = indexOf.call(this._weekdaysParse, llc); + if (ii !== -1) { + return ii; + } + ii = indexOf.call(this._shortWeekdaysParse, llc); + return ii !== -1 ? ii : null; + } + } + } + + function localeWeekdaysParse (weekdayName, format, strict) { + var i, mom, regex; + + if (this._weekdaysParseExact) { + return handleStrictParse$1.call(this, weekdayName, format, strict); + } + + if (!this._weekdaysParse) { + this._weekdaysParse = []; + this._minWeekdaysParse = []; + this._shortWeekdaysParse = []; + this._fullWeekdaysParse = []; + } + + for (i = 0; i < 7; i++) { + // make the regex if we don't have it already + + mom = createUTC([2000, 1]).day(i); + if (strict && !this._fullWeekdaysParse[i]) { + this._fullWeekdaysParse[i] = new RegExp('^' + this.weekdays(mom, '').replace('.', '\\.?') + '$', 'i'); + this._shortWeekdaysParse[i] = new RegExp('^' + this.weekdaysShort(mom, '').replace('.', '\\.?') + '$', 'i'); + this._minWeekdaysParse[i] = new RegExp('^' + this.weekdaysMin(mom, '').replace('.', '\\.?') + '$', 'i'); + } + if (!this._weekdaysParse[i]) { + regex = '^' + this.weekdays(mom, '') + '|^' + this.weekdaysShort(mom, '') + '|^' + this.weekdaysMin(mom, ''); + this._weekdaysParse[i] = new RegExp(regex.replace('.', ''), 'i'); + } + // test the regex + if (strict && format === 'dddd' && this._fullWeekdaysParse[i].test(weekdayName)) { + return i; + } else if (strict && format === 'ddd' && this._shortWeekdaysParse[i].test(weekdayName)) { + return i; + } else if (strict && format === 'dd' && this._minWeekdaysParse[i].test(weekdayName)) { + return i; + } else if (!strict && this._weekdaysParse[i].test(weekdayName)) { + return i; + } + } + } + + // MOMENTS + + function getSetDayOfWeek (input) { + if (!this.isValid()) { + return input != null ? this : NaN; + } + var day = this._isUTC ? this._d.getUTCDay() : this._d.getDay(); + if (input != null) { + input = parseWeekday(input, this.localeData()); + return this.add(input - day, 'd'); + } else { + return day; + } + } + + function getSetLocaleDayOfWeek (input) { + if (!this.isValid()) { + return input != null ? this : NaN; + } + var weekday = (this.day() + 7 - this.localeData()._week.dow) % 7; + return input == null ? weekday : this.add(input - weekday, 'd'); + } + + function getSetISODayOfWeek (input) { + if (!this.isValid()) { + return input != null ? this : NaN; + } + + // behaves the same as moment#day except + // as a getter, returns 7 instead of 0 (1-7 range instead of 0-6) + // as a setter, sunday should belong to the previous week. + + if (input != null) { + var weekday = parseIsoWeekday(input, this.localeData()); + return this.day(this.day() % 7 ? weekday : weekday - 7); + } else { + return this.day() || 7; + } + } + + var defaultWeekdaysRegex = matchWord; + function weekdaysRegex (isStrict) { + if (this._weekdaysParseExact) { + if (!hasOwnProp(this, '_weekdaysRegex')) { + computeWeekdaysParse.call(this); + } + if (isStrict) { + return this._weekdaysStrictRegex; + } else { + return this._weekdaysRegex; + } + } else { + if (!hasOwnProp(this, '_weekdaysRegex')) { + this._weekdaysRegex = defaultWeekdaysRegex; + } + return this._weekdaysStrictRegex && isStrict ? + this._weekdaysStrictRegex : this._weekdaysRegex; + } + } + + var defaultWeekdaysShortRegex = matchWord; + function weekdaysShortRegex (isStrict) { + if (this._weekdaysParseExact) { + if (!hasOwnProp(this, '_weekdaysRegex')) { + computeWeekdaysParse.call(this); + } + if (isStrict) { + return this._weekdaysShortStrictRegex; + } else { + return this._weekdaysShortRegex; + } + } else { + if (!hasOwnProp(this, '_weekdaysShortRegex')) { + this._weekdaysShortRegex = defaultWeekdaysShortRegex; + } + return this._weekdaysShortStrictRegex && isStrict ? + this._weekdaysShortStrictRegex : this._weekdaysShortRegex; + } + } + + var defaultWeekdaysMinRegex = matchWord; + function weekdaysMinRegex (isStrict) { + if (this._weekdaysParseExact) { + if (!hasOwnProp(this, '_weekdaysRegex')) { + computeWeekdaysParse.call(this); + } + if (isStrict) { + return this._weekdaysMinStrictRegex; + } else { + return this._weekdaysMinRegex; + } + } else { + if (!hasOwnProp(this, '_weekdaysMinRegex')) { + this._weekdaysMinRegex = defaultWeekdaysMinRegex; + } + return this._weekdaysMinStrictRegex && isStrict ? + this._weekdaysMinStrictRegex : this._weekdaysMinRegex; + } + } + + + function computeWeekdaysParse () { + function cmpLenRev(a, b) { + return b.length - a.length; + } + + var minPieces = [], shortPieces = [], longPieces = [], mixedPieces = [], + i, mom, minp, shortp, longp; + for (i = 0; i < 7; i++) { + // make the regex if we don't have it already + mom = createUTC([2000, 1]).day(i); + minp = this.weekdaysMin(mom, ''); + shortp = this.weekdaysShort(mom, ''); + longp = this.weekdays(mom, ''); + minPieces.push(minp); + shortPieces.push(shortp); + longPieces.push(longp); + mixedPieces.push(minp); + mixedPieces.push(shortp); + mixedPieces.push(longp); + } + // Sorting makes sure if one weekday (or abbr) is a prefix of another it + // will match the longer piece. + minPieces.sort(cmpLenRev); + shortPieces.sort(cmpLenRev); + longPieces.sort(cmpLenRev); + mixedPieces.sort(cmpLenRev); + for (i = 0; i < 7; i++) { + shortPieces[i] = regexEscape(shortPieces[i]); + longPieces[i] = regexEscape(longPieces[i]); + mixedPieces[i] = regexEscape(mixedPieces[i]); + } + + this._weekdaysRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i'); + this._weekdaysShortRegex = this._weekdaysRegex; + this._weekdaysMinRegex = this._weekdaysRegex; + + this._weekdaysStrictRegex = new RegExp('^(' + longPieces.join('|') + ')', 'i'); + this._weekdaysShortStrictRegex = new RegExp('^(' + shortPieces.join('|') + ')', 'i'); + this._weekdaysMinStrictRegex = new RegExp('^(' + minPieces.join('|') + ')', 'i'); + } + + // FORMATTING + + function hFormat() { + return this.hours() % 12 || 12; + } + + function kFormat() { + return this.hours() || 24; + } + + addFormatToken('H', ['HH', 2], 0, 'hour'); + addFormatToken('h', ['hh', 2], 0, hFormat); + addFormatToken('k', ['kk', 2], 0, kFormat); + + addFormatToken('hmm', 0, 0, function () { + return '' + hFormat.apply(this) + zeroFill(this.minutes(), 2); + }); + + addFormatToken('hmmss', 0, 0, function () { + return '' + hFormat.apply(this) + zeroFill(this.minutes(), 2) + + zeroFill(this.seconds(), 2); + }); + + addFormatToken('Hmm', 0, 0, function () { + return '' + this.hours() + zeroFill(this.minutes(), 2); + }); + + addFormatToken('Hmmss', 0, 0, function () { + return '' + this.hours() + zeroFill(this.minutes(), 2) + + zeroFill(this.seconds(), 2); + }); + + function meridiem (token, lowercase) { + addFormatToken(token, 0, 0, function () { + return this.localeData().meridiem(this.hours(), this.minutes(), lowercase); + }); + } + + meridiem('a', true); + meridiem('A', false); + + // ALIASES + + addUnitAlias('hour', 'h'); + + // PRIORITY + addUnitPriority('hour', 13); + + // PARSING + + function matchMeridiem (isStrict, locale) { + return locale._meridiemParse; + } + + addRegexToken('a', matchMeridiem); + addRegexToken('A', matchMeridiem); + addRegexToken('H', match1to2); + addRegexToken('h', match1to2); + addRegexToken('k', match1to2); + addRegexToken('HH', match1to2, match2); + addRegexToken('hh', match1to2, match2); + addRegexToken('kk', match1to2, match2); + + addRegexToken('hmm', match3to4); + addRegexToken('hmmss', match5to6); + addRegexToken('Hmm', match3to4); + addRegexToken('Hmmss', match5to6); + + addParseToken(['H', 'HH'], HOUR); + addParseToken(['k', 'kk'], function (input, array, config) { + var kInput = toInt(input); + array[HOUR] = kInput === 24 ? 0 : kInput; + }); + addParseToken(['a', 'A'], function (input, array, config) { + config._isPm = config._locale.isPM(input); + config._meridiem = input; + }); + addParseToken(['h', 'hh'], function (input, array, config) { + array[HOUR] = toInt(input); + getParsingFlags(config).bigHour = true; + }); + addParseToken('hmm', function (input, array, config) { + var pos = input.length - 2; + array[HOUR] = toInt(input.substr(0, pos)); + array[MINUTE] = toInt(input.substr(pos)); + getParsingFlags(config).bigHour = true; + }); + addParseToken('hmmss', function (input, array, config) { + var pos1 = input.length - 4; + var pos2 = input.length - 2; + array[HOUR] = toInt(input.substr(0, pos1)); + array[MINUTE] = toInt(input.substr(pos1, 2)); + array[SECOND] = toInt(input.substr(pos2)); + getParsingFlags(config).bigHour = true; + }); + addParseToken('Hmm', function (input, array, config) { + var pos = input.length - 2; + array[HOUR] = toInt(input.substr(0, pos)); + array[MINUTE] = toInt(input.substr(pos)); + }); + addParseToken('Hmmss', function (input, array, config) { + var pos1 = input.length - 4; + var pos2 = input.length - 2; + array[HOUR] = toInt(input.substr(0, pos1)); + array[MINUTE] = toInt(input.substr(pos1, 2)); + array[SECOND] = toInt(input.substr(pos2)); + }); + + // LOCALES + + function localeIsPM (input) { + // IE8 Quirks Mode & IE7 Standards Mode do not allow accessing strings like arrays + // Using charAt should be more compatible. + return ((input + '').toLowerCase().charAt(0) === 'p'); + } + + var defaultLocaleMeridiemParse = /[ap]\.?m?\.?/i; + function localeMeridiem (hours, minutes, isLower) { + if (hours > 11) { + return isLower ? 'pm' : 'PM'; + } else { + return isLower ? 'am' : 'AM'; + } + } + + + // MOMENTS + + // Setting the hour should keep the time, because the user explicitly + // specified which hour they want. So trying to maintain the same hour (in + // a new timezone) makes sense. Adding/subtracting hours does not follow + // this rule. + var getSetHour = makeGetSet('Hours', true); + + var baseConfig = { + calendar: defaultCalendar, + longDateFormat: defaultLongDateFormat, + invalidDate: defaultInvalidDate, + ordinal: defaultOrdinal, + dayOfMonthOrdinalParse: defaultDayOfMonthOrdinalParse, + relativeTime: defaultRelativeTime, + + months: defaultLocaleMonths, + monthsShort: defaultLocaleMonthsShort, + + week: defaultLocaleWeek, + + weekdays: defaultLocaleWeekdays, + weekdaysMin: defaultLocaleWeekdaysMin, + weekdaysShort: defaultLocaleWeekdaysShort, + + meridiemParse: defaultLocaleMeridiemParse + }; + + // internal storage for locale config files + var locales = {}; + var localeFamilies = {}; + var globalLocale; + + function normalizeLocale(key) { + return key ? key.toLowerCase().replace('_', '-') : key; + } + + // pick the locale from the array + // try ['en-au', 'en-gb'] as 'en-au', 'en-gb', 'en', as in move through the list trying each + // substring from most specific to least, but move to the next array item if it's a more specific variant than the current root + function chooseLocale(names) { + var i = 0, j, next, locale, split; + + while (i < names.length) { + split = normalizeLocale(names[i]).split('-'); + j = split.length; + next = normalizeLocale(names[i + 1]); + next = next ? next.split('-') : null; + while (j > 0) { + locale = loadLocale(split.slice(0, j).join('-')); + if (locale) { + return locale; + } + if (next && next.length >= j && compareArrays(split, next, true) >= j - 1) { + //the next array item is better than a shallower substring of this one + break; + } + j--; + } + i++; + } + return globalLocale; + } + + function loadLocale(name) { + var oldLocale = null; + // TODO: Find a better way to register and load all the locales in Node + if (!locales[name] && (typeof module !== 'undefined') && + module && module.exports) { + try { + oldLocale = globalLocale._abbr; + var aliasedRequire = require; + !(function webpackMissingModule() { var e = new Error("Cannot find module \"./locale\""); e.code = 'MODULE_NOT_FOUND'; throw e; }()); + getSetGlobalLocale(oldLocale); + } catch (e) {} + } + return locales[name]; + } + + // This function will load locale and then set the global locale. If + // no arguments are passed in, it will simply return the current global + // locale key. + function getSetGlobalLocale (key, values) { + var data; + if (key) { + if (isUndefined(values)) { + data = getLocale(key); + } + else { + data = defineLocale(key, values); + } + + if (data) { + // moment.duration._locale = moment._locale = data; + globalLocale = data; + } + else { + if ((typeof console !== 'undefined') && console.warn) { + //warn user if arguments are passed but the locale could not be set + console.warn('Locale ' + key + ' not found. Did you forget to load it?'); + } + } + } + + return globalLocale._abbr; + } + + function defineLocale (name, config) { + if (config !== null) { + var locale, parentConfig = baseConfig; + config.abbr = name; + if (locales[name] != null) { + deprecateSimple('defineLocaleOverride', + 'use moment.updateLocale(localeName, config) to change ' + + 'an existing locale. moment.defineLocale(localeName, ' + + 'config) should only be used for creating a new locale ' + + 'See http://momentjs.com/guides/#/warnings/define-locale/ for more info.'); + parentConfig = locales[name]._config; + } else if (config.parentLocale != null) { + if (locales[config.parentLocale] != null) { + parentConfig = locales[config.parentLocale]._config; + } else { + locale = loadLocale(config.parentLocale); + if (locale != null) { + parentConfig = locale._config; + } else { + if (!localeFamilies[config.parentLocale]) { + localeFamilies[config.parentLocale] = []; + } + localeFamilies[config.parentLocale].push({ + name: name, + config: config + }); + return null; + } + } + } + locales[name] = new Locale(mergeConfigs(parentConfig, config)); + + if (localeFamilies[name]) { + localeFamilies[name].forEach(function (x) { + defineLocale(x.name, x.config); + }); + } + + // backwards compat for now: also set the locale + // make sure we set the locale AFTER all child locales have been + // created, so we won't end up with the child locale set. + getSetGlobalLocale(name); + + + return locales[name]; + } else { + // useful for testing + delete locales[name]; + return null; + } + } + + function updateLocale(name, config) { + if (config != null) { + var locale, tmpLocale, parentConfig = baseConfig; + // MERGE + tmpLocale = loadLocale(name); + if (tmpLocale != null) { + parentConfig = tmpLocale._config; + } + config = mergeConfigs(parentConfig, config); + locale = new Locale(config); + locale.parentLocale = locales[name]; + locales[name] = locale; + + // backwards compat for now: also set the locale + getSetGlobalLocale(name); + } else { + // pass null for config to unupdate, useful for tests + if (locales[name] != null) { + if (locales[name].parentLocale != null) { + locales[name] = locales[name].parentLocale; + } else if (locales[name] != null) { + delete locales[name]; + } + } + } + return locales[name]; + } + + // returns locale data + function getLocale (key) { + var locale; + + if (key && key._locale && key._locale._abbr) { + key = key._locale._abbr; + } + + if (!key) { + return globalLocale; + } + + if (!isArray(key)) { + //short-circuit everything else + locale = loadLocale(key); + if (locale) { + return locale; + } + key = [key]; + } + + return chooseLocale(key); + } + + function listLocales() { + return keys(locales); + } + + function checkOverflow (m) { + var overflow; + var a = m._a; + + if (a && getParsingFlags(m).overflow === -2) { + overflow = + a[MONTH] < 0 || a[MONTH] > 11 ? MONTH : + a[DATE] < 1 || a[DATE] > daysInMonth(a[YEAR], a[MONTH]) ? DATE : + a[HOUR] < 0 || a[HOUR] > 24 || (a[HOUR] === 24 && (a[MINUTE] !== 0 || a[SECOND] !== 0 || a[MILLISECOND] !== 0)) ? HOUR : + a[MINUTE] < 0 || a[MINUTE] > 59 ? MINUTE : + a[SECOND] < 0 || a[SECOND] > 59 ? SECOND : + a[MILLISECOND] < 0 || a[MILLISECOND] > 999 ? MILLISECOND : + -1; + + if (getParsingFlags(m)._overflowDayOfYear && (overflow < YEAR || overflow > DATE)) { + overflow = DATE; + } + if (getParsingFlags(m)._overflowWeeks && overflow === -1) { + overflow = WEEK; + } + if (getParsingFlags(m)._overflowWeekday && overflow === -1) { + overflow = WEEKDAY; + } + + getParsingFlags(m).overflow = overflow; + } + + return m; + } + + // Pick the first defined of two or three arguments. + function defaults(a, b, c) { + if (a != null) { + return a; + } + if (b != null) { + return b; + } + return c; + } + + function currentDateArray(config) { + // hooks is actually the exported moment object + var nowValue = new Date(hooks.now()); + if (config._useUTC) { + return [nowValue.getUTCFullYear(), nowValue.getUTCMonth(), nowValue.getUTCDate()]; + } + return [nowValue.getFullYear(), nowValue.getMonth(), nowValue.getDate()]; + } + + // convert an array to a date. + // the array should mirror the parameters below + // note: all values past the year are optional and will default to the lowest possible value. + // [year, month, day , hour, minute, second, millisecond] + function configFromArray (config) { + var i, date, input = [], currentDate, expectedWeekday, yearToUse; + + if (config._d) { + return; + } + + currentDate = currentDateArray(config); + + //compute day of the year from weeks and weekdays + if (config._w && config._a[DATE] == null && config._a[MONTH] == null) { + dayOfYearFromWeekInfo(config); + } + + //if the day of the year is set, figure out what it is + if (config._dayOfYear != null) { + yearToUse = defaults(config._a[YEAR], currentDate[YEAR]); + + if (config._dayOfYear > daysInYear(yearToUse) || config._dayOfYear === 0) { + getParsingFlags(config)._overflowDayOfYear = true; + } + + date = createUTCDate(yearToUse, 0, config._dayOfYear); + config._a[MONTH] = date.getUTCMonth(); + config._a[DATE] = date.getUTCDate(); + } + + // Default to current date. + // * if no year, month, day of month are given, default to today + // * if day of month is given, default month and year + // * if month is given, default only year + // * if year is given, don't default anything + for (i = 0; i < 3 && config._a[i] == null; ++i) { + config._a[i] = input[i] = currentDate[i]; + } + + // Zero out whatever was not defaulted, including time + for (; i < 7; i++) { + config._a[i] = input[i] = (config._a[i] == null) ? (i === 2 ? 1 : 0) : config._a[i]; + } + + // Check for 24:00:00.000 + if (config._a[HOUR] === 24 && + config._a[MINUTE] === 0 && + config._a[SECOND] === 0 && + config._a[MILLISECOND] === 0) { + config._nextDay = true; + config._a[HOUR] = 0; + } + + config._d = (config._useUTC ? createUTCDate : createDate).apply(null, input); + expectedWeekday = config._useUTC ? config._d.getUTCDay() : config._d.getDay(); + + // Apply timezone offset from input. The actual utcOffset can be changed + // with parseZone. + if (config._tzm != null) { + config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm); + } + + if (config._nextDay) { + config._a[HOUR] = 24; + } + + // check for mismatching day of week + if (config._w && typeof config._w.d !== 'undefined' && config._w.d !== expectedWeekday) { + getParsingFlags(config).weekdayMismatch = true; + } + } + + function dayOfYearFromWeekInfo(config) { + var w, weekYear, week, weekday, dow, doy, temp, weekdayOverflow; + + w = config._w; + if (w.GG != null || w.W != null || w.E != null) { + dow = 1; + doy = 4; + + // TODO: We need to take the current isoWeekYear, but that depends on + // how we interpret now (local, utc, fixed offset). So create + // a now version of current config (take local/utc/offset flags, and + // create now). + weekYear = defaults(w.GG, config._a[YEAR], weekOfYear(createLocal(), 1, 4).year); + week = defaults(w.W, 1); + weekday = defaults(w.E, 1); + if (weekday < 1 || weekday > 7) { + weekdayOverflow = true; + } + } else { + dow = config._locale._week.dow; + doy = config._locale._week.doy; + + var curWeek = weekOfYear(createLocal(), dow, doy); + + weekYear = defaults(w.gg, config._a[YEAR], curWeek.year); + + // Default to current week. + week = defaults(w.w, curWeek.week); + + if (w.d != null) { + // weekday -- low day numbers are considered next week + weekday = w.d; + if (weekday < 0 || weekday > 6) { + weekdayOverflow = true; + } + } else if (w.e != null) { + // local weekday -- counting starts from beginning of week + weekday = w.e + dow; + if (w.e < 0 || w.e > 6) { + weekdayOverflow = true; + } + } else { + // default to beginning of week + weekday = dow; + } + } + if (week < 1 || week > weeksInYear(weekYear, dow, doy)) { + getParsingFlags(config)._overflowWeeks = true; + } else if (weekdayOverflow != null) { + getParsingFlags(config)._overflowWeekday = true; + } else { + temp = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy); + config._a[YEAR] = temp.year; + config._dayOfYear = temp.dayOfYear; + } + } + + // iso 8601 regex + // 0000-00-00 0000-W00 or 0000-W00-0 + T + 00 or 00:00 or 00:00:00 or 00:00:00.000 + +00:00 or +0000 or +00) + var extendedIsoRegex = /^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/; + var basicIsoRegex = /^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/; + + var tzRegex = /Z|[+-]\d\d(?::?\d\d)?/; + + var isoDates = [ + ['YYYYYY-MM-DD', /[+-]\d{6}-\d\d-\d\d/], + ['YYYY-MM-DD', /\d{4}-\d\d-\d\d/], + ['GGGG-[W]WW-E', /\d{4}-W\d\d-\d/], + ['GGGG-[W]WW', /\d{4}-W\d\d/, false], + ['YYYY-DDD', /\d{4}-\d{3}/], + ['YYYY-MM', /\d{4}-\d\d/, false], + ['YYYYYYMMDD', /[+-]\d{10}/], + ['YYYYMMDD', /\d{8}/], + // YYYYMM is NOT allowed by the standard + ['GGGG[W]WWE', /\d{4}W\d{3}/], + ['GGGG[W]WW', /\d{4}W\d{2}/, false], + ['YYYYDDD', /\d{7}/] + ]; + + // iso time formats and regexes + var isoTimes = [ + ['HH:mm:ss.SSSS', /\d\d:\d\d:\d\d\.\d+/], + ['HH:mm:ss,SSSS', /\d\d:\d\d:\d\d,\d+/], + ['HH:mm:ss', /\d\d:\d\d:\d\d/], + ['HH:mm', /\d\d:\d\d/], + ['HHmmss.SSSS', /\d\d\d\d\d\d\.\d+/], + ['HHmmss,SSSS', /\d\d\d\d\d\d,\d+/], + ['HHmmss', /\d\d\d\d\d\d/], + ['HHmm', /\d\d\d\d/], + ['HH', /\d\d/] + ]; + + var aspNetJsonRegex = /^\/?Date\((\-?\d+)/i; + + // date from iso format + function configFromISO(config) { + var i, l, + string = config._i, + match = extendedIsoRegex.exec(string) || basicIsoRegex.exec(string), + allowTime, dateFormat, timeFormat, tzFormat; + + if (match) { + getParsingFlags(config).iso = true; + + for (i = 0, l = isoDates.length; i < l; i++) { + if (isoDates[i][1].exec(match[1])) { + dateFormat = isoDates[i][0]; + allowTime = isoDates[i][2] !== false; + break; + } + } + if (dateFormat == null) { + config._isValid = false; + return; + } + if (match[3]) { + for (i = 0, l = isoTimes.length; i < l; i++) { + if (isoTimes[i][1].exec(match[3])) { + // match[2] should be 'T' or space + timeFormat = (match[2] || ' ') + isoTimes[i][0]; + break; + } + } + if (timeFormat == null) { + config._isValid = false; + return; + } + } + if (!allowTime && timeFormat != null) { + config._isValid = false; + return; + } + if (match[4]) { + if (tzRegex.exec(match[4])) { + tzFormat = 'Z'; + } else { + config._isValid = false; + return; + } + } + config._f = dateFormat + (timeFormat || '') + (tzFormat || ''); + configFromStringAndFormat(config); + } else { + config._isValid = false; + } + } + + // RFC 2822 regex: For details see https://tools.ietf.org/html/rfc2822#section-3.3 + var rfc2822 = /^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/; + + function extractFromRFC2822Strings(yearStr, monthStr, dayStr, hourStr, minuteStr, secondStr) { + var result = [ + untruncateYear(yearStr), + defaultLocaleMonthsShort.indexOf(monthStr), + parseInt(dayStr, 10), + parseInt(hourStr, 10), + parseInt(minuteStr, 10) + ]; + + if (secondStr) { + result.push(parseInt(secondStr, 10)); + } + + return result; + } + + function untruncateYear(yearStr) { + var year = parseInt(yearStr, 10); + if (year <= 49) { + return 2000 + year; + } else if (year <= 999) { + return 1900 + year; + } + return year; + } + + function preprocessRFC2822(s) { + // Remove comments and folding whitespace and replace multiple-spaces with a single space + return s.replace(/\([^)]*\)|[\n\t]/g, ' ').replace(/(\s\s+)/g, ' ').replace(/^\s\s*/, '').replace(/\s\s*$/, ''); + } + + function checkWeekday(weekdayStr, parsedInput, config) { + if (weekdayStr) { + // TODO: Replace the vanilla JS Date object with an indepentent day-of-week check. + var weekdayProvided = defaultLocaleWeekdaysShort.indexOf(weekdayStr), + weekdayActual = new Date(parsedInput[0], parsedInput[1], parsedInput[2]).getDay(); + if (weekdayProvided !== weekdayActual) { + getParsingFlags(config).weekdayMismatch = true; + config._isValid = false; + return false; + } + } + return true; + } + + var obsOffsets = { + UT: 0, + GMT: 0, + EDT: -4 * 60, + EST: -5 * 60, + CDT: -5 * 60, + CST: -6 * 60, + MDT: -6 * 60, + MST: -7 * 60, + PDT: -7 * 60, + PST: -8 * 60 + }; + + function calculateOffset(obsOffset, militaryOffset, numOffset) { + if (obsOffset) { + return obsOffsets[obsOffset]; + } else if (militaryOffset) { + // the only allowed military tz is Z + return 0; + } else { + var hm = parseInt(numOffset, 10); + var m = hm % 100, h = (hm - m) / 100; + return h * 60 + m; + } + } + + // date and time from ref 2822 format + function configFromRFC2822(config) { + var match = rfc2822.exec(preprocessRFC2822(config._i)); + if (match) { + var parsedArray = extractFromRFC2822Strings(match[4], match[3], match[2], match[5], match[6], match[7]); + if (!checkWeekday(match[1], parsedArray, config)) { + return; + } + + config._a = parsedArray; + config._tzm = calculateOffset(match[8], match[9], match[10]); + + config._d = createUTCDate.apply(null, config._a); + config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm); + + getParsingFlags(config).rfc2822 = true; + } else { + config._isValid = false; + } + } + + // date from iso format or fallback + function configFromString(config) { + var matched = aspNetJsonRegex.exec(config._i); + + if (matched !== null) { + config._d = new Date(+matched[1]); + return; + } + + configFromISO(config); + if (config._isValid === false) { + delete config._isValid; + } else { + return; + } + + configFromRFC2822(config); + if (config._isValid === false) { + delete config._isValid; + } else { + return; + } + + // Final attempt, use Input Fallback + hooks.createFromInputFallback(config); + } + + hooks.createFromInputFallback = deprecate( + 'value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), ' + + 'which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are ' + + 'discouraged and will be removed in an upcoming major release. Please refer to ' + + 'http://momentjs.com/guides/#/warnings/js-date/ for more info.', + function (config) { + config._d = new Date(config._i + (config._useUTC ? ' UTC' : '')); + } + ); + + // constant that refers to the ISO standard + hooks.ISO_8601 = function () {}; + + // constant that refers to the RFC 2822 form + hooks.RFC_2822 = function () {}; + + // date from string and format string + function configFromStringAndFormat(config) { + // TODO: Move this to another part of the creation flow to prevent circular deps + if (config._f === hooks.ISO_8601) { + configFromISO(config); + return; + } + if (config._f === hooks.RFC_2822) { + configFromRFC2822(config); + return; + } + config._a = []; + getParsingFlags(config).empty = true; + + // This array is used to make a Date, either with `new Date` or `Date.UTC` + var string = '' + config._i, + i, parsedInput, tokens, token, skipped, + stringLength = string.length, + totalParsedInputLength = 0; + + tokens = expandFormat(config._f, config._locale).match(formattingTokens) || []; + + for (i = 0; i < tokens.length; i++) { + token = tokens[i]; + parsedInput = (string.match(getParseRegexForToken(token, config)) || [])[0]; + // console.log('token', token, 'parsedInput', parsedInput, + // 'regex', getParseRegexForToken(token, config)); + if (parsedInput) { + skipped = string.substr(0, string.indexOf(parsedInput)); + if (skipped.length > 0) { + getParsingFlags(config).unusedInput.push(skipped); + } + string = string.slice(string.indexOf(parsedInput) + parsedInput.length); + totalParsedInputLength += parsedInput.length; + } + // don't parse if it's not a known token + if (formatTokenFunctions[token]) { + if (parsedInput) { + getParsingFlags(config).empty = false; + } + else { + getParsingFlags(config).unusedTokens.push(token); + } + addTimeToArrayFromToken(token, parsedInput, config); + } + else if (config._strict && !parsedInput) { + getParsingFlags(config).unusedTokens.push(token); + } + } + + // add remaining unparsed input length to the string + getParsingFlags(config).charsLeftOver = stringLength - totalParsedInputLength; + if (string.length > 0) { + getParsingFlags(config).unusedInput.push(string); + } + + // clear _12h flag if hour is <= 12 + if (config._a[HOUR] <= 12 && + getParsingFlags(config).bigHour === true && + config._a[HOUR] > 0) { + getParsingFlags(config).bigHour = undefined; + } + + getParsingFlags(config).parsedDateParts = config._a.slice(0); + getParsingFlags(config).meridiem = config._meridiem; + // handle meridiem + config._a[HOUR] = meridiemFixWrap(config._locale, config._a[HOUR], config._meridiem); + + configFromArray(config); + checkOverflow(config); + } + + + function meridiemFixWrap (locale, hour, meridiem) { + var isPm; + + if (meridiem == null) { + // nothing to do + return hour; + } + if (locale.meridiemHour != null) { + return locale.meridiemHour(hour, meridiem); + } else if (locale.isPM != null) { + // Fallback + isPm = locale.isPM(meridiem); + if (isPm && hour < 12) { + hour += 12; + } + if (!isPm && hour === 12) { + hour = 0; + } + return hour; + } else { + // this is not supposed to happen + return hour; + } + } + + // date from string and array of format strings + function configFromStringAndArray(config) { + var tempConfig, + bestMoment, + + scoreToBeat, + i, + currentScore; + + if (config._f.length === 0) { + getParsingFlags(config).invalidFormat = true; + config._d = new Date(NaN); + return; + } + + for (i = 0; i < config._f.length; i++) { + currentScore = 0; + tempConfig = copyConfig({}, config); + if (config._useUTC != null) { + tempConfig._useUTC = config._useUTC; + } + tempConfig._f = config._f[i]; + configFromStringAndFormat(tempConfig); + + if (!isValid(tempConfig)) { + continue; + } + + // if there is any input that was not parsed add a penalty for that format + currentScore += getParsingFlags(tempConfig).charsLeftOver; + + //or tokens + currentScore += getParsingFlags(tempConfig).unusedTokens.length * 10; + + getParsingFlags(tempConfig).score = currentScore; + + if (scoreToBeat == null || currentScore < scoreToBeat) { + scoreToBeat = currentScore; + bestMoment = tempConfig; + } + } + + extend(config, bestMoment || tempConfig); + } + + function configFromObject(config) { + if (config._d) { + return; + } + + var i = normalizeObjectUnits(config._i); + config._a = map([i.year, i.month, i.day || i.date, i.hour, i.minute, i.second, i.millisecond], function (obj) { + return obj && parseInt(obj, 10); + }); + + configFromArray(config); + } + + function createFromConfig (config) { + var res = new Moment(checkOverflow(prepareConfig(config))); + if (res._nextDay) { + // Adding is smart enough around DST + res.add(1, 'd'); + res._nextDay = undefined; + } + + return res; + } + + function prepareConfig (config) { + var input = config._i, + format = config._f; + + config._locale = config._locale || getLocale(config._l); + + if (input === null || (format === undefined && input === '')) { + return createInvalid({nullInput: true}); + } + + if (typeof input === 'string') { + config._i = input = config._locale.preparse(input); + } + + if (isMoment(input)) { + return new Moment(checkOverflow(input)); + } else if (isDate(input)) { + config._d = input; + } else if (isArray(format)) { + configFromStringAndArray(config); + } else if (format) { + configFromStringAndFormat(config); + } else { + configFromInput(config); + } + + if (!isValid(config)) { + config._d = null; + } + + return config; + } + + function configFromInput(config) { + var input = config._i; + if (isUndefined(input)) { + config._d = new Date(hooks.now()); + } else if (isDate(input)) { + config._d = new Date(input.valueOf()); + } else if (typeof input === 'string') { + configFromString(config); + } else if (isArray(input)) { + config._a = map(input.slice(0), function (obj) { + return parseInt(obj, 10); + }); + configFromArray(config); + } else if (isObject(input)) { + configFromObject(config); + } else if (isNumber(input)) { + // from milliseconds + config._d = new Date(input); + } else { + hooks.createFromInputFallback(config); + } + } + + function createLocalOrUTC (input, format, locale, strict, isUTC) { + var c = {}; + + if (locale === true || locale === false) { + strict = locale; + locale = undefined; + } + + if ((isObject(input) && isObjectEmpty(input)) || + (isArray(input) && input.length === 0)) { + input = undefined; + } + // object construction must be done this way. + // https://github.com/moment/moment/issues/1423 + c._isAMomentObject = true; + c._useUTC = c._isUTC = isUTC; + c._l = locale; + c._i = input; + c._f = format; + c._strict = strict; + + return createFromConfig(c); + } + + function createLocal (input, format, locale, strict) { + return createLocalOrUTC(input, format, locale, strict, false); + } + + var prototypeMin = deprecate( + 'moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/', + function () { + var other = createLocal.apply(null, arguments); + if (this.isValid() && other.isValid()) { + return other < this ? this : other; + } else { + return createInvalid(); + } + } + ); + + var prototypeMax = deprecate( + 'moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/', + function () { + var other = createLocal.apply(null, arguments); + if (this.isValid() && other.isValid()) { + return other > this ? this : other; + } else { + return createInvalid(); + } + } + ); + + // Pick a moment m from moments so that m[fn](other) is true for all + // other. This relies on the function fn to be transitive. + // + // moments should either be an array of moment objects or an array, whose + // first element is an array of moment objects. + function pickBy(fn, moments) { + var res, i; + if (moments.length === 1 && isArray(moments[0])) { + moments = moments[0]; + } + if (!moments.length) { + return createLocal(); + } + res = moments[0]; + for (i = 1; i < moments.length; ++i) { + if (!moments[i].isValid() || moments[i][fn](res)) { + res = moments[i]; + } + } + return res; + } + + // TODO: Use [].sort instead? + function min () { + var args = [].slice.call(arguments, 0); + + return pickBy('isBefore', args); + } + + function max () { + var args = [].slice.call(arguments, 0); + + return pickBy('isAfter', args); + } + + var now = function () { + return Date.now ? Date.now() : +(new Date()); + }; + + var ordering = ['year', 'quarter', 'month', 'week', 'day', 'hour', 'minute', 'second', 'millisecond']; + + function isDurationValid(m) { + for (var key in m) { + if (!(indexOf.call(ordering, key) !== -1 && (m[key] == null || !isNaN(m[key])))) { + return false; + } + } + + var unitHasDecimal = false; + for (var i = 0; i < ordering.length; ++i) { + if (m[ordering[i]]) { + if (unitHasDecimal) { + return false; // only allow non-integers for smallest unit + } + if (parseFloat(m[ordering[i]]) !== toInt(m[ordering[i]])) { + unitHasDecimal = true; + } + } + } + + return true; + } + + function isValid$1() { + return this._isValid; + } + + function createInvalid$1() { + return createDuration(NaN); + } + + function Duration (duration) { + var normalizedInput = normalizeObjectUnits(duration), + years = normalizedInput.year || 0, + quarters = normalizedInput.quarter || 0, + months = normalizedInput.month || 0, + weeks = normalizedInput.week || normalizedInput.isoWeek || 0, + days = normalizedInput.day || 0, + hours = normalizedInput.hour || 0, + minutes = normalizedInput.minute || 0, + seconds = normalizedInput.second || 0, + milliseconds = normalizedInput.millisecond || 0; + + this._isValid = isDurationValid(normalizedInput); + + // representation for dateAddRemove + this._milliseconds = +milliseconds + + seconds * 1e3 + // 1000 + minutes * 6e4 + // 1000 * 60 + hours * 1000 * 60 * 60; //using 1000 * 60 * 60 instead of 36e5 to avoid floating point rounding errors https://github.com/moment/moment/issues/2978 + // Because of dateAddRemove treats 24 hours as different from a + // day when working around DST, we need to store them separately + this._days = +days + + weeks * 7; + // It is impossible to translate months into days without knowing + // which months you are are talking about, so we have to store + // it separately. + this._months = +months + + quarters * 3 + + years * 12; + + this._data = {}; + + this._locale = getLocale(); + + this._bubble(); + } + + function isDuration (obj) { + return obj instanceof Duration; + } + + function absRound (number) { + if (number < 0) { + return Math.round(-1 * number) * -1; + } else { + return Math.round(number); + } + } + + // FORMATTING + + function offset (token, separator) { + addFormatToken(token, 0, 0, function () { + var offset = this.utcOffset(); + var sign = '+'; + if (offset < 0) { + offset = -offset; + sign = '-'; + } + return sign + zeroFill(~~(offset / 60), 2) + separator + zeroFill(~~(offset) % 60, 2); + }); + } + + offset('Z', ':'); + offset('ZZ', ''); + + // PARSING + + addRegexToken('Z', matchShortOffset); + addRegexToken('ZZ', matchShortOffset); + addParseToken(['Z', 'ZZ'], function (input, array, config) { + config._useUTC = true; + config._tzm = offsetFromString(matchShortOffset, input); + }); + + // HELPERS + + // timezone chunker + // '+10:00' > ['10', '00'] + // '-1530' > ['-15', '30'] + var chunkOffset = /([\+\-]|\d\d)/gi; + + function offsetFromString(matcher, string) { + var matches = (string || '').match(matcher); + + if (matches === null) { + return null; + } + + var chunk = matches[matches.length - 1] || []; + var parts = (chunk + '').match(chunkOffset) || ['-', 0, 0]; + var minutes = +(parts[1] * 60) + toInt(parts[2]); + + return minutes === 0 ? + 0 : + parts[0] === '+' ? minutes : -minutes; + } + + // Return a moment from input, that is local/utc/zone equivalent to model. + function cloneWithOffset(input, model) { + var res, diff; + if (model._isUTC) { + res = model.clone(); + diff = (isMoment(input) || isDate(input) ? input.valueOf() : createLocal(input).valueOf()) - res.valueOf(); + // Use low-level api, because this fn is low-level api. + res._d.setTime(res._d.valueOf() + diff); + hooks.updateOffset(res, false); + return res; + } else { + return createLocal(input).local(); + } + } + + function getDateOffset (m) { + // On Firefox.24 Date#getTimezoneOffset returns a floating point. + // https://github.com/moment/moment/pull/1871 + return -Math.round(m._d.getTimezoneOffset() / 15) * 15; + } + + // HOOKS + + // This function will be called whenever a moment is mutated. + // It is intended to keep the offset in sync with the timezone. + hooks.updateOffset = function () {}; + + // MOMENTS + + // keepLocalTime = true means only change the timezone, without + // affecting the local hour. So 5:31:26 +0300 --[utcOffset(2, true)]--> + // 5:31:26 +0200 It is possible that 5:31:26 doesn't exist with offset + // +0200, so we adjust the time as needed, to be valid. + // + // Keeping the time actually adds/subtracts (one hour) + // from the actual represented time. That is why we call updateOffset + // a second time. In case it wants us to change the offset again + // _changeInProgress == true case, then we have to adjust, because + // there is no such time in the given timezone. + function getSetOffset (input, keepLocalTime, keepMinutes) { + var offset = this._offset || 0, + localAdjust; + if (!this.isValid()) { + return input != null ? this : NaN; + } + if (input != null) { + if (typeof input === 'string') { + input = offsetFromString(matchShortOffset, input); + if (input === null) { + return this; + } + } else if (Math.abs(input) < 16 && !keepMinutes) { + input = input * 60; + } + if (!this._isUTC && keepLocalTime) { + localAdjust = getDateOffset(this); + } + this._offset = input; + this._isUTC = true; + if (localAdjust != null) { + this.add(localAdjust, 'm'); + } + if (offset !== input) { + if (!keepLocalTime || this._changeInProgress) { + addSubtract(this, createDuration(input - offset, 'm'), 1, false); + } else if (!this._changeInProgress) { + this._changeInProgress = true; + hooks.updateOffset(this, true); + this._changeInProgress = null; + } + } + return this; + } else { + return this._isUTC ? offset : getDateOffset(this); + } + } + + function getSetZone (input, keepLocalTime) { + if (input != null) { + if (typeof input !== 'string') { + input = -input; + } + + this.utcOffset(input, keepLocalTime); + + return this; + } else { + return -this.utcOffset(); + } + } + + function setOffsetToUTC (keepLocalTime) { + return this.utcOffset(0, keepLocalTime); + } + + function setOffsetToLocal (keepLocalTime) { + if (this._isUTC) { + this.utcOffset(0, keepLocalTime); + this._isUTC = false; + + if (keepLocalTime) { + this.subtract(getDateOffset(this), 'm'); + } + } + return this; + } + + function setOffsetToParsedOffset () { + if (this._tzm != null) { + this.utcOffset(this._tzm, false, true); + } else if (typeof this._i === 'string') { + var tZone = offsetFromString(matchOffset, this._i); + if (tZone != null) { + this.utcOffset(tZone); + } + else { + this.utcOffset(0, true); + } + } + return this; + } + + function hasAlignedHourOffset (input) { + if (!this.isValid()) { + return false; + } + input = input ? createLocal(input).utcOffset() : 0; + + return (this.utcOffset() - input) % 60 === 0; + } + + function isDaylightSavingTime () { + return ( + this.utcOffset() > this.clone().month(0).utcOffset() || + this.utcOffset() > this.clone().month(5).utcOffset() + ); + } + + function isDaylightSavingTimeShifted () { + if (!isUndefined(this._isDSTShifted)) { + return this._isDSTShifted; + } + + var c = {}; + + copyConfig(c, this); + c = prepareConfig(c); + + if (c._a) { + var other = c._isUTC ? createUTC(c._a) : createLocal(c._a); + this._isDSTShifted = this.isValid() && + compareArrays(c._a, other.toArray()) > 0; + } else { + this._isDSTShifted = false; + } + + return this._isDSTShifted; + } + + function isLocal () { + return this.isValid() ? !this._isUTC : false; + } + + function isUtcOffset () { + return this.isValid() ? this._isUTC : false; + } + + function isUtc () { + return this.isValid() ? this._isUTC && this._offset === 0 : false; + } + + // ASP.NET json date format regex + var aspNetRegex = /^(\-|\+)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)(\.\d*)?)?$/; + + // from http://docs.closure-library.googlecode.com/git/closure_goog_date_date.js.source.html + // somewhat more in line with 4.4.3.2 2004 spec, but allows decimal anywhere + // and further modified to allow for strings containing both week and day + var isoRegex = /^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/; + + function createDuration (input, key) { + var duration = input, + // matching against regexp is expensive, do it on demand + match = null, + sign, + ret, + diffRes; + + if (isDuration(input)) { + duration = { + ms : input._milliseconds, + d : input._days, + M : input._months + }; + } else if (isNumber(input)) { + duration = {}; + if (key) { + duration[key] = input; + } else { + duration.milliseconds = input; + } + } else if (!!(match = aspNetRegex.exec(input))) { + sign = (match[1] === '-') ? -1 : 1; + duration = { + y : 0, + d : toInt(match[DATE]) * sign, + h : toInt(match[HOUR]) * sign, + m : toInt(match[MINUTE]) * sign, + s : toInt(match[SECOND]) * sign, + ms : toInt(absRound(match[MILLISECOND] * 1000)) * sign // the millisecond decimal point is included in the match + }; + } else if (!!(match = isoRegex.exec(input))) { + sign = (match[1] === '-') ? -1 : 1; + duration = { + y : parseIso(match[2], sign), + M : parseIso(match[3], sign), + w : parseIso(match[4], sign), + d : parseIso(match[5], sign), + h : parseIso(match[6], sign), + m : parseIso(match[7], sign), + s : parseIso(match[8], sign) + }; + } else if (duration == null) {// checks for null or undefined + duration = {}; + } else if (typeof duration === 'object' && ('from' in duration || 'to' in duration)) { + diffRes = momentsDifference(createLocal(duration.from), createLocal(duration.to)); + + duration = {}; + duration.ms = diffRes.milliseconds; + duration.M = diffRes.months; + } + + ret = new Duration(duration); + + if (isDuration(input) && hasOwnProp(input, '_locale')) { + ret._locale = input._locale; + } + + return ret; + } + + createDuration.fn = Duration.prototype; + createDuration.invalid = createInvalid$1; + + function parseIso (inp, sign) { + // We'd normally use ~~inp for this, but unfortunately it also + // converts floats to ints. + // inp may be undefined, so careful calling replace on it. + var res = inp && parseFloat(inp.replace(',', '.')); + // apply sign while we're at it + return (isNaN(res) ? 0 : res) * sign; + } + + function positiveMomentsDifference(base, other) { + var res = {}; + + res.months = other.month() - base.month() + + (other.year() - base.year()) * 12; + if (base.clone().add(res.months, 'M').isAfter(other)) { + --res.months; + } + + res.milliseconds = +other - +(base.clone().add(res.months, 'M')); + + return res; + } + + function momentsDifference(base, other) { + var res; + if (!(base.isValid() && other.isValid())) { + return {milliseconds: 0, months: 0}; + } + + other = cloneWithOffset(other, base); + if (base.isBefore(other)) { + res = positiveMomentsDifference(base, other); + } else { + res = positiveMomentsDifference(other, base); + res.milliseconds = -res.milliseconds; + res.months = -res.months; + } + + return res; + } + + // TODO: remove 'name' arg after deprecation is removed + function createAdder(direction, name) { + return function (val, period) { + var dur, tmp; + //invert the arguments, but complain about it + if (period !== null && !isNaN(+period)) { + deprecateSimple(name, 'moment().' + name + '(period, number) is deprecated. Please use moment().' + name + '(number, period). ' + + 'See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info.'); + tmp = val; val = period; period = tmp; + } + + val = typeof val === 'string' ? +val : val; + dur = createDuration(val, period); + addSubtract(this, dur, direction); + return this; + }; + } + + function addSubtract (mom, duration, isAdding, updateOffset) { + var milliseconds = duration._milliseconds, + days = absRound(duration._days), + months = absRound(duration._months); + + if (!mom.isValid()) { + // No op + return; + } + + updateOffset = updateOffset == null ? true : updateOffset; + + if (months) { + setMonth(mom, get(mom, 'Month') + months * isAdding); + } + if (days) { + set$1(mom, 'Date', get(mom, 'Date') + days * isAdding); + } + if (milliseconds) { + mom._d.setTime(mom._d.valueOf() + milliseconds * isAdding); + } + if (updateOffset) { + hooks.updateOffset(mom, days || months); + } + } + + var add = createAdder(1, 'add'); + var subtract = createAdder(-1, 'subtract'); + + function getCalendarFormat(myMoment, now) { + var diff = myMoment.diff(now, 'days', true); + return diff < -6 ? 'sameElse' : + diff < -1 ? 'lastWeek' : + diff < 0 ? 'lastDay' : + diff < 1 ? 'sameDay' : + diff < 2 ? 'nextDay' : + diff < 7 ? 'nextWeek' : 'sameElse'; + } + + function calendar$1 (time, formats) { + // We want to compare the start of today, vs this. + // Getting start-of-today depends on whether we're local/utc/offset or not. + var now = time || createLocal(), + sod = cloneWithOffset(now, this).startOf('day'), + format = hooks.calendarFormat(this, sod) || 'sameElse'; + + var output = formats && (isFunction(formats[format]) ? formats[format].call(this, now) : formats[format]); + + return this.format(output || this.localeData().calendar(format, this, createLocal(now))); + } + + function clone () { + return new Moment(this); + } + + function isAfter (input, units) { + var localInput = isMoment(input) ? input : createLocal(input); + if (!(this.isValid() && localInput.isValid())) { + return false; + } + units = normalizeUnits(units) || 'millisecond'; + if (units === 'millisecond') { + return this.valueOf() > localInput.valueOf(); + } else { + return localInput.valueOf() < this.clone().startOf(units).valueOf(); + } + } + + function isBefore (input, units) { + var localInput = isMoment(input) ? input : createLocal(input); + if (!(this.isValid() && localInput.isValid())) { + return false; + } + units = normalizeUnits(units) || 'millisecond'; + if (units === 'millisecond') { + return this.valueOf() < localInput.valueOf(); + } else { + return this.clone().endOf(units).valueOf() < localInput.valueOf(); + } + } + + function isBetween (from, to, units, inclusivity) { + var localFrom = isMoment(from) ? from : createLocal(from), + localTo = isMoment(to) ? to : createLocal(to); + if (!(this.isValid() && localFrom.isValid() && localTo.isValid())) { + return false; + } + inclusivity = inclusivity || '()'; + return (inclusivity[0] === '(' ? this.isAfter(localFrom, units) : !this.isBefore(localFrom, units)) && + (inclusivity[1] === ')' ? this.isBefore(localTo, units) : !this.isAfter(localTo, units)); + } + + function isSame (input, units) { + var localInput = isMoment(input) ? input : createLocal(input), + inputMs; + if (!(this.isValid() && localInput.isValid())) { + return false; + } + units = normalizeUnits(units) || 'millisecond'; + if (units === 'millisecond') { + return this.valueOf() === localInput.valueOf(); + } else { + inputMs = localInput.valueOf(); + return this.clone().startOf(units).valueOf() <= inputMs && inputMs <= this.clone().endOf(units).valueOf(); + } + } + + function isSameOrAfter (input, units) { + return this.isSame(input, units) || this.isAfter(input, units); + } + + function isSameOrBefore (input, units) { + return this.isSame(input, units) || this.isBefore(input, units); + } + + function diff (input, units, asFloat) { + var that, + zoneDelta, + output; + + if (!this.isValid()) { + return NaN; + } + + that = cloneWithOffset(input, this); + + if (!that.isValid()) { + return NaN; + } + + zoneDelta = (that.utcOffset() - this.utcOffset()) * 6e4; + + units = normalizeUnits(units); + + switch (units) { + case 'year': output = monthDiff(this, that) / 12; break; + case 'month': output = monthDiff(this, that); break; + case 'quarter': output = monthDiff(this, that) / 3; break; + case 'second': output = (this - that) / 1e3; break; // 1000 + case 'minute': output = (this - that) / 6e4; break; // 1000 * 60 + case 'hour': output = (this - that) / 36e5; break; // 1000 * 60 * 60 + case 'day': output = (this - that - zoneDelta) / 864e5; break; // 1000 * 60 * 60 * 24, negate dst + case 'week': output = (this - that - zoneDelta) / 6048e5; break; // 1000 * 60 * 60 * 24 * 7, negate dst + default: output = this - that; + } + + return asFloat ? output : absFloor(output); + } + + function monthDiff (a, b) { + // difference in months + var wholeMonthDiff = ((b.year() - a.year()) * 12) + (b.month() - a.month()), + // b is in (anchor - 1 month, anchor + 1 month) + anchor = a.clone().add(wholeMonthDiff, 'months'), + anchor2, adjust; + + if (b - anchor < 0) { + anchor2 = a.clone().add(wholeMonthDiff - 1, 'months'); + // linear across the month + adjust = (b - anchor) / (anchor - anchor2); + } else { + anchor2 = a.clone().add(wholeMonthDiff + 1, 'months'); + // linear across the month + adjust = (b - anchor) / (anchor2 - anchor); + } + + //check for negative zero, return zero if negative zero + return -(wholeMonthDiff + adjust) || 0; + } + + hooks.defaultFormat = 'YYYY-MM-DDTHH:mm:ssZ'; + hooks.defaultFormatUtc = 'YYYY-MM-DDTHH:mm:ss[Z]'; + + function toString () { + return this.clone().locale('en').format('ddd MMM DD YYYY HH:mm:ss [GMT]ZZ'); + } + + function toISOString(keepOffset) { + if (!this.isValid()) { + return null; + } + var utc = keepOffset !== true; + var m = utc ? this.clone().utc() : this; + if (m.year() < 0 || m.year() > 9999) { + return formatMoment(m, utc ? 'YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]' : 'YYYYYY-MM-DD[T]HH:mm:ss.SSSZ'); + } + if (isFunction(Date.prototype.toISOString)) { + // native implementation is ~50x faster, use it when we can + if (utc) { + return this.toDate().toISOString(); + } else { + return new Date(this.valueOf() + this.utcOffset() * 60 * 1000).toISOString().replace('Z', formatMoment(m, 'Z')); + } + } + return formatMoment(m, utc ? 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]' : 'YYYY-MM-DD[T]HH:mm:ss.SSSZ'); + } + + /** + * Return a human readable representation of a moment that can + * also be evaluated to get a new moment which is the same + * + * @link https://nodejs.org/dist/latest/docs/api/util.html#util_custom_inspect_function_on_objects + */ + function inspect () { + if (!this.isValid()) { + return 'moment.invalid(/* ' + this._i + ' */)'; + } + var func = 'moment'; + var zone = ''; + if (!this.isLocal()) { + func = this.utcOffset() === 0 ? 'moment.utc' : 'moment.parseZone'; + zone = 'Z'; + } + var prefix = '[' + func + '("]'; + var year = (0 <= this.year() && this.year() <= 9999) ? 'YYYY' : 'YYYYYY'; + var datetime = '-MM-DD[T]HH:mm:ss.SSS'; + var suffix = zone + '[")]'; + + return this.format(prefix + year + datetime + suffix); + } + + function format (inputString) { + if (!inputString) { + inputString = this.isUtc() ? hooks.defaultFormatUtc : hooks.defaultFormat; + } + var output = formatMoment(this, inputString); + return this.localeData().postformat(output); + } + + function from (time, withoutSuffix) { + if (this.isValid() && + ((isMoment(time) && time.isValid()) || + createLocal(time).isValid())) { + return createDuration({to: this, from: time}).locale(this.locale()).humanize(!withoutSuffix); + } else { + return this.localeData().invalidDate(); + } + } + + function fromNow (withoutSuffix) { + return this.from(createLocal(), withoutSuffix); + } + + function to (time, withoutSuffix) { + if (this.isValid() && + ((isMoment(time) && time.isValid()) || + createLocal(time).isValid())) { + return createDuration({from: this, to: time}).locale(this.locale()).humanize(!withoutSuffix); + } else { + return this.localeData().invalidDate(); + } + } + + function toNow (withoutSuffix) { + return this.to(createLocal(), withoutSuffix); + } + + // If passed a locale key, it will set the locale for this + // instance. Otherwise, it will return the locale configuration + // variables for this instance. + function locale (key) { + var newLocaleData; + + if (key === undefined) { + return this._locale._abbr; + } else { + newLocaleData = getLocale(key); + if (newLocaleData != null) { + this._locale = newLocaleData; + } + return this; + } + } + + var lang = deprecate( + 'moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.', + function (key) { + if (key === undefined) { + return this.localeData(); + } else { + return this.locale(key); + } + } + ); + + function localeData () { + return this._locale; + } + + var MS_PER_SECOND = 1000; + var MS_PER_MINUTE = 60 * MS_PER_SECOND; + var MS_PER_HOUR = 60 * MS_PER_MINUTE; + var MS_PER_400_YEARS = (365 * 400 + 97) * 24 * MS_PER_HOUR; + + // actual modulo - handles negative numbers (for dates before 1970): + function mod$1(dividend, divisor) { + return (dividend % divisor + divisor) % divisor; + } + + function localStartOfDate(y, m, d) { + // the date constructor remaps years 0-99 to 1900-1999 + if (y < 100 && y >= 0) { + // preserve leap years using a full 400 year cycle, then reset + return new Date(y + 400, m, d) - MS_PER_400_YEARS; + } else { + return new Date(y, m, d).valueOf(); + } + } + + function utcStartOfDate(y, m, d) { + // Date.UTC remaps years 0-99 to 1900-1999 + if (y < 100 && y >= 0) { + // preserve leap years using a full 400 year cycle, then reset + return Date.UTC(y + 400, m, d) - MS_PER_400_YEARS; + } else { + return Date.UTC(y, m, d); + } + } + + function startOf (units) { + var time; + units = normalizeUnits(units); + if (units === undefined || units === 'millisecond' || !this.isValid()) { + return this; + } + + var startOfDate = this._isUTC ? utcStartOfDate : localStartOfDate; + + switch (units) { + case 'year': + time = startOfDate(this.year(), 0, 1); + break; + case 'quarter': + time = startOfDate(this.year(), this.month() - this.month() % 3, 1); + break; + case 'month': + time = startOfDate(this.year(), this.month(), 1); + break; + case 'week': + time = startOfDate(this.year(), this.month(), this.date() - this.weekday()); + break; + case 'isoWeek': + time = startOfDate(this.year(), this.month(), this.date() - (this.isoWeekday() - 1)); + break; + case 'day': + case 'date': + time = startOfDate(this.year(), this.month(), this.date()); + break; + case 'hour': + time = this._d.valueOf(); + time -= mod$1(time + (this._isUTC ? 0 : this.utcOffset() * MS_PER_MINUTE), MS_PER_HOUR); + break; + case 'minute': + time = this._d.valueOf(); + time -= mod$1(time, MS_PER_MINUTE); + break; + case 'second': + time = this._d.valueOf(); + time -= mod$1(time, MS_PER_SECOND); + break; + } + + this._d.setTime(time); + hooks.updateOffset(this, true); + return this; + } + + function endOf (units) { + var time; + units = normalizeUnits(units); + if (units === undefined || units === 'millisecond' || !this.isValid()) { + return this; + } + + var startOfDate = this._isUTC ? utcStartOfDate : localStartOfDate; + + switch (units) { + case 'year': + time = startOfDate(this.year() + 1, 0, 1) - 1; + break; + case 'quarter': + time = startOfDate(this.year(), this.month() - this.month() % 3 + 3, 1) - 1; + break; + case 'month': + time = startOfDate(this.year(), this.month() + 1, 1) - 1; + break; + case 'week': + time = startOfDate(this.year(), this.month(), this.date() - this.weekday() + 7) - 1; + break; + case 'isoWeek': + time = startOfDate(this.year(), this.month(), this.date() - (this.isoWeekday() - 1) + 7) - 1; + break; + case 'day': + case 'date': + time = startOfDate(this.year(), this.month(), this.date() + 1) - 1; + break; + case 'hour': + time = this._d.valueOf(); + time += MS_PER_HOUR - mod$1(time + (this._isUTC ? 0 : this.utcOffset() * MS_PER_MINUTE), MS_PER_HOUR) - 1; + break; + case 'minute': + time = this._d.valueOf(); + time += MS_PER_MINUTE - mod$1(time, MS_PER_MINUTE) - 1; + break; + case 'second': + time = this._d.valueOf(); + time += MS_PER_SECOND - mod$1(time, MS_PER_SECOND) - 1; + break; + } + + this._d.setTime(time); + hooks.updateOffset(this, true); + return this; + } + + function valueOf () { + return this._d.valueOf() - ((this._offset || 0) * 60000); + } + + function unix () { + return Math.floor(this.valueOf() / 1000); + } + + function toDate () { + return new Date(this.valueOf()); + } + + function toArray () { + var m = this; + return [m.year(), m.month(), m.date(), m.hour(), m.minute(), m.second(), m.millisecond()]; + } + + function toObject () { + var m = this; + return { + years: m.year(), + months: m.month(), + date: m.date(), + hours: m.hours(), + minutes: m.minutes(), + seconds: m.seconds(), + milliseconds: m.milliseconds() + }; + } + + function toJSON () { + // new Date(NaN).toJSON() === null + return this.isValid() ? this.toISOString() : null; + } + + function isValid$2 () { + return isValid(this); + } + + function parsingFlags () { + return extend({}, getParsingFlags(this)); + } + + function invalidAt () { + return getParsingFlags(this).overflow; + } + + function creationData() { + return { + input: this._i, + format: this._f, + locale: this._locale, + isUTC: this._isUTC, + strict: this._strict + }; + } + + // FORMATTING + + addFormatToken(0, ['gg', 2], 0, function () { + return this.weekYear() % 100; + }); + + addFormatToken(0, ['GG', 2], 0, function () { + return this.isoWeekYear() % 100; + }); + + function addWeekYearFormatToken (token, getter) { + addFormatToken(0, [token, token.length], 0, getter); + } + + addWeekYearFormatToken('gggg', 'weekYear'); + addWeekYearFormatToken('ggggg', 'weekYear'); + addWeekYearFormatToken('GGGG', 'isoWeekYear'); + addWeekYearFormatToken('GGGGG', 'isoWeekYear'); + + // ALIASES + + addUnitAlias('weekYear', 'gg'); + addUnitAlias('isoWeekYear', 'GG'); + + // PRIORITY + + addUnitPriority('weekYear', 1); + addUnitPriority('isoWeekYear', 1); + + + // PARSING + + addRegexToken('G', matchSigned); + addRegexToken('g', matchSigned); + addRegexToken('GG', match1to2, match2); + addRegexToken('gg', match1to2, match2); + addRegexToken('GGGG', match1to4, match4); + addRegexToken('gggg', match1to4, match4); + addRegexToken('GGGGG', match1to6, match6); + addRegexToken('ggggg', match1to6, match6); + + addWeekParseToken(['gggg', 'ggggg', 'GGGG', 'GGGGG'], function (input, week, config, token) { + week[token.substr(0, 2)] = toInt(input); + }); + + addWeekParseToken(['gg', 'GG'], function (input, week, config, token) { + week[token] = hooks.parseTwoDigitYear(input); + }); + + // MOMENTS + + function getSetWeekYear (input) { + return getSetWeekYearHelper.call(this, + input, + this.week(), + this.weekday(), + this.localeData()._week.dow, + this.localeData()._week.doy); + } + + function getSetISOWeekYear (input) { + return getSetWeekYearHelper.call(this, + input, this.isoWeek(), this.isoWeekday(), 1, 4); + } + + function getISOWeeksInYear () { + return weeksInYear(this.year(), 1, 4); + } + + function getWeeksInYear () { + var weekInfo = this.localeData()._week; + return weeksInYear(this.year(), weekInfo.dow, weekInfo.doy); + } + + function getSetWeekYearHelper(input, week, weekday, dow, doy) { + var weeksTarget; + if (input == null) { + return weekOfYear(this, dow, doy).year; + } else { + weeksTarget = weeksInYear(input, dow, doy); + if (week > weeksTarget) { + week = weeksTarget; + } + return setWeekAll.call(this, input, week, weekday, dow, doy); + } + } + + function setWeekAll(weekYear, week, weekday, dow, doy) { + var dayOfYearData = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy), + date = createUTCDate(dayOfYearData.year, 0, dayOfYearData.dayOfYear); + + this.year(date.getUTCFullYear()); + this.month(date.getUTCMonth()); + this.date(date.getUTCDate()); + return this; + } + + // FORMATTING + + addFormatToken('Q', 0, 'Qo', 'quarter'); + + // ALIASES + + addUnitAlias('quarter', 'Q'); + + // PRIORITY + + addUnitPriority('quarter', 7); + + // PARSING + + addRegexToken('Q', match1); + addParseToken('Q', function (input, array) { + array[MONTH] = (toInt(input) - 1) * 3; + }); + + // MOMENTS + + function getSetQuarter (input) { + return input == null ? Math.ceil((this.month() + 1) / 3) : this.month((input - 1) * 3 + this.month() % 3); + } + + // FORMATTING + + addFormatToken('D', ['DD', 2], 'Do', 'date'); + + // ALIASES + + addUnitAlias('date', 'D'); + + // PRIORITY + addUnitPriority('date', 9); + + // PARSING + + addRegexToken('D', match1to2); + addRegexToken('DD', match1to2, match2); + addRegexToken('Do', function (isStrict, locale) { + // TODO: Remove "ordinalParse" fallback in next major release. + return isStrict ? + (locale._dayOfMonthOrdinalParse || locale._ordinalParse) : + locale._dayOfMonthOrdinalParseLenient; + }); + + addParseToken(['D', 'DD'], DATE); + addParseToken('Do', function (input, array) { + array[DATE] = toInt(input.match(match1to2)[0]); + }); + + // MOMENTS + + var getSetDayOfMonth = makeGetSet('Date', true); + + // FORMATTING + + addFormatToken('DDD', ['DDDD', 3], 'DDDo', 'dayOfYear'); + + // ALIASES + + addUnitAlias('dayOfYear', 'DDD'); + + // PRIORITY + addUnitPriority('dayOfYear', 4); + + // PARSING + + addRegexToken('DDD', match1to3); + addRegexToken('DDDD', match3); + addParseToken(['DDD', 'DDDD'], function (input, array, config) { + config._dayOfYear = toInt(input); + }); + + // HELPERS + + // MOMENTS + + function getSetDayOfYear (input) { + var dayOfYear = Math.round((this.clone().startOf('day') - this.clone().startOf('year')) / 864e5) + 1; + return input == null ? dayOfYear : this.add((input - dayOfYear), 'd'); + } + + // FORMATTING + + addFormatToken('m', ['mm', 2], 0, 'minute'); + + // ALIASES + + addUnitAlias('minute', 'm'); + + // PRIORITY + + addUnitPriority('minute', 14); + + // PARSING + + addRegexToken('m', match1to2); + addRegexToken('mm', match1to2, match2); + addParseToken(['m', 'mm'], MINUTE); + + // MOMENTS + + var getSetMinute = makeGetSet('Minutes', false); + + // FORMATTING + + addFormatToken('s', ['ss', 2], 0, 'second'); + + // ALIASES + + addUnitAlias('second', 's'); + + // PRIORITY + + addUnitPriority('second', 15); + + // PARSING + + addRegexToken('s', match1to2); + addRegexToken('ss', match1to2, match2); + addParseToken(['s', 'ss'], SECOND); + + // MOMENTS + + var getSetSecond = makeGetSet('Seconds', false); + + // FORMATTING + + addFormatToken('S', 0, 0, function () { + return ~~(this.millisecond() / 100); + }); + + addFormatToken(0, ['SS', 2], 0, function () { + return ~~(this.millisecond() / 10); + }); + + addFormatToken(0, ['SSS', 3], 0, 'millisecond'); + addFormatToken(0, ['SSSS', 4], 0, function () { + return this.millisecond() * 10; + }); + addFormatToken(0, ['SSSSS', 5], 0, function () { + return this.millisecond() * 100; + }); + addFormatToken(0, ['SSSSSS', 6], 0, function () { + return this.millisecond() * 1000; + }); + addFormatToken(0, ['SSSSSSS', 7], 0, function () { + return this.millisecond() * 10000; + }); + addFormatToken(0, ['SSSSSSSS', 8], 0, function () { + return this.millisecond() * 100000; + }); + addFormatToken(0, ['SSSSSSSSS', 9], 0, function () { + return this.millisecond() * 1000000; + }); + + + // ALIASES + + addUnitAlias('millisecond', 'ms'); + + // PRIORITY + + addUnitPriority('millisecond', 16); + + // PARSING + + addRegexToken('S', match1to3, match1); + addRegexToken('SS', match1to3, match2); + addRegexToken('SSS', match1to3, match3); + + var token; + for (token = 'SSSS'; token.length <= 9; token += 'S') { + addRegexToken(token, matchUnsigned); + } + + function parseMs(input, array) { + array[MILLISECOND] = toInt(('0.' + input) * 1000); + } + + for (token = 'S'; token.length <= 9; token += 'S') { + addParseToken(token, parseMs); + } + // MOMENTS + + var getSetMillisecond = makeGetSet('Milliseconds', false); + + // FORMATTING + + addFormatToken('z', 0, 0, 'zoneAbbr'); + addFormatToken('zz', 0, 0, 'zoneName'); + + // MOMENTS + + function getZoneAbbr () { + return this._isUTC ? 'UTC' : ''; + } + + function getZoneName () { + return this._isUTC ? 'Coordinated Universal Time' : ''; + } + + var proto = Moment.prototype; + + proto.add = add; + proto.calendar = calendar$1; + proto.clone = clone; + proto.diff = diff; + proto.endOf = endOf; + proto.format = format; + proto.from = from; + proto.fromNow = fromNow; + proto.to = to; + proto.toNow = toNow; + proto.get = stringGet; + proto.invalidAt = invalidAt; + proto.isAfter = isAfter; + proto.isBefore = isBefore; + proto.isBetween = isBetween; + proto.isSame = isSame; + proto.isSameOrAfter = isSameOrAfter; + proto.isSameOrBefore = isSameOrBefore; + proto.isValid = isValid$2; + proto.lang = lang; + proto.locale = locale; + proto.localeData = localeData; + proto.max = prototypeMax; + proto.min = prototypeMin; + proto.parsingFlags = parsingFlags; + proto.set = stringSet; + proto.startOf = startOf; + proto.subtract = subtract; + proto.toArray = toArray; + proto.toObject = toObject; + proto.toDate = toDate; + proto.toISOString = toISOString; + proto.inspect = inspect; + proto.toJSON = toJSON; + proto.toString = toString; + proto.unix = unix; + proto.valueOf = valueOf; + proto.creationData = creationData; + proto.year = getSetYear; + proto.isLeapYear = getIsLeapYear; + proto.weekYear = getSetWeekYear; + proto.isoWeekYear = getSetISOWeekYear; + proto.quarter = proto.quarters = getSetQuarter; + proto.month = getSetMonth; + proto.daysInMonth = getDaysInMonth; + proto.week = proto.weeks = getSetWeek; + proto.isoWeek = proto.isoWeeks = getSetISOWeek; + proto.weeksInYear = getWeeksInYear; + proto.isoWeeksInYear = getISOWeeksInYear; + proto.date = getSetDayOfMonth; + proto.day = proto.days = getSetDayOfWeek; + proto.weekday = getSetLocaleDayOfWeek; + proto.isoWeekday = getSetISODayOfWeek; + proto.dayOfYear = getSetDayOfYear; + proto.hour = proto.hours = getSetHour; + proto.minute = proto.minutes = getSetMinute; + proto.second = proto.seconds = getSetSecond; + proto.millisecond = proto.milliseconds = getSetMillisecond; + proto.utcOffset = getSetOffset; + proto.utc = setOffsetToUTC; + proto.local = setOffsetToLocal; + proto.parseZone = setOffsetToParsedOffset; + proto.hasAlignedHourOffset = hasAlignedHourOffset; + proto.isDST = isDaylightSavingTime; + proto.isLocal = isLocal; + proto.isUtcOffset = isUtcOffset; + proto.isUtc = isUtc; + proto.isUTC = isUtc; + proto.zoneAbbr = getZoneAbbr; + proto.zoneName = getZoneName; + proto.dates = deprecate('dates accessor is deprecated. Use date instead.', getSetDayOfMonth); + proto.months = deprecate('months accessor is deprecated. Use month instead', getSetMonth); + proto.years = deprecate('years accessor is deprecated. Use year instead', getSetYear); + proto.zone = deprecate('moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/', getSetZone); + proto.isDSTShifted = deprecate('isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information', isDaylightSavingTimeShifted); + + function createUnix (input) { + return createLocal(input * 1000); + } + + function createInZone () { + return createLocal.apply(null, arguments).parseZone(); + } + + function preParsePostFormat (string) { + return string; + } + + var proto$1 = Locale.prototype; + + proto$1.calendar = calendar; + proto$1.longDateFormat = longDateFormat; + proto$1.invalidDate = invalidDate; + proto$1.ordinal = ordinal; + proto$1.preparse = preParsePostFormat; + proto$1.postformat = preParsePostFormat; + proto$1.relativeTime = relativeTime; + proto$1.pastFuture = pastFuture; + proto$1.set = set; + + proto$1.months = localeMonths; + proto$1.monthsShort = localeMonthsShort; + proto$1.monthsParse = localeMonthsParse; + proto$1.monthsRegex = monthsRegex; + proto$1.monthsShortRegex = monthsShortRegex; + proto$1.week = localeWeek; + proto$1.firstDayOfYear = localeFirstDayOfYear; + proto$1.firstDayOfWeek = localeFirstDayOfWeek; + + proto$1.weekdays = localeWeekdays; + proto$1.weekdaysMin = localeWeekdaysMin; + proto$1.weekdaysShort = localeWeekdaysShort; + proto$1.weekdaysParse = localeWeekdaysParse; + + proto$1.weekdaysRegex = weekdaysRegex; + proto$1.weekdaysShortRegex = weekdaysShortRegex; + proto$1.weekdaysMinRegex = weekdaysMinRegex; + + proto$1.isPM = localeIsPM; + proto$1.meridiem = localeMeridiem; + + function get$1 (format, index, field, setter) { + var locale = getLocale(); + var utc = createUTC().set(setter, index); + return locale[field](utc, format); + } + + function listMonthsImpl (format, index, field) { + if (isNumber(format)) { + index = format; + format = undefined; + } + + format = format || ''; + + if (index != null) { + return get$1(format, index, field, 'month'); + } + + var i; + var out = []; + for (i = 0; i < 12; i++) { + out[i] = get$1(format, i, field, 'month'); + } + return out; + } + + // () + // (5) + // (fmt, 5) + // (fmt) + // (true) + // (true, 5) + // (true, fmt, 5) + // (true, fmt) + function listWeekdaysImpl (localeSorted, format, index, field) { + if (typeof localeSorted === 'boolean') { + if (isNumber(format)) { + index = format; + format = undefined; + } + + format = format || ''; + } else { + format = localeSorted; + index = format; + localeSorted = false; + + if (isNumber(format)) { + index = format; + format = undefined; + } + + format = format || ''; + } + + var locale = getLocale(), + shift = localeSorted ? locale._week.dow : 0; + + if (index != null) { + return get$1(format, (index + shift) % 7, field, 'day'); + } + + var i; + var out = []; + for (i = 0; i < 7; i++) { + out[i] = get$1(format, (i + shift) % 7, field, 'day'); + } + return out; + } + + function listMonths (format, index) { + return listMonthsImpl(format, index, 'months'); + } + + function listMonthsShort (format, index) { + return listMonthsImpl(format, index, 'monthsShort'); + } + + function listWeekdays (localeSorted, format, index) { + return listWeekdaysImpl(localeSorted, format, index, 'weekdays'); + } + + function listWeekdaysShort (localeSorted, format, index) { + return listWeekdaysImpl(localeSorted, format, index, 'weekdaysShort'); + } + + function listWeekdaysMin (localeSorted, format, index) { + return listWeekdaysImpl(localeSorted, format, index, 'weekdaysMin'); + } + + getSetGlobalLocale('en', { + dayOfMonthOrdinalParse: /\d{1,2}(th|st|nd|rd)/, + ordinal : function (number) { + var b = number % 10, + output = (toInt(number % 100 / 10) === 1) ? 'th' : + (b === 1) ? 'st' : + (b === 2) ? 'nd' : + (b === 3) ? 'rd' : 'th'; + return number + output; + } + }); + + // Side effect imports + + hooks.lang = deprecate('moment.lang is deprecated. Use moment.locale instead.', getSetGlobalLocale); + hooks.langData = deprecate('moment.langData is deprecated. Use moment.localeData instead.', getLocale); + + var mathAbs = Math.abs; + + function abs () { + var data = this._data; + + this._milliseconds = mathAbs(this._milliseconds); + this._days = mathAbs(this._days); + this._months = mathAbs(this._months); + + data.milliseconds = mathAbs(data.milliseconds); + data.seconds = mathAbs(data.seconds); + data.minutes = mathAbs(data.minutes); + data.hours = mathAbs(data.hours); + data.months = mathAbs(data.months); + data.years = mathAbs(data.years); + + return this; + } + + function addSubtract$1 (duration, input, value, direction) { + var other = createDuration(input, value); + + duration._milliseconds += direction * other._milliseconds; + duration._days += direction * other._days; + duration._months += direction * other._months; + + return duration._bubble(); + } + + // supports only 2.0-style add(1, 's') or add(duration) + function add$1 (input, value) { + return addSubtract$1(this, input, value, 1); + } + + // supports only 2.0-style subtract(1, 's') or subtract(duration) + function subtract$1 (input, value) { + return addSubtract$1(this, input, value, -1); + } + + function absCeil (number) { + if (number < 0) { + return Math.floor(number); + } else { + return Math.ceil(number); + } + } + + function bubble () { + var milliseconds = this._milliseconds; + var days = this._days; + var months = this._months; + var data = this._data; + var seconds, minutes, hours, years, monthsFromDays; + + // if we have a mix of positive and negative values, bubble down first + // check: https://github.com/moment/moment/issues/2166 + if (!((milliseconds >= 0 && days >= 0 && months >= 0) || + (milliseconds <= 0 && days <= 0 && months <= 0))) { + milliseconds += absCeil(monthsToDays(months) + days) * 864e5; + days = 0; + months = 0; + } + + // The following code bubbles up values, see the tests for + // examples of what that means. + data.milliseconds = milliseconds % 1000; + + seconds = absFloor(milliseconds / 1000); + data.seconds = seconds % 60; + + minutes = absFloor(seconds / 60); + data.minutes = minutes % 60; + + hours = absFloor(minutes / 60); + data.hours = hours % 24; + + days += absFloor(hours / 24); + + // convert days to months + monthsFromDays = absFloor(daysToMonths(days)); + months += monthsFromDays; + days -= absCeil(monthsToDays(monthsFromDays)); + + // 12 months -> 1 year + years = absFloor(months / 12); + months %= 12; + + data.days = days; + data.months = months; + data.years = years; + + return this; + } + + function daysToMonths (days) { + // 400 years have 146097 days (taking into account leap year rules) + // 400 years have 12 months === 4800 + return days * 4800 / 146097; + } + + function monthsToDays (months) { + // the reverse of daysToMonths + return months * 146097 / 4800; + } + + function as (units) { + if (!this.isValid()) { + return NaN; + } + var days; + var months; + var milliseconds = this._milliseconds; + + units = normalizeUnits(units); + + if (units === 'month' || units === 'quarter' || units === 'year') { + days = this._days + milliseconds / 864e5; + months = this._months + daysToMonths(days); + switch (units) { + case 'month': return months; + case 'quarter': return months / 3; + case 'year': return months / 12; + } + } else { + // handle milliseconds separately because of floating point math errors (issue #1867) + days = this._days + Math.round(monthsToDays(this._months)); + switch (units) { + case 'week' : return days / 7 + milliseconds / 6048e5; + case 'day' : return days + milliseconds / 864e5; + case 'hour' : return days * 24 + milliseconds / 36e5; + case 'minute' : return days * 1440 + milliseconds / 6e4; + case 'second' : return days * 86400 + milliseconds / 1000; + // Math.floor prevents floating point math errors here + case 'millisecond': return Math.floor(days * 864e5) + milliseconds; + default: throw new Error('Unknown unit ' + units); + } + } + } + + // TODO: Use this.as('ms')? + function valueOf$1 () { + if (!this.isValid()) { + return NaN; + } + return ( + this._milliseconds + + this._days * 864e5 + + (this._months % 12) * 2592e6 + + toInt(this._months / 12) * 31536e6 + ); + } + + function makeAs (alias) { + return function () { + return this.as(alias); + }; + } + + var asMilliseconds = makeAs('ms'); + var asSeconds = makeAs('s'); + var asMinutes = makeAs('m'); + var asHours = makeAs('h'); + var asDays = makeAs('d'); + var asWeeks = makeAs('w'); + var asMonths = makeAs('M'); + var asQuarters = makeAs('Q'); + var asYears = makeAs('y'); + + function clone$1 () { + return createDuration(this); + } + + function get$2 (units) { + units = normalizeUnits(units); + return this.isValid() ? this[units + 's']() : NaN; + } + + function makeGetter(name) { + return function () { + return this.isValid() ? this._data[name] : NaN; + }; + } + + var milliseconds = makeGetter('milliseconds'); + var seconds = makeGetter('seconds'); + var minutes = makeGetter('minutes'); + var hours = makeGetter('hours'); + var days = makeGetter('days'); + var months = makeGetter('months'); + var years = makeGetter('years'); + + function weeks () { + return absFloor(this.days() / 7); + } + + var round = Math.round; + var thresholds = { + ss: 44, // a few seconds to seconds + s : 45, // seconds to minute + m : 45, // minutes to hour + h : 22, // hours to day + d : 26, // days to month + M : 11 // months to year + }; + + // helper function for moment.fn.from, moment.fn.fromNow, and moment.duration.fn.humanize + function substituteTimeAgo(string, number, withoutSuffix, isFuture, locale) { + return locale.relativeTime(number || 1, !!withoutSuffix, string, isFuture); + } + + function relativeTime$1 (posNegDuration, withoutSuffix, locale) { + var duration = createDuration(posNegDuration).abs(); + var seconds = round(duration.as('s')); + var minutes = round(duration.as('m')); + var hours = round(duration.as('h')); + var days = round(duration.as('d')); + var months = round(duration.as('M')); + var years = round(duration.as('y')); + + var a = seconds <= thresholds.ss && ['s', seconds] || + seconds < thresholds.s && ['ss', seconds] || + minutes <= 1 && ['m'] || + minutes < thresholds.m && ['mm', minutes] || + hours <= 1 && ['h'] || + hours < thresholds.h && ['hh', hours] || + days <= 1 && ['d'] || + days < thresholds.d && ['dd', days] || + months <= 1 && ['M'] || + months < thresholds.M && ['MM', months] || + years <= 1 && ['y'] || ['yy', years]; + + a[2] = withoutSuffix; + a[3] = +posNegDuration > 0; + a[4] = locale; + return substituteTimeAgo.apply(null, a); + } + + // This function allows you to set the rounding function for relative time strings + function getSetRelativeTimeRounding (roundingFunction) { + if (roundingFunction === undefined) { + return round; + } + if (typeof(roundingFunction) === 'function') { + round = roundingFunction; + return true; + } + return false; + } + + // This function allows you to set a threshold for relative time strings + function getSetRelativeTimeThreshold (threshold, limit) { + if (thresholds[threshold] === undefined) { + return false; + } + if (limit === undefined) { + return thresholds[threshold]; + } + thresholds[threshold] = limit; + if (threshold === 's') { + thresholds.ss = limit - 1; + } + return true; + } + + function humanize (withSuffix) { + if (!this.isValid()) { + return this.localeData().invalidDate(); + } + + var locale = this.localeData(); + var output = relativeTime$1(this, !withSuffix, locale); + + if (withSuffix) { + output = locale.pastFuture(+this, output); + } + + return locale.postformat(output); + } + + var abs$1 = Math.abs; + + function sign(x) { + return ((x > 0) - (x < 0)) || +x; + } + + function toISOString$1() { + // for ISO strings we do not use the normal bubbling rules: + // * milliseconds bubble up until they become hours + // * days do not bubble at all + // * months bubble up until they become years + // This is because there is no context-free conversion between hours and days + // (think of clock changes) + // and also not between days and months (28-31 days per month) + if (!this.isValid()) { + return this.localeData().invalidDate(); + } + + var seconds = abs$1(this._milliseconds) / 1000; + var days = abs$1(this._days); + var months = abs$1(this._months); + var minutes, hours, years; + + // 3600 seconds -> 60 minutes -> 1 hour + minutes = absFloor(seconds / 60); + hours = absFloor(minutes / 60); + seconds %= 60; + minutes %= 60; + + // 12 months -> 1 year + years = absFloor(months / 12); + months %= 12; + + + // inspired by https://github.com/dordille/moment-isoduration/blob/master/moment.isoduration.js + var Y = years; + var M = months; + var D = days; + var h = hours; + var m = minutes; + var s = seconds ? seconds.toFixed(3).replace(/\.?0+$/, '') : ''; + var total = this.asSeconds(); + + if (!total) { + // this is the same as C#'s (Noda) and python (isodate)... + // but not other JS (goog.date) + return 'P0D'; + } + + var totalSign = total < 0 ? '-' : ''; + var ymSign = sign(this._months) !== sign(total) ? '-' : ''; + var daysSign = sign(this._days) !== sign(total) ? '-' : ''; + var hmsSign = sign(this._milliseconds) !== sign(total) ? '-' : ''; + + return totalSign + 'P' + + (Y ? ymSign + Y + 'Y' : '') + + (M ? ymSign + M + 'M' : '') + + (D ? daysSign + D + 'D' : '') + + ((h || m || s) ? 'T' : '') + + (h ? hmsSign + h + 'H' : '') + + (m ? hmsSign + m + 'M' : '') + + (s ? hmsSign + s + 'S' : ''); + } + + var proto$2 = Duration.prototype; + + proto$2.isValid = isValid$1; + proto$2.abs = abs; + proto$2.add = add$1; + proto$2.subtract = subtract$1; + proto$2.as = as; + proto$2.asMilliseconds = asMilliseconds; + proto$2.asSeconds = asSeconds; + proto$2.asMinutes = asMinutes; + proto$2.asHours = asHours; + proto$2.asDays = asDays; + proto$2.asWeeks = asWeeks; + proto$2.asMonths = asMonths; + proto$2.asQuarters = asQuarters; + proto$2.asYears = asYears; + proto$2.valueOf = valueOf$1; + proto$2._bubble = bubble; + proto$2.clone = clone$1; + proto$2.get = get$2; + proto$2.milliseconds = milliseconds; + proto$2.seconds = seconds; + proto$2.minutes = minutes; + proto$2.hours = hours; + proto$2.days = days; + proto$2.weeks = weeks; + proto$2.months = months; + proto$2.years = years; + proto$2.humanize = humanize; + proto$2.toISOString = toISOString$1; + proto$2.toString = toISOString$1; + proto$2.toJSON = toISOString$1; + proto$2.locale = locale; + proto$2.localeData = localeData; + + proto$2.toIsoString = deprecate('toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)', toISOString$1); + proto$2.lang = lang; + + // Side effect imports + + // FORMATTING + + addFormatToken('X', 0, 0, 'unix'); + addFormatToken('x', 0, 0, 'valueOf'); + + // PARSING + + addRegexToken('x', matchSigned); + addRegexToken('X', matchTimestamp); + addParseToken('X', function (input, array, config) { + config._d = new Date(parseFloat(input, 10) * 1000); + }); + addParseToken('x', function (input, array, config) { + config._d = new Date(toInt(input)); + }); + + // Side effect imports + + + hooks.version = '2.24.0'; + + setHookCallback(createLocal); + + hooks.fn = proto; + hooks.min = min; + hooks.max = max; + hooks.now = now; + hooks.utc = createUTC; + hooks.unix = createUnix; + hooks.months = listMonths; + hooks.isDate = isDate; + hooks.locale = getSetGlobalLocale; + hooks.invalid = createInvalid; + hooks.duration = createDuration; + hooks.isMoment = isMoment; + hooks.weekdays = listWeekdays; + hooks.parseZone = createInZone; + hooks.localeData = getLocale; + hooks.isDuration = isDuration; + hooks.monthsShort = listMonthsShort; + hooks.weekdaysMin = listWeekdaysMin; + hooks.defineLocale = defineLocale; + hooks.updateLocale = updateLocale; + hooks.locales = listLocales; + hooks.weekdaysShort = listWeekdaysShort; + hooks.normalizeUnits = normalizeUnits; + hooks.relativeTimeRounding = getSetRelativeTimeRounding; + hooks.relativeTimeThreshold = getSetRelativeTimeThreshold; + hooks.calendarFormat = getCalendarFormat; + hooks.prototype = proto; + + // currently HTML5 input type only supports 24-hour formats + hooks.HTML5_FMT = { + DATETIME_LOCAL: 'YYYY-MM-DDTHH:mm', // + DATETIME_LOCAL_SECONDS: 'YYYY-MM-DDTHH:mm:ss', // + DATETIME_LOCAL_MS: 'YYYY-MM-DDTHH:mm:ss.SSS', // + DATE: 'YYYY-MM-DD', // + TIME: 'HH:mm', // + TIME_SECONDS: 'HH:mm:ss', // + TIME_MS: 'HH:mm:ss.SSS', // + WEEK: 'GGGG-[W]WW', // + MONTH: 'YYYY-MM' // + }; + + return hooks; + +}))); + +/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(327)(module))) + +/***/ }), +/* 71 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.tupleNum = exports.tuple = void 0; + +// https://stackoverflow.com/questions/46176165/ways-to-get-string-literal-type-of-array-values-without-enum-overhead +var tuple = function tuple() { + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + + return args; +}; + +exports.tuple = tuple; + +var tupleNum = function tupleNum() { + for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { + args[_key2] = arguments[_key2]; + } + + return args; +}; + +exports.tupleNum = tupleNum; +//# sourceMappingURL=type.js.map + + +/***/ }), +/* 72 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var React = _interopRequireWildcard(__webpack_require__(0)); + +var PropTypes = _interopRequireWildcard(__webpack_require__(1)); + +var _default = _interopRequireDefault(__webpack_require__(421)); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; } + +function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } + +function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); } + +function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } + +function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); } + +function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); } + +function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } + +var LocaleReceiver = +/*#__PURE__*/ +function (_React$Component) { + _inherits(LocaleReceiver, _React$Component); + + function LocaleReceiver() { + _classCallCheck(this, LocaleReceiver); + + return _possibleConstructorReturn(this, _getPrototypeOf(LocaleReceiver).apply(this, arguments)); + } + + _createClass(LocaleReceiver, [{ + key: "getLocale", + value: function getLocale() { + var _this$props = this.props, + componentName = _this$props.componentName, + defaultLocale = _this$props.defaultLocale; + var locale = defaultLocale || _default["default"][componentName || 'global']; + var antLocale = this.context.antLocale; + var localeFromContext = componentName && antLocale ? antLocale[componentName] : {}; + return _extends(_extends({}, typeof locale === 'function' ? locale() : locale), localeFromContext || {}); + } + }, { + key: "getLocaleCode", + value: function getLocaleCode() { + var antLocale = this.context.antLocale; + var localeCode = antLocale && antLocale.locale; // Had use LocaleProvide but didn't set locale + + if (antLocale && antLocale.exist && !localeCode) { + return _default["default"].locale; + } + + return localeCode; + } + }, { + key: "render", + value: function render() { + return this.props.children(this.getLocale(), this.getLocaleCode(), this.context.antLocale); + } + }]); + + return LocaleReceiver; +}(React.Component); + +exports["default"] = LocaleReceiver; +LocaleReceiver.defaultProps = { + componentName: 'global' +}; +LocaleReceiver.contextTypes = { + antLocale: PropTypes.object +}; +//# sourceMappingURL=LocaleReceiver.js.map + + +/***/ }), +/* 73 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +exports.__esModule = true; + +exports.default = function (obj, keys) { + var target = {}; + + for (var i in obj) { + if (keys.indexOf(i) >= 0) continue; + if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; + target[i] = obj[i]; + } + + return target; +}; + +/***/ }), +/* 74 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _button = _interopRequireDefault(__webpack_require__(644)); + +var _buttonGroup = _interopRequireDefault(__webpack_require__(646)); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +_button["default"].Group = _buttonGroup["default"]; +var _default = _button["default"]; +exports["default"] = _default; +//# sourceMappingURL=index.js.map + + +/***/ }), +/* 75 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +__webpack_require__(31); + +__webpack_require__(782); +//# sourceMappingURL=css.js.map + + +/***/ }), +/* 76 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var React = _interopRequireWildcard(__webpack_require__(0)); + +var PropTypes = _interopRequireWildcard(__webpack_require__(1)); + +var _classnames = _interopRequireDefault(__webpack_require__(3)); + +var _omit = _interopRequireDefault(__webpack_require__(46)); + +var _debounce = _interopRequireDefault(__webpack_require__(375)); + +var _configProvider = __webpack_require__(14); + +var _type = __webpack_require__(71); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; } + +function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } + +function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } + +function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); } + +function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } + +function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); } + +function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); } + +function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } + +var __rest = void 0 && (void 0).__rest || function (s, e) { + var t = {}; + + for (var p in s) { + if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p]; + } + + if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { + if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]]; + } + return t; +}; + +var SpinSizes = (0, _type.tuple)('small', 'default', 'large'); // Render indicator + +var defaultIndicator = null; + +function renderIndicator(prefixCls, props) { + var indicator = props.indicator; + var dotClassName = "".concat(prefixCls, "-dot"); // should not be render default indicator when indicator value is null + + if (indicator === null) { + return null; + } + + if (React.isValidElement(indicator)) { + return React.cloneElement(indicator, { + className: (0, _classnames["default"])(indicator.props.className, dotClassName) + }); + } + + if (React.isValidElement(defaultIndicator)) { + return React.cloneElement(defaultIndicator, { + className: (0, _classnames["default"])(defaultIndicator.props.className, dotClassName) + }); + } + + return React.createElement("span", { + className: (0, _classnames["default"])(dotClassName, "".concat(prefixCls, "-dot-spin")) + }, React.createElement("i", { + className: "".concat(prefixCls, "-dot-item") + }), React.createElement("i", { + className: "".concat(prefixCls, "-dot-item") + }), React.createElement("i", { + className: "".concat(prefixCls, "-dot-item") + }), React.createElement("i", { + className: "".concat(prefixCls, "-dot-item") + })); +} + +function shouldDelay(spinning, delay) { + return !!spinning && !!delay && !isNaN(Number(delay)); +} + +var Spin = +/*#__PURE__*/ +function (_React$Component) { + _inherits(Spin, _React$Component); + + function Spin(props) { + var _this; + + _classCallCheck(this, Spin); + + _this = _possibleConstructorReturn(this, _getPrototypeOf(Spin).call(this, props)); + + _this.debouncifyUpdateSpinning = function (props) { + var _ref = props || _this.props, + delay = _ref.delay; + + if (delay) { + _this.cancelExistingSpin(); + + _this.updateSpinning = (0, _debounce["default"])(_this.originalUpdateSpinning, delay); + } + }; + + _this.updateSpinning = function () { + var spinning = _this.props.spinning; + var currentSpinning = _this.state.spinning; + + if (currentSpinning !== spinning) { + _this.setState({ + spinning: spinning + }); + } + }; + + _this.renderSpin = function (_ref2) { + var _classNames; + + var getPrefixCls = _ref2.getPrefixCls; + + var _a = _this.props, + customizePrefixCls = _a.prefixCls, + className = _a.className, + size = _a.size, + tip = _a.tip, + wrapperClassName = _a.wrapperClassName, + style = _a.style, + restProps = __rest(_a, ["prefixCls", "className", "size", "tip", "wrapperClassName", "style"]); + + var spinning = _this.state.spinning; + var prefixCls = getPrefixCls('spin', customizePrefixCls); + var spinClassName = (0, _classnames["default"])(prefixCls, (_classNames = {}, _defineProperty(_classNames, "".concat(prefixCls, "-sm"), size === 'small'), _defineProperty(_classNames, "".concat(prefixCls, "-lg"), size === 'large'), _defineProperty(_classNames, "".concat(prefixCls, "-spinning"), spinning), _defineProperty(_classNames, "".concat(prefixCls, "-show-text"), !!tip), _classNames), className); // fix https://fb.me/react-unknown-prop + + var divProps = (0, _omit["default"])(restProps, ['spinning', 'delay', 'indicator']); + var spinElement = React.createElement("div", _extends({}, divProps, { + style: style, + className: spinClassName + }), renderIndicator(prefixCls, _this.props), tip ? React.createElement("div", { + className: "".concat(prefixCls, "-text") + }, tip) : null); + + if (_this.isNestedPattern()) { + var containerClassName = (0, _classnames["default"])("".concat(prefixCls, "-container"), _defineProperty({}, "".concat(prefixCls, "-blur"), spinning)); + return React.createElement("div", _extends({}, divProps, { + className: (0, _classnames["default"])("".concat(prefixCls, "-nested-loading"), wrapperClassName) + }), spinning && React.createElement("div", { + key: "loading" + }, spinElement), React.createElement("div", { + className: containerClassName, + key: "container" + }, _this.props.children)); + } + + return spinElement; + }; + + var spinning = props.spinning, + delay = props.delay; + var shouldBeDelayed = shouldDelay(spinning, delay); + _this.state = { + spinning: spinning && !shouldBeDelayed + }; + _this.originalUpdateSpinning = _this.updateSpinning; + + _this.debouncifyUpdateSpinning(props); + + return _this; + } + + _createClass(Spin, [{ + key: "componentDidMount", + value: function componentDidMount() { + this.updateSpinning(); + } + }, { + key: "componentDidUpdate", + value: function componentDidUpdate() { + this.debouncifyUpdateSpinning(); + this.updateSpinning(); + } + }, { + key: "componentWillUnmount", + value: function componentWillUnmount() { + this.cancelExistingSpin(); + } + }, { + key: "cancelExistingSpin", + value: function cancelExistingSpin() { + var updateSpinning = this.updateSpinning; + + if (updateSpinning && updateSpinning.cancel) { + updateSpinning.cancel(); + } + } + }, { + key: "isNestedPattern", + value: function isNestedPattern() { + return !!(this.props && this.props.children); + } + }, { + key: "render", + value: function render() { + return React.createElement(_configProvider.ConfigConsumer, null, this.renderSpin); + } + }], [{ + key: "setDefaultIndicator", + value: function setDefaultIndicator(indicator) { + defaultIndicator = indicator; + } + }]); + + return Spin; +}(React.Component); + +Spin.defaultProps = { + spinning: true, + size: 'default', + wrapperClassName: '' +}; +Spin.propTypes = { + prefixCls: PropTypes.string, + className: PropTypes.string, + spinning: PropTypes.bool, + size: PropTypes.oneOf(SpinSizes), + wrapperClassName: PropTypes.string, + indicator: PropTypes.element +}; +var _default = Spin; +exports["default"] = _default; +//# sourceMappingURL=index.js.map + + +/***/ }), +/* 77 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__MemoryRouter__ = __webpack_require__(218); +/* unused harmony reexport MemoryRouter */ +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__Prompt__ = __webpack_require__(221); +/* unused harmony reexport Prompt */ +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__Redirect__ = __webpack_require__(222); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return __WEBPACK_IMPORTED_MODULE_2__Redirect__["a"]; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__Route__ = __webpack_require__(135); +/* unused harmony reexport Route */ +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__Router__ = __webpack_require__(98); +/* unused harmony reexport Router */ +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__StaticRouter__ = __webpack_require__(223); +/* unused harmony reexport StaticRouter */ +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__Switch__ = __webpack_require__(224); +/* unused harmony reexport Switch */ +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__generatePath__ = __webpack_require__(136); +/* unused harmony reexport generatePath */ +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__matchPath__ = __webpack_require__(99); +/* unused harmony reexport matchPath */ +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__withRouter__ = __webpack_require__(225); +/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return __WEBPACK_IMPORTED_MODULE_9__withRouter__["a"]; }); + + + + + + + + + + + + + + + + + + + + + +/***/ }), +/* 78 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var _interopRequireDefault = __webpack_require__(2); + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.capitalize = capitalize; +exports.contains = contains; +exports.findIndex = findIndex; +exports.find = find; +exports.createChainedFunction = createChainedFunction; + +var _typeof2 = _interopRequireDefault(__webpack_require__(253)); + +var _keys = _interopRequireDefault(__webpack_require__(50)); + +var _warning = _interopRequireDefault(__webpack_require__(15)); + +// weak +function capitalize(string) { + if (false) { + throw new Error('Material-UI: capitalize(string) expects a string argument.'); + } + + return string.charAt(0).toUpperCase() + string.slice(1); +} + +function contains(obj, pred) { + return (0, _keys.default)(pred).every(function (key) { + return obj.hasOwnProperty(key) && obj[key] === pred[key]; + }); +} + +function findIndex(arr, pred) { + var predType = (0, _typeof2.default)(pred); + + for (var i = 0; i < arr.length; i += 1) { + if (predType === 'function' && !!pred(arr[i], i, arr) === true) { + return i; + } + + if (predType === 'object' && contains(arr[i], pred)) { + return i; + } + + if (['string', 'number', 'boolean'].indexOf(predType) !== -1) { + return arr.indexOf(pred); + } + } + + return -1; +} + +function find(arr, pred) { + var index = findIndex(arr, pred); + return index > -1 ? arr[index] : undefined; +} +/** + * Safe chained function + * + * Will only create a new function if needed, + * otherwise will pass back existing functions or null. + * + * @param {function} functions to chain + * @returns {function|null} + */ + + +function createChainedFunction() { + for (var _len = arguments.length, funcs = new Array(_len), _key = 0; _key < _len; _key++) { + funcs[_key] = arguments[_key]; + } + + return funcs.filter(function (func) { + return func != null; + }).reduce(function (acc, func) { + false ? (0, _warning.default)(typeof func === 'function', 'Material-UI: invalid Argument Type, must only provide functions, undefined, or null.') : void 0; + return function chainedFunction() { + for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { + args[_key2] = arguments[_key2]; + } + + acc.apply(this, args); + func.apply(this, args); + }; + }, function () {}); +} + +/***/ }), +/* 79 */ +/***/ (function(module, exports, __webpack_require__) { + +module.exports = __webpack_require__(831); + + +/***/ }), +/* 80 */ +/***/ (function(module, exports, __webpack_require__) { + +// 19.1.2.14 / 15.2.3.14 Object.keys(O) +var $keys = __webpack_require__(237); +var enumBugKeys = __webpack_require__(145); + +module.exports = Object.keys || function keys(O) { + return $keys(O, enumBugKeys); +}; + + +/***/ }), +/* 81 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var _interopRequireDefault = __webpack_require__(2); + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = exports.isNumber = exports.isString = exports.formatMs = exports.duration = exports.easing = void 0; + +var _keys = _interopRequireDefault(__webpack_require__(50)); + +var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(6)); + +var _isNan = _interopRequireDefault(__webpack_require__(579)); + +var _warning = _interopRequireDefault(__webpack_require__(15)); + +/* eslint-disable no-param-reassign */ +// Follow https://material.google.com/motion/duration-easing.html#duration-easing-natural-easing-curves +// to learn the context in which each easing should be used. +var easing = { + // This is the most common easing curve. + easeInOut: 'cubic-bezier(0.4, 0, 0.2, 1)', + // Objects enter the screen at full velocity from off-screen and + // slowly decelerate to a resting point. + easeOut: 'cubic-bezier(0.0, 0, 0.2, 1)', + // Objects leave the screen at full velocity. They do not decelerate when off-screen. + easeIn: 'cubic-bezier(0.4, 0, 1, 1)', + // The sharp curve is used by objects that may return to the screen at any time. + sharp: 'cubic-bezier(0.4, 0, 0.6, 1)' +}; // Follow https://material.io/guidelines/motion/duration-easing.html#duration-easing-common-durations +// to learn when use what timing + +exports.easing = easing; +var duration = { + shortest: 150, + shorter: 200, + short: 250, + // most basic recommended timing + standard: 300, + // this is to be used in complex animations + complex: 375, + // recommended when something is entering screen + enteringScreen: 225, + // recommended when something is leaving screen + leavingScreen: 195 +}; +exports.duration = duration; + +var formatMs = function formatMs(milliseconds) { + return "".concat(Math.round(milliseconds), "ms"); +}; + +exports.formatMs = formatMs; + +var isString = function isString(value) { + return typeof value === 'string'; +}; + +exports.isString = isString; + +var isNumber = function isNumber(value) { + return !(0, _isNan.default)(parseFloat(value)); +}; +/** + * @param {string|Array} props + * @param {object} param + * @param {string} param.prop + * @param {number} param.duration + * @param {string} param.easing + * @param {number} param.delay + */ + + +exports.isNumber = isNumber; +var _default = { + easing: easing, + duration: duration, + create: function create() { + var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ['all']; + var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; + return function () { + var _options$duration = options.duration, + durationOption = _options$duration === void 0 ? duration.standard : _options$duration, + _options$easing = options.easing, + easingOption = _options$easing === void 0 ? easing.easeInOut : _options$easing, + _options$delay = options.delay, + delay = _options$delay === void 0 ? 0 : _options$delay, + other = (0, _objectWithoutProperties2.default)(options, ["duration", "easing", "delay"]); + false ? (0, _warning.default)(isString(props) || Array.isArray(props), 'Material-UI: argument "props" must be a string or Array.') : void 0; + false ? (0, _warning.default)(isNumber(durationOption) || isString(durationOption), "Material-UI: argument \"duration\" must be a number or a string but found ".concat(durationOption, ".")) : void 0; + false ? (0, _warning.default)(isString(easingOption), 'Material-UI: argument "easing" must be a string.') : void 0; + false ? (0, _warning.default)(isNumber(delay) || isString(delay), 'Material-UI: argument "delay" must be a number or a string.') : void 0; + false ? (0, _warning.default)((0, _keys.default)(other).length === 0, "Material-UI: unrecognized argument(s) [".concat((0, _keys.default)(other).join(','), "]")) : void 0; + return (Array.isArray(props) ? props : [props]).map(function (animatedProp) { + return "".concat(animatedProp, " ").concat(typeof durationOption === 'string' ? durationOption : formatMs(durationOption), " ").concat(easingOption, " ").concat(typeof delay === 'string' ? delay : formatMs(delay)); + }).join(','); + }(); + }, + getAutoHeightDuration: function getAutoHeightDuration(height) { + if (!height) { + return 0; + } + + var constant = height / 36; // https://www.wolframalpha.com/input/?i=(4+%2B+15+*+(x+%2F+36+)+**+0.25+%2B+(x+%2F+36)+%2F+5)+*+10 + + return Math.round((4 + 15 * Math.pow(constant, 0.25) + constant / 5) * 10); + } +}; +exports.default = _default; + +/***/ }), +/* 82 */ +/***/ (function(module, exports) { + +module.exports = function (bitmap, value) { + return { + enumerable: !(bitmap & 1), + configurable: !(bitmap & 2), + writable: !(bitmap & 4), + value: value + }; +}; + + +/***/ }), +/* 83 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); + +var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; + +var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); + +var _createRule = __webpack_require__(107); + +var _createRule2 = _interopRequireDefault(_createRule); + +var _linkRule = __webpack_require__(264); + +var _linkRule2 = _interopRequireDefault(_linkRule); + +var _StyleRule = __webpack_require__(67); + +var _StyleRule2 = _interopRequireDefault(_StyleRule); + +var _escape = __webpack_require__(549); + +var _escape2 = _interopRequireDefault(_escape); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +/** + * Contains rules objects and allows adding/removing etc. + * Is used for e.g. by `StyleSheet` or `ConditionalRule`. + */ +var RuleList = function () { + + // Original styles object. + function RuleList(options) { + var _this = this; + + _classCallCheck(this, RuleList); + + this.map = {}; + this.raw = {}; + this.index = []; + + this.update = function (name, data) { + var _options = _this.options, + plugins = _options.jss.plugins, + sheet = _options.sheet; + + if (typeof name === 'string') { + plugins.onUpdate(data, _this.get(name), sheet); + } else { + for (var index = 0; index < _this.index.length; index++) { + plugins.onUpdate(name, _this.index[index], sheet); + } + } + }; + + this.options = options; + this.classes = options.classes; + } + + /** + * Create and register rule. + * + * Will not render after Style Sheet was rendered the first time. + */ + + + // Used to ensure correct rules order. + + // Rules registry for access by .get() method. + // It contains the same rule registered by name and by selector. + + + _createClass(RuleList, [{ + key: 'add', + value: function add(name, decl, options) { + var _options2 = this.options, + parent = _options2.parent, + sheet = _options2.sheet, + jss = _options2.jss, + Renderer = _options2.Renderer, + generateClassName = _options2.generateClassName; + + + options = _extends({ + classes: this.classes, + parent: parent, + sheet: sheet, + jss: jss, + Renderer: Renderer, + generateClassName: generateClassName + }, options); + + if (!options.selector && this.classes[name]) { + options.selector = '.' + (0, _escape2['default'])(this.classes[name]); + } + + this.raw[name] = decl; + + var rule = (0, _createRule2['default'])(name, decl, options); + + var className = void 0; + + if (!options.selector && rule instanceof _StyleRule2['default']) { + className = generateClassName(rule, sheet); + rule.selector = '.' + (0, _escape2['default'])(className); + } + + this.register(rule, className); + + var index = options.index === undefined ? this.index.length : options.index; + this.index.splice(index, 0, rule); + + return rule; + } + + /** + * Get a rule. + */ + + }, { + key: 'get', + value: function get(name) { + return this.map[name]; + } + + /** + * Delete a rule. + */ + + }, { + key: 'remove', + value: function remove(rule) { + this.unregister(rule); + this.index.splice(this.indexOf(rule), 1); + } + + /** + * Get index of a rule. + */ + + }, { + key: 'indexOf', + value: function indexOf(rule) { + return this.index.indexOf(rule); + } + + /** + * Run `onProcessRule()` plugins on every rule. + */ + + }, { + key: 'process', + value: function process() { + var plugins = this.options.jss.plugins; + // We need to clone array because if we modify the index somewhere else during a loop + // we end up with very hard-to-track-down side effects. + + this.index.slice(0).forEach(plugins.onProcessRule, plugins); + } + + /** + * Register a rule in `.map` and `.classes` maps. + */ + + }, { + key: 'register', + value: function register(rule, className) { + this.map[rule.key] = rule; + if (rule instanceof _StyleRule2['default']) { + this.map[rule.selector] = rule; + if (className) this.classes[rule.key] = className; + } + } + + /** + * Unregister a rule. + */ + + }, { + key: 'unregister', + value: function unregister(rule) { + delete this.map[rule.key]; + if (rule instanceof _StyleRule2['default']) { + delete this.map[rule.selector]; + delete this.classes[rule.key]; + } + } + + /** + * Update the function values with a new data. + */ + + }, { + key: 'link', + + + /** + * Link renderable rules with CSSRuleList. + */ + value: function link(cssRules) { + var map = this.options.sheet.renderer.getUnescapedKeysMap(this.index); + + for (var i = 0; i < cssRules.length; i++) { + var cssRule = cssRules[i]; + var _key = this.options.sheet.renderer.getKey(cssRule); + if (map[_key]) _key = map[_key]; + var rule = this.map[_key]; + if (rule) (0, _linkRule2['default'])(rule, cssRule); + } + } + + /** + * Convert rules to a CSS string. + */ + + }, { + key: 'toString', + value: function toString(options) { + var str = ''; + var sheet = this.options.sheet; + + var link = sheet ? sheet.options.link : false; + + for (var index = 0; index < this.index.length; index++) { + var rule = this.index[index]; + var css = rule.toString(options); + + // No need to render an empty rule. + if (!css && !link) continue; + + if (str) str += '\n'; + str += css; + } + + return str; + } + }]); + + return RuleList; +}(); + +exports['default'] = RuleList; + +/***/ }), +/* 84 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.fixControlledValue = fixControlledValue; +exports.resolveOnChange = resolveOnChange; +exports.getInputClassName = getInputClassName; +exports["default"] = exports.InputSizes = void 0; + +var React = _interopRequireWildcard(__webpack_require__(0)); + +var PropTypes = _interopRequireWildcard(__webpack_require__(1)); + +var _reactLifecyclesCompat = __webpack_require__(7); + +var _classnames = _interopRequireDefault(__webpack_require__(3)); + +var _omit = _interopRequireDefault(__webpack_require__(46)); + +var _type = __webpack_require__(71); + +var _ClearableLabeledInput = _interopRequireWildcard(__webpack_require__(275)); + +var _configProvider = __webpack_require__(14); + +var _warning = _interopRequireDefault(__webpack_require__(43)); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; } + +function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } + +function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); } + +function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } + +function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); } + +function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); } + +function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } + +function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } + +var InputSizes = (0, _type.tuple)('small', 'default', 'large'); +exports.InputSizes = InputSizes; + +function fixControlledValue(value) { + if (typeof value === 'undefined' || value === null) { + return ''; + } + + return value; +} + +function resolveOnChange(target, e, onChange) { + if (onChange) { + var event = e; + + if (e.type === 'click') { + // click clear icon + event = Object.create(e); + event.target = target; + event.currentTarget = target; + var originalInputValue = target.value; // change target ref value cause e.target.value should be '' when clear input + + target.value = ''; + onChange(event); // reset target ref value + + target.value = originalInputValue; + return; + } + + onChange(event); + } +} + +function getInputClassName(prefixCls, size, disabled) { + var _classNames; + + return (0, _classnames["default"])(prefixCls, (_classNames = {}, _defineProperty(_classNames, "".concat(prefixCls, "-sm"), size === 'small'), _defineProperty(_classNames, "".concat(prefixCls, "-lg"), size === 'large'), _defineProperty(_classNames, "".concat(prefixCls, "-disabled"), disabled), _classNames)); +} + +var Input = +/*#__PURE__*/ +function (_React$Component) { + _inherits(Input, _React$Component); + + function Input(props) { + var _this; + + _classCallCheck(this, Input); + + _this = _possibleConstructorReturn(this, _getPrototypeOf(Input).call(this, props)); + + _this.saveClearableInput = function (input) { + _this.clearableInput = input; + }; + + _this.saveInput = function (input) { + _this.input = input; + }; + + _this.handleReset = function (e) { + _this.setValue('', function () { + _this.focus(); + }); + + resolveOnChange(_this.input, e, _this.props.onChange); + }; + + _this.renderInput = function (prefixCls) { + var _this$props = _this.props, + className = _this$props.className, + addonBefore = _this$props.addonBefore, + addonAfter = _this$props.addonAfter, + size = _this$props.size, + disabled = _this$props.disabled; // Fix https://fb.me/react-unknown-prop + + var otherProps = (0, _omit["default"])(_this.props, ['prefixCls', 'onPressEnter', 'addonBefore', 'addonAfter', 'prefix', 'suffix', 'allowClear', // Input elements must be either controlled or uncontrolled, + // specify either the value prop, or the defaultValue prop, but not both. + 'defaultValue', 'size', 'inputType']); + return React.createElement("input", _extends({}, otherProps, { + onChange: _this.handleChange, + onKeyDown: _this.handleKeyDown, + className: (0, _classnames["default"])(getInputClassName(prefixCls, size, disabled), _defineProperty({}, className, className && !addonBefore && !addonAfter)), + ref: _this.saveInput + })); + }; + + _this.clearPasswordValueAttribute = function () { + // https://github.com/ant-design/ant-design/issues/20541 + _this.removePasswordTimeout = setTimeout(function () { + if (_this.input && _this.input.getAttribute('type') === 'password' && _this.input.hasAttribute('value')) { + _this.input.removeAttribute('value'); + } + }); + }; + + _this.handleChange = function (e) { + _this.setValue(e.target.value, _this.clearPasswordValueAttribute); + + resolveOnChange(_this.input, e, _this.props.onChange); + }; + + _this.handleKeyDown = function (e) { + var _this$props2 = _this.props, + onPressEnter = _this$props2.onPressEnter, + onKeyDown = _this$props2.onKeyDown; + + if (e.keyCode === 13 && onPressEnter) { + onPressEnter(e); + } + + if (onKeyDown) { + onKeyDown(e); + } + }; + + _this.renderComponent = function (_ref) { + var getPrefixCls = _ref.getPrefixCls; + var value = _this.state.value; + var customizePrefixCls = _this.props.prefixCls; + var prefixCls = getPrefixCls('input', customizePrefixCls); + return React.createElement(_ClearableLabeledInput["default"], _extends({}, _this.props, { + prefixCls: prefixCls, + inputType: "input", + value: fixControlledValue(value), + element: _this.renderInput(prefixCls), + handleReset: _this.handleReset, + ref: _this.saveClearableInput + })); + }; + + var value = typeof props.value === 'undefined' ? props.defaultValue : props.value; + _this.state = { + value: value + }; + return _this; + } + + _createClass(Input, [{ + key: "componentDidMount", + value: function componentDidMount() { + this.clearPasswordValueAttribute(); + } // Since polyfill `getSnapshotBeforeUpdate` need work with `componentDidUpdate`. + // We keep an empty function here. + + }, { + key: "componentDidUpdate", + value: function componentDidUpdate() {} + }, { + key: "getSnapshotBeforeUpdate", + value: function getSnapshotBeforeUpdate(prevProps) { + if ((0, _ClearableLabeledInput.hasPrefixSuffix)(prevProps) !== (0, _ClearableLabeledInput.hasPrefixSuffix)(this.props)) { + (0, _warning["default"])(this.input !== document.activeElement, 'Input', "When Input is focused, dynamic add or remove prefix / suffix will make it lose focus caused by dom structure change. Read more: https://ant.design/components/input/#FAQ"); + } + + return null; + } + }, { + key: "componentWillUnmount", + value: function componentWillUnmount() { + if (this.removePasswordTimeout) { + clearTimeout(this.removePasswordTimeout); + } + } + }, { + key: "focus", + value: function focus() { + this.input.focus(); + } + }, { + key: "blur", + value: function blur() { + this.input.blur(); + } + }, { + key: "select", + value: function select() { + this.input.select(); + } + }, { + key: "setValue", + value: function setValue(value, callback) { + if (!('value' in this.props)) { + this.setState({ + value: value + }, callback); + } + } + }, { + key: "render", + value: function render() { + return React.createElement(_configProvider.ConfigConsumer, null, this.renderComponent); + } + }], [{ + key: "getDerivedStateFromProps", + value: function getDerivedStateFromProps(nextProps) { + if ('value' in nextProps) { + return { + value: nextProps.value + }; + } + + return null; + } + }]); + + return Input; +}(React.Component); + +Input.defaultProps = { + type: 'text' +}; +Input.propTypes = { + type: PropTypes.string, + id: PropTypes.string, + size: PropTypes.oneOf(InputSizes), + maxLength: PropTypes.number, + disabled: PropTypes.bool, + value: PropTypes.any, + defaultValue: PropTypes.any, + className: PropTypes.string, + addonBefore: PropTypes.node, + addonAfter: PropTypes.node, + prefixCls: PropTypes.string, + onPressEnter: PropTypes.func, + onKeyDown: PropTypes.func, + onKeyUp: PropTypes.func, + onFocus: PropTypes.func, + onBlur: PropTypes.func, + prefix: PropTypes.node, + suffix: PropTypes.node, + allowClear: PropTypes.bool +}; +(0, _reactLifecyclesCompat.polyfill)(Input); +var _default = Input; +exports["default"] = _default; +//# sourceMappingURL=Input.js.map + + +/***/ }), +/* 85 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +exports.__esModule = true; +exports.Encoders = exports.Decoders = exports.encodeNumericObject = exports.encodeNumericArray = undefined; + +var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol ? "symbol" : typeof obj; }; + +var _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"]) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } }; }(); + +exports.encodeDate = encodeDate; +exports.decodeDate = decodeDate; +exports.encodeBoolean = encodeBoolean; +exports.decodeBoolean = decodeBoolean; +exports.encodeNumber = encodeNumber; +exports.decodeNumber = decodeNumber; +exports.encodeString = encodeString; +exports.decodeString = decodeString; +exports.encodeJson = encodeJson; +exports.decodeJson = decodeJson; +exports.encodeArray = encodeArray; +exports.decodeArray = decodeArray; +exports.decodeNumericArray = decodeNumericArray; +exports.encodeObject = encodeObject; +exports.decodeObject = decodeObject; +exports.decodeNumericObject = decodeNumericObject; +exports.decode = decode; +exports.encode = encode; + +var _urlQueryConfig = __webpack_require__(86); + +var _urlQueryConfig2 = _interopRequireDefault(_urlQueryConfig); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } } /** + * Functions for encoding and decoding values as strings. + */ + + +/** + * Encodes a date as a string in YYYY-MM-DD format. + * + * @param {Date} date + * @return {String} the encoded date + */ +function encodeDate(date) { + if (date == null) { + return date; + } + + var year = date.getFullYear(); + var month = date.getMonth() + 1; + var day = date.getDate(); + + return year + '-' + (month < 10 ? '0' + month : month) + '-' + (day < 10 ? '0' + day : day); +} + +/** + * Converts a date in the format 'YYYY-mm-dd...' into a proper date, because + * new Date() does not do that correctly. The date can be as complete or incomplete + * as necessary (aka, '2015', '2015-10', '2015-10-01'). + * It will not work for dates that have times included in them. + * + * @param {String} dateString String date form like '2015-10-01' + * @return {Date} parsed date + */ +function decodeDate(dateString) { + if (dateString == null || !dateString.length) { + return undefined; + } + + var parts = dateString.split('-'); + // may only be a year so won't even have a month + if (parts[1] != null) { + parts[1] -= 1; // Note: months are 0-based + } else { + // just a year, set the month and day to the first + parts[1] = 0; + parts[2] = 1; + } + + var decoded = new (Function.prototype.bind.apply(Date, [null].concat(_toConsumableArray(parts))))(); + + if (isNaN(decoded.getTime())) { + return undefined; + } + + return decoded; +} + +/** + * Encodes a boolean as a string. true -> "1", false -> "0". + * + * @param {Boolean} bool + * @return {String} the encoded boolean + */ +function encodeBoolean(bool) { + if (bool === undefined) { + return undefined; + } + + return bool ? '1' : '0'; +} + +/** + * Decodes a boolean from a string. "1" -> true, "0" -> false. + * Everything else maps to undefined. + * + * @param {String} boolStr the encoded boolean string + * @return {Boolean} the boolean value + */ +function decodeBoolean(boolStr) { + if (boolStr === '1') { + return true; + } else if (boolStr === '0') { + return false; + } + + return undefined; +} + +/** + * Encodes a number as a string. + * + * @param {Number} num + * @return {String} the encoded number + */ +function encodeNumber(num) { + if (num == null) { + return undefined; + } + + return String(num); +} + +/** + * Decodes a number from a string via parseFloat. If the number is invalid, + * it returns undefined. + * + * @param {String} numStr the encoded number string + * @return {Number} the number value + */ +function decodeNumber(numStr) { + if (numStr == null) { + return undefined; + } + + var result = parseFloat(numStr); + + if (isNaN(result)) { + return undefined; + } + + return result; +} + +/** + * Encodes a string while safely handling null and undefined values. + * + * @param {String} string + * @return {String} the encoded string + */ +function encodeString(str) { + if (str == null) { + return undefined; + } + + return String(str); +} + +/** + * Decodes a string while safely handling null and undefined values. + * + * @param {String} str the encoded string + * @return {String} the string value + */ +function decodeString(str) { + if (str == null) { + return undefined; + } + + return String(str); +} + +/** + * Encodes anything as a JSON string. + * + * @param {Any} any The thing to be encoded + * @return {String} The JSON string representation of any + */ +function encodeJson(any) { + if (any == null) { + return undefined; + } + + return JSON.stringify(any); +} + +/** + * Decodes a JSON string into javascript + * + * @param {String} jsonStr The JSON string representation + * @return {Any} The javascript representation + */ +function decodeJson(jsonStr) { + if (!jsonStr) { + return undefined; + } + + var result = void 0; + try { + result = JSON.parse(jsonStr); + } catch (e) { + /* ignore errors, returning undefined */ + } + + return result; +} + +/** + * Encodes an array as a JSON string. + * + * @param {Array} array The array to be encoded + * @return {String} The JSON string representation of array + */ +function encodeArray(array) { + var entrySeparator = arguments.length <= 1 || arguments[1] === undefined ? _urlQueryConfig2.default.entrySeparator : arguments[1]; + + if (!array) { + return undefined; + } + + return array.join(entrySeparator); +} + +/** + * Decodes a JSON string into javascript array + * + * @param {String} jsonStr The JSON string representation + * @return {Array} The javascript representation + */ +function decodeArray(arrayStr) { + var entrySeparator = arguments.length <= 1 || arguments[1] === undefined ? _urlQueryConfig2.default.entrySeparator : arguments[1]; + + if (!arrayStr) { + return undefined; + } + + return arrayStr.split(entrySeparator).map(function (item) { + return item === '' ? undefined : item; + }); +} + +/** + * Encodes a numeric array as a JSON string. (alias of encodeArray) + * + * @param {Array} array The array to be encoded + * @return {String} The JSON string representation of array + */ +var encodeNumericArray = exports.encodeNumericArray = encodeArray; + +/** + * Decodes a JSON string into javascript array where all entries are numbers + * + * @param {String} jsonStr The JSON string representation + * @return {Array} The javascript representation + */ +function decodeNumericArray(arrayStr) { + var entrySeparator = arguments.length <= 1 || arguments[1] === undefined ? _urlQueryConfig2.default.entrySeparator : arguments[1]; + + var decoded = decodeArray(arrayStr, entrySeparator); + + if (!decoded) { + return undefined; + } + + return decoded.map(function (d) { + return d == null ? d : +d; + }); +} + +/** + * Encode simple objects as readable strings. Currently works only for simple, + * flat objects where values are numbers, booleans or strings. + * + * For example { foo: bar, boo: baz } -> "foo-bar_boo-baz" + * + * @param {Object} object The object to encode + * @param {String} keyValSeparator="-" The separator between keys and values + * @param {String} entrySeparator="_" The separator between entries + * @return {String} The encoded object + */ +function encodeObject(obj) { + var keyValSeparator = arguments.length <= 1 || arguments[1] === undefined ? _urlQueryConfig2.default.keyValSeparator : arguments[1]; + var entrySeparator = arguments.length <= 2 || arguments[2] === undefined ? _urlQueryConfig2.default.entrySeparator : arguments[2]; + + if (!obj || !Object.keys(obj).length) { + return undefined; + } + + return Object.keys(obj).map(function (key) { + return '' + key + keyValSeparator + obj[key]; + }).join(entrySeparator); +} + +/** + * Decodes a simple object to javascript. Currently works only for simple, + * flat objects where values are numbers, booleans or strings. + * + * For example "foo-bar_boo-baz" -> { foo: bar, boo: baz } + * + * @param {String} objStr The object string to decode + * @param {String} keyValSeparator="-" The separator between keys and values + * @param {String} entrySeparator="_" The separator between entries + * @return {Object} The javascript object + */ +function decodeObject(objStr) { + var keyValSeparator = arguments.length <= 1 || arguments[1] === undefined ? _urlQueryConfig2.default.keyValSeparator : arguments[1]; + var entrySeparator = arguments.length <= 2 || arguments[2] === undefined ? _urlQueryConfig2.default.entrySeparator : arguments[2]; + + if (!objStr || !objStr.length) { + return undefined; + } + var obj = {}; + + objStr.split(entrySeparator).forEach(function (entryStr) { + var _entryStr$split = entryStr.split(keyValSeparator); + + var _entryStr$split2 = _slicedToArray(_entryStr$split, 2); + + var key = _entryStr$split2[0]; + var value = _entryStr$split2[1]; + + obj[key] = value; + }); + + return obj; +} + +/** + * Encode simple objects as readable strings. Alias of encodeObject. + * + * For example { foo: 123, boo: 521 } -> "foo-123_boo-521" + * + * @param {Object} object The object to encode + * @param {String} keyValSeparator="-" The separator between keys and values + * @param {String} entrySeparator="_" The separator between entries + * @return {String} The encoded object + */ +var encodeNumericObject = exports.encodeNumericObject = encodeObject; + +/** + * Decodes a simple object to javascript where all values are numbers. + * Currently works only for simple, flat objects. + * + * For example "foo-123_boo-521" -> { foo: 123, boo: 521 } + * + * @param {String} objStr The object string to decode + * @param {String} keyValSeparator="-" The separator between keys and values + * @param {String} entrySeparator="_" The separator between entries + * @return {Object} The javascript object + */ +function decodeNumericObject(objStr) { + var keyValSeparator = arguments.length <= 1 || arguments[1] === undefined ? _urlQueryConfig2.default.keyValSeparator : arguments[1]; + var entrySeparator = arguments.length <= 2 || arguments[2] === undefined ? _urlQueryConfig2.default.entrySeparator : arguments[2]; + + var decoded = decodeObject(objStr, keyValSeparator, entrySeparator); + + if (!decoded) { + return undefined; + } + + // convert to numbers + Object.keys(decoded).forEach(function (key) { + decoded[key] = decoded[key] == null ? decoded[key] : +decoded[key]; + }); + + return decoded; +} + +/** + * Collection of Decoders by type + */ +var Decoders = exports.Decoders = { + number: decodeNumber, + string: decodeString, + object: decodeObject, + array: decodeArray, + json: decodeJson, + date: decodeDate, + boolean: decodeBoolean, + numericObject: decodeNumericObject, + numericArray: decodeNumericArray +}; + +/** + * Generic decode function that takes a type as an argument. + * + * @param {String|Function} type If a function, it is used to decode, otherwise the string is + * the key for the decoder in the Decoders collection. + * @param {String} encodedValue the value to decode + * @param {Any} defaultValue The default value to use if encodedValue is undefined. + * @return {Any} The decoded value + */ +function decode(type, encodedValue, defaultValue) { + var decodedValue = void 0; + + if (typeof type === 'function') { + decodedValue = type(encodedValue, defaultValue); + } else if ((typeof type === 'undefined' ? 'undefined' : _typeof(type)) === 'object' && type.decode) { + decodedValue = type.decode(encodedValue, defaultValue); + } else if (encodedValue === undefined) { + decodedValue = defaultValue; + } else if (Decoders[type]) { + decodedValue = Decoders[type](encodedValue); + } else { + decodedValue = encodedValue; + } + + return decodedValue; +} + +/** + * Collection of Decoders by type + */ +var Encoders = exports.Encoders = { + number: encodeNumber, + string: encodeString, + object: encodeObject, + array: encodeArray, + json: encodeJson, + date: encodeDate, + boolean: encodeBoolean, + numericObject: encodeNumericObject, + numericArray: encodeNumericArray +}; + +/** + * Generic encode function that takes a type as an argument. + * + * @param {String|Function} type If a function, it is used to encode, otherwise the string is + * the key for the encoder in the Encoders collection. + * @param {String} decodedValue the value to encode + * @return {Any} The encoded value + */ +function encode(type, decodedValue) { + var encodedValue = void 0; + if (typeof type === 'function') { + encodedValue = type(decodedValue); + } else if ((typeof type === 'undefined' ? 'undefined' : _typeof(type)) === 'object' && type.encode) { + encodedValue = type.encode(decodedValue); + } else if (Encoders[type]) { + encodedValue = Encoders[type](decodedValue); + } else { + encodedValue = decodedValue; + } + + return encodedValue; +} + +/***/ }), +/* 86 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +exports.__esModule = true; +// function to create the singleton options object that can be shared +// throughout an application +function createUrlQueryConfig() { + // default options + return { + // add in generated URL change handlers based on a urlPropsQueryConfig if provided + addUrlChangeHandlers: true, + + // add in `props.params` from react-router to the url object + addRouterParams: true, + + // function to specify change handler name (onChange) + changeHandlerName: function changeHandlerName(propName) { + return 'onChange' + propName[0].toUpperCase() + propName.substring(1); + }, + + // use this history if no history is specified + history: { + push: function push() { + // eslint-disable-next-line + console.error('No history provided to react-url-query. Please provide one via configureUrlQuery.'); + }, + replace: function replace() { + // eslint-disable-next-line + console.error('No history provided to react-url-query. Please provide one via configureUrlQuery.'); + } + }, + + // reads in location from react-router-redux if available and passes it + // to the reducer in the urlQueryMiddleware + readLocationFromStore: function readLocationFromStore(state) { + if (state && state.routing) { + return state.routing.locationBeforeTransitions; + } + + return undefined; + }, + + /** + * The separator between entries + * @default {String} "_" + */ + entrySeparator: '_', + /** + * The separator between keys and values + * @default {String} "-" + */ + keyValSeparator: '-' + }; +} + +exports.default = createUrlQueryConfig(); + +/***/ }), +/* 87 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +exports.__esModule = true; +var UrlUpdateTypes = { + replace: 'replace', + replaceIn: 'replaceIn', + push: 'push', + pushIn: 'pushIn' +}; + +exports.default = UrlUpdateTypes; + +/***/ }), +/* 88 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +__webpack_require__(31); + +__webpack_require__(640); +//# sourceMappingURL=css.js.map + + +/***/ }), +/* 89 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.create = exports.connect = exports.Provider = undefined; + +var _Provider2 = __webpack_require__(749); + +var _Provider3 = _interopRequireDefault(_Provider2); + +var _connect2 = __webpack_require__(750); + +var _connect3 = _interopRequireDefault(_connect2); + +var _create2 = __webpack_require__(752); + +var _create3 = _interopRequireDefault(_create2); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +exports.Provider = _Provider3.default; +exports.connect = _connect3.default; +exports.create = _create3.default; + +/***/ }), +/* 90 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(19); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(11); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(12); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(13); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types__ = __webpack_require__(1); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_prop_types__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_dom__ = __webpack_require__(4); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_dom___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_dom__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_rc_util_es_Dom_contains__ = __webpack_require__(281); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_rc_util_es_Dom_addEventListener__ = __webpack_require__(282); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_rc_util_es_ContainerRender__ = __webpack_require__(707); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_rc_util_es_Portal__ = __webpack_require__(708); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_classnames__ = __webpack_require__(3); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_classnames__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__utils__ = __webpack_require__(283); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__Popup__ = __webpack_require__(709); + + + + + + + + + + + + + + + + +function noop() {} + +function returnEmptyString() { + return ''; +} + +function returnDocument() { + return window.document; +} + +var ALL_HANDLERS = ['onClick', 'onMouseDown', 'onTouchStart', 'onMouseEnter', 'onMouseLeave', 'onFocus', 'onBlur', 'onContextMenu']; + +var IS_REACT_16 = !!__WEBPACK_IMPORTED_MODULE_6_react_dom__["createPortal"]; + +var contextTypes = { + rcTrigger: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.shape({ + onPopupMouseDown: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func + }) +}; + +var Trigger = function (_React$Component) { + __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(Trigger, _React$Component); + + function Trigger(props) { + __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Trigger); + + var _this = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, _React$Component.call(this, props)); + + _initialiseProps.call(_this); + + var popupVisible = void 0; + if ('popupVisible' in props) { + popupVisible = !!props.popupVisible; + } else { + popupVisible = !!props.defaultPopupVisible; + } + + _this.prevPopupVisible = popupVisible; + + _this.state = { + popupVisible: popupVisible + }; + return _this; + } + + Trigger.prototype.getChildContext = function getChildContext() { + return { + rcTrigger: { + onPopupMouseDown: this.onPopupMouseDown + } + }; + }; + + Trigger.prototype.componentWillMount = function componentWillMount() { + var _this2 = this; + + ALL_HANDLERS.forEach(function (h) { + _this2['fire' + h] = function (e) { + _this2.fireEvents(h, e); + }; + }); + }; + + Trigger.prototype.componentDidMount = function componentDidMount() { + this.componentDidUpdate({}, { + popupVisible: this.state.popupVisible + }); + }; + + Trigger.prototype.componentWillReceiveProps = function componentWillReceiveProps(_ref) { + var popupVisible = _ref.popupVisible; + + if (popupVisible !== undefined) { + this.setState({ + popupVisible: popupVisible + }); + } + }; + + Trigger.prototype.componentDidUpdate = function componentDidUpdate(_, prevState) { + var props = this.props; + var state = this.state; + var triggerAfterPopupVisibleChange = function triggerAfterPopupVisibleChange() { + if (prevState.popupVisible !== state.popupVisible) { + props.afterPopupVisibleChange(state.popupVisible); + } + }; + if (!IS_REACT_16) { + this.renderComponent(null, triggerAfterPopupVisibleChange); + } + + this.prevPopupVisible = prevState.popupVisible; + + // We must listen to `mousedown` or `touchstart`, edge case: + // https://github.com/ant-design/ant-design/issues/5804 + // https://github.com/react-component/calendar/issues/250 + // https://github.com/react-component/trigger/issues/50 + if (state.popupVisible) { + var currentDocument = void 0; + if (!this.clickOutsideHandler && (this.isClickToHide() || this.isContextMenuToShow())) { + currentDocument = props.getDocument(); + this.clickOutsideHandler = Object(__WEBPACK_IMPORTED_MODULE_8_rc_util_es_Dom_addEventListener__["a" /* default */])(currentDocument, 'mousedown', this.onDocumentClick); + } + // always hide on mobile + if (!this.touchOutsideHandler) { + currentDocument = currentDocument || props.getDocument(); + this.touchOutsideHandler = Object(__WEBPACK_IMPORTED_MODULE_8_rc_util_es_Dom_addEventListener__["a" /* default */])(currentDocument, 'touchstart', this.onDocumentClick); + } + // close popup when trigger type contains 'onContextMenu' and document is scrolling. + if (!this.contextMenuOutsideHandler1 && this.isContextMenuToShow()) { + currentDocument = currentDocument || props.getDocument(); + this.contextMenuOutsideHandler1 = Object(__WEBPACK_IMPORTED_MODULE_8_rc_util_es_Dom_addEventListener__["a" /* default */])(currentDocument, 'scroll', this.onContextMenuClose); + } + // close popup when trigger type contains 'onContextMenu' and window is blur. + if (!this.contextMenuOutsideHandler2 && this.isContextMenuToShow()) { + this.contextMenuOutsideHandler2 = Object(__WEBPACK_IMPORTED_MODULE_8_rc_util_es_Dom_addEventListener__["a" /* default */])(window, 'blur', this.onContextMenuClose); + } + return; + } + + this.clearOutsideHandler(); + }; + + Trigger.prototype.componentWillUnmount = function componentWillUnmount() { + this.clearDelayTimer(); + this.clearOutsideHandler(); + clearTimeout(this.mouseDownTimeout); + }; + + Trigger.prototype.getPopupDomNode = function getPopupDomNode() { + // for test + if (this._component && this._component.getPopupDomNode) { + return this._component.getPopupDomNode(); + } + return null; + }; + + Trigger.prototype.getPopupAlign = function getPopupAlign() { + var props = this.props; + var popupPlacement = props.popupPlacement, + popupAlign = props.popupAlign, + builtinPlacements = props.builtinPlacements; + + if (popupPlacement && builtinPlacements) { + return Object(__WEBPACK_IMPORTED_MODULE_12__utils__["a" /* getAlignFromPlacement */])(builtinPlacements, popupPlacement, popupAlign); + } + return popupAlign; + }; + + /** + * @param popupVisible Show or not the popup element + * @param event SyntheticEvent, used for `pointAlign` + */ + Trigger.prototype.setPopupVisible = function setPopupVisible(popupVisible, event) { + var alignPoint = this.props.alignPoint; + + + this.clearDelayTimer(); + + if (this.state.popupVisible !== popupVisible) { + if (!('popupVisible' in this.props)) { + this.setState({ popupVisible: popupVisible }); + } + this.props.onPopupVisibleChange(popupVisible); + } + + // Always record the point position since mouseEnterDelay will delay the show + if (alignPoint && event) { + this.setPoint(event); + } + }; + + Trigger.prototype.delaySetPopupVisible = function delaySetPopupVisible(visible, delayS, event) { + var _this3 = this; + + var delay = delayS * 1000; + this.clearDelayTimer(); + if (delay) { + var point = event ? { pageX: event.pageX, pageY: event.pageY } : null; + this.delayTimer = setTimeout(function () { + _this3.setPopupVisible(visible, point); + _this3.clearDelayTimer(); + }, delay); + } else { + this.setPopupVisible(visible, event); + } + }; + + Trigger.prototype.clearDelayTimer = function clearDelayTimer() { + if (this.delayTimer) { + clearTimeout(this.delayTimer); + this.delayTimer = null; + } + }; + + Trigger.prototype.clearOutsideHandler = function clearOutsideHandler() { + if (this.clickOutsideHandler) { + this.clickOutsideHandler.remove(); + this.clickOutsideHandler = null; + } + + if (this.contextMenuOutsideHandler1) { + this.contextMenuOutsideHandler1.remove(); + this.contextMenuOutsideHandler1 = null; + } + + if (this.contextMenuOutsideHandler2) { + this.contextMenuOutsideHandler2.remove(); + this.contextMenuOutsideHandler2 = null; + } + + if (this.touchOutsideHandler) { + this.touchOutsideHandler.remove(); + this.touchOutsideHandler = null; + } + }; + + Trigger.prototype.createTwoChains = function createTwoChains(event) { + var childPros = this.props.children.props; + var props = this.props; + if (childPros[event] && props[event]) { + return this['fire' + event]; + } + return childPros[event] || props[event]; + }; + + Trigger.prototype.isClickToShow = function isClickToShow() { + var _props = this.props, + action = _props.action, + showAction = _props.showAction; + + return action.indexOf('click') !== -1 || showAction.indexOf('click') !== -1; + }; + + Trigger.prototype.isContextMenuToShow = function isContextMenuToShow() { + var _props2 = this.props, + action = _props2.action, + showAction = _props2.showAction; + + return action.indexOf('contextMenu') !== -1 || showAction.indexOf('contextMenu') !== -1; + }; + + Trigger.prototype.isClickToHide = function isClickToHide() { + var _props3 = this.props, + action = _props3.action, + hideAction = _props3.hideAction; + + return action.indexOf('click') !== -1 || hideAction.indexOf('click') !== -1; + }; + + Trigger.prototype.isMouseEnterToShow = function isMouseEnterToShow() { + var _props4 = this.props, + action = _props4.action, + showAction = _props4.showAction; + + return action.indexOf('hover') !== -1 || showAction.indexOf('mouseEnter') !== -1; + }; + + Trigger.prototype.isMouseLeaveToHide = function isMouseLeaveToHide() { + var _props5 = this.props, + action = _props5.action, + hideAction = _props5.hideAction; + + return action.indexOf('hover') !== -1 || hideAction.indexOf('mouseLeave') !== -1; + }; + + Trigger.prototype.isFocusToShow = function isFocusToShow() { + var _props6 = this.props, + action = _props6.action, + showAction = _props6.showAction; + + return action.indexOf('focus') !== -1 || showAction.indexOf('focus') !== -1; + }; + + Trigger.prototype.isBlurToHide = function isBlurToHide() { + var _props7 = this.props, + action = _props7.action, + hideAction = _props7.hideAction; + + return action.indexOf('focus') !== -1 || hideAction.indexOf('blur') !== -1; + }; + + Trigger.prototype.forcePopupAlign = function forcePopupAlign() { + if (this.state.popupVisible && this._component && this._component.alignInstance) { + this._component.alignInstance.forceAlign(); + } + }; + + Trigger.prototype.fireEvents = function fireEvents(type, e) { + var childCallback = this.props.children.props[type]; + if (childCallback) { + childCallback(e); + } + var callback = this.props[type]; + if (callback) { + callback(e); + } + }; + + Trigger.prototype.close = function close() { + this.setPopupVisible(false); + }; + + Trigger.prototype.render = function render() { + var _this4 = this; + + var popupVisible = this.state.popupVisible; + var _props8 = this.props, + children = _props8.children, + forceRender = _props8.forceRender, + alignPoint = _props8.alignPoint, + className = _props8.className; + + var child = __WEBPACK_IMPORTED_MODULE_4_react___default.a.Children.only(children); + var newChildProps = { key: 'trigger' }; + + if (this.isContextMenuToShow()) { + newChildProps.onContextMenu = this.onContextMenu; + } else { + newChildProps.onContextMenu = this.createTwoChains('onContextMenu'); + } + + if (this.isClickToHide() || this.isClickToShow()) { + newChildProps.onClick = this.onClick; + newChildProps.onMouseDown = this.onMouseDown; + newChildProps.onTouchStart = this.onTouchStart; + } else { + newChildProps.onClick = this.createTwoChains('onClick'); + newChildProps.onMouseDown = this.createTwoChains('onMouseDown'); + newChildProps.onTouchStart = this.createTwoChains('onTouchStart'); + } + if (this.isMouseEnterToShow()) { + newChildProps.onMouseEnter = this.onMouseEnter; + if (alignPoint) { + newChildProps.onMouseMove = this.onMouseMove; + } + } else { + newChildProps.onMouseEnter = this.createTwoChains('onMouseEnter'); + } + if (this.isMouseLeaveToHide()) { + newChildProps.onMouseLeave = this.onMouseLeave; + } else { + newChildProps.onMouseLeave = this.createTwoChains('onMouseLeave'); + } + if (this.isFocusToShow() || this.isBlurToHide()) { + newChildProps.onFocus = this.onFocus; + newChildProps.onBlur = this.onBlur; + } else { + newChildProps.onFocus = this.createTwoChains('onFocus'); + newChildProps.onBlur = this.createTwoChains('onBlur'); + } + + var childrenClassName = __WEBPACK_IMPORTED_MODULE_11_classnames___default()(child && child.props && child.props.className, className); + if (childrenClassName) { + newChildProps.className = childrenClassName; + } + var trigger = __WEBPACK_IMPORTED_MODULE_4_react___default.a.cloneElement(child, newChildProps); + + if (!IS_REACT_16) { + return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement( + __WEBPACK_IMPORTED_MODULE_9_rc_util_es_ContainerRender__["a" /* default */], + { + parent: this, + visible: popupVisible, + autoMount: false, + forceRender: forceRender, + getComponent: this.getComponent, + getContainer: this.getContainer + }, + function (_ref2) { + var renderComponent = _ref2.renderComponent; + + _this4.renderComponent = renderComponent; + return trigger; + } + ); + } + + var portal = void 0; + // prevent unmounting after it's rendered + if (popupVisible || this._component || forceRender) { + portal = __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement( + __WEBPACK_IMPORTED_MODULE_10_rc_util_es_Portal__["a" /* default */], + { + key: 'portal', + getContainer: this.getContainer, + didUpdate: this.handlePortalUpdate + }, + this.getComponent() + ); + } + + return [trigger, portal]; + }; + + return Trigger; +}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.Component); + +Trigger.propTypes = { + children: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.any, + action: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.oneOfType([__WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.string, __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.arrayOf(__WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.string)]), + showAction: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.any, + hideAction: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.any, + getPopupClassNameFromAlign: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.any, + onPopupVisibleChange: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func, + afterPopupVisibleChange: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func, + popup: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.oneOfType([__WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.node, __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func]).isRequired, + popupStyle: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.object, + prefixCls: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.string, + popupClassName: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.string, + className: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.string, + popupPlacement: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.string, + builtinPlacements: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.object, + popupTransitionName: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.oneOfType([__WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.string, __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.object]), + popupAnimation: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.any, + mouseEnterDelay: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.number, + mouseLeaveDelay: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.number, + zIndex: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.number, + focusDelay: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.number, + blurDelay: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.number, + getPopupContainer: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func, + getDocument: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func, + forceRender: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.bool, + destroyPopupOnHide: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.bool, + mask: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.bool, + maskClosable: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.bool, + onPopupAlign: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.func, + popupAlign: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.object, + popupVisible: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.bool, + defaultPopupVisible: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.bool, + maskTransitionName: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.oneOfType([__WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.string, __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.object]), + maskAnimation: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.string, + stretch: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.string, + alignPoint: __WEBPACK_IMPORTED_MODULE_5_prop_types___default.a.bool // Maybe we can support user pass position in the future +}; +Trigger.contextTypes = contextTypes; +Trigger.childContextTypes = contextTypes; +Trigger.defaultProps = { + prefixCls: 'rc-trigger-popup', + getPopupClassNameFromAlign: returnEmptyString, + getDocument: returnDocument, + onPopupVisibleChange: noop, + afterPopupVisibleChange: noop, + onPopupAlign: noop, + popupClassName: '', + mouseEnterDelay: 0, + mouseLeaveDelay: 0.1, + focusDelay: 0, + blurDelay: 0.15, + popupStyle: {}, + destroyPopupOnHide: false, + popupAlign: {}, + defaultPopupVisible: false, + mask: false, + maskClosable: true, + action: [], + showAction: [], + hideAction: [] +}; + +var _initialiseProps = function _initialiseProps() { + var _this5 = this; + + this.onMouseEnter = function (e) { + var mouseEnterDelay = _this5.props.mouseEnterDelay; + + _this5.fireEvents('onMouseEnter', e); + _this5.delaySetPopupVisible(true, mouseEnterDelay, mouseEnterDelay ? null : e); + }; + + this.onMouseMove = function (e) { + _this5.fireEvents('onMouseMove', e); + _this5.setPoint(e); + }; + + this.onMouseLeave = function (e) { + _this5.fireEvents('onMouseLeave', e); + _this5.delaySetPopupVisible(false, _this5.props.mouseLeaveDelay); + }; + + this.onPopupMouseEnter = function () { + _this5.clearDelayTimer(); + }; + + this.onPopupMouseLeave = function (e) { + // https://github.com/react-component/trigger/pull/13 + // react bug? + if (e.relatedTarget && !e.relatedTarget.setTimeout && _this5._component && _this5._component.getPopupDomNode && Object(__WEBPACK_IMPORTED_MODULE_7_rc_util_es_Dom_contains__["a" /* default */])(_this5._component.getPopupDomNode(), e.relatedTarget)) { + return; + } + _this5.delaySetPopupVisible(false, _this5.props.mouseLeaveDelay); + }; + + this.onFocus = function (e) { + _this5.fireEvents('onFocus', e); + // incase focusin and focusout + _this5.clearDelayTimer(); + if (_this5.isFocusToShow()) { + _this5.focusTime = Date.now(); + _this5.delaySetPopupVisible(true, _this5.props.focusDelay); + } + }; + + this.onMouseDown = function (e) { + _this5.fireEvents('onMouseDown', e); + _this5.preClickTime = Date.now(); + }; + + this.onTouchStart = function (e) { + _this5.fireEvents('onTouchStart', e); + _this5.preTouchTime = Date.now(); + }; + + this.onBlur = function (e) { + _this5.fireEvents('onBlur', e); + _this5.clearDelayTimer(); + if (_this5.isBlurToHide()) { + _this5.delaySetPopupVisible(false, _this5.props.blurDelay); + } + }; + + this.onContextMenu = function (e) { + e.preventDefault(); + _this5.fireEvents('onContextMenu', e); + _this5.setPopupVisible(true, e); + }; + + this.onContextMenuClose = function () { + if (_this5.isContextMenuToShow()) { + _this5.close(); + } + }; + + this.onClick = function (event) { + _this5.fireEvents('onClick', event); + // focus will trigger click + if (_this5.focusTime) { + var preTime = void 0; + if (_this5.preClickTime && _this5.preTouchTime) { + preTime = Math.min(_this5.preClickTime, _this5.preTouchTime); + } else if (_this5.preClickTime) { + preTime = _this5.preClickTime; + } else if (_this5.preTouchTime) { + preTime = _this5.preTouchTime; + } + if (Math.abs(preTime - _this5.focusTime) < 20) { + return; + } + _this5.focusTime = 0; + } + _this5.preClickTime = 0; + _this5.preTouchTime = 0; + if (event && event.preventDefault) { + event.preventDefault(); + } + var nextVisible = !_this5.state.popupVisible; + if (_this5.isClickToHide() && !nextVisible || nextVisible && _this5.isClickToShow()) { + _this5.setPopupVisible(!_this5.state.popupVisible, event); + } + }; + + this.onPopupMouseDown = function () { + var _context$rcTrigger = _this5.context.rcTrigger, + rcTrigger = _context$rcTrigger === undefined ? {} : _context$rcTrigger; + + _this5.hasPopupMouseDown = true; + + clearTimeout(_this5.mouseDownTimeout); + _this5.mouseDownTimeout = setTimeout(function () { + _this5.hasPopupMouseDown = false; + }, 0); + + if (rcTrigger.onPopupMouseDown) { + rcTrigger.onPopupMouseDown.apply(rcTrigger, arguments); + } + }; + + this.onDocumentClick = function (event) { + if (_this5.props.mask && !_this5.props.maskClosable) { + return; + } + + var target = event.target; + var root = Object(__WEBPACK_IMPORTED_MODULE_6_react_dom__["findDOMNode"])(_this5); + if (!Object(__WEBPACK_IMPORTED_MODULE_7_rc_util_es_Dom_contains__["a" /* default */])(root, target) && !_this5.hasPopupMouseDown) { + _this5.close(); + } + }; + + this.getRootDomNode = function () { + return Object(__WEBPACK_IMPORTED_MODULE_6_react_dom__["findDOMNode"])(_this5); + }; + + this.getPopupClassNameFromAlign = function (align) { + var className = []; + var _props9 = _this5.props, + popupPlacement = _props9.popupPlacement, + builtinPlacements = _props9.builtinPlacements, + prefixCls = _props9.prefixCls, + alignPoint = _props9.alignPoint, + getPopupClassNameFromAlign = _props9.getPopupClassNameFromAlign; + + if (popupPlacement && builtinPlacements) { + className.push(Object(__WEBPACK_IMPORTED_MODULE_12__utils__["b" /* getAlignPopupClassName */])(builtinPlacements, prefixCls, align, alignPoint)); + } + if (getPopupClassNameFromAlign) { + className.push(getPopupClassNameFromAlign(align)); + } + return className.join(' '); + }; + + this.getComponent = function () { + var _props10 = _this5.props, + prefixCls = _props10.prefixCls, + destroyPopupOnHide = _props10.destroyPopupOnHide, + popupClassName = _props10.popupClassName, + action = _props10.action, + onPopupAlign = _props10.onPopupAlign, + popupAnimation = _props10.popupAnimation, + popupTransitionName = _props10.popupTransitionName, + popupStyle = _props10.popupStyle, + mask = _props10.mask, + maskAnimation = _props10.maskAnimation, + maskTransitionName = _props10.maskTransitionName, + zIndex = _props10.zIndex, + popup = _props10.popup, + stretch = _props10.stretch, + alignPoint = _props10.alignPoint; + var _state = _this5.state, + popupVisible = _state.popupVisible, + point = _state.point; + + + var align = _this5.getPopupAlign(); + + var mouseProps = {}; + if (_this5.isMouseEnterToShow()) { + mouseProps.onMouseEnter = _this5.onPopupMouseEnter; + } + if (_this5.isMouseLeaveToHide()) { + mouseProps.onMouseLeave = _this5.onPopupMouseLeave; + } + + mouseProps.onMouseDown = _this5.onPopupMouseDown; + mouseProps.onTouchStart = _this5.onPopupMouseDown; + + return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement( + __WEBPACK_IMPORTED_MODULE_13__Popup__["a" /* default */], + __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({ + prefixCls: prefixCls, + destroyPopupOnHide: destroyPopupOnHide, + visible: popupVisible, + point: alignPoint && point, + className: popupClassName, + action: action, + align: align, + onAlign: onPopupAlign, + animation: popupAnimation, + getClassNameFromAlign: _this5.getPopupClassNameFromAlign + }, mouseProps, { + stretch: stretch, + getRootDomNode: _this5.getRootDomNode, + style: popupStyle, + mask: mask, + zIndex: zIndex, + transitionName: popupTransitionName, + maskAnimation: maskAnimation, + maskTransitionName: maskTransitionName, + ref: _this5.savePopup + }), + typeof popup === 'function' ? popup() : popup + ); + }; + + this.getContainer = function () { + var props = _this5.props; + + var popupContainer = document.createElement('div'); + // Make sure default popup container will never cause scrollbar appearing + // https://github.com/react-component/trigger/issues/41 + popupContainer.style.position = 'absolute'; + popupContainer.style.top = '0'; + popupContainer.style.left = '0'; + popupContainer.style.width = '100%'; + var mountNode = props.getPopupContainer ? props.getPopupContainer(Object(__WEBPACK_IMPORTED_MODULE_6_react_dom__["findDOMNode"])(_this5)) : props.getDocument().body; + mountNode.appendChild(popupContainer); + return popupContainer; + }; + + this.setPoint = function (point) { + var alignPoint = _this5.props.alignPoint; + + if (!alignPoint || !point) return; + + _this5.setState({ + point: { + pageX: point.pageX, + pageY: point.pageY + } + }); + }; + + this.handlePortalUpdate = function () { + if (_this5.prevPopupVisible !== _this5.state.popupVisible) { + _this5.props.afterPopupVisibleChange(_this5.state.popupVisible); + } + }; + + this.savePopup = function (node) { + _this5._component = node; + }; +}; + +/* harmony default export */ __webpack_exports__["default"] = (Trigger); + +/***/ }), +/* 91 */ +/***/ (function(module, exports, __webpack_require__) { + +/* WEBPACK VAR INJECTION */(function(global) {var now = __webpack_require__(340) + , root = typeof window === 'undefined' ? global : window + , vendors = ['moz', 'webkit'] + , suffix = 'AnimationFrame' + , raf = root['request' + suffix] + , caf = root['cancel' + suffix] || root['cancelRequest' + suffix] + +for(var i = 0; !raf && i < vendors.length; i++) { + raf = root[vendors[i] + 'Request' + suffix] + caf = root[vendors[i] + 'Cancel' + suffix] + || root[vendors[i] + 'CancelRequest' + suffix] +} + +// Some versions of FF have rAF but not cAF +if(!raf || !caf) { + var last = 0 + , id = 0 + , queue = [] + , frameDuration = 1000 / 60 + + raf = function(callback) { + if(queue.length === 0) { + var _now = now() + , next = Math.max(0, frameDuration - (_now - last)) + last = next + _now + setTimeout(function() { + var cp = queue.slice(0) + // Clear queue here to prevent + // callbacks from appending listeners + // to the current frame's queue + queue.length = 0 + for(var i = 0; i < cp.length; i++) { + if(!cp[i].cancelled) { + try{ + cp[i].callback(last) + } catch(e) { + setTimeout(function() { throw e }, 0) + } + } + } + }, Math.round(next)) + } + queue.push({ + handle: ++id, + callback: callback, + cancelled: false + }) + return id + } + + caf = function(handle) { + for(var i = 0; i < queue.length; i++) { + if(queue[i].handle === handle) { + queue[i].cancelled = true + } + } + } +} + +module.exports = function(fn) { + // Wrap in a new function to prevent + // `cancel` potentially being assigned + // to the native rAF function + return raf.call(root, fn) +} +module.exports.cancel = function() { + caf.apply(root, arguments) +} +module.exports.polyfill = function(object) { + if (!object) { + object = root; + } + object.requestAnimationFrame = raf + object.cancelAnimationFrame = caf +} + +/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(35))) + +/***/ }), +/* 92 */ +/***/ (function(module, exports) { + +// shim for using process in browser +var process = module.exports = {}; + +// cached from whatever global is present so that test runners that stub it +// don't break things. But we need to wrap it in a try catch in case it is +// wrapped in strict mode code which doesn't define any globals. It's inside a +// function because try/catches deoptimize in certain engines. + +var cachedSetTimeout; +var cachedClearTimeout; + +function defaultSetTimout() { + throw new Error('setTimeout has not been defined'); +} +function defaultClearTimeout () { + throw new Error('clearTimeout has not been defined'); +} +(function () { + try { + if (typeof setTimeout === 'function') { + cachedSetTimeout = setTimeout; + } else { + cachedSetTimeout = defaultSetTimout; + } + } catch (e) { + cachedSetTimeout = defaultSetTimout; + } + try { + if (typeof clearTimeout === 'function') { + cachedClearTimeout = clearTimeout; + } else { + cachedClearTimeout = defaultClearTimeout; + } + } catch (e) { + cachedClearTimeout = defaultClearTimeout; + } +} ()) +function runTimeout(fun) { + if (cachedSetTimeout === setTimeout) { + //normal enviroments in sane situations + return setTimeout(fun, 0); + } + // if setTimeout wasn't available but was latter defined + if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) { + cachedSetTimeout = setTimeout; + return setTimeout(fun, 0); + } + try { + // when when somebody has screwed with setTimeout but no I.E. maddness + return cachedSetTimeout(fun, 0); + } catch(e){ + try { + // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally + return cachedSetTimeout.call(null, fun, 0); + } catch(e){ + // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error + return cachedSetTimeout.call(this, fun, 0); + } + } + + +} +function runClearTimeout(marker) { + if (cachedClearTimeout === clearTimeout) { + //normal enviroments in sane situations + return clearTimeout(marker); + } + // if clearTimeout wasn't available but was latter defined + if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) { + cachedClearTimeout = clearTimeout; + return clearTimeout(marker); + } + try { + // when when somebody has screwed with setTimeout but no I.E. maddness + return cachedClearTimeout(marker); + } catch (e){ + try { + // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally + return cachedClearTimeout.call(null, marker); + } catch (e){ + // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error. + // Some versions of I.E. have different rules for clearTimeout vs setTimeout + return cachedClearTimeout.call(this, marker); + } + } + + + +} +var queue = []; +var draining = false; +var currentQueue; +var queueIndex = -1; + +function cleanUpNextTick() { + if (!draining || !currentQueue) { + return; + } + draining = false; + if (currentQueue.length) { + queue = currentQueue.concat(queue); + } else { + queueIndex = -1; + } + if (queue.length) { + drainQueue(); + } +} + +function drainQueue() { + if (draining) { + return; + } + var timeout = runTimeout(cleanUpNextTick); + draining = true; + + var len = queue.length; + while(len) { + currentQueue = queue; + queue = []; + while (++queueIndex < len) { + if (currentQueue) { + currentQueue[queueIndex].run(); + } + } + queueIndex = -1; + len = queue.length; + } + currentQueue = null; + draining = false; + runClearTimeout(timeout); +} + +process.nextTick = function (fun) { + var args = new Array(arguments.length - 1); + if (arguments.length > 1) { + for (var i = 1; i < arguments.length; i++) { + args[i - 1] = arguments[i]; + } + } + queue.push(new Item(fun, args)); + if (queue.length === 1 && !draining) { + runTimeout(drainQueue); + } +}; + +// v8 likes predictible objects +function Item(fun, array) { + this.fun = fun; + this.array = array; +} +Item.prototype.run = function () { + this.fun.apply(null, this.array); +}; +process.title = 'browser'; +process.browser = true; +process.env = {}; +process.argv = []; +process.version = ''; // empty string to avoid regexp issues +process.versions = {}; + +function noop() {} + +process.on = noop; +process.addListener = noop; +process.once = noop; +process.off = noop; +process.removeListener = noop; +process.removeAllListeners = noop; +process.emit = noop; +process.prependListener = noop; +process.prependOnceListener = noop; + +process.listeners = function (name) { return [] } + +process.binding = function (name) { + throw new Error('process.binding is not supported'); +}; + +process.cwd = function () { return '/' }; +process.chdir = function (dir) { + throw new Error('process.chdir is not supported'); +}; +process.umask = function() { return 0; }; + + +/***/ }), +/* 93 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, '__esModule', { value: true }); + +function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; } + +var _classCallCheck = _interopDefault(__webpack_require__(627)); +var _createClass = _interopDefault(__webpack_require__(628)); +var _possibleConstructorReturn = _interopDefault(__webpack_require__(629)); +var _inherits = _interopDefault(__webpack_require__(631)); +var _typeof = _interopDefault(__webpack_require__(273)); +var _objectWithoutProperties = _interopDefault(__webpack_require__(632)); +var _objectSpread = _interopDefault(__webpack_require__(633)); +var React = _interopDefault(__webpack_require__(0)); +var PropTypes = _interopDefault(__webpack_require__(1)); +var shallowEqual = _interopDefault(__webpack_require__(379)); +var warning = _interopDefault(__webpack_require__(15)); + +function defineProperty(object, property, attr) { + return Object.defineProperty(object, property, attr); +} // Passive options +// Inspired by https://github.com/Modernizr/Modernizr/blob/master/feature-detects/dom/passiveeventlisteners.js + + +var passiveOption = function () { + var cache = null; + return function () { + if (cache !== null) { + return cache; + } + + var supportsPassiveOption = false; + + try { + window.addEventListener('test', null, defineProperty({}, 'passive', { + get: function get() { + supportsPassiveOption = true; + } + })); + } catch (err) {// + } + + cache = supportsPassiveOption; + return supportsPassiveOption; + }(); +}(); + +var defaultEventOptions = { + capture: false, + passive: false +}; + +function mergeDefaultEventOptions(options) { + return _objectSpread({}, defaultEventOptions, options); +} + +function getEventListenerArgs(eventName, callback, options) { + var args = [eventName, callback]; + args.push(passiveOption ? options : options.capture); + return args; +} + +function on(target, eventName, callback, options) { + // eslint-disable-next-line prefer-spread + target.addEventListener.apply(target, getEventListenerArgs(eventName, callback, options)); +} + +function off(target, eventName, callback, options) { + // eslint-disable-next-line prefer-spread + target.removeEventListener.apply(target, getEventListenerArgs(eventName, callback, options)); +} + +function forEachListener(props, iteratee) { + var children = props.children, + target = props.target, + eventProps = _objectWithoutProperties(props, ["children", "target"]); + + Object.keys(eventProps).forEach(function (name) { + if (name.substring(0, 2) !== 'on') { + return; + } + + var prop = eventProps[name]; + + var type = _typeof(prop); + + var isObject = type === 'object'; + var isFunction = type === 'function'; + + if (!isObject && !isFunction) { + return; + } + + var capture = name.substr(-7).toLowerCase() === 'capture'; + var eventName = name.substring(2).toLowerCase(); + eventName = capture ? eventName.substring(0, eventName.length - 7) : eventName; + + if (isObject) { + iteratee(eventName, prop.handler, prop.options); + } else { + iteratee(eventName, prop, mergeDefaultEventOptions({ + capture: capture + })); + } + }); +} + +function withOptions(handler, options) { + false ? warning(options, 'react-event-listener: should be specified options in withOptions.') : void 0; + return { + handler: handler, + options: mergeDefaultEventOptions(options) + }; +} + +var EventListener = +/*#__PURE__*/ +function (_React$Component) { + _inherits(EventListener, _React$Component); + + function EventListener() { + _classCallCheck(this, EventListener); + + return _possibleConstructorReturn(this, (EventListener.__proto__ || Object.getPrototypeOf(EventListener)).apply(this, arguments)); + } + + _createClass(EventListener, [{ + key: "componentDidMount", + value: function componentDidMount() { + this.addListeners(); + } + }, { + key: "shouldComponentUpdate", + value: function shouldComponentUpdate(nextProps) { + return !shallowEqual(this.props, nextProps); + } + }, { + key: "componentWillUpdate", + value: function componentWillUpdate() { + this.removeListeners(); + } + }, { + key: "componentDidUpdate", + value: function componentDidUpdate() { + this.addListeners(); + } + }, { + key: "componentWillUnmount", + value: function componentWillUnmount() { + this.removeListeners(); + } + }, { + key: "addListeners", + value: function addListeners() { + this.applyListeners(on); + } + }, { + key: "removeListeners", + value: function removeListeners() { + this.applyListeners(off); + } + }, { + key: "applyListeners", + value: function applyListeners(onOrOff) { + var target = this.props.target; + + if (target) { + var element = target; + + if (typeof target === 'string') { + element = window[target]; + } + + forEachListener(this.props, onOrOff.bind(null, element)); + } + } + }, { + key: "render", + value: function render() { + return this.props.children || null; + } + }]); + + return EventListener; +}(React.Component); + +EventListener.propTypes = false ? { + /** + * You can provide a single child too. + */ + children: PropTypes.node, + + /** + * The DOM target to listen to. + */ + target: PropTypes.oneOfType([PropTypes.object, PropTypes.string]).isRequired +} : {}; + +exports.withOptions = withOptions; +exports.default = EventListener; + + +/***/ }), +/* 94 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "g", function() { return fetchOJList; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return fetchDeleteOJItem; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "h", function() { return fetchPostOjForm; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return fetchGetOjById; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return fetchDebuggerCode; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return fetchCodeSubmit; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "k", function() { return fetchStartProgram; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "s", function() { return fetchUserProgramDetail; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "p", function() { return fetchUserCommitRecord; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "q", function() { return fetchUserCommitRecordDetail; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "t", function() { return publishTask; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return cancelPublicTask; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "m", function() { return fetchUpdateCode; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "o", function() { return fetchUserCodeSubmit; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "j", function() { return fetchRestoreInitialCode; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "r", function() { return fetchUserInfoForNew; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "n", function() { return fetchUploadImage; }); +/* unused harmony export fetchUploadImageUrl */ +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return fetchAddNotes; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "i", function() { return fetchQuestion; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "l", function() { return fetchTagDisciplines; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator__ = __webpack_require__(79); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_axios__ = __webpack_require__(8); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_axios___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_axios__); +function _asyncToGenerator(fn){return function(){var gen=fn.apply(this,arguments);return new Promise(function(resolve,reject){function step(key,arg){try{var info=gen[key](arg);var value=info.value;}catch(error){reject(error);return;}if(info.done){resolve(value);}else{return Promise.resolve(value).then(function(value){step("next",value);},function(err){step("throw",err);});}}return step("next");});};}/* + * @Description: 开发者社区接口 + * @Author: tangjiang + * @Github: + * @Date: 2019-11-20 10:55:38 + * @LastEditors : tangjiang + * @LastEditTime : 2020-01-07 15:23:19 + */var fetchOJList=function(){var _ref=_asyncToGenerator(/*#__PURE__*/__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.mark(function _callee(params){var obj;return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.wrap(function _callee$(_context){while(1){switch(_context.prev=_context.next){case 0:// console.log('传递的参数: ', params); +obj={};Object.keys(params).forEach(function(key){if(params[key]){obj[key]=params[key];}});return _context.abrupt('return',__WEBPACK_IMPORTED_MODULE_1_axios___default.a.get('/problems.json',{params:obj}));case 3:case'end':return _context.stop();}}},_callee,this);}));return function fetchOJList(_x){return _ref.apply(this,arguments);};}();// 删除OJ列表 +var fetchDeleteOJItem=function(){var _ref2=_asyncToGenerator(/*#__PURE__*/__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.mark(function _callee2(identifier){var url;return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.wrap(function _callee2$(_context2){while(1){switch(_context2.prev=_context2.next){case 0:url='/problems/'+identifier+'.json';return _context2.abrupt('return',__WEBPACK_IMPORTED_MODULE_1_axios___default.a.delete(url));case 2:case'end':return _context2.stop();}}},_callee2,this);}));return function fetchDeleteOJItem(_x2){return _ref2.apply(this,arguments);};}();// 提交 +var fetchPostOjForm=function(){var _ref3=_asyncToGenerator(/*#__PURE__*/__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.mark(function _callee3(paramsObj){var params,submitType,identifier,url;return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.wrap(function _callee3$(_context3){while(1){switch(_context3.prev=_context3.next){case 0:params=paramsObj.params,submitType=paramsObj.submitType,identifier=paramsObj.identifier;url=submitType==='add'?'/problems.json':'/problems/'+identifier+'.json';// return axios.post(url, params); +// if (identifier) { +// return axios.post(url, params); +// } else { +// return +// } +return _context3.abrupt('return',identifier?__WEBPACK_IMPORTED_MODULE_1_axios___default.a.put(url,params):__WEBPACK_IMPORTED_MODULE_1_axios___default.a.post(url,params));case 3:case'end':return _context3.stop();}}},_callee3,this);}));return function fetchPostOjForm(_x3){return _ref3.apply(this,arguments);};}();// 根据id号获取OJ信息 +var fetchGetOjById=function(){var _ref4=_asyncToGenerator(/*#__PURE__*/__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.mark(function _callee4(id){var url;return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.wrap(function _callee4$(_context4){while(1){switch(_context4.prev=_context4.next){case 0:url='/problems/'+id+'/edit.json';return _context4.abrupt('return',__WEBPACK_IMPORTED_MODULE_1_axios___default.a.get(url));case 2:case'end':return _context4.stop();}}},_callee4,this);}));return function fetchGetOjById(_x4){return _ref4.apply(this,arguments);};}();// 调试代码 +var fetchDebuggerCode=function(){var _ref5=_asyncToGenerator(/*#__PURE__*/__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.mark(function _callee5(identifier,params){var url;return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.wrap(function _callee5$(_context5){while(1){switch(_context5.prev=_context5.next){case 0:url='/myproblems/'+identifier+'/code_debug.json';return _context5.abrupt('return',__WEBPACK_IMPORTED_MODULE_1_axios___default.a.get(url,{params:params}));case 2:case'end':return _context5.stop();}}},_callee5,this);}));return function fetchDebuggerCode(_x5,_x6){return _ref5.apply(this,arguments);};}();// 调试代码成功后,循环调用提交接口 +var fetchCodeSubmit=function(){var _ref6=_asyncToGenerator(/*#__PURE__*/__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.mark(function _callee6(identifier,params){var url;return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.wrap(function _callee6$(_context6){while(1){switch(_context6.prev=_context6.next){case 0:url='/myproblems/'+identifier+'/result.json';return _context6.abrupt('return',__WEBPACK_IMPORTED_MODULE_1_axios___default.a.get(url,{params:params}));case 2:case'end':return _context6.stop();}}},_callee6,this);}));return function fetchCodeSubmit(_x7,_x8){return _ref6.apply(this,arguments);};}();// 开启编程题接口 +var fetchStartProgram=function(){var _ref7=_asyncToGenerator(/*#__PURE__*/__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.mark(function _callee7(identifier){var url;return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.wrap(function _callee7$(_context7){while(1){switch(_context7.prev=_context7.next){case 0:url='/problems/'+identifier+'/start.json';return _context7.abrupt('return',__WEBPACK_IMPORTED_MODULE_1_axios___default.a.get(url));case 2:case'end':return _context7.stop();}}},_callee7,this);}));return function fetchStartProgram(_x9){return _ref7.apply(this,arguments);};}();// 用户编程题详情 +var fetchUserProgramDetail=function(){var _ref8=_asyncToGenerator(/*#__PURE__*/__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.mark(function _callee8(identifier){var url;return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.wrap(function _callee8$(_context8){while(1){switch(_context8.prev=_context8.next){case 0:url='/myproblems/'+identifier+'.json';return _context8.abrupt('return',__WEBPACK_IMPORTED_MODULE_1_axios___default.a.get(url));case 2:case'end':return _context8.stop();}}},_callee8,this);}));return function fetchUserProgramDetail(_x10){return _ref8.apply(this,arguments);};}();// 获取提交记录 +var fetchUserCommitRecord=function(){var _ref9=_asyncToGenerator(/*#__PURE__*/__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.mark(function _callee9(identifier,params){var url;return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.wrap(function _callee9$(_context9){while(1){switch(_context9.prev=_context9.next){case 0:// console.log('identifier=====', identifier); +url='/myproblems/'+identifier+'/submit_records.json';return _context9.abrupt('return',__WEBPACK_IMPORTED_MODULE_1_axios___default.a.get(url,{params:params}));case 2:case'end':return _context9.stop();}}},_callee9,this);}));return function fetchUserCommitRecord(_x11,_x12){return _ref9.apply(this,arguments);};}();// 获取提交记录详情 +var fetchUserCommitRecordDetail=function(){var _ref10=_asyncToGenerator(/*#__PURE__*/__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.mark(function _callee10(identifier){var url,params;return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.wrap(function _callee10$(_context10){while(1){switch(_context10.prev=_context10.next){case 0:url='/myproblems/record_detail.json';params={id:identifier};return _context10.abrupt('return',__WEBPACK_IMPORTED_MODULE_1_axios___default.a.get(url,{params:params}));case 3:case'end':return _context10.stop();}}},_callee10,this);}));return function fetchUserCommitRecordDetail(_x13){return _ref10.apply(this,arguments);};}();// 恢复初始代码 +// export async function restoreInitialCode (identifier) { +// const url = `/myproblems/${identifier}/restore_initial_code.json`; +// return axios.get(url); +// } +// 发布任务 +var publishTask=function(){var _ref11=_asyncToGenerator(/*#__PURE__*/__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.mark(function _callee11(identifier){var url;return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.wrap(function _callee11$(_context11){while(1){switch(_context11.prev=_context11.next){case 0:url='/problems/'+identifier+'/publish.json';return _context11.abrupt('return',__WEBPACK_IMPORTED_MODULE_1_axios___default.a.post(url));case 2:case'end':return _context11.stop();}}},_callee11,this);}));return function publishTask(_x14){return _ref11.apply(this,arguments);};}();// 撤销发布 +var cancelPublicTask=function(){var _ref12=_asyncToGenerator(/*#__PURE__*/__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.mark(function _callee12(identifier){var url;return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.wrap(function _callee12$(_context12){while(1){switch(_context12.prev=_context12.next){case 0:url='/problems/'+identifier+'/cancel_publish.json';return _context12.abrupt('return',__WEBPACK_IMPORTED_MODULE_1_axios___default.a.post(url));case 2:case'end':return _context12.stop();}}},_callee12,this);}));return function cancelPublicTask(_x15){return _ref12.apply(this,arguments);};}();// 更新用户编辑代码 +var fetchUpdateCode=function(){var _ref13=_asyncToGenerator(/*#__PURE__*/__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.mark(function _callee13(identifier,params){var url;return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.wrap(function _callee13$(_context13){while(1){switch(_context13.prev=_context13.next){case 0:url='/myproblems/'+identifier+'/update_code.json';return _context13.abrupt('return',__WEBPACK_IMPORTED_MODULE_1_axios___default.a.post(url,params));case 2:case'end':return _context13.stop();}}},_callee13,this);}));return function fetchUpdateCode(_x16,_x17){return _ref13.apply(this,arguments);};}();// 用户提交代码 +var fetchUserCodeSubmit=function(){var _ref14=_asyncToGenerator(/*#__PURE__*/__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.mark(function _callee14(identifier){var url;return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.wrap(function _callee14$(_context14){while(1){switch(_context14.prev=_context14.next){case 0:url='/myproblems/'+identifier+'/code_submit.json';return _context14.abrupt('return',__WEBPACK_IMPORTED_MODULE_1_axios___default.a.get(url));case 2:case'end':return _context14.stop();}}},_callee14,this);}));return function fetchUserCodeSubmit(_x18){return _ref14.apply(this,arguments);};}();// 恢复初始代码 +var fetchRestoreInitialCode=function(){var _ref15=_asyncToGenerator(/*#__PURE__*/__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.mark(function _callee15(identifier){var url;return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.wrap(function _callee15$(_context15){while(1){switch(_context15.prev=_context15.next){case 0:// const url = `/myproblems/${identifier}/restore_initial_code.json`; +url='/myproblems/'+identifier+'/sync_code.json';return _context15.abrupt('return',__WEBPACK_IMPORTED_MODULE_1_axios___default.a.post(url));case 2:case'end':return _context15.stop();}}},_callee15,this);}));return function fetchRestoreInitialCode(_x19){return _ref15.apply(this,arguments);};}();// 新建时调用获取用户信息接口 +var fetchUserInfoForNew=function(){var _ref16=_asyncToGenerator(/*#__PURE__*/__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.mark(function _callee16(){var url;return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.wrap(function _callee16$(_context16){while(1){switch(_context16.prev=_context16.next){case 0:url='/problems/new.json';return _context16.abrupt('return',__WEBPACK_IMPORTED_MODULE_1_axios___default.a.get(url));case 2:case'end':return _context16.stop();}}},_callee16,this);}));return function fetchUserInfoForNew(){return _ref16.apply(this,arguments);};}();// 文件上传 +var fetchUploadImage=function(){var _ref17=_asyncToGenerator(/*#__PURE__*/__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.mark(function _callee17(file){var url;return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.wrap(function _callee17$(_context17){while(1){switch(_context17.prev=_context17.next){case 0:url='/attachments.json';return _context17.abrupt('return',__WEBPACK_IMPORTED_MODULE_1_axios___default.a.post(url,file));case 2:case'end':return _context17.stop();}}},_callee17,this);}));return function fetchUploadImage(_x20){return _ref17.apply(this,arguments);};}();// 根据id号获取图片url +var fetchUploadImageUrl=function(){var _ref18=_asyncToGenerator(/*#__PURE__*/__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.mark(function _callee18(id){var url;return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.wrap(function _callee18$(_context18){while(1){switch(_context18.prev=_context18.next){case 0:url='/attachments/'+id;return _context18.abrupt('return',__WEBPACK_IMPORTED_MODULE_1_axios___default.a.get(url));case 2:case'end':return _context18.stop();}}},_callee18,this);}));return function fetchUploadImageUrl(_x21){return _ref18.apply(this,arguments);};}();// 添加笔记 +var fetchAddNotes=function(){var _ref19=_asyncToGenerator(/*#__PURE__*/__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.mark(function _callee19(identifier,params){var url;return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.wrap(function _callee19$(_context19){while(1){switch(_context19.prev=_context19.next){case 0:url='/myproblems/'+identifier+'/add_notes.json';return _context19.abrupt('return',__WEBPACK_IMPORTED_MODULE_1_axios___default.a.post(url,params));case 2:case'end':return _context19.stop();}}},_callee19,this);}));return function fetchAddNotes(_x22,_x23){return _ref19.apply(this,arguments);};}();// 获取课程体系 +var fetchQuestion=function(){var _ref20=_asyncToGenerator(/*#__PURE__*/__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.mark(function _callee20(params){var url;return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.wrap(function _callee20$(_context20){while(1){switch(_context20.prev=_context20.next){case 0:url='/disciplines.json';return _context20.abrupt('return',__WEBPACK_IMPORTED_MODULE_1_axios___default.a.get(url,{params:params}));case 2:case'end':return _context20.stop();}}},_callee20,this);}));return function fetchQuestion(_x24){return _ref20.apply(this,arguments);};}();// 新增选题 +var fetchTagDisciplines=function(){var _ref21=_asyncToGenerator(/*#__PURE__*/__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.mark(function _callee21(params){var url;return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.wrap(function _callee21$(_context21){while(1){switch(_context21.prev=_context21.next){case 0:url='/tag_disciplines.json';return _context21.abrupt('return',__WEBPACK_IMPORTED_MODULE_1_axios___default.a.post(url,params));case 2:case'end':return _context21.stop();}}},_callee21,this);}));return function fetchTagDisciplines(_x25){return _ref21.apply(this,arguments);};}(); + +/***/ }), +/* 95 */ +/***/ (function(module, exports) { + +exports.f = {}.propertyIsEnumerable; + + +/***/ }), +/* 96 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +var $at = __webpack_require__(482)(true); + +// 21.1.3.27 String.prototype[@@iterator]() +__webpack_require__(147)(String, 'String', function (iterated) { + this._t = String(iterated); // target + this._i = 0; // next index +// 21.1.5.2.1 %StringIteratorPrototype%.next() +}, function () { + var O = this._t; + var index = this._i; + var point; + if (index >= O.length) return { value: undefined, done: true }; + point = $at(O, index); + this._i += point.length; + return { value: point, done: false }; +}); + + +/***/ }), +/* 97 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var _interopRequireDefault = __webpack_require__(2); + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = void 0; + +var _extends2 = _interopRequireDefault(__webpack_require__(9)); + +var _getPrototypeOf = _interopRequireDefault(__webpack_require__(22)); + +var _classCallCheck2 = _interopRequireDefault(__webpack_require__(17)); + +var _createClass2 = _interopRequireDefault(__webpack_require__(18)); + +var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(23)); + +var _inherits2 = _interopRequireDefault(__webpack_require__(24)); + +var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(25)); + +var _react = _interopRequireDefault(__webpack_require__(0)); + +var _hoistNonReactStatics = _interopRequireDefault(__webpack_require__(155)); + +var _wrapDisplayName = _interopRequireDefault(__webpack_require__(124)); + +var _createMuiTheme = _interopRequireDefault(__webpack_require__(159)); + +var _themeListener = _interopRequireDefault(__webpack_require__(160)); + +var defaultTheme; + +function getDefaultTheme() { + if (defaultTheme) { + return defaultTheme; + } + + defaultTheme = (0, _createMuiTheme.default)(); + return defaultTheme; +} // Provide the theme object as a property to the input component. + + +var withTheme = function withTheme() { + return function (Component) { + var WithTheme = + /*#__PURE__*/ + function (_React$Component) { + (0, _inherits2.default)(WithTheme, _React$Component); + + function WithTheme(props, context) { + var _this; + + (0, _classCallCheck2.default)(this, WithTheme); + _this = (0, _possibleConstructorReturn2.default)(this, (WithTheme.__proto__ || (0, _getPrototypeOf.default)(WithTheme)).call(this, props, context)); + Object.defineProperty((0, _assertThisInitialized2.default)(_this), "state", { + configurable: true, + enumerable: true, + writable: true, + value: {} + }); + Object.defineProperty((0, _assertThisInitialized2.default)(_this), "unsubscribeId", { + configurable: true, + enumerable: true, + writable: true, + value: null + }); + _this.state = { + // We use || as the function call is lazy evaluated. + theme: _themeListener.default.initial(context) || getDefaultTheme() + }; + return _this; + } + + (0, _createClass2.default)(WithTheme, [{ + key: "componentDidMount", + value: function componentDidMount() { + var _this2 = this; + + this.unsubscribeId = _themeListener.default.subscribe(this.context, function (theme) { + _this2.setState({ + theme: theme + }); + }); + } + }, { + key: "componentWillUnmount", + value: function componentWillUnmount() { + if (this.unsubscribeId !== null) { + _themeListener.default.unsubscribe(this.context, this.unsubscribeId); + } + } + }, { + key: "render", + value: function render() { + return _react.default.createElement(Component, (0, _extends2.default)({ + theme: this.state.theme + }, this.props)); + } + }]); + return WithTheme; + }(_react.default.Component); + + WithTheme.contextTypes = _themeListener.default.contextTypes; + + if (false) { + WithTheme.displayName = (0, _wrapDisplayName.default)(Component, 'WithTheme'); + } + + (0, _hoistNonReactStatics.default)(WithTheme, Component); + + if (false) { + // Exposed for test purposes. + WithTheme.Naked = Component; + } + + return WithTheme; + }; +}; + +var _default = withTheme; +exports.default = _default; + +/***/ }), +/* 98 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_warning__ = __webpack_require__(64); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_warning___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_warning__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_invariant__ = __webpack_require__(48); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_invariant___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_invariant__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react__ = __webpack_require__(0); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_react__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_prop_types__ = __webpack_require__(1); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_prop_types__); +var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } + +function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } + + + + + + +/** + * The public API for putting history on context. + */ + +var Router = function (_React$Component) { + _inherits(Router, _React$Component); + + function Router() { + var _temp, _this, _ret; + + _classCallCheck(this, Router); + + for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + + return _ret = (_temp = (_this = _possibleConstructorReturn(this, _React$Component.call.apply(_React$Component, [this].concat(args))), _this), _this.state = { + match: _this.computeMatch(_this.props.history.location.pathname) + }, _temp), _possibleConstructorReturn(_this, _ret); + } + + Router.prototype.getChildContext = function getChildContext() { + return { + router: _extends({}, this.context.router, { + history: this.props.history, + route: { + location: this.props.history.location, + match: this.state.match + } + }) + }; + }; + + Router.prototype.computeMatch = function computeMatch(pathname) { + return { + path: "/", + url: "/", + params: {}, + isExact: pathname === "/" + }; + }; + + Router.prototype.componentWillMount = function componentWillMount() { + var _this2 = this; + + var _props = this.props, + children = _props.children, + history = _props.history; + + + __WEBPACK_IMPORTED_MODULE_1_invariant___default()(children == null || __WEBPACK_IMPORTED_MODULE_2_react___default.a.Children.count(children) === 1, "A may have only one child element"); + + // Do this here so we can setState when a changes the + // location in componentWillMount. This happens e.g. when doing + // server rendering using a . + this.unlisten = history.listen(function () { + _this2.setState({ + match: _this2.computeMatch(history.location.pathname) + }); + }); + }; + + Router.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) { + __WEBPACK_IMPORTED_MODULE_0_warning___default()(this.props.history === nextProps.history, "You cannot change "); + }; + + Router.prototype.componentWillUnmount = function componentWillUnmount() { + this.unlisten(); + }; + + Router.prototype.render = function render() { + var children = this.props.children; + + return children ? __WEBPACK_IMPORTED_MODULE_2_react___default.a.Children.only(children) : null; + }; + + return Router; +}(__WEBPACK_IMPORTED_MODULE_2_react___default.a.Component); + +Router.propTypes = { + history: __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.object.isRequired, + children: __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.node +}; +Router.contextTypes = { + router: __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.object +}; +Router.childContextTypes = { + router: __WEBPACK_IMPORTED_MODULE_3_prop_types___default.a.object.isRequired +}; + + +/* harmony default export */ __webpack_exports__["a"] = (Router); + +/***/ }), +/* 99 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_path_to_regexp__ = __webpack_require__(220); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_path_to_regexp___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_path_to_regexp__); + + +var patternCache = {}; +var cacheLimit = 10000; +var cacheCount = 0; + +var compilePath = function compilePath(pattern, options) { + var cacheKey = "" + options.end + options.strict + options.sensitive; + var cache = patternCache[cacheKey] || (patternCache[cacheKey] = {}); + + if (cache[pattern]) return cache[pattern]; + + var keys = []; + var re = __WEBPACK_IMPORTED_MODULE_0_path_to_regexp___default()(pattern, keys, options); + var compiledPattern = { re: re, keys: keys }; + + if (cacheCount < cacheLimit) { + cache[pattern] = compiledPattern; + cacheCount++; + } + + return compiledPattern; +}; + +/** + * Public API for matching a URL pathname to a path pattern. + */ +var matchPath = function matchPath(pathname) { + var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; + var parent = arguments[2]; + + if (typeof options === "string") options = { path: options }; + + var _options = options, + path = _options.path, + _options$exact = _options.exact, + exact = _options$exact === undefined ? false : _options$exact, + _options$strict = _options.strict, + strict = _options$strict === undefined ? false : _options$strict, + _options$sensitive = _options.sensitive, + sensitive = _options$sensitive === undefined ? false : _options$sensitive; + + + if (path == null) return parent; + + var _compilePath = compilePath(path, { end: exact, strict: strict, sensitive: sensitive }), + re = _compilePath.re, + keys = _compilePath.keys; + + var match = re.exec(pathname); + + if (!match) return null; + + var url = match[0], + values = match.slice(1); + + var isExact = pathname === url; + + if (exact && !isExact) return null; + + return { + path: path, // the path pattern used to match + url: path === "/" && url === "" ? "/" : url, // the matched portion of the URL + isExact: isExact, // whether or not we matched exactly + params: keys.reduce(function (memo, key, index) { + memo[key.name] = values[index]; + return memo; + }, {}) + }; +}; + +/* harmony default export */ __webpack_exports__["a"] = (matchPath); + +/***/ }), +/* 100 */ +/***/ (function(module, exports, __webpack_require__) { + +// 7.1.15 ToLength +var toInteger = __webpack_require__(142); +var min = Math.min; +module.exports = function (it) { + return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991 +}; + + +/***/ }), +/* 101 */ +/***/ (function(module, exports) { + +module.exports = true; + + +/***/ }), +/* 102 */ +/***/ (function(module, exports) { + +var id = 0; +var px = Math.random(); +module.exports = function (key) { + return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36)); +}; + + +/***/ }), +/* 103 */ +/***/ (function(module, exports, __webpack_require__) { + +// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties]) +var anObject = __webpack_require__(53); +var dPs = __webpack_require__(484); +var enumBugKeys = __webpack_require__(145); +var IE_PROTO = __webpack_require__(143)('IE_PROTO'); +var Empty = function () { /* empty */ }; +var PROTOTYPE = 'prototype'; + +// Create object with fake `null` prototype: use iframe Object with cleared prototype +var createDict = function () { + // Thrash, waste and sodomy: IE GC bug + var iframe = __webpack_require__(236)('iframe'); + var i = enumBugKeys.length; + var lt = '<'; + var gt = '>'; + var iframeDocument; + iframe.style.display = 'none'; + __webpack_require__(485).appendChild(iframe); + iframe.src = 'javascript:'; // eslint-disable-line no-script-url + // createDict = iframe.contentWindow.Object; + // html.removeChild(iframe); + iframeDocument = iframe.contentWindow.document; + iframeDocument.open(); + iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt); + iframeDocument.close(); + createDict = iframeDocument.F; + while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]]; + return createDict(); +}; + +module.exports = Object.create || function create(O, Properties) { + var result; + if (O !== null) { + Empty[PROTOTYPE] = anObject(O); + result = new Empty(); + Empty[PROTOTYPE] = null; + // add "__proto__" for Object.getPrototypeOf polyfill + result[IE_PROTO] = O; + } else result = createDict(); + return Properties === undefined ? result : dPs(result, Properties); +}; + + +/***/ }), +/* 104 */ +/***/ (function(module, exports, __webpack_require__) { + +var def = __webpack_require__(37).f; +var has = __webpack_require__(57); +var TAG = __webpack_require__(32)('toStringTag'); + +module.exports = function (it, tag, stat) { + if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag }); +}; + + +/***/ }), +/* 105 */ +/***/ (function(module, exports, __webpack_require__) { + +var ctx = __webpack_require__(55); +var call = __webpack_require__(256); +var isArrayIter = __webpack_require__(257); +var anObject = __webpack_require__(53); +var toLength = __webpack_require__(100); +var getIterFn = __webpack_require__(206); +var BREAK = {}; +var RETURN = {}; +var exports = module.exports = function (iterable, entries, fn, that, ITERATOR) { + var iterFn = ITERATOR ? function () { return iterable; } : getIterFn(iterable); + var f = ctx(fn, that, entries ? 2 : 1); + var index = 0; + var length, step, iterator, result; + if (typeof iterFn != 'function') throw TypeError(iterable + ' is not iterable!'); + // fast case for arrays with default iterator + if (isArrayIter(iterFn)) for (length = toLength(iterable.length); length > index; index++) { + result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]); + if (result === BREAK || result === RETURN) return result; + } else for (iterator = iterFn.call(iterable); !(step = iterator.next()).done;) { + result = call(iterator, f, step.value, entries); + if (result === BREAK || result === RETURN) return result; + } +}; +exports.BREAK = BREAK; +exports.RETURN = RETURN; + + +/***/ }), +/* 106 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports['default'] = toCssValue; +var join = function join(value, by) { + var result = ''; + for (var i = 0; i < value.length; i++) { + // Remove !important from the value, it will be readded later. + if (value[i] === '!important') break; + if (result) result += by; + result += value[i]; + } + return result; +}; + +/** + * Converts array values to string. + * + * `margin: [['5px', '10px']]` > `margin: 5px 10px;` + * `border: ['1px', '2px']` > `border: 1px, 2px;` + * `margin: [['5px', '10px'], '!important']` > `margin: 5px 10px !important;` + * `color: ['red', !important]` > `color: red !important;` + */ +function toCssValue(value) { + var ignoreImportant = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; + + if (!Array.isArray(value)) return value; + + var cssValue = ''; + + // Support space separated values via `[['5px', '10px']]`. + if (Array.isArray(value[0])) { + for (var i = 0; i < value.length; i++) { + if (value[i] === '!important') break; + if (cssValue) cssValue += ', '; + cssValue += join(value[i], ' '); + } + } else cssValue = join(value, ', '); + + // Add !important, because it was ignored. + if (!ignoreImportant && value[value.length - 1] === '!important') { + cssValue += ' !important'; + } + + return cssValue; +} + +/***/ }), +/* 107 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports['default'] = createRule; + +var _warning = __webpack_require__(15); + +var _warning2 = _interopRequireDefault(_warning); + +var _StyleRule = __webpack_require__(67); + +var _StyleRule2 = _interopRequireDefault(_StyleRule); + +var _cloneStyle = __webpack_require__(547); + +var _cloneStyle2 = _interopRequireDefault(_cloneStyle); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } + +/** + * Create a rule instance. + */ +function createRule() { + var name = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'unnamed'; + var decl = arguments[1]; + var options = arguments[2]; + var jss = options.jss; + + var declCopy = (0, _cloneStyle2['default'])(decl); + + var rule = jss.plugins.onCreateRule(name, declCopy, options); + if (rule) return rule; + + // It is an at-rule and it has no instance. + if (name[0] === '@') { + (0, _warning2['default'])(false, '[JSS] Unknown at-rule %s', name); + } + + return new _StyleRule2['default'](name, declCopy, options); +} + +/***/ }), +/* 108 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "isBrowser", function() { return isBrowser; }); +var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; + +var isBrowser = (typeof window === "undefined" ? "undefined" : _typeof(window)) === "object" && (typeof document === "undefined" ? "undefined" : _typeof(document)) === 'object' && document.nodeType === 9; + +/* harmony default export */ __webpack_exports__["default"] = (isBrowser); + + +/***/ }), +/* 109 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); +var isMergeableObject = function isMergeableObject(value) { + return isNonNullObject(value) + && !isSpecial(value) +}; + +function isNonNullObject(value) { + return !!value && typeof value === 'object' +} + +function isSpecial(value) { + var stringValue = Object.prototype.toString.call(value); + + return stringValue === '[object RegExp]' + || stringValue === '[object Date]' + || isReactElement(value) +} + +// see https://github.com/facebook/react/blob/b5ac963fb791d1298e7f396236383bc955f916c1/src/isomorphic/classic/element/ReactElement.js#L21-L25 +var canUseSymbol = typeof Symbol === 'function' && Symbol.for; +var REACT_ELEMENT_TYPE = canUseSymbol ? Symbol.for('react.element') : 0xeac7; + +function isReactElement(value) { + return value.$$typeof === REACT_ELEMENT_TYPE +} + +function emptyTarget(val) { + return Array.isArray(val) ? [] : {} +} + +function cloneUnlessOtherwiseSpecified(value, options) { + return (options.clone !== false && options.isMergeableObject(value)) + ? deepmerge(emptyTarget(value), value, options) + : value +} + +function defaultArrayMerge(target, source, options) { + return target.concat(source).map(function(element) { + return cloneUnlessOtherwiseSpecified(element, options) + }) +} + +function mergeObject(target, source, options) { + var destination = {}; + if (options.isMergeableObject(target)) { + Object.keys(target).forEach(function(key) { + destination[key] = cloneUnlessOtherwiseSpecified(target[key], options); + }); + } + Object.keys(source).forEach(function(key) { + if (!options.isMergeableObject(source[key]) || !target[key]) { + destination[key] = cloneUnlessOtherwiseSpecified(source[key], options); + } else { + destination[key] = deepmerge(target[key], source[key], options); + } + }); + return destination +} + +function deepmerge(target, source, options) { + options = options || {}; + options.arrayMerge = options.arrayMerge || defaultArrayMerge; + options.isMergeableObject = options.isMergeableObject || isMergeableObject; + + var sourceIsArray = Array.isArray(source); + var targetIsArray = Array.isArray(target); + var sourceAndTargetTypesMatch = sourceIsArray === targetIsArray; + + if (!sourceAndTargetTypesMatch) { + return cloneUnlessOtherwiseSpecified(source, options) + } else if (sourceIsArray) { + return options.arrayMerge(target, source, options) + } else { + return mergeObject(target, source, options) + } +} + +deepmerge.all = function deepmergeAll(array, options) { + if (!Array.isArray(array)) { + throw new Error('first argument should be an array') + } + + return array.reduce(function(prev, next) { + return deepmerge(prev, next, options) + }, {}) +}; + +var deepmerge_1 = deepmerge; + +/* harmony default export */ __webpack_exports__["default"] = (deepmerge_1); + + +/***/ }), +/* 110 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +exports.__esModule = true; +exports.default = void 0; + +var _default = !!(typeof window !== 'undefined' && window.document && window.document.createElement); + +exports.default = _default; +module.exports = exports["default"]; + +/***/ }), +/* 111 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +/** + * @ignore + * some key-codes definition and utils from closure-library + * @author yiminghe@gmail.com + */ +var KeyCode = { + /** + * MAC_ENTER + */ + MAC_ENTER: 3, + + /** + * BACKSPACE + */ + BACKSPACE: 8, + + /** + * TAB + */ + TAB: 9, + + /** + * NUMLOCK on FF/Safari Mac + */ + NUM_CENTER: 12, + + /** + * ENTER + */ + ENTER: 13, + + /** + * SHIFT + */ + SHIFT: 16, + + /** + * CTRL + */ + CTRL: 17, + + /** + * ALT + */ + ALT: 18, + + /** + * PAUSE + */ + PAUSE: 19, + + /** + * CAPS_LOCK + */ + CAPS_LOCK: 20, + + /** + * ESC + */ + ESC: 27, + + /** + * SPACE + */ + SPACE: 32, + + /** + * PAGE_UP + */ + PAGE_UP: 33, + + /** + * PAGE_DOWN + */ + PAGE_DOWN: 34, + + /** + * END + */ + END: 35, + + /** + * HOME + */ + HOME: 36, + + /** + * LEFT + */ + LEFT: 37, + + /** + * UP + */ + UP: 38, + + /** + * RIGHT + */ + RIGHT: 39, + + /** + * DOWN + */ + DOWN: 40, + + /** + * PRINT_SCREEN + */ + PRINT_SCREEN: 44, + + /** + * INSERT + */ + INSERT: 45, + + /** + * DELETE + */ + DELETE: 46, + + /** + * ZERO + */ + ZERO: 48, + + /** + * ONE + */ + ONE: 49, + + /** + * TWO + */ + TWO: 50, + + /** + * THREE + */ + THREE: 51, + + /** + * FOUR + */ + FOUR: 52, + + /** + * FIVE + */ + FIVE: 53, + + /** + * SIX + */ + SIX: 54, + + /** + * SEVEN + */ + SEVEN: 55, + + /** + * EIGHT + */ + EIGHT: 56, + + /** + * NINE + */ + NINE: 57, + + /** + * QUESTION_MARK + */ + QUESTION_MARK: 63, + + /** + * A + */ + A: 65, + + /** + * B + */ + B: 66, + + /** + * C + */ + C: 67, + + /** + * D + */ + D: 68, + + /** + * E + */ + E: 69, + + /** + * F + */ + F: 70, + + /** + * G + */ + G: 71, + + /** + * H + */ + H: 72, + + /** + * I + */ + I: 73, + + /** + * J + */ + J: 74, + + /** + * K + */ + K: 75, + + /** + * L + */ + L: 76, + + /** + * M + */ + M: 77, + + /** + * N + */ + N: 78, + + /** + * O + */ + O: 79, + + /** + * P + */ + P: 80, + + /** + * Q + */ + Q: 81, + + /** + * R + */ + R: 82, + + /** + * S + */ + S: 83, + + /** + * T + */ + T: 84, + + /** + * U + */ + U: 85, + + /** + * V + */ + V: 86, + + /** + * W + */ + W: 87, + + /** + * X + */ + X: 88, + + /** + * Y + */ + Y: 89, + + /** + * Z + */ + Z: 90, + + /** + * META + */ + META: 91, + + /** + * WIN_KEY_RIGHT + */ + WIN_KEY_RIGHT: 92, + + /** + * CONTEXT_MENU + */ + CONTEXT_MENU: 93, + + /** + * NUM_ZERO + */ + NUM_ZERO: 96, + + /** + * NUM_ONE + */ + NUM_ONE: 97, + + /** + * NUM_TWO + */ + NUM_TWO: 98, + + /** + * NUM_THREE + */ + NUM_THREE: 99, + + /** + * NUM_FOUR + */ + NUM_FOUR: 100, + + /** + * NUM_FIVE + */ + NUM_FIVE: 101, + + /** + * NUM_SIX + */ + NUM_SIX: 102, + + /** + * NUM_SEVEN + */ + NUM_SEVEN: 103, + + /** + * NUM_EIGHT + */ + NUM_EIGHT: 104, + + /** + * NUM_NINE + */ + NUM_NINE: 105, + + /** + * NUM_MULTIPLY + */ + NUM_MULTIPLY: 106, + + /** + * NUM_PLUS + */ + NUM_PLUS: 107, + + /** + * NUM_MINUS + */ + NUM_MINUS: 109, + + /** + * NUM_PERIOD + */ + NUM_PERIOD: 110, + + /** + * NUM_DIVISION + */ + NUM_DIVISION: 111, + + /** + * F1 + */ + F1: 112, + + /** + * F2 + */ + F2: 113, + + /** + * F3 + */ + F3: 114, + + /** + * F4 + */ + F4: 115, + + /** + * F5 + */ + F5: 116, + + /** + * F6 + */ + F6: 117, + + /** + * F7 + */ + F7: 118, + + /** + * F8 + */ + F8: 119, + + /** + * F9 + */ + F9: 120, + + /** + * F10 + */ + F10: 121, + + /** + * F11 + */ + F11: 122, + + /** + * F12 + */ + F12: 123, + + /** + * NUMLOCK + */ + NUMLOCK: 144, + + /** + * SEMICOLON + */ + SEMICOLON: 186, + + /** + * DASH + */ + DASH: 189, + + /** + * EQUALS + */ + EQUALS: 187, + + /** + * COMMA + */ + COMMA: 188, + + /** + * PERIOD + */ + PERIOD: 190, + + /** + * SLASH + */ + SLASH: 191, + + /** + * APOSTROPHE + */ + APOSTROPHE: 192, + + /** + * SINGLE_QUOTE + */ + SINGLE_QUOTE: 222, + + /** + * OPEN_SQUARE_BRACKET + */ + OPEN_SQUARE_BRACKET: 219, + + /** + * BACKSLASH + */ + BACKSLASH: 220, + + /** + * CLOSE_SQUARE_BRACKET + */ + CLOSE_SQUARE_BRACKET: 221, + + /** + * WIN_KEY + */ + WIN_KEY: 224, + + /** + * MAC_FF_META + */ + MAC_FF_META: 224, + + /** + * WIN_IME + */ + WIN_IME: 229, + // ======================== Function ======================== + + /** + * whether text and modified key is entered at the same time. + */ + isTextModifyingKeyEvent: function isTextModifyingKeyEvent(e) { + var keyCode = e.keyCode; + + if (e.altKey && !e.ctrlKey || e.metaKey || // Function keys don't generate text + keyCode >= KeyCode.F1 && keyCode <= KeyCode.F12) { + return false; + } // The following keys are quite harmless, even in combination with + // CTRL, ALT or SHIFT. + + + switch (keyCode) { + case KeyCode.ALT: + case KeyCode.CAPS_LOCK: + case KeyCode.CONTEXT_MENU: + case KeyCode.CTRL: + case KeyCode.DOWN: + case KeyCode.END: + case KeyCode.ESC: + case KeyCode.HOME: + case KeyCode.INSERT: + case KeyCode.LEFT: + case KeyCode.MAC_FF_META: + case KeyCode.META: + case KeyCode.NUMLOCK: + case KeyCode.NUM_CENTER: + case KeyCode.PAGE_DOWN: + case KeyCode.PAGE_UP: + case KeyCode.PAUSE: + case KeyCode.PRINT_SCREEN: + case KeyCode.RIGHT: + case KeyCode.SHIFT: + case KeyCode.UP: + case KeyCode.WIN_KEY: + case KeyCode.WIN_KEY_RIGHT: + return false; + + default: + return true; + } + }, + + /** + * whether character is entered. + */ + isCharacterKey: function isCharacterKey(keyCode) { + if (keyCode >= KeyCode.ZERO && keyCode <= KeyCode.NINE) { + return true; + } + + if (keyCode >= KeyCode.NUM_ZERO && keyCode <= KeyCode.NUM_MULTIPLY) { + return true; + } + + if (keyCode >= KeyCode.A && keyCode <= KeyCode.Z) { + return true; + } // Safari sends zero key code for non-latin characters. + + + if (window.navigator.userAgent.indexOf('WebKit') !== -1 && keyCode === 0) { + return true; + } + + switch (keyCode) { + case KeyCode.SPACE: + case KeyCode.QUESTION_MARK: + case KeyCode.NUM_PLUS: + case KeyCode.NUM_MINUS: + case KeyCode.NUM_PERIOD: + case KeyCode.NUM_DIVISION: + case KeyCode.SEMICOLON: + case KeyCode.DASH: + case KeyCode.EQUALS: + case KeyCode.COMMA: + case KeyCode.PERIOD: + case KeyCode.SLASH: + case KeyCode.APOSTROPHE: + case KeyCode.SINGLE_QUOTE: + case KeyCode.OPEN_SQUARE_BRACKET: + case KeyCode.BACKSLASH: + case KeyCode.CLOSE_SQUARE_BRACKET: + return true; + + default: + return false; + } + } +}; +/* harmony default export */ __webpack_exports__["a"] = (KeyCode); + +/***/ }), +/* 112 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.DEPRECATED_CONFIG_PROPS = exports.defaultProps = exports.propTypes = void 0; + +var _propTypes = _interopRequireDefault(__webpack_require__(1)); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +var string = _propTypes["default"].string, + bool = _propTypes["default"].bool, + number = _propTypes["default"].number, + array = _propTypes["default"].array, + oneOfType = _propTypes["default"].oneOfType, + shape = _propTypes["default"].shape, + object = _propTypes["default"].object, + func = _propTypes["default"].func, + node = _propTypes["default"].node; +var propTypes = { + url: oneOfType([string, array, object]), + playing: bool, + loop: bool, + controls: bool, + volume: number, + muted: bool, + playbackRate: number, + width: oneOfType([string, number]), + height: oneOfType([string, number]), + style: object, + progressInterval: number, + playsinline: bool, + pip: bool, + light: oneOfType([bool, string]), + playIcon: node, + wrapper: oneOfType([string, func, shape({ + render: func.isRequired + })]), + config: shape({ + soundcloud: shape({ + options: object, + preload: bool + }), + youtube: shape({ + playerVars: object, + embedOptions: object, + preload: bool + }), + facebook: shape({ + appId: string, + version: string, + playerId: string + }), + dailymotion: shape({ + params: object, + preload: bool + }), + vimeo: shape({ + playerOptions: object, + preload: bool + }), + file: shape({ + attributes: object, + tracks: array, + forceVideo: bool, + forceAudio: bool, + forceHLS: bool, + forceDASH: bool, + hlsOptions: object, + hlsVersion: string, + dashVersion: string + }), + wistia: shape({ + options: object + }), + mixcloud: shape({ + options: object + }), + twitch: shape({ + options: object, + playerId: string + }) + }), + onReady: func, + onStart: func, + onPlay: func, + onPause: func, + onBuffer: func, + onBufferEnd: func, + onEnded: func, + onError: func, + onDuration: func, + onSeek: func, + onProgress: func, + onEnablePIP: func, + onDisablePIP: func +}; +exports.propTypes = propTypes; +var defaultProps = { + playing: false, + loop: false, + controls: false, + volume: null, + muted: false, + playbackRate: 1, + width: '640px', + height: '360px', + style: {}, + progressInterval: 1000, + playsinline: false, + pip: false, + light: false, + wrapper: 'div', + config: { + soundcloud: { + options: { + visual: true, + // Undocumented, but makes player fill container and look better + buying: false, + liking: false, + download: false, + sharing: false, + show_comments: false, + show_playcount: false + } + }, + youtube: { + playerVars: { + playsinline: 1, + showinfo: 0, + rel: 0, + iv_load_policy: 3, + modestbranding: 1 + }, + embedOptions: {}, + preload: false + }, + facebook: { + appId: '1309697205772819', + version: 'v3.3', + playerId: null + }, + dailymotion: { + params: { + api: 1, + 'endscreen-enable': false + }, + preload: false + }, + vimeo: { + playerOptions: { + autopause: false, + byline: false, + portrait: false, + title: false + }, + preload: false + }, + file: { + attributes: {}, + tracks: [], + forceVideo: false, + forceAudio: false, + forceHLS: false, + forceDASH: false, + hlsOptions: {}, + hlsVersion: '0.13.1', + dashVersion: '2.9.2' + }, + wistia: { + options: {} + }, + mixcloud: { + options: { + hide_cover: 1 + } + }, + twitch: { + options: {}, + playerId: null + } + }, + onReady: function onReady() {}, + onStart: function onStart() {}, + onPlay: function onPlay() {}, + onPause: function onPause() {}, + onBuffer: function onBuffer() {}, + onBufferEnd: function onBufferEnd() {}, + onEnded: function onEnded() {}, + onError: function onError() {}, + onDuration: function onDuration() {}, + onSeek: function onSeek() {}, + onProgress: function onProgress() {}, + onEnablePIP: function onEnablePIP() {}, + onDisablePIP: function onDisablePIP() {} +}; +exports.defaultProps = defaultProps; +var DEPRECATED_CONFIG_PROPS = ['soundcloudConfig', 'youtubeConfig', 'facebookConfig', 'dailymotionConfig', 'vimeoConfig', 'fileConfig', 'wistiaConfig']; +exports.DEPRECATED_CONFIG_PROPS = DEPRECATED_CONFIG_PROPS; + +/***/ }), +/* 113 */ +/***/ (function(module, exports, __webpack_require__) { + +/* WEBPACK VAR INJECTION */(function(global) {var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/* + * base64.js + * + * Licensed under the BSD 3-Clause License. + * http://opensource.org/licenses/BSD-3-Clause + * + * References: + * http://en.wikipedia.org/wiki/Base64 + */ +;(function (global, factory) { + true + ? module.exports = factory(global) + : typeof define === 'function' && define.amd + ? define(factory) : factory(global) +}(( + typeof self !== 'undefined' ? self + : typeof window !== 'undefined' ? window + : typeof global !== 'undefined' ? global +: this +), function(global) { + 'use strict'; + // existing version for noConflict() + global = global || {}; + var _Base64 = global.Base64; + var version = "2.5.1"; + // if node.js and NOT React Native, we use Buffer + var buffer; + if (typeof module !== 'undefined' && module.exports) { + try { + buffer = eval("require('buffer').Buffer"); + } catch (err) { + buffer = undefined; + } + } + // constants + var b64chars + = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'; + var b64tab = function(bin) { + var t = {}; + for (var i = 0, l = bin.length; i < l; i++) t[bin.charAt(i)] = i; + return t; + }(b64chars); + var fromCharCode = String.fromCharCode; + // encoder stuff + var cb_utob = function(c) { + if (c.length < 2) { + var cc = c.charCodeAt(0); + return cc < 0x80 ? c + : cc < 0x800 ? (fromCharCode(0xc0 | (cc >>> 6)) + + fromCharCode(0x80 | (cc & 0x3f))) + : (fromCharCode(0xe0 | ((cc >>> 12) & 0x0f)) + + fromCharCode(0x80 | ((cc >>> 6) & 0x3f)) + + fromCharCode(0x80 | ( cc & 0x3f))); + } else { + var cc = 0x10000 + + (c.charCodeAt(0) - 0xD800) * 0x400 + + (c.charCodeAt(1) - 0xDC00); + return (fromCharCode(0xf0 | ((cc >>> 18) & 0x07)) + + fromCharCode(0x80 | ((cc >>> 12) & 0x3f)) + + fromCharCode(0x80 | ((cc >>> 6) & 0x3f)) + + fromCharCode(0x80 | ( cc & 0x3f))); + } + }; + var re_utob = /[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g; + var utob = function(u) { + return u.replace(re_utob, cb_utob); + }; + var cb_encode = function(ccc) { + var padlen = [0, 2, 1][ccc.length % 3], + ord = ccc.charCodeAt(0) << 16 + | ((ccc.length > 1 ? ccc.charCodeAt(1) : 0) << 8) + | ((ccc.length > 2 ? ccc.charCodeAt(2) : 0)), + chars = [ + b64chars.charAt( ord >>> 18), + b64chars.charAt((ord >>> 12) & 63), + padlen >= 2 ? '=' : b64chars.charAt((ord >>> 6) & 63), + padlen >= 1 ? '=' : b64chars.charAt(ord & 63) + ]; + return chars.join(''); + }; + var btoa = global.btoa ? function(b) { + return global.btoa(b); + } : function(b) { + return b.replace(/[\s\S]{1,3}/g, cb_encode); + }; + var _encode = buffer ? + buffer.from && Uint8Array && buffer.from !== Uint8Array.from + ? function (u) { + return (u.constructor === buffer.constructor ? u : buffer.from(u)) + .toString('base64') + } + : function (u) { + return (u.constructor === buffer.constructor ? u : new buffer(u)) + .toString('base64') + } + : function (u) { return btoa(utob(u)) } + ; + var encode = function(u, urisafe) { + return !urisafe + ? _encode(String(u)) + : _encode(String(u)).replace(/[+\/]/g, function(m0) { + return m0 == '+' ? '-' : '_'; + }).replace(/=/g, ''); + }; + var encodeURI = function(u) { return encode(u, true) }; + // decoder stuff + var re_btou = new RegExp([ + '[\xC0-\xDF][\x80-\xBF]', + '[\xE0-\xEF][\x80-\xBF]{2}', + '[\xF0-\xF7][\x80-\xBF]{3}' + ].join('|'), 'g'); + var cb_btou = function(cccc) { + switch(cccc.length) { + case 4: + var cp = ((0x07 & cccc.charCodeAt(0)) << 18) + | ((0x3f & cccc.charCodeAt(1)) << 12) + | ((0x3f & cccc.charCodeAt(2)) << 6) + | (0x3f & cccc.charCodeAt(3)), + offset = cp - 0x10000; + return (fromCharCode((offset >>> 10) + 0xD800) + + fromCharCode((offset & 0x3FF) + 0xDC00)); + case 3: + return fromCharCode( + ((0x0f & cccc.charCodeAt(0)) << 12) + | ((0x3f & cccc.charCodeAt(1)) << 6) + | (0x3f & cccc.charCodeAt(2)) + ); + default: + return fromCharCode( + ((0x1f & cccc.charCodeAt(0)) << 6) + | (0x3f & cccc.charCodeAt(1)) + ); + } + }; + var btou = function(b) { + return b.replace(re_btou, cb_btou); + }; + var cb_decode = function(cccc) { + var len = cccc.length, + padlen = len % 4, + n = (len > 0 ? b64tab[cccc.charAt(0)] << 18 : 0) + | (len > 1 ? b64tab[cccc.charAt(1)] << 12 : 0) + | (len > 2 ? b64tab[cccc.charAt(2)] << 6 : 0) + | (len > 3 ? b64tab[cccc.charAt(3)] : 0), + chars = [ + fromCharCode( n >>> 16), + fromCharCode((n >>> 8) & 0xff), + fromCharCode( n & 0xff) + ]; + chars.length -= [0, 0, 2, 1][padlen]; + return chars.join(''); + }; + var _atob = global.atob ? function(a) { + return global.atob(a); + } : function(a){ + return a.replace(/\S{1,4}/g, cb_decode); + }; + var atob = function(a) { + return _atob(String(a).replace(/[^A-Za-z0-9\+\/]/g, '')); + }; + var _decode = buffer ? + buffer.from && Uint8Array && buffer.from !== Uint8Array.from + ? function(a) { + return (a.constructor === buffer.constructor + ? a : buffer.from(a, 'base64')).toString(); + } + : function(a) { + return (a.constructor === buffer.constructor + ? a : new buffer(a, 'base64')).toString(); + } + : function(a) { return btou(_atob(a)) }; + var decode = function(a){ + return _decode( + String(a).replace(/[-_]/g, function(m0) { return m0 == '-' ? '+' : '/' }) + .replace(/[^A-Za-z0-9\+\/]/g, '') + ); + }; + var noConflict = function() { + var Base64 = global.Base64; + global.Base64 = _Base64; + return Base64; + }; + // export Base64 + global.Base64 = { + VERSION: version, + atob: atob, + btoa: btoa, + fromBase64: decode, + toBase64: encode, + utob: utob, + encode: encode, + encodeURI: encodeURI, + btou: btou, + decode: decode, + noConflict: noConflict, + __buffer__: buffer + }; + // if ES5 is available, make Base64.extendString() available + if (typeof Object.defineProperty === 'function') { + var noEnum = function(v){ + return {value:v,enumerable:false,writable:true,configurable:true}; + }; + global.Base64.extendString = function () { + Object.defineProperty( + String.prototype, 'fromBase64', noEnum(function () { + return decode(this) + })); + Object.defineProperty( + String.prototype, 'toBase64', noEnum(function (urisafe) { + return encode(this, urisafe) + })); + Object.defineProperty( + String.prototype, 'toBase64URI', noEnum(function () { + return encode(this, true) + })); + }; + } + // + // export Base64 to the namespace + // + if (global['Meteor']) { // Meteor.js + Base64 = global.Base64; + } + // module.exports and AMD are mutually exclusive. + // module.exports has precedence. + if (typeof module !== 'undefined' && module.exports) { + module.exports.Base64 = global.Base64; + } + else if (true) { + // AMD. Register as an anonymous module. + !(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_RESULT__ = function(){ return global.Base64 }.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), + __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); + } + // that's it! + return {Base64: global.Base64} +})); + +/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(35))) + +/***/ }), +/* 114 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +__webpack_require__(31); + +__webpack_require__(839); +//# sourceMappingURL=css.js.map + + +/***/ }), +/* 115 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var React = _interopRequireWildcard(__webpack_require__(0)); + +var _rcNotification = _interopRequireDefault(__webpack_require__(231)); + +var _icon = _interopRequireDefault(__webpack_require__(27)); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; } + +function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } + +var defaultDuration = 3; +var defaultTop; +var messageInstance; +var key = 1; +var prefixCls = 'ant-message'; +var transitionName = 'move-up'; +var getContainer; +var maxCount; + +function getMessageInstance(callback) { + if (messageInstance) { + callback(messageInstance); + return; + } + + _rcNotification["default"].newInstance({ + prefixCls: prefixCls, + transitionName: transitionName, + style: { + top: defaultTop + }, + getContainer: getContainer, + maxCount: maxCount + }, function (instance) { + if (messageInstance) { + callback(messageInstance); + return; + } + + messageInstance = instance; + callback(instance); + }); +} + +function notice(args) { + var duration = args.duration !== undefined ? args.duration : defaultDuration; + var iconType = { + info: 'info-circle', + success: 'check-circle', + error: 'close-circle', + warning: 'exclamation-circle', + loading: 'loading' + }[args.type]; + var target = args.key || key++; + var closePromise = new Promise(function (resolve) { + var callback = function callback() { + if (typeof args.onClose === 'function') { + args.onClose(); + } + + return resolve(true); + }; + + getMessageInstance(function (instance) { + var iconNode = React.createElement(_icon["default"], { + type: iconType, + theme: iconType === 'loading' ? 'outlined' : 'filled' + }); + var switchIconNode = iconType ? iconNode : ''; + instance.notice({ + key: target, + duration: duration, + style: {}, + content: React.createElement("div", { + className: "".concat(prefixCls, "-custom-content").concat(args.type ? " ".concat(prefixCls, "-").concat(args.type) : '') + }, args.icon ? args.icon : switchIconNode, React.createElement("span", null, args.content)), + onClose: callback + }); + }); + }); + + var result = function result() { + if (messageInstance) { + messageInstance.removeNotice(target); + } + }; + + result.then = function (filled, rejected) { + return closePromise.then(filled, rejected); + }; + + result.promise = closePromise; + return result; +} + +function isArgsProps(content) { + return Object.prototype.toString.call(content) === '[object Object]' && !!content.content; +} + +var api = { + open: notice, + config: function config(options) { + if (options.top !== undefined) { + defaultTop = options.top; + messageInstance = null; // delete messageInstance for new defaultTop + } + + if (options.duration !== undefined) { + defaultDuration = options.duration; + } + + if (options.prefixCls !== undefined) { + prefixCls = options.prefixCls; + } + + if (options.getContainer !== undefined) { + getContainer = options.getContainer; + } + + if (options.transitionName !== undefined) { + transitionName = options.transitionName; + messageInstance = null; // delete messageInstance for new transitionName + } + + if (options.maxCount !== undefined) { + maxCount = options.maxCount; + messageInstance = null; + } + }, + destroy: function destroy() { + if (messageInstance) { + messageInstance.destroy(); + messageInstance = null; + } + } +}; +['success', 'info', 'warning', 'error', 'loading'].forEach(function (type) { + api[type] = function (content, duration, onClose) { + if (isArgsProps(content)) { + return api.open(_extends(_extends({}, content), { + type: type + })); + } + + if (typeof duration === 'function') { + onClose = duration; + duration = undefined; + } + + return api.open({ + content: content, + duration: duration, + type: type, + onClose: onClose + }); + }; +}); +api.warn = api.warning; +var _default = api; +exports["default"] = _default; +//# sourceMappingURL=index.js.map + + +/***/ }), +/* 116 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var _interopRequireDefault = __webpack_require__(2); + +Object.defineProperty(exports, "__esModule", { + value: true +}); +Object.defineProperty(exports, "default", { + enumerable: true, + get: function get() { + return _Typography.default; + } +}); + +var _Typography = _interopRequireDefault(__webpack_require__(622)); + +/***/ }), +/* 117 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var _interopRequireDefault = __webpack_require__(2); + +Object.defineProperty(exports, "__esModule", { + value: true +}); +Object.defineProperty(exports, "default", { + enumerable: true, + get: function get() { + return _Dialog.default; + } +}); +Object.defineProperty(exports, "DialogActions", { + enumerable: true, + get: function get() { + return _DialogActions.default; + } +}); +Object.defineProperty(exports, "DialogTitle", { + enumerable: true, + get: function get() { + return _DialogTitle.default; + } +}); +Object.defineProperty(exports, "DialogContent", { + enumerable: true, + get: function get() { + return _DialogContent.default; + } +}); +Object.defineProperty(exports, "DialogContentText", { + enumerable: true, + get: function get() { + return _DialogContentText.default; + } +}); +Object.defineProperty(exports, "withMobileDialog", { + enumerable: true, + get: function get() { + return _withMobileDialog.default; + } +}); + +var _Dialog = _interopRequireDefault(__webpack_require__(511)); + +var _DialogActions = _interopRequireDefault(__webpack_require__(602)); + +var _DialogTitle = _interopRequireDefault(__webpack_require__(621)); + +var _DialogContent = _interopRequireDefault(__webpack_require__(623)); + +var _DialogContentText = _interopRequireDefault(__webpack_require__(624)); + +var _withMobileDialog = _interopRequireDefault(__webpack_require__(625)); + +/***/ }), +/* 118 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return createStore; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return combineReducers; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return bindActionCreators; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return applyMiddleware; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return compose; }); +/* unused harmony export __DO_NOT_USE__ActionTypes */ +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_symbol_observable__ = __webpack_require__(210); + + +/** + * These are private action types reserved by Redux. + * For any unknown actions, you must return the current state. + * If the current state is undefined, you must return the initial state. + * Do not reference these action types directly in your code. + */ +var randomString = function randomString() { + return Math.random().toString(36).substring(7).split('').join('.'); +}; + +var ActionTypes = { + INIT: "@@redux/INIT" + randomString(), + REPLACE: "@@redux/REPLACE" + randomString(), + PROBE_UNKNOWN_ACTION: function PROBE_UNKNOWN_ACTION() { + return "@@redux/PROBE_UNKNOWN_ACTION" + randomString(); + } +}; + +/** + * @param {any} obj The object to inspect. + * @returns {boolean} True if the argument appears to be a plain object. + */ +function isPlainObject(obj) { + if (typeof obj !== 'object' || obj === null) return false; + var proto = obj; + + while (Object.getPrototypeOf(proto) !== null) { + proto = Object.getPrototypeOf(proto); + } + + return Object.getPrototypeOf(obj) === proto; +} + +/** + * Creates a Redux store that holds the state tree. + * The only way to change the data in the store is to call `dispatch()` on it. + * + * There should only be a single store in your app. To specify how different + * parts of the state tree respond to actions, you may combine several reducers + * into a single reducer function by using `combineReducers`. + * + * @param {Function} reducer A function that returns the next state tree, given + * the current state tree and the action to handle. + * + * @param {any} [preloadedState] The initial state. You may optionally specify it + * to hydrate the state from the server in universal apps, or to restore a + * previously serialized user session. + * If you use `combineReducers` to produce the root reducer function, this must be + * an object with the same shape as `combineReducers` keys. + * + * @param {Function} [enhancer] The store enhancer. You may optionally specify it + * to enhance the store with third-party capabilities such as middleware, + * time travel, persistence, etc. The only store enhancer that ships with Redux + * is `applyMiddleware()`. + * + * @returns {Store} A Redux store that lets you read the state, dispatch actions + * and subscribe to changes. + */ + +function createStore(reducer, preloadedState, enhancer) { + var _ref2; + + if (typeof preloadedState === 'function' && typeof enhancer === 'function' || typeof enhancer === 'function' && typeof arguments[3] === 'function') { + throw new Error('It looks like you are passing several store enhancers to ' + 'createStore(). This is not supported. Instead, compose them ' + 'together to a single function'); + } + + if (typeof preloadedState === 'function' && typeof enhancer === 'undefined') { + enhancer = preloadedState; + preloadedState = undefined; + } + + if (typeof enhancer !== 'undefined') { + if (typeof enhancer !== 'function') { + throw new Error('Expected the enhancer to be a function.'); + } + + return enhancer(createStore)(reducer, preloadedState); + } + + if (typeof reducer !== 'function') { + throw new Error('Expected the reducer to be a function.'); + } + + var currentReducer = reducer; + var currentState = preloadedState; + var currentListeners = []; + var nextListeners = currentListeners; + var isDispatching = false; + + function ensureCanMutateNextListeners() { + if (nextListeners === currentListeners) { + nextListeners = currentListeners.slice(); + } + } + /** + * Reads the state tree managed by the store. + * + * @returns {any} The current state tree of your application. + */ + + + function getState() { + if (isDispatching) { + throw new Error('You may not call store.getState() while the reducer is executing. ' + 'The reducer has already received the state as an argument. ' + 'Pass it down from the top reducer instead of reading it from the store.'); + } + + return currentState; + } + /** + * Adds a change listener. It will be called any time an action is dispatched, + * and some part of the state tree may potentially have changed. You may then + * call `getState()` to read the current state tree inside the callback. + * + * You may call `dispatch()` from a change listener, with the following + * caveats: + * + * 1. The subscriptions are snapshotted just before every `dispatch()` call. + * If you subscribe or unsubscribe while the listeners are being invoked, this + * will not have any effect on the `dispatch()` that is currently in progress. + * However, the next `dispatch()` call, whether nested or not, will use a more + * recent snapshot of the subscription list. + * + * 2. The listener should not expect to see all state changes, as the state + * might have been updated multiple times during a nested `dispatch()` before + * the listener is called. It is, however, guaranteed that all subscribers + * registered before the `dispatch()` started will be called with the latest + * state by the time it exits. + * + * @param {Function} listener A callback to be invoked on every dispatch. + * @returns {Function} A function to remove this change listener. + */ + + + function subscribe(listener) { + if (typeof listener !== 'function') { + throw new Error('Expected the listener to be a function.'); + } + + if (isDispatching) { + throw new Error('You may not call store.subscribe() while the reducer is executing. ' + 'If you would like to be notified after the store has been updated, subscribe from a ' + 'component and invoke store.getState() in the callback to access the latest state. ' + 'See https://redux.js.org/api-reference/store#subscribe(listener) for more details.'); + } + + var isSubscribed = true; + ensureCanMutateNextListeners(); + nextListeners.push(listener); + return function unsubscribe() { + if (!isSubscribed) { + return; + } + + if (isDispatching) { + throw new Error('You may not unsubscribe from a store listener while the reducer is executing. ' + 'See https://redux.js.org/api-reference/store#subscribe(listener) for more details.'); + } + + isSubscribed = false; + ensureCanMutateNextListeners(); + var index = nextListeners.indexOf(listener); + nextListeners.splice(index, 1); + }; + } + /** + * Dispatches an action. It is the only way to trigger a state change. + * + * The `reducer` function, used to create the store, will be called with the + * current state tree and the given `action`. Its return value will + * be considered the **next** state of the tree, and the change listeners + * will be notified. + * + * The base implementation only supports plain object actions. If you want to + * dispatch a Promise, an Observable, a thunk, or something else, you need to + * wrap your store creating function into the corresponding middleware. For + * example, see the documentation for the `redux-thunk` package. Even the + * middleware will eventually dispatch plain object actions using this method. + * + * @param {Object} action A plain object representing “what changed”. It is + * a good idea to keep actions serializable so you can record and replay user + * sessions, or use the time travelling `redux-devtools`. An action must have + * a `type` property which may not be `undefined`. It is a good idea to use + * string constants for action types. + * + * @returns {Object} For convenience, the same action object you dispatched. + * + * Note that, if you use a custom middleware, it may wrap `dispatch()` to + * return something else (for example, a Promise you can await). + */ + + + function dispatch(action) { + if (!isPlainObject(action)) { + throw new Error('Actions must be plain objects. ' + 'Use custom middleware for async actions.'); + } + + if (typeof action.type === 'undefined') { + throw new Error('Actions may not have an undefined "type" property. ' + 'Have you misspelled a constant?'); + } + + if (isDispatching) { + throw new Error('Reducers may not dispatch actions.'); + } + + try { + isDispatching = true; + currentState = currentReducer(currentState, action); + } finally { + isDispatching = false; + } + + var listeners = currentListeners = nextListeners; + + for (var i = 0; i < listeners.length; i++) { + var listener = listeners[i]; + listener(); + } + + return action; + } + /** + * Replaces the reducer currently used by the store to calculate the state. + * + * You might need this if your app implements code splitting and you want to + * load some of the reducers dynamically. You might also need this if you + * implement a hot reloading mechanism for Redux. + * + * @param {Function} nextReducer The reducer for the store to use instead. + * @returns {void} + */ + + + function replaceReducer(nextReducer) { + if (typeof nextReducer !== 'function') { + throw new Error('Expected the nextReducer to be a function.'); + } + + currentReducer = nextReducer; + dispatch({ + type: ActionTypes.REPLACE + }); + } + /** + * Interoperability point for observable/reactive libraries. + * @returns {observable} A minimal observable of state changes. + * For more information, see the observable proposal: + * https://github.com/tc39/proposal-observable + */ + + + function observable() { + var _ref; + + var outerSubscribe = subscribe; + return _ref = { + /** + * The minimal observable subscription method. + * @param {Object} observer Any object that can be used as an observer. + * The observer object should have a `next` method. + * @returns {subscription} An object with an `unsubscribe` method that can + * be used to unsubscribe the observable from the store, and prevent further + * emission of values from the observable. + */ + subscribe: function subscribe(observer) { + if (typeof observer !== 'object' || observer === null) { + throw new TypeError('Expected the observer to be an object.'); + } + + function observeState() { + if (observer.next) { + observer.next(getState()); + } + } + + observeState(); + var unsubscribe = outerSubscribe(observeState); + return { + unsubscribe: unsubscribe + }; + } + }, _ref[__WEBPACK_IMPORTED_MODULE_0_symbol_observable__["default"]] = function () { + return this; + }, _ref; + } // When a store is created, an "INIT" action is dispatched so that every + // reducer returns their initial state. This effectively populates + // the initial state tree. + + + dispatch({ + type: ActionTypes.INIT + }); + return _ref2 = { + dispatch: dispatch, + subscribe: subscribe, + getState: getState, + replaceReducer: replaceReducer + }, _ref2[__WEBPACK_IMPORTED_MODULE_0_symbol_observable__["default"]] = observable, _ref2; +} + +/** + * Prints a warning in the console if it exists. + * + * @param {String} message The warning message. + * @returns {void} + */ +function warning(message) { + /* eslint-disable no-console */ + if (typeof console !== 'undefined' && typeof console.error === 'function') { + console.error(message); + } + /* eslint-enable no-console */ + + + try { + // This error was thrown as a convenience so that if you enable + // "break on all exceptions" in your console, + // it would pause the execution at this line. + throw new Error(message); + } catch (e) {} // eslint-disable-line no-empty + +} + +function getUndefinedStateErrorMessage(key, action) { + var actionType = action && action.type; + var actionDescription = actionType && "action \"" + String(actionType) + "\"" || 'an action'; + return "Given " + actionDescription + ", reducer \"" + key + "\" returned undefined. " + "To ignore an action, you must explicitly return the previous state. " + "If you want this reducer to hold no value, you can return null instead of undefined."; +} + +function getUnexpectedStateShapeWarningMessage(inputState, reducers, action, unexpectedKeyCache) { + var reducerKeys = Object.keys(reducers); + var argumentName = action && action.type === ActionTypes.INIT ? 'preloadedState argument passed to createStore' : 'previous state received by the reducer'; + + if (reducerKeys.length === 0) { + return 'Store does not have a valid reducer. Make sure the argument passed ' + 'to combineReducers is an object whose values are reducers.'; + } + + if (!isPlainObject(inputState)) { + return "The " + argumentName + " has unexpected type of \"" + {}.toString.call(inputState).match(/\s([a-z|A-Z]+)/)[1] + "\". Expected argument to be an object with the following " + ("keys: \"" + reducerKeys.join('", "') + "\""); + } + + var unexpectedKeys = Object.keys(inputState).filter(function (key) { + return !reducers.hasOwnProperty(key) && !unexpectedKeyCache[key]; + }); + unexpectedKeys.forEach(function (key) { + unexpectedKeyCache[key] = true; + }); + if (action && action.type === ActionTypes.REPLACE) return; + + if (unexpectedKeys.length > 0) { + return "Unexpected " + (unexpectedKeys.length > 1 ? 'keys' : 'key') + " " + ("\"" + unexpectedKeys.join('", "') + "\" found in " + argumentName + ". ") + "Expected to find one of the known reducer keys instead: " + ("\"" + reducerKeys.join('", "') + "\". Unexpected keys will be ignored."); + } +} + +function assertReducerShape(reducers) { + Object.keys(reducers).forEach(function (key) { + var reducer = reducers[key]; + var initialState = reducer(undefined, { + type: ActionTypes.INIT + }); + + if (typeof initialState === 'undefined') { + throw new Error("Reducer \"" + key + "\" returned undefined during initialization. " + "If the state passed to the reducer is undefined, you must " + "explicitly return the initial state. The initial state may " + "not be undefined. If you don't want to set a value for this reducer, " + "you can use null instead of undefined."); + } + + if (typeof reducer(undefined, { + type: ActionTypes.PROBE_UNKNOWN_ACTION() + }) === 'undefined') { + throw new Error("Reducer \"" + key + "\" returned undefined when probed with a random type. " + ("Don't try to handle " + ActionTypes.INIT + " or other actions in \"redux/*\" ") + "namespace. They are considered private. Instead, you must return the " + "current state for any unknown actions, unless it is undefined, " + "in which case you must return the initial state, regardless of the " + "action type. The initial state may not be undefined, but can be null."); + } + }); +} +/** + * Turns an object whose values are different reducer functions, into a single + * reducer function. It will call every child reducer, and gather their results + * into a single state object, whose keys correspond to the keys of the passed + * reducer functions. + * + * @param {Object} reducers An object whose values correspond to different + * reducer functions that need to be combined into one. One handy way to obtain + * it is to use ES6 `import * as reducers` syntax. The reducers may never return + * undefined for any action. Instead, they should return their initial state + * if the state passed to them was undefined, and the current state for any + * unrecognized action. + * + * @returns {Function} A reducer function that invokes every reducer inside the + * passed object, and builds a state object with the same shape. + */ + + +function combineReducers(reducers) { + var reducerKeys = Object.keys(reducers); + var finalReducers = {}; + + for (var i = 0; i < reducerKeys.length; i++) { + var key = reducerKeys[i]; + + if (false) { + if (typeof reducers[key] === 'undefined') { + warning("No reducer provided for key \"" + key + "\""); + } + } + + if (typeof reducers[key] === 'function') { + finalReducers[key] = reducers[key]; + } + } + + var finalReducerKeys = Object.keys(finalReducers); + var unexpectedKeyCache; + + if (false) { + unexpectedKeyCache = {}; + } + + var shapeAssertionError; + + try { + assertReducerShape(finalReducers); + } catch (e) { + shapeAssertionError = e; + } + + return function combination(state, action) { + if (state === void 0) { + state = {}; + } + + if (shapeAssertionError) { + throw shapeAssertionError; + } + + if (false) { + var warningMessage = getUnexpectedStateShapeWarningMessage(state, finalReducers, action, unexpectedKeyCache); + + if (warningMessage) { + warning(warningMessage); + } + } + + var hasChanged = false; + var nextState = {}; + + for (var _i = 0; _i < finalReducerKeys.length; _i++) { + var _key = finalReducerKeys[_i]; + var reducer = finalReducers[_key]; + var previousStateForKey = state[_key]; + var nextStateForKey = reducer(previousStateForKey, action); + + if (typeof nextStateForKey === 'undefined') { + var errorMessage = getUndefinedStateErrorMessage(_key, action); + throw new Error(errorMessage); + } + + nextState[_key] = nextStateForKey; + hasChanged = hasChanged || nextStateForKey !== previousStateForKey; + } + + return hasChanged ? nextState : state; + }; +} + +function bindActionCreator(actionCreator, dispatch) { + return function () { + return dispatch(actionCreator.apply(this, arguments)); + }; +} +/** + * Turns an object whose values are action creators, into an object with the + * same keys, but with every function wrapped into a `dispatch` call so they + * may be invoked directly. This is just a convenience method, as you can call + * `store.dispatch(MyActionCreators.doSomething())` yourself just fine. + * + * For convenience, you can also pass a single function as the first argument, + * and get a function in return. + * + * @param {Function|Object} actionCreators An object whose values are action + * creator functions. One handy way to obtain it is to use ES6 `import * as` + * syntax. You may also pass a single function. + * + * @param {Function} dispatch The `dispatch` function available on your Redux + * store. + * + * @returns {Function|Object} The object mimicking the original object, but with + * every action creator wrapped into the `dispatch` call. If you passed a + * function as `actionCreators`, the return value will also be a single + * function. + */ + + +function bindActionCreators(actionCreators, dispatch) { + if (typeof actionCreators === 'function') { + return bindActionCreator(actionCreators, dispatch); + } + + if (typeof actionCreators !== 'object' || actionCreators === null) { + throw new Error("bindActionCreators expected an object or a function, instead received " + (actionCreators === null ? 'null' : typeof actionCreators) + ". " + "Did you write \"import ActionCreators from\" instead of \"import * as ActionCreators from\"?"); + } + + var keys = Object.keys(actionCreators); + var boundActionCreators = {}; + + for (var i = 0; i < keys.length; i++) { + var key = keys[i]; + var actionCreator = actionCreators[key]; + + if (typeof actionCreator === 'function') { + boundActionCreators[key] = bindActionCreator(actionCreator, dispatch); + } + } + + return boundActionCreators; +} + +function _defineProperty(obj, key, value) { + if (key in obj) { + Object.defineProperty(obj, key, { + value: value, + enumerable: true, + configurable: true, + writable: true + }); + } else { + obj[key] = value; + } + + return obj; +} + +function _objectSpread(target) { + for (var i = 1; i < arguments.length; i++) { + var source = arguments[i] != null ? arguments[i] : {}; + var ownKeys = Object.keys(source); + + if (typeof Object.getOwnPropertySymbols === 'function') { + ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { + return Object.getOwnPropertyDescriptor(source, sym).enumerable; + })); + } + + ownKeys.forEach(function (key) { + _defineProperty(target, key, source[key]); + }); + } + + return target; +} + +/** + * Composes single-argument functions from right to left. The rightmost + * function can take multiple arguments as it provides the signature for + * the resulting composite function. + * + * @param {...Function} funcs The functions to compose. + * @returns {Function} A function obtained by composing the argument functions + * from right to left. For example, compose(f, g, h) is identical to doing + * (...args) => f(g(h(...args))). + */ +function compose() { + for (var _len = arguments.length, funcs = new Array(_len), _key = 0; _key < _len; _key++) { + funcs[_key] = arguments[_key]; + } + + if (funcs.length === 0) { + return function (arg) { + return arg; + }; + } + + if (funcs.length === 1) { + return funcs[0]; + } + + return funcs.reduce(function (a, b) { + return function () { + return a(b.apply(void 0, arguments)); + }; + }); +} + +/** + * Creates a store enhancer that applies middleware to the dispatch method + * of the Redux store. This is handy for a variety of tasks, such as expressing + * asynchronous actions in a concise manner, or logging every action payload. + * + * See `redux-thunk` package as an example of the Redux middleware. + * + * Because middleware is potentially asynchronous, this should be the first + * store enhancer in the composition chain. + * + * Note that each middleware will be given the `dispatch` and `getState` functions + * as named arguments. + * + * @param {...Function} middlewares The middleware chain to be applied. + * @returns {Function} A store enhancer applying the middleware. + */ + +function applyMiddleware() { + for (var _len = arguments.length, middlewares = new Array(_len), _key = 0; _key < _len; _key++) { + middlewares[_key] = arguments[_key]; + } + + return function (createStore) { + return function () { + var store = createStore.apply(void 0, arguments); + + var _dispatch = function dispatch() { + throw new Error("Dispatching while constructing your middleware is not allowed. " + "Other middleware would not be applied to this dispatch."); + }; + + var middlewareAPI = { + getState: store.getState, + dispatch: function dispatch() { + return _dispatch.apply(void 0, arguments); + } + }; + var chain = middlewares.map(function (middleware) { + return middleware(middlewareAPI); + }); + _dispatch = compose.apply(void 0, chain)(store.dispatch); + return _objectSpread({}, store, { + dispatch: _dispatch + }); + }; + }; +} + +/* + * This is a dummy function to check if the function name has been altered by minification. + * If the function has been minified and NODE_ENV !== 'production', warn the user. + */ + +function isCrushed() {} + +if (false) { + warning('You are currently using minified code outside of NODE_ENV === "production". ' + 'This means that you are running a slower development build of Redux. ' + 'You can use loose-envify (https://github.com/zertosh/loose-envify) for browserify ' + 'or setting mode to production in webpack (https://webpack.js.org/concepts/mode/) ' + 'to ensure you have the correct code for your production build.'); +} + + + + +/***/ }), +/* 119 */ +/***/ (function(module, exports, __webpack_require__) { + +var _Object$getOwnPropertyDescriptor = __webpack_require__(251); + +var _Object$defineProperty = __webpack_require__(152); + +function _interopRequireWildcard(obj) { + if (obj && obj.__esModule) { + return obj; + } else { + var newObj = {}; + + if (obj != null) { + for (var key in obj) { + if (Object.prototype.hasOwnProperty.call(obj, key)) { + var desc = _Object$defineProperty && _Object$getOwnPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : {}; + + if (desc.get || desc.set) { + _Object$defineProperty(newObj, key, desc); + } else { + newObj[key] = obj[key]; + } + } + } + } + + newObj.default = obj; + return newObj; + } +} + +module.exports = _interopRequireWildcard; + +/***/ }), +/* 120 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_antd_lib_modal_style_css__ = __webpack_require__(28); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_antd_lib_modal_style_css___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_antd_lib_modal_style_css__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_antd_lib_modal__ = __webpack_require__(29); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_antd_lib_modal___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_antd_lib_modal__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react__ = __webpack_require__(0); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_react__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_educoder__ = __webpack_require__(5); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_axios__ = __webpack_require__(8); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_axios___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_axios__); +var _createClass=function(){function defineProperties(target,props){for(var i=0;i 1 && arguments[1] !== undefined ? arguments[1] : 0; + var max = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1; + false ? (0, _warning.default)(value >= min && value <= max, "Material-UI: the value provided ".concat(value, " is out of range [").concat(min, ", ").concat(max, "].")) : void 0; + + if (value < min) { + return min; + } + + if (value > max) { + return max; + } + + return value; +} +/** + * Converts a color from CSS hex format to CSS rgb format. + * + * @param {string} color - Hex color, i.e. #nnn or #nnnnnn + * @returns {string} A CSS rgb color string + */ + + +function convertHexToRGB(color) { + color = color.substr(1); + var re = new RegExp(".{1,".concat(color.length / 3, "}"), 'g'); + var colors = color.match(re); + + if (colors && colors[0].length === 1) { + colors = colors.map(function (n) { + return n + n; + }); + } + + return colors ? "rgb(".concat(colors.map(function (n) { + return parseInt(n, 16); + }).join(', '), ")") : ''; +} +/** + * Returns an object with the type and values of a color. + * + * Note: Does not support rgb % values. + * + * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla() + * @returns {object} - A MUI color object: {type: string, values: number[]} + */ + + +function decomposeColor(color) { + if (color.charAt(0) === '#') { + return decomposeColor(convertHexToRGB(color)); + } + + var marker = color.indexOf('('); + var type = color.substring(0, marker); + var values = color.substring(marker + 1, color.length - 1).split(','); + values = values.map(function (value) { + return parseFloat(value); + }); + + if (false) { + if (['rgb', 'rgba', 'hsl', 'hsla'].indexOf(type) === -1) { + throw new Error(["Material-UI: unsupported `".concat(color, "` color."), 'We support the following formats: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla().'].join('\n')); + } + } + + return { + type: type, + values: values + }; +} +/** + * Converts a color object with type and values to a string. + * + * @param {object} color - Decomposed color + * @param {string} color.type - One of: 'rgb', 'rgba', 'hsl', 'hsla' + * @param {array} color.values - [n,n,n] or [n,n,n,n] + * @returns {string} A CSS color string + */ + + +function recomposeColor(color) { + var type = color.type; + var values = color.values; + + if (type.indexOf('rgb') !== -1) { + // Only convert the first 3 values to int (i.e. not alpha) + values = values.map(function (n, i) { + return i < 3 ? parseInt(n, 10) : n; + }); + } + + if (type.indexOf('hsl') !== -1) { + values[1] = "".concat(values[1], "%"); + values[2] = "".concat(values[2], "%"); + } + + return "".concat(color.type, "(").concat(values.join(', '), ")"); +} +/** + * Calculates the contrast ratio between two colors. + * + * Formula: https://www.w3.org/TR/WCAG20-TECHS/G17.html#G17-tests + * + * @param {string} foreground - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla() + * @param {string} background - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla() + * @returns {number} A contrast ratio value in the range 0 - 21. + */ + + +function getContrastRatio(foreground, background) { + var lumA = getLuminance(foreground); + var lumB = getLuminance(background); + return (Math.max(lumA, lumB) + 0.05) / (Math.min(lumA, lumB) + 0.05); +} +/** + * The relative brightness of any point in a color space, + * normalized to 0 for darkest black and 1 for lightest white. + * + * Formula: https://www.w3.org/TR/WCAG20-TECHS/G17.html#G17-tests + * + * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla() + * @returns {number} The relative brightness of the color in the range 0 - 1 + */ + + +function getLuminance(color) { + var decomposedColor = decomposeColor(color); + + if (decomposedColor.type.indexOf('rgb') !== -1) { + var rgb = decomposedColor.values.map(function (val) { + val /= 255; // normalized + + return val <= 0.03928 ? val / 12.92 : Math.pow((val + 0.055) / 1.055, 2.4); + }); // Truncate at 3 digits + + return Number((0.2126 * rgb[0] + 0.7152 * rgb[1] + 0.0722 * rgb[2]).toFixed(3)); + } // else if (decomposedColor.type.indexOf('hsl') !== -1) + + + return decomposedColor.values[2] / 100; +} +/** + * Darken or lighten a colour, depending on its luminance. + * Light colors are darkened, dark colors are lightened. + * + * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla() + * @param {number} coefficient=0.15 - multiplier in the range 0 - 1 + * @returns {string} A CSS color string. Hex input values are returned as rgb + */ + + +function emphasize(color) { + var coefficient = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0.15; + return getLuminance(color) > 0.5 ? darken(color, coefficient) : lighten(color, coefficient); +} +/** + * Set the absolute transparency of a color. + * Any existing alpha values are overwritten. + * + * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla() + * @param {number} value - value to set the alpha channel to in the range 0 -1 + * @returns {string} A CSS color string. Hex input values are returned as rgb + */ + + +function fade(color, value) { + false ? (0, _warning.default)(color, "Material-UI: missing color argument in fade(".concat(color, ", ").concat(value, ").")) : void 0; + if (!color) return color; + color = decomposeColor(color); + value = clamp(value); + + if (color.type === 'rgb' || color.type === 'hsl') { + color.type += 'a'; + } + + color.values[3] = value; + return recomposeColor(color); +} +/** + * Darkens a color. + * + * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla() + * @param {number} coefficient - multiplier in the range 0 - 1 + * @returns {string} A CSS color string. Hex input values are returned as rgb + */ + + +function darken(color, coefficient) { + false ? (0, _warning.default)(color, "Material-UI: missing color argument in darken(".concat(color, ", ").concat(coefficient, ").")) : void 0; + if (!color) return color; + color = decomposeColor(color); + coefficient = clamp(coefficient); + + if (color.type.indexOf('hsl') !== -1) { + color.values[2] *= 1 - coefficient; + } else if (color.type.indexOf('rgb') !== -1) { + for (var i = 0; i < 3; i += 1) { + color.values[i] *= 1 - coefficient; + } + } + + return recomposeColor(color); +} +/** + * Lightens a color. + * + * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla() + * @param {number} coefficient - multiplier in the range 0 - 1 + * @returns {string} A CSS color string. Hex input values are returned as rgb + */ + + +function lighten(color, coefficient) { + false ? (0, _warning.default)(color, "Material-UI: missing color argument in lighten(".concat(color, ", ").concat(coefficient, ").")) : void 0; + if (!color) return color; + color = decomposeColor(color); + coefficient = clamp(coefficient); + + if (color.type.indexOf('hsl') !== -1) { + color.values[2] += (100 - color.values[2]) * coefficient; + } else if (color.type.indexOf('rgb') !== -1) { + for (var i = 0; i < 3; i += 1) { + color.values[i] += (255 - color.values[i]) * coefficient; + } + } + + return recomposeColor(color); +} + +/***/ }), +/* 122 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +exports.__esModule = true; + +var _iterator = __webpack_require__(481); + +var _iterator2 = _interopRequireDefault(_iterator); + +var _symbol = __webpack_require__(488); + +var _symbol2 = _interopRequireDefault(_symbol); + +var _typeof = typeof _symbol2.default === "function" && typeof _iterator2.default === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof _symbol2.default === "function" && obj.constructor === _symbol2.default && obj !== _symbol2.default.prototype ? "symbol" : typeof obj; }; + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +exports.default = typeof _symbol2.default === "function" && _typeof(_iterator2.default) === "symbol" ? function (obj) { + return typeof obj === "undefined" ? "undefined" : _typeof(obj); +} : function (obj) { + return obj && typeof _symbol2.default === "function" && obj.constructor === _symbol2.default && obj !== _symbol2.default.prototype ? "symbol" : typeof obj === "undefined" ? "undefined" : _typeof(obj); +}; + +/***/ }), +/* 123 */ +/***/ (function(module, exports, __webpack_require__) { + +__webpack_require__(486); +var global = __webpack_require__(40); +var hide = __webpack_require__(49); +var Iterators = __webpack_require__(66); +var TO_STRING_TAG = __webpack_require__(32)('toStringTag'); + +var DOMIterables = ('CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,' + + 'DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,' + + 'MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,' + + 'SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,' + + 'TextTrackList,TouchList').split(','); + +for (var i = 0; i < DOMIterables.length; i++) { + var NAME = DOMIterables[i]; + var Collection = global[NAME]; + var proto = Collection && Collection.prototype; + if (proto && !proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME); + Iterators[NAME] = Iterators.Array; +} + + +/***/ }), +/* 124 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); + +var _getDisplayName = __webpack_require__(259); + +var _getDisplayName2 = _interopRequireDefault(_getDisplayName); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +var wrapDisplayName = function wrapDisplayName(BaseComponent, hocName) { + return hocName + '(' + (0, _getDisplayName2.default)(BaseComponent) + ')'; +}; + +exports.default = wrapDisplayName; + +/***/ }), +/* 125 */ +/***/ (function(module, exports) { + +// Source: http://jsfiddle.net/vWx8V/ +// http://stackoverflow.com/questions/5603195/full-list-of-javascript-keycodes + +/** + * Conenience method returns corresponding value for given keyName or keyCode. + * + * @param {Mixed} keyCode {Number} or keyName {String} + * @return {Mixed} + * @api public + */ + +function keyCode(searchInput) { + // Keyboard Events + if (searchInput && 'object' === typeof searchInput) { + var hasKeyCode = searchInput.which || searchInput.keyCode || searchInput.charCode + if (hasKeyCode) searchInput = hasKeyCode + } + + // Numbers + if ('number' === typeof searchInput) return names[searchInput] + + // Everything else (cast to string) + var search = String(searchInput) + + // check codes + var foundNamedKey = codes[search.toLowerCase()] + if (foundNamedKey) return foundNamedKey + + // check aliases + var foundNamedKey = aliases[search.toLowerCase()] + if (foundNamedKey) return foundNamedKey + + // weird character? + if (search.length === 1) return search.charCodeAt(0) + + return undefined +} + +/** + * Compares a keyboard event with a given keyCode or keyName. + * + * @param {Event} event Keyboard event that should be tested + * @param {Mixed} keyCode {Number} or keyName {String} + * @return {Boolean} + * @api public + */ +keyCode.isEventKey = function isEventKey(event, nameOrCode) { + if (event && 'object' === typeof event) { + var keyCode = event.which || event.keyCode || event.charCode + if (keyCode === null || keyCode === undefined) { return false; } + if (typeof nameOrCode === 'string') { + // check codes + var foundNamedKey = codes[nameOrCode.toLowerCase()] + if (foundNamedKey) { return foundNamedKey === keyCode; } + + // check aliases + var foundNamedKey = aliases[nameOrCode.toLowerCase()] + if (foundNamedKey) { return foundNamedKey === keyCode; } + } else if (typeof nameOrCode === 'number') { + return nameOrCode === keyCode; + } + return false; + } +} + +exports = module.exports = keyCode; + +/** + * Get by name + * + * exports.code['enter'] // => 13 + */ + +var codes = exports.code = exports.codes = { + 'backspace': 8, + 'tab': 9, + 'enter': 13, + 'shift': 16, + 'ctrl': 17, + 'alt': 18, + 'pause/break': 19, + 'caps lock': 20, + 'esc': 27, + 'space': 32, + 'page up': 33, + 'page down': 34, + 'end': 35, + 'home': 36, + 'left': 37, + 'up': 38, + 'right': 39, + 'down': 40, + 'insert': 45, + 'delete': 46, + 'command': 91, + 'left command': 91, + 'right command': 93, + 'numpad *': 106, + 'numpad +': 107, + 'numpad -': 109, + 'numpad .': 110, + 'numpad /': 111, + 'num lock': 144, + 'scroll lock': 145, + 'my computer': 182, + 'my calculator': 183, + ';': 186, + '=': 187, + ',': 188, + '-': 189, + '.': 190, + '/': 191, + '`': 192, + '[': 219, + '\\': 220, + ']': 221, + "'": 222 +} + +// Helper aliases + +var aliases = exports.aliases = { + 'windows': 91, + '⇧': 16, + '⌥': 18, + '⌃': 17, + '⌘': 91, + 'ctl': 17, + 'control': 17, + 'option': 18, + 'pause': 19, + 'break': 19, + 'caps': 20, + 'return': 13, + 'escape': 27, + 'spc': 32, + 'spacebar': 32, + 'pgup': 33, + 'pgdn': 34, + 'ins': 45, + 'del': 46, + 'cmd': 91 +} + +/*! + * Programatically add the following + */ + +// lower case chars +for (i = 97; i < 123; i++) codes[String.fromCharCode(i)] = i - 32 + +// numbers +for (var i = 48; i < 58; i++) codes[i - 48] = i + +// function keys +for (i = 1; i < 13; i++) codes['f'+i] = i + 111 + +// numpad keys +for (i = 0; i < 10; i++) codes['numpad '+i] = i + 96 + +/** + * Get by code + * + * exports.name[13] // => 'Enter' + */ + +var names = exports.names = exports.title = {} // title for backward compat + +// Create reverse mapping +for (i in codes) names[codes[i]] = i + +// Add aliases +for (var alias in aliases) { + codes[alias] = aliases[alias] +} + + +/***/ }), +/* 126 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_antd_lib_notification_style_css__ = __webpack_require__(38); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_antd_lib_notification_style_css___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_antd_lib_notification_style_css__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_antd_lib_notification__ = __webpack_require__(39); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_antd_lib_notification___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_antd_lib_notification__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react__ = __webpack_require__(0); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_react__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react_router__ = __webpack_require__(77); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_material_ui_Dialog__ = __webpack_require__(117); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_material_ui_Dialog___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_material_ui_Dialog__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_axios__ = __webpack_require__(8); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_axios___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_axios__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__LoginDialog_css__ = __webpack_require__(274); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__LoginDialog_css___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6__LoginDialog_css__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_educoder__ = __webpack_require__(5); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__user_Notcompletedysl__ = __webpack_require__(208); +var _createClass=function(){function defineProperties(target,props){for(var i=0;i去注册").show();}else{$("#pass_name_input").next().find("p").html("该邮箱尚未绑定,你可以登录后去绑定").show();}}else{$("#pass_name_input").next().find("p").hide();if(type==6){$("#send_code_notice").html(data.msg).show();}else{var uurl=window.gotoEmail(data.link);$("#send_code_notice").html("验证码已经发送到您的邮箱,去查收").show();}time(btn);}});}else{$("#passlogin_error_notice").show();}}}}var LoginDialog=function(_Component){_inherits(LoginDialog,_Component);function LoginDialog(props){_classCallCheck(this,LoginDialog);var _this=_possibleConstructorReturn(this,(LoginDialog.__proto__||Object.getPrototypeOf(LoginDialog)).call(this,props));_this.enter=function(num){_this.setState({login:num,speedy:1,dialogBox:'dialogBox'});};_this.register=function(num){_this.setState({login:1,speedy:num,dialogBox:'dialogBox2'});};_this.inputOnBlur=function(e,id){_this.Emailphonenumberverification(e.target.value,1);};_this.loginChange=function(e){var stirngt="";if(e.target.value.length>0){var str=e.target.value.replace(/\s*/g,"");stirngt=str;}else{stirngt=e.target.value;}if(e.target.value.length===0){_this.setState({loginValue:stirngt,Phonenumberisnotco:undefined});}else{_this.setState({loginValue:stirngt,Phonenumberisnotco:undefined});}// let reg = /^(\w-*\.*)+@(\w-?)+(\.\w{2,})+$/; +// let reg1 = /^1\d{10}$/; +// let reg2=/^[a-zA-z]\w{3,14}$/; +// // let reg3=/^[a-zA-Z0-9]+([.\-_\\]*[a-zA-Z0-9])*@([a-z0-9]+[-a-z0-9]*[a-z0-9]+.){1,63}[a-z0-9]+$/; +// let value=this.refs.loginPassText.value; +// let valuenum= value.length; +// if(valuenum>0){ +// if(!reg.test(value)&&!reg1.test(value)&&!reg2.test(value)){ +// this.setState({regular:1}) +// return +// }else{ +// // this.setState({loginValue:value}); +// this.setState({regular:0}); +// var stirngt; +// if(value.length>0){ +// var str= value.replace(/\s*/g,"") +// stirngt=str; +// }else{ +// stirngt= value; +// } +// this.setState({ +// loginValue:stirngt, +// }); +// } +// }else{ +// this.setState({loginValue:value}); +// var stirngt; +// if(value.length>0){ +// var str= value.replace(/\s*/g,"") +// stirngt=str; +// }else{ +// stirngt= value; +// } +// this.setState({ +// loginValue:stirngt, +// }); +// } +};_this.Emailphonenumberverification=function(value,id){var url='/accounts/valid_email_and_phone.json';__WEBPACK_IMPORTED_MODULE_5_axios___default.a.get(url,{params:{login:value,type:1}}).then(function(result){if(result){if(result.data.status===-2){if(result.data.message==="该手机号码或邮箱已被注册"){_this.setState({Phonenumberisnotco:undefined,Phonenumberisnotcobool:false});}else{_this.setState({Phonenumberisnotco:result.data.message,Phonenumberisnotcobool:true});}return;}else{_this.setState({Phonenumberisnotco:undefined,Phonenumberisnotcobool:false});return;}}}).catch(function(error){});};_this.passwordChange=function(){var value=_this.refs.passwordText.value;var valuenum=value.length;_this.setState({disabled:false});_this.setState({bottonclass:'log-botton mt5 edu-back-blue'});if(valuenum==0){_this.setState({bottonclass:'log-botton mt5'});_this.setState({disabled:true});}_this.setState({passValue:value});};_this.handleInputChange=function(event){var target=event.target;var value=target.type==='checkbox'?target.checked:target.value;var name=target.name;_this.setState(_defineProperty({},name,value));if(value===true){_this.setState({isGoingValue:1});}else{_this.setState({isGoingValue:0});}};_this.shortcutIdChange=function(){var reg=/^(\w-*\.*)+@(\w-?)+(\.\w{2,})+$/;var reg1=/^1\d{10}$/;var reg2=/^[a-zA-z]\w{3,14}$/;var value=_this.refs.shortcutText.value;var valuenum=value.length;if(valuenum>0){if(!reg.test(value)&&!reg1.test(value)&&!reg2.test(value)){_this.setState({shortcutnum:0});_this.setState({disabledType:true});_this.setState({gaincode:'gain-code'});return;}else{_this.setState({gaincode:'gain-code edu-back-blue'});_this.setState({shortcutValue:value});_this.setState({shortcutnum:1});_this.setState({disabledType:false});}}else{_this.setState({shortcutValue:value});}};_this.authCodeChange=function(){var value=_this.refs.authCodeText.value;var valuenum=value.length;if(valuenum>3){_this.setState({authCodeType:false});_this.setState({authCodeclass:'log-botton mt5 edu-back-blue'});}else if(valuenum==0){_this.setState({authCodeType:true});_this.setState({authCodeclass:'log-botton mt5'});}};_this.get_login_verification_code=function(){get_login_verification_code($('#get_verification_code')[0]);};_this.dragWrapper=function(){var $=window.$;$.fn.drag=function(options){var x,drag=this,isMove=false,defaults={};var options=$.extend(defaults,options);var handler=drag.find('.handler');var drag_bg=drag.find('.drag_bg');var text=drag.find('.drag_text');var maxWidth=100;//鼠标按下时候的x轴的位置 +handler.mousedown(function(e){isMove=true;x=e.pageX-parseInt(handler.css('left'),10);maxWidth=drag.width()-handler.width()-2;//能滑动的最大间距 +});$(document).mousemove(function(e){var _x=e.pageX-x;// _x = e.pageX - (e.pageX - parseInt(handler.css('left'), 10)) = x +if(isMove){if(_x>0&&_x<=maxWidth){handler.css({'left':_x});drag_bg.css({'width':_x});}else if(_x>maxWidth){//鼠标指针移动距离达到最大时清空事件 +dragOk();}}}).mouseup(function(e){isMove=false;var _x=e.pageX-x;if(_x0){flag=false;break;}}return flag;};_this.handleDialogClose=function(){// if(this.props.match.path==='/'){ +// this.setState({ +// isRender: false +// }) +// this.props.Modifyloginvalue(); +// }else{ +// if(this.props.isloginCancel===undefined){ +// window.location.href="/"; +// this.props.Modifyloginvalue(); +// // this.setState({ +// // isRender: false +// // }) +// // this.props.Modifyloginvalue(); +// }else{ +// this.setState({ +// isRender: false +// }) +// this.props.Modifyloginvalue(); +// } +_this.setState({isRender:false});_this.props.Modifyloginvalue();// this.setState({ +// isRender: false +// }) +// try { +// this.props.Modifyloginvalue(); +// }catch (e) { +// +// } +};_this.loginEDU=function(){var _this$state=_this.state,loginValue=_this$state.loginValue,passValue=_this$state.passValue,regular=_this$state.regular,isGoingValue=_this$state.isGoingValue;if(regular===1){return;}var newloginValue=loginValue.replace(/(^\s*)|(\s*$)/g,"");var newpassValue=passValue.replace(/(^\s*)|(\s*$)/g,"");var url='/accounts/login.json';__WEBPACK_IMPORTED_MODULE_5_axios___default.a.post(url,{login:newloginValue,password:newpassValue,autologin:isGoingValue}).then(function(response){debugger;if(response===undefined){return;}if(response.status===200){if(response.data.status===402){// window.location.href = response.data.url; +}else if(response.data.status===-2){if(response.data.message==="登录密码出错已达上限,账号已被锁定, 请10分钟后重新登录或找回密码"){var messge=__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('div',null,__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('p',null,'\u767B\u5F55\u5BC6\u7801\u51FA\u9519\u5DF2\u8FBE\u4E0A\u9650\uFF0C\u8D26\u53F7\u5DF2\u88AB\u9501\u5B9A\uFF1B'),__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('p',{className:'mt10'},'\u8BF710\u5206\u949F\u540E\u91CD\u65B0\u767B\u5F55\u6216',__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('a',{href:'/changepassword',style:{textDecoration:"underline",color:"#4CACFF"}},'\u627E\u56DE\u5BC6\u7801')));_this.openNotifications(messge);}else{__WEBPACK_IMPORTED_MODULE_1_antd_lib_notification___default.a.open({message:'提示',description:response.data.message,duration:5});}}else{Object(__WEBPACK_IMPORTED_MODULE_7_educoder__["E" /* broadcastChannelPostMessage */])('refreshPage');_this.setState({isRender:false});_this.props.Modifyloginvalue();window.location.reload();}}// try { +// this.props.Modifyloginvalue(); +// }catch (e) { +// +// } +}).catch(function(error){console.log("356");console.log(error);});};_this.setNotcompleteds=function(){_this.setState({Notcompleteds:true,MyEduCoderModals:false});};_this.setMyEduCoderModals=function(){_this.setState({MyEduCoderModals:true});};_this.onKeydowns=function(e){var disabled=_this.state.disabled;if(disabled===false&&e.keyCode===13){_this.loginEDU();console.log(1);}};_this.getloginurl=function(url){window.location.href=url;};_this.openweixinlogin=function(){_this.setState({weixinlogin:true});};_this.openNotifications=function(btn){// type 1 成功提示绿色 2提醒颜色黄色 3错误提示红色 +__WEBPACK_IMPORTED_MODULE_1_antd_lib_notification___default.a.open({message:"提示",description:btn,duration:5,onClick:function onClick(){}});};_this.openqqlogin=function(){_this.setState({qqlogin:true});//window.location.href=`https://graph.qq.com/oauth2.0/show?which=Login&display=pc&client_id=101508858&redirect_uri=https%3a%2f%2f${window.location.host}%2otherloginqq&response_type=code` +window.location.href='https://graph.qq.com/oauth2.0/show?which=Login&display=pc&client_id=101508858&redirect_uri=https%3a%2f%2fwww.educoder.net%2fotherloginqq&state=null,'+window.location.host+'&response_type=code';// window.location.href=`https://graph.qq.com/oauth2.0/show?which=Login&display=pc&client_id=101508858&redirect_uri=https%3a%2f%2fwww.educoder.net%2fotherloginstart&tp=qq&response_type=code` +};_this.openphoneqqlogin=function(){window.open('https://xui.ptlogin2.qq.com/cgi-bin/xlogin?appid=716027609&pt_3rd_aid=101508858&daid=383&pt_skey_valid=0&style=35&s_url=http%3A%2F%2Fconnect.qq.com&refer_cgi=authorize&which=&client_id=101508858&response_type=code&scope=get_user_info&redirect_uri=https%3a%2f%2fwww.educoder.net%2fotherloginqq&state=null,'+window.location.host+'&response_type=code');};_this.getTContainer=function(){return document.body;};_this.hideweixinlogin=function(){_this.setState({weixinlogin:false,qqlogin:false});};_this.state={open:true,login:0,speedy:1,regular:0,loginValue:'',passValue:'',isGoing:true,isGoingValue:1,disabled:true,bottonclass:'log-botton mt5',dialogBox:'dialogBox',shortcutValue:'',shortcutnum:1,disabledType:true,gaincode:'gain-code',authCodeType:true,authCodeclass:'log-botton mt5',isRender:false,MyEduCoderModals:false,Phonenumberisnotco:undefined,Phonenumberisnotcobool:false,weixinlogin:false,qqlogin:false};return _this;}// 输入页面 +//邮箱手机号验证 +// 快捷注册 +_createClass(LoginDialog,[{key:'componentWillReceiveProps',value:function componentWillReceiveProps(nextProps){this.setState({isRender:nextProps.isRender});// console.log(nextProps.isRender); +}},{key:'componentDidMount',value:function componentDidMount(){var _this2=this;var flag=this.IsPC();//true为PC端,false为手机端 +this.setState({isphone:flag});if(this.props.isRender!=undefined){this.setState({isRender:this.props.isRender});}// $(document).on("showLoginDialog", (e, args)=>{ +// this.setState({ +// isRender: true +// }) +// }) +this.dragWrapper();__WEBPACK_IMPORTED_MODULE_5_axios___default.a.interceptors.response.use(function(response){if(response!=undefined)if(response&&response.data.status===401){document.title="提示";_this2.setState({isRender:true});}return response;},function(error){// // if (error.response && error.response.data.error === '401 Unauthorized') { +// // this.back_url = window.location.href; +// // this.setState({ +// // isRender: true +// // }) +// // // TODO 这里如果样式变了会出现css不加载的情况 +// // const $ = window.$; +// // const isCssLoaded = window.getComputedStyle($('.log_nav li.active')[0], null) +// // .getPropertyValue('border-bottom') +// // == "2px solid rgb(69, 155, 229)" +// // if (!isCssLoaded) { +// // const isPort3007 = window.location.port == 3007; +// // let _url_origin = isPort3007 ? 'http://localhost:3000' : '' +// // +// // $('head').append( $('') +// // .attr('href', `${_url_origin}/stylesheets/educoder/edu-main.css`) ); +// // $('head').append( $('') +// // .attr('href', `${_url_origin}/stylesheets/educoder/edu-all.css`) ); +// // } +// // } +// // return Promise.reject(error); +});}},{key:'render',value:function render(){var _this3=this;var _state=this.state,qqlogin=_state.qqlogin,login=_state.login,isGoing=_state.isGoing,isGoingValue=_state.isGoingValue,disabled=_state.disabled,bottonclass=_state.bottonclass,Phonenumberisnotco=_state.Phonenumberisnotco,dialogBox=_state.dialogBox,isRender=_state.isRender,weixinlogin=_state.weixinlogin;if(isRender===undefined){isRender=false;}return __WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement(__WEBPACK_IMPORTED_MODULE_4_material_ui_Dialog___default.a,{open:true,id:'DialogID',className:'zindextest',style:{display:isRender==false?'none':''},disableEscapeKeyDown:true,disableBackdropClick:true,onClose:function onClose(){return _this3.handleDialogClose();}},__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement(__WEBPACK_IMPORTED_MODULE_8__user_Notcompletedysl__["a" /* default */],{modalsType:this.state.MyEduCoderModals,setNotcompleteds:function setNotcompleteds(){_this3.setNotcompleteds();}}),__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('style',null,'\n\t\t\t\t\t\t #DialogID .dialogBox {\n\t\t\t\t\t\t\t\t\twidth: 405px !important;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t.dialogBox {\n\t\t\t\t\t\t\t\t\theight: 290px !important;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t'),isRender===true?__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('div',{className:dialogBox},__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('div',{id:'closeIcon',className:"logincloseIcon",onClick:function onClick(){_this3.handleDialogClose();}},__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('i',{className:'iconfont icon-shanchudiao'})),__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('div',{id:'log_reg_content'},weixinlogin===true?"":__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('ul',{className:'log_nav clearfix'},__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('li',{className:login==0?'active':'',onClick:function onClick(){_this3.enter(0);}},'\u767B\u5F55')),__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('div',{className:'login-panel',id:'login-panel-1',style:{display:login==0?'block':'none'}},weixinlogin===true?"":__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('form',{acceptCharset:'UTF-8',action:'/login',id:'main_login_form',method:'post'},__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('div',{style:{"display":"inline","padding":"0","margin":"0"}},__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('input',{name:'utf8',type:'hidden',value:'\u2713'}),__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('input',{name:'authenticity_token',type:'hidden',value:'NVLiIlHZfhVBQtO9djnWncJqqdikNQIIxEmOvzK9vNM='})),__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('input',{name:'back_url',type:'hidden',value:this.back_url}),__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('input',{type:'text',className:'input-100-45 mt20',id:'name_loggin_input',ref:'loginPassText',onInput:this.loginChange,onBlur:function onBlur(e){return _this3.inputOnBlur(e,1);},onPressEnter:disabled===false?this.loginEDU:function(){}// console.log(1) +,value:this.state.loginValue,name:'username',placeholder:'\u8BF7\u8F93\u5165\u6709\u6548\u7684\u624B\u673A\u53F7/\u90AE\u7BB1\u53F7'}),__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('div',{style:{height:'25px'}},__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('p',{className:'color-orange edu-txt-left none',id:'username_error_notice',style:{display:Phonenumberisnotco===undefined?'none':'block'}},Phonenumberisnotco)),__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('div',null,__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('input',{type:'password',id:'password_loggin_input',name:'password',ref:'passwordText',onInput:this.passwordChange,onKeyDown:this.onKeydowns,className:'input-100-45 mt5',onPressEnter:disabled===false?this.loginEDU:function(){}// console.log(1) +,placeholder:'\u5BC6\u7801'}),__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('div',{style:{height:'25px'}},__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('p',{className:'color-orange edu-txt-left none',id:'password_error_notice'},'\u8BF7\u8F93\u5165\u5BC6\u7801'))),__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('div',{className:disabled===false?"bluebutton edu-back-blue":"bluebutton",onClick:disabled===false?this.loginEDU:function(){}// console.log(1) +},'\u767B\u5F55'),__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('p',{className:'clearfix mt20'},__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('span',{className:'fl'},__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('input',{type:'checkbox',className:'mr5 magic-checkbox',checked:isGoing,onChange:this.handleInputChange,value:isGoingValue,name:'isGoing',id:'p_autolog'}),__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('label',{htmlFor:'p_autolog',style:{top:'0px'}},'\u4E0B\u6B21\u81EA\u52A8\u767B\u5F55')),__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('span',{className:'fr'},__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('a',{onClick:function onClick(url){return _this3.getloginurl("/changepassword");},className:'mr3 color-grey-9'},'\u627E\u56DE\u5BC6\u7801'),__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('em',{className:'vertical-line'}),__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('a',{onClick:function onClick(url){return _this3.getloginurl("/register");},className:'color-grey-9'},'\u6CE8\u518C'))),this.props.user&&this.props.user.main_site===true?this.state.isphone===true?__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('p',{className:'clearfix mt20'},__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('span',{className:"startlogin"},'\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014 \u5FEB\u901F\u767B\u5F55 \u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014'),__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('div',{className:"mt10"},__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('a',{onClick:function onClick(){return _this3.openweixinlogin();}},__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('img',{src:__webpack_require__(789),alt:'\u5FAE\u4FE1\u767B\u5F55'})),__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('a',{onClick:function onClick(){return _this3.openqqlogin();},className:"ml10"},__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('img',{src:__webpack_require__(303),alt:'qq\u767B\u5F55'})))):__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('p',{className:'clearfix mt20'},__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('span',{className:"startlogin"},'\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014 \u5FEB\u901F\u767B\u5F55 \u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014'),__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('div',{className:"mt10"},__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('a',{onClick:function onClick(){return _this3.openphoneqqlogin();},className:"ml10"},__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('img',{src:__webpack_require__(303),alt:'qq\u767B\u5F55'})))):""),weixinlogin===true?__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('iframe',{className:"weixinheight390",frameBorder:'0',sandbox:'allow-scripts allow-same-origin allow-top-navigation',scrolling:'no',src:'https://open.weixin.qq.com/connect/qrconnect?appid=wx6b119e2d829c13fa&redirect_uri=https%3a%2f%2fwww.educoder.net%2fotherloginstart&response_type=code&scope=snsapi_login&state=null,'+window.location.host+'#wechat_redirect'}):"",weixinlogin===true?__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('p',{className:'clearfix '},__WEBPACK_IMPORTED_MODULE_2_react___default.a.createElement('a',{className:"startlogin color-blue",onClick:function onClick(){return _this3.hideweixinlogin();}},'\u8FD4\u56DE\u8D26\u53F7\u767B\u5F55')):""))):"");}}]);return LoginDialog;}(__WEBPACK_IMPORTED_MODULE_2_react__["Component"]);/* harmony default export */ __webpack_exports__["a"] = (LoginDialog); + +/***/ }), +/* 127 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(19); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_defineProperty__ = __webpack_require__(59); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_defineProperty___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_defineProperty__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(11); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_createClass__ = __webpack_require__(34); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_createClass___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_createClass__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(12); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__ = __webpack_require__(13); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react__ = __webpack_require__(0); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(1); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__ChildrenUtils__ = __webpack_require__(498); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__AnimateChild__ = __webpack_require__(499); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__util_animate__ = __webpack_require__(249); + + + + + + + + + + + + +var defaultKey = 'rc_animate_' + Date.now(); + +function getChildrenFromProps(props) { + var children = props.children; + if (__WEBPACK_IMPORTED_MODULE_6_react___default.a.isValidElement(children)) { + if (!children.key) { + return __WEBPACK_IMPORTED_MODULE_6_react___default.a.cloneElement(children, { + key: defaultKey + }); + } + } + return children; +} + +function noop() {} + +var Animate = function (_React$Component) { + __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default()(Animate, _React$Component); + + // eslint-disable-line + + function Animate(props) { + __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default()(this, Animate); + + var _this = __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(this, (Animate.__proto__ || Object.getPrototypeOf(Animate)).call(this, props)); + + _initialiseProps.call(_this); + + _this.currentlyAnimatingKeys = {}; + _this.keysToEnter = []; + _this.keysToLeave = []; + + _this.state = { + children: Object(__WEBPACK_IMPORTED_MODULE_8__ChildrenUtils__["e" /* toArrayChildren */])(getChildrenFromProps(props)) + }; + + _this.childrenRefs = {}; + return _this; + } + + __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_createClass___default()(Animate, [{ + key: 'componentDidMount', + value: function componentDidMount() { + var _this2 = this; + + var showProp = this.props.showProp; + var children = this.state.children; + if (showProp) { + children = children.filter(function (child) { + return !!child.props[showProp]; + }); + } + children.forEach(function (child) { + if (child) { + _this2.performAppear(child.key); + } + }); + } + }, { + key: 'componentWillReceiveProps', + value: function componentWillReceiveProps(nextProps) { + var _this3 = this; + + this.nextProps = nextProps; + var nextChildren = Object(__WEBPACK_IMPORTED_MODULE_8__ChildrenUtils__["e" /* toArrayChildren */])(getChildrenFromProps(nextProps)); + var props = this.props; + // exclusive needs immediate response + if (props.exclusive) { + Object.keys(this.currentlyAnimatingKeys).forEach(function (key) { + _this3.stop(key); + }); + } + var showProp = props.showProp; + var currentlyAnimatingKeys = this.currentlyAnimatingKeys; + // last props children if exclusive + var currentChildren = props.exclusive ? Object(__WEBPACK_IMPORTED_MODULE_8__ChildrenUtils__["e" /* toArrayChildren */])(getChildrenFromProps(props)) : this.state.children; + // in case destroy in showProp mode + var newChildren = []; + if (showProp) { + currentChildren.forEach(function (currentChild) { + var nextChild = currentChild && Object(__WEBPACK_IMPORTED_MODULE_8__ChildrenUtils__["a" /* findChildInChildrenByKey */])(nextChildren, currentChild.key); + var newChild = void 0; + if ((!nextChild || !nextChild.props[showProp]) && currentChild.props[showProp]) { + newChild = __WEBPACK_IMPORTED_MODULE_6_react___default.a.cloneElement(nextChild || currentChild, __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_defineProperty___default()({}, showProp, true)); + } else { + newChild = nextChild; + } + if (newChild) { + newChildren.push(newChild); + } + }); + nextChildren.forEach(function (nextChild) { + if (!nextChild || !Object(__WEBPACK_IMPORTED_MODULE_8__ChildrenUtils__["a" /* findChildInChildrenByKey */])(currentChildren, nextChild.key)) { + newChildren.push(nextChild); + } + }); + } else { + newChildren = Object(__WEBPACK_IMPORTED_MODULE_8__ChildrenUtils__["d" /* mergeChildren */])(currentChildren, nextChildren); + } + + // need render to avoid update + this.setState({ + children: newChildren + }); + + nextChildren.forEach(function (child) { + var key = child && child.key; + if (child && currentlyAnimatingKeys[key]) { + return; + } + var hasPrev = child && Object(__WEBPACK_IMPORTED_MODULE_8__ChildrenUtils__["a" /* findChildInChildrenByKey */])(currentChildren, key); + if (showProp) { + var showInNext = child.props[showProp]; + if (hasPrev) { + var showInNow = Object(__WEBPACK_IMPORTED_MODULE_8__ChildrenUtils__["b" /* findShownChildInChildrenByKey */])(currentChildren, key, showProp); + if (!showInNow && showInNext) { + _this3.keysToEnter.push(key); + } + } else if (showInNext) { + _this3.keysToEnter.push(key); + } + } else if (!hasPrev) { + _this3.keysToEnter.push(key); + } + }); + + currentChildren.forEach(function (child) { + var key = child && child.key; + if (child && currentlyAnimatingKeys[key]) { + return; + } + var hasNext = child && Object(__WEBPACK_IMPORTED_MODULE_8__ChildrenUtils__["a" /* findChildInChildrenByKey */])(nextChildren, key); + if (showProp) { + var showInNow = child.props[showProp]; + if (hasNext) { + var showInNext = Object(__WEBPACK_IMPORTED_MODULE_8__ChildrenUtils__["b" /* findShownChildInChildrenByKey */])(nextChildren, key, showProp); + if (!showInNext && showInNow) { + _this3.keysToLeave.push(key); + } + } else if (showInNow) { + _this3.keysToLeave.push(key); + } + } else if (!hasNext) { + _this3.keysToLeave.push(key); + } + }); + } + }, { + key: 'componentDidUpdate', + value: function componentDidUpdate() { + var keysToEnter = this.keysToEnter; + this.keysToEnter = []; + keysToEnter.forEach(this.performEnter); + var keysToLeave = this.keysToLeave; + this.keysToLeave = []; + keysToLeave.forEach(this.performLeave); + } + }, { + key: 'isValidChildByKey', + value: function isValidChildByKey(currentChildren, key) { + var showProp = this.props.showProp; + if (showProp) { + return Object(__WEBPACK_IMPORTED_MODULE_8__ChildrenUtils__["b" /* findShownChildInChildrenByKey */])(currentChildren, key, showProp); + } + return Object(__WEBPACK_IMPORTED_MODULE_8__ChildrenUtils__["a" /* findChildInChildrenByKey */])(currentChildren, key); + } + }, { + key: 'stop', + value: function stop(key) { + delete this.currentlyAnimatingKeys[key]; + var component = this.childrenRefs[key]; + if (component) { + component.stop(); + } + } + }, { + key: 'render', + value: function render() { + var _this4 = this; + + var props = this.props; + this.nextProps = props; + var stateChildren = this.state.children; + var children = null; + if (stateChildren) { + children = stateChildren.map(function (child) { + if (child === null || child === undefined) { + return child; + } + if (!child.key) { + throw new Error('must set key for children'); + } + return __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( + __WEBPACK_IMPORTED_MODULE_9__AnimateChild__["a" /* default */], + { + key: child.key, + ref: function ref(node) { + _this4.childrenRefs[child.key] = node; + }, + animation: props.animation, + transitionName: props.transitionName, + transitionEnter: props.transitionEnter, + transitionAppear: props.transitionAppear, + transitionLeave: props.transitionLeave + }, + child + ); + }); + } + var Component = props.component; + if (Component) { + var passedProps = props; + if (typeof Component === 'string') { + passedProps = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({ + className: props.className, + style: props.style + }, props.componentProps); + } + return __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement( + Component, + passedProps, + children + ); + } + return children[0] || null; + } + }]); + + return Animate; +}(__WEBPACK_IMPORTED_MODULE_6_react___default.a.Component); + +Animate.isAnimate = true; +Animate.propTypes = { + component: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.any, + componentProps: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.object, + animation: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.object, + transitionName: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.oneOfType([__WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.string, __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.object]), + transitionEnter: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool, + transitionAppear: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool, + exclusive: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool, + transitionLeave: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool, + onEnd: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.func, + onEnter: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.func, + onLeave: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.func, + onAppear: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.func, + showProp: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.string, + children: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.node +}; +Animate.defaultProps = { + animation: {}, + component: 'span', + componentProps: {}, + transitionEnter: true, + transitionLeave: true, + transitionAppear: false, + onEnd: noop, + onEnter: noop, + onLeave: noop, + onAppear: noop +}; + +var _initialiseProps = function _initialiseProps() { + var _this5 = this; + + this.performEnter = function (key) { + // may already remove by exclusive + if (_this5.childrenRefs[key]) { + _this5.currentlyAnimatingKeys[key] = true; + _this5.childrenRefs[key].componentWillEnter(_this5.handleDoneAdding.bind(_this5, key, 'enter')); + } + }; + + this.performAppear = function (key) { + if (_this5.childrenRefs[key]) { + _this5.currentlyAnimatingKeys[key] = true; + _this5.childrenRefs[key].componentWillAppear(_this5.handleDoneAdding.bind(_this5, key, 'appear')); + } + }; + + this.handleDoneAdding = function (key, type) { + var props = _this5.props; + delete _this5.currentlyAnimatingKeys[key]; + // if update on exclusive mode, skip check + if (props.exclusive && props !== _this5.nextProps) { + return; + } + var currentChildren = Object(__WEBPACK_IMPORTED_MODULE_8__ChildrenUtils__["e" /* toArrayChildren */])(getChildrenFromProps(props)); + if (!_this5.isValidChildByKey(currentChildren, key)) { + // exclusive will not need this + _this5.performLeave(key); + } else if (type === 'appear') { + if (__WEBPACK_IMPORTED_MODULE_10__util_animate__["a" /* default */].allowAppearCallback(props)) { + props.onAppear(key); + props.onEnd(key, true); + } + } else if (__WEBPACK_IMPORTED_MODULE_10__util_animate__["a" /* default */].allowEnterCallback(props)) { + props.onEnter(key); + props.onEnd(key, true); + } + }; + + this.performLeave = function (key) { + // may already remove by exclusive + if (_this5.childrenRefs[key]) { + _this5.currentlyAnimatingKeys[key] = true; + _this5.childrenRefs[key].componentWillLeave(_this5.handleDoneLeaving.bind(_this5, key)); + } + }; + + this.handleDoneLeaving = function (key) { + var props = _this5.props; + delete _this5.currentlyAnimatingKeys[key]; + // if update on exclusive mode, skip check + if (props.exclusive && props !== _this5.nextProps) { + return; + } + var currentChildren = Object(__WEBPACK_IMPORTED_MODULE_8__ChildrenUtils__["e" /* toArrayChildren */])(getChildrenFromProps(props)); + // in case state change is too fast + if (_this5.isValidChildByKey(currentChildren, key)) { + _this5.performEnter(key); + } else { + var end = function end() { + if (__WEBPACK_IMPORTED_MODULE_10__util_animate__["a" /* default */].allowLeaveCallback(props)) { + props.onLeave(key); + props.onEnd(key, false); + } + }; + if (!Object(__WEBPACK_IMPORTED_MODULE_8__ChildrenUtils__["c" /* isSameChildren */])(_this5.state.children, currentChildren, props.showProp)) { + _this5.setState({ + children: currentChildren + }, end); + } else { + end(); + } + } + }; +}; + +/* harmony default export */ __webpack_exports__["a"] = (Animate); + +/***/ }), +/* 128 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var _interopRequireDefault = __webpack_require__(2); + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = void 0; + +var _ownerDocument = _interopRequireDefault(__webpack_require__(45)); + +var ownerWindow = function ownerWindow(node) { + var fallback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : window; + var doc = (0, _ownerDocument.default)(node); + return doc.defaultView || doc.parentView || fallback; +}; + +var _default = ownerWindow; +exports.default = _default; + +/***/ }), +/* 129 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var _interopRequireDefault = __webpack_require__(2); + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = void 0; + +var _extends2 = _interopRequireDefault(__webpack_require__(9)); + +var _objectSpread2 = _interopRequireDefault(__webpack_require__(26)); + +var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(6)); + +var _getPrototypeOf = _interopRequireDefault(__webpack_require__(22)); + +var _classCallCheck2 = _interopRequireDefault(__webpack_require__(17)); + +var _createClass2 = _interopRequireDefault(__webpack_require__(18)); + +var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(23)); + +var _inherits2 = _interopRequireDefault(__webpack_require__(24)); + +var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(25)); + +var _react = _interopRequireDefault(__webpack_require__(0)); + +var _propTypes = _interopRequireDefault(__webpack_require__(1)); + +var _Transition = _interopRequireDefault(__webpack_require__(130)); + +var _transitions = __webpack_require__(81); + +var _withTheme = _interopRequireDefault(__webpack_require__(97)); + +var _utils = __webpack_require__(212); + +// @inheritedComponent Transition +var styles = { + entering: { + opacity: 1 + }, + entered: { + opacity: 1 + } +}; +/** + * The Fade transition is used by the [Modal](/utils/modals) component. + * It uses [react-transition-group](https://github.com/reactjs/react-transition-group) internally. + */ + +var Fade = +/*#__PURE__*/ +function (_React$Component) { + (0, _inherits2.default)(Fade, _React$Component); + + function Fade() { + var _ref; + + var _temp, _this; + + (0, _classCallCheck2.default)(this, Fade); + + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + + return (0, _possibleConstructorReturn2.default)(_this, (_temp = _this = (0, _possibleConstructorReturn2.default)(this, (_ref = Fade.__proto__ || (0, _getPrototypeOf.default)(Fade)).call.apply(_ref, [this].concat(args))), Object.defineProperty((0, _assertThisInitialized2.default)(_this), "handleEnter", { + configurable: true, + enumerable: true, + writable: true, + value: function value(node) { + var theme = _this.props.theme; + (0, _utils.reflow)(node); // So the animation always start from the start. + + var transitionProps = (0, _utils.getTransitionProps)(_this.props, { + mode: 'enter' + }); + node.style.webkitTransition = theme.transitions.create('opacity', transitionProps); + node.style.transition = theme.transitions.create('opacity', transitionProps); + + if (_this.props.onEnter) { + _this.props.onEnter(node); + } + } + }), Object.defineProperty((0, _assertThisInitialized2.default)(_this), "handleExit", { + configurable: true, + enumerable: true, + writable: true, + value: function value(node) { + var theme = _this.props.theme; + var transitionProps = (0, _utils.getTransitionProps)(_this.props, { + mode: 'exit' + }); + node.style.webkitTransition = theme.transitions.create('opacity', transitionProps); + node.style.transition = theme.transitions.create('opacity', transitionProps); + + if (_this.props.onExit) { + _this.props.onExit(node); + } + } + }), _temp)); + } + + (0, _createClass2.default)(Fade, [{ + key: "render", + value: function render() { + var _props = this.props, + children = _props.children, + onEnter = _props.onEnter, + onExit = _props.onExit, + styleProp = _props.style, + theme = _props.theme, + other = (0, _objectWithoutProperties2.default)(_props, ["children", "onEnter", "onExit", "style", "theme"]); + var style = (0, _objectSpread2.default)({}, styleProp, _react.default.isValidElement(children) ? children.props.style : {}); + return _react.default.createElement(_Transition.default, (0, _extends2.default)({ + appear: true, + onEnter: this.handleEnter, + onExit: this.handleExit + }, other), function (state, childProps) { + return _react.default.cloneElement(children, (0, _objectSpread2.default)({ + style: (0, _objectSpread2.default)({ + opacity: 0, + willChange: 'opacity' + }, styles[state], style) + }, childProps)); + }); + } + }]); + return Fade; +}(_react.default.Component); + +Fade.propTypes = false ? { + /** + * A single child content element. + */ + children: _propTypes.default.oneOfType([_propTypes.default.element, _propTypes.default.func]), + + /** + * If `true`, the component will transition in. + */ + in: _propTypes.default.bool, + + /** + * @ignore + */ + onEnter: _propTypes.default.func, + + /** + * @ignore + */ + onExit: _propTypes.default.func, + + /** + * @ignore + */ + style: _propTypes.default.object, + + /** + * @ignore + */ + theme: _propTypes.default.object.isRequired, + + /** + * The duration for the transition, in milliseconds. + * You may specify a single timeout for all transitions, or individually with an object. + */ + timeout: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.shape({ + enter: _propTypes.default.number, + exit: _propTypes.default.number + })]) +} : {}; +Fade.defaultProps = { + timeout: { + enter: _transitions.duration.enteringScreen, + exit: _transitions.duration.leavingScreen + } +}; + +var _default = (0, _withTheme.default)()(Fade); + +exports.default = _default; + +/***/ }), +/* 130 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +exports.__esModule = true; +exports.default = exports.EXITING = exports.ENTERED = exports.ENTERING = exports.EXITED = exports.UNMOUNTED = void 0; + +var PropTypes = _interopRequireWildcard(__webpack_require__(1)); + +var _react = _interopRequireDefault(__webpack_require__(0)); + +var _reactDom = _interopRequireDefault(__webpack_require__(4)); + +var _reactLifecyclesCompat = __webpack_require__(7); + +var _PropTypes = __webpack_require__(600); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } } + +function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; } + +function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; subClass.__proto__ = superClass; } + +var UNMOUNTED = 'unmounted'; +exports.UNMOUNTED = UNMOUNTED; +var EXITED = 'exited'; +exports.EXITED = EXITED; +var ENTERING = 'entering'; +exports.ENTERING = ENTERING; +var ENTERED = 'entered'; +exports.ENTERED = ENTERED; +var EXITING = 'exiting'; +/** + * The Transition component lets you describe a transition from one component + * state to another _over time_ with a simple declarative API. Most commonly + * it's used to animate the mounting and unmounting of a component, but can also + * be used to describe in-place transition states as well. + * + * --- + * + * **Note**: `Transition` is a platform-agnostic base component. If you're using + * transitions in CSS, you'll probably want to use + * [`CSSTransition`](https://reactcommunity.org/react-transition-group/css-transition) + * instead. It inherits all the features of `Transition`, but contains + * additional features necessary to play nice with CSS transitions (hence the + * name of the component). + * + * --- + * + * By default the `Transition` component does not alter the behavior of the + * component it renders, it only tracks "enter" and "exit" states for the + * components. It's up to you to give meaning and effect to those states. For + * example we can add styles to a component when it enters or exits: + * + * ```jsx + * import { Transition } from 'react-transition-group'; + * + * const duration = 300; + * + * const defaultStyle = { + * transition: `opacity ${duration}ms ease-in-out`, + * opacity: 0, + * } + * + * const transitionStyles = { + * entering: { opacity: 0 }, + * entered: { opacity: 1 }, + * }; + * + * const Fade = ({ in: inProp }) => ( + * + * {state => ( + *
+ * I'm a fade Transition! + *
+ * )} + *
+ * ); + * ``` + * + * There are 4 main states a Transition can be in: + * - `'entering'` + * - `'entered'` + * - `'exiting'` + * - `'exited'` + * + * Transition state is toggled via the `in` prop. When `true` the component + * begins the "Enter" stage. During this stage, the component will shift from + * its current transition state, to `'entering'` for the duration of the + * transition and then to the `'entered'` stage once it's complete. Let's take + * the following example (we'll use the + * [useState](https://reactjs.org/docs/hooks-reference.html#usestate) hook): + * + * ```jsx + * function App() { + * const [inProp, setInProp] = useState(false); + * return ( + *
+ * + * {state => ( + * // ... + * )} + * + * + *
+ * ); + * } + * ``` + * + * When the button is clicked the component will shift to the `'entering'` state + * and stay there for 500ms (the value of `timeout`) before it finally switches + * to `'entered'`. + * + * When `in` is `false` the same thing happens except the state moves from + * `'exiting'` to `'exited'`. + */ + +exports.EXITING = EXITING; + +var Transition = +/*#__PURE__*/ +function (_React$Component) { + _inheritsLoose(Transition, _React$Component); + + function Transition(props, context) { + var _this; + + _this = _React$Component.call(this, props, context) || this; + var parentGroup = context.transitionGroup; // In the context of a TransitionGroup all enters are really appears + + var appear = parentGroup && !parentGroup.isMounting ? props.enter : props.appear; + var initialStatus; + _this.appearStatus = null; + + if (props.in) { + if (appear) { + initialStatus = EXITED; + _this.appearStatus = ENTERING; + } else { + initialStatus = ENTERED; + } + } else { + if (props.unmountOnExit || props.mountOnEnter) { + initialStatus = UNMOUNTED; + } else { + initialStatus = EXITED; + } + } + + _this.state = { + status: initialStatus + }; + _this.nextCallback = null; + return _this; + } + + var _proto = Transition.prototype; + + _proto.getChildContext = function getChildContext() { + return { + transitionGroup: null // allows for nested Transitions + + }; + }; + + Transition.getDerivedStateFromProps = function getDerivedStateFromProps(_ref, prevState) { + var nextIn = _ref.in; + + if (nextIn && prevState.status === UNMOUNTED) { + return { + status: EXITED + }; + } + + return null; + }; // getSnapshotBeforeUpdate(prevProps) { + // let nextStatus = null + // if (prevProps !== this.props) { + // const { status } = this.state + // if (this.props.in) { + // if (status !== ENTERING && status !== ENTERED) { + // nextStatus = ENTERING + // } + // } else { + // if (status === ENTERING || status === ENTERED) { + // nextStatus = EXITING + // } + // } + // } + // return { nextStatus } + // } + + + _proto.componentDidMount = function componentDidMount() { + this.updateStatus(true, this.appearStatus); + }; + + _proto.componentDidUpdate = function componentDidUpdate(prevProps) { + var nextStatus = null; + + if (prevProps !== this.props) { + var status = this.state.status; + + if (this.props.in) { + if (status !== ENTERING && status !== ENTERED) { + nextStatus = ENTERING; + } + } else { + if (status === ENTERING || status === ENTERED) { + nextStatus = EXITING; + } + } + } + + this.updateStatus(false, nextStatus); + }; + + _proto.componentWillUnmount = function componentWillUnmount() { + this.cancelNextCallback(); + }; + + _proto.getTimeouts = function getTimeouts() { + var timeout = this.props.timeout; + var exit, enter, appear; + exit = enter = appear = timeout; + + if (timeout != null && typeof timeout !== 'number') { + exit = timeout.exit; + enter = timeout.enter; // TODO: remove fallback for next major + + appear = timeout.appear !== undefined ? timeout.appear : enter; + } + + return { + exit: exit, + enter: enter, + appear: appear + }; + }; + + _proto.updateStatus = function updateStatus(mounting, nextStatus) { + if (mounting === void 0) { + mounting = false; + } + + if (nextStatus !== null) { + // nextStatus will always be ENTERING or EXITING. + this.cancelNextCallback(); + + var node = _reactDom.default.findDOMNode(this); + + if (nextStatus === ENTERING) { + this.performEnter(node, mounting); + } else { + this.performExit(node); + } + } else if (this.props.unmountOnExit && this.state.status === EXITED) { + this.setState({ + status: UNMOUNTED + }); + } + }; + + _proto.performEnter = function performEnter(node, mounting) { + var _this2 = this; + + var enter = this.props.enter; + var appearing = this.context.transitionGroup ? this.context.transitionGroup.isMounting : mounting; + var timeouts = this.getTimeouts(); + var enterTimeout = appearing ? timeouts.appear : timeouts.enter; // no enter animation skip right to ENTERED + // if we are mounting and running this it means appear _must_ be set + + if (!mounting && !enter) { + this.safeSetState({ + status: ENTERED + }, function () { + _this2.props.onEntered(node); + }); + return; + } + + this.props.onEnter(node, appearing); + this.safeSetState({ + status: ENTERING + }, function () { + _this2.props.onEntering(node, appearing); + + _this2.onTransitionEnd(node, enterTimeout, function () { + _this2.safeSetState({ + status: ENTERED + }, function () { + _this2.props.onEntered(node, appearing); + }); + }); + }); + }; + + _proto.performExit = function performExit(node) { + var _this3 = this; + + var exit = this.props.exit; + var timeouts = this.getTimeouts(); // no exit animation skip right to EXITED + + if (!exit) { + this.safeSetState({ + status: EXITED + }, function () { + _this3.props.onExited(node); + }); + return; + } + + this.props.onExit(node); + this.safeSetState({ + status: EXITING + }, function () { + _this3.props.onExiting(node); + + _this3.onTransitionEnd(node, timeouts.exit, function () { + _this3.safeSetState({ + status: EXITED + }, function () { + _this3.props.onExited(node); + }); + }); + }); + }; + + _proto.cancelNextCallback = function cancelNextCallback() { + if (this.nextCallback !== null) { + this.nextCallback.cancel(); + this.nextCallback = null; + } + }; + + _proto.safeSetState = function safeSetState(nextState, callback) { + // This shouldn't be necessary, but there are weird race conditions with + // setState callbacks and unmounting in testing, so always make sure that + // we can cancel any pending setState callbacks after we unmount. + callback = this.setNextCallback(callback); + this.setState(nextState, callback); + }; + + _proto.setNextCallback = function setNextCallback(callback) { + var _this4 = this; + + var active = true; + + this.nextCallback = function (event) { + if (active) { + active = false; + _this4.nextCallback = null; + callback(event); + } + }; + + this.nextCallback.cancel = function () { + active = false; + }; + + return this.nextCallback; + }; + + _proto.onTransitionEnd = function onTransitionEnd(node, timeout, handler) { + this.setNextCallback(handler); + var doesNotHaveTimeoutOrListener = timeout == null && !this.props.addEndListener; + + if (!node || doesNotHaveTimeoutOrListener) { + setTimeout(this.nextCallback, 0); + return; + } + + if (this.props.addEndListener) { + this.props.addEndListener(node, this.nextCallback); + } + + if (timeout != null) { + setTimeout(this.nextCallback, timeout); + } + }; + + _proto.render = function render() { + var status = this.state.status; + + if (status === UNMOUNTED) { + return null; + } + + var _this$props = this.props, + children = _this$props.children, + childProps = _objectWithoutPropertiesLoose(_this$props, ["children"]); // filter props for Transtition + + + delete childProps.in; + delete childProps.mountOnEnter; + delete childProps.unmountOnExit; + delete childProps.appear; + delete childProps.enter; + delete childProps.exit; + delete childProps.timeout; + delete childProps.addEndListener; + delete childProps.onEnter; + delete childProps.onEntering; + delete childProps.onEntered; + delete childProps.onExit; + delete childProps.onExiting; + delete childProps.onExited; + + if (typeof children === 'function') { + return children(status, childProps); + } + + var child = _react.default.Children.only(children); + + return _react.default.cloneElement(child, childProps); + }; + + return Transition; +}(_react.default.Component); + +Transition.contextTypes = { + transitionGroup: PropTypes.object +}; +Transition.childContextTypes = { + transitionGroup: function transitionGroup() {} +}; +Transition.propTypes = false ? { + /** + * A `function` child can be used instead of a React element. This function is + * called with the current transition status (`'entering'`, `'entered'`, + * `'exiting'`, `'exited'`, `'unmounted'`), which can be used to apply context + * specific props to a component. + * + * ```jsx + * + * {state => ( + * + * )} + * + * ``` + */ + children: PropTypes.oneOfType([PropTypes.func.isRequired, PropTypes.element.isRequired]).isRequired, + + /** + * Show the component; triggers the enter or exit states + */ + in: PropTypes.bool, + + /** + * By default the child component is mounted immediately along with + * the parent `Transition` component. If you want to "lazy mount" the component on the + * first `in={true}` you can set `mountOnEnter`. After the first enter transition the component will stay + * mounted, even on "exited", unless you also specify `unmountOnExit`. + */ + mountOnEnter: PropTypes.bool, + + /** + * By default the child component stays mounted after it reaches the `'exited'` state. + * Set `unmountOnExit` if you'd prefer to unmount the component after it finishes exiting. + */ + unmountOnExit: PropTypes.bool, + + /** + * Normally a component is not transitioned if it is shown when the `` component mounts. + * If you want to transition on the first mount set `appear` to `true`, and the + * component will transition in as soon as the `` mounts. + * + * > Note: there are no specific "appear" states. `appear` only adds an additional `enter` transition. + */ + appear: PropTypes.bool, + + /** + * Enable or disable enter transitions. + */ + enter: PropTypes.bool, + + /** + * Enable or disable exit transitions. + */ + exit: PropTypes.bool, + + /** + * The duration of the transition, in milliseconds. + * Required unless `addEndListener` is provided. + * + * You may specify a single timeout for all transitions: + * + * ```jsx + * timeout={500} + * ``` + * + * or individually: + * + * ```jsx + * timeout={{ + * appear: 500, + * enter: 300, + * exit: 500, + * }} + * ``` + * + * - `appear` defaults to the value of `enter` + * - `enter` defaults to `0` + * - `exit` defaults to `0` + * + * @type {number | { enter?: number, exit?: number, appear?: number }} + */ + timeout: function timeout(props) { + var pt = _PropTypes.timeoutsShape; + if (!props.addEndListener) pt = pt.isRequired; + + for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { + args[_key - 1] = arguments[_key]; + } + + return pt.apply(void 0, [props].concat(args)); + }, + + /** + * Add a custom transition end trigger. Called with the transitioning + * DOM node and a `done` callback. Allows for more fine grained transition end + * logic. **Note:** Timeouts are still used as a fallback if provided. + * + * ```jsx + * addEndListener={(node, done) => { + * // use the css transitionend event to mark the finish of a transition + * node.addEventListener('transitionend', done, false); + * }} + * ``` + */ + addEndListener: PropTypes.func, + + /** + * Callback fired before the "entering" status is applied. An extra parameter + * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount + * + * @type Function(node: HtmlElement, isAppearing: bool) -> void + */ + onEnter: PropTypes.func, + + /** + * Callback fired after the "entering" status is applied. An extra parameter + * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount + * + * @type Function(node: HtmlElement, isAppearing: bool) + */ + onEntering: PropTypes.func, + + /** + * Callback fired after the "entered" status is applied. An extra parameter + * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount + * + * @type Function(node: HtmlElement, isAppearing: bool) -> void + */ + onEntered: PropTypes.func, + + /** + * Callback fired before the "exiting" status is applied. + * + * @type Function(node: HtmlElement) -> void + */ + onExit: PropTypes.func, + + /** + * Callback fired after the "exiting" status is applied. + * + * @type Function(node: HtmlElement) -> void + */ + onExiting: PropTypes.func, + + /** + * Callback fired after the "exited" status is applied. + * + * @type Function(node: HtmlElement) -> void + */ + onExited: PropTypes.func // Name the function so it is clearer in the documentation + +} : {}; + +function noop() {} + +Transition.defaultProps = { + in: false, + mountOnEnter: false, + unmountOnExit: false, + appear: false, + enter: true, + exit: true, + onEnter: noop, + onEntering: noop, + onEntered: noop, + onExit: noop, + onExiting: noop, + onExited: noop +}; +Transition.UNMOUNTED = 0; +Transition.EXITED = 1; +Transition.ENTERING = 2; +Transition.ENTERED = 3; +Transition.EXITING = 4; + +var _default = (0, _reactLifecyclesCompat.polyfill)(Transition); + +exports.default = _default; + +/***/ }), +/* 131 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_antd_lib_button_style_css__ = __webpack_require__(88); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_antd_lib_button_style_css___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_antd_lib_button_style_css__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_antd_lib_button__ = __webpack_require__(74); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_antd_lib_button___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_antd_lib_button__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_antd_lib_input_style_css__ = __webpack_require__(60); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_antd_lib_input_style_css___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_antd_lib_input_style_css__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_antd_lib_input__ = __webpack_require__(61); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_antd_lib_input___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_antd_lib_input__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_antd_lib_notification_style_css__ = __webpack_require__(38); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_antd_lib_notification_style_css___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_antd_lib_notification_style_css__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_antd_lib_notification__ = __webpack_require__(39); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_antd_lib_notification___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_antd_lib_notification__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react__ = __webpack_require__(0); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_router__ = __webpack_require__(77); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_material_ui_Dialog__ = __webpack_require__(117); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_material_ui_Dialog___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_material_ui_Dialog__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_axios__ = __webpack_require__(8); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_axios___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_axios__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__LoginDialog_css__ = __webpack_require__(274); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__LoginDialog_css___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10__LoginDialog_css__); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_educoder__ = __webpack_require__(5); +var _createClass=function(){function defineProperties(target,props){for(var i=0;i